From 2ad2c70667cefaf531171daa5655cf0c65f00de6 Mon Sep 17 00:00:00 2001 From: Hanna Adenholm Date: Thu, 7 Aug 2025 15:37:52 +0200 Subject: [PATCH 01/24] added dm and cd --- .../java/com/booleanuk/core/class-diagram.jpg | Bin 0 -> 31723 bytes .../java/com/booleanuk/core/domain-model.md | 19 ++++++++++++++++++ 2 files changed, 19 insertions(+) create mode 100644 src/main/java/com/booleanuk/core/class-diagram.jpg create mode 100644 src/main/java/com/booleanuk/core/domain-model.md diff --git a/src/main/java/com/booleanuk/core/class-diagram.jpg b/src/main/java/com/booleanuk/core/class-diagram.jpg new file mode 100644 index 0000000000000000000000000000000000000000..381a85ae84367d551c3cc68523ca09ed6577bd9b GIT binary patch literal 31723 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 items | add(String sku) | Correct code basket not full | 1 | +| | int capacity | | Correct code basket full | 0 | +| | static stdCapacity | | Incorrect code | -1 | +| | static Stock stock | remove(String sku) | Exists | True | +| | | | Doesn't exist | False | +| | | getTotalCost() | | int | +| Stock | List stock | | | void | +| | | getPrice(String sku) | Exists | int | +| | | | Doesn't exist | -1 | +| | | getFillings() | | List | +| | | | | | +| Item | String sku | | | | +| | float price | | | | +| | String name | | | | +| | String variant | | | | +| | | | | | +| | | | | | From 1da5bc864bcee0f72b07341af0a6c92c996ad49d Mon Sep 17 00:00:00 2001 From: Hanna Adenholm Date: Thu, 7 Aug 2025 15:38:10 +0200 Subject: [PATCH 02/24] added first test --- src/test/java/com/booleanuk/core/BagelShopTest.java | 13 +++++++++++++ 1 file changed, 13 insertions(+) create mode 100644 src/test/java/com/booleanuk/core/BagelShopTest.java diff --git a/src/test/java/com/booleanuk/core/BagelShopTest.java b/src/test/java/com/booleanuk/core/BagelShopTest.java new file mode 100644 index 000000000..12eec9aae --- /dev/null +++ b/src/test/java/com/booleanuk/core/BagelShopTest.java @@ -0,0 +1,13 @@ +package com.booleanuk.core; + +import org.junit.jupiter.api.Assertions; +import org.junit.jupiter.api.Test; + +public class BagelShopTest { + @Test + public void testAddingBagelToBasket(){ + Basket basket = new Basket(5); + Assertions.assertTrue(basket.add("BGLO"); + Assertions.assertFalse(basket.getItems.isEmpty()); + } +} \ No newline at end of file From 7ecee1c1d537b643758581ffb8bc09e91915a730 Mon Sep 17 00:00:00 2001 From: Hanna Adenholm Date: Thu, 7 Aug 2025 16:14:15 +0200 Subject: [PATCH 03/24] implemented first test --- src/main/java/com/booleanuk/core/Basket.java | 29 +++++++++++ src/main/java/com/booleanuk/core/Item.java | 31 +++++++++++ src/main/java/com/booleanuk/core/Stock.java | 51 +++++++++++++++++++ .../com/booleanuk/core/BagelShopTest.java | 6 +-- 4 files changed, 114 insertions(+), 3 deletions(-) create mode 100644 src/main/java/com/booleanuk/core/Basket.java create mode 100644 src/main/java/com/booleanuk/core/Item.java create mode 100644 src/main/java/com/booleanuk/core/Stock.java diff --git a/src/main/java/com/booleanuk/core/Basket.java b/src/main/java/com/booleanuk/core/Basket.java new file mode 100644 index 000000000..e09454a64 --- /dev/null +++ b/src/main/java/com/booleanuk/core/Basket.java @@ -0,0 +1,29 @@ +package com.booleanuk.core; + +import java.util.ArrayList; +import java.util.List; + +public class Basket { + private List items = new ArrayList<>(); + private int capacity; + static int stdCapacity = 5; + + public Basket() { + this.capacity = stdCapacity; + } + + public int add(String sku) { + if (items.size() >= capacity) + return 0; + if(!Stock.isInStock(sku)) + return -1; + items.add(Stock.getItem(sku)); + return 1; + } + + public List getItems() { + return items; + } + + +} diff --git a/src/main/java/com/booleanuk/core/Item.java b/src/main/java/com/booleanuk/core/Item.java new file mode 100644 index 000000000..54832be61 --- /dev/null +++ b/src/main/java/com/booleanuk/core/Item.java @@ -0,0 +1,31 @@ +package com.booleanuk.core; + +public class Item { + private String sku; + private float price; + private String Name; + private String variant; + + public String getVariant() { + return variant; + } + + public String getName() { + return Name; + } + + public float getPrice() { + return price; + } + + public String getSku() { + return sku; + } + + public Item(String sku, float price, String name, String variant) { + this.sku = sku; + this.price = price; + Name = name; + this.variant = variant; + } +} diff --git a/src/main/java/com/booleanuk/core/Stock.java b/src/main/java/com/booleanuk/core/Stock.java new file mode 100644 index 000000000..f09dd9465 --- /dev/null +++ b/src/main/java/com/booleanuk/core/Stock.java @@ -0,0 +1,51 @@ +package com.booleanuk.core; + +import java.util.ArrayList; +import java.util.Arrays; +import java.util.List; +import java.util.Objects; + +public class Stock { + static private List stock = Arrays.asList( + new Item("BGLO", 0.49f, "Bagel", "Onion"), + new Item("BGLP", 0.39f, "Bagel", "Plain"), + new Item("BGLE", 0.49f, "Bagel", "Everything"), + new Item("BGLS", 0.49f, "Bagel", "Sesame"), + new Item("COFB", 0.99f, "Coffee", "Black"), + new Item("COFW", 1.19f, "Coffee", "White"), + new Item("COFC", 1.29f, "Coffee", "Cappuccino"), + new Item("COFL", 1.29f, "Coffee", "Latte"), + new Item("FILB", 0.12f, "Filling", "Bacon"), + new Item("FILE", 0.12f, "Filling", "Egg"), + new Item("FILC", 0.12f, "Filling", "Cheese"), + new Item("FILX", 0.12f, "Filling", "Cream Cheese"), + new Item("FILS", 0.12f, "Filling", "Smoked Salmon"), + new Item("FILH", 0.12f, "Filling", "Ham")); + + + public static List getStock() { + return stock; + } + + public static void setStock(List stock) { + Stock.stock = stock; + } + + public static boolean isInStock(String sku) { + for (Item item: stock){ + if (item.getSku().equals(sku)){ + return true; + } + } + return false; + } + + public static Item getItem(String sku) { + for (Item item: stock){ + if (item.getSku().equals(sku)){ + return item; + } + } + return null; + } +} \ No newline at end of file diff --git a/src/test/java/com/booleanuk/core/BagelShopTest.java b/src/test/java/com/booleanuk/core/BagelShopTest.java index 12eec9aae..d82a5ada0 100644 --- a/src/test/java/com/booleanuk/core/BagelShopTest.java +++ b/src/test/java/com/booleanuk/core/BagelShopTest.java @@ -6,8 +6,8 @@ public class BagelShopTest { @Test public void testAddingBagelToBasket(){ - Basket basket = new Basket(5); - Assertions.assertTrue(basket.add("BGLO"); - Assertions.assertFalse(basket.getItems.isEmpty()); + Basket basket = new Basket(); + Assertions.assertEquals(1, basket.add("BGLO")); + Assertions.assertFalse(basket.getItems().isEmpty()); } } \ No newline at end of file From d45b11012d3318fea907947c1f8cbe7f2868bc47 Mon Sep 17 00:00:00 2001 From: Hanna Adenholm Date: Thu, 7 Aug 2025 16:18:56 +0200 Subject: [PATCH 04/24] added antoher test --- src/test/java/com/booleanuk/core/BagelShopTest.java | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/src/test/java/com/booleanuk/core/BagelShopTest.java b/src/test/java/com/booleanuk/core/BagelShopTest.java index d82a5ada0..0ff0ba920 100644 --- a/src/test/java/com/booleanuk/core/BagelShopTest.java +++ b/src/test/java/com/booleanuk/core/BagelShopTest.java @@ -10,4 +10,13 @@ public void testAddingBagelToBasket(){ Assertions.assertEquals(1, basket.add("BGLO")); Assertions.assertFalse(basket.getItems().isEmpty()); } + + @Test + public void testRemovingBagel(){ + Basket basket = new Basket(); + Assertions.assertEquals(1, basket.add("BGLO")); + Assertions.assertFalse(basket.remove("BGRF")); + Assertions.assertTrue(basket.remove("BGLO")); + Assertions.assertTrue(basket.getItems().isEmpty()); + } } \ No newline at end of file From 3aa8d90a62cfb7766b3549af541dc5b866b8ea01 Mon Sep 17 00:00:00 2001 From: Hanna Adenholm Date: Thu, 7 Aug 2025 16:20:37 +0200 Subject: [PATCH 05/24] implemented remove in basket --- src/main/java/com/booleanuk/core/Basket.java | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/src/main/java/com/booleanuk/core/Basket.java b/src/main/java/com/booleanuk/core/Basket.java index e09454a64..748067d9f 100644 --- a/src/main/java/com/booleanuk/core/Basket.java +++ b/src/main/java/com/booleanuk/core/Basket.java @@ -21,6 +21,10 @@ public int add(String sku) { return 1; } + public boolean remove(String sku) { + return items.remove(Stock.getItem(sku)); + } + public List getItems() { return items; } From 4b97726261a37f741015a9748e48340d37ca7cde Mon Sep 17 00:00:00 2001 From: Hanna Adenholm Date: Thu, 7 Aug 2025 16:32:18 +0200 Subject: [PATCH 06/24] Added new tests --- .../com/booleanuk/core/BagelShopTest.java | 22 +++++++++++++++++++ 1 file changed, 22 insertions(+) diff --git a/src/test/java/com/booleanuk/core/BagelShopTest.java b/src/test/java/com/booleanuk/core/BagelShopTest.java index 0ff0ba920..8a51bdc71 100644 --- a/src/test/java/com/booleanuk/core/BagelShopTest.java +++ b/src/test/java/com/booleanuk/core/BagelShopTest.java @@ -19,4 +19,26 @@ public void testRemovingBagel(){ Assertions.assertTrue(basket.remove("BGLO")); Assertions.assertTrue(basket.getItems().isEmpty()); } + + @Test + public void testAddingUntilFull(){ + Basket basket = new Basket(); + Assertions.assertEquals(1, basket.add("BGLO")); + Assertions.assertEquals(1, basket.add("BGLO")); + Assertions.assertEquals(1, basket.add("BGLO")); + Assertions.assertEquals(1, basket.add("BGLO")); + Assertions.assertEquals(1, basket.add("BGLO")); + Assertions.assertEquals(0, basket.add("BGLO")); + Assertions.assertEquals(5, basket.getItems().size()); + } + + @Test + public void testChangeBasketStdCapacity(){ + Basket basket = new Basket(); + Assertions.assertEquals(5, basket.getCapacity()); + Basket.setStdCapacity(3); + Assertions.assertEquals(3, Basket.getStdCapacity()); + Basket basket2 = new Basket(); + Assertions.assertEquals(3, basket2.getCapacity()); + } } \ No newline at end of file From aa95160dc88ac9b9a69545dc2e4c542336ab9b81 Mon Sep 17 00:00:00 2001 From: Hanna Adenholm Date: Thu, 7 Aug 2025 16:32:36 +0200 Subject: [PATCH 07/24] implemented changing basket capacity --- src/main/java/com/booleanuk/core/Basket.java | 12 +++++++++++- 1 file changed, 11 insertions(+), 1 deletion(-) diff --git a/src/main/java/com/booleanuk/core/Basket.java b/src/main/java/com/booleanuk/core/Basket.java index 748067d9f..b1d56b7ff 100644 --- a/src/main/java/com/booleanuk/core/Basket.java +++ b/src/main/java/com/booleanuk/core/Basket.java @@ -6,7 +6,7 @@ public class Basket { private List items = new ArrayList<>(); private int capacity; - static int stdCapacity = 5; + private static int stdCapacity = 5; public Basket() { this.capacity = stdCapacity; @@ -29,5 +29,15 @@ public List getItems() { return items; } + public int getCapacity() { + return capacity; + } + + public static int getStdCapacity() { + return stdCapacity; + } + public static void setStdCapacity(int stdCapacity) { + Basket.stdCapacity = stdCapacity; + } } From 598caee4fb0b8fb882f13fe5303baece84c0db6d Mon Sep 17 00:00:00 2001 From: Hanna Adenholm Date: Fri, 8 Aug 2025 08:22:15 +0200 Subject: [PATCH 08/24] Added tests for capacity and total price --- src/test/java/com/booleanuk/core/BagelShopTest.java | 12 ++++++++++++ 1 file changed, 12 insertions(+) diff --git a/src/test/java/com/booleanuk/core/BagelShopTest.java b/src/test/java/com/booleanuk/core/BagelShopTest.java index 8a51bdc71..202692ec4 100644 --- a/src/test/java/com/booleanuk/core/BagelShopTest.java +++ b/src/test/java/com/booleanuk/core/BagelShopTest.java @@ -41,4 +41,16 @@ public void testChangeBasketStdCapacity(){ Basket basket2 = new Basket(); Assertions.assertEquals(3, basket2.getCapacity()); } + + @Test + public void testTotalPrice(){ + Basket basket = new Basket(); + Assertions.assertEquals(0, basket.getTotalCost()); + basket.add("BGLO"); + Assertions.assertEquals(0.49f, basket.getTotalCost()); + basket.add("BGLO"); + Assertions.assertEquals(0.98f, basket.getTotalCost()); + basket.add("COFB"); + Assertions.assertEquals(1.97f, basket.getTotalCost()); + } } \ No newline at end of file From 0f68343076011a63d863d9b94067fa50462c7ae8 Mon Sep 17 00:00:00 2001 From: Hanna Adenholm Date: Fri, 8 Aug 2025 09:57:27 +0200 Subject: [PATCH 09/24] Implemeted totalCost --- src/main/java/com/booleanuk/core/Basket.java | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/src/main/java/com/booleanuk/core/Basket.java b/src/main/java/com/booleanuk/core/Basket.java index b1d56b7ff..e8be9fefc 100644 --- a/src/main/java/com/booleanuk/core/Basket.java +++ b/src/main/java/com/booleanuk/core/Basket.java @@ -40,4 +40,12 @@ public static int getStdCapacity() { public static void setStdCapacity(int stdCapacity) { Basket.stdCapacity = stdCapacity; } + + public float getTotalCost(){ + float total = 0f; + for (Item item: items){ + total += item.getPrice(); + } + return total; + } } From 85a8f7ff3dd3e89b48daf3ac582f73806d33df68 Mon Sep 17 00:00:00 2001 From: Hanna Adenholm Date: Fri, 8 Aug 2025 09:58:04 +0200 Subject: [PATCH 10/24] Did some refactoring --- src/main/java/com/booleanuk/core/Bagel.java | 32 ++++++++++++++ src/main/java/com/booleanuk/core/Coffee.java | 8 ++++ src/main/java/com/booleanuk/core/Filling.java | 8 ++++ src/main/java/com/booleanuk/core/Item.java | 2 +- src/main/java/com/booleanuk/core/Stock.java | 28 ++++++------ .../java/com/booleanuk/core/domain-model.md | 44 +++++++++++-------- 6 files changed, 88 insertions(+), 34 deletions(-) create mode 100644 src/main/java/com/booleanuk/core/Bagel.java create mode 100644 src/main/java/com/booleanuk/core/Coffee.java create mode 100644 src/main/java/com/booleanuk/core/Filling.java diff --git a/src/main/java/com/booleanuk/core/Bagel.java b/src/main/java/com/booleanuk/core/Bagel.java new file mode 100644 index 000000000..d567d7db3 --- /dev/null +++ b/src/main/java/com/booleanuk/core/Bagel.java @@ -0,0 +1,32 @@ +package com.booleanuk.core; + +import java.util.ArrayList; +import java.util.List; + +public class Bagel extends Item{ + private final List fillings = new ArrayList<>(); + + public Bagel(String sku, float price, String variant) { + super(sku, price, "Bagel", variant); + } + + @Override + public float getPrice(){ + float total = 0f; + for(Item f: fillings){ + total += f.getPrice(); + } + return super.getPrice() + total; + } + + public List getFillings() { + return fillings; + } + + public boolean addFilling(Item filling){ + if(!filling.getVariant().equals("Filling")) + return false; + fillings.add(filling); + return true; + } +} diff --git a/src/main/java/com/booleanuk/core/Coffee.java b/src/main/java/com/booleanuk/core/Coffee.java new file mode 100644 index 000000000..1dd19af67 --- /dev/null +++ b/src/main/java/com/booleanuk/core/Coffee.java @@ -0,0 +1,8 @@ +package com.booleanuk.core; + +public class Coffee extends Item{ + + public Coffee(String sku, float price, String variant) { + super(sku, price, "Coffee", variant); + } +} diff --git a/src/main/java/com/booleanuk/core/Filling.java b/src/main/java/com/booleanuk/core/Filling.java new file mode 100644 index 000000000..6b12d4a08 --- /dev/null +++ b/src/main/java/com/booleanuk/core/Filling.java @@ -0,0 +1,8 @@ +package com.booleanuk.core; + +public class Filling extends Item{ + + public Filling(String sku, float price, String variant) { + super(sku, price, "Filling", variant); + } +} diff --git a/src/main/java/com/booleanuk/core/Item.java b/src/main/java/com/booleanuk/core/Item.java index 54832be61..abc2728db 100644 --- a/src/main/java/com/booleanuk/core/Item.java +++ b/src/main/java/com/booleanuk/core/Item.java @@ -1,6 +1,6 @@ package com.booleanuk.core; -public class Item { +public abstract class Item { private String sku; private float price; private String Name; diff --git a/src/main/java/com/booleanuk/core/Stock.java b/src/main/java/com/booleanuk/core/Stock.java index f09dd9465..5215c2243 100644 --- a/src/main/java/com/booleanuk/core/Stock.java +++ b/src/main/java/com/booleanuk/core/Stock.java @@ -7,20 +7,20 @@ public class Stock { static private List stock = Arrays.asList( - new Item("BGLO", 0.49f, "Bagel", "Onion"), - new Item("BGLP", 0.39f, "Bagel", "Plain"), - new Item("BGLE", 0.49f, "Bagel", "Everything"), - new Item("BGLS", 0.49f, "Bagel", "Sesame"), - new Item("COFB", 0.99f, "Coffee", "Black"), - new Item("COFW", 1.19f, "Coffee", "White"), - new Item("COFC", 1.29f, "Coffee", "Cappuccino"), - new Item("COFL", 1.29f, "Coffee", "Latte"), - new Item("FILB", 0.12f, "Filling", "Bacon"), - new Item("FILE", 0.12f, "Filling", "Egg"), - new Item("FILC", 0.12f, "Filling", "Cheese"), - new Item("FILX", 0.12f, "Filling", "Cream Cheese"), - new Item("FILS", 0.12f, "Filling", "Smoked Salmon"), - new Item("FILH", 0.12f, "Filling", "Ham")); + new Bagel("BGLO", 0.49f, "Onion"), + new Bagel("BGLP", 0.39f, "Plain"), + new Bagel("BGLE", 0.49f, "Everything"), + new Bagel("BGLS", 0.49f, "Sesame"), + new Coffee("COFB", 0.99f, "Black"), + new Coffee("COFW", 1.19f, "White"), + new Coffee("COFC", 1.29f, "Cappuccino"), + new Coffee("COFL", 1.29f, "Latte"), + new Filling("FILB", 0.12f, "Bacon"), + new Filling("FILE", 0.12f, "Egg"), + new Filling("FILC", 0.12f, "Cheese"), + new Filling("FILX", 0.12f, "Cream Cheese"), + new Filling("FILS", 0.12f, "Smoked Salmon"), + new Filling("FILH", 0.12f, "Ham")); public static List getStock() { diff --git a/src/main/java/com/booleanuk/core/domain-model.md b/src/main/java/com/booleanuk/core/domain-model.md index 576428df0..fe9c093c6 100644 --- a/src/main/java/com/booleanuk/core/domain-model.md +++ b/src/main/java/com/booleanuk/core/domain-model.md @@ -1,19 +1,25 @@ -| Class | Member | Method | Scenario | Output | -|--------|--------------------|----------------------|------------------------------|------------| -| Basket | List items | add(String sku) | Correct code basket not full | 1 | -| | int capacity | | Correct code basket full | 0 | -| | static stdCapacity | | Incorrect code | -1 | -| | static Stock stock | remove(String sku) | Exists | True | -| | | | Doesn't exist | False | -| | | getTotalCost() | | int | -| Stock | List stock | | | void | -| | | getPrice(String sku) | Exists | int | -| | | | Doesn't exist | -1 | -| | | getFillings() | | List | -| | | | | | -| Item | String sku | | | | -| | float price | | | | -| | String name | | | | -| | String variant | | | | -| | | | | | -| | | | | | +| Class | Member | Method | Scenario | Output | +|---------------|--------------------|------------------------------|------------------------------|------------| +| Basket | List items | add(String sku) | Correct code basket not full | 1 | +| | int capacity | | Correct code basket full | 0 | +| | static stdCapacity | | Incorrect code | -1 | +| | static Stock stock | remove(String sku) | Exists | True | +| | | | Doesn't exist | False | +| | | getTotalCost() | | float | +| Stock | List stock | | | | +| | | getPrice(String sku) | Exists | float | +| | | | Doesn't exist | -1 | +| | | getFillings() | | List | +| | | getItem(String sku) | Exists | Item | +| | | | Does not exist | null | +| Abstract Item | String sku | getSku() | | sku | +| | float price | getPrice() | | price | +| | String name | getName() | | name | +| | String variant | getVariant() | | variant | +| | | | | | +| Bagel | List | addFilling(String "variant") | | void | +| | | removeFilling("variant") | | | +| Coffee | | | | | +| Filling | | | | | + + From 3f2f15ffedb89d66558ad1483c69d6ec33f0a6c0 Mon Sep 17 00:00:00 2001 From: Hanna Adenholm Date: Fri, 8 Aug 2025 10:58:51 +0200 Subject: [PATCH 11/24] Added tests for adding Fillings to bagels --- .../com/booleanuk/core/BagelShopTest.java | 29 +++++++++++++++++++ 1 file changed, 29 insertions(+) diff --git a/src/test/java/com/booleanuk/core/BagelShopTest.java b/src/test/java/com/booleanuk/core/BagelShopTest.java index 202692ec4..9c2d78a92 100644 --- a/src/test/java/com/booleanuk/core/BagelShopTest.java +++ b/src/test/java/com/booleanuk/core/BagelShopTest.java @@ -53,4 +53,33 @@ public void testTotalPrice(){ basket.add("COFB"); Assertions.assertEquals(1.97f, basket.getTotalCost()); } + + @Test + public void testTotalPriceWithFillings(){ + Basket basket = new Basket(); + Assertions.assertEquals(0, basket.getTotalCost()); + basket.add("BGLO"); + Assertions.assertEquals(0.49f, basket.getTotalCost()); + Bagel bagel = (Bagel) Stock.getItem("BGLS"); + Assertions.assertTrue(bagel.addFilling(Stock.getItem("FILE"))); + basket.add(bagel); + Assertions.assertEquals(1.1f, basket.getTotalCost()); + bagel.addFilling(Stock.getItem("FILE")); + Assertions.assertEquals(1.22f, basket.getTotalCost()); + } + + @Test + public void testAddingFilling(){ + Basket basket = new Basket(); + Bagel bagel = (Bagel) Stock.getItem("BGLS"); + Assertions.assertTrue(bagel.addFilling(Stock.getItem("FILE"))); + Assertions.assertEquals(1, bagel.getFillings().size()); + } + + @Test + public void testAddingInvalidFilling(){ + Basket basket = new Basket(); + Bagel bagel = (Bagel) Stock.getItem("BGLS"); + Assertions.assertFalse(bagel.addFilling(null)); + } } \ No newline at end of file From 929f3a72d70a5852f3356d2eb698715d241c6e45 Mon Sep 17 00:00:00 2001 From: Hanna Adenholm Date: Fri, 8 Aug 2025 11:02:15 +0200 Subject: [PATCH 12/24] Implemeted so addfilling works as it should --- src/main/java/com/booleanuk/core/Bagel.java | 2 +- src/main/java/com/booleanuk/core/Basket.java | 9 +++++++++ src/main/java/com/booleanuk/core/Stock.java | 21 ++++++++++++++++++-- 3 files changed, 29 insertions(+), 3 deletions(-) diff --git a/src/main/java/com/booleanuk/core/Bagel.java b/src/main/java/com/booleanuk/core/Bagel.java index d567d7db3..11e167ae7 100644 --- a/src/main/java/com/booleanuk/core/Bagel.java +++ b/src/main/java/com/booleanuk/core/Bagel.java @@ -24,7 +24,7 @@ public List getFillings() { } public boolean addFilling(Item filling){ - if(!filling.getVariant().equals("Filling")) + if(!(filling instanceof Filling)) return false; fillings.add(filling); return true; diff --git a/src/main/java/com/booleanuk/core/Basket.java b/src/main/java/com/booleanuk/core/Basket.java index e8be9fefc..0d672979e 100644 --- a/src/main/java/com/booleanuk/core/Basket.java +++ b/src/main/java/com/booleanuk/core/Basket.java @@ -21,6 +21,15 @@ public int add(String sku) { return 1; } + public int add(Item item) { + if (items.size() >= capacity) + return 0; + if(!Stock.isInStock(item.getSku())) + return -1; + items.add(item); + return 1; + } + public boolean remove(String sku) { return items.remove(Stock.getItem(sku)); } diff --git a/src/main/java/com/booleanuk/core/Stock.java b/src/main/java/com/booleanuk/core/Stock.java index 5215c2243..2a41c5ea7 100644 --- a/src/main/java/com/booleanuk/core/Stock.java +++ b/src/main/java/com/booleanuk/core/Stock.java @@ -3,7 +3,6 @@ import java.util.ArrayList; import java.util.Arrays; import java.util.List; -import java.util.Objects; public class Stock { static private List stock = Arrays.asList( @@ -43,9 +42,27 @@ public static boolean isInStock(String sku) { public static Item getItem(String sku) { for (Item item: stock){ if (item.getSku().equals(sku)){ - return item; + return copyItem(item); } } return null; } + + private static Item copyItem(Item item){ + if (item instanceof Bagel) + return new Bagel(item.getSku(), item.getPrice(), item.getVariant()); + if (item instanceof Coffee) + return new Coffee(item.getSku(), item.getPrice(), item.getVariant()); + else + return new Filling(item.getSku(), item.getPrice(), item.getVariant()); + } + + public static List getFillings() { + List fillings = new ArrayList<>(); + for (Item item: stock){ + if (item instanceof Filling) + fillings.add((Filling)item); + } + return fillings; + } } \ No newline at end of file From 59a55f6aad95e7f2dd389052a1bd896d70e2428e Mon Sep 17 00:00:00 2001 From: Hanna Adenholm Date: Fri, 8 Aug 2025 11:09:26 +0200 Subject: [PATCH 13/24] Added tests for adding invalid items --- src/test/java/com/booleanuk/core/BagelShopTest.java | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/src/test/java/com/booleanuk/core/BagelShopTest.java b/src/test/java/com/booleanuk/core/BagelShopTest.java index 9c2d78a92..5ee4d511d 100644 --- a/src/test/java/com/booleanuk/core/BagelShopTest.java +++ b/src/test/java/com/booleanuk/core/BagelShopTest.java @@ -82,4 +82,13 @@ public void testAddingInvalidFilling(){ Bagel bagel = (Bagel) Stock.getItem("BGLS"); Assertions.assertFalse(bagel.addFilling(null)); } + + @Test + public void testAddingInvalidItemsToBasket(){ + Basket basket = new Basket(); + Assertions.assertEquals(-1, basket.add("BGLH")); + Assertions.assertTrue(basket.getItems().isEmpty()); + Assertions.assertEquals(-1, basket.add((Item) null)); + Assertions.assertTrue(basket.getItems().isEmpty()); + } } \ No newline at end of file From bf342f3076c2b1f5450f0b4e99a803445ea6ca52 Mon Sep 17 00:00:00 2001 From: Hanna Adenholm Date: Fri, 8 Aug 2025 11:51:24 +0200 Subject: [PATCH 14/24] Fixed so invalidItems can't be added --- src/main/java/com/booleanuk/core/Basket.java | 2 +- src/test/java/com/booleanuk/core/BagelShopTest.java | 2 -- 2 files changed, 1 insertion(+), 3 deletions(-) diff --git a/src/main/java/com/booleanuk/core/Basket.java b/src/main/java/com/booleanuk/core/Basket.java index 0d672979e..cd355d381 100644 --- a/src/main/java/com/booleanuk/core/Basket.java +++ b/src/main/java/com/booleanuk/core/Basket.java @@ -24,7 +24,7 @@ public int add(String sku) { public int add(Item item) { if (items.size() >= capacity) return 0; - if(!Stock.isInStock(item.getSku())) + if(item == null || !Stock.isInStock(item.getSku())) return -1; items.add(item); return 1; diff --git a/src/test/java/com/booleanuk/core/BagelShopTest.java b/src/test/java/com/booleanuk/core/BagelShopTest.java index 5ee4d511d..e3d2fad05 100644 --- a/src/test/java/com/booleanuk/core/BagelShopTest.java +++ b/src/test/java/com/booleanuk/core/BagelShopTest.java @@ -70,7 +70,6 @@ public void testTotalPriceWithFillings(){ @Test public void testAddingFilling(){ - Basket basket = new Basket(); Bagel bagel = (Bagel) Stock.getItem("BGLS"); Assertions.assertTrue(bagel.addFilling(Stock.getItem("FILE"))); Assertions.assertEquals(1, bagel.getFillings().size()); @@ -78,7 +77,6 @@ public void testAddingFilling(){ @Test public void testAddingInvalidFilling(){ - Basket basket = new Basket(); Bagel bagel = (Bagel) Stock.getItem("BGLS"); Assertions.assertFalse(bagel.addFilling(null)); } From 2cb0704e16c4d36dc98e65c9f256afb5b576bbc3 Mon Sep 17 00:00:00 2001 From: Hanna Adenholm Date: Fri, 8 Aug 2025 13:14:23 +0200 Subject: [PATCH 15/24] Added another test --- src/test/java/com/booleanuk/core/BagelShopTest.java | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/src/test/java/com/booleanuk/core/BagelShopTest.java b/src/test/java/com/booleanuk/core/BagelShopTest.java index e3d2fad05..05057a941 100644 --- a/src/test/java/com/booleanuk/core/BagelShopTest.java +++ b/src/test/java/com/booleanuk/core/BagelShopTest.java @@ -89,4 +89,9 @@ public void testAddingInvalidItemsToBasket(){ Assertions.assertEquals(-1, basket.add((Item) null)); Assertions.assertTrue(basket.getItems().isEmpty()); } + + @Test + public void testGetCostOfFillings(){ + Assertions.assertEquals(0.12f, Stock.getFillings().getFirst().getPrice()); + } } \ No newline at end of file From f16d10eb09d81349b041d071a5a9852baffca6e7 Mon Sep 17 00:00:00 2001 From: Hanna Adenholm Date: Fri, 8 Aug 2025 13:14:46 +0200 Subject: [PATCH 16/24] fixed all tests passes --- src/main/java/com/booleanuk/core/Basket.java | 8 +++++++- src/main/java/com/booleanuk/core/Stock.java | 10 +--------- 2 files changed, 8 insertions(+), 10 deletions(-) diff --git a/src/main/java/com/booleanuk/core/Basket.java b/src/main/java/com/booleanuk/core/Basket.java index cd355d381..0db6a6362 100644 --- a/src/main/java/com/booleanuk/core/Basket.java +++ b/src/main/java/com/booleanuk/core/Basket.java @@ -31,7 +31,13 @@ public int add(Item item) { } public boolean remove(String sku) { - return items.remove(Stock.getItem(sku)); + for(Item item: items){ + if(item.getSku().equals(sku)) { + items.remove(item); + return true; + } + } + return false; } public List getItems() { diff --git a/src/main/java/com/booleanuk/core/Stock.java b/src/main/java/com/booleanuk/core/Stock.java index 2a41c5ea7..df5c87220 100644 --- a/src/main/java/com/booleanuk/core/Stock.java +++ b/src/main/java/com/booleanuk/core/Stock.java @@ -22,14 +22,6 @@ public class Stock { new Filling("FILH", 0.12f, "Ham")); - public static List getStock() { - return stock; - } - - public static void setStock(List stock) { - Stock.stock = stock; - } - public static boolean isInStock(String sku) { for (Item item: stock){ if (item.getSku().equals(sku)){ @@ -61,7 +53,7 @@ public static List getFillings() { List fillings = new ArrayList<>(); for (Item item: stock){ if (item instanceof Filling) - fillings.add((Filling)item); + fillings.add((Filling)copyItem(item)); } return fillings; } From 8f6a225cebfc85c2b21a3d056736c5dbb3f9ee83 Mon Sep 17 00:00:00 2001 From: Hanna Adenholm Date: Fri, 8 Aug 2025 15:26:20 +0200 Subject: [PATCH 17/24] updated the class diagram --- .../java/com/booleanuk/core/class-diagram.jpg | Bin 31723 -> 0 bytes .../java/com/booleanuk/core/class_diagram.png | Bin 0 -> 163831 bytes 2 files changed, 0 insertions(+), 0 deletions(-) delete mode 100644 src/main/java/com/booleanuk/core/class-diagram.jpg create mode 100644 src/main/java/com/booleanuk/core/class_diagram.png diff --git a/src/main/java/com/booleanuk/core/class-diagram.jpg b/src/main/java/com/booleanuk/core/class-diagram.jpg deleted file mode 100644 index 381a85ae84367d551c3cc68523ca09ed6577bd9b..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 31723 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 Date: Mon, 11 Aug 2025 13:22:33 +0200 Subject: [PATCH 18/24] added ext1 user stories and test --- .../com/booleanuk/extension/domain-model.md | 33 +++++++++++++++++++ .../com/booleanuk/extension/BagelExtTest.java | 25 ++++++++++++++ 2 files changed, 58 insertions(+) create mode 100644 src/main/java/com/booleanuk/extension/domain-model.md create mode 100644 src/test/java/com/booleanuk/extension/BagelExtTest.java diff --git a/src/main/java/com/booleanuk/extension/domain-model.md b/src/main/java/com/booleanuk/extension/domain-model.md new file mode 100644 index 000000000..027538818 --- /dev/null +++ b/src/main/java/com/booleanuk/extension/domain-model.md @@ -0,0 +1,33 @@ +| Class | Member | Method | Scenario | Output | +|------------------|--------------------|------------------------------|------------------------------|------------| +| Basket | List items | add(String sku) | Correct code basket not full | 1 | +| | int capacity | | Correct code basket full | 0 | +| | static stdCapacity | | Incorrect code | -1 | +| | static Stock stock | remove(String sku) | Exists | True | +| | | | Doesn't exist | False | +| | | getTotalCost() | | float | +| | | getDiscountedCost() | | float | +| Stock | List stock | | | | +| | | getPrice(String sku) | Exists | float | +| | | | Doesn't exist | -1 | +| | | getFillings() | | List | +| | | getItem(String sku) | Exists | Item | +| | | | Does not exist | null | +| Abstract Item | String sku | getSku() | | sku | +| | float price | getPrice() | | price | +| | String name | getName() | | name | +| | String variant | getVariant() | | variant | +| | | | | | +| Bagel | List | addFilling(String "variant") | | void | +| | | removeFilling("variant") | | | +| Coffee | | | | | +| Filling | | | | | + + + +### Extension 1 +``` +As a cutomer, +So I know what the price will be, +I'd like to know the total discounted price +``` \ No newline at end of file diff --git a/src/test/java/com/booleanuk/extension/BagelExtTest.java b/src/test/java/com/booleanuk/extension/BagelExtTest.java new file mode 100644 index 000000000..8c892b9e9 --- /dev/null +++ b/src/test/java/com/booleanuk/extension/BagelExtTest.java @@ -0,0 +1,25 @@ +package com.booleanuk.extension; + +import org.junit.jupiter.api.Assertions; +import org.junit.jupiter.api.Test; + +public class BagelExtTest { + @Test + public void testGettingDiscount(){ + Basket basket = new Basket(); + basket.setCapacity(25); + basket.add("BGLO", 2); + basket.add("BGLP", 12); + basket.add("BGLE", 6); + basket.add("COFB", 3); + Assertions.assertEquals(9.97f, basket.getDiscountedTotal(), 0.001); + } + + @Test + public void testGettingDiscount2(){ + Basket basket = new Basket(); + basket.setCapacity(25); + basket.add("BGLP", 16); + Assertions.assertEquals(5.55f, basket.getDiscountedTotal(), 0.001); + } +} From 390c6e5b7c9fccd2530d370a8ebcb2a3cd437b54 Mon Sep 17 00:00:00 2001 From: Hanna Adenholm Date: Mon, 11 Aug 2025 13:23:18 +0200 Subject: [PATCH 19/24] implemented ext1 --- .../java/com/booleanuk/extension/Bagel.java | 32 ++++ .../java/com/booleanuk/extension/Basket.java | 147 ++++++++++++++++++ .../java/com/booleanuk/extension/Coffee.java | 8 + .../java/com/booleanuk/extension/Filling.java | 8 + .../java/com/booleanuk/extension/Item.java | 31 ++++ .../java/com/booleanuk/extension/Stock.java | 60 +++++++ 6 files changed, 286 insertions(+) create mode 100644 src/main/java/com/booleanuk/extension/Bagel.java create mode 100644 src/main/java/com/booleanuk/extension/Basket.java create mode 100644 src/main/java/com/booleanuk/extension/Coffee.java create mode 100644 src/main/java/com/booleanuk/extension/Filling.java create mode 100644 src/main/java/com/booleanuk/extension/Item.java create mode 100644 src/main/java/com/booleanuk/extension/Stock.java diff --git a/src/main/java/com/booleanuk/extension/Bagel.java b/src/main/java/com/booleanuk/extension/Bagel.java new file mode 100644 index 000000000..18cc2b895 --- /dev/null +++ b/src/main/java/com/booleanuk/extension/Bagel.java @@ -0,0 +1,32 @@ +package com.booleanuk.extension; + +import java.util.ArrayList; +import java.util.List; + +public class Bagel extends Item{ + private final List fillings = new ArrayList<>(); + + public Bagel(String sku, float price, String variant) { + super(sku, price, "Bagel", variant); + } + + @Override + public float getPrice(){ + float total = 0f; + for(Item f: fillings){ + total += f.getPrice(); + } + return super.getPrice() + total; + } + + public List getFillings() { + return fillings; + } + + public boolean addFilling(Item filling){ + if(!(filling instanceof Filling)) + return false; + fillings.add(filling); + return true; + } +} diff --git a/src/main/java/com/booleanuk/extension/Basket.java b/src/main/java/com/booleanuk/extension/Basket.java new file mode 100644 index 000000000..97d138caf --- /dev/null +++ b/src/main/java/com/booleanuk/extension/Basket.java @@ -0,0 +1,147 @@ +package com.booleanuk.extension; + +import java.util.ArrayList; +import java.util.HashMap; +import java.util.List; +import java.util.Map; + +public class Basket { + private List items = new ArrayList<>(); + private int capacity; + private static int stdCapacity = 5; + + public Basket() { + this.capacity = stdCapacity; + } + + public int add(String sku) { + if (items.size() >= capacity) + return 0; + if(!Stock.isInStock(sku)) + return -1; + items.add(Stock.getItem(sku)); + return 1; + } + + public int add(String sku, int count) { + if (items.size() + count > capacity) + return 0; + if(!Stock.isInStock(sku)) + return -1; + for (int i = 0; i < count; i++) { + items.add(Stock.getItem(sku)); + } + return 1; + } + + public int add(Item item) { + if (items.size() >= capacity) + return 0; + if(item == null || !Stock.isInStock(item.getSku())) + return -1; + items.add(item); + return 1; + } + + public boolean remove(String sku) { + for(Item item: items){ + if(item.getSku().equals(sku)) { + items.remove(item); + return true; + } + } + return false; + } + + public List getItems() { + return items; + } + + public int getCapacity() { + return capacity; + } + + public void setCapacity(int capacity) { + this.capacity = capacity; + } + + public static int getStdCapacity() { + return stdCapacity; + } + + public static void setStdCapacity(int stdCapacity) { + Basket.stdCapacity = stdCapacity; + } + + public float getTotalCost(){ + float total = 0f; + for (Item item: items){ + total += item.getPrice(); + } + return total; + } + + public double getDiscountedTotal(){ + double discount = 0; + Map count = countItems(); + // Check discounts for bagel + for (Map.Entry entry : count.entrySet()) { + String sku = entry.getKey(); + Integer n = entry.getValue(); + if(sku.substring(0, 3).equals("BGL")){ + discount += getBagelDiscount(sku, n); + count.put(sku, count.get(sku) - (n - n%6)); + } + } + // Check discount for Bagel & coffe combo + for (Map.Entry entry : count.entrySet()) { + String sku = entry.getKey(); + Integer n = entry.getValue(); + if(sku.substring(0, 3).equals("COF")){ + for (int i = 0; i < n; i++) { + discount += findBagelCoffeCombo(sku, count); + } + } + } + return getTotalCost() - discount; + } + + private double getBagelDiscount(String sku, int count){ + double discount = 0; + while (count >= 12) { + discount += 12 * Stock.getItem(sku).getPrice() - 3.99f; + count -= 12; + } + while (count >= 6) { + discount += 6 * Stock.getItem(sku).getPrice() - 2.49f; + count -= 6; + } + return discount; + } + + private float findBagelCoffeCombo(String coffeSku, Map count){ + float disc = 0; + for (Map.Entry entry : count.entrySet()) { + String sku = entry.getKey(); + Integer n = entry.getValue(); + if(sku.substring(0, 3).equals("BGL") && n >= 1){ + disc = Stock.getItem(sku).getPrice() + Stock.getItem(coffeSku).getPrice() - 1.25f; + count.put(sku, count.get(sku) - 1); + } + } + return disc; + } + + private Map countItems(){ + Map count = new HashMap<>(); + for(Item item: items){ + if (count.containsKey(item.getSku())) + count.put(item.getSku(), count.get(item.getSku()) + 1); + else + count.put(item.getSku(), 1); + } + return count; + } + + +} diff --git a/src/main/java/com/booleanuk/extension/Coffee.java b/src/main/java/com/booleanuk/extension/Coffee.java new file mode 100644 index 000000000..92e84b44b --- /dev/null +++ b/src/main/java/com/booleanuk/extension/Coffee.java @@ -0,0 +1,8 @@ +package com.booleanuk.extension; + +public class Coffee extends Item{ + + public Coffee(String sku, float price, String variant) { + super(sku, price, "Coffee", variant); + } +} diff --git a/src/main/java/com/booleanuk/extension/Filling.java b/src/main/java/com/booleanuk/extension/Filling.java new file mode 100644 index 000000000..8625a5a45 --- /dev/null +++ b/src/main/java/com/booleanuk/extension/Filling.java @@ -0,0 +1,8 @@ +package com.booleanuk.extension; + +public class Filling extends Item{ + + public Filling(String sku, float price, String variant) { + super(sku, price, "Filling", variant); + } +} diff --git a/src/main/java/com/booleanuk/extension/Item.java b/src/main/java/com/booleanuk/extension/Item.java new file mode 100644 index 000000000..81505a833 --- /dev/null +++ b/src/main/java/com/booleanuk/extension/Item.java @@ -0,0 +1,31 @@ +package com.booleanuk.extension; + +public abstract class Item { + private String sku; + private float price; + private String Name; + private String variant; + + public String getVariant() { + return variant; + } + + public String getName() { + return Name; + } + + public float getPrice() { + return price; + } + + public String getSku() { + return sku; + } + + public Item(String sku, float price, String name, String variant) { + this.sku = sku; + this.price = price; + Name = name; + this.variant = variant; + } +} diff --git a/src/main/java/com/booleanuk/extension/Stock.java b/src/main/java/com/booleanuk/extension/Stock.java new file mode 100644 index 000000000..f07884a12 --- /dev/null +++ b/src/main/java/com/booleanuk/extension/Stock.java @@ -0,0 +1,60 @@ +package com.booleanuk.extension; + +import java.util.ArrayList; +import java.util.Arrays; +import java.util.List; + +public class Stock { + static private List stock = Arrays.asList( + new Bagel("BGLO", 0.49f, "Onion"), + new Bagel("BGLP", 0.39f, "Plain"), + new Bagel("BGLE", 0.49f, "Everything"), + new Bagel("BGLS", 0.49f, "Sesame"), + new Coffee("COFB", 0.99f, "Black"), + new Coffee("COFW", 1.19f, "White"), + new Coffee("COFC", 1.29f, "Cappuccino"), + new Coffee("COFL", 1.29f, "Latte"), + new Filling("FILB", 0.12f, "Bacon"), + new Filling("FILE", 0.12f, "Egg"), + new Filling("FILC", 0.12f, "Cheese"), + new Filling("FILX", 0.12f, "Cream Cheese"), + new Filling("FILS", 0.12f, "Smoked Salmon"), + new Filling("FILH", 0.12f, "Ham")); + + + public static boolean isInStock(String sku) { + for (Item item: stock){ + if (item.getSku().equals(sku)){ + return true; + } + } + return false; + } + + public static Item getItem(String sku) { + for (Item item: stock){ + if (item.getSku().equals(sku)){ + return copyItem(item); + } + } + return null; + } + + private static Item copyItem(Item item){ + if (item instanceof Bagel) + return new Bagel(item.getSku(), item.getPrice(), item.getVariant()); + if (item instanceof Coffee) + return new Coffee(item.getSku(), item.getPrice(), item.getVariant()); + else + return new Filling(item.getSku(), item.getPrice(), item.getVariant()); + } + + public static List getFillings() { + List fillings = new ArrayList<>(); + for (Item item: stock){ + if (item instanceof Filling) + fillings.add((Filling)copyItem(item)); + } + return fillings; + } +} \ No newline at end of file From 7212d3d851049be7d1715ae2b28f58af852ae715 Mon Sep 17 00:00:00 2001 From: Hanna Adenholm Date: Tue, 12 Aug 2025 08:57:13 +0200 Subject: [PATCH 20/24] Added new test for ext 2&3 --- .../com/booleanuk/extension/BagelExtTest.java | 24 +++++++++++++++++++ 1 file changed, 24 insertions(+) diff --git a/src/test/java/com/booleanuk/extension/BagelExtTest.java b/src/test/java/com/booleanuk/extension/BagelExtTest.java index 8c892b9e9..68b3f0e25 100644 --- a/src/test/java/com/booleanuk/extension/BagelExtTest.java +++ b/src/test/java/com/booleanuk/extension/BagelExtTest.java @@ -22,4 +22,28 @@ public void testGettingDiscount2(){ basket.add("BGLP", 16); Assertions.assertEquals(5.55f, basket.getDiscountedTotal(), 0.001); } + + @Test + public void testGettingDiscountwithFillings(){ + Basket basket = new Basket(); + basket.setCapacity(25); + basket.add("BGLP", 16); + ((Bagel)basket.getItems().getFirst()).addFilling(Stock.getItem("FILC")); + ((Bagel)basket.getItems().getFirst()).addFilling(Stock.getItem("FILS")); + Assertions.assertEquals(5.55f + 0.24f, basket.getDiscountedTotal(), 0.001); + } + + @Test + public void testprintReceipt(){ + Basket basket = new Basket(); + basket.setCapacity(25); + basket.add("BGLO", 2); + basket.add("BGLP", 12); + basket.add("BGLE", 6); + basket.add("COFB", 3); + Receipt receipt = new Receipt(basket); + receipt.printReceipt(); + } + + } From 319a298c29b9c353aa480ae5cf42caf9f19af65a Mon Sep 17 00:00:00 2001 From: Hanna Adenholm Date: Tue, 12 Aug 2025 09:01:55 +0200 Subject: [PATCH 21/24] updated domain model for ext 2&3 --- .../com/booleanuk/extension/domain-model.md | 61 +++++++++++-------- 1 file changed, 37 insertions(+), 24 deletions(-) diff --git a/src/main/java/com/booleanuk/extension/domain-model.md b/src/main/java/com/booleanuk/extension/domain-model.md index 027538818..89c4548b8 100644 --- a/src/main/java/com/booleanuk/extension/domain-model.md +++ b/src/main/java/com/booleanuk/extension/domain-model.md @@ -1,27 +1,33 @@ -| Class | Member | Method | Scenario | Output | -|------------------|--------------------|------------------------------|------------------------------|------------| -| Basket | List items | add(String sku) | Correct code basket not full | 1 | -| | int capacity | | Correct code basket full | 0 | -| | static stdCapacity | | Incorrect code | -1 | -| | static Stock stock | remove(String sku) | Exists | True | -| | | | Doesn't exist | False | -| | | getTotalCost() | | float | -| | | getDiscountedCost() | | float | -| Stock | List stock | | | | -| | | getPrice(String sku) | Exists | float | -| | | | Doesn't exist | -1 | -| | | getFillings() | | List | -| | | getItem(String sku) | Exists | Item | -| | | | Does not exist | null | -| Abstract Item | String sku | getSku() | | sku | -| | float price | getPrice() | | price | -| | String name | getName() | | name | -| | String variant | getVariant() | | variant | -| | | | | | -| Bagel | List | addFilling(String "variant") | | void | -| | | removeFilling("variant") | | | -| Coffee | | | | | -| Filling | | | | | +| Class | Member | Method | Scenario | Output | +|---------------|------------------------|------------------------------|------------------------------|------------| +| Basket | List items | add(String sku) | Correct code basket not full | 1 | +| | int capacity | | Correct code basket full | 0 | +| | static stdCapacity | | Incorrect code | -1 | +| | static Stock stock | remove(String sku) | Exists | True | +| | | | Doesn't exist | False | +| | | getTotalCost() | | float | +| | | getDiscountedCost() | | float | +| Stock | List stock | | | | +| | | getPrice(String sku) | Exists | float | +| | | | Doesn't exist | -1 | +| | | getFillings() | | List | +| | | getItem(String sku) | Exists | Item | +| | | | Does not exist | null | +| Abstract Item | String sku | getSku() | | sku | +| | float price | getPrice() | | price | +| | String name | getName() | | name | +| | String variant | getVariant() | | variant | +| | | | | | +| Bagel | List fillings | addFilling(String "variant") | | void | +| | | removeFilling("variant") | | | +| Coffee | | | | | +| Filling | | | | | +| Receipt | Basket basket | printReceipt() | | | +| | TimeStamp timestamp | | | | +| PurchaseInfo | String sku | toString() | | String | +| | int count | | | | +| | float price | | | | +| | float discount | | | | @@ -30,4 +36,11 @@ As a cutomer, So I know what the price will be, I'd like to know the total discounted price +``` + +### Extension 2 +``` +As a cutomer, +So I know what I bought and the cost, +I'd like to be able to print a recepit. ``` \ No newline at end of file From 9e5abac669cf0ad1ea8dce7fd49b1fa9ae7246ee Mon Sep 17 00:00:00 2001 From: Hanna Adenholm Date: Tue, 12 Aug 2025 09:02:34 +0200 Subject: [PATCH 22/24] implemented ext 2&3 --- .../java/com/booleanuk/extension/Basket.java | 55 ++++++++++------ .../com/booleanuk/extension/PurchaseInfo.java | 62 +++++++++++++++++++ .../java/com/booleanuk/extension/Receipt.java | 41 ++++++++++++ 3 files changed, 139 insertions(+), 19 deletions(-) create mode 100644 src/main/java/com/booleanuk/extension/PurchaseInfo.java create mode 100644 src/main/java/com/booleanuk/extension/Receipt.java diff --git a/src/main/java/com/booleanuk/extension/Basket.java b/src/main/java/com/booleanuk/extension/Basket.java index 97d138caf..49d6f760f 100644 --- a/src/main/java/com/booleanuk/extension/Basket.java +++ b/src/main/java/com/booleanuk/extension/Basket.java @@ -1,9 +1,6 @@ package com.booleanuk.extension; -import java.util.ArrayList; -import java.util.HashMap; -import java.util.List; -import java.util.Map; +import java.util.*; public class Basket { private List items = new ArrayList<>(); @@ -81,33 +78,47 @@ public float getTotalCost(){ return total; } - public double getDiscountedTotal(){ - double discount = 0; - Map count = countItems(); + public float getDiscountedTotal(){ + float total = 0; + for(PurchaseInfo info: getPurchaseInfo()){ + total += info.getPrice(); + } + return total; + } + + public Collection getPurchaseInfo(){ + Map countMap = getAmounts(); + Map info = new HashMap<>(); // Check discounts for bagel - for (Map.Entry entry : count.entrySet()) { + for (Map.Entry entry : countMap.entrySet()) { String sku = entry.getKey(); Integer n = entry.getValue(); if(sku.substring(0, 3).equals("BGL")){ - discount += getBagelDiscount(sku, n); - count.put(sku, count.get(sku) - (n - n%6)); + float disc = getBagelDiscount(sku, n); + info.put(sku, new PurchaseInfo(sku, n, Stock.getItem(sku).getPrice()*n - disc, disc)); + countMap.put(sku, countMap.get(sku) - (n - n%6)); } + else + info.put(sku, new PurchaseInfo(sku, n, Stock.getItem(sku).getPrice()*n, 0)); } // Check discount for Bagel & coffe combo - for (Map.Entry entry : count.entrySet()) { + for (Map.Entry entry : countMap.entrySet()) { String sku = entry.getKey(); Integer n = entry.getValue(); if(sku.substring(0, 3).equals("COF")){ + float disc = 0; for (int i = 0; i < n; i++) { - discount += findBagelCoffeCombo(sku, count); + disc += findBagelCoffeeCombo(sku, countMap); } + info.get(sku).setDiscount(disc); + info.get(sku).setPrice(info.get(sku).getPrice()-disc); } } - return getTotalCost() - discount; + return info.values(); } - private double getBagelDiscount(String sku, int count){ - double discount = 0; + private float getBagelDiscount(String sku, int count){ + float discount = 0; while (count >= 12) { discount += 12 * Stock.getItem(sku).getPrice() - 3.99f; count -= 12; @@ -119,7 +130,7 @@ private double getBagelDiscount(String sku, int count){ return discount; } - private float findBagelCoffeCombo(String coffeSku, Map count){ + private float findBagelCoffeeCombo(String coffeSku, Map count){ float disc = 0; for (Map.Entry entry : count.entrySet()) { String sku = entry.getKey(); @@ -132,9 +143,17 @@ private float findBagelCoffeCombo(String coffeSku, Map count){ return disc; } - private Map countItems(){ + private Map getAmounts(){ Map count = new HashMap<>(); for(Item item: items){ + if (item instanceof Bagel){ + for(Item filling: ((Bagel) item).getFillings()){ + if (count.containsKey(filling.getSku())) + count.put(filling.getSku(), count.get(filling.getSku()) + 1); + else + count.put(filling.getSku(), 1); + } + } if (count.containsKey(item.getSku())) count.put(item.getSku(), count.get(item.getSku()) + 1); else @@ -142,6 +161,4 @@ private Map countItems(){ } return count; } - - } diff --git a/src/main/java/com/booleanuk/extension/PurchaseInfo.java b/src/main/java/com/booleanuk/extension/PurchaseInfo.java new file mode 100644 index 000000000..a8564c35b --- /dev/null +++ b/src/main/java/com/booleanuk/extension/PurchaseInfo.java @@ -0,0 +1,62 @@ +package com.booleanuk.extension; + +public class PurchaseInfo { + private String sku; + private int count; + private float price; + private float discount; + + public PurchaseInfo(String sku, int count, float price, float discount) { + this.sku = sku; + this.count = count; + this.price = price; + this.discount = discount; + } + + public String getSku() { + return sku; + } + + public void setSku(String sku) { + this.sku = sku; + } + + public int getCount() { + return count; + } + + public void setCount(int count) { + this.count = count; + } + + public float getPrice() { + return price; + } + + public void setPrice(float price) { + this.price = price; + } + + public float getDiscount() { + return discount; + } + + public void setDiscount(float discount) { + this.discount = discount; + } + + @Override + public String toString() { + Item item = Stock.getItem(sku); + StringBuilder str = new StringBuilder(); + str.append(String.format("%-18s%-4s%-7s", item.getVariant() + " " + item.getName(), getCount(), "£" + getPrice())); + if(getDiscount() > 0){ + str.append("\n" + String.format("%-19s%-7s"," ","(-£" + round(getDiscount()) + ")")); + } + return str.toString(); + } + + private double round(float f){ + return Math.round(f * Math.pow(10, 2)) / Math.pow(10, 2); + } +} diff --git a/src/main/java/com/booleanuk/extension/Receipt.java b/src/main/java/com/booleanuk/extension/Receipt.java new file mode 100644 index 000000000..52bad7632 --- /dev/null +++ b/src/main/java/com/booleanuk/extension/Receipt.java @@ -0,0 +1,41 @@ +package com.booleanuk.extension; + +import java.time.LocalDateTime; +import java.time.format.DateTimeFormatter; +import java.util.List; +import java.util.Map; + +public class Receipt { + Basket basket; + String timestamp; + + + public Receipt(Basket basket) { + this.basket = basket; + LocalDateTime now = LocalDateTime.now(); + DateTimeFormatter formatter = DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss"); + this.timestamp = now.format(formatter); + } + + public void printReceipt(){ + System.out.println(generateReceipt()); + } + + public String generateReceipt(){ + StringBuilder receipt = new StringBuilder(); + receipt.append(" ~~~ Bob's Bagels ~~~\n \n " + timestamp + "\n \n" + "----------------------------\n\n"); + for(PurchaseInfo item: basket.getPurchaseInfo()){ + receipt.append(item.toString()).append("\n"); + } + receipt.append("\n----------------------------\n"); + float total = basket.getDiscountedTotal(); + receipt.append(String.format("%-22s%-7s\n","Total","£" + total)); + receipt.append("\n\n You saved a total of £").append(round(basket.getTotalCost() - total)).append("\n\t on this shop") + .append("\n\n\t Thank you\n\t for you order!"); + return receipt.toString(); + } + + private double round(float f){ + return Math.round(f * Math.pow(10, 2)) / Math.pow(10, 2); + } +} From 137154c9a043813a9f16dc38e24fc7d7fcd3faac Mon Sep 17 00:00:00 2001 From: Hanna Adenholm Date: Tue, 12 Aug 2025 09:05:35 +0200 Subject: [PATCH 23/24] implemented ext 2&3 --- src/main/java/com/booleanuk/extension/domain-model.md | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/src/main/java/com/booleanuk/extension/domain-model.md b/src/main/java/com/booleanuk/extension/domain-model.md index 89c4548b8..69433c97c 100644 --- a/src/main/java/com/booleanuk/extension/domain-model.md +++ b/src/main/java/com/booleanuk/extension/domain-model.md @@ -43,4 +43,11 @@ I'd like to know the total discounted price As a cutomer, So I know what I bought and the cost, I'd like to be able to print a recepit. +``` + +### Extension 3 +``` +As a cutomer, +So I know how much I saved, +I'd like to see the discounts and the total mount saved on the receipt ``` \ No newline at end of file From 5925445643a00fca878afc595e1e2c61b0543286 Mon Sep 17 00:00:00 2001 From: Hanna Adenholm Date: Tue, 12 Aug 2025 09:37:57 +0200 Subject: [PATCH 24/24] updated the class diagram for the ext --- .../booleanuk/extension/class-diagram-ext.png | Bin 0 -> 143961 bytes 1 file changed, 0 insertions(+), 0 deletions(-) create mode 100644 src/main/java/com/booleanuk/extension/class-diagram-ext.png diff --git a/src/main/java/com/booleanuk/extension/class-diagram-ext.png b/src/main/java/com/booleanuk/extension/class-diagram-ext.png new file mode 100644 index 0000000000000000000000000000000000000000..4bca2db13297f612f8a90b1a15e343faf45a514e GIT binary patch literal 143961 zcmeFZbySpX_cp9Zw~~^hs5FQuog!ipigZg#4iZDdkO~qOsI;gk9nvXCDAGC92qPgi z3^~-ycMfphkM|Sr^L^`G>-Vj9z4w2DT-SBRKKDM3WAA-F($Y|)p=6^xa^wij^=nt| z9655V=*STYRdQ1Bn@QVL_9I6iN3LH{zUyVWFh*7GtX-qHT!pi>-bEWd9Sr?fB(Bw6B`XC%G1+1z5Jot2TA%PK)fjuH`*(?gW@|8e0sD{re! z55M(^!(Z(GkJ2efYvu7j|A_Dph~QCWiEK~)_`f_(Y_R#4pUJJxLRxM5MVkKdx**6r z*YB@C0?#2PM&t~?)BkNG>fHl-w-*%Xq<}ksUs8FtNWE?Jqm^_oDr7E`M9v?>^!0Z1m?G_&PYA;o+%`A_D=3%#I@YbnCf3>UW31Xq`&`NiMSQA@OSnq;+~s6^s@4G38)-1*ZvdGVRz= z<L5<8F1-O`#oyIDn1lWkLagh82SG-T8eYyM zFQT}l!hhgul=g^pt>z^!ora$Sv-gJG{(V_;_T$woh?R>+gwwT&5uvZs84sqO7I0Ls zXg!hbi4p^teRUNd7^`Cc;ZExA2WodP0necLF8*N0%k5f}2fLtE7sQ0vR*$}xMge9& zZo&x0nmTtFnFaTQtqhoetkTU{MrDa~8@{lEsedr5k96F7fAvfkF=6{eD2u!|HP;X3 z5X7{PGX4j*PvWcZkEde^+@*Pe9ftH=0rvvRaqx!4;xQ-qxcdhr% z0u&+dCL>~<`=U8QUg9-}^ImWDJGM*|QPPko*kFHguMLA)Aq!f9 zFWKw7E@OW*Yey=v>)FB*aqdsuJ{I#Smuj@XW4{?^B2(v_D%|Q>bu91DOde+i!K~C? zz`8z$wwG}w_da{ckC)&bN|?rma(^Vceo!;^K6D0t!J zc~RFVo*|BMt_7B;owu^NlKeRpJ)yXkI8?^BGMuZklw0${QQlINAa7Xvz)RKvuW{_; zCZ=$Tj60P@qz64O#!_hI)7eNAKKGlC~kkaPIf(2~Txy|W8NskkM01$v|%F~rp* zclrw~RQ-CsJj|lb*UX>46>avNc2iNJj#YA?WF-7q!UymB$cjY`SfZ;AFcpR0O{M-k zusWDC80dm2yC&^Oj{HZyl{9X-Uhds{5BKgOZ#ZpnE%In~(DiTHqkY{?rLf;#MXBe> z==$B=`dX`~YZ&17QqIC6O@1p=e5Y|C-a(z(x7PUv9?j)zAE2Ku8X6DZ__i}G#2g<% zSp-wKAX@FyPtk{2i_}?v#GLH zIVsTgVq_rBfGh9^v-bA*SaP|(6sJHd?M031=})-{!bF%tf8}bw9D}&Ujy=BC_b5}n zv%!ugPn!>Y=~G5}tE%4k&kA)6bxmx6_pa@21-1(Z+s;>IWBhyD%}TxE9Fv>YKDLRL z+7E9Js+6T)Sw(zvj@_nLygcweOBI_HqRKlt2Ijc2|n zAczsePx6S9BCX96-=IU4AGJ>&X)_5QsaS)eTbmu4Iya5I1{Ws9r7+zS14rchJi;l9 zkTt#{U)*5H>UDh`yujo<2Yv% zOFe~`I{YP{W>XgNbl*VhD@)X*e0X>m6K*TTaY$LnW<+EW38VT{+;!59VQA9<)7)d4i+(*xl2YW&fXp7 z+2uSC&)GYasTG&(p`@H9{X7d$FD=U$2l&#{{{L> zvtqt;J!9j7hCln|T!NnsI@vf`6PU~*vgj+ij%#5KADPoMel_M8{m3GEMtIkBQLCjz zEe5qyB!PDx=% z(ypqvWV|v9;EB4w#u*Pf_v`h|>L$VYzlwq#)#FUquEs5%sBSx?_Le;6s-BKXz8C>Q zoM$1#`G3YF?$^PbPWY)OFj+YSFZ7%bc1-wTaws6MvIBr&i5iX4I}RSLBs>am#$TXU z+D&kl5`H*T<^VIcN(eu0RYi<0Iyh(bL*)8TIN5FWPQ@hx+-B6moUivcwAqJ)ek2b#Ne|6xK?93o}ts2R=YhKHN zp@@xsj_YY#M4c&e(i|22H%Sn;jD%ZlhNZ0kpga^`AP%af@`7r|XU_tA_l6n$ZlvMI zmt%5_LXW`V#ML~BoBpSM2if~F*WcXZ|2ppRH+B5?)X}0vPlK|`NlIF7<>zie=ey1` zuA0V0J1eT3vZ*_LANq<1ZlD^u*wtyvaQ98i7gD4-%`!f*I|ltTgY)!D*3j7fox#0( zjnW!afJX68yi%y`b$;D{{gFW`Ppi#XErFr`$$EnwHAxYbm&c*XrPVbyom3Xv$r&ts zWR=nLuTkdshhONcFj2hWCj*n%V`@y})o#6qxGY=)IS+;W(&1)TCS_v;6 zd64_aBEo~0Nif6J!?Wy{X6!QU!tQeAG+!&N5RfEReZ|AXNf3;cX{3kG_kq{l&ft9T zqdVYJd0w2Paa{DX$FXAE#bZTHerl^?NZl^N)09PHTV?gLrht2xm}ML~A`|A>639+& z?Iu661oyL`d9|5kC04Npvilaj*RhIzS#yQ=p3=zun(G$rFV2NBC9v!5DkxmunW=?c zcJZ@YI)S#1N589`l}0rdzZa5Is7>%4ymY=Tw5+wZ&-Pso8V{0~) z0b&N zS)?sjIArWuL^X_7JXX|ak#k1=!my#-@Wi>SseNuaJia+w4PAZ_MdVEF#O>4gd=duG zc^mz(kDo`_C$<&C5J!U+rBj|r^~}(AGYQv6K}NY#>2;lSWPUE)G2cUS;|4gbveB)j z;XOr5_FW<_)9^Vy6}x#1Mp0m)=Iis*ySk0{=Q%8e3B(!0&0whFxI3n{y)B_tFYIvN zgrp3iO+He4?+#W8xilEC!T{8)`B#yL+jX3L%@ELn<0BUe?yA_Gd`i3hSv*R9oc(?q zluczO4**@i4z1XMX07Um3#bOV0P#$`>reYQPJu7Yg>@D44^$trf7qD20lmaGxQ?@{ zs$wn+AJT_WZ_ejjIOT^PjMB}^F0;9>rGS&Y3w@l9EfIZ9@9gVkiqC{*x%t^|1S_jJ zR@+p(ksm^Rp3?6>A_Pto4_5E~1HksbmRwOjVZY&>z-i}Aga?V587Xxr+QF)3kF`9bGB(mJ*oT`N^S1r~HFa`wn=UW7rdPhw_V!y( z9+q;h;J<4;#mN`TU~BrZ z+Ws!(KE}q0j^Bp#{1qH4)s|}k?hAj{boGVk|W6yN0eY{ zlEID!YU}d7b7fX2%U;)n9}nCz;ndm65|u7vWhkiMSq0V0Cr2e`aM&avHHuqWa ze&Fdg9rOh5;|VJk3dF+w@~X3oNUEayn`$111Whoa|n{H{?Y;id{42d99IkPt4&hSFR zC&KwA{t2ZQ2^!2r?!B4aOf`1iZXw=V{@XmxyO`uElKf6C+k?`aTEGfjB19IhWUH z&FYkF>4C}~Fo`mfjJI#;%4h`wG`|yXttC*Uoky!1(jyrl zR)v@ED8EsTw$X0L@{i@wLq2n&v39MV3%`BLpY&X9qU>G=VlQ?1(aiHxa=1LU(Ja~R z_=(bIvRTwgAz|Aq$phsR+PnPRjk(SReU;Ck9BzYpnoEJP<=jxHvKE(CoHI+yBGJR zV&^|<0am`ass=@V&KX^lJW-P8sSE3jo`4OEk~Bp+$Vt|sD~8>eao$_W2(VdgW3Fv( zhR4>Fz_Q;C&m1r}BpvX&+Nj4on<=)j16NBiluT%T~y63nWt@>|?V zd?j@%rZZy?M78JBuCy55C1c}Uf5_%al2k&mOR~;)9vn5Z6%cZwTl9`OfH!XD!b`Tf zh3_e%eXL9gLT}0z3}jJY*}p3W=B#j2$|AAHUzEx`kR1)+Fk%^0enr!@n>fA@$L*EB zDQ~&@tnsFv@uy?1avL#88nva#>9@{;1KRPzY}O6MxIL}xlzsz^xSyl=PI&t{Y7ZFqXIK6&~;JsMQM zjPHb*5JAac{yk%{pZEVyiJY|tkg~7`DGNVB%7TmPccK4(JZ14WZTR=Jfl%J@e?Z3R z@9q1)aQkL4ObAXhY5s-MiJ!;E$YSNB6^%EmDw@18orHAF@#NHRp9w@jANB$>@k7w| z{hg;W7eKL-xc$J9cfY5-K;rkAaw+w)G?^=Y*;5awu6g(#Qi_*k)nro~iI@E4cIog~P}qt|X(gnaF0$nP5N8a8slyqCplFGJbfj^N{D zulz1w5hIS0gi{qA%e9LS6wRB&{RAmelX*>A2RRo%F&s)$ln*z)1^Z6xkb6;Kp|Jbs zat{-4=vM}2yorOD>vuwuP}jEuJ2`|{z3jD&@ty#&YAu&}b5FIc6K-^i!XfYCshslB za@;%)SLi*_Q#BL1!<}fhTl2uVU)zXVZ2V7#*)ydnH=U<89VTx3-E<)8sd*r+F>H=)=0<(YzRt?QLuEW$^if`%rPEnj9{c)_e3`+J>cvLaGO0;d8TDzD&f8fj)2z%f?zP#}H2RZNnz3?@!4nW~JvMWQ}=k@!w@a-eE5p7GaP^n`gpf<$B zx&Dr+X`IOorOZQ{y$^nyOafT*Wykeyr2Vy>mG-FoxAEyEY;)hBvO_l7Q*#a{HQM5& zyD(x}wHvAo4Ni2ORGDL+ps1|R!H&kc(Xpg~=s~y0mNcWlZ(WATDqEX|$6#`0yC!}) zmDQfo(;%nFBG@~nuag09u$OKrzc>F(c?`c94jI|w5>h7tNsC$OgaiD0%~UCl(>pGg zw5RBEf1IvKyHKDRY3&Nky48W^%M@nH-nJsrC=X=S@CS_UbDe@xeZ##{#W+g+|=k*VH8jI=BW`M(%sS}59 z8btQ468H7ET!njMGU$PNH204sP`o%+oR9iONclG(R$)D5vb!9YTRUP9#>EGXuQPjX z5|tp)s;h#AN?u(z6!UT(E0ewp2-T=@mR#MaPPy?rkm7CLyp7WMnrr!`e;muVY)6Jj zuN@O?rG=?I9z&BL3X8d-1u2R$((P{@W;jnCRrXxavqF)olQ|dOa;2mG^bOI`e!S%& z`{kOSX3d)}7j$T9LP!wyv$291u{gH?FYF_dCVVsJ(>93oYr!Iwnqz{krM-KF(pTd+ z*=M>dBO$VeMa_ql;3++r!Xj}|qF_1_3=P$o3SxCZXuL6h>0Q*B7^_Iu2vQsIu zI!cmS%+XyjeNC8~ypUFrWV5nPW~-{Pql1S9LsxacX74Z|hPqbVkE@8wRP_G z<8&geF)xKaG7ux)4yUsoEJd0#A=#^3%Eo4-Xd>PvsgsQily_*(X_A0Np4#ls*5Iq9 zsTx$Jf*liS$;Z{qozu=8eB6TGp8IOK662U7I-rxR=Ft(d_|tf^#-%!)1W1i&`oGc( zLOwq(+Ua9>8CGf$VEvr)*2egAw+Lkmx2imC0?D$gm|GxH4oh!PsH^I>$jaHBlKz%x zRAJzD%kI6L3v12FM)@aWqZC1biiqFlk}C35uCJ|)UC@v;|N9O%|^4e|6a zP?@zD<7)yc3+A6*1QlZhCLQ+{1g07YyUWA!6KpVg(?x02j-CqY+$~9ki;~8kok>kg zugc$4_WC?)crB>T*I={z=;+4hmYJ|NbaL?*Uaxyv0c~~a0?oO#FgET96W9w?S?-o2 zzME##VL+y3`t|}j$J6OShF~?dtTC$dyMw=~6VfjIHPFuIEgx8ltG^?1P#IFgW;MoY zDcaRh=G0OvpvQ3w6mIQ|6RN5HtWW}YKkgyOCtl+j7E+0GVi4$VBt~3e&k#D?G%i9_ zloXq_7qDZmjOQ`*R@!sTtq#Yn)SRdP$l~*WV3J{DZ30H$^?^70hiCY^yzKw*^0L3d{{Mwwzu>g2&1O9T*n+yf zd!QPwVq$3CR=D2-rQi9TV&YRGbF_Ah;%GgA1&rd$wxW_{N2SNGdolS*jGiOV2M^bm z+%8yzIvwsB6}itBNj-~Wj8R_lqH(-K0G?q3f1dni%M<}NObj(BJ^9k zM}!y#Oua9A&7xNuk0OmKTRa^ShxlmDw8qfpKxAd|EH7n2WOaM;4x3ZlRntBymnOIP zwON7+%Lb;lMN=_;0u`9-v^-KhSLW7Gve{{pBf1atHD;zZJ1EfezM`uJ+Rb5v(n^tP z2hSn%5{jGEJR?5Qe^evh`|dTK>yPf$)w_kl<| zAAmwY5P_K7UK7d{?Y0aY-eD{<*Uzojgvg}7M4Oi+WGxeMkG-*|n>m~a*$hI|APa4a!gzZMHp*ufK-_~~6D zEw#)~HIVBVsYGa>f!c*_4~K^mLphDcLZDSXK7rz7Q7${Gs%0YQoZ!afyF6^ zQDs`fL357orR(lW&9D?6sC^~+Ua_Y(w2g#%xtA@kC0%ee#+#MJnB@^CSP+EAJ!SDq zPUOtpa6~!~E9*Aj32N{KZ)gq5`L$U$%yn{_^=WUQy8}h^9XoJmyIz5S|H??fmZIpR z`(@5UHT?sa5*6~S6ODm2Bx+)IIXmSSo!M06{dtV*W4JCnTb8B;x&ewjm$reH=Fq(C*XI${U{f(Etwlbz z-v2BrZEGr#B^gRf$E_b`hu2EOTG$K_DpmAR&O%)#30UTCWduOEO?={{f>-Eocc$0`@`Z$ zdltJJASE`|^SQuN0X8u=qm=%^N28)a-$Yd?Upu^T4x^IWO1r_IbU{v6Wdtf%l$(nD zs6ff-P=o4RW%lK$%yHfBn_{7QnyZkz%4vrSc@>`xAohmW_JaVowS+(34_BiCkc?9d+3DI#lMoM|jI!?F|TBYn+uG95| z7y*|M&rnctdqyj3UUgoS0|YanT-n z$QCDmp|Yf#vXTb8%B4Pw6M5YlahyWfmO>K5MCklh4a6wcvg|4-7(0uuJhZ}>grO%4 zVLya+3b!^_c8*$C+#^E{s3(5gG(m|S%RNWuUR<)ueeB!nH>Qave%m(XCQ)>?54xS( z`nQP@Vq1D4YEdoW-hFweTVvRA;fD!JMqn;sV8H|4ykEGv6=S!)H*l9**qH{2$v4uw zL^iB%|G^hp4zsePkCtV@SEAVq>$cmf3qTojlv-4_?0LFNIFL43dRjfGdeb@P(tgDy zS90JpP~65jSjYyF_=5Kb4=thcG^ABSNLQ3>__o&vlPGOpwNjteyNaB5_jWZZ5IyGX znoUeYhcv})$CEjwe^Y%l9VRT2ukAd3*ZJI~F4@Y$+7f#gZIv>3!ETN%@xYDGRw`+SILa2N_@hdw@8_O^3F%oG=|#5rM1U%I(yl$c z|EqfulW-!lPyCIxzb+0*8n&J1&i5XUF5a$#8*!QK={l`fmG`2J*OCXlqT#h|vY=)m zyU4cvWj~&C)IPdD&L~EFNWfWkGuSd7)Bvy63jSULXwC{y_PvKk`D*nHm&%Qn^4Rg) z3r4oW8^QyHTvu?W@4pqt$DUw6Yn*HZlRki`yxvPlmWlKRhx1`SP z#5?w9j*dy0W_qlbQ0HJ^-5$WPS-hKSVM&+4-L0#W9i4%l)8x=gVxbAIwAm_m^=?<( zv&03(M(!khZUsC1#QUA+CrF~9THj%W>JuPr#rRo&Ku;}J6Vw;z9O)DkM2!Q`Nx1&{ z6aFBRP(479cuZ^N8rJmkvSQA(HXo63nz!Bw`Js@Y&>M*Sa-?FvtfA9@@jPnA+1by| znbmG{T53SUKXt$W_JU#pgfk`-wTB;d+x%vKEl};EEKz~)&=i&CNKK6_U73QVuVIt(&4IE0VRsEh<_{xynBrP-<6=J zC4@LisNdm(i-1p=DCJ{7S3>m5@WVuR4=5JsoqrTb{uZ>JyzdI@Z~&boWp3vV*(T_J zNmPFJ{8}0nkTO}i9ID?!jCkIsA5Lx!?Bklxo6|)6;MM%@>8otSh>pdi>jy0~R^W{` zU1!dom<4S>BP45VqWrA`5AX9G>K5{V(-8`jl_N^G(X4OZV6!4}~MptE8UKD{wlF&|!3$MJ8W4ZgI5Z)nULP1#cu(zjONU zDgRIGG8ESj3q|8L+r&TIeMC(D_+1c0Hhy^B>}K44Q`Ww%D4iyf9CO!}+U=uia6@|f zoo3<>IRd{6?B}jbw*hCcqpfqt;aE?wlut$qHhj9@+c2EC#F`S&j(en+Ek{J$YzXMR z1I8zxw{>9t{>4KxItq8|l$Z3wM43@1I#=EwT4XRIS2Iymgl9bm{bDzOCEOTe^%f?e zfF$Ju!#pDd{l=dey4oQt>R7k8G4YTmhFrq;M!CTao-S1&Aw^*?85_ps9_^+-v?n$q zv2xrGGDY$#bgeITs6|1S@oek+Zgw5|YwExdb9s2O)#5l`C1e~%Fk+GvpSh3FE@iT? zM3-9Wg)(G-#a!RVJsrv-3W;0SiBEubEe5-WJI{emMv|g^_|y`W-0pIt>cbjz?M}mt z!e&LmnCFPF?p^94?y7~rO0y4?hSm?g zx@{focUuJp+*W5`xTxO*mBll434=G^SgkTO0?)`{6&oCbh3}q#=TXS{uKa}l)D>m2 zsv3a5t15t0xd(Lo(Nl8<+DIeGc*=9?g&u7ShZ_*J7fZ-;zC=1Eu>C9|J^_0561_sg z`89vzH}d>Ygmpq#MvRO=^_)&VsJPKHuzsP;2{^;EvWM3hSaku1X*_Y(9~@eDUq-cq z?f69Lw>NJ_mzf&iotO;RQsExq@+oat9LN z(z*$My~y+r3FDRiw{EnU>trQ3?JOB zLz*|qwfUsQYP+Q9<%PG`pT+wG1TWlSU<(2tC#;Xa@9RUJ&AhGdaAGP7zplgd(-?LZRA_ZK}V0@-v8$VCHA?i=a!Rz3RnpT)Wlq z$FIy(S~5;|EiABMu8k3wy7L}$eZwFaT|!zEQQ7E&o5$~^?k(7|$TH-Y zjr(L6s#6ysD;zpLm^S|KrWy^{S)2$H^-|XNDCu8Gc{rygRM7Da)mUZ5(;CAn0td=9 z@#{3=eJ|D}NHl2drY?p35z=VrkjoS!zcEy>J(s=tt*>3&0xnteOTEb%v4gG)Y|s&i zJ_64IZMgx5IfmvdKPIC@MYwnZ79GrtLWgGLW~412n6R8WpH#1F+@}QOi+gI^qai z4jc=)?YB4f2O5`K&!3req5~N1WOus?o&3cSZ@%gZqN;_WoBD3;m!e>$dqAU(00y9z zdiMYa6fwS(a5CKY>CRP)%o}4cq|i*->@?LEGz&1uZxe5yY1ree+T)Z|z^B45_FO!O z7&nMkXFBOpach~4ngJ`%3OW^bLczN5yj$tJY%T_u-y9VeD*k?9Vy#z`S0zXZG*mjC zi@tLJTv}CseC180PTlUyyuADN`e?e>OfszFox8`zhk9`6Ic++UPIf5lEO0TMcOu#X z9&~H{R@45@LJZ(_yHlbEUN~}-25fVim4gl|{LT-CRO}TmaGIiE75_5Hr!3e#bf8)2 zP~G05%S1UUhAPpq==#bf!8j$xeP=wm=i9ByaunR+tXin;! z1J%yB?fFdOykT;obM%T;ZY`WJM)qg_vU6tymy1*Pa`Yehf2K0k3LV0pWKbl2a6)SO zrDa2G;4TW19b3F zVhx3@pZlJh-MRc!Sx^7XG+S`kQ=DoZ?Pm?)?-i!Fgh&-spea z2CkAr0sEP5;9`~q`CFdl4DLNX4zC|@i|w^vwIN9wMt3ipUpuNiKy%o0Pc1-?@AThQ z+}c?zGkYoHA;3=*%~+0UW^csppt&dCYhn^x0|0(719+uQP2kLanX9G9dDznE@>k7( z3#0D6>P_2b!sa{)CUMF-&cBwpL=$%(~ZmIp6pL&cEKNP>W8L?SCBR>(!pg~RmUm!Pl0fY;2 zyQe4ix3=DnY8Q>ixg5WTu3qhcE)=$emsL**XZT-7F%ExDyq zjX0H=j^)$_@Iy4bDPH&XF;8dx)l+d#>do-mgQx4c zd}h;C)7HVNZ3E-jmcMiAVAYu5EnL1iNr|G`>%CmJt{frm|v>z!iXjI2{x;`)EPJhx|9kBte8cruuNq>Y2Ka*5~IGLW~d54_nmc z=%juGEib|9*r|>Z{mH!ujyO#N4n}#}Z^4qAis0ND!9ik{823WSL`X7&WEya#269j6 z@u&{q-Q!L6D9?38fl-TkjwKP+8+ejQUe8IqLEU^_m7jRAEt-hIh3Ta%%-IWo9d3o~ z?$~fTzaPhf$mv_br3vk6*KZuyrU&`=6#1%s6G=o{4;;0Be3ioSQ}@-05bj-bY*&Or z-v{qk)bRJ9^;CT^$NM-T9Ks{(gGs2s-T?Trqx)Vqr2Ytzi&rCiL*GYj0@!N@@r)Xr zQ|i}muk7z;!6zbD*d)74wb-ph31P>o#nPLyNvjkWHO!0KB?LW%aA2#)%PU^d!_N`E zvydhI$9FOn_kJy-xbadPoM7knucS6yg;x5EvHyC1 zZ7hO6ZPn*0BtT6f9Dx-!P$VXQ3+^^}kK|$6C&2I+;uz`amrzU-%Z`MNnvcfZCAd>5 z;#@T*+J!oT%f~KXee9ntE1jfv$iSwKIa`k{E?HLcbhW zOFOLu0e4|Ygq-7lvVVvlUoi(BrD?`vd_4~qh7HIeJi|ipmJPr+e}n#fqDC87z(Y24zp4}#uH~|l*S}1B0u>j#mNI`Q7to0i3scXJ( zFCUzo_zM6IV z`z!6xq4KPsU}R4y7HW5vCMr7pou$_MwADP{0PZ#$38u*8$#PKouuic6=-$M1q6_Uz zlADIUOU?Qm`_MIFpKIow@|)CcLdCbF_SSlR?FQc8fS7?bMUHA>o%xpvF8JEyUW14W(=h@13SIRyNrnql-mUcO%B}eQV-2fNAR^P;A;#v zEC*85It2#^gA?KG&U{>Ozjg;xZDjq`(_M{3`^+dKR)LKG3%PX9dk}2_@n&o7#=CtMWZpIRA8qkX?_nr%NtHx1a?^AYL5 z8);>QMuEIA(Q{Lj z1)(cnc_Z3Hs)WF=Xe@m#^mvrgKm|xCj|A_5`|W0W$Sx~CZ_r6;o9r<#YuY+XOwLF| zfP;nN*l5Y|YoP!4cdM8chL@jq2N;eq^%%l)#L3rT#pWhxg*V%sWNBRc)!PWrY_W*W z56}qzm|*jd;w=xR#!9|WhsRC8$+*b%z<#nCx1S}ae@JAT$PY2~94y`d!=t1Q05;FLI}$MG=P?e^vhK#B5Q$9`Mlnw9Ck)rljpfx!h5rMQ~OY z`J}@Syz!IzemyfzTIrv0%O&~#!j1)>NiE%V62RKw#98p=i=`vx|7;vQ(Ao5ea6pme zjlHK{)QH~~KN}aMG^#J0_pO-;fkCzKYCSmtbQDk=;}N*8I>SSWLC}hr94S=e^tgLj zhd)edm1NSg2_ugHK>F;hB&otJ1_>3SR{-|BlGNHF*iskAJ`4az$%SHPsmf)@sch`E zxS05)){F%f6Y9;t6h#1fhxT0O4V%xe zQ;-9vQscvgcl36(^;KiAM!))+5~M5ei1C~#ho`<heCBXu>yQS*tYCW6l z;_u)Smi16cg(MFQmcad%0mW9V{y`#YH!GwbrQ`;X-1J({ErMHxXv4KNq|YY7#=ZCY zHD6tLhu!TU?6c|0(*!FSL2HKAn?Jx|G{uh2D6mZ8Yr#5v&-Us+F{=!wL6+$JjbP(( zG2qxt$Ena7yh)>AI2Wo{J;^k|j>KM-Y03&!3Lyzt4&e^PrfdV7;R4c1$-i#t1%RfT zYBy`pG*rw&dkEr^XNqpSkf1myj0SbgA4&1sKz9hZ)qA*cA$Ui0a-V`Tb0N_)Hy+u6>?t7U@ zgpdk~8NnU$Yb5-p#ZxI*Ox$nlTSi|hN{(otSR>#l!DI8Zv< z?!8&HiTY!7)X1$4SVNoXM$y8ICGZg7;wOok#_4?}`8xUIwVI*Nkw9SZ(+7dU&rIS` zp1_;yM1a8hWBW1{m}&uki3r>&3v}q|`yRHhXkIPtf4gr$m*ADbj-%N7xg`UX$nAl$ zJBe?6$gPBzpQY}e@mqP8N==BNn9i2~ANPRs)w>isM|dtxnFz!F0%P3-}cjw>1-y0LbxUuq?)ah*v9r;~}i;G`Sq+3xfqv zf@pydObzU2&h8%fR;yYAz+#B*3XRiB=1@363Y#E^P*Q-oHVixDM@Jrke*w;D3-1 zY1TJ?8_VkZ*6T6*&j&!m2P$aT-o}Wi-)bUKNaF4)Kt993iwy7G<|J6#MXj`FYLDgb zjMlS%e*W|X7HC1t3OG!xFPZ$uJihSyA4I`9RU!NF%w0KcZ2wQgrpv7~DR*~g6zK@j z19Lx{5DMk*oA&_a3S3$^7jL-lt!@)F%HLafGI_OR#0n&Wwx$ysTNE}5m)G+H<#T|@ zdXNeF^NQTrr%JMfk(b|WcSWQyluyMQH2_(U0VtbE%UOCgSu@iv4a5&Xj?-=arO)9P zLJq%xu)07`(4K~XLemIX3FiP1I;aJ7Ps7K-2K!dwZT9sm3i3}1gdq{XeiI5lu|8nb zsHV8x4IMDB4I_AddC5SAbB8zP^zGl{6wSaod)zXXQ8KUn-1Bmvg?fcNS4&d`@%QFI z{3Ry-ruMicnw@391U7bW<}QHykCW>~129qa_+vejEcoy#MHWS{$6)2Ze^i6>O#k=_LB;&h9k1V1t@!BXvb&KMG+D^y4 z-4)S5m|OwC`!P5Y6CiNC1N)Q^+4+^2e66yc(2FonJPr8QBoVhSicz^VnrjT?VkQ*v ztBQ?;y?*neyc%2{>2#T;9j;UizPqsvirZ&?@)3OmIP0K*>Q6mpmY?uSPb45w76eL1$UqH& z!!jcK^)?`2Ahoy1Rzt-AA>5x>N?~%5jHn$L#>hN6KVUt38BXU1@dJE;GCy!{{=Yr~ zRBz64fbAm)yF5YT;-%ut3zBvq2?vt$888dr%Rr)AB0XwaDGdP*o9`Z|0d#x7c$gzi z2kKK1DCa14OngJJ_8j61JtS_r^s_%+Jx;|tRC(4ba_MDC6U$t&6Fwk^R`L?;BkRuEwZCT z1_0$5l&W_V`v9!&ls^VQFZw`!22yo~; zWA|e`k;k$=7z1!ZJaqoUF5hG{Aw{UAByn$m9>TK$byJ26 zjkNO`0=idGa|_PBsa(a6sERDFjtx;!6fKr)01=szkP^fGAtV2XbH)Oy3_(M-(4gUc zKPhnQV-!W~v}JAXn_x%rr9$V9%W+PcX8&#fz$>Boqh#^MS+Rns>Z8Y0`G1p_v*y;Kco?nD+5a2H`YzHn==h0gQvRv3=WsYFl$ zw&a}DY2$E1h`5s8a6U=wshX87kmB zQ*eWUdwO0ovdEJJ8L*&V*Qf;cGy}+mufb`*O=p;BrE+|`nwTA>e-BQ)e4 zyHA~uu?^!#H56~-9xB2%!VvcdJB&{!H3w}CX;a0Df~#Ua`I>y1?Vf@MFA(ap#|y_B z=zXXB-I%Gq^#`$YhXfR%V_(FZG1_(3dfc9kwoLGdZ=q$bPVD|Qo&>rMO_3ysjU*0L z2os=`FEl;?rAUZGh@GbQk6Hj?gwROom2Ob4tc!f&MDy;?itNZajQ`QH%GZX@Zy81P z#|5p)o#X?6!I1m9TzE%b*AE?LvpTqorLbq1?H&qEXzx2lI$9LZsvleFd^=gf*S=X^ zu1^SrA0MHAAAU-eLl&UL_h||-*v2yBb2-J|LYHgIIw@w5g+F<|Orff#P<1LKEv%7d zJ8vi^N+V|011U4vtWsasn0L{$J4pK^S~m;}YO=bMO+Lu6KSH=Z(+5|_0*>|sH*Ps% zIR;kE0vVP?b>7-OWI@Q%J7)Cze)5jtCg0 z;KyoVwq<6vcM4DJJgaph-JYH&H2BrI_^(xP6dTJ29M+$g%YsWdANzWJAe^Ih{r`p4 zW;9_6kytErcievWQTl_l{=xEMjEv|@`jooe^5uqF^;AL+Ck|$tEz7Bg{1}aD0{6<| zM|SU>EvY=Iy=!vP%5pjS)FmACrwhhoIu(AJWgc(9mA`^>AD23WS|w0i%vK4tgghvB zBM>AxVr1q%6adgBx)*d6qGWy-V1nCIm!tr)02!sk?um(DN9ndX-}n74Uz=&-Cq+I_ zO>0bH`j-u8ip1POgWlndC#)AVt6X*Q0!}BbP%mB2dVmWeN143AwI?vpM_@#A+-l^W z{dZ+us}ToqZ%oRw4Dz?2vh;lqg$JOOpdc#IdL*8&atva`#X`pCYc|%!Pui}Amj*Qv zUxFtC^J@Z~`H)XI7eCrGlSqGkLyjvF?tT)&m`#e;UH1){$D*b>veOx2ERm^h<6l4Q@$TVNczFl z`#)9AL%m%}YAxCI+%lbN7J|V2KF&h@8g;}7&*v)&S3w*K1YgjIIUNUBUE&SiKII@# zI1%g^?_~657F=FDpV4$Iw@a5SA6H9V>6(DLq{qRXw`7#dX`g@sEmj07ChG&Unz_))MBqi%++A}Am=HzS2aO-> z?Q#isiA?%dkF3=sum@&kw^+w<+8z67<330@uuJd=?f|I;kixeBnydxL;yL|$G*P(M ziT;AnRk7Kfzu?!bh$nPI6Ye{Hc_DA;3qKco;H1Xq{^S@!L!c$NnA%;#*jj#Pz@TZT zM1=$a*Y!nV`s;@cHFy0T%!NZdK>I9uAWXSbo>%SoHNYO! z-!aSqrQ;@WXKkgzx7{x>(q7D972)=^UyftZyEJHG-A(&NENOf%!Mmxtnfdx1kK z-+>A{;qS>5OUa#q<%-vJMSog2oag_56#hvL@{jb&2j-{V0NSC8gsRs!A7rKjQq*K; zA1wt0*7#e0Bf3tDi;{k1v&0HH)Biph|F3@G;=%sX0k@!=2#olJsii~x{?L~JOVBDU zyzGJfSwC3-L9*wb!X3yJWRQCyIiK)X3{b(ZS6?_hra+7NuaM>d@G=q7fWEx&;_Vw^ z(S?uy$9Kr^pSb+LC&=C~I`g(-$d-y&{MW}9P~)sPJW;q!j83|M7=`J7WfcGAD=Ge~ zT{~ER-S80Ut5Vxz8E!sLb-sJ}S^o!e_$R(l^O9d0;Nu~y*Z;)(pHllhV7NZ`U+$eG z^yhBQ7riFNr}Mnu4{-ONMDM@D(USl6E06zINaT=TZJ4?x`SrCI)q~AesT)Q|1vsLm zI#A^ABSQyN&wv#>=M%m*oS8gdg)n}blv2W9 zkKq4?tbn2q3AVdF>zzkF=8s{TfQMY5L+ z^c0NJ&4IZDf~Pc0@tEUtqkUPnIkuQuPG-uJog!qcS>Qg{5uN9<U7_m)lmhH7@DUvO~=T$OO5 z*Z2fO1EmTH=u4gLm`a^fZsXzV!as_crD;fgeG|~6`aEV?w+Wg<;Spzq{`-&EAd%dq zhl#e76Eq@PotGz0)R4eRkmd@Zg01VGes3Z5l{y9Qzorin2NCQxx>apZ>tyiqD+6u#?PU>cPS4(b}cFIJvGt_8>MHaTqa zirjyHlm7?oqZD&}flMhl(`BAU(`(#AlMcAcbVV@W__4!j$$G?S z<}39I4vX^^aynJjU(7s+2hWT20y=tu|-z~D5ubmx^;^+A2~tAYG){G5HZ1pC(8 z9xSCE1t{T-4EfUb-iO_}FXsB*I8nd$h)$_gkQsPsF8#6ind)Q#U3-C|VKLpSK}GZG zjYt<8ZFWN;D~;Cibk2PHNEV}#@$r}!_{E6GPN(RwR0+#&V9qUV`akeX}QzB#R zzk;xX*_G~VcVWuPY;vxkB%W5>z27TX2mDYS`09BgaiKsQbfy%2Bx3>Nr%bye16)5< z@SL2!_2HW)v>rLG;;-n`QusrVFl<*&K1@YOD>R{P_D4x^L5dRp$<3{eskoKA>lWL6 z5@|}d1XxQ#q z6cX((Y)>R%OJ1`RV06vZhqz74q~$xW*3HHqE9`8%YvO+XE#3jgac`*`#ajHO#nZ#} zPES)xb>Ftp-JLlb&&3mKd8Xv5wN4z)n{q;kMT<|tE&UO9`hz1AjvPOodUyRrb#`t7 z-KbvVzRfjyJrZt?_$?KcfHX(>wM?0F_+>>LMFD9g{Ubv95^rNfi&Z{zl$Cugq0}ed zSZk#0KvgBj>e=6YX0UYguJ-KWs_erPIW==K7$^L1pV#l4{ct7deO`C(!N(TA2Z8Uk zW5qa^Y(w_LTfuhf{GiOoDOzWxfucgwq#Ob8c$o4)k@@I#7 zaO)ly%=7iz6pFg819$br;Km*!_G;E!^UG%*#XN?F3^Ji};Zfr)$Do?e*H zz`Xfv2%B5&5tzVs!1Pmnr525!JXMhxZ0+?ug}ZCg{7as9M$FRprg!_WK3az#YWZlQ z_9t%d`GvJsJM#yqIa1MqmKYn^-r=!f&4=6V&GJ{n8ZMNqNZf`aWE5Q3i;*4v@_eb3 zd#_lGAu~G}n;U`kt|Rr-)x3Qjrcr-FjFngKOlo4@Zd_WLW=(go;@?ji>{m3mr<)bbQMR=jRqBxx z>N3pP(8?RL8uI7h?-594D%enAsa#8S*rYZdnc8}L@VIrjS-od=^nCI8x4Awv(d8;< z56y9OM#}YE@Oww>W1|{*zb2I_eP@ZB`sASMz*5TL;a+ijBJ*h6_o6_$T*n%e<<7V{ zN1S^DCc3BWrqgu){X8X4D~GE;G%fj~lxr2XcW91Hb)`Snq1B9S4KG~RG!>q&Tbs#t z3eilBv5YJ0;B8A+!2IYwEUjra#*7_QtIBtp>L#X=F?#W=hHR+hr+mND>D^OeEV=Rh z#?cG9j8yTQWlW{#l@n%(#Y&av`@1|VCB9Qh_Q-R@%JrtS=ktfho}thk7*=9&X?Wl| z*SFn~dl|oPn19!D!1G8Cb1C;!O2_4iZGDK7ZimOo-r$75oF!ZDN2CU;wwYu)dr6@> zcC$zC^wego7=3=BI(;4UwuYjBD>*gR<@PmFF~jZs$z@@x?3!wP?%Kp?wfb4X56bll z)kLq})KE~_S|nJ~bOnS7re#x^*cRFx)aBQ2e8=Rz)tewV1JoU6*II;CGE zvm=_R7QN7KpLMxl=7KWyO|u$84X=HlL*@wS?T+cssa|hRr~_@ihE{Q%M6KO+U^8-@d({{T%8gqc3*wosF#X z#|-K2GRv#~uO#S)Mu>koO!)V=_#Z`G|6b02FX#UuK>z>Sv?MEmA}Tjl*6Co zdmKQfpfiVtbazU_7RDi`rNHj*zVa(;bM}-M=fAttIRZS;-TNX+dQ4FTY91a^hbDaB z?#zu|SurO6#L3^nVNB+XvE2y34o<;;f23$qn7Z%_6PaWK;n6>FgOCEyP5AGR0?;?c z(wf&Ck8F1?sn#+XuqO-Hl48p3e;n0+?5eQp_mD-ql;7qrxU1l{;dR!Po~Wsnmhaix zqoM--xl8W#>v!@T54@P}lxa(wA8cEG9xE7Z@aB#6c=FBq{iEH;!mXucdZ&<|-Aip# zGh-C3-^UW#Grnu`2&D~X={L^z>h`gWTB=E5KgHc;?b%JNA1derT$=wvwe#+@aEDMH z>zSqD>D$4Mu`&?KXjBi&3#esv@b2FaVvW0=f3mMKS9;2);lL>|JjL`S?)9DChkVOe zR=}56Omug(Xm{NTrtzB6XV*Ri&2vtD30{bqGDiTYbh6`K-!$!ZqH4<{uF^ibK3VTN zIq8cg{5exrg4o)qzV?skGj)M=%Vk`~*LZatXaK1i*(**+ZSHjFC9iJ@p3IN1PRny- zEO1+REpyYn=)y@x8}Ch03T>L_TZ2j8h)P9%&IdGG#`;|RIwiy^rwhsSpg8GaVVY`o z+5X1U%!vNHMr$1!1%z>Ie=0EDk?+p4c{{%GmF59|U68j#Ebp_y^2+M$cO)sFxJZYEReJ9+ z`f@aKJQgW1`W)E^$qG%$iqGbcn6^UIgSN`|uhKa_PtoX)HHiM0gQV~>!y$%~$z3Y) zHoq*AL#nT9#Ig69xlLcuaetP#BC(dt7kf@*M>oAteJCfmRY~PVAAbAcyUU+FzBr%w z>Yh)o&oq=5e9V|*cj4B8=Qmf8#FO(d1N$N;NcHJc;>RC`rxfR# zce00UMx~tZ>T7HjTa;pR$m=n@M3U@+8(7B^iGZ4?Wjwwhs zmcuwmk9J8wd1m;qgIynH?Rw{)J&s6)D$B=(6T6b46xz0nnC%{Y?Xs_$@DjtpB(BoL zQKrwl7>-g4H#=9>OX=;Qacqq9Q>JIubS{Crp*_^y=tOiVW+=~Fa<)&tccPk{Xyz3- zP+D*-EGzROzJ1D*ULR9nNL*kOD<}BbW6}`Qv2v?yS9q*FluV!JAV0S+6TIl|VOBaO zSHU_XP-lAAnS1~JYxB}^)9fZY{vMkXr_=V-CiJQ98K~&HEQq3 z_|?eSrg9q}M)eT}CCvpVzHl8)x;$w4wX|8wc1C%$ynok)_4f-^)oo-e`t~CxUwNGi zP5YW}*=Y-90RhhsYQ=Q6vVwiGStE4+q;gI_$5`<6>`P6zlx2ClsexzHBO0lGb*pPm zrB(%Rq^5rzqx+e8U}GVthHd39-Tp4ZDe899F8f1ZSF}Kk)dTQ<7`~&YXB`<0M?Sn9 zod_vQZucQq7@MgoosC!i{!O~89GmYuZ+%Jk5>hU$I;>p!jlOi7cxJp=zm(%PM-itt zM?#Ank^ez2XD$EI5z9*jyAE;n-@1vq^WCIhw8k!~)|%b=ervBzIG@#XS3OHMeOuu4 z^xSsej=4L@o+_)EB1@@-QW@EzPYK7E?Cyt!R~3XyH>_80JWnc8->5PQvEIZ#(Y6=x z;NzTIqtPb>BTR)H5>`J#2A08iFd3*#%(yIvWJ~gBUwSyuMgy$ z8w=A{osvan`+~Xn^w=t^l#W7+KveHABbF7c>Ca>?wYX!qvePs`_U$t%HVr9uk{)`L zEY2h^F&4DPB^0wKEZ5X~rRgQpoRT2&qej{RzK3lg>A=FRRbx!Y&a1#HImu$?3Q<>O z8Y7W65dQNwSP9;B?;YSacizyoH1cyTf4lzrHK=ujn@XOWJGy{vrRP-O7J2 z=f9WpZ;kMpJJxmU_n19w4C&u~FD&bHggic=LUZgw^Z;Ga*rdZ>(Z*xbd)MdzW99B{ z_Z75H1(dW;0@~=^Sjqd^Y^xUVlhq-QXu>nX<3B;I9-CJs>Eu7J{sn3=`qP2wT{+x2 zYMaehyU5HsNHJY&qP{q9Ij{OT#JXWUVzPhaoO0Hi(8X8x>I^Q~(kHWc&mxG&Z7$$s zV#BL1+i4P)R9Q;P%~MK#PAg*^dal;D%sMncSLAw^>Cdgy!F_l{(5j z#Lo3Vx8|44m|lf#uT<};dylU9nCMQ;n@DI0ocfW3oet$i;9K%KK)08NfB!9V{kShr zX_C-FPs%V}bKR1zWPCeSdV-D{T^~Va+p<-9yz<7FP>i6Vc5PI_M2}?hzR8@6 z-P(S`*wc^Od&Zi5CPNfD`m}ZIc1z1U^{pyl1!lFsYV3u#U(2mP+l+5!>x)V?(%c#T z4FVrX;xZ`c<|k^cT5j8xm?*qDpZ|u>Ers>qzLMSMQ`tzy+?Q0c74ovu&_?}Z`a+6Y zwig?FY&L7VbM||1=X4lt(Mjn6_L9`E9$|u<+DvR|VlA$$@2$zETkKTN z`yVFE3Dn(}$8A^gBU7U__NqHpQ`IqQ6@fmRb<;0$=Pq~jIfiV`HJ7m8`=;IJGXQ|A z`LF_p;K9cY`x_0XifSg(;`=Y?;mxc!tERb0YO}mNcp4EvS-)I5HWy!)U`|6Uc4XYbVIYr^gl<%M=O7@eiAv~ed!6FYT765=vsCLr|t6PaJ$X4R;R$R9-{X3 zsURU@iz~5Px4n7@pGJS4?3&s0SmhtK--jlG+Gog96ynC^4S z=?JqQ1dVa$c{=|MJZ4SO=qEp~c7}emsO=$##xFO_TBJ%NMD+giD{kN0OO=J8a#P zF2HSp;b*xw28hk<;bA#;HTEw1R~MKf!y(?Nw*zi^yGNMD&^!0}B2SHstHTFe{6#Two{wbJ)_R_k9>@cO6a z6`C`ay3_Hm(s*z5adE1@UUgvQf=<|+g)Z5Eb+F|=0N_ZZ# z=55o=2aBENpTeT|^fla4l=F#V^M_7v6-Ex|vDXf*`~&i; zuK1i>DdNuo#QXR<<}=MkELZ8*h-gPvm#rlGt(EsgO$T!pYOU{&O?k-oa`6bZr?1u( zo{e6cD7gS&gY6I-@m*p}Ci=BpcxR>1Vr9WfZ3&yC|8|*GB{7A`3jL{e?3{PHKu?Zx zUOacQWWi$axzCoHG=q~a9E(bR&kLOL zn6fS6{F*Mn6NQI)fNN*;%fc3Gn-^~7ml+idT|BRki7?7GxN9(C+hh@B>UFU@L~pZJ z?{fp$&|EzKbCFxDM(>M4vI1kq4%9}=D|0qnH6sdgjKd;olg;e!GL>2caErgy9{W5Z z_L5o*LBrPSINm7&9lY7gGKBYTp>xH?tp->=lb2s$mM8>=^3h3-$dTT1NAhuUdg`tHxoqZOjgW7 zwJP^lwhF&iziL>n3{PQgFtuKM+U~#PS$E|b1Z^k&_wJIZ=lAb@n@KK87U-X(9x?LC znliv>H#!L>ak?M?FaB^hQy6%1v|Mj0uhKE#mEwn$JkNYb@yguGu5?-@%l2kAJ4@PA zao0~$D1PoD4sp?5`tL5t21}+SaQd+ zH}97&aoi>KRNJvh*{nPE)TEXFt^D+wRrRE+)3<~?mG`*`-h#VnCC8S>iPiii`|L_K z^R_*}uQ`SjG4Yob9N4Tz+HEHD^jJHAe?q|bmc}9-^8=l(?y0ta3PDNnqXlXX76RQs~$&OiyBWmXD#>-D0Z&!z zuMQME-Mw4p&mrI$*FUTzWU0&|X0TC(FA!r~!Cg4~RBvfxRM)(T?@rn90QQdSdvlt; z5RXfR!ynte2=8RAC5t`hu=lX3u~V=--A{6$$x1%TMZsj*N~K7d^R+9xT7e_F2i48n zTN2cD(BY_W2aV2Nn*AoJYPHw3yX~2@VUVefAJ*81LWjvw&9F>O8XB!I+my{I3m>?DCudWKto5SfQxC+?wZX{ZBM8I<`;~tg(ll>f z;d8rjQ>iWK8#cf5?bkqm=x(78iO9IJ6?d(TH*DD<7h^Up;ZDFU^DZt^o!7+dl;2~1 zzu2pB?zE2NaGaG87KSWivpL&1soq6vr;3vf=OXj=i++bChxDaCDfClAXk0O|Qnw@z z>W!woYfYe4MwGEInlBZ(ZF4PqlC@nNnkBDm6XYNUy*#X;MLOUbwgB)aK8w6G$@b`W z)m_I0~$ z3i>toE@QRI9s#HYynGtn@k_kBODDdyEUd5njd{p{Vzr}A*^mSg`O+{&n?(fYsCbVD zkAaTCRNd#fc#8SbF?Aa%TgK=r_x{H!JH2utgDO+Kx?u%B*8TXC@D@IZ*4km>IH!Nb z3L_!#umm24b*-MMWIMdOdV0xqu0>g%1G<(}yZbPGs%7hp8T`xOX-WUDR>kyvZ?&IC z^;0)tZdv*Tm+p{c!>ph)kOM&Z>uk0?W zoQrRsi*L_~ZR1T%QXH~5b|kURd$B9|!!qlb;nF9h5sH(XUEKWalYKf zfuT)~A*QR==Y|!gc2jxUp+=%r*4|1|xl~xY8yIot6BKWj4>3mshgN5oiBP$Xt3ULs zRdX%7rElY8ZxP?C^BUbpFbP$Tqh5LJBx)a8Slf%-6dmOqpvehS)12{VgXGqq#}Jjr z^bbn-a&**@mo-?-maUsbj&AjlO!b7?Q0w=^^QO1|F84z!{l^UkQm1GE{yYu~9-mT^ z{TR}YWir0jr`l|m{9SiwFVU>OX`$>}w(O`Wv`{M1FD($oC2_BxHuDU}O2oQazHU!D zt?>2i`QkAA_63bX{`Tp;v1P9{t^t7IFGalB<_hN+NfxgmV+b3v|D>aKE;Lb105{K? zdyjif)r=!rz$b@q*lh6Xc?We{vzm~YS*~5$65%d^U1A$!Nh6Uoac^x6^MJz10du_` zCyt+WNasxakbDc!q5xmqv3knnPQkP%{ad;TWI+jCbCz0n*=nyD34eZ~-q~%FajIBm z$Hb~^yQgCEsmTY8VRymT~2f{qhfKsUTm8)@QZ5nQu~4}HJeWP*LF*L1sJa| zJFK+@Gp%KQ#f&bk3=sj`CxWWo6?#9|?@tVcGP%aMTp(UzO=&HDm$>}VBmBqkrA5Zf#d*XD=9?E%(<{=) zyOigx3uy6w`5b&I!;rsY;ZAiD&s4kC=HlEDZf&GD6(j0p4p)xKC;myDBG6pJr=(lk zs9G8-sifAs&-k{+GjAoPKY7{1$>lt_K332cklo;(NR;wxgTt$Uyum<#haj>|X;EQl zrhB9*qzv=gR>v;=v}ByhMDtGW_L%#_gcG`KrC-&a<zBv{FHN_E~@ghoSG7{Rz*OCKQf{4pRZd%y+E72=Evvzu~`@iLw(jRZWB}Ucxr0r zdw-h+(2@B<`Ps~+;Bvdbu6nNb1-HQK4f|73Q|EVh`3g2ht%f2*S?7zJMOG=}yXT-i zd9nRbtfhpe`2BJ+ea+{K3$-5Ku&Fc#r?i}HFy5o@lkHbh;}XVR@Lo6R zHNLZ^%u4dy8`q7#2%hWhN_1`MG*3=4bKS+Pvf|aK*{> zBof08u{8pO#E;LilX`Zf<~2eG`bMc1(`PfwVkeNImqq5ysQ+vs2&1|r z4{8y{@KT^3LZ7SwC6#;EnHcAdtWTkF37CxA z5enu~rS$dnmn9b3c^bI9cGlyh7$WsMSa{nj*9)%u{- zQ~-&@qrY9U)P`}RhavLtLUClb|14L)rJ+qQ4gbXc)0{f!rMI+RzdrSr)0g(<-X_2$ z_(BdFM+{?2|EUP^<+xv;iN}RU{W?VkcqeOspvh7TpD~$?`yAXWT$6(J4~YCDrF2q9 zrRbsGO#Q*WJFN!4}-)W_j6mF#^Zkp+>+72d@AP*tbHk?_|YBb)kOku&?~<;;Ll2@ zFxxUPHMY_nY$^!PWCXyT1F<#V_YEnGL*!#(@Cg58@Iy+SP&Mh2QjTgOBT%YmhMyDQ zcDuY=KjE_VI+wI3>XTsP*{|E*j^e5&Z#LB7ynqWCMj{-MHvEn4>a$URgy6D{>Fv zdyM#yE@{eLJ;ONLS7KU!kIfHTEQ?tsPNJ$*x)G3Ueyv9yC5IPW_+u5yVKJFB=wZ0% zS{;2v8!r0jpZw_Ki`?X;xM08>fKL+7-zCQ1PWwZmv-=iuX%{Rb3P&aENB zPmoXmUjc60;YIME&P^yxvc z%W81UnBaENe;SmfBmvNJ zUq~pnvruLaEc7Zh&Og9DfDUYUyR6DK7(1QBz6aN}tB?{S*`MuQPSjQLwa3G7qV0jn zrLEF#;+b^7wm9{v=vrfE^N{FNpJ=z{(TuG{b=6c3aaN{&c(AfGT zX!yNCBbFG;sumNgE}|qKNj-Z4+8T-M>~PR>0}*F@`wwRy7A@#A)nKnmN2m8nlFzxbzZxINez48521+}j^+rH-yf@= zOj-#PlvAMM@_4k)qy4n5(N|^$+1^$?cDOW7@H@ib|M8~WD>vX844+jmR~0CCfMf}` zT|6-(Ow*k@ic7Eyx5UdmPW@?HF$h5?Jx}fO75Wz(rQD{$h3&H%RA~APB(!{o5B(>E zhC<2T0^u5EVc6r;=l)m`Ix@T~^y|L^(Vu^f`I38$&tu*Cr`#<8KG}HuGbqygsj#>S zr2ol_`8^>=_?;*7o~OmA@YHE_N*;LLyUn$qqblgCX|qQ$nBjddeQl)VDwo^Xo%b|T zZ;tbPsOAyDisSA{>@L-DuMD?yTz`>bi}l{+QJvTr_p{;u!lK(IBu(v-gc|p8RN&smY(NOZj2v`jYWkwh8+UvD(+V)-Pqe+ zv!93%YRi-h^Y8d3IAqN)bUd4b4bG{0%av=Sx$!uR?Qelo;0vc;2sv9D=sZyqyz#|7 zGFMJvOYApCz-3sWsxH3vMJfh3moZYp$~WEy60HC~6H`C)A}ALT@0)z}_q_l%`oG?# zddYl$%xk0d2#FXya0Au@8bQ>9vbJXLqYOzaP<>7)eBv$Y{?JAX1RlE| z8FIR$Y=R=Nz46rP0aANVT$m3Mb$KYYK&YC?C&#Lm#5_{tk^ndPo73=dhFLRI#+(Ru zkqqI2VTEIjUOqVeyTB|^bXrgX?dQ(qi|wUyw>{yvc@iXylEUdEO{$%La4^Y-2lEif zFB177F~h`d>U5%{PrZ^s;V46wjOciZM z_}a@p@f(>EBJ{kODmrXe(-!7QbE)9e`N3i`p>P|(mw8Xgm6I+fHGW9sH~;X2*B-nj z{y{q)uIX>lEqjP??V#$lq|*AbL{rGypvpcQp&efcq}_SmL=5)zzhoMI!Q`&M z+$8A7&%h3q)aFva9Zy#fAPJz14j>j$1O{(fp7&CpezLr9oV_kQUs#4&=zrM_xyh#g z^8Lwo@7_r}t0fDb_7X}zjtb`Lf*aK`IMEU6@!@Ec`pHdT4re)I;`;Q}?N3)08xFh& z?AtG-7RF}MYtZ11Cg89S1N zHj4Kv&mcKNif$2q8FlKZjpqz|n`HWFBm|pa2Wy->`44?{(cBHY_HIDQg89}Q(j+fz zM7kX9Ypa@bQWO$cy7uQ5z)S%|A6A5+7NqwdKod%l^f9hqF4d8H{IMVmUSaEAm)JRm(^W9L$SCbM|$B;_8gqN(PMb$1##`iXFkQG_ko-b(!n%s#csa!FHu%Y&8wi&@Bkc1?k zDRevrsODl#4J~Lcz?QsjCP!sOp28i;EmTS1Zqk1y!rwl{gFEtT76cXIfp=dS(%ox7 z^liLLb0Y5h-=9$nw(~o;0R%?pxh#GELno54QkQ+skPdLgz40oVc^S0VjJMb3-v^qL zDe78cK#$Q-_{Xcylc3-82w`qVW!)mE0#=Xd7*;Q7`UCi)yZqC{q`_i-JPo^ikNV+I zqu(#=f`mZm?i0!zVgx|JtScXWmH|Zj9tqkEHk*AUqn&~`n1f-ifRICLp?=vj?E)P# z+6yx6kP;=I=N**E@CJvr)}CG?)98V!Hd@+U?IIZ!|D4!gVKd||$$AtAS7!Wc5FN3F z*_i7D(Vf9p=WmFy-58D4PNb3WtXu#kp|q&r6$ju|>0nXY_Ltg+$8A}DprI$dgAy9P z9{^O>$N9W>U4?=EiAh}N=ov{AqJ4DVyRiPC0}uB%Qw!A(PfFuoaP&X5KPHogyc>iw zj2CNH)vG{Or62EAXRbq5HS?bl;{2u=F*P*2YV++0~$G< zQjnJ{s+KAuuxZLoAR8_9y)$(RNH^m_j)Ob&ZP?nAUtR;|?eVP$U_~^i3iU5;9)lwe zq~E(RB)%PYrsql{Au8Y~Q4GTJ%V*y9c)XGZ9u+6Gv;HH%e6@Ppm(u{PtgI}1z^$2> zD(sMRih@Gk$~T%EEHejnO2d-PDq-|4Q^xywM7qcx)Me1$dF`d?^U*-L>LI+p zIe}o3?mCZ+Tw?x;2@W2fGhTAH#vA?ktottt11;^Xc7H!zSQodG|G|r`DUZkLnh@?^ zD?t@7w&VG+lWzha?K8`+H1IfdfRC=x-nD+8Q&tMJ-+qP0H9DZ^dEUa@Y=@b?ls78v ztA{e2zDt+e0;P<}H&@zu0yb_T%(iHi&?iJ7cG@RfW8H%IGH=coE&%O5 z2OOs$1OfoF9QmhcJ}xTM2kf9mCJ}lVxkDd|7bn$t2X)5O^Q9+{Wi?H!1BqzZ=kn{+ zXnW}!ohiaitXH@9G4s7e4xd=OE-Ok2c^Q;hL|6l2CDu_;asulsQW+dRjv4?*Qf8@0 zf}9e&iI!H7sp8I3h>9myzs#^QVeU(+ftpUiq`s7~cV(p~^@8R8#c%NdneCV7yefah zFNNF{96M$b8{O1dlwjj80&A!pO-aWi^%tdLH^x zC!9n>sYYFtN<0_gXjqTKB{tP3Hh-qoDe1>{x8D>sC}}_2fM3N;01_B!w{X7T`HW@GW5q$y2eg%o?vuM zC(Vjy$l1BMi6iy5f%5DEIh%U;zAxohR!GKZkNv}@rBcaUA!1HJ@*mA>)`GUY0|sP^ z{)I0L!6^>tgGFs+qNZF`R8-7iYwUq69bdHUwat)VJoPuR+p>b4v;59i@`2mg|6qttSH>YvjlL?eC2R5F2?L}Q=BdN6$x@91C{SGucbxm8bd-d4 z!Qjr9ST>Xh=MI)B3f?@rU9BoB7WW?HTSNDu4Epu7VPWJ=oC*A&*RVI|Xm zU^1=|%#ZdyTO{nhFiJ^? zG?xjiiN7XC#R)wE> z1qWpdv0|hx;4ZxeIrIWquXxg+co{NQ+#&3?fm96>kh2-6%6D93c$C!m?OoVZibE%1 z`~aQz=GPmcynX^!y;v|13NzGCN)bk?^g_xzmk>{ijlL#D&xvx^DNIXu1wGzYNO}{s zO+C*7YtxGxO(?{*`kUz?qLl0>LU=KXQeAOBpjt=m^yON2gU`VUNi~PRZM+>|wiaQp z7GkKUA<)+ZguHGj{REQH6K4pT(;6XZXNJ-pNj)2Kygg{`&@a6A+<%vn_BO^62FfhU zwlq)BqGSb+GVnJm!tZ4|%@*J%HH`+dtQr?@EGVv4?i86X{2)3`P8v*)XynP;R!vbP z0uFt3w}-=@38N@L_AxaqflHqe!~)Wgnj+lP?@E$*(TBs8I~OENY&rsNi=vyc~<44D8CN`Gdm`DczAqX+rK_Y zC|VIT`}*3hWGyMo)sz~64T`~r|HLLIOD zR435-OXMNtM?uIXut=l@iJ*3JE zp_87R7nY$JWqvstwpU)_)=>h#2z34Cx8sOknL^yn*SA3dM-jm8TWrt|vMZB7!tPIo zMxo5j%>j2Vj0aJHi%q7sYbJXXauzo8mLFdV76Jql9q*9`jq)gfGmj8P&lOO*Y6X0E zw;&Y@#%sIJcohMj$(oM{x};{Ho(mfJVAF{WI`~7>f;k= zR1di;IPU;`z5Sb=nkc^{!a{>`WfA8E_P^Gs%BD#^0{RVxLb~8dUcTV7u-j&*1Z5(4 zaQE=H5b>=Wf)!Bo{fXCvWw;?djsOV9*={-8%CCXrKFF@Q!hZg*2jdwtgcdq1-WenM z1QYi>MEFeu3Sf8Xm%;vz@&gu%B(i`Vf27)&!dak@xHkJ)0pv^#>E)n!O65mNc?DtN zdl{PC)DqqJ@u|$zkJn?6Xi^E;QY)atDN&SQU#(rDOJbk+69zuAF*&}xy9+QIt&r%n zIILd`iZFT+;`sq`n5-nOiBJysW%;dq+yu-7PkbJgY4S!LK`#(;8N6cGYr5#RGC9tr z&kf|n8U_X&NG1M5k^tvrQ|GV?6*!N-gZJ+`@@%&sS(G!vMuK3h#O!&0}%UrZVo|n1XiA2HjtDP zEV%HS#S1&eWf0C$?khHiT*=8feLZ6D?L6S#?B?eHRce3 z28bIV9CHvC$WuGx38!QE5umc0w;xkmAzx;~a`_rdhRSH9=;Gx&eZ{FDcEpyH}K1MAORBRx$laC};e~nIyup}ex4?;mB2*B1Vt{=h4j}Z#;5$9OIhaSTKoF;w2 zb`i;OJru@xz7Lyw*uHw;y95jRAN^hg9wJt++t%JL*L8UkY=n;~<7B~@CG#`%k5I^f{O(3s_NDQPdODMz0A7&qZ>=widVYFJe!A_0m%AQw*sO$#?zgt$p^`HL0D4u^XH=xMYhW^-$9-v`pug+ z*zgP7N2DL84bpL93%p7=FdqnKK8ezK{feGhd}l=Zf+eG@ z6v>W}VD}3@6f&raJ@y~e;N?Y5qRsySq?i4C(=1(q!?qQq1vwBY1W)$Fa}49ueo(%_ zmYTOuhOnjGFBUvzpX}S&Mtts);`*46k1$B%40FfN3BvPMG^84l&Y!8I`AR!Cn3RQrE&0w zajmgz?a+K;AF?ish!wbg3hhasp>jnC3Tah{Br1EtxxbeF9ndkh^co8AaS>F94N{|b z|Dq1bzWMIv&#n5?douLhXh;vZ27r5c5^Oj4*JVnheFE$L7YzM%t{}ym$-isl4en_V z8^XbG1CEN=anfKMTnFa`Y&6r>y&;v4pWLy#hoo%7AYbo5au>#(JJ zmcFv;Q%AJvjT{x|cv)UJ|1kJO7itZ$0>OPxt}k2l|8*Zo_0s_D`bt4x2eVYSfhae# zpt5cfkmj1Aps-_fpLP{o;QVXS#YF+!)VNgeF*EykJ|KNK3G$IE?qYWAw9yeVZQ;Di zuu$yTt$MeVZnVa*G;zNZ@%RN2p$zdS&R#;>D~;!7MaC2x*R(bI9dQ`A;PviNBQy`P zJvJ7*Yh3Ql_7v!zAlwwd{I#g{yEG-nhUihYyJ083{B0Hhyi7p$I}pMt5u+oTlF8U7 zM3{n`NP@OEmP`-cY54V_9Y3?hWkDOnRXnotR1~&_ohFmyul-SRROylQAmW*w$o)XgrBPSI}pj*WUM?rEWQK&X`7DTzkN0)tYDHAlY|=%wU>^SI8IIOOS-WQ?ew@ zHAF!g6$|QIIkokLEz3G>8z+r?)~Zy zPxhNmkh*gxZy4gr3eq40jb;`Q88P#|r?^xO;Ij7^6`lV-*cGML(ZA@1w?FS82x_Nu z1{X#8=wAJn{4Z*KXWZ{Mu`IY=8{2@Ik2zoLrFj{2f-zO17ArCpZ z`CanhytwC2_EIu8lD`)x7Ej)TAq>1nOqUrPB+$-NU7ed%NM_3CAUG`wMc%mO@LGd*M*|LkG zx95r9cS-D6*Y%J+r(!C#Q%-&f6L*YM4^L6bED)TalQ43eR`fCGf>eGovTbB+xXOpX`O|cpBt(&e@Twzlc>h*LqalM5 zu*{1u3*c~yvPA8v2%3L40M6^0xMi!RifFGx(u%<9USZskCcQ4)17Jp;g0yRNa^HOs zNlrMyG&PquJYU<6%+|z`0zXeoSPRIP4~lSZP?0x>)Vlpq-VK0a8b9(tq&RqUIMFJSg^kVp)cIW(fC4 zpMEKbwF-TrVP`6E`3>g+z1kCa5&%H5_CFjo5;?L1vZ5i!mH__KgVoy9^-;y4+}9T< zcct{AWU3(pn*^YfM{VH5SOW;;hTH4n{*PABOS1UB|d{*k&|LsgVsa>(j9S3ur5Q5gQQ@gC!3Dt{wTnC z&p6U{?=#TNO_>^kGO&~dPvtnO3Yv8&iac3oaOE)JL9hh?!e0=Q17bl#BvG16hf3f9 zr3NmVk1^u_zpy=X5h}^y5(;JjRxD6}f#a`b$@3o9;pZ@z^z{vW+@=ZTPYw@J=t!XM zbW<7{J7pEztF%`chgAJBAh+kGpVd=E@HkU@3-y_*@!!EWk+rln1qIa`y%mLps=w-{ zKyZoiiTFM6AhyRdh2T9vDLr6tb3%qRmkzbi3ZjvF0%TZzht_brP*EnrE<}J zx4wkKY~+AD`f=y}Y`5;-(YQ}uFTD4A2-&}Aoc7*>MKw>h#ePq^SU<> zT--T03d0~y224WGD(eOm>2`&FoD6s5!Znt4aK8y))uUN$=TD=&NugzCaPfH761SjL z?}w<&yzV=w>N~M*g^M;B_W23>CG|`NeNads3$`iHDZ)U9Si2>2$%1w1_QJ0l;+))W zA$B)!-n>XoRey=oSouTDt*$rO!+PKY&B*uzAmbdlamB}=WN6<3>87(~d{>!k5v^{D zw0-p!4?--cxC!~!5jhH5ZFVP0rM~Pj-S%Lr9GnKDInJEG>4T0*IQzVsTqSh%eR>+h zBO-7;RPLS>C@0nN5Byz^q0^tY;@KopFaA0}YLZYjO-%UmYllyna(-I(rRn?7P&VK| z694$JUdLJD7D(;X)H*iZDUipqxx9<{#x=fj?e~yNvSp(q349^wwb{JT$HGZKrja_d zUnBDa4+wIb=R6`fpnQQn;|H;i^~qM>REx-JiRdXd)9Thow)@R-KB!ie@U_S`)3G=x zlC##F`YwrD#PKr#L}K+YfB3NeBi`KuyFvXaH^q+#L$QTEoewT^WAv;ze~-pj{A3v3CVu(V9u z!pWr=N$`hraX$e9p{=0SQ9lke$kd+GFU5oa=seB`t|N^Apux6DCT#<3S~c@B1PZ(* z5cpUqYqCKA@9bEEk8wQdjz=O(i#zklnp5xh?Qs5)EV1K?`y;}AkD;WCgG>jJltZ$A#2o9su%%7nLPvZf%j zv@ewi4JG!gd(9c%d1LMlbFj6z-}eeq?1RRQF&`d4WwnU9vOTERTdrIignA_<=~?Kh zEPEGrw%J$7jkj*7OtzBr)@YyVft-vqm&Grd?GhQLB7WI>>+E0pl71o#%g`@tgI@co z6zP5_kBC&U3HeD;6V8a*ZSNtW?48}FdK6`}lL&1noG(5ou3Hdr$vMahdIbK$@v9|& zBJNQ!qZ-XEGz2B1Rc}dK96#{Ki2H^p{>|7CpAJX1w@HJY5WWG-7*_Poa7YGYExI1j z(m!%RxibeZ-mQX>zuK`dDk=I-bRY>GHJL78UPTp zBIN$X`?p0qsaNk=l>&w4-~Avco2|O@hy+Ou6B;=Wn3sY?uN#!1zD2&N`pHz4MBc@@WZppC@ee zF8RkS7i69XDGaRm@WXL`LXP0qOE9Pj4bM{!Cl`t6qMdliIgmmV6yS=)MOT&nwp^UJ zk)y4gCh#LqqmVMOb;W>%eV?(5^gl`f^p8NXLXgw5DTr)ffwKDudPUhc%Vi}rp_4)5 zq14i7T{d(`?cu{${`^d^_4+0x>sxFY3QLajy=ukPbNRbt;i6LX(`cl8nKB?|J6!oB z_Wr%i;6jf?4Vb{w@Bl#cV<7P=A5*fpjJvPYD1j#o5p?HivVEF*hsddqF3P-z)x+}x z8g@khy;GnRb0owJl8*PNr_@mEL&``xoBkwBf3?U6UtxCzAy1Lb@qkrlIuT@en!s^s z)EGAP45g?umm)QcZ-`J3Od->1;491C1Ys?rqTnEy{v8}44HuaGYhCJ?p#ks#I+|+8 ztQWM(0t5eeHE=fl`~(Z7G7d#4lF=TIsW{zdP{rJ;qpX8z&8D3h@LN&g)WZKCd+!<7 zWZJ!p4v31P0-~T&4Jb-glwL&;5dlSt5Q-uQQkC8j6{QFmX(~-cL`p!S5IT+u1P~F0 zU?_=5@0~zsXFXWveditL%sKnN_m}<7hxv^&ljM2sd)@0^<+`r5byp<(9yiks7cfVp zv}fE2N1+;y0zn*!5&UUx#?Q|k32;^$gEv+|MrU6~#>^uy0oAuZt295h=*MzH;Y1ZF zoB&>8cZKw0PgoPa%K$9Vf_7?8@lek7kiU84FyWj#aF-u}i|YY}vr!%j>?|M5UPJSC z{7Z+M7#^O|spp6!JdX$1@9^9}Iw@b~o6}*1f*#(XY=#K^>$%d7>j+XYf+13Q*$a`* zxBC42{JAT)!N;HFi-9Z63SblU8!g7q|2R6VG6PSdyJ4vI`TG~hjGqoNWNz*MoR|9S z-Ikpa42S<_r4;22ZLAllV<|tL7fA)ilZPQv(Suu~3#dWb6IxNeOR z#KLw+WP6pO9&ztNC|8%{mwnueM3!<)d&P{!wTxo=%0o=1Z3oQ@v-O?)^9$J(3nwu5 z`wla2l%2t(;KZH{kvFGJjqR!>*6(8QzvKkNA`;yz-0mO{kXZ+Bjqi@0#S4yJH&R50 zTuc|49bMXfT?ZCElL3Y~9T*_JNZ+*Mz;CO|=gJ!rL3mJ-V_I^=DbPKMO(L9N=+Exq zY`_P+C!vUq>WIcnbErjKi^CnvR7=nDqes<=$brxZ{eClWAP0ge^0)g3FWh{2>C;|u z>ccbO#f9iPOtmRm72xQObRnGsYS50|*-o=MYX{yIYzEOz!*{L45^KVcpL3HcXrPOr z4;`6$+uE+YZ~7hw@4`jW31wvke>+U9f&mie$iOi{eBC-_O=$wl%={pZeijnN}fZ5QAF-jNN-61z92O z4P0Jdf?PU-Io4Ht|3+ps5UK)9g1l2)E%8rrN5ko1C`9PHWn2H)uX_2?flpr)Qv~Do z^8#1?-2P!ih}54cOgLVI3d1W}_mJBp$9x7wy1qKsSrKn>QW`gh4_Aj$J)>;T2sjo9 zG1`6D^C5gI)$82(n!T@D@nSJ&X6^RL=ZoB_-(^&)mAMo+f1yaB#LM5ZO7{HVqalPm z_!gLwk)g9DSz(Jtp#{!<=EXJlW-esVS|$uyl$zyn7aeL1avxM(q#fsRm@7kD^Nwm% zPmpSHF&Ex10RpHQ*}Xt1IH#+gTlEW6(J+7`*LDkCEe8bB1CZ-6Xq#}h;hiaqlsocP zfEB7|j5p{4QJ^GAeLBM+5gkT@t{Z$0dY)g9lf)FX2`uwn$+*KF@5I>pU}aP~)smE* zfo^*?o_P;Dmtkrm(A~snH!0DN%rim8I{1-GH8Lxtm+W~x%gb~0F20d)vfDsiIjNeR zUV%RyXW#=Ayh1&%=%M@3pGAa?b3TO*FTmK00Qqf18L6cpRnVt5km)accTBgF`mnwb zElJte`+e{PHko5r51}U_A&%9=*GdW3-gl+by6NDj4CvF+(jMDL4=v;s zm)@%r1$!HvdcNKGli1>xi;gx{?%TBD;%mlb4Wv;U#Vxkf#lCl$b)?9!< z!kM5^oK5BMlw#=pzUPOZvXM?!U3?<%ed)?sa&-0i0NaQ3flKWvNuS>eQ*{g56j3-* z-}Rq|3_&f3Sd^Q>#U2;GJn+r@A%Z~Wp`EM#3Y`HC1;ih^@*dYlW!+8ZRJ_mc^ZIdo z1YwKs`7>7@fG#fIwTw6+&Yg=ImZ5p0Zxc@JedBif<*qADq>rN&&f5+jd{Nvv`&8L% zokIV77{C2T?ugW-q1!_@q=n+thFtn}LbdZUeKne=Q$&ge)C!6t65iRo)-z2a?An>@ z6fGA0XrAuKXvzVflfZPDj^dXj;{mr1J`pTTTX4yeL2=*b#AZ ztXWQPB}Yt5qY0U3rJS2oX6Foo99|e7>A9%W+4{Q9C4b9{{Y`M$??*jIro3l;+(9$nuA?FuNrY~Vox$0Ft@Ptz&~M*9;854eNtFY0yX zWeg9mwzCjf%(lV!j zFsdy<7ANGdb2yr8;y0P&*!b8Wmi>Z|AnppyNhiBx3E!$7ts0h1jF-hNryNpZ14e)=VcXa{p`yuJo!dQj)YUIZ$t%F?7<5oyCRB^;F#365O zBy~YO#h;myFn(9r+w$ z_qLl@8RvgqajmjJq3qLvk-GElZ**e}XWgpg_2_q>!o0e>N6QMp(Xof#%K#Cg`%YN3 zt4cA1$}6R!D9(8N6pvXl<<`r~m?z{g2S2T(w!lvqi#=!4CJRqHHah-JEqjhKvE83R zh~!mNDc~h?br^ExW|3X|h9j4zT+em!fP}Nh9by5((GiSf&HMs8@E;M6kH8Uvo*;z$8qlr?~9MIL)D6pMW=x6tIqy6~; zqLC4|2mkXc8{ArqGL>ixh0lw-+|@k$9|oK@o^WWn`$*leE;K4Kix7Bc!8q{p8G)}R z4f~ne>YPNoD_Su9u-~)gQ1@OSX;~@CscC^vONbTUso!RaTl_{``9v<8hzSsG?ist)*?_ zaf`DGH2LixU(;khM^;za=NhwQwohCF0I*zpehKylk7+3?5L-5QfU6rJX;=T;{QznS zr3POH~zyPCPS**~EWC0r41KIVJX$u|_M5q_D6rXKo;5!FP-#Rxy zf}PsEfn{9h3m_-L*?o|LFTzV8Pi?sI8-veQ1i8~~u`*-PBd9zdx>#4S$P^+0FueM+ z*H3W+xEZ1c$Cyn5Ah72P-nzRcy5wsZ|N{l^qjR3Km!43Z{$@wZM60yYZ+ zy%SzFWa}?xA9=O~9tEE2!8ph(_z9@+Z3=>>p=`0A<4U#G!o}1Xust+upbex5TGaQ zNsBeqG;t7?9T9}YjC5O)u^9kZC*hc~DFJgOih=RQZrC+uwW;X~5QwQ;1JMCFAA;-E0|G3u=C~dqOSQw9fftqHxlXIe^eH@_D z4xilp1gcXVjHQ#c!jtvR0cXU@ru9hR`X5Fk_hHqp8-tJ$?}h%x1|aHJYtS>iW+{X$ zBlYwn4PJkJqOncVf#5qE=@{Mk#{sBk9;q;S96`xh!2!SZ>!(mL5+*W#D)yPsP@2U2 z`~m>R)}7Yi-V<*TP~F^?kTVyvP@m; zB`1e0R!pGB%ll(T%>5?RWnnU_HBbO>P;Nc?>rK53fO!H!p_uAxh$j+>KUV`eVUr`y zf%3Gi156fk^nddlXP%zK0PfWsus3}5_4PkqT)B*TM?Kz-GDQ)Frx%mpv z%Ls6A5=!F7D*~2&S~!HNf)}c8hnB0g0v6$K3`@o8&E-AY>3bMgi5t)`)388AK!xP& zuN?!YbLr`68z{A(-^hn}gd-{`&IqJ7wT}#aS8vAuIMgu6ZvyjM&;dAO2TV1CRb=UX zgjcBLRK-SlloGY5flm0B$L}iPX6FeZhFaDS2CsExIvE-b-oSL}2KqlfA-tvvFoAr( zX{sI3|MTJf`DriOKzh$xHr*JYCK)SD-Ea8qk1zP;hwcGq2&qaU^a=v-{nlsyavz|} zdQ&)qWuL|uXr1OK0@d3E9CmHG^3tVq|6n-~M&V+0;NmT$VG4*Jx_|OZ2=R`0@ymJ_ z1c3v!I41beDNI@C0JDUlFye$%9?H=h1-hHfPirJ($=`p$Vodvu0SBn~db_$)x#cI3 zMyE^d{&WJ;=uDwCrPC(Uh&}lkgyk0YA(a3mv4x7uzA295|Xh%y~Lj&m1 zh65;j!Jp2Z#dz%ah8rsC^ayaH8z~$E4B==2bRWM(O858^#GFq+rTO*NbCKCeFd+9^ z5CfA@`1b&gaRb63S*ENk1R^EST0^v>!GzbAjc*wF-RxO$T7fMyn*!Yk-4ci1yo+iL&f-e5C|@PFBI;J7pK#eV}W2=`p-Uw zwELkg9Sxv&G@w0Se2*PTZr*2r48j75w|!suk6ZHRLLv>;mBoe?q;;wRZ3FXvv>smo z^nyWxRD^gw-z}(Y{Et2cyCHDz`_D~!AgL8FoyuDSNMym3xwnEs zJPmXMQ2zhaqkRdkjC;CpgRD1a;dUQmd^~X#^Tcbn}J)3Oxc+N zX70C8CnVeR34`iGRM7oHHnng!?m;^6+ESz^|7^9z1Lw7NDhHGz)D_%B6{nFx@|usZ zp-<})K0*xo9HIeviyuJ^0Jt?y@G%I%D+r@92k1f^v?tEU05oltEDt>NZ=uW2O{tix z6z@h_Dhf~ppPYya{96+ULf}9MoZR@OEr#kq4}r#4hJfX%lsesjNw#@XL%?2OX0AE& zAAv?=%@31RG16(?t}h5QN`8&V=^ybYBI;n1;$P4os63k&6}0ac?siV_06<8KAS_AC z$k@MYdokRi)-Y;rnF+;;M1Cq7mJPCfT#Xn~6zuAU8l>WQVY8|`%-LoGtG|IrCGpeI z2YlmJ!(F0fZ=aQYHV?INWiq}(1c{U=*N(%X_JJnxi;n#)BnLcmKK%JETx!u1LLP_l z>}|*jiZduJjvt+GZ7JWoijx@`8R?J+L}F10ReI96RAFPjGPq&V5v-IUMi?991@^| z5U#SfGH#<)dG-cL!J`jFf}mtgKp;?uY~IIgmiqjg$uFPzp&fk>@>%P0hvq_ARUm<^cy<=*~ROAhlNwywzpESJwg7nPsH2beT5vHwLY* z{_tbzXT3-7;;|d01&_cPLW$j7$h)dsTF+4Lh7K0&Q%p-c*X*G zMp%&9M+n?f0{$#vUK#lqK|1n<|0QKLOkb&MqKk72{s0lYVuvq~{ zv$4Eh0S7&j5i*a(l3Ny+BCeuz=6504D^<9Yl5s@GroHvJiB@f#A-dw3(~5(IsPm$K ztjMBPy2AL^u*Wls{tZ&baSNZ`3i?vX_pI05w__2C)&xgaW(=MLZlgPZ9NasV%Dc30 z!h4j#tjr6L-FMoYE6N5p=|HYm43Lc%9sDdL8VhM6bv?I*z6FcF~_dN@5y#DQqJ++;#PPD3B&vd(s&b2>m!5>pL3^YH#vZuJzOu?~M z_6?32@13LW6&wycjXZo{(|f>_5#NJ&0&-vs*pB;zAH;7nig>_=R8e#TX=f1JQ8&QE zq9I-{SvAL?W2~e`bUvXRjjyeCozhz98~tF=>3c{T??$#4E~yt4l~i`inn|!4PF`aL zwTQ{qg{WQY4Z$WCe!dWauef_4} zIrfWh>bhh1WKFt=hbmh!>wH=og7b>zsDQ!jER|bTu6T2_4U{d=3R|K37Z`w z&klNrQ$}NUif4z^Mkv2DU*C5uTEn4 zVdf-*k1z7h2?tyy{Y_1Z9kQ0(d>@7x?gSf0h|$l7>NWuN!RMb&1O=)~4DyC^sGN$eHxXA#5+ zk%aPSl$rI?H5UTUo;I{{=gDC^tC)^Wvv{k{8~mClK9K6^S?bbsD>&Z6u~yPQEsW&+SJoXKow@$nsaAaG}(S+WKfwt|bv-{)rBgVKqaIQsEED z=EQ)x&QXPnBb3-bMryTNEEfowY(5)2QL53>uEV9A{(zNahdyhxk4ST%=JhU)l!|F- z7^e8X=wp|URV%n0V=`46>fkpm7r-6dQ@Dvcg4<*(pLk3?(#ENeR@YNS6VpvJt-?k540NotL`@COMlN_3d6)Hkwq7tkI)Xci z*fxk(uEy)E`${YCp~K1^?O}wNoe#I2wR!q#IUjDcfT((BqB2JR{V~UnT=nh|%KCcl zLHyF5Qc9FFD^Kyl;fN*>vfBoOVP;Tlm_W`;`+FFi z%kUm>uLw$H@;=nv5*&cbXkN#+38^=I0rp=E2uPR$RYKSvo6ipQqK5z*i8Rx&Wzvx7 zAXxdS8FCzP>dTo(t;0gCf-(Bz?rHv-`7;A`kbm!JRgV%Eg zTsl&6_S*9hzk?U(EtAU&V@&vMzUo>#7-}Ite9>`)c8y@dSb}wIC!Eh~vkS*M4cBfG zg?G2*=2o&aX(+SnY8f5OKzAn|d|{uEY!aHCCGBb@S{Ch^1@Icfqu2#m21vjIz=vN~|FLz+N&Wd-hzLldTl~$eG@P4J>mzIH|^@LElT&hq#_WyTGF1&0FnU@uf+i&F|3ms{_+-VNxe}+ zK9svq)V^1y(D zqO%xmLVS4fGe|m|_rg}NU}j$3VT4CifG|nnf|`^c@5`7Ej8JSpg})jt@ku>#nw57z z1ZI*YMpqQxtKzt&7rMwteX;!I=^|sMn3%ynoYOXZyXx^^$6XZ9e0^X0d3>Lh->k6k z)U9nN#;2U!k1?Usc7p@G;EEo8c253L3+Boap6oIl5JfOa{yh{DD0Tc zl)Bfk@E}>!`ZAuJWE8JOiI&97BZ>S2(zpRb5szwaMO83eyx)XzRvZ7y^*g>Kx z_mWv_o=KRs0YC0RR!^YykRiz`>8aBKA#-2Fq?1!rJGj`?m%&kU{m-Lk533mtJ(BPp z_rOY6ruOy|9hOj?X?S^Snk%AH z`g2*2!Ur{WmDCUi)IKh*#H$N>DjJxm@zrb&f6S(8rVTO4n@E;}8VcIY3h|{E#C_gXAi`H->fUT1 z0XiQ$WuDvXa77Ix$;Bsjf9&1~^@4WQvrc(}Wki>@4KtGLrn){zI%ogur_geN54l|t z!uv?v=KGQWskR`J)uC`aJCGA_1DG7Jn7+n^TUkh#9W(*c^b!75>wP5J49Q-9Qw=J& zo$#zZJ1I~xlDP6!4N=9j20ln9=Z&pfAD3*4Ee3jC%y2!oT-*r{Wekphrs48Y!wyh9>9HR771sMVGX zi!q!naV8^r6lbJp4SW*~SyI`KdlgGVSNqJ-VR= z z_@i16B?l!z_*(%}KHxGlq4{N4EgAr`Cst3-y_t|YQ1pD$0wbg|eW3M>`QXvLI2&?F zYbyQ*;bNIPXL>-02nyX$#*M-D5mQIO{C6YoD~P0aa7N(4rZ1Kc7!FC-Ac=&U$M-~{ zd-=jTYT?V*=-bu9O%}&`j=A32Vsfa@W1=ldqAPg&>0_No>tto52uwwBa`G{ceB=Zp|-h^ zUVD@h|IV1KebKSj64By!|oGvQKTcyxp{I4SreGOH2o@}L!&g;eY;zm7tp1d5t_auu~9%JykM=C+HZ;p7O ze*Ai@6RUoq-4#E&{f46NU80zbq>;UADR~X`zs{X!=)r&RAVmfccU}#B z-ub+pPF<%lb+YT4$yuB2m4~Q2EcLNiH~T9g2H_ncS?CWLpOtWTc@4yi2#C)!g{pg~yXYHX}&k_D1cK_B3Q*pL? zE_B@OE7geaquz7p#|1Nq8qZ>y!TgWp9>@vdBcf_E*gh+Z4aDp$ zTC#9|iy!|ZYF&&|E*6?7Z85A}Bc4OxH9uiB^P4B9OOZdE4ee((W8hsv9L9XLW+T_ zxQ&#Vj_{lGyxmzR#9d3-ePWGcml0G|Gf*_j4ftVt^6?p)q?QtI&9zf_Q$tFgg)6_BXQ}YfH(9+o>)}mRJM3o zf#XX^D%fYlrdFWT8frpBCQmuTfW^NGuRk0|Wl0pajkE78H*fK9DDG%YArHl@=g1A2 z-4LbhCh4EFQbhW2ae&f36K^R@8XBv^UgV`bsIS*_uRz~vllC9Y5-y2NZL1dzC|TIJ zFd^Dw$}NiD!NIB7OerdB>JpygxS(&>rZAM)cDXFE`xr!-t!U0ay~g)NIvhqAjB{9U z{In}b-}rk1c3jVZnB!&XZGO@HblMucWBrOYm7Vt^QM^JD?dN4fgNx#F=gzsI zv61@*`}<~#8msj1qs47@Npp5}XVpAjCra}Fo)c?kZp!8V9wRD=%Ie{Wlo}cfGkdYj zgV{_i6)5t7Txn()JXVR{>+qFN`@3vNvnQs`aswNOj&U0_yHL29#U?0}B?UBnvArRw z^x8PHK2eQKeZ8@$OPX78%O}>_PgE|JC35`+EFi+z`%=>bKc{XIjJz_Tqh%Ey>YjmP zCHVyO0>X+P@kYLyfHwqiQu*=0GzyH()kolEYD0yM6 zR*)Vef#MvU*T4lL*%OR?_$v?6&xAsU>ZHlyDOg(|DOa^nADW-6}3)C()cH zmql*+8gNWC_qQh_&6vO5$2zRZFuU_dN1Mod1x+vQt`uz#%wO9vQX9+el-Xmc`wq6q zlwXz`d5%MW{T#3{5o7hccrP_$J*#>R`FP}>r7W)2d1ogxXEBQ2EmEWlQ|yffAq~E6 zMWr|^gQjyD0p%53#b);9697XRm6z{LP8Q}C9N67cK*=~}RlQ_sy!;@#>H3A;EQqLk z`Y%=;%rKUGFNszc(B`I@R(lR2MI2O2Y|%VR)ICK@rd{+tUkb2|6t^cHH6INmo?uh5 zV;34VItf`DCuA44i1;kljkz83{XF;vwHnNg`R9pRtW+#I8VHbSmn}^kQrayQtK$j9 z=mLW;%7mqUrBVgHQy>A8UAFdnNd2d@Q#CatdutPh)NvC}7@v87dMI>mweVh~cp>Sn z+()0fy!Y`PfCw}{MOj=Bx=(FA;r*p@yW*}V<6iNK=XHF|4~wF*)@I%w%eRg{S51A0 zjfHVHfx^;*!whiiz3lW6t6|xP1RvB*zjUUYktihbHAH-S98zKZ3sXmGA^&SB^!L&c zQXA2dfEY#zx%gqC%Ad+Nb5)$q+m@hXe0r|x;f=SD1iyv+7ZR}p@c)x#zTeY7N+$oP zc<}%A0{!{8}Ws#*De6adN(!kr|Nku$TK|7UIH6;cs` z1X{^tFTDuliNtcde}CKvyUh~(cF^k3^r|9zx?Qhocj zN;guJDpd6^dV?vk^fMuLAdFyi{=1w%56nL-X8vDlbbEFrm)j(Wpm$45)Oaw*_;OsS z|9y@1=R13gMo3%WRx$0|uQ+Yu+4@qQy|i3!@4F1YvOfa`GVKSVCzh%=MGjseG^KS6 z9`eazm$g;P%1Ab_;1l#&jl9g|^=r?EIJkV#q$J#p|I&9GOLV@=uhe2u(DBTeChciG zxKLQG%kFD2dB$#jTgq7OrKWfZnB4&J{-M%Zj?2W zxh1&7PnmF`61dXGsG;4G{T(}Vl6_tV{GJsB!T%k&jIn!BXz_L*jrddq7nqOVv>Je* zaC+g=iWC?*&11evf+q;P<<7Ck)>*d*MAxC%+>(W@KD~9qR+HBv7k|&Ep_-`+_7q3i zoOg(P|A!$tnEVBI6f3EijdW0cCjN90`cZZJ)cH#0P5Csw(}Niqc^F$}SHfuI&$9AP{Hwkgh?|y=5{hu{2yiYrPjZoZT zmc*MGwMMCVR~h@@Q42Kh@=_Sjm<6pBJ67o#q>M|DrVEogL`{mFteU7R9SJ)~xVzbXemf*$qUE zPDib@2bAVKeE7k67UPuLT`fK2ab@a6+#+fhQWthLHzSR#ISotvTH0UQxkgkcEnJ0L zI#aZ^iCG2u_O*E5gT%;;xU%}2_4DPOO8U0TNY|Y9p@$Z+kT4rQ*MB8XTvb20%fimf z%Z^&as8-+?4XmfpNjMj@)T^h_G zWPK(I-&g0ew5J2*m7;q*#55?0=_00wBzDC&t9rZ9>+dTvnPqLGMv=Wb_Sts=@nmx$ ze(R8xsWKxpesVF}l>GQRLhvDiQxZiWRc}#xPK^_t7gwELLwYPN*VEaqkY&lgz>_@c&W)V#nf4$~O{@H* zjg%>b?*rJ6^0=r#FXLs&_hlX&3#h`+zE>9g<(JF*M;Sj#xJ^@=ZpCRz=FVuU5of9e z@a*#YMN7$Z3;v5@2g=qQ4=(58#cC`%r9QFHX_=Y|D{cW*Mthqm$daUP5aQ6A=WuIW z`Jb<$)rbe+QGxQ8@}%kfkCygd4Pu?Jq5J-CY>~>NzXN0I|vkBTxH@Zee1B;^MLFe z_ot2WlY+l4=?f$DllX5QRnF_t!YMzPK0dh2X2bn|&T{#7tOw5mbe z@47qX2|HV&Wlyp6QU9Z!sn>cK2uG(hST!lrVWHXZavao0dk6Zhwqo2}j0c(MrE7Ps z9O!I)de*nFV*A3m*c*Hu>$^e>Yhvn#aL33QTDLFn0<c%O<2 z(kKi-Dp;^_nS6{|laYFl?m;DXg&;z+HmS`_d8`wT-iHn|z*U694Y}A`iW?U08 z<9**ueOM%`5!ZLAVwSpmv#gd=N*aPi-Rm{gqyp^Y-(L}%y*!2P7%}NNmIwut0CaA6 zLSdyA3u#pJI#^`6`IH^z({U7fkm<9f#kDvz3IEyG_HOLe)hBnJHnghq-)*w*Y2}W= zkf{P*$GFYwsL@e9PnjKYI%fh#9ZdbA17@G~K9F6H)9i42a*+RUih4} zU?I)<>LjTn zlA_hJ?C|8l<}F2#=bV2N;=mPKdpFY0F)zS%x$RxyL!yrwu_La>$zY43M4y%w_BK<= zi)aOD3&WLB0o^uXrNG0XguP|%T6HtBsG;7sRWPZ7mfb$P4S<--uW!N%^N=U)*c)Mm z?OKn0e;#fDc%B3aeHlB>mB;24Ujq74vbrNGawC_s&=W;eCAESFaa~+YVAQGr_x-d` zaf4$e{Y+KEV0lvseq4^x#nt00?jDiL81FKnRitR^zL4@-`pq1@-fj-Rjk|FZPsc>N z^g7gKhm+Cyd6${XTowq$*_PMZ652{O4t>?K>Jqjrj=jgRoc5x+Jl}o1NwX{r31ocI zr_P>(WjrAxR8QwVwsu1HrKYoJ&S4Ehi!66}&W>A#)D10{P>)(3^aHHxYpNepPn(%@ z#%WWv0=?Ysu}4VF8i(|WWU zNze0-`PAMq;DD{~A~zX0TM+%%dVVf6jsy_Ia*O~!E;1wXTGgSA3u=B!FLg1^=(i{8 z8%8%@Kc=`2;+UbLG3mR6I3Gt*yxo<>aLtzYnnt3LW7{5PEgMdmSZMPOVF`Q9@@1AQ zZ4N4>6>K~~OE#~Ublrkn6TC<@fm0P^)`NwZ@k&4nZP(PG>5#Fav??hj-GV0k(>Q-C z_qU#3OK1H^PUzpZ>*KwBGo+8=m`@?ksp1`^B<&QmK3TkSIha9sg;7b&mjj(eU@ z*_R)mB96h%(qwcQkcXW2MykRi`g5&=<%Oa#?N2~3&^z3j#71f8C`&Q=@t}4dcm1up z+LpIR3RP1dx3pX0+0*mRT1l45q&p*()RB;Hj)6VrS(aV~Gk02ZaLPvMU7nP$g9m+v z5!4JcBKXTc2Pdazk&CxGg*%?*33N5MWQKDyaBKVY;mFeC(mByLY2;1OP9H{HeB|*3 zO_s*N9d$k1*&s~F8X%@AZ7OQRO~3gB!3dj;Nch*T*CyF!8}Y`fR#}&}S0L^#o5B<8 zWWpbsT^=y#o9OGveYZ{L7>CfuKwaa{JoO`PQBP1=eMREeW>z{DE@x1up1`d|aqdcC z+UUF@>fuN;_kR7}aXvU<+Fx?{{=;!5d+OTaxGr)vmu{Jd|GuHZruYSTyxjDc<*VQ} z7;b0tnFW<~ubn4}Gq=NEvc0lsKI4$fLIJze?`(ln`}{66N;jS^YC|X89!#j=jo;SL zh%>mzOwN(S%Q?C(*K0YWlc=q=POkiQHFp=JO4^kQa^#z!1#n2GHDAkr$4BOalv?bj zVME{BV+Lolb@x$%i-MoDb8rNo46i>knZKm-(cbALG{d2}x8MiwEmoDzv~>i7ZhN(1 zb~hua62g}l?q4bi2=T3A6|^8jjyZaV_E*}U3-*<6xR)PIbPw86Et{v9Kre{cvF z1HXASZTJIy^1oI<`rnzLLn(E$Mic^@`J*uOzw`J09!T;peW3rAe0~YH`R^+I6HwCs zm8-NPbXb#lG53}LVABAd$A2JT%-yO%)a3Q{Q++i+bx-YYfT?(cizjFoXIM$)q#V=j z47(84zOy%Ey9c(Cx<>sq0;r=UJRd{AoAG@~c_p`IU2W5wTl_fd4=CL7LQ;d88c|Ri z2iP|g1l1*qM8Xn(fDmsJ;%sii{#=jS%3{o<_&ykXA~JOw&j>z|!1c2Sb}sV&K&tJ}4VOBm&1&o`|7Q&6kFqB_Mzp!auQr*DG&j;_A_jfKqK;?4 zxGU@VRU0{U80nckYscb_uAhmH)WP(Thl{PHYPgJJOGJszkrLAr@!tKyxIn4uzkqHu~>z#;1%Ha;GYIIG8Mp4i>O45?`c9G8qs!v# zMd%vtiHc%MsU3wF4!9@kO#GL;&#)KN4I3HuPGxO3_ADFSb+cQbG1Ssjf5xPPV(OpB zl6kpA{lP|!vrO_2!%Az@O4xgzaG4tB4Sl}!>7wlUz5>58{bOwaPpeSynorV^z0f=9 zq^_;xcWQaeX^Ych>vVC${SJ4XB73bxhOal?0q}N2`x+eGf9=u!Jh{;3j9T;ylszn6 zY_#vjchs3XS{>h%St)i@eHbCxq~=~32y0kzvotyTlxHO=sTDQwU}3PO{swbydOA*G8VQG%WN%V^ot{LcXs7MSYXgY~{=$R1Y$mUlDl)m+C zv7i<yA=`RfKK!eFwhTC%JUxtQ3G;H^?|J;3}q8?|&kcu`3Dfr*1o zcJCnJk&`f6Jk~|@Y({{O?`S~V%VTZCLfPErFo(Q0mwcy6wHNHDq1xM&ji!X0_IQR$ znOo%rmm75Mexpci#^j$7KJGOUC}+KxJ?hF=%ApF1E5Fgf5Ng5ki5ow30oXB;9*-U* zlUvlK0yrHOi63RAEgzpbxvgvJz>MGaIwP{#_K_F6EN<7t?&N6Di!gP#kvIO?vRYpl z7kkXVOTvN)BPvBRC8V|=EI!`!N2LKkUI5BpY$u&+G5jQWAeahMJ6h$}B7USXB)k0g z$*Whz=>z?TM7@V{17k7#8niHh_4JcH?d{n>p$JmjK>rSCi!A^%7<&8k&dU>RW3G=g znAl>YYoWY!;$wLc=5$%aXVE*|wM~n_TS`6MYNu9Ux)fI9Wx+vm2|r#m8>UqhX)<); zUGT``)UR@_Im~KOZMo{@cA&VR`IC>XbjtS|Y59w{(JCQo8^(Y@WF>hW9eAuQ-%~I- z|F&3re#9m5wjn>R$LZ)rwSt8+PcExTl|TGsKbCvfbGhgQRQ3k@D~dn5=8eSqMM||y zZ#dccuPjs$Kblh+`Npxo+GnP&CaL&PJj7wo)!5#L>980ScR+#oz$ z(=-EXwNc&BsHy`&Z`MYP$D(((M9|{UcL<>wkvz$?4-%g;E7@EC*Vfl(XXC;jH_;X= z9HDa4oMk^8>eybDcst4o1v}c4CzkvHI#&f*!ciu3v8x+ zj$KsFg@$c6lyNe*E;0!3@{J|Gd{~yCklF2|oGsg0?e%g0W+Pd9#_0QMNCU<(L)!2 zarw1eX5TRLgniaPH0E^~^7uP`{rF)7AuI0rc7A+q;fV+(x5KVL;Z;E{fx8QzeG4sYQb_>y?&ip*F=xw#J8J776@DFes&vzc}(KjM3D^_n;$0R9-^dP2u9zR1WI#10FzgZ&MBiGT<6vp61Hc-?5w1$QB;A{G2K%*Xlv$N$pJ@h|M4&XD-EN%nvv==f=J?NJn z3G|@DQeFeB7Dk#F%b)u1;vsJ5zl--jZ+St;s3#bf(2b19f~o4>-$ls)ckYpka5j~i zwg9UD5;*Outj}x>I8KRPTa`9J#% z$T$}m^W+2i)j@})rG5X|3w{Clb7XF?PI3V468tr>svH8|01XxCA#CL{aS+EuI(TEe z|FI^3xi*`IB*1mb}V9ViTU@akIyj!zj` zU((Ph5I!-2)ByDP#xpic-PwQ3F@&(ocO%N4fiS?rc;pLc;KgUbK(pTZ1i>}yw`@Ai za37pC9f(D=nO$T3Lx|+uzp6*Pk`KD{>1hozBo$^k-vCWeg0E5#d`=e;o$y`j`iI3_ zmBrO~L6g@UwDY#pBjbWhVbY9*=cuVMkdF2CN2~IE=m&6~1NArf$&sV*ut8SvXRA{1 zc;cW6u`vi#TID90bl zaQd}RSQrn>A@2oS@^7LT;^0@q85p0at`0p57b`vv5__!1FgEHRJ>I{Gm$+!Xocd1w zd~>KE<|@IY|B4uZ6eW>XoBG-O&)@FJ@efCtYe+UJqBKgB|L}z$YKF+$2>+-03nZVb zN|kdx;(`0Ss-xo9^LVL9k-aXA%`*VMDFh_WA?F~Q+@`^wdJy#G@;40>h(2MO{2pam zV^lY2?M3VQeP#RhTfij9%-k<{=rI^LTGHT zGm(LgQGovywz9@6&HpeeLF!5^NYkip1%`_b0%-w#0rCc9++|fHw=hEPcPQ$K`-g9I zPue*-5wx~kU?g%~y3)-4fAB`gQIwr{%hrRO%?7{TL;tUD^aWNr7A8rX!vF$A|0i4M zdi1K973RzA%zYVk%<9u#9d9t-DzwUvUlDPv zAY~XPH5uXTcT@}}B$7bC=bJ+SDm!sKY?l4OK_)ub+4Bn^sTL__-84hvU%WIgw)^br@# z$@+(zbr$BI41-3BOVv&r!tPsKUsts=kv9S&2N4~98r;=GE~Krm3}<&WPkDumceHgH zh7nP_>SKFWnZn=~y{i7ID!6Ln{r&xSVA8QMGWs1+E&R3&)5tuL5+mU9JMr4BN9+*@ zyIlsuw%^`~VfS;87OeFwpW;TQs$cJBLsTGvNpP`5<4>OnCbW8k=3W!yFbp1;%+K}L z)=`@8ZmNC4$9Px*@eWu@KgySu?1*y+CP2VjcDMF2Q}T)X2dZ^Dd`~+>9fd;M zx#<$5SGO!5F#Q_|GPFc$zl*nZO{N{{ddgI@F244e_5oga_;#{FxI7wWeHR*TFf@>|5QO6jN#w{ov@iEK-=hyc4bQsvWu0{~#x%*eWW0b8G zW@i6&p;W;!A}C}Xj&&TrFP?j+hDolNJ5}OYUkC6t%tD82N(yRt67X(Wco!KPO3-9F zRj%ju{klUf^9C>Ryt9Fn12NA!>c*zCeI@ zX{TDSg|ufHAb*n8BY=-<*j!!FKJwWq#<=2+jAiRbKX+D=Nr5R2s2f(LKaMpla`_C_ zxn>=w10QIDdjIh|Di+&GCtSQ%4qo>?eCE-Ye!rH}MXbe-t`py-nl5^zzwU8X2kiR}A6!`H)&2zZy&P`Q*deQo3=zgvFGUG<8+AUUje z2y_wd@~$OLvG*R^&E#xP>~cFi`H&ThBYo&SUgci?%sf5vc(Gie>~o(|w&uv#tR7I6 zVILUHnHi48=5T{_U=}I4-p|a>D1Oyp`)(Y|Pb_XN}W*rju(K+=})PTOt^w|Chuim zgg0Dw|7h+|e(4}j&L|B}-guww9a+q)2Z%DwC1*QoXSTQK#$XB}mW|rZIE#x5;%Y1X zuRQE~nLk|@cwUcy-s1sENySSY+__6fd1=;K&PC0ihR#U31NZO|af$1P?-_r?yL<}N znYr)7+^~PKi`1~}g3}po>RnT2Am9`AM348%qkS`;A@fF&422M7E-FJwh;7PPY?LYU7|Ku@D6%)kmvJ}nJ}XBLkOAYcdq|K_g#e% zq<1vJi4I&c`~J0tK1AmP?pd^If6lYlCH+=TXi*{H7t5u;HQ043yFy0~&wme}t1)EH zmCpUK#`cGk$(NbA_o*G|%JM>dqg~i5r(3xB zse$p!COBx46Sk^MBqE56VzCut&@!8+*sl!>t9E#0GureFDFxAS@gGu_g^GRn5@pG%rq zJ>s--=~{FI%b?(!m13wqp?e0E8c$2(igIGVXA)~{_c?QW-Li1=9NsX&9r8|^s4Jay z;x4KwWKA1)I5UZ!oq6BynIY+2mX-eCeum7NMRU0;GJk6UUP97$`bf=G*_nda__DdH z9HB(#0%&^f?Tl13g0qY9g>K4v$rlrZpo{61f2jotSHI_(u6t)j>#M(s&ov6Wy}3|p zX-{~?Pha*Ue0@WKH0uzd2Au@Zb*kh`Xk+C4G`bt7{+`lKLa1wU_F9q=+qVH>-h!CP z3YWXyKQ7I5eH$u_TYMd8#F=-&Nc_5FIU8qoO7~$EgMGSGt58H-v z2=6qvOg*&w5ftk#VBQx}bXNK<{@U=Z{`sl-v6mSUN@gL#8G%N84+V=7>ACvL>G$=f z4ewp#{pC+#F{Er^K>VpP{<~?}sdG%oVp@Y&)BBbBZU#uDG0bU+xuKvqMuM4xEVF

fm(7pjGBWkuYbVQ*W=EO%p-3IvusM)apZVbL!;7MkUJj4-T{3C>m7sQtEIhxlK@fjHR)`Al+&rt?vcMtCHQ^iC<4e_ZD>z#_Tshh1 z$8z#BR8HojT_)Os>O-cqy`Mi)HpBDKIZKWfMa3WxPN#lSK3O%2D`D%4rT-Io=-m(Q zmI}vII#)l-&m@MnR0|H>B8BY8^cVTR{15&YR>fx%1`3Y_a2F*p7#zLba9wQ4JtS;1 zvQJrDMkoKKP)>Sxv5`Q-ye2O6c30sr-<#wg-d~?s8X7Sf_~VvuKwG;P5ur|6qtK6k z$dqHK8t2i_ShFgutX%@H&|ccaj;o z&A)L77s32;3Z{332@nEImNs#5BChhv9ggakmbX_5n~*kcJ>khycI)#h_U=AuBqc$? zE#FFPZa4;fvZslt27tdTZuZbsWl7{tHlUoGc@F){uQ&-()ox(<&jsrLP_%#fP>L(H zJN2^85keO9aO#>_Dcf>!7qw@3Dz>!^c7IIMmh)A0;obQ%y|lP1CU)Cu${oAEYNTbu zd+P1+wjpdbRG!z}!SaXvoa;M6QRL=olU5ji7hmwXD;AOlzousBJ|`v#Jy^$qPVEU0 zP?Pid!^vk%O*#RNro;&X(W;@iRcC9v8mI1bf9mx>mw-C<3iHq6S4hSEi_hm?-G3AY z1^(iO?tpq9btol zsTzVV+q6E-uIwp*I|>X)bBG;nMi~2mDbYY(a{PegB9Z%V+KhZ5X|r2X`2o#`ErF)6 zFKW-)hhCBtNjc=&1PoxTa{EIDZEDW1_O5t4dGcy7rXDS@3Ev<*m*BTpW8)gn2B)Ox z#BYCaUk}1FJ`BvtFFDvD)Vhiq&|{6v7K0v7`!j}@2Cv5tB}cw_hb z^yglHpj;PF6j^BMkIxaoK2vhYvUGw8L8 z^G@|lqECaeyc9o|m7A@YtT23neuVI=Ed#qrP6>3zz*#Q1Mftl+=y4QKKfXq&%XwkvG4x8EN zoC3R0$8u^9xDT=TZGg+9v^rmAxohtGh5j)47mHe4ga{@rDb&NvGj}T$69dr|OL6n( zpiQm5_tuJ72H9D~L}5UuV&-3LE{5NoP)HmVha*F+j!%vA{dh^T&ox0Tu@Ra^?FCl4>H~0xzouEGG zZT$gO>o15(3w1PS`$xhyA25LzA?$;xk!sgyub)8Xfn)vmxX}e;==r`lIPazN8(&cU zpL{2~Vm-}cYu4x~0ywP>xzAr|NIs4^0gV*I`vvd+*Veg=(9Gp53Vr$T0yNWWklFac zT}s{DU9np5KY1p{ZN;h=NH@(tJ`=Ww=EEs^;vl+KL`Q9J{d>_#`GR$80CRU3`faO} z<0bx`Z!_pmFlzOoGS!AT2vT9+vRKxlxKer*#89I6jNz6K%KjP zE4*$Kpr1|>1;S) zA)j|P+3tS~i2fAPgaRNbc?x}xZ#5#;T>`E^rtKH0coNMF?apK7AeZxB+7kbfE$_|0 zdRIZ$`TT-{Btsc8g+z@VIok=SGOox+8RRO#Xiz+9f)a(dH+{@tEPw zWTaQW7+-<{XA1^Fu8Ktd+Kx2W95?^e0{rSr{A+8zrXXdzHwcW^<9<{^uh0KDK&)lfbJx_Xr_l1cG*Jy8y3r2O9T16rdC5P*VHd=L)*(A77N=+qHWS zM)yE3?R99BjxUV)Z<`#S^bO+hy4rMlNpH10%*cvihieCN16U zseyCqdA1`5P@X#)!|)H2_uC+e{o=&++L+@-y3!-`#XL@lmoUptJI3PRzcm&ep;gd# zQ(*XetwfJXp@pE_+uz@)*bbmy9Kgl(W*tI0e`8xzP)6JMbdU9yjpe7K-|cV|%slh? zdbq4p8}}iA(eP@Wj(jI)IMV*zxj!%(3>hr|&y*B7J#?NZl#{~9tH)jfjU0Q4_g}DcR@v7_ zkm?|)Td9e0UXld`T))9@1@Ihl`&iCwdKc|$I@Djb5O7b4zThBos5nH(m!I<9*m*07 zZ#X;{?)V`Ps1=O9S2KQwahg%FH|yW?_kkW4)8xN@whj$KyDs81G%;uPm%RmU21rp* zQ2)-yieCDJWJ2J>q%d>R(f!n>tv?ju=oI{W`=C!q2Ft& z0I6<8Ivx&4J|ieE0eX=uyVoy*xHrKlZ{;2W&SXUPw9$YKM<4$I$?Or}zo`(w6{;d# z^P4{a6UCp!mi{#>MwnGaUr3*V9KwU=I^s+I`5te)&u$Pr9Ky5vcr<=Xv0c2BR_V>ORDL|SlHR~+B&04aVL!lfYixfK3H+CUGQ;h3QS!V|9# zM=$}PIdSnlS?nlw5Iy^~{lL_WC;$f1?$mppxnREYvr32WR?wrZ*^+lT5X!@w` zqg_xl9w@%G7$mzX5B$|K!>#{M@BG6%6Yn;|cf;Cx7Y2j@W@wg_3kv-aZSZ{p%FgGT zd=T^f&>tEnAXwK$xLSVftT0sl+w>$)R{z>ydtvlWJ=d==p%6A?GidA{iEvLLL^>>3 zSZ3t@75QDHH74@@%g`Pu869l`?KP_q<{@ZTejg$9sd)LpUrrIUoQ2R^a{ZU?XoBv< ziL-VFR*gS3Vi#O}wPc1|=l^v-0nFvjX!BvTHy$RlLY2YD#D|&ci%2u|Nyksv78h8h zT5E?a=m`lwoq?@}tF%#WWQiqNGGlqO>*kLk7&(%&{k=+%_oWVuG=?^xiA!bxA{dmc z&!oR&RHC4rf_|O7GDB7R>^m#8%m)KYuu>OFZp9!yp6vl07QI;5${asS4JRD6Ujzab z!dD@*y^E*KxTAn&Lw$U#79^Tn9^m+$TSI9%Bd6qe%)`=se6CcE{zjNr7 zhxy3o?Eh^$Fn`|nO4-MiFrAzHszMDO>7Q%p+}SsB!ywPq%+=3U%;7#wkK=$L7NPs5 zc3IIE`R_IkMspZazq(QN+k#55oj6B=YS>aZ<1Xazy|Nm)r#WIilH`D%waE#fArB;9_7ikJ`XN}aNG-}C~=}#kkIf$)6GCiTz$34*(7_r1i+nR^) zeHg?QJs&J?nzBU}C5%CGbcC(d{*bJuMR^k6HZ+EiBzfxqGEx%M4O%QQ`8j1MDQN?$ zw6`5$l0ka4c64{+Y~v9-p#@-cu0PKkcL4wW)h`KH zg9N&jSbcvZP1VZ|=tu*R?KM_#-18 zDI$^YnqLpg0TRM`sf5S0#9$J6asCL4_#M&8U}()eUvoLgCDQFsNkF;Dy75>_W?>&CKbrOk zmt6RG+b=0pv61>^oGLJR1$-Y1+1^_!fLQX7v)=U4cNq;ZFL-+%VG8vtxC7g)jeCLr1U&(y&k=&OHH5u!0{|!+6EcOroWZ*{A8lR1{-dQyg z(iC_`{po|Z+?PtLIJUnlOD=sB9dA=P76A%WxlAXy-!~MK!xi&TK~!yL#K&O7hEE=z z$6kuAf`JOItgIk}RFTdoWzKL;P@TZw#w+`f5yyfaOBpHf_{dG8XihKq>@b=jp%{1r zm)GyH-jmx6?_xS4qPeq)7L-6C)cB$>C<7`8(#WzuwbG{hM$(`#84OsWz1Yrfz>eI9 z<&D!5zKqVm3^=x{z0IsCl{y7W$8XbyLH)H*$mIUDhMUR=-yUJuYlDnM#sIvQVysV< zH+)>5^4BIS=9UY0O3@BIKx&ObF3}(qj`j#cN*B(~Cewgfp~@WAwV~7W%g*n0>99nL z%ugQ~ePgQ@#~b|Vbv?CL>-n?agJRjk&Jxr(wqz z*f1+rorRZ%XqkTe^-_9xX~E)07T;K(toqgYVOb0qBqG=u@mU>`C1qqvH_wBNE*Bi+ zM@5o(EyWBIfemjwEj{az^lHyL``HsgJ~;S%(M-+tofRMm%7r&NZ$(L?MC?DGOU=$^ zEbn|qgVF_gT9mARWJ9(=l^6`dn%?vc<|@N8Y4<{X$JVoN(_Mhyon&Xzeg)khOr_^O zyQ42Y*ak6BE(C380K;_@)|G@AW2Ox{-PHsS9t_L|DrZ7Z?F;9%OUtDPhe~V7LfxAg9sR*T)=+ zM+g?df^643$+eE(!x z_RF-iv_}Z5=k7fR!zp(0{5o5FtYN9TkJh^EyQ?ebo!HIsMfYJaQ}l!;=K{P)9XN@q z#cE$P-?J;|)E2Sn%fAx(SpL@@@R3s{^%Kwm%b3BrlcJ0i(B1#$eoA2>11I{;ftE>= z2Qur|!O?vj7#Qg1@Yz-Om`d}jol&2LL&ELSnPeXy8`8XQkAH?|XOEBi`#eAmZ~t5y zhnp|qk&%(=DRqMsGTI4}J9ea42=+#~Unqy~GjvwPx>XeTTRxuF)5Yr4p&`6_rX8w7F4a5a)+kjk5k7R>HQbpJG;@Iy zGI)O-HvF2euxTw3LQO{eW?C4!7T*+*D0(0Ovu02(c`y_ok$ zc7Qje)&`Dq2(H6NY!h#ZY``y+!KR8KeOgLnHqr159babuw;;X%^w{ zbpMj8tVI8;umPo!5F#kvJu_nkMOc}xl^G3;yG(aB?t%hr+_OwkXw)~VP-d|Uk%Bm$ z9U?##qxH+1Y;C(x3}kpR-NElSMyh-lLyR`7KTTby{HR*NxM7uYEHGj41y}i2I;i{x{P}85_aCROmA@7!@>>Zq)*YogUINGv>xViAqTaY23XIUG*L^m z097m`9TyRX+WZ^sW}pg@xD-kBCwgKfLMk)1k_@E7$QSTnlx>c*?M5*%eg{B62xv)S z@qnVg$UZXa3WkyPzFK7q!cO(&>OLl+9T81{h@$u<>6EbS2&sxvlhmxhPCf|E`mhu_ zy|Y*zQiqURT3QhZmyA8cf;Ame^U*}f z0$K5ApjD*!dbGzP#wM2el>aXyfCUrRo1qo^gNruL$8~67eKz~)bH$+A0o+=Q_d+L+ z>-5XWuM%gdnyB(mNHjc3Qt`)q{(((IJ)LW(14I+P_5>D6Q}1A4fKNIqEG+Ep5+T8J zRX2yQ5|Qn3xKp!aeq5^v+4x@WNe7Kr!^y~|jb zgx~Q~W<=W7h~5+4;L~R9HC0R`zyRyl+fRXrTB5+B&+Z~co9t_`q+W@7ha@`zVf=V? zJ*V}Ed{-cs4R$02ypQHm5%A0w6k$gzvqh1iQV$e^?{2=nJdJ3CXxmnD__@JAb} z6KT%{!0}CQZcK}4sXSP1#@#5)`=d7j?XKtexj_EoN3*xk@XysE)4BB6S_;DW>sxzK zyfDqS0u21 zO0`x{IVpu_x=L8XFMkX(3T&mP#T;P_F)lZz-u1ILFSF59-#LgX#0OWdIl==r z@Ic{g^Ot?EUspjQobFCLlEmOK(R2DdmIrlMG5k%oC?FoLwBM+&|Xs#l~?m5xbBUVNX0 zlzi2B_{3v#(-!!|KKO(ZW#fr`H_yW6kC${vMxq(}g}3B&GI&4ym-mi7K6&8GSgO=j z?UTdqf<3k8KolR>NVLz8-X^TVhfWcAMPY4P~q2F4&8hURzA?XIQAU5Z_Hq7YWp6fRbl1_pco1TVKfHkUvk39%!=%Br+ zi#Yc3&kRcJ&1o&j_Z*~caKsRDbJ~ue48cT}AK`us=JFyu8P5=TgLA~c3OHI0r^MO^ zd#t1zMIeMNU54&9v+Z0&J>DdF^c!&4-83)o_>rL4!SYB89Mx2);`Mc1n)ooCk|5+y zP7?`t89uCcUwpT!_zAb=`%Z+$z)t(OUn0h1n$ScY!fr8OAx;L;c#-ilR+g^exE4j-8@YXa41CW&=K0`H zBXb1F`mnl9Js-4<#rE4M%u>^uQ4qS0rHQZ{B1Tfw-9Yv~3KRn!J`Hy13uP$VDQ$#7 zx%E=n+K~J0^jm)TqVE@^bQ8`?yOinmzOf6-7%n?{G9~xy=XcF|=3m_#tp|pztKSvt z8WD-xI=nc$tK3dvT-&zSACqwu5uflfcTL^ysbUxLXwd6*iJKYeQJ9PAzrA!(yy&2H zrJMEqM=~{g{8!h`f|+!)>0t36EBs-LJ=GH<`E+oRd6lITUBnafAbzP{Sy05uaEy6O z#9^36g52h!Y~REtO?3YQi6W_>ixUiEkAyONXt;>A>Z;_(oO)qSglUMq(MJ!rw6$?T zxqE_uF5%2>YUTr*eOBq2ecL#Law#)MF*p)*6b3ie!+(m|ui8rYzZ-uvo+z*aZ)UW--@kab+SZ*7S4l<--qVF{FL|hQ zP1mM+M`PF7wdN`%>WofjqMh!-udxC;)5<9VOn(LRqbjK|#dpoXaEx(bTF+aD>{`SJx*G%dDcDar5)uiib`Yr~=W?EM}o2TYG8otJ? zVEk-AR$uw_p4z$^1t7>m|mIV-uDvezXSoJl?G!pC$WiC%>f3&B&tlPfv#I zH5JHy6x;ddu%|tj4d$@C;F=kD0Qag8)C`z&_*~A|*ktAx76xYx%qYLh3hcEh8Z49^ zflV^;wi`njH?ZJ&71ep6eBAkcV&7g;O`Le$v`zJ>@oOW|Q8gV-Wp$&iG&VZ+>T8{$ zZLxHFQ{tpGPmMj3k?*OnwN-TAHX!TWq&Jzv>8L?xd1b@-VmExPd9ATuDn+7Hk%F&g zf4|4p%t)72`Qeg0gAlb#d$R=+qBoR%)*=h)B_AxDwsFvmog#u2vzbOSCNF`%y2n6`0Mt#}X+S~Fl&K=(c()8V+T&8yaOqKHOf!giZF+at2g z@i{HCmy)>brd15H`n&Wfi?iDPgRw>0gFFMhDd|}2YFEB7iMr24H$pE^$HbB88kDnF z>U>@OGGOz8=YTcs5a(LP*T?fG8l0Lletf+7B-a6d3kgrj!KVs01PkM4{f-D@r1NDo zbdg7D@(H2K+MgT6`&GeNkPi<#^15hk#ws!EuHnz`Y5jI;;R5-Om~0Jq&3D^3$F4R@ z)2w$M(>h-{U_+dc>{<{kVP;>{x$$o9b5QL|2NqGb=zi6D4@bOrgUz9Wk+H75%|i@S zaTCodgMzyL<6TCX53`q3DJM+h?K+)5)@oSL7qq0=b1r5Laa(J@X|(B?=(4q$z5gTK z_Tq%85rjCyPZ$tv0>M#mkMhBRzeo87LPPua`;?yyTFwuZkHbm8LsX*OV`pd^$lF&pzuoq& zw>L}M?42pa()DKpPLJ8=M$1}Gf1)JxJ!LA=4G8;_R<(z`dLdyt z;dUVx%TUXCJ4VCJ`L2O9JKTa%-dJv-eE7<&-9GuQY&Q`W@Pbvq3)Yd2qDDpS?=gRB z@G3Ji^NZxg7;!a*6EufFN}=}FxsruFfy$%Z69*^>0pfSto=01nsklaVeu-wSs40r2 z*KN1-`Yz_kv+ykY_DX0*Z^`$S0ry)g5zX{kr7KtMaZMyUN!TFjINrgvbTk==}%e?m00`XpHCVr8C9Ap*r%T2da7Zl{^J4o^(qL2@pr2gP{o%L%a#3R zG5CboS?^k{VZ_zisE^#1zK_M#Mp!sEZXGW=mE-y}b*Q%NmMyOdT~oep-pkydcGNeh zOLUf(=QP>yi?8HWA9QcCRfP52A(!^r8q#{}y572-nIOSfL?p}8DSRNs`b>;<#@%!! zPva}ofI?kNe^_I#C}W13`9;fSVs!W5b@x){P1mp8eJfgTMTz#MSCDi>V1=sV%ipP8IbS=b+-A%vte62lFUG?TUS$gwtE%{ZO=ZD~ zmG0=f=R%w8y$dDG2PeH-1T-fzb?ppVJJ8Alm-R$3<9q(YnX#iHB&3$yIPSP6(-Cfis(M zTS(^93!@JX3ARtv zZS-^T>8f#mSK&KnT7iWJ-kaQ*!n~oZ$KDwmnZ!v46l72U zh+3(v{YVROID%B;PAT0dK{24ex|e8tbx-=BpmG8xUjgWlXZn#Puoekmuw}F!m%z}> z;NUY8QJ2Gt!VEt?iM|Ij^oJReht!6{Fyi6c@rMODfpAm4t0-86157D`?Q4ofQGuO< zwO8U9L!(7Nxf)edqmH03Cy#*kk zdLsW}fT^FH-a;T!11egxGVxD+YgOztAFY|FffvsM5)>ccFUfD@_Rx?5&}@8G+;I3L zu9=3wyEpamoJ1N$b&8kF`WvzD*}co>C48m4ZkBg+o}*QIDqt5;;PAEs-Pda;{-MJ) zY)(;JezmbiP~^Hl^N-t#F&^<7^tRruDVg#vP1}8K^fvYo$$pBJvEhYdP>m!?2sw8| zz^^s0zQqi-mJ`fd(R~eDL3V&fYUeveF`3M&$DWlFJU^AbaI5MnkgqEL(YxCff6ZY* zjLvMuJ4i8W_b1JuuA+p5Z85sYcQz&Iv2!5tJOghFnASAd(Bv|i(7h16!ar;Gu$nGu z_+?~u-9LDRC8LeOP4Gd9pd_pPJAT6G2zY63xJAhajvkH8V&uz@)Vk6md53RA&c@%k ztKpM8hP*&fbpvt5f518|&Ygs#AIYVa;@$%^e5YZvKdA9b#R-X*_vjTH{Jg3Hbg+U?5Y8+p($)Ej9Kv8SdUq;-Sf@Z3w!|0(zjg7H)z&U~x8&fZJ$&Yf&NxKrngs(VH5 zmUXFVuIrk$%MuT4pYFg+SZ{K@-8c5Y3I69V+YC2C9ux=b3snFy_e4a`Ltz(GXN@EIR1ZcrK!%-{ z%nQSQPQp*%6QER7z#fJdJ~`lb4Vf1iJgv_FD8>yqYmyt9Kku7@aW#-ZrsMBX_c<`) zF(e`e*pb(81hiHQL!N+m2fjmRZt)15AXRv#0D_(x@z*O5|DymNtK5)0BBB@QJfbVY*NI3XR;-qG!a#b2&^OABPA+smY4e8kf_J2t?|I+6_3jV*cDU8n+=39>> z+E|-+s5>pTPG&B?45~OX_llB3?3H)empt=K$XHnER^HY+9$m}ukVe)z0)eN%`y^9# z`CInvaB~$pM)9km;i4q#R2C@mV4tu(cqrf_%zB4KaRN-vRTYd^X6^R-a!+vv`e$1u zWhJ{je42IraeDk!KB}krg&bGDo~9u5t~)D)H)@wh38FB?;P5-88-_BFLZJo}#ZePV z_q#(T$Dej%h@c&{r2Y7GVUFapma2-*#lc3m{GfqN`U!jgjPZsC6PJZRXIy;`vj1|y zVx|{GU6Jf|DT|r1cZ#8Nb3kX4tv@?NBC%5WGS5CYHjC$z8~6!$uc^QiMZS11jO;aY z*cuVHQlPrw+&wvMzl`0bqa~B)Bn(reuD(6d9Ny%at;_C}nOe?VgNo0(d4KSw<-(q{ zEU)+_V%ntTsj|-1UrCiFe~a5fyV`%gp@}xHr=va_6Yb_QZ#)1#=E09Ef&T6vl&p1b zpB%b#tv#82qcOXaxEIo6+S%R%Ty*R>-J2CwiIYYWMe=)xvc%U0Y{D|MjOb(6zP2$$ zl_Z{@@C@Hj8&b9lVUJxBZeEGj8fTNpq8Rw-QfB(TWDqpjx%ojJVv|pTYTlY@1FQJT z5K9FA_E1tPA^zJ9@zMlM*T3DOqXu=Qi4PQlbKqTfYVF9Jg#(8 zsc%2&4;xuC(#-Z&2tNsIJludY|5n-Wm&m+#nAy2tZe4$28)rLqWbi;*i-%fx=DY^| zoy(^9YQpNRZ?VUuPQN^L)KtF6}b3hvojp>fwTG!8y0te?ejJy+SZd1%emc0i1gx$Kdy+ zwS>Mw(IJL5>cMVJ&k2XOb(wR`wb9uDcJ5;H7M(a_@73jKPPOLqis6lwBaVARnfF!*x> z6Z3s&uiM=H!^0eB%R3zZb~->C!%uJ4n3wBR66XhbM2EvCyemq%*bK?w z{pM%8!t74{6*tDfVeu=Pglc9F$m{b>K=eu(&o7o<6o4{(J{YE!5J5>;*Z=Z)%Z=<^ z@$dLqW4CBZma}Eo?ou}io7;ARdmqGDnw2?>^Eg292a~1SPTm7CJ1=V`VJX6V=0UZE zXa|B@G{uw8HPs|>Zgo6gk*6!| zlUggc__6&nYyMHA^!J#JDShX`SIQgewWAUJCNV-aXW@oqgKTu!Z{*Skh-w>Rn9 z;?h8Ng=bp7gif2zrzgy24Z3eTOW1OpY+8(RFa8YFc7rQzv%y&vR@bXd`AsVedO};@ zBnisloIc&{X{k{eXl|@+bMDS$sm<*r;0nOU@}evLgJ>c zpNu3BK;aQAtPJHwRp90IO<|0gzXo=zo$%M00tIK~v(^EK^T>!CXn)IV{&pVEl9MiZ z;J^2pNz2(iWRG#T%pS6e-4?^}a|7BIda4{j+mgW7QqlMXm2L~#aH8AX&^(p9VA~oX zK0Gtyq>vi-ENB-u(e3J$6I1~XjiE61CIm6rG{8gVemLj{gQN{bRVe~REj%z7!?68(pHF* zK~BMcUEy&7KW-&IN0o|{3bcXhE|OZnya%u#j3UwkloF}HWN|Wig1G`g1dhUK9jS!B z00(O1#Cr|crQjELwO5M>q6J{ag4j0X-VE(y@QZn_Mnir`0>*6HaZiKm65AIc;#F6X72w}3-BK;`2X7$2s7+iT7CVLbIYCh z+c$4zIro<7Wu@k^Q)}rDp>)l!bxOaY!nOdP?_4mjr0^25)0!_{o_4E~0)7&!664kS zGaE^HP2gMWbN(9x+xpOehCptE#dmyaI{cgz~>x`;~f@GKx=jLblU6D7SZS%fYlhbaQ8r@9J+8 z5&jJZ%kPVVEb0@;q6!W-b&7^$9)WyF=5>!T9%8MfN(1uR+sJF_KYPGy^^hn4E#bMU zDZ62##Xq}dxPqTT(i}}VHKbB+uTuxd$clD%6jk)+o`I#9b%E5OzzsON%TV4gwtZu5 zw|xHX+8S6|9SoMm=hFO9=Hb0kbI+1#wyUEb_axxT7P z|2e-oLAsnE{c$f#kK%m}{o$Vlo8LZq<(*G%!b!(B&D^L~(uuivBY`=#@lE4F#_cjS zp3{YwgUNbt_MB+$NDH7y(HU2*zP9@5n)EKqB`43_MHR|g?wBrd^*7#U7o4QEC8FAV z@G~a0nloY_Z+(N~YAi3w968y_;N<&CX)gniwP1J>+vFS_FoZg~RXGbU zpYE0jjtcHsIL&% zX5?PhpEBVWBSt&C9MHonq^=JLd#|`S?uGh9CUnaJj~a92MK(PSm%sKU%Y?35YUQVApK)lf1yT!6m_aFt@`Clbq|CQR?S9r>mHnZfr@!_w zO^0!xnT=ML7x>y6$@zETDE=25fAca{MPA%{rTu{FaB5l+RSZ2iu1mY#3|)xb##=wf zo`gcb!`Uwkp#pM*sn4W{CP+sN9C_QV(xWhEAEpZWlitVU$i6G=n#YU9bkAQs=2Qe# zvd%H#0P2zW_Q3RVTicEU;D80Wvlx=?=}vA5PW(aoGrX*O&!d3qtCn?>M&z0_^K1i; ztm7pF9pj!^UZPqV9-K|=a#(8Q|qeAk9Wt}Rk9)5Vj&@wovm@^RDD7AjN3T8?jhN(RqBV|>a zw)QkoHf~N&e@2uLXXAF_mA9I0%2@nc{u_=~U7_ zvcFJN+I41Nf{bvFW!VRFzkh$bVtrcKYUu^+3#$Z;VQy=2LOsnW^Tfr2mpSnENeK#& ze;a&g)09y7xBKC8$i4GdHPevfyL=dwC0+i!|C6jxAxLsrPsVF@T57GV-Tr77UdJF_ z)XifR-bvTEac#vrhV9OxCEmG8LTJgdYSb^f>kK&giN7FIh3mnCfUR z$E4eD>jW2D($(fTyE@c$_*Ptdy=JeF`}Uzrew5r&kL$i_e{XCrL5h}o+J7V4UUbaE z{rsrwjb~!DwIi^RMaGhpn8F<-ovwS1?5}9V^$$CQ^kJ77%f?I1X!qs=?p~mDUJ(u- zA183Boh~zjBmERjU@%KL-8ypF74Fv30}!nJB%uj$(AANn6pI)eP{;poaC2S5he_*z zy+h4V;c1B`_h-`3_}0s)Bh1T7~B7-**`bew1(!c4ebU55nAByM2dsv zL^r0Ev~|BXL#o2!v4DPCX>Di_^%qWZTTOmhx2cdvVzwuXbz17AkDaK0mn|0I!A@Qa zu6x+3!vrYSM3t;HuAsNXWe)B{%Ly zc)Z=hlz!EqXCC|8Zn2Muv$>Z)ZydbQu*keIC;_icRq029hkspVx~UH_i3_P9jggKi zxQ<50Uqxpv7mj^%U)iIL7n?F%Q&rqJf+0jwT^^kP4?~D#5J{TGfq5x8{R^7K5GLm| zjw!CMVdCF*G{aF8uGWQH8A!>JYTAYxo+e!R%ypr=Q1Ib5DZP=YIp`HLSIN@%*)E}= z9&Q$i%=-^K`s^+9!}Cj#mQ9XTYQkFNcs!qHI$trhj{m0xLF@hv8gIdEh0_4V;VU)N zHbm3<*8CpeK0nu?l1;E0Q;_+6Rck6QCr*0O4M92;ZShO?&YJPpX+^g;g{K5-lhvf1 zb(`FGvQ-ul4Vlg2#3_T>ZWpDl0o#np^milrTh;Ln!`4FIPiL-17#UIbH?Z{kxki2K z%c)mjf%38|QIa6~bP&A`e_b)SD8X`(eqS0m3eck}cJ~YjZ?w9aGLJ-0$}R1>KcwJ3 zT><+acjSUm=K&<%kK1zss0oxjE&nSceVtXP4v%qMpQ*f zTdK^hqSuvWnG0E>`};P!hK*L<*Zai?jvE~q_0g?&NFSx|-4u3memfpyOI^L*dYpA{ z-Aqb6wd8~Kfn}w}tDFJx55>GKtSqdIKjzPEHa>UU!)?!UCBWL^zJwDeQE3BiAcRfS zv?2=d2)v&|1=CdE{qQ2*&v)kQ$?pOC_M4LS>oe5B7Od^On8ZAXvZX*BYp00S zWxGyt(vz&g)xH`V#Skthc8&JmRNEfS4ufo2PTRqXv$vOT&-hPXT9UZZR;b=IxSF2+ zp)}gHiQ8a)533k)=Ahc$j-N)&nIy6s-4kNsPDhGUgB;qyjI;RDj+&A)#VvS_;3<500gG>y0J- z`i*my%6KD2R_9M!*6eoG*G{TN%kp<9=jLS0#k4Tn&La40qW+ZAiP0+Y!$n6~D$0Ai zYLYyk^?SavnK?T9;v#Omh6WeByFbeh>ZsTxf+)!+7d+I8skdMHFojUmj(U4wvhT)t zA30tZ)QBOpWVsPGU6ni4k#=&FLjtH_tS;_a@&!Vc^GN7}KCPmBFj?yL)eLTRBvR zuaEQ&ZEAI0An!F{(c5R%upzD-F4!EFhgi!)5X7B7(hhf^UTOPa%iJ8e^VS)?k}v!B z^{e2<+mH2q_8(Y!p1u9@?B1ri(;3-I_e{@reRUTN!x=W8C04yPM(OuH=K6$%+28$;@JyV1h_qnSH>K6=2X?7Q>|N>Oei zL!JoEpeQsL3}&qh&M-VzW4L81B*K;;!@E%y&`2gBKGRfl^-HJh51Z(*HhXK~GKSkJ zGd0cTXT{ld^pMN{e|0FpoP;RTK$K_*_YJ?~Xs9i0PL4mw#(Pg@45@Ey8O*#tEy1D_ zPFWy&SDGS@51#o@s7H{mlH1EHF}8s| zco}sAsPu@?>M6h8q{9(w+u!{rr6WToseJrF9B22T<*tB{S?W4sxs0U$x0dVZq0B;f zn~6s9iuRRwN`-fznC?6lJ2g6#b|EKnTFUac8hLY3Tjq)AzbtDLmaSvAB&{TvTpRK8 z-m4M$Qujgvc1vP!z&MlJLs8BzOwTT;^lbFw!v*z^8u6QnVmeLx$Eu+LQ`jQt^tsYN z7`Te_ozfDR{iZEIl#@SfLZBU+lwObSBjbo_r~g0LDNJ6Pl(EEf!Z)Xv{xtkP-&!{F z``eRXp=j~Pzeqq2&Ls-Jlc>_Qa_5n#(a534I+{GG!#sJ8IkJOY=1*O7a)ge1XUNO< zBdN>+T>M3s4rl=ugk-=zL-#~+f~T{XvNcmBtE0&JC#Li`^X`{wfh{8ss2cyfm)JWj zknJQ-%u;~yhk!)>Iu+#;T%2_dHOoeec0>Nh9n=2HZ$?N&N19XqLFslL`efzRV-DcT zE5Q@r5A&&cBqgC!W4Gc^Si@dxRA;F5w5uiUokeh0Aia|#t7LcCD{guK3S=O_P`n&T z0O$eqOG^ukpFrm^K)a1>awJS$mLS6!xn=<{oPm&qWGZ%$fOHmAp4eE(;U!;!H8^+r zbsD%Veit(T~Q$|NP&t{=WgCZUVGbs;ZU1O?D`n2n`$_;3eF5c4g@qYB+sB8@1E900S`JW%2t&iWfH*vdOZ56GH@LKm zTDr3x$&$~2=TT)cc-@2EzSBR5Wd`8%;G`1D64C5GId9$sg!> zpzZ>m&EQ%rnm10}-IK^j}O2)Bp#^6A|xiH^&| zfAf^xMJ$!QGbJqoJ+}`$62WXUC$!bKBKmwU={SJ`)@`L? zyh-OE&x0J=#{u8^@4Oi{3SlkwAxRhaoICjrp>TYB3=Dnv(IYe)-A1$?5k>|)U@dSx zxihCy6~%-%1+WVy=`OSlHs*0%1k{FU1-LwL=^gT0_zB(rTI|Wz@q3S-SCm9pY}Z~? z$ZeJ)yaO5L4!FNB18UmyNdCFynD%D& zLS(J1ILcu7IJF&hO|I+b%hr87|xgE{!lCG`Rudh~uM=8$5B2 z<;i?PSmZ$P4LUFH5#T`+M-i_3R@n%`p-nj`ogwao@HCn~k_;})9L}wf#p|OXUSguj z)M7_E-86!`xP)DLb`#=T#qviiULk$^w0B##F?p-n**lrjRqoS3KX&5afkkFvH$i2} z30gs}KAdkffbn`tlmV*d4|BNXr<}Hb_)P*~6EKVSG4B}a%TOVQ)D3!*c z>|*E_XqI%jcy#wy6>q~mn3IRm21%aJct3-GXmmGTn9n5mxZ@@KeD!+l$vVeV7dOuJ z;S!!fKPXC0X4)Rsiz}{!2^MfyYT!72_)MS2%&D=%m57_3);tZu$XM@efuA2ebS2uD{aW_rkAzv;Jv(QOZ^i~q zv*W>K5&mK?g$1`_W_Bymy=~1UIxCy)a;6-n_8Mw!{d4h!g|qbH6CE>NOBJVEdMK2n zubM{h-dg?5;xUL+LZ>Y~_GJ?nN^D!GVf=U?&>nauN+XqYuUNY;Irr}kL~WM*na?o% zzG?2wmBpvAVk@_@kVz%g(Z=VvL&5*!7<3k%t$lah-#e@iVcx6}f8#bSGIG=D(IaRT z#~5h9*`okr6#*#OrcU zW#|2&aG!sUk<03d3x*i?S`?UyMuM653Z);vpLAb2CIo6(j6@d*B^{7_Kdk&} zF-7$0>vkHsS?zO~Y1W*U>`rWX_!2+3Ob;^d{CeuZzNA1$UC!}lX!VTgcgV+;f#olW zkol2~lYQS_uJdNAh)|s#TOlxeTum>Bg0f!v(uIIXk9sccuR$lXbL`A*dnA?3huhmp z%A=-1>w?fhR(yNZr>P=F@b`$;HMro<@6bYlYW7sS#JerjH& zc%;>wmXGUz!%@!8JzGxtBY z_?B-lYq&C<25m1;-@m|UDapT(+_vKG5m7oSWU&84MUCyOf&b7$`Cu)r8W`h>%WP{r zSUx<+M&vLat~D^P??b~q+zvcgofE0NFy63=548N3RK1W8<9dAHSut0qV&NuPXicr? z9aN6-5HWN5%;?s7Pp3Hl(w5GUo2rhr{wEbj?~Fw;)}w~cAJb3$wE~Q;iv6}bUqewvzD^%K$(YUS9aBMZTBIg+}BR#Zp(FzASVi2aQ1c|e^9XlUV`PSOdvZkC!rg}R(Lmbp1(63%*;XU!7G*DG zan;tT=@+ZorB$X-M063p8vcESB^%afp{2h6JCOfhavZe1k+h`|A$BzgX>-d12%*Jl zF;WQCiYW)Ky_&@@r8Td!z91C11^hqZD~aAATpA178Ovep1x=YBarr&M6s_gOpxHC$ zL8yCaK7)DL%PemT<7hSet*hMWP5nVGtva1#gWj2R`Lo~SG&=Eqh>sNXzL$IIpvymA zklXjVNNM3p-jtfz6<;m?#AS8O1s5P_FPo^Pu?{6=l&%M|lkTCWpmpR7{)hBerm%Xw zO`I;{3y5QsN^U?H?z0<5!=DAd$kLaHeW+l5;Xed_T=~`SHkW zw(Rnbxvk682oHH4B&{uaU6DMfAPk}%2+s?I%046m**fC$jBV<{e8m*=9~M%n*a%$A z+6MuSUrf(-SpWdbuvRXR8%xov(1KgMvZLse;b4~kQcqG@Y6|e^0Y{ysg`YZ>i7{C7 zzcvSJbg~;N-kWSbHjrQG3G0V2t0#wpzw*3y2C=kCz^0n%`U`C4Z2Vz21D$I>EA%BX z)=vdk0QC#U-m#OSSP09Xx&jw0ab-$ZcenasoU{)TfGINwqw@pB)|Ytd)q?|ZL!>LnxDI<2XS(gOFQ|VqusE)^xONDacmiR!M)Y~Mhl_xl zJdBHs80mN>sfWb=A#`m@%%P21W2i)L6aiB;T6|`6Hh<17#TNRjZBsjpqHrH=ZU+x$ zgSVP+$gxt@Pkk-Dal)a1W3uq7X&gG+lWEV_Xq*xd_=g>Gk+&aoo&Qr>hcAJRoUe&&?%Fw{G!1g~q6b1k3h)`$lf zqy5Ln2l>?Lb_B~g3;nc~fdX0B^zrXEm>-dgxGm{8>K*p?R2rH0B6LOn7&03qdBblR zHE8phC=WQ+nt-B_jEeV&-tT6lr*lLGv7CUTnTZv7e&6c@HI+8<6bs>8BIZ_Xx=$Ra zckgZ2i4$MV@a@AnhWCY^f*OH{U7;gvS6Ok&2S%2P2Os(mf=137BFFY{^(zH4KcTmU zUgx7wZX7MQA@{_npDj7fQ}>}DVde4kPNQ$kw#^un?cYXdyRcyLb#^-&z3L}Bv=t?d&;ndJFhQUmhI_dMtrG8u+?)_QMTLT@e& zC8g8l?~FkO$D#3g4bmC>-`3g$EnQ%|S_73NX~bIyjR)|MMbOt@P*Cv02r>rW4^|3( zN=Sj%)|{o9%b*%L1Ps72wg>^E=ReweF=+R-*YTi8Bg()W`{?dUIvL%c-dO?ks}p&w zYarTn{DA{d5Y{wiEDg3EIn0C{NDkOwqKcKl=3r;K31OE`yzw#|q#cwDPV}=#7U^v~ z3IO8SSHyV)Ye1oXBo|NTx*|zp?Bw8U|T2|=f70{`%~_We!neF zbaerY2m>f3e>_1aCVH9xP_$4lNo=sJmn@zd?hcUl0N?0{Kz7L(0m4$n8cT@?6#S>{ z*ed{k#_}Px-Uu+Vc4l6JQ8S0j+*)V`%zfedxjXh0`b7Dhn1n{0R&slu1nWtTOlRy^aCiaBdJq zisX9Wjc6~V+3Gr>m-*VSeppH z8u~kmUc9hDKnqT&Y!vT271>$dnDOrEJ3Fv^NzkS7+R(TI^Mx^?xXkp~;z*STi5@WF zk2?wH^#TgYa6z7aG*Uv{C*wgk7b5MaY;>h;=?zTYhXQKL-ts&VUWgE9|ADO3Lbca1 zACfYl2o`=I9c=&Z)(JAN7nr0g^{kDN#&Il&aMdKU_|EeM2vttozB}sm`VW6y9R3m8 zJ5YG56oKi)e#t5xc4=)6#?IeLqr8ZEPFO->u*pA;NOaOjiXZO}-j1Y|G_{*aGcaY&6v$230b08#o`&DvgytF951y*pYM- zv9HWi*KYiKLrC5rRH>k&0Wf{$T8d+Y|*0jCE(1{l`4 zos51S0Tv;ORksl`BD5>i^LAC0rk+Rypm>a$gAw$qa;svw0fZ)~^lvxt!bz=-)F!b} ztp18kZ#~@YshSAjX$|htek_k5C!?)Ypz`4f`cP=K5!Oaml4pv#Kyv&LVYWw<3PI*B zAU9ca0C-jWNWX2D9+hE3tP4}O9cXc&!Ei6qcjGxuy$ae@W-&*ZKwS;?P3>csH9 z)Md7fNvYt?#dV9X*(1=`x8t1FNEfv+6G zL%%`S^_GY2lE)jiSI4!eT_W_E>K$%=0ev~;>P>9=Q;h->#g*oaVXKS>4(XXijTToT z1%YJ*MmRUqXibtg!uB5qf#>}p==L?j7A}7ZW_%ffrHKq62T;+IQ&O4m zC+J5UF~`CSXCZPGc_3Y8@IL4kLe+q5kD7|nQ@|Jj)#LxB19Z1<0%!!X1{RYGA+1nn z`&>ejTJCvUQkicvOcY55Pf+t-#N<~z-pUf?W<&zdM);5;de!Yq3F$ed)QGk_hvGexMk+i5GvK97v)><&#?1*ictU8#l@*W7-K~7l~6koJ5X~(63g2e5da=ibQ zv1g1EgLZ9!X%QQ|>5@Oog*;lWh=j*oHZ(e~6dB1vZhuENpEH};L(tjn_>JMsU_}4w zh^HT9(;`5|=HooMAP~GFW9X9nPp?0a0U~Az#|zzOU%V7ulR=bJlYK)>sum^rziH2& z@Op;YlajlZvqV?f=W>9j*0r;l?ZK|1?VKD@_RX-K0YPVm3ar5b^i+W-G@K} z-l*j`#Pl~qawHjjz0rrkTW27dsywdtwFDGkCg2{1+*1&`t|0j1iHsPMUt#V84yu8u z24QhQU8fG{*(W>>raiogB=Ua3Cme}^bRaXLO8Q_A)_@Wl&vAT4O9&)|{=%U^@Z|f? zFEfz5uHNj?;Y1`zY27xyA<`IiopPnoOuwmWykrSr(CWh~E`=ucD1vmEO-95aRbItb zB2ecm_#CFowj`(n{5Jy)c?TA!B)hB3qp9eBcUQJZzdXn8vHLxKVlF*99IoKd8OB9q zn{#0a^&ccFqC41iuYzdiIW}N`H!3|&vp$2#yL{}sD2kZSfW1BobQ*v%pVt{~xVL8_ z$X|Yw3j7B+9wYtD9cyUoIHvaw-RG3Wr+&TqxYs2-wakHE%T;tw`p#W(0mM_M%3Un< zwGfz`|8(|Uyr4Twfnco2p+4UEw`R+oThQvNd}ZUO9#MX@Mc#8H4!x_P(e(6)&fq^x z=wqbqvCr-O#(ytDwWU|aakb3hKeVwwLQWNP z8cM(Pi~y6#+0>XsqRM0g>IMynN(99Eh`t0)IFLK2alo|SMev+jOm?4%1nQCF1jm)k z&5#C|CnT^$kR$Nk_qvQF@d1^u-&xQ?#nv#lX-5*J%Sz%+?+iM7gEL1%i&~j3->y?M zAWFCp@#cZ`{#qj+jo2!rgZexNv2-<&7ouhg8EdVbJX5GYRs%)mhYf~0twr6Zc+e1C z1MM1gv^XRo4pbGaZ;+X6z=EU0Wx0samkB`iS^@6Ux5CAXEvVP{d%54k9O&iT|6-d@a-3O%6$qH;A~NGBW&w zKB4E*lgjWLpEI)R6=H??n8NfZp%dkAy_kwqPM|qs2%3M~PAj9>FLVA2JCE3N44k9) z#&t5a=;}!^q4YMxK&$UCvUh=IBJ@Fo@4cdZGkI#?kkZS02U}Gqhi{0vZrgl>Q0tz6 z7#{SM|IM@CVdn*L;N98)Dn^l|68)9R-rZf7Hsj_E7}}F?blPuJsU#~$`JY6I;qR?Q zRGm1dBeYa9j`+$IQ?q7V95gL7lndXz==)savKMfE^Ka9SMSoPHBg%E#-M~S*lNfB^ zru&Pj2*O{420VKJY8nzg8F>A6c8=$0ZNHHIq<+tYgoJ3=5_}n2ZwYnWM_ct^vb8`m z1}iZ1=rx=UVbim$<5#h-QHZ|mN4x14VpWiF(BW>J(XZ%ImCCf@u169O8RYnf^6q0n zhYQM1;h=fPuIg0*>Q9D=f&6)c$68=W#S!fDo@vCpyDXYv z>`&MpKd)Er4!GDCkxmUYY*2FD71BHEh?q^%x|R4J@AJ>(>!KfAOMmW>Sz2rw%_x++(-%{20!MKpVizrj)EMBJMK%IuzjNwnMQ&H&datpv-G11Uf2E4G(c!+ zxH;EVtFA_jF2A?}SPRVq<$YbHr+wyGA8Y-;8z?|YjteQg5qz>C;UeFLiy27r3s^9z zZ|l*y%+TlG+lF{I=O&WLgdu?rWcn5gp?z;03K(mt~ zRKN0eZ&Bmy!(HE>+IS{Wk6Iikj*yS$Z%B~zNxJ%!fL_OsoK!;MrDuO`iEJ2aN1?e& z+P##ZIE7hU92#7d2vz!W(}(5ehlu?Sf!=6o+3jU zhT9GRIT~0L{)F#LC}p&C5G{+{RP*JyDTFIjSs@vSG6W?OfEIqOxN5&ewWrm~QwPm& z(W|?+QmCA%-cj+`vFcW|GxQ-!!#+t{lwPg=Pz^Fx*Z1#=_XPz87P<&8g2%x@#R}WM z0!UF-Q#0n6^k)*1cIJf2w;7em83)9jnHnlObsNZN2sAD20#QpxAS&Ou4au<^5d8|R z(nq%Arzm0E{5-*lv%;O*K?`+s9s$QumE?Emm4|+@c8Y-@Ze_GMIZ)KpL!$rt*11>dogs+ZN6qy?;y(jWIbTXgl^~75@V$ zJ~aeT@tjx5(xiTzf+&OJLD{*f%g`$8lxmqn<|?|#qA!ozqL)jh)k~7mv)a%rj7>!r zQi?#L0jr8lWfPK>SkK*`&Olch&{mt)R%eUs`44zAU#SptEXf70Ht|DE^+Gela(6!4 zv1{YZy|i%5t-Rnw$wl*925c_D-LT&>puB>jCuoiqXme_b3nY|6Pw=8iO28U4$$NQ9 zp^0e)b)WQ#I^y$LOHbhyX+pUK+}H}yx0N4MKJ-v^J~yBYFr(!3nW2q>3zu28Bu0|x*s1-CQ11b zcO*z2d)fTL6trtS`=1`Rzm?*)o4SRlUR*817$eEnbGRB-$IupMN}N{Tt)5q|P|moz z0JwwE`m-4ztog*gGV%I$BV>ZiAR=s5!r8J(ViQ&kUu^Drcj<>8T{wJqnc2b#7|o7B zm|2vsPzIjFh1+T7lLASj9IJB1j1pO32P=Jd+T9mc$t- z{t=b34uDD1?j{qQM{*=XILn3z-K!|-`+NDUW;%%IgpbHi0S_^Um62z7u~79QtKglByA$=8-dA)#gfo1_)?pk3sxsO$bnn zW;mw~2Mxc)%Fk<&XMu$lKJ9UuPE}9FPv6seyhQYefh?YyEasGsD5Y2vTZYdg(m&zF~5q%H7#74tcky8%m?t zDy+zIpb_L$^j#gEz@l*wrdp?^s|0j88g?C!!g=?UfOFTU8*1VsL5UW2STM%nK= zo0^)m;w$#5T9m{n1%xiDkUOA>2Q_C$sQ;c!DNAD}25sitjae zLh1Jkv8+N5C!XE8t%)!fU=#TB5kVDr&jvUJriA67-NtR+eQEr)68N$wh|rh}46Zc= zA|KRA{Pow*MV_ljz)AB~yW|q|w_TT5RCk^0WN|RGm#d*n$wZm4JA=wrAYcB`)|kP; zT_Qv?VB3qWb<~P1B6InRz{io!c*%jGA3(co&M`gyxe$^p7g1_C6F`Bphyug)>gVEs z9O!5V+*Uas3Ed}i0F;Jr3Kuk&#v|yP>#1ceJ5M)1Cd3iM}i&f_(#uO z&9GgO#L9{T0BGODOF%@u0@NbiDw9TeA!lF<{lFFWZ#UOMuL#4?*&ZPAp}5fd<$5< zBmpQ0-hg{=WwCcZLBb2$_70fkoV1`%W0QbKoc$;gbR2fRQR=YBYCqTct%DiBBhNB4 zs7G=V(eU$%RoyGHP;(@T`^KP~Se>h1mjo{OZn=}Kn2w?T*%@k_6!3kq%A~bb=SKto z?gbbZ_S&59X`-<%rw7f$jMZIoXk*3(M^*p$?3WCtv?KAx$uzb63o_slB(XUmV~C~> zLfCC{K^}}4GG36a9PVsND(Jpf0$CT~D^49T{&(#R3e1=imC?bEc58s}&;Ems}3s>Rl^4r{1i|ebA)vnQsR`JC-DOBBiqTQ zU=|ysp8Xj~4$+JWV&Ci`N2VTmJqgx%9%YvKv41=5(QF5|Njr9)Viec`S3n=Kn$S{|U`+nPVMEQ~cSP}-2gr{h#^sS$ zb;@$*dw)Fz5r`qB<)$$B-^)VYz^yWD8M$|bk zRcFpm4<0G_vKL~-Pm1qh!3IY_WMsIY7Xw2NS@0I6Sq3M1IlRC%QqA{E2T(q+;I2WI zQ}whH=%)u5;)7erooJ06n42xQ@t2nY%Bwi3zrd6cY}#j#?Q=y&1=VUItxQm0V_!|R zL^u73^zauMVqi%tDO5i`Ox{=;(f~P3hMo24t%~D+LFq$cUj!U@OCEF!x(kLX-fF#3 zZ3v4JaXR2fKVy5+O>!YPrmM2H5Tz|pp@Cq=a~@Z0f8!p4f*2rbq^Wo4d)oZ)vAV_8 zaBbPm`r4qFauJTjhoR4JJJ5)^PynsaT|8pii-`8J2y;y;+z3)s znd5ReR7})5?>>dtT2SxS2^3B-;R#AE3B-ZQMR0^^SbhAu`2E2ibPFP2yv)U@oqMAo z@Ou~h5{p`1(rSh9QJ}(zf(k-K?)=VZjZd=c&KlLnQ_~Dcn&N)2W1Oa#=-c^0Nv_m! zIS6Rvx39r9czuw8f*(#cHq2*N zae(D$JIeLY2h1zblX!EoF)SHkSHx&&!g)LnOHT*lV7?dHQxzF^;8y}ta*s~4Aeuw7 z1Pd8S1lTAlb3+I;u&$`N@5*z}k;ci1sc38Bk*6QYz(WJHG+z%riDkH*?@7(pF`Mak zlVu%F`W?VxOQDiw!??vJzY?dPV`aT(`=r|AV4V)^)%#q3TgWYGFJHieV;2G^Qo1#q ztxQ#-A}Yy2ECw`0{Ecf6uY-=5KCtg_J70DG0XxK!-9SeiJsNp!BE7o~!!gk;F z4IJDg05>L=fCRF-Gwq%s=(N>xZW3S-TS=mTQ&=_!Y9W`*c!Xe)Fxe8LWqAwMq}nQ3 zzMkaZ<`gmr^z-B;EYG}+s||+$d)w;L(Jxwgfvao)Am)OU?+N^^_AX3=`rC%Em0$s2&kS3kFcn4eHZ*vB*)%~ z3h&J7q>hf)UDR0-hfv5UsKj~40RyeaM^5xFx{90>di-W#O`pn;-=V$eu_;MGhTwVQ$o`z33 z29H4uq_iE(civvbbp|MJXCg@Kq080kE!3QNs!FE1p=cO5Q?Gi$7-4(a#&C8vcmgrv*V5q-~cRkD+#PJF~vVia3VD zcG6huK``q13m$kWo1O7T=W73_!aRIM5~m;}v_58t_`{k{_j z;Iq{eO!Wkt^KepjcBrfviXv(+&ahK|IxPrLAqfUJw`ihhjOhV?-JDJ5Gw-IP5jBE< zCNW|hXmE01MAqC6XJ+`E7Xa6f18Sq<-X86}2sJU8-#|$@j4yEI^ z8OCch*xS332DXw5E}TE?6$i&Tsgv>v;Fewm2kSlod=OqK2IY5>E*xU?7rTc%b1E18 z`kyH5-;M5=Y>5^Km9v5BbrNF&$^s%wgO$-5!GC;IF$W19owcjD!agrVG)3K<)o`#p zJ)e83mnNVx)d^`D6^pI37^^=_o`j_$amP8W8v$W@c_dO~T7qpVEp`YHMI#Um4UK5U z9}Dp0&*AByP|Y)VzOg(qqB`=S`=h#0=dOBTYtfCD=kDek$+M+&K+@)Y>JCm3IG(*? ziC}GBsp>R1SSiZBw%4!eLV=0fu<_K+#`oJyH-czMXMOx3YN^6ih!bUj@+)6=@dx`X zW#Yn0<;?t{oCiJ=jbTlVX$9B+^1|YBK(gXmkpQV`2f&TL6AD2%lJf;GxZ<82c^UwU zuwW{mnTTt`ecoelPnM(Dffo0`-yiz3<~Uubqz|5&P+$>41R=4%ReiAk%Mj)(&a@>7 zfqRD9!F(vx4%kr;4G1_K#jN26GvK%OSaQHnC_ds}j9Q`$E%v@3>xe{+*+v0^$53Wk8T~SoAS2pRt#l+p$whG|n*x?x+vVqi>9An# z^(yy$gP~IUTJx{ShNyW#%Z)4&dw}0Y1eI?T@nk{jK#EYmJPGp`Rvd+RECjNdn_Ejm z$q;cU&@$*>{R`(LKH7U0ObHV!E9+2X8sB61jQmrsSFU}%Pm*(80#|iYs1gKI`#Qv9 zq3@s;j3X6@X;R=@3>3+0J5Qcgq!GKaJCn#kEhL4o?h&XuD+z|GgbbN{dP8dSN<#No z{cW+GYY(TIXOrGuJ_F_e*!*bFWb)I#gPSD1ggGa4fET;}(VV9j1yW<5mKzA!9UL=*?Y&j+2|WZUtCR zwZKSAwV0Q#Sjy{=w#{Av9vA8Aebii`UZJBjfXD&MjR=5J25++Tfg-WR)3g5yF9$~} zCJ%|qJc+#kLO!x0MDd*hZ1+Tv;ClbpRs@_L*${^7k52fDkw}bsppG2R=OoCb^}sB1 zAX^8sd;*V-{1iaQh7iZU)p^2$^h^4q%u+VM^HRr;-CTr3DD1P}$tFlz*tH|4Aa+so zLULMA`ZZagjAOnX7od%_SxO}SC8^BFuhqwv(4BBr(8lvnwV?RKMv&(+`oitFOLIMt zGzCgT@7=*s&P=rY_U`GbKL8{f1PlFza!~@-91ueAIS^07*KYv^K6H;wI!Y2}bFmlV zX)S233aMeUMf$}_$~|{+qFh)9-bx)eZBM8<&5TUgbPB6)^8SRf6~V!~0?>2G!G}1i z(7Y!cGJ-1>Jrh^q7o7n^oCut)p-0VaUMVE@UH&SRgavACI^<{P?#%1HrUR45S9v*l zZOiT2=li5NT5xx2AS*WjBU$wFDGo$PD*$qhW}3`C#3_9H8HzmDGW~wQBcmS?B>kM= zt6(k^u9McmY-^1o78IZS0%qj(=C9c5y&*`C>@~hpTGxYlDttvq!9i)>b(G`9qS7*- z%3CjHwB~-JK)F-&<{A2@rsT0UpJ7vOUZ!oP!|8$b(7MNp7p3S0m@ak18(!19(wtv+ zko`CG3N0g#UNo}!cuWD@b1?c~d;BDePGxz4<$!V&uPNE@2yO$+`)2g_M0v1M(WA3q zzfO2fjQA@ZW^}jw1kF&h?u_RoFv)aj1r(pDX|jl@xW7z=w1av(noS~@Ncn|B7Ia^h z9+8Qv5T>?FK?D$8V3(^dQ1;+6UPBmLMEdmCQPLG}iEQnP3CO>K0dR17Al!_DqXSRx z1`P9QaDoRxlU29ab2n}iZnx=)@js@j@5=dINGY#*m6Qk~J!v0C9^+vk?1VdGZ=^-3 zgm90NN=yR5z3xrj#s0!~pE88+Kg+!H);oFK6srFrq`hU1*{h`pjGYYLK4kVuI^2F$ z@H-DCC-nZ#j)-s$F`<{#I^JaTvxLFfi=nqU*mG9&5a=?xjmY!y;C%(USF9EU9Rkk~ z>EKEh`w!$-T;|@0{m_l4 zpN01_>xuFvwx@LD8{byUrsUKr<=ybNxq!l$z-2W{e4i*o0Ci|-GBUD`#WAEpcd!SM zu|lyH0DVY$6GF?;Qv^aK=EsD!z~3a|a$kQQ`Y{?ybFl+(TcjN*6!4;3dU}|xph{;d z+CK>YZOjJbguUE{fZ4aUyE-fnv$u(^2c*U~K6FCVBQuYLB15HRac zDq%$Xh7B&oHFz=7$;q)&bmx1P+}vEMeq7$1=o!GW1BmDZ%aNuYWkiD#V*orLkCT4@ zGR=rI5teUuYuwG%`xy3XV6l?Rc~_8IowWS#*c zI{z0S9wQ;)56f*fg*38{ef2j4i9mHT31%>2rLabiL|Pvu{He*!YbqrWO(8Zl`?pQ~ z{CCy|!PpG)FpCIqXYn(s@<}kKPG!5T5HQO!K>tLb;N`P3rvzhj69umh(cO_CH&B5$gfx>Z2G{63|@3MZa45ZZAl!xGb zu4N`F9Yuv%(KN@3;20HJ)k5e!YKbh)CXuUm3Ydm9=umV1bwSqwQ-a8?jg4J?WQViq zVhfeDWaG9t72c(u?0CqfTb(lBe5M1J-c>*3#;?c$kCA5Hojy7|{_t&iAZ) zfHNh*VjvZ5$5XEr8AhexCr>iJZ*_2WI<odeU)iMgsmYDqVBt|aC={I)_i$v6P% zL$KrpUq>DxJ>?kVK>J&`*=D0|eVnK84tOzK3L^}kE z?X5`7c4tPf`Yc0(QPa*>gD05nJ8(iizx!p|c$}D)Wb?lA**&?2myVtopsKV#Y1C~b z$!`<*+L%-Ju+UhO)CfPX=6)PMJoEDJs(XTaS=81ZQAzgKJV0$@79sQ z*#~`Zi~h;ot*S$Iq`Z=wEe$D#mXZpdKQu}JN|Lo9?jaw%^LXs6=%*&BvKep1b2l|< z(t{3vji{?poap-|)lAE@Hub%a_Db!94`Y4l`}_UJ&CVEfdES4MxvqOg-@?jCD*~Io z&;QWS4_>6nVeAV&i%M1uG$Bh;^O}q{?sA);%i(I-+dNeYUflFr_gGujz3O{L(#t&m zMnjps-L)LQ740aX9=*+}#r_7HJ{7Gjc*#lXLRuK*L&CvewXC*~ZSuG;Yr~{UvEI#P}h*;&G_P4t^egBrL{7&-NWtEuMBCCay)#*)J`#MwU-WKa*YRQdm5pkIG z%X^XAZ0&vo1i4DCd>`)`F8y1%4>@4F)TG(%y5w%$TJ97HD-y=3d#)AvTAjk zjhPkUSbid!Bg?NyuY9(lO|hofeyp%F*Ttj!R-c2=spGYA4;fj3S8=JezSRdCU1^Q@ zJcv1vfspz$-szwWg^U3P_in_%B-r>Z&bLTZVK;th8XsL|ZrezbZbXJj)>1yO@3N|$ zQyP_iX~d_ElO^!0!`KE@6|vR;OfohV6O#NSHsAXLSZx&6f`Qe4*lp?yDTr8P%YrMK zM7lSi=bt(JnVF*G{wgr5bDL<-m@fy z-?5dLz9oSvzZxT2U(45QTJ9_Av>%z?{po}Iz!fS+!{wlGx*(n4o(LUv6);@Qi&Wp9 zgK3>!{GRf1VesQUsC=ILCTwH-H)<9go`2-M&tJodtM|p!nFf(_JuXzO=-1d8zEo@e zX>N9|{`S3-p=K2e^3StRj5x?&XxJ*g*braB@>+fCLr}FsomWaq+La-tMbvGJW0J}h z??hA09LA~Vw(g4Py-N&`fB(u)$2()(isuF~utT}4`4XRHHSf*{v7hf2%5y(KfKvsD z&RN&v@CR&lExFnfP8+h-)z@BUTN1g-@#pBTG8SKBwp==8l6}=$_j5|9q{Gzo^j){S zXzqHv10hNaZwoHjf}3!3(!hs0Mey72E#oqHzmj<0k8(T_h$?(V3JgB#LebrWD}qHwWWLV=Ea#(^Uj>V?;o?FJKo?m5DsFVC<83bp$ADbZG?4Yr&562Ie`Q4!?E zjdAhD)jvGxBwc-}{zK1W^TBwgS(untkyvF$SOfKyBKa^^{ReRy~ zoSk6t`6W%{YnFjp`jrmrIsLs#7xtZ*G{RRRwvPIRpL0v48_zzwho`(rl^{;;f!li1 zQWG@6hRuR#PD%3bzp@xESA%GY`FqOkh~wv+s{dbCVsv}t9);of$?5EVQ`JTF!6a4X zkMq0DH$_gR|Mlx@8$MzO$(-1oHV>R4^A6)`B$5F(twdn8<>m~z(gLm6+h*y=Irqt3?noWGz7DF+yD08u>T{WNLZ(7p&A zF@TIQ!~}iE}+D@^Ont_gZjE*7Pabwq2>?vEouiD zk*H_nXG*;LD=0eN1W+&unkz%t&??aA7Yy!|K6h5=IX1m6Qu}WN|KJS9l|nf)(9Q8z zSp4^!mA2nUH;oMjYQ9L*Vy;2(5G}TZG)_SH|EEV&0nJvE3_9^55O)VdJsA%W#7u!6NDs9QNG1s7<&zwU8nmwI& zCL@vo?wtxWh0sJDE}r_wOnd3z!l~=#6%gcA{3g480=*FC93SH9yR)=3`irfthu?q< zU;?DF>0txv#%MKj?SgK=V7lhztsw=FD1i@}dIuef{MwvL5KA2u?*4?w=CPy(naI&cE!wO>O=Xym^hDN@D9Vlg{-B@^#U2i)3~LM}Db z_o*|H0OiA(Muwj0XWZ(vyX)QsT6+-%kGZAKHN~qv{HnRTZ+X0}2@c8Uj+A(gtHGQ1 z3L^o9aY87OwYvbmz8OR-WB?fKzjtP;5UY`^TTrgbYkt@B{*O(t4`k$L!%p#c6`zV& z_Ky(KiOKg3duLxm!+mq4u`e*eb#3AL4$o>&$ZHD2WlsE#nQs|4f2eI%P2cgp)fb+7 zz|E@~5qB%t-tF&|ux)ByL>pth(O@v3K7XMc;M}xq>g(%ILVqx~Wk2tF zZ2>s2OgP+`gWbaGvcXE`dg+4^lOIwN(@aB4*z?QRoC5ZyUlMY=)qP~^Zu(%OKG$l( zIP*cO!q;_F)%(&u>%ohZGJopn6V$?n?L-+P6+&CdVx8ne*~BRo4l04gwfk!4J>qWN z%)XV*+)Cpi$SHR~MYkb1*b5VgwI41UK~-rKY46>$G8w6?pcQx5ga&fce_ttW{5*Yg zLyFTU9GSDOFaA-tm~1^8R}Jrg0XgyFn*{c!Rv8l6rb>e>G0~v0QNB z&#lOA1mgP+wr%S4EVMe&LfLGpHP-xpJd_u65+S+cd16EI6ujp&*Seg!{JkQ$Y4JX# z5WK4B-U~a$n^~!z;lR!D*s)+WRKWS7vbm#1c);a2R628JHs@gzrQh!Uxzl;cyQKxx z)`g$c0ye9uwC2qhgT4(!{V(?wV4O>b(0ghKx#9n~1|sY0cJviiB9k9!YqM%iGtG%a zSBF;iovA8jJB%M?KqNvv+*$j^_4q{1^V^197nHnulJ8YU(Wd6m@rNftg)bXadcZM9nS1x4aiWgbeVrj^g z4cp?bAU)ClK7@?*+U|K#+Sn6Mx+g3%(0!0jc-d#ADY4}I~%0|vP8!#8>^i{f*WvJ$U`nOFiCo>qQp5pEH z_sx^$&y8u2DBqy2BfIi#kwZ~C#ctQLoI?51HxqBJAD)_*xM+tdOe>)0irh4_AAd9t>bg#fLh6-u^ zLac>yS||S-Zjm~34~5`O_3M!*p+yNwkLKE|VAg4}PiN~?4gZff@5(rKn`?{iX0TQI z_k(Z?-9^*2Ay4}Sby}x=q0E-(`!-7R2IAXO<*WE_tEXK$`mwAeL9adX>eM%5N20Lv zd(@Y&BBkIfh;iJ%Y}R>Et-vH?)#Wm@jtC;~bB2rNWok}H)^4jSl|)xf$E;FCS1XPc zHLpEOQuJu%$v6eQ9{V+ zXR>=L)|tl-F67?+a;=DwLMQe&kk*DIIGTFdxN6rk;|#i8xcmoQ}Ez}lGh^IFq~#q>YU`CrNv|^xZRV^d~V8azf?_wAh@8B zj5cdb^z`6xu<^1cVX{pEF0f84G;ou=?_oxs{63_kH*U(gVkOb&`D{nL<7~MQ=-N!O z4=54%N1nz;shXxMOPK2rwMtbGzv9S}B1I`L5XNMif#v}PDi@IsH!0m=-n1i7%pM25 zlo!A1_-{NOmXuF2k0tZ@@FLxBQUeOU^XNR*r;%9UgUI7Vqqo5NS-u1aq8N1(Cr~8& ztDXIgBM8=Hk^78v)_BpE>kIDdyPC4fZciqwkW-8*hNH-k2MH?Q-YP}-H&Bx<_%B8^ zPKaN-8~$C_V1x+iM-%DCf!_$3L96j|=TcJkf`mg&@R<(<9s*Wfhlri~)n5F@v0P~I z#`~m;vo6}m`snsKfSN0xsfi`-swT0|UZ{1uPIAW9J#|Na-S>Xu-=fRh+LR*!=oH^5 zWo%vHESJ6Pjd)jDdF3|Zr!IlqceYV+Nevm6k^iW(F|4~#mZ8Th90>_Gz>jVya_jS@ zaAq&&9mJ|aew3TMS{bj-Sf9A$4re(XEy=rE7crIdO9?Zt4XQ&HH`P1z8rgZ0pxJMh z{WCR?5zjkrzIP5o56LF1TfH}r8d*Jd2g4J#6D7mJI_=!c$k~7Z2$Ch+@xm#DzB*(p-#J2H#@*yqC+=Vm{$-qlo7 zDq|`1>n^Dvn=fuRaFV3`OdB3gS8x7#!m>%Nqn^q7PbL4;p@}zNQ)s%S)g^vYtv8$R zMtLs+zYP{`?W>1R_(?nI`KEbJ2{`6`qSty@{yfKizkx=?tp+K21KHHt}U*+4H7 z(oRl?Pww*-%40(PIT!eDZU7|lt6TJUm1Sx?Oktg;=OmN1Qc>}d@rtM7e)H1w`BUc@ zMa`{Q7wj+#9+a_3(s9}PYxZjo?Hmrqs}rkH5BU+Lzc&#>`u%FatCL)=_+C#tndJVo zX6ogMAPT769@6~dy=JRWQskG)B+s-NtZ5(aw9y#Z9lHDs$zma%~Q(%=? zrg9wgf%Lyu+D9#PiHjmlBWuhM9~?~TWYilhuy{V);Z3os9SmG&V(5pY$7_wt>;_*0 zzJ7aCu8=6qbj?-7;JWq#L%;FwhPQOK9e6p`O#f=3!Pqs+iiAU6$)(#zGY?hg$|c8L zmrz;%AV;)H^qtt{g$A$F6uw_AI4X1~B2^|$syt5h+fd2N?5caFlT@Fey1muE#w6dc z+fq&U>boE z(pT;2kM{-6k*@onR0q(TeCxgwPp@99*rKQ5tHyOmi?`BL;4eP4^dJ8e)M`)qS|baCr+H` z-reWVZ}KU55%ogaEGZI(#$khsK4yq1l0# zUf)cW-B~kWZKobqZyRmn^;O>Ln{%jk*z5SS#|oXcOoeMCSF@F{zrtZfc~uYh=<{o` z&D_xwA+nR`dAISJ;8!dtq6M;ekvRmJ_(I-(?T`AlKFhtf_LFC0tRwXB-+mzNJ%`>KCY z?G|ib{`QN+I)=qfA&U&SZG9dNpI_6yxo%nW)17sBPUa@W8q^UKmBiGKMCoAQR1Z!?0d=W8j`9Vgm%fIPkx0IVzas}T5 zDfPj{HbSCr6K8*vm~fOz`(Y#AY1RGlxWJqgi4_YRdzI}{cVJm*3#m!SZnQlAcu^j& zsIii;l&}>qPC`>gKp48M*k!HwKjRmFbD84p6ikdhe4O&@{Ybf^cU#u1iKj$8Q^a$T za#Q;b)|2#IPtAuG$@@QJGf>Ohq;EOT>kqN;VE>VeJChtWCmgjCm&8g&Sg%*_K1F|7 zE6U2!H`UIEL6Ppg5O1t(@7a~F#XjA%#A@&-C4e_JsF0$L63$8#JwC>XIQ8t|ZZC?- z8_ybYOSD~14ubEy{gk3(Yi=#cS@&pBI+tZZSjwf%g%NYLc)Vs=+p4SFwvQj(Y#e#? zk+@nEzu(BkZKHPe`5m6Qq8Hv@)kth!VG!TK-F2C9)ALxnv59tmmK4LO>M-YusV6n{ zVlX+~NUd>t`1lYmrvJ1n++hzZjOmN6k^A8ohxAD2n-}PvJ z;J54n;RyM9b+Mg22e|Ge+aCP(=2qN5^d5(z#s`Tus$Z)53TKUl3z0698{I3qV%S+fK?;31hXV4oC^8nX?$P{T`k=HbL3O;>H0Sc8_3d7c+=ut^O!<+ z^W5OuoamUkW3-R)@b{Zva3Yk>*tci!eReS%q3>DufF7grPemPg@Ow>h`|>7QN}cho z$U=!^ONVR4@1(swt_e(PU24qlgA?#t*Ry(aOxJ!D&sH zWp^y2?=-c}!7av6Bw{IZN|#gY*2D0Wer~yk-j4Hp4Su0N>xrL_u9UjBP%1`q?Kwh~ zPSwLlst-1Cuy3fgrV*Lw?Az$UQM{{{7rG zw=|MSa;@RPgn4R-Rk??DztmhE^sTH(+~}o+lCyn5kj4&ec7r#IivbZOmU#dn$KpL z2e>t>Z?&Jka`3tSjn8*KRv6DXoi5q>{z7e0#roQ;BM$@Ickq7|-1vQ{Aj>dYZ$(st zO>|XA`B{YzpOm^-P&r~=U_XDIPO@7fM@MO}>$DVfAcanaP+%;PdoPljkEhW zaL6IsOiPjaO2YZ`x$^SdIp0p58QGGdI>Km^y5mQL4q;Y%i!xXx{c!*aWt`P^!DLfQ zU7*UMv8yz^+^6%bT!m-ZNld;M`JM>y6u_Gi`%5sb((>Jl&>&JXQ5=M zcqNij%;|(d-El&E>W8IqeM-1u&~~|14g&|ybKEKCZk58}%FXjNyA~72<$GWE-m=Fj zi}iE{N<1d$%$w2=ppKFP>vJ6tfsE{ixvOdWApVs)2d66!P_l;m7o44ou{m^d^n>Eb zx3@W~_}Qg7?L&@yE!|IN>?n~dG_IjpWyKTjXUqTTS-{a z%|!msO#0u3pd2XhqVBUX>L(U1Ufllel;8!1Y-A^`PAjpb%;%dg&5g`8ktiPupCk11 zk*HeMeY`qCg;f3R#%sTyy1sqQzZ>i6)_j+5osnU$0o>KmGe);XAcOe{oBv(6>j<(8 z95q|C9~ZX!8;(rF{#r8^{#jrEkud0xa)dl*ocH|!<0-;E{J*|fGf_{BVBQT1eYyA& zw?E%Ug#$9x`cLbN>y}~6Kc$u2Njk>31qI`WVh+i{Xng!8Pb5J~uTSg#8%gNqBl=bZ z#vVQ(3jB~w%gC<4+*`mSSgE7&KjmS}(U0;J)f_vk&g$5JuTBJ*Xp7CFqx$1jw&<7uX6S{MMCcM$J&*)p@tExn1QLz5 zgDiFpb{Q1vvH^f5L*uW2I>A_o+Bl#O{S&TvNeGP20xX@LSvq$WHH@F5t@R02rW%Od zWN?x6x7MLj~O5-Q0}#XOZV?Es#qm zd@1DoljT|RnXMnBvNg|NoH)fyA@{ErH>2Oo{d;_0&}RSrZ|h~=EZLe_pPx0((Sn#z6o{195+p&&5xNG3t! zABT6R96I$JJ^HbuP1@iSVITxH%HuW*V0x7-_V^i&w7{Q2ZH=0-JB(WoG=(FF%<0 z24$OTP`-U5RLox9d$~~XVM!Tx=Q6xYJdgIaIGrQgektn@H4+m7x}ShgXTCjq?;jpj zcC8i*$M<>}AC?dr0T?J82p$lrpCkp|6WgsmU3HGd!cXAga05naKjR@^hvS2J?Zbjb zdvX{$NR~Tv;a@@M`!S$(xK6O3z`BwvAqEb;37ku(2ZL!B9YpBBDi*bRY!N|%fpR*W zM#bP@9ybXp6MiB@$j%nSXt|-k#0E&yxb(B2M&`mT9n^4VbLB6uuj;M?@`R9g5I7v? zCBr4mHl+Br{FwkR=zRV(tvbYNPh8v2xqI;@)xAJ0z2YSWL+a&9n&9MJW}Q~c@PMX zH2~)X0B>e!1GXmCKXCgSTclbcsi3w^@k8qo>A1VM%9A0$YZ%yk#^g?A$*<-eT z5)rjnY?O;PAk>H*vend@Tr_V+y(M%8&5H#~U_*&<)j$(J z1fjr;{xlzymAUGyLKKj9ccn}|VN1#c-I~)6pNqK17a3{Nbd1ZjnPcLk1}v|umkjlt`SgWxPT(R-(^|QGjlDae%q|86ngK|&&jRh% zAjnKChXSOgptGGss-Y^!smOD_tzbL!(!KHswKk>%y1Qs_bY<#slDSL&3tIsd@qsMF zRAnRHZ*qY^ili5at%ZLwT$Ozr%aZ6+MrH|g3eq`)W?uPUq#f01m6#g!sfyD&NEk+7 z!h_3%U_E-FOPP`C$SaYj>GAY}MSh!XIEzbkZ*&3|%9s(PQ?(oJ)VBALwhzpj<>E{-_5=pR^OhhF$6I8WHwP( zaMn7>;!HrLRdNo)(~dF1me3i1rI9)?v1eIIL-&&J1;KWs=tUNIA65c5hCS2O-0n_N zaFkXO$hS9nRhYxwkNvlZ1c!;Ln%~hZCDH24(p!V#AOK* zHsb+!Yc`0#TUGHEg*mU12!@fNiMTLE%}Z0yGko~)!2r%Wsgd2JnRNI3`j?8V{aF1q zMvO+8RGAK;H(v%L&ok)Rb*?*bM=ZLmmw@Z-VK#c>S8{`!2xFfC!-TT!?>>fv-e#bO z18|76Gt|QcO%iy;gr?Oe>VS^Sq;@1*9LLQ9g-mXJ{Za=w%Nl~cgvw{8+sp-f4D`x@ z=vB2Bo4qs`4D~>Ywh_36>y8s+wp4uSYUrbb&V>lnZX$JnGWyte!K>Kz(~%rCm$Z8! zGGO5+%kSSsXNjlH$4_}a-PswHX<>^32^k>93ZP&35F)pY{cm=KIOvWLnxm!N-Xj1R zRbXqwF6474UVAYsHUivEUqk&O<_rY^11>^HTly5Q22%cVA*lVF zsSg_gK(z=k$7)m+BxZh$o7zHh_0d|M8V9B?o z3YC=ePB=1c1&s@SJ6&0H?vtepfY)*;Aw$Jdmj{(BV;@vGL|cHJ`Wy$^(A~e*{qr&x z5^k)CKYRi;{De}fti;m;V`i4Rl|?mWG_>B3zjxiab`uwDFMG5>QS{TV9c^$e;%@x| z9ps389ZZ^MSOMj;GBsX$`xOH!_4o-RH`r0i%ga~YSy>64{^?XhR?9IL%ac1_KcOQ~ z{<=ENw#HSP8#IKnC$#n0F|n=jqqCQWngP(zptaD-FWW#bosACaa_* ztX9SXYSVwR*yJt(f5Q#Jbq2Pdhp?x)+mBTI#*BQBasd)f7M3m?SSi9>ot+z@vac^L1g-_hwbdi;T_4RS!a@79*6~j1g*97A z5+1HEA;6QrwWafhmY@;()O=c3ZNpfx(9Tkv* z1GW}8Yan6C+L}Qm+v>G`E`LywbX2uCjTOL~o|AyrB5j>?n%xoZwgE*JCvWz5{l0^tl=-z$%aDtCj zq1qwBayl8iQ;@p{&B+urH-PM2DrnMDVz-z_km$O76Qj-#nF8TuaI_VxcV1AC630=XhVcNappULZ?s znihiZ85}=f&dZ=9b4x=fg*K?=IN)$w#a++>FO?7}6orcI;vtiddt}>XetmO>_K|nF z4j?TAZCNn@r)!-iemM;11zc%G|sMm}I6$9H?YxxUVm?O0!W z+x+i0PGWqy#Kj^+<5a6m%3zxp-*t+dvtq~TeCA{p78c@A;!XnlU~z+&Ab*)rZ>l_| zi0waYZ)ncfk7BN6TtfvO>@RQB;gA&=hO|Fxe>e9*S7<0$EHg`5yZLw z(4oFjK{3NL!lnD0pe?mK%`h;{9|k(kxgcU77pWZL)$DP3?y_gy1{K>Gl65j%F*h|Iv%x{r78ySr*Ptf_TP&-gFqYUFc%(_zSy?C zc1~1TH{stK>TTXU6N_+ER>Yfo5HV;lQYoW8FODjOv82z6T7=~GVjUEgaJv$icoccv zGR(W-6`vc_MZlVbQwJ%~9-gCkM_3882pblNkKCQslVO#s%brv73Rb5k3G9 zUn*?~AGPa0us01_e3{t#or=~|!~F_aLAXD`@wTw#-#LLH6lW)NV=_J`z-SWu2y$3J ze~5XI2AbG{+-&|TixnvOybEey(6O1n=`CO zSm8e6(w@PtbAcS#T?zh_;83X2Bmv4Cje~h5pFvFr0!_l+E>rTB*b@1r`)DQp_lha)Hj4oUCo0#Gb+l z)Dh=)?>pf_IFrH4+75CHfzW4@6Mas@-_8Z1SU+764X3zn)1fwees+}Ar7jP3&`?Eb z2q7+e>f%KdWi*GdAFB#oOz!L;7omIu;kLrW*q}EnCxV{!qXOID*8*n4~RR*Jy+gz{*ghfscn38O9vrjOmB+5z-HLI!m zQ%_e^`yxU}wWe4!%Uy3(b49p>@}LN?%R)7XwBX7!5ls|3P_X0LomV5!P2w9saRg#N4z;wuI~eHb`!Cho2Ha00%-o%(zF3 z<4%pU7QczfCf)iBJ1b4bIkLE8;cGXzaa7~Ag)mE?C|wn_?jSK~uGocUb?n_dJx^O$ zG#$tfdB2Xukb3GHba8fcv2;Ci__On$9C5JX*s3+d67;hvI=Xw=$4WN8VB2`nli#+# zRmua7KZ3lRkD|bq$abVJvzw2j?CL!tq4zkOxxey@otF1$e`kLUFWd0joEs^3#UDHn zKCPX5A>->|f@iKu)Ymu9o3Qq!8um%-*6r#)8+4^JOkDb1{tUxcUF%Mu#+K1qB+p_s(w(5$b7nt<*azx|kdU74ci3>*<1eVbX zi;6ZpePDQ!7)U`Z^wKE$2h&ZaOTH!ptZQRbIc|rwF7zyRY!Ij=YQTmj)_Tn+>T}Gb zpD6E~-rSkBD5>OEI}DU-Lq@=T@EV~I3x+!Qt#XJqcq;{i=B+I=W9t!gFP{Y+-9Ya6 zAPP9LhcZff+T(ehGjU!lO_piB!0~6uh;9qbU$RNHU^Pw2La53WT!JLLCy9_cV}LGI z3{?lyfqN(f0W8f~=X{V8wxhNZ3%Wk(njxwgQot!ypMK^+GJSGP)|eIUkGhn)nh#gZ z&TyFsTHr+#db$U~q5f@={D!Tw{luy>xYVy^=q>gy3xFyvWz(Ts!opLa`b#~P|72!LdpSg3#A zVzhHSEi<%I+1FE9+3S|k3l?+Mjn*cQ&pGh4Nm;|RzNL=3sT(*&)w&FzX`yF8b^#@N`T;1)mbfzP2y_-`^(B&!&j7ruMdUWNP1GsEC|&KxY)+vs|rl-_Awl{E6O9}`4W@J0uBRDzb3(z*$6jeOl1Q)IBVFhMhUPs@exN}JTq+v{XOfT}=_{{0NH!cQ(2GR{&YRL$9Ww2cBbT76?_fhX?3ghZ`nl zJQ3S4S3c)zoZf2ncP>;voHYqyB@?H4OQ}#XQH;G?{!<|B;d#`eVZ#1_;7K^@2s%Zh zYOhw0)q*p9IhVRapN50JI%8el)I?wCHUpwd&K#I>y{I*oM4&&@T)Nkt{VAmGI&i!3 z^+Snzx^RzA#9)6@H*QReFHeApk#XilRIbx@J9W*z<;MZSLfMDBuN!`90{=ae4XmcV zD}lv^Q~rke0d9|AvCHjB{eYdk5T@5n{IWZqrU6eRbIRD8PLeb~orBG8aNW5t46ZCG zGju?(wGprUz%WkSo262+ik%i&=gUqUM0{oJ?meRmg&8+vDu8han>bKZ8T%{UBX zQ@+$c+Cc8gtnU&-Wm6^++3ru%?c5ijudKJX&`MdSjNMy~e_Uk6Y4CA$z#rFKdpy`T zxYK?|wz(6BQaRj2VITj!w4~%Au9k2b8HE^m$KQdOi+81j;{}_>EYvCis&axX1Y6{*RrXt&5s!G@P_|fhpHtq}$Lh3J89tqz zosW@hI#;wVAb7%JQ1A&z;^)180LBOAn`?0OTZM7QT8K)9R!W#VBK{PM&UmNPSo37! zJn3$bC5GVg$aQ260_=HslfrJ*xc6JIbqIAh+sPA*Kl5R*b9%N*j{HPLHA-K=5Qd%TVW!IAg zIi`0zLWXj73+n7DeW&~OxkEXor)Dd4RO?W|g}e_lYZNb~aCS=S<@J?xziEQ8zTC{@ zVDX$BKeNm{t1xsn!iA__Q(+MP&&+yq?S97kyj7eJD~*=(hTZ<-LBNtZDeRTkzb{!+ z7#dK>f%fh)(~6}0@wlD~a`Dx;`;lUQ?@6LnUc&6k>Q?~?IyVxUew3Ge$sK>MBf5R+ zQM$^CAD^dqf7E4I@iZqpm}PcVL_ap?32zg$?5uvm^gOI_qFqGXzh$g1a3Eekq_A;> zrB2B=#CiQj(l2%jrBGRt{U(v)Njg{4+%UhDj4jVC=2dh&Q4BxmcC%%)Rk7i*qgv+4 z$wydN+A^t?T*|ItFy@E%;_}GEM#Rg@yYExn4m2042ep!*$=-|1v zl)_JWe(~lSs~smlUcbiYC>?W&|BuODPlY_k;ZiH(+O$-2gI!}S{hHL-+b8L3_Nx9M zRO{_#mt4kr(LU{LRgn}=r}@^~w|ctud@joyDK;Ie4-3d;srvk~#@jS8w|#{>X>|z} zmW(U;>lE4_wJ_+ORd0EzZ<47#`fgGiKvB2}Iw1)s^qf3py&oIW<^PQX?C1a)beZq-DBp zX+x>Ea-lO%q|%nVg&dBoSlL(`5z7~{d{zTdS)Zw;4@D*&)??~KrL6blYTT4^#;7-Q zQwkHjVs(l6Fd++BT-f;M^mKksma-cey^*u)!=Q$Z@tMA$E=jV`pxMHbkBG>^A@61- z$w5Pv^QBI?V?&fL_O^y{Tt0n4%8h(?&I{d*u_Sr~2dVyvpZc-V^WdQT42BiD0I8{N%BB#TzQ0ihRn8GQw@pWy`yE zkS=UQ7cM^XLKoJNE?7GaWEsTr#E6^^+9`H^=uK!$p8e!!Q@anX(dM2y_af({Y-TVy z3}G>_BP1=Pn1OfPW`IQ<=R5QyvDQ3L{;+WTswD@T-%fs)FsiVaaugM_G)Nn#(}<#z zvc7c0OaVG^1hP$X-xPpGZ;-{khvRjelrQh2K4m3*`vO)okZLs>@SK^z906!$AjM1? z-?ieC{#iU^iReP{bffGI|1x|GDDQ-kpruP?WTx+FZKd8wO*tB`|PckRtm>G04w*p!0j01)F~w$v!Iod zcatIa+ojL8F*X%mV>!7KZ?s#}DwDRs``lc-;qfL)VOsPTtvQS+1EzM)A3o)L>Mx<& zhwqfQDq>9QWgGD>N;)}}xxC(hU5W#ra&(1iVeFr%{rt;1W5$j>+USPF2yOWi(lr-n z&iYl`%gKV7Sx?>&#v^Kb<_2%bFqyYQ8l1^mH>E(e?R;_$J{geA_cmP+^qHCH0rn-c z!%g33TG51F1mVtu>2*}I{t@K{8d3C3<3is~WAn11_gBG$@WEp8Rf#>q%imCK!y$-s z=da@Y53?7+sU=A5B{w#*EfB%qw&$ioL)XXi&~;ZR=2Oln)Zs9nCQy==h3XJI?S=htHS zo>`{bm%#Q^YVC-C4cSJ^OYEBpWIy!K?;5sF7h$YF;Z!jbINc_zprg2Ae#V?s;g=>i zw0z}YwSH@pH_xm==NWT?nW~pDU2+1pUXap2JQ^`pm;<-vxDq~e?EF2_N81jLho-MF)zXhmWb0_gPH&HQK|#}_*yjC zy8rz3C5YwH0_QfIVE%lR5`?WR{&?5Azdmx7{BIYh1^!f+C3^xx(3(@y-? i==?OH|6iEyeu+tIA>EpwMZGlmPwo%py$O4cxc(ow3`^?( literal 0 HcmV?d00001