From 9379e7ec751b28a291a6f7d7fa12112823e375e5 Mon Sep 17 00:00:00 2001 From: fmittag Date: Fri, 8 Jun 2012 12:45:14 +0200 Subject: [PATCH 1/8] little bugfix and adjustments for creating regatta series in the adminconsole --- .../gwt/ui/adminconsole/FleetColors.java | 25 ++++-- ...egattaWithSeriesAndFleetsCreateDialog.java | 82 ++++++++++--------- .../SeriesWithFleetsCreateDialog.java | 43 +++++++++- .../sailing/gwt/ui/client/StringMessages.java | 1 + .../gwt/ui/client/StringMessages.properties | 1 + .../ui/client/StringMessages_de.properties | 1 + 6 files changed, 101 insertions(+), 52 deletions(-) diff --git a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/ui/adminconsole/FleetColors.java b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/ui/adminconsole/FleetColors.java index 8595c9872d3..28d4f6e5154 100644 --- a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/ui/adminconsole/FleetColors.java +++ b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/ui/adminconsole/FleetColors.java @@ -4,22 +4,29 @@ import com.sap.sailing.domain.common.Color; import com.sap.sailing.domain.common.impl.RGBColor; public enum FleetColors { - GOLD (255, 215, 0), - SILVER (201, 192, 187), - BRONZE (205, 127, 50), - EMERALD (0, 201, 87), - BLUE (0, 0, 255), - YELLOW (255,255,0), - GREEN (0, 255, 0), - RED (255, 0, 0); + GOLD (255, 215, 0, 1), + SILVER (201, 192, 187, 2), + BRONZE (205, 127, 50, 3), + EMERALD (0, 201, 87, 4), + BLUE (0, 0, 255, 0), + YELLOW (255,255,0, 0), + GREEN (0, 255, 0, 0), + RED (255, 0, 0, 0); private Color color; - FleetColors(int red, int green, int blue) { + private int defaultOrderNo; + + FleetColors(int red, int green, int blue, int defaultOrderNo) { color = new RGBColor(red, green, blue); + this.defaultOrderNo = defaultOrderNo; } public Color getColor() { return color; } + + public int getDefaultOrderNo() { + return defaultOrderNo; + } } diff --git a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/ui/adminconsole/RegattaWithSeriesAndFleetsCreateDialog.java b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/ui/adminconsole/RegattaWithSeriesAndFleetsCreateDialog.java index f87be44c660..9659b754441 100644 --- a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/ui/adminconsole/RegattaWithSeriesAndFleetsCreateDialog.java +++ b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/ui/adminconsole/RegattaWithSeriesAndFleetsCreateDialog.java @@ -48,7 +48,8 @@ public class RegattaWithSeriesAndFleetsCreateDialog extends DataEntryDialog 0; - boolean boatClassNotEmpty = regattaToValidate.boatClass != null && regattaToValidate.boatClass.name.length() > 0; + boolean boatClassNotEmpty = regattaToValidate.boatClass != null + && regattaToValidate.boatClass.name.length() > 0; boolean unique = true; for (RegattaDTO regatta : existingRegattas) { @@ -66,14 +67,14 @@ public class RegattaWithSeriesAndFleetsCreateDialog extends DataEntryDialog seriesToValidate = regattaToValidate.series; int index = 0; boolean seriesNameNotEmpty = true; for (SeriesDTO series : seriesToValidate) { seriesNameNotEmpty = series.name != null && series.name.length() > 0; - if(!seriesNameNotEmpty) { + if (!seriesNameNotEmpty) { break; } index++; @@ -81,10 +82,10 @@ public class RegattaWithSeriesAndFleetsCreateDialog extends DataEntryDialog setToFindDuplicates = new HashSet(); for (SeriesDTO series : seriesToValidate) { - if(!setToFindDuplicates.add(series.name)) { + if (!setToFindDuplicates.add(series.name)) { seriesUnique = false; break; } @@ -92,21 +93,23 @@ public class RegattaWithSeriesAndFleetsCreateDialog extends DataEntryDialog existingRegattas, StringMessages stringConstants, - AsyncCallback callback) { - super(stringConstants.regatta(), null, stringConstants.ok(), stringConstants.cancel(), + public RegattaWithSeriesAndFleetsCreateDialog(Collection existingRegattas, + StringMessages stringConstants, AsyncCallback callback) { + super(stringConstants.regatta(), null, stringConstants.ok(), stringConstants.cancel(), new RegattaParameterValidator(stringConstants, existingRegattas), callback); this.stringConstants = stringConstants; this.regatta = new RegattaDTO(); @@ -140,67 +143,68 @@ public class RegattaWithSeriesAndFleetsCreateDialog extends DataEntryDialog() { - @Override - public void onFailure(Throwable t) { - } - @Override - public void onSuccess(SeriesDTO newSeries) { - createdSeries.add(newSeries); - updateSeriesGrid(panel); - } - }); + SeriesWithFleetsCreateDialog dialog = new SeriesWithFleetsCreateDialog(Collections + .unmodifiableCollection(result.series), stringConstants, new AsyncCallback() { + @Override + public void onFailure(Throwable t) { + } + + @Override + public void onSuccess(SeriesDTO newSeries) { + createdSeries.add(newSeries); + updateSeriesGrid(panel); + } + }); dialog.show(); } }); panel.add(addSeriesButton); - + return panel; } private void updateSeriesGrid(VerticalPanel parentPanel) { int widgetIndex = parentPanel.getWidgetIndex(seriesGrid); parentPanel.remove(seriesGrid); - + int seriesCount = createdSeries.size(); seriesGrid = new Grid(seriesCount * 2, 3); seriesGrid.setCellSpacing(3); - for(int i = 0; i < seriesCount; i++) { + for (int i = 0; i < seriesCount; i++) { SeriesDTO seriesDTO = createdSeries.get(i); - Label seriesLabel = new Label((i+1) + ". " + stringConstants.series() + ":"); + Label seriesLabel = new Label((i + 1) + ". " + stringConstants.series() + ":"); seriesLabel.setWordWrap(false); seriesLabel.getElement().getStyle().setFontWeight(FontWeight.BOLD); - seriesGrid.setWidget(i*2, 0, seriesLabel); - seriesGrid.setHTML(i*2, 1, seriesDTO.name); - if(seriesDTO.getFleets() != null && seriesDTO.getFleets().size() > 0) { - seriesGrid.setHTML(i*2+1, 1, seriesDTO.getFleets().size() + " fleets: " + seriesDTO.getFleets().toString()); + seriesGrid.setWidget(i * 2, 0, seriesLabel); + seriesGrid.setHTML(i * 2, 1, seriesDTO.name); + if (seriesDTO.getFleets() != null && seriesDTO.getFleets().size() > 0) { + seriesGrid.setHTML(i * 2 + 1, 1, seriesDTO.getFleets().size() + " fleets: " + + seriesDTO.getFleets().toString()); } else { - seriesGrid.setHTML(i*2+1, 1, seriesDTO.getFleets().size() + " No fleets defined."); + seriesGrid.setHTML(i * 2 + 1, 1, seriesDTO.getFleets().size() + " No fleets defined."); } } parentPanel.insert(seriesGrid, widgetIndex); } - + @Override public void show() { super.show(); diff --git a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/ui/adminconsole/SeriesWithFleetsCreateDialog.java b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/ui/adminconsole/SeriesWithFleetsCreateDialog.java index 7893a3f58f2..5947079617a 100644 --- a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/ui/adminconsole/SeriesWithFleetsCreateDialog.java +++ b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/ui/adminconsole/SeriesWithFleetsCreateDialog.java @@ -5,6 +5,8 @@ import java.util.Collection; import java.util.HashSet; import java.util.List; +import com.google.gwt.event.dom.client.ChangeEvent; +import com.google.gwt.event.dom.client.ChangeHandler; import com.google.gwt.event.dom.client.ClickEvent; import com.google.gwt.event.dom.client.ClickHandler; import com.google.gwt.user.client.rpc.AsyncCallback; @@ -90,7 +92,7 @@ public class SeriesWithFleetsCreateDialog extends DataEntryDialog { } index2++; } - + if (!fleetNameNotEmpty) { errorMessage = stringConstants.fleet() + " " + (index + 1) + ": " + stringConstants.pleaseEnterNonEmptyName(); } else if (!fleetUnique) { @@ -136,10 +138,38 @@ public class SeriesWithFleetsCreateDialog extends DataEntryDialog { } private Widget createFleetColorWidget(Color defaultColor) { - ListBox listBox = createListBox(false); + final ListBox listBox = createListBox(false); + final int fleetIndex = fleetNameEntryFields.size(); + listBox.addChangeHandler(new ChangeHandler() { + @Override + public void onChange(ChangeEvent event) { + // set default order no of the selected color + int selIndex = listBox.getSelectedIndex(); + IntegerBox orderNoBox = fleetOrderNoEntryFields.get(fleetIndex-1); + if(selIndex == 0) { + orderNoBox.setValue(0); + } else { + String value = listBox.getValue(selIndex); + for(FleetColors color: FleetColors.values()) { + if(color.name().equals(value)) { + orderNoBox.setValue(color.getDefaultOrderNo()); + break; + } + } + } + } + }); + + listBox.addItem(stringConstants.noColor()); for(FleetColors value: FleetColors.values()) listBox.addItem(value.name()); + + if(defaultColor == null) { + listBox.setSelectedIndex(0); + } + fleetColorEntryFields.add(listBox); + return listBox; } @@ -160,7 +190,11 @@ public class SeriesWithFleetsCreateDialog extends DataEntryDialog { FleetDTO fleetDTO = new FleetDTO(); fleetDTO.name = fleetNameEntryFields.get(i).getValue(); fleetDTO.setColor(getSelectedColor(fleetColorEntryFields.get(i))); - fleetDTO.setOrderNo(fleetOrderNoEntryFields.get(i).getValue()); + int orderNo = -1; + if(fleetOrderNoEntryFields.get(i).getValue() != null) { + orderNo = fleetOrderNoEntryFields.get(i).getValue(); + } + fleetDTO.setOrderNo(orderNo); fleets.add(fleetDTO); } @@ -172,7 +206,8 @@ public class SeriesWithFleetsCreateDialog extends DataEntryDialog { private Color getSelectedColor(ListBox colorListBox) { Color result = null; int selIndex = colorListBox.getSelectedIndex(); - if(selIndex >= 0) { + // the zero index represents the 'no color' option + if(selIndex > 0) { String value = colorListBox.getValue(selIndex); for(FleetColors color: FleetColors.values()) { if(color.name().equals(value)) { diff --git a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/ui/client/StringMessages.java b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/ui/client/StringMessages.java index 216797d0410..616313eb36f 100644 --- a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/ui/client/StringMessages.java +++ b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/ui/client/StringMessages.java @@ -317,4 +317,5 @@ public interface StringMessages extends Messages { String splitFleet(); String color(); String medalSeries(); + String noColor(); } \ No newline at end of file diff --git a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/ui/client/StringMessages.properties b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/ui/client/StringMessages.properties index 401f40b161d..af83ef6c6fc 100644 --- a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/ui/client/StringMessages.properties +++ b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/ui/client/StringMessages.properties @@ -315,3 +315,4 @@ series=Series splitFleet=Split fleet color=Color medalSeries=Medal Series +noColor=No color diff --git a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/ui/client/StringMessages_de.properties b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/ui/client/StringMessages_de.properties index 42867fb0530..b3659f31a9f 100644 --- a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/ui/client/StringMessages_de.properties +++ b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/ui/client/StringMessages_de.properties @@ -316,3 +316,4 @@ fleets=Flotten splitFleet=Aufteilung in Gruppen color=Farbe medalSeries=Medal Series +noColor=Keine Farbe From 39a8704f4fcfaee55942c532cf8ea77ca3d83558 Mon Sep 17 00:00:00 2001 From: Axel Uhl Date: Fri, 8 Jun 2012 12:48:22 +0200 Subject: [PATCH 2/8] extended logging even further --- .../mongodb/test/TestStoringAndLoadingEventsAndRegattas.java | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/java/com.sap.sailing.mongodb.test/src/com/sap/sailing/mongodb/test/TestStoringAndLoadingEventsAndRegattas.java b/java/com.sap.sailing.mongodb.test/src/com/sap/sailing/mongodb/test/TestStoringAndLoadingEventsAndRegattas.java index 84a0923f56e..55943314ffa 100755 --- a/java/com.sap.sailing.mongodb.test/src/com/sap/sailing/mongodb/test/TestStoringAndLoadingEventsAndRegattas.java +++ b/java/com.sap.sailing.mongodb.test/src/com/sap/sailing/mongodb/test/TestStoringAndLoadingEventsAndRegattas.java @@ -185,7 +185,8 @@ public class TestStoringAndLoadingEventsAndRegattas extends AbstractMongoDBTest rlbrcNames.append("; "); rlbrcNames.append(rlbrc.getName()); } - logger.info("columns in regatta leaderboard: "+rlbrcNames); + logger.info("columns in regatta leaderboard for regatta "+regattaLeaderboard.getRegatta().getName()+" ("+ + regattaLeaderboard.getRegatta().hashCode()+"): "+rlbrcNames); } private void logColumnsInRegatta(Regatta regatta) { From 73739fcd06904051594e7c1b6d1682e15c102617 Mon Sep 17 00:00:00 2001 From: Axel Uhl Date: Fri, 8 Jun 2012 13:05:10 +0200 Subject: [PATCH 3/8] created new bundle for Kieler Woche result import from tbe b+m tool --- .../.classpath | 7 +++++ .../.project | 28 ++++++++++++++++++ .../.settings/org.eclipse.jdt.core.prefs | 7 +++++ .../.settings/org.eclipse.pde.core.prefs | 3 ++ .../META-INF/MANIFEST.MF | 9 ++++++ .../build.properties | 4 +++ .../2011-06-18_2 4 mR_Wettfahrt_1.pdf | Bin 0 -> 43249 bytes .../2011-06-18_2 4 mR_Wettfahrt_1.xml | 10 +++++++ .../2011-06-18_49er_Wettfahrt_2_Extra.xml | 2 ++ .../resources/2011-06-18_49er_Wettfahrt_3.pdf | Bin 0 -> 47535 bytes .../resources/2011-06-18_49er_Wettfahrt_3.xml | 10 +++++++ .../2011-06-18_49er_Wettfahrt_3_Extra.xml | 2 ++ .../resources/2011-06-18_49er_Wettfahrt_4.pdf | Bin 0 -> 48114 bytes .../resources/2011-06-18_49er_Wettfahrt_4.xml | 10 +++++++ .../2011-06-18_49er_Wettfahrt_4_Extra.xml | 2 ++ .../.classpath | 7 +++++ .../com.sap.sailing.kiworesultimport/.project | 28 ++++++++++++++++++ .../.settings/org.eclipse.jdt.core.prefs | 7 +++++ .../.settings/org.eclipse.pde.core.prefs | 3 ++ .../META-INF/MANIFEST.MF | 8 +++++ .../build.properties | 4 +++ java/pom.xml | 2 ++ 22 files changed, 153 insertions(+) create mode 100755 java/com.sap.sailing.kiworesultimport.test/.classpath create mode 100755 java/com.sap.sailing.kiworesultimport.test/.project create mode 100755 java/com.sap.sailing.kiworesultimport.test/.settings/org.eclipse.jdt.core.prefs create mode 100755 java/com.sap.sailing.kiworesultimport.test/.settings/org.eclipse.pde.core.prefs create mode 100755 java/com.sap.sailing.kiworesultimport.test/META-INF/MANIFEST.MF create mode 100755 java/com.sap.sailing.kiworesultimport.test/build.properties create mode 100755 java/com.sap.sailing.kiworesultimport.test/resources/2011-06-18_2 4 mR_Wettfahrt_1.pdf create mode 100755 java/com.sap.sailing.kiworesultimport.test/resources/2011-06-18_2 4 mR_Wettfahrt_1.xml create mode 100755 java/com.sap.sailing.kiworesultimport.test/resources/2011-06-18_49er_Wettfahrt_2_Extra.xml create mode 100755 java/com.sap.sailing.kiworesultimport.test/resources/2011-06-18_49er_Wettfahrt_3.pdf create mode 100755 java/com.sap.sailing.kiworesultimport.test/resources/2011-06-18_49er_Wettfahrt_3.xml create mode 100755 java/com.sap.sailing.kiworesultimport.test/resources/2011-06-18_49er_Wettfahrt_3_Extra.xml create mode 100755 java/com.sap.sailing.kiworesultimport.test/resources/2011-06-18_49er_Wettfahrt_4.pdf create mode 100755 java/com.sap.sailing.kiworesultimport.test/resources/2011-06-18_49er_Wettfahrt_4.xml create mode 100755 java/com.sap.sailing.kiworesultimport.test/resources/2011-06-18_49er_Wettfahrt_4_Extra.xml create mode 100755 java/com.sap.sailing.kiworesultimport/.classpath create mode 100755 java/com.sap.sailing.kiworesultimport/.project create mode 100755 java/com.sap.sailing.kiworesultimport/.settings/org.eclipse.jdt.core.prefs create mode 100755 java/com.sap.sailing.kiworesultimport/.settings/org.eclipse.pde.core.prefs create mode 100755 java/com.sap.sailing.kiworesultimport/META-INF/MANIFEST.MF create mode 100755 java/com.sap.sailing.kiworesultimport/build.properties diff --git a/java/com.sap.sailing.kiworesultimport.test/.classpath b/java/com.sap.sailing.kiworesultimport.test/.classpath new file mode 100755 index 00000000000..b1dabee3829 --- /dev/null +++ b/java/com.sap.sailing.kiworesultimport.test/.classpath @@ -0,0 +1,7 @@ + + + + + + + diff --git a/java/com.sap.sailing.kiworesultimport.test/.project b/java/com.sap.sailing.kiworesultimport.test/.project new file mode 100755 index 00000000000..60a7fada563 --- /dev/null +++ b/java/com.sap.sailing.kiworesultimport.test/.project @@ -0,0 +1,28 @@ + + + com.sap.sailing.kiworesultimport.test + + + + + + org.eclipse.jdt.core.javabuilder + + + + + org.eclipse.pde.ManifestBuilder + + + + + org.eclipse.pde.SchemaBuilder + + + + + + org.eclipse.pde.PluginNature + org.eclipse.jdt.core.javanature + + diff --git a/java/com.sap.sailing.kiworesultimport.test/.settings/org.eclipse.jdt.core.prefs b/java/com.sap.sailing.kiworesultimport.test/.settings/org.eclipse.jdt.core.prefs new file mode 100755 index 00000000000..11f6e462df7 --- /dev/null +++ b/java/com.sap.sailing.kiworesultimport.test/.settings/org.eclipse.jdt.core.prefs @@ -0,0 +1,7 @@ +eclipse.preferences.version=1 +org.eclipse.jdt.core.compiler.codegen.inlineJsrBytecode=enabled +org.eclipse.jdt.core.compiler.codegen.targetPlatform=1.7 +org.eclipse.jdt.core.compiler.compliance=1.7 +org.eclipse.jdt.core.compiler.problem.assertIdentifier=error +org.eclipse.jdt.core.compiler.problem.enumIdentifier=error +org.eclipse.jdt.core.compiler.source=1.7 diff --git a/java/com.sap.sailing.kiworesultimport.test/.settings/org.eclipse.pde.core.prefs b/java/com.sap.sailing.kiworesultimport.test/.settings/org.eclipse.pde.core.prefs new file mode 100755 index 00000000000..b7e72d019c2 --- /dev/null +++ b/java/com.sap.sailing.kiworesultimport.test/.settings/org.eclipse.pde.core.prefs @@ -0,0 +1,3 @@ +eclipse.preferences.version=1 +pluginProject.extensions=false +resolve.requirebundle=false diff --git a/java/com.sap.sailing.kiworesultimport.test/META-INF/MANIFEST.MF b/java/com.sap.sailing.kiworesultimport.test/META-INF/MANIFEST.MF new file mode 100755 index 00000000000..9582d515f7d --- /dev/null +++ b/java/com.sap.sailing.kiworesultimport.test/META-INF/MANIFEST.MF @@ -0,0 +1,9 @@ +Manifest-Version: 1.0 +Bundle-ManifestVersion: 2 +Bundle-Name: Test +Bundle-SymbolicName: com.sap.sailing.kiworesultimport.test +Bundle-Version: 1.0.0.qualifier +Bundle-Vendor: SAP +Bundle-RequiredExecutionEnvironment: JavaSE-1.7 +Require-Bundle: org.junit4;bundle-version="4.8.2", + com.sap.sailing.kiworesultimport diff --git a/java/com.sap.sailing.kiworesultimport.test/build.properties b/java/com.sap.sailing.kiworesultimport.test/build.properties new file mode 100755 index 00000000000..41eb6ade2b4 --- /dev/null +++ b/java/com.sap.sailing.kiworesultimport.test/build.properties @@ -0,0 +1,4 @@ +source.. = src/ +output.. = bin/ +bin.includes = META-INF/,\ + . diff --git a/java/com.sap.sailing.kiworesultimport.test/resources/2011-06-18_2 4 mR_Wettfahrt_1.pdf b/java/com.sap.sailing.kiworesultimport.test/resources/2011-06-18_2 4 mR_Wettfahrt_1.pdf new file mode 100755 index 0000000000000000000000000000000000000000..33cf3d5b2b24486f78c4f184ef654bf7b46aa5bd GIT binary patch literal 43249 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 + + 2.4 mR + 2011-06-18+02:00 + 14:38:22.547+02:00 + vorlauefig + Kieler Woche 2011 + 1 + 2011-06-18_2 4 mR_Wettfahrt_1.pdf + \ No newline at end of file diff --git a/java/com.sap.sailing.kiworesultimport.test/resources/2011-06-18_49er_Wettfahrt_2_Extra.xml b/java/com.sap.sailing.kiworesultimport.test/resources/2011-06-18_49er_Wettfahrt_2_Extra.xml new file mode 100755 index 00000000000..374d9ab62f3 --- /dev/null +++ b/java/com.sap.sailing.kiworesultimport.test/resources/2011-06-18_49er_Wettfahrt_2_Extra.xml @@ -0,0 +1,2 @@ + + \ No newline at end of file diff --git a/java/com.sap.sailing.kiworesultimport.test/resources/2011-06-18_49er_Wettfahrt_3.pdf b/java/com.sap.sailing.kiworesultimport.test/resources/2011-06-18_49er_Wettfahrt_3.pdf new file mode 100755 index 0000000000000000000000000000000000000000..918ad292afc5d5bcdee09b9795ed073c135d0a15 GIT binary patch literal 47535 zcmeFYWmH_v)-Kw(yF0<1;1VRkCAfPCH0}-oIzVs>1PR)~3GM_BE8B`qBYY zLV})G*WV3H&#UZWEUYaZ3XtAXLIp(a$={KlEMVLSU=Ph`j-~Z!7jF5cJ%y0 z0z&k>3ieK3Km%R{CrdA|9N5a$8cdJ*(9qM%18nJx>6e|8wd}DhN*Hl`OWgjvjPQ*p zLEkr{(?=)%%oElfSsfq1123N^nX7mR`(HT^Gp*3egECc$>{NT!o^I(BOuklZMjLEK zyO;dX&3Gd%`GRkQ0W&2|iOZfogFY0Mj-8CDSfX@l{cfEOt)Nx!)(8Eb%@)RpXDG)& zf=00Q=0x;8H?CBW(bx6TKF=W52L&nF-mjn`r5I} z2(v$3Urdc52W5K}i%~8~B3-qL-)}~*WX*2D_PZ2G>5|#&b?NRyiiN!R9EEIch5Q6K z>)RI`5qO#+mR zwOUjgLPlhDBd9-@gh{Rpr?NawvLTv1M2pTKB&_Xc4l$r?lCfx_AF+G=>G#!(recdk zK9gEB6GLYSjWP+<$qG8@m6BO2+f||5UuU~sdl9kPJ$BC9O%^;Aq$vFmD_K3 zD4tCJ6?<&+PKo^`V{p>-lg?Pkt#V9EEayx)Unel8XDXs z3I&|RQPQC|2^ctx(lgjUOf=63oV9xMNAQHK+&U(`wU#RmYU3{D)!5VvOVcea^L@Mm z!?g;Ilx#|K46;5#z7@*F4_ThP)&D}Qn3LrdE?p}>{&eH!=eSz7uH5bt&sV)2qp&HsicT0qxPt%E1(7vtR8 zKKN)TbH$qsUmuoKaC)SEeJ1ot-({+s49NonO3^GohsZ)w68WVJi z>!&D4)^)rzxTSpw_zWw`upvVQ@F_guGV z0n-&#NQ_61pySA+#|W8qIEH~bRvq#${8PHIYYS%B6mnQ+9bEMBRgn7v($?SWk5xSB zX!B%+Jm*}%nhnY*{E}gRgCYEWzbH1KcW(vGi^o)pRS}Zll0fr`F4=HK|0|3jb)z_j z?TNr~`r8cW07t)cwHOfA=#{0nu1y6%NMr%_D&MjQlU3wxaO z&Mf8_4xAFOu?M)U=$|~Y8(JdXeQ(jRhTjOjmdfWgLdqAeb0gZ}>fwJDt@&#HnqtkX zhW)}LtYY%}SJ5(Em%5rI%M;Cwn}b5GGnL(zRw(~O7xO<=tfaK z9lYTxpckgS_1;Awr5#j9rK}O|7uzd4l9i$GHFM?+{$1K+ZK>CF+Bx|~OaP*QqBXg? z9Ym@iH&k5AiCw3TT_>|qrB3cpG7nL&s{Yyl-LcnN*c^sCczJHg#qPZ=tr7M(1&iMW zN_3Z`?5fT+%0yOTS4TzI1~{S)IO@b;nd!w)^2*M}q(?f$lIh3azz*Dq%*qpn)lEmcQ}YyM@mKhyq{=sq!oJgiW9y!rDf9$+2T6G_4v3HqIB<## zb8y#rfEQXuZO)h`Dp*krBIgT|(7+L4PDR)pmfA17#5?m^>tmKRcOEUh;g{9Deio5c zW3E<&MnT53`D*@zJr>d*<+fWU}C0vnQ#0!6GffVL3T+cH% zuxOcFKZa34?m}UNM^utZdn_#zs)3K+>&LD>N_u?8=!;A0IYsMJ?H(nre0Ct_y=WzS ziF(pAUaQ9{==3C|yz@RY#&S4k*K8~;(z#%_Xxp zBA3jLdW?VBH)fV}O`6JXN~*@Da`!{kS&m|(9NGwHNTLA~Mhu1WUbPKcQiWwHN)Rr0 zVEB~|RW~FuJI{MbFj0LNZ8>AW6xkS871zdB{>8J8Meeqsn>SW=w|ydgQaoAkCZ>OU zWRE~G@r$<}c(+U^;U_hj8BH+d8cl$y&C>{{$Z?s^y?Wx1_(z5wzUH&5Deex!o-TG* zE8_iXekB;AqvNF?HZC5!;60ubyIM83{z8%#^@K2q<%PH=pSAX3zo7GtbJ)>n_s#^p z@PSqRhger$;>BfGu5bD~8Q6=YOc!X!zndtcH-i@#@@?Q6YL@D>g?v~0(SAD7sce2b#-#}&~dZ00(z1I``BB7wH0MB z{|QdzWOe@mP5%p--Y?v*gYZ=plodb-K;S~)0)g%~uxRD|>}^0GH8l_i2n0e0A_#;F zLPbCVAputiAXFfs1fl%727ycwsQ!6vjllMI9Yhca5dnn!cO550#D834egyI!f)WrB z{_zP&vJ8?1p`)Urp`xIpp`l@5pkrba<6vW9VN(zi;StkN($UgTQd842@vzb}a4}L- zvx%^CJ?0Y>6r^JnlN9Bb;1Lkyf9M1O0|Nsa3!5AVhn)Wr^&|fO<#7KQM1T%r1ARb3 zcmzTuKtLiuxbFke0n(y8%o4(b(0>8~A`&tRDjGTlCKgbk5g*VP2?-Gy2?YfiP#hr$ zCD<`j@sHCi-qpPQHU}$7)Wev8mwX=8d^z!!c_45x1dlMcJ85JFq{4OOmE&Y8) zW`03oQE^G>$FjQmhQ_AmPc5xIy?y-ygG0k3Q`0lEbMp&}OBvbBcxjZ)x^V#r{jLB@i|e0&w$?2td-H zUs)gf+o`^waP3nj^NR?e(0wFHdR4kdI_65L=5(s&)l}eIpHmp$AGP{eIBb962O0u` z2UdB3Agxo=siFWeX4J@+a4}YpSZ?bvI9}>1Arky1}E_ z({*G_fw)XgFG?bwJ6Z!UQLj@3rU9Ru$jnuz$`yXmR?T zk3Fx*&%>rBHAxZUv||b7k_9o7G_Rh4zPEg5{@LDp$m&X$pNHx7JM1YwI(g{ji7ShF z--AN#EakPL;zq)_x)nc)mIklbx4ABTm?(MAUbx!h%sp6fBC?W-HyN(1(kn4N&_y8B zL1y}jhU|Gm8kW9NRZ06>khNP}S(oV2sXG`D?sTFnG&t2I}aOxBi$9lbHtki)PO z_;EZNGV8?)SSi@$7xRmn;$4e(BL5PT6xI>qkD+PGn}0M`;?Zl5pI#PZdUfnGFn}$PoP6OUj!NgA#Xa<7KQ9re6e%d z3+~Ex80lFxxMif2YLW~Yo9HxT{^PIRkbZu&mF3trvBQiEQo|+wFEfaINymCSQ=4h$ zX0Ber{ABQ&A^&?&*NY&GGVNL(5e^4h>ZX~>H#%zc-m9cuO1))GJ|BMjq?(2zpry!o zC_FdlBs1x6C2+_LPx_Qv$ZPjAk+Lq_T7g4_lVsI>IIu}kB{^QMCf?RaRr!%J%@$#c zC57eq+C1_PgqS#_n8v5n8Zn(zMtN8*FZy5YY&_tc`If>vPwiWG3!0}pQ ziMQRjWmtP&qhLsHia5wM*upw;{bKLD4Pb&+6;bR{ZInw;e*}0 zfBp4FAR{$b`dmrM+uX34I%JK8qXoQxMc~KU?b-8Ab|W59sZeuh*AhctXNW%hyUzb% z7M}ix#DEutvHNY`>6eWl6h?Wj@j3k0AH10k*EJF4*Q-&~!#7~#Aq)}LTxs}kDU^}j zI-ViZ$*@~|zQc+4l@4!UrpC^ZqPt^xPcXKA4?Xy=Et937KJSJ(jS@&ENB(jdDu}3 zHD#1cxV)7yLCCYAuCWuOmyynIIb(jGgv8Xm1pKm@6w-=?d=-d04c$*8;{Eu%HQ4d1-*Y-}5QSr#TMUg_; zN3KI0MwV1n^&(7Ks=g6EpXNYw%04B~^V|J=`0Y&fm91;(f~n!k0CQ7IbY2?25_TLq zV}d{OOh}SQXuFV925uHhyo1vR8@~@&jRYAg$)KM~tWcfY_NlS;TT6erY#rMg}$_a~=6t=0I;}s=7c$rE_uTH+)biGP! zUv12jD;gz8=RJ+CX86ga?GH2c@y-Vehc|zKWqkbs0CL0YVcFjEbk^i zQ{J5Fa=O{X*Rp6mUC_j53OaV}HhE?FF#-7?@zqtvAa{|}aqCPY5f2UKmFWF%*;c#p z4j{Gryd32f7N^Dg!@9~E-Jk7*v z^8Z5FpL+npdT#0eAcz;>)(3_`1Y!KiN5uXsU(v(W+wEZ@Kny@c__x2&eEL@eW*&r@4`fk)0t!%afg&XzAR#~l64n|ZNe%=Gc58q{=Aj{p zA;Os(lpVPbgfIU3^?)qUB{j~-tQFWXE9{6XxXdv^iJMd5pLevA6j5u&X3{nNz zgA72fAa2leAhiXe69^3Cd4jxvPi_!D=rM>7c>R(0q3yo~K$L%khyEV={qMpbxd{lA zWo7C0T)Zr8ZNb)mmNC!{;8uT1iOK$&V`VvdMX(Fl!_v#ugI>nc^Wi=`=qK@~7B-1G z*q7eG9yp)z^`zIe^LBpeVrlOLDEj81FCYRd2Sg2AYJxyapMiWk5IG3pUs*4}QI#H; z==~80_Ze`^0|r^Y2HGG1MDh&?8yy`T105TnlLT0pSOg?^*w}a^V0x|+XR1s0oP|;D4um%1wCFDnhd??SfEQuK0 zL-NZ`&ugaQy{;s*)30iG)kK4--Twbj7ghDzMTr5 zTo|rhVT6gl$LIdw7aV;Lx-w(7%VL;NrCnBtXcC*AK=M5`kkl}3UBKCUpXgZt7D8Qo zm1)#AbI#E+zP2C4A$-k#55jF~@+L#NazLMRB(!5mcse1BF zSV%!+`aPFq$@d_=3{pX{Pos`ObW=vV_n;?T=eaSQ7Ma&{I{fZA&RTnq`TEDci3q$3 z3L0JeUG_>GdgUN}SaJ{A^(Hi&g1ov4XRrvKAl-|uj56f?LEQ+2!iB;SeN`BFf zXWRUHpf*k9HyLC=zbJ7oJ_D!hs=O%t9XO1ktVK1B>3(8V~e+8pZiWOSm|551N|12RTdMgH(&p0}`*E2l?L;wL#{m&#h*uuI4rD=?#^w zT`xa9b$2v=-h9@fz^F4*P~Z9QcxDQR(S$%bSq@8sTH0kKaCO9^v7Dne_p+msf_$tt^^*kAF2UQmyUdQZwcWeKsm}0L$2~cG z=MQ0ds1H-@wP5J8iJ)giTj9<$E6>uQ;Z7q-&BWJb7yWHb7U};7D z);}Muc;)WFU3tFRYZkYP+|*6bQic1gc4WHg@JVN!qZDSW^h+mN=;EzpWqh0PVd7*E zoy%C)SP^As^K>}smBB3Nr{Tm4>HOM4&~)QHNRFc9=i1TISSK*SU229O;WQj+lR@WJ zqiK<%`si=h99?RUjwU7yIL~i|ue5eQFE#;vx-8txGJyxL3=HP2t0wc-FETu=l9a{WjqaIP}gFQR}P)KhD zcxx@a>|feD*?alZ+XGJ<0EPziU@!l86!AdMK-PfqeF+#{dXOf_4!HILqUWEh2SY~m z-_)Q734?e5V-0lpmlZ|DR?(DKq}TGcd>9hQ2ciA(<^tpW@wOr&AUwSP4oE0S4*?bM z^Z|AOaKQo*9Rmvk9UT*J$YSDPVq!fQI5Z4gJREG?hwDGyR-pAmE8vZdj)wl9Ch))i z{+Ep#L8AW`8~6WvTmL`oZN0t8kKufb$(H{blT9e6*sn`@?wE4*i|%yQ5kBGMGmm8P zkeRm_f(QljBsn6n4Ov0DhRPpzcLPW9O&UiqlqFHW{b1dFN-3x*Mj~r)qL8uiOTKHy z$;tRx3K>zMd}Qf21v|uB;)NokEdvDuMTFFp?~f(Xg-}0M7~A=D1|80JWIqZ0{cfnX zO2a7`1!R=}VcJ{O`Q@YwHxGSl$SJ9kHEtx0n<9xMh*%5YpZ|zDJUoO`XlVw9TXCc| zR^ggrOu0R!_n;n&!h6tH9pLx=IR)5EN_#Y{<;oPKiE0bvZ6W_rD80cu1^LNd0$Epq z#7l#vMxo9cztdOkCXLo$>ATYB#M50cX6b=Mxav9d3e$cKP6*vntb^LnEF+17x)GOd)0*a3ysq--A9B10LNF_B$afjX7>1 z=X(&iwYlXKMm3UZ;Sykr7DFS(>=UE+V&$EDCR_f8n*10x&|eXwA4IH&#Y?=KnX|ua z;y@}w#-1}N@0PHi(4y&Su*=R`#-W*FR#*YdBEL+`14;gW5|x<@t!#ZT%lMT=K><@? zNl#ITwf=7+E$5gN^W731S}@kWhkY&|ycRay6Of{aXI}x&9U1VF+T|+iJuQo4X0N9!F^9=hVMb>iiv?_TfEG^%D0h~%MMS_KAxJ@a5faNH5_~eMpgQ!BK7Si zo39{fe!)MqS_#|r*I$Z$=H;wMku!ZOB7k4Ogq^EIAyi<4H>RGkO$_T15Rrazzc9@7@9 zI(IZ#h&FQKs>n|!n{lCkVU@dMlpnL|JXxA6_o=C=d~*%XBnd^u7BH^0;M8hqta(qHNc@XWmf?==K$;Tq$Bt{F6!(qi z?6HIZtn+N}t-YoLnWo7~L*{AwT+)ifM@OOUZ|<=>_3wK{-$>vOKN;lmsI0KFiCwOc zUXQI1d^`^!wiO@$mf8TDZ8z4Du1@7jUUi;uZ2}CWV~6Fo+0_JP`m$eQA-+nf6LVhrnRu!9c z$f^8N#JOt{1m*+{L^)gc$EFb;dX(2JE z7WMsnyBv!OC9ggApfI)AjIG=E+=9b7#fh>rE(agpW~avu?<9VvP@)|{;rk6`4K#$Y z_TPixtj;U9U19C7HeyR%1P9W_cMcOWij7Rw=$q=*Waf74bp%Ws+y~uVS$?DxGAs#M zu}|D4ORqzN`EQ#f$OD5;$TsKl+#$Z+k`1t7C*F%J3adbV<()PoW7~*pF8ygP%MjI% zNhyiNo$NQfQ^7)a^TD7g33+GSy!@4}XbDAMEB?sPOJ^x6XNFY@-NamJPMuum$V6e$ zLOOnS;(O3~_LW2@Dm?Lo?x|{9*8U^=ygezWv9!z`NABrS`1&v-33J;4v7urPJpB&i z{0C&Gd#Q1B!-ubMfEaKhQqnp>zu?|Y3Lq|SnEAo$Do&nC!`NufP}_dK|7t+CId zVd4#sb0dPS>t+tYqgQ>6Ov@G~qgm_iuX6)G8f4RDsPlus6U|9U7EC|Q@#^7#D;tGw z8d8(*s0zVXE;m|}Bd@DTLz%U9qRl$m@wt&|2=m-`V9O8r$Cg6ter=`tJ$R^#g!&$Y z7ItBCQ&C*qi{)(Q%JVXmJZ^ftn=wJ?+bQ2qVqE1*lIz%OH+62v%Zb?2+$1=wkrmwV zxns<2^gYPB8sn}HxXH!&S5De~?{^vQL45%|CXKV(y}w@?y-Wm7VOWFSk`mJ0^+nXC9oyxU7!oS}%n*tc6S4Yb;qS z!;Y1w)|6^OxDB*xru#(98QanwB@$$~5)jx4(U3!{6!BtirI|LVr-`DkIz>=-IYq{T z1b3SN+IZ2J*aI)3et#U0%}G&`^TAv9)^Fuy$fZs(2!G`3~zRX(r7q zCh2IC#s28$$Ob>qZpcd3v*1KqU6FwhTih?wl!jSP<}@K&mopp@R@1yl3LgSY8vPf^ zq6F)?#Rk&nNVkLZO9;;0gjMevejrKl@=r>GDBdiUne$~mf~9^hEB}{i zR3vhvp3PP0D0=lZ7gQZB|mzFn$z)3@B6Y2R*|MPbJ@ug7VXKE6_^tTHz%%xrbI zw(q#CZ>wur4jzWqD@IE@@kS4C9OHg&y7XBF&ofPaV7IEwJ4J`64eb2-7$mSJO|cw-eKS+jFms7-HC}qoj5J0l@C8tM;A-rC2PVHR?*wIX$shGF)mXYd-jBi*2R=~O{G-(KJnz%{yFhh$O8Vz;Okg?*2#Ld%<{%AFDb z=;a*own&gBhpfN72N8RjF>dm-mEP#X**7unCcu@ZoB(pS#%_4^zW#UAhvt-nFAR_P zh&g_CxxmpbE8xy28k;Ehpl}JXtwbEhV1{WCs(7jK-^>|4)KXvZCK_PNo((W}^B`dJ zehz-gxgkErHyoA0MCsq8JSyn;pqDqC*x z;@V$zruw4XrI#%$`rCSAxyI~J5Q{67wAQ_Sb}kgq`3N|<#R;@%J^67E|IyFk(kAr= zuTs_4zAd@wUH&(QcWZj7+@o;@K82frB)LL=eAetfb1t zk<$V95!Fb#%}rG2n0xf&_kGL;c~z;oGNLMm!-FeX04DeD5ISx7uG;%t?fEs`Tg$y_ z$4H$NBJ~Shr>Xd+tS~k1=6O|Up{~IfX_$e=(&|0vQs*{}*%i-0t=O-vKRvq0-k0Ez ze~CrnOZ3cRX&+`bD!94bm|q-S!>>fhi(@$RK;#x4;r`WpOfYMpdOMN5qIr87+@4Q^ zz%OCmwT-6XrA&74)r-ovoX^$06~g_sl6~Iz7he0AS8KFy4Y!Mp3IGl*O9d?r0)vIA zur9$RgOqDFMU&3ma%ae-3g?;aI`0AaTJvsd4ciOAvycYgs2herJ!jeyM=RuX!kSP$ zJSu)!EI6OwBxRfTBr`w%K^v2VD>uaN+_CY`QXB(jqVzC36Q?cdi)8;r?MdHwAw%UbkA=>LUu5_`Sn#o5Oue>Y zrb=1k(K~0OwW=J%n47EHP-#19>Kj#HHP_uZ!;U&O$9#2Rm(jG1q|hQYuYr+Klf9;| zGFEQ_W4@3YxKTWLpR7vwiVn_IatPU^3t2^gHHS!`d|chV6Fa$p$)$C_ZVR2H&~dU3 z9A>JQu&WU3`4Wmg^xbHM?&Aan(^Ra(ii!GK^zlTmDdh5wE^>D!u1x=p?N~LJ728?U zc}M;`SG52-2Q3T0Ja*IEgB&c#;9>nx0x7&3wK*Y4gMn52uCzUhM$V?z7Q5tUuAX@B z`;H8Ybira`WYlgbK^tZnKH}u9nC&FhlSi39C$cxkDf+C%a-KI6Ftbt#vEA^;C8vPt zSfFd(U)l0wj-=dx6!hQ4%`SUM*=xp2uak>4jXJoeR{GuVMqry$IjAfqBRv@s7muKe zsusDeca@Jkh(8gRaff0#@FkX;C>2}?t@w!_SilukvZieh`{uyW8YHgCvV> z@veq#MyTbYFs-!0|@4&5llB$Fo2{#I(O^`zC2_T zM+w2HuAU~(vN4mPascO`1OqCbT zeQ{ZWQx&_VW~+5#5NU zE79F(vs9;?))@MztXtw z8*6X|gF`jC0lY9@b29(l{$i8f@}GO^&wbw2V^j`aKOQfP%O%|uBFE%B;(%Aklc^LG zUm@uO@S+y~VKErQ-L0%)2CAN@uH&4*oG%X3W4y$4wCfU9YJ}vT|DNNoLQiHd;3{T3 zZ9&JNQLNW`O2-4~2JEqOBF>E-+_u0^Rcpqw=7ctu&_3B;DGx4%c4j*E+tfQ|5GprffXU+qpA5K=j8ENzTs|>zm>LVNmDAEra|=r2EiBsa zm0Q`mQj?C9ctp+0d_eoOgc2AAoRD;*O4~}~++aj@i<3nPY8L14W~W_1_Z}1$)XCysx0`8u=)V~&jjqy1!~bLB?w!AvX700A z8|<;W| zDSY;q%UK#tcl#UHuholm-B%VNUA7ar3%lY8&~g(&Zns}PA{d^?bxPacxT2K2wU?26 z(K&z6g>=E5CN3Uth=c|z+E(uZ=MepPMDWfrCvOO;U$4%qTN^_%6w3&C^t2Op5OTDE z$Lj=ZO%#8TSjhTXBBh=2#o!Gm?^5$%C*Id8@kPf~vgsQwj{ky&-Pe}t` zd@auvZ-~m~Rp$b6s^DeQS~YE*CnPhD%$1FwQ_uJ9^uimoc~|up4h*CN7zvIX`@6t^ zvqEHTL$QaKasl48Y2L93Nw|AFjU1_w-p@@OARNyWhR2+ng>LxBXZ^@|+emMwoXufJ ziXFIt9ZgHFG1fD|Xg6Lb^WAOAW-Edw@xt?cSL!(}vHXku-jU7P%1juz%1jp@e5JPG zi`UQmOxE!t@0K@dRM>2DOcxgv_FRQfwUTQUl!lPfd^o8cu!e?WMkNd`rKW}G5+Ee5 zQfzxs5d%vU&Vuu11MEMN7K{A8SZ2I5@IxXPaneRo7?H5L^aac$+7kT9VC<%JtOd2y zqd>D9aBX-tn_yvR&Pcl7-R%tDLyi7qsfZYD1x}Q zAY0Tx2TE8G0@13duONM$0XJuGN#GZGix&&6OAl+jUZZd@$A^bi0%u!xYsTLUD-Yke zKUeKWNaP!)E~kil;`)NlZ^;cOXk1p2y*yQ&qVOB9mdCKe^!B`}q;O|W;siXV*jH7g z#DFz4Q+G|m`XF;>+N50dmE)S{;c+4arbZV^*XShR@avAEzJ69nPk^UwV>djtum8?f z^!*v}foINC!A>V19C(HgIc8o88PctOLsPux3xy^5p{X=y^Je#IYf&Z~DLl6bfr~{Z7D|pEz(g|7=uQxOrZ<9vAu<=?#94Efvt^L<89fm89 zeVxX_7lg}hDi*nunh&Cim1pYsKOtA?ez&G3fa5D}7^z0{89A1R_PjK6;E#=Q7ILgg zpB36JxT(I?`fSrV$Tw(7f_aksPPydOlO=U=Wob!+^*dHz;DNhuc-KtBu+XJ}O}VzV zljq_`Ma1ez8pVtJzrQBUU>JizzfPB@I?(Pg8)3rIOSYHTCyJNmUk+uTHfs?7JjOUf z9&?F1AaY&hHxc~#Y0uiY`o!S!@-`KCJep>&6)ho9W8GxMw>$mJ{?}v2Oj(sV5k4^^ zLXk|u3cZw2D<*3zF_Hu6dg$S!b>5}K&qR(;+>176$kUqkAoiVzITNoKyCjMN42DOa z4P?-%lq^H#J+F=79HORjkI&weHhs&qS2+|tKP<_7LQ930SQ*zd+t*Xb*)RW0@EbQ7 zh2+KT8rTLL+;a*%(p!tyJx6^ElZt^n0k$RAg?D%8mHBr=_aG|42^xoB@vf7If)9nz z#ire&DyS=VvK*`-L1NKpNYM$Ti|9Fy5)=ko`%DSxfkZ5kg*SxzokMZ#zuNn7^pPsj z$6LiKAIWgUT^npB9weP?UDgA0n;57N)*Zmw?@DHDKgpm`xvxonkT>c4erwd9drHKf z3Y#(7RN$?@o`LuA(C(JI+n{dGCZj@Z{l~F6-pm!Mql(Oq!;e4Qk-orE`LFy&1*?X#zP|_A@M7K#L$SEqIX6^|^br`%EG$gBvVtniIwh9NGXjP=lZJnS zF!S_e5@oBQgF91cv=lzH8VlXci^Cn?=fAh|939@$S|sa4@c0)qa4yd%i*#}6PsZL@ zpYH^vCIjI01TXMkA?yu6lS7aFSoLAjhtNE~D$=yoHM6gk-)q{m5_xu}Y;gg%tiQ-- z02zKYScBH5AL^7qx}O3bN;UJXo~5Er;DP2GN@o$BdLzuSJO}=#Kda-8PGfIQhNMmt zMk~tOu6=?Bj71KcVKQ62B4;c)6-LUJD@3}dznY+4#IKe1CPkUe1ct=O!P?TK!OSKMUdPMPNh3#b=g}mSwY+XA`4LNSd<2H<5Hgy)m==uu_xyW#L((Q4r^0BAk2vu(`mGb^Y*1 z4>#cz)fx%BWaMsM$-?(iJ_?)?jlRpZtS3Vo*yJNR;&QVOoYCyV>uo>!g=sgR%wDE{ zgqJ=QidWQVYOLv;k$7{u$#2?AsG{3x@Xw3MP zhu55qm!3dK3`$fI2nn|1OaiCX#*ehMT&7)<3DibLF56YiF_!o>w|Z&&1%bWbAUE-fYOHqO{3I?q@U40fhfieS<#*ua$R zsDCuYd2RF}S9B-T8n6{H6inKWb;G)m-D7TX)3i|1Dmq;c7P};mPXh{mGg1x0qut+p zD#xw3troZVX1*7D5!uG+>myCpN#qyXX93f@2Q68wSBJLCQlHu7g1%~VyDyH$db+yO zJ7%Rx%9@rfejcoE3NV-h45G!GrSzCC8x3r~cWTY{741|NE;EEeo2#pSaWdLyu!>M- zsa%@?Bn!>E3F%tjUc5z>A6n4Qw1oAr+kuK`l9^5aDw`zYjiF{y>qd;gHcf2V8Pf=HKii!<{}W1_jBn=>jTaMb?L{(hLxr>P3M|d3Z0(S7x?d z{sh`5MSLQd=8j{fIwK)lvb!^Pz(yFA<`~#ua;g<3GNPdFf!1+139YvcBf7&N*sR97 zAv=+P;(KXe?#UWn>l(**7IDSXjF_4ZScm9gDCK0cnJs`klg#(a0dU@B>ujr)xn~g( z;HCY%KZCmwYuQdW_Y1Wr2iv74NY6>fpj+61W_HN`3Uo7=Q5&H;_H0b~L1B8c3;6b^;30)~D-f7AU1Ts3+&c&@YO~fvjaKy=*D=yWR|xb12qfcb!RRRYbUHJ%1Y-tXxKp^zR=kqV z;WN4H4NJTsPV5uzLY7{y>B4Mx-egJs(yO&(pU!Xo`}xnLeouGm!ENN)!~g*lNTzi!*coX#8inIH}FSuh?^I0~3osx}_Uj zBXkr`1|z(x2@Pd-l(dhyI_i@`CzT$b)KU}1VNe@n`XSw6c*9r$AJsXO&`t^|R%5Q= zNlJTd3uWbb1cv6eiQ~BL)?^6n?3yA%Lhnll-QG{4>ZTJ}8A7Xbfa68zy}JnR&TlCq zyiA35K5}FAY%?Ks&1AJt&0}oCuE$2wjNc(}mXN_4Qk}~X*2LfBz@JZkJDaP03{-)? zyLJVTx~lg?v@~WrbBW(Q=#J#(rCW>Wnq~J>9}nU}?{iZnMlx)SIR9OJaVjQR}k`_F8U>pXI5%A(3k#)>bJ`=lb2TZ!FQ|vr^s=taD=p z4>^gvRKD#9WIXBJObij6K(W|wezCgzb9zv+>Z3EU*7C|a)0uNhH^WU$IT*sjF&mE6mhzQ8%g_38vdmX zmyHC2WY$nk^wngAk)Li#PYkUIaphfaB;b(38xEN8yNycBRaHqcnZ|^Xft4es?B$*? z2L)OM+ef+}e)R{x{_eIB*p$Sf9GaQEGJD74(p;x%F>ST^X)O*WA^W;p`Rk=&8G+aK zNSDuUNq~b$N^!QgzOQj}P!hmA3_b-r{qxb5heuot-rYFCyDR;OF5kdaH!39-<9P>s zjpM}MrV*Z|hAt@6r7cpaZ+dnQl?2b+gUA}I-?+lIuE`e@;VKgD#Xrf`?A{D#8QrW2 z*q{S{P-5%#OjOxRAoOrkJ>;x@=Xfqw6#GVZ`I?*cO!=;)T+8A~GvKL;>Y@#n^gHfZ z#W|siY$qzbkxpKkQ?6L8IQKj(c$1bhyd8|v2?4ErVJ`PX4R=!b(gRg1)y7~f+ zqD$;LMPa$+wC~?#`35~Ph+65zZwtplMc)O;khduece3tFnFu*cOHM;)d6w(0`O0&1 zD>Zhtl986iro{B%uAJ(xS2i)55PM!)2Rf`y5WKf9K>4*p0Lwdfe+S#d(Kw|jBVQf` z1;ytv({SZYlWK}UX4rUrz)O+VrX}Dyb-gwck{@Jx@lZH2< zU^4#YueYkm1#bHkNNIy68xwF&=D{A|_;A^x4@#V+VSyApW_(zgmPDK5VAb9pW5Twr z>SNvqNyqvun4z!kWKnO`<+5nC3O7huizN`Z+ZE~2WJOOZL zwai=RmF@o0IAokd?du={j;)d7m>LL$)0!Lvy`bR-V$cvCEkWQlp_O8spVt<>FEfDllf*iiv6iaxIo%l=ycAM%yM>3W!g~tHWky z2}7NkK4foFX)Kl)JgYPOTQPOy@L^o%#N@MH*}7L6*#eb#pO&?HXgE$lOKBa$>dRz- zWY7-q^2)dF6zT&;MkF%L#A$o^dLG^!9Q{5h-ChcHhsFpvcMTYmtxj@$A+)TV2s>hO z1<3N&a9vugn*BwUNML$)tP@I}l-aem)e)5Gh!l`8qha%|Z%zU?PdO)_|I&D2W<>F* zwjm*eDA7EW%3$-0N7)bysBM}yG+LiX$wj(4G=(ykm1+Id70x&~d71L{0oi08S3Qk_ zuUK4Zo*$a&bF7IAI2m1^(o&+hzDF$5Z9Uptj`mtVTYQc36aXJ$;L_kn3{3DQioDP` z3objyZonS-lW{bX2`J2gKkFtyTOqvAFuxeR_A?IIn{Pl}p|@uxPlDtWkRb8w%1u>4 zvScC!+=~QPfN+osg}cuNa1Q+PE1q(0tUAUWe;8UFvAtq+Yq`@(JTqn?hih=CvPUHF zd(KRqf8~u8rI#o67|K!HqC8c9-NFsCM~3;L{%~%5(~?G5q7E>O`(sD&E*`M3$Amqpkt8FN^<*H6Zl*jKt% z>sMted5C?hueK9;GeI=c*vhlGil+b6$7%@PbP{r5rn`l8+8uA)0SkMLMps9(Mr5fG zyW*J-I?nu_IJ`S9K{LQIX=^26rrUF2UrDYC`g0Do>qXViyX8)`g;G+$7}DI37o^6te)AH_+ZDFfSh8G#?UH0srA!H`qDUQi-h;U`Hr5Z@1!Y zgPcQvxJg(Ns$jmuK5KB*&%ZiBFQa+*R7>vmbmrX8YLLL!st!gyBlj`;Xmq~@J z1dih(D3+2(L+4#de`)3%0;t1fX*~Xsh6Q>Tc^mF#h-MizyIdBOR-wUe5Y_<1gKun zr4`ili1Bm?^<2p!yWD*MkQ8P#a?XlM4x>YUZO2I*-@5rP8CSBc?IZp=KyywsNU4GB= zTJnm%Ucl#}+KPcal`vwIp?+|0|Jcl@CR3l68&?p!Pkn$5H*GoguX!WF0pBBN%-eX+Pys{rWZX6D+C zzMbh}@?&T@{REMsS~H1FC%l~Qvrp{wAp=?-FP=a&I>{z}@Ag)ocT*ZBJxCSHra<}e zMT$GIcFV{KZ_I6&kMR8Hrlytdo@aaeOr~FsZc3tcC;Yr2(_-aTGTRMHjhZQJT$iR{ zYac03aqnlAv4W6Xy1)$H=hi} z^2Is9J~iTXU!S6OzUGjyvu+eH9f!Ch&#u?jdqr!Bt=DrM=_ch{VMD9xa=)c%zuqFv z+rAfyHN9(f`RP^be*QoD*zvSKTLc4wW6G@$bqRK0?eg*JKd|Yi3=?gBE?Uyhjv+v5 z9`_da90lkmJ|aG(X#A*-Ha@#Ks&WnS5!NU;+~LT z+m)Z-hV3x6YJ;jEe;2I_z?b&6ls`VGR?6n%oscZOu#47=x?X|rC7hI4lHNjz21 zigI~OgG~dH3)V=Mau3NfexQ@Wv0-CkW&cX=;NaG5-*5V0#+ELX21npg{On>~CwG7>~8&Ysx*(w7H(%-Eh40!eV7IxzHhL`*OqPq>*s6-sjQk z11;(oyS8d4qq|}H1>(G(WUAXX?y&b8DQP8ED{Y#$ zeoLE=iNuQ;;wr^HvqBMW_ui@~vk-1yI7HF{PT2_gnsK`yzWbxg6V-;9ZU<(1D6QSq z{=~ZhoWX+zEiFQCN-vvq6g3_=`OQ*Kr)+M#SgVWG(`d3Iaybd47^mi~`YvjuPj7s9 zglmi0xcs?^ZaMfrVGXl_M7rR&Lb$KaU8CzuLLfwMG&;G&+Jc&0UIu}>{BGwZuZU)m zVa2J+)%EQwwicaP_xl3F62yjrimt;(-Ay9*G1-L z2L$zG91G9WiC+DF@f}eI0U|*xuzwJ}Umsjyz%@{cvV3ruA=OcbgoPKPyGQ)E()_Ee zW@ZW%5v)AKL5GioLi?9Tz3IVjhY7D6cDRPRaS;%rh5U>m!5qCha=;o@-&CF3&f?pk zuBqU&pEkp{3Imv;z7qo|+@j<+01EGM{mwA*vb&XkVve<*vy(e_b*lcQm|LIEw;8n1 zB^YQLh$X@*QN&fyh9iy|shb2&DZw2oRF9&HB0K!0`D~JhTIxFfOA|Lasu%O^<+T+H zP4$DMAH&I1>itqbNQwcfYh>-@fgUTWW*&q#%OPoMg6yJIn=ge1qsCt19 zb-prCUt*GkJ+iCs2ch0SyBSz9Q+ZXHbQn=w#K+*^ZK-v=9kFl z2Eq;m_GaC7Mgslyum2Fzkcog+Un|HTfuWoE0H-AglVM@g*pHyHS7pge(Z}g;uXM|d zJaRvQN+b~iy6$^Wb7MACG0KA2}=(}Ye4{aV`5jFc>8?M>6$gywdZtVv8$Q0 zw2yfl!c0xx&Vids^U=KGzFhyJb|aTlKBpZE%ceyk9c>t;Nya^s54k z^pa1kXuE^=g%7`qe0is%40=j4O5JCE_a4C}z#4eviE2d4kDnc8e(ry16w?!;{OeBGj}ld)w~-eCNxjJ}GpCA)EjwH-M}Z~%%dU#cPtVfe!(SL{Zkl}>^_>k8 zykA>cSsOetGNKgDX!lOBc*%S#NTCaK$NTtJi?!t z%9m*IBQz_TV`@t~acG(4BZRz;WPJg%ct4lD3bKJ^e?tHDn33x* zXf$YOp<8;yFU$HQoe;RF4o|bvgahf!x1zHAht08GsuJ-bXL|cm&M`hP^xnJBEv>kw z*NNlPx`wzzH1A*qYq`p>xOWIWhUms165ZXz*0j+L&YqyWUuj=9(<|wc_vn?~UA=jG zTd?V2qVIgN_)e;+qKIe2+AvSWQfr%<2`w7Ll}Uuovbta6$FgDqlbv#=`{~_cIw?!p z+{WF-OYJXNxsR@uP=~1JNvvH#q6G0nbk!zC&_&rRfBmRETSfUj^rL{1Y74#L<@F5x z_PPS<1?pfHBcMlsac^n~5EoK&-Lh00RgO;j*)xwyI&(dC9WyAScVAq+F6!Nr|4hyi z+{rQiYE~k7g*EanYr^gWe~NpGU0%8+0+>fYibuewIb)@FF^#V8Z7=9LdX(#}ct$o> zwBF@V+nK(8v*85n>MwmjvG`#*;6vTJ?q*i9gP)JeQVHp^f}1^r<2z5EJh?5>bCqw^ z(O%(GmQJ8vI}VWCX~l)2*tZeZ_&6Gu`ZG-qij}j*_D-PrT|EDV+$+?F!Da2VFRr)b z1J-1EKpk8*M&Ok?L>BPdA4v~)-3ooLmmaYo6%lE1M@7t{M)??WXF+@#morQ$;K4vL4pFbBs4+><=8jIluen zh1Lz^=+Wd>HZgJe3_5om#;3tcvKnn83v?F4vEA~7S$7ZRp!>U(@Z>_gklaoyQeYQVshG_2)#{Z=mG|=bvu)}u27?9~d#25N z)Q-ioNM_fgRcv^(FkpQzq+_D1&&NVNZHr7_?qK{s_7 z6@sZ?=!9|3PEmr01FM*~Wy0+p3t~V%PXqmkV$G^!l%RW$nbfqlQ`(KOD`=XSr3*Xg zqm+n)xS43YN{B}_>kI>aASGr$$W*Cv8N+WJ$QrSv%-5CN=i{?F-}PI<+&paAlsV*m z^}!Gtx|EKiLtJtywRXiY?=uN{v8`A9I(m2QRk6@OZrp{qvo^pvtII=t$Df-xJ79E; zl7xA$w%5ry+0!{2TmHOSmk{1fm2qfSHY~d`+ z-3u~56j=q3Bf=MnP2>iz!g|~FnV?2C&6*TTVr0Z|8duUwJTdN|FwnoH{t(C5$~5K`4+|gDKkhdA(L) zp)o}$w>u{sZB|)VWtr17_UvMh|7^vbe7ZHhi|5aqJYCc4!PT0D5unp4)_~CxD?L1s z@H_hp;vq?Fc#{*==6!vW7xJvuEVyliN)1ZR3RLH;9>(;}oRwr)m!GO_ov97g;4S%5 zj^ByY68x4$QLqO3x*R$V6+T5Wq;eJe+=xUkebmaE{XO1DNc-?!0H?3Z< zNp8DT{$gi|$H!IM$C=-5Y@8L^OghQMISU$xASD3pf?1%FaHjbX%Ax4~$g6B~WO25O z>HG0Gsr5*H)e3XV^j=Mm3x@$lY{MBlrQC-q?@kIRwvCDy;4`|7G zBvkteZ+G`S>h!3GlKhr6P;Cg&R0&Gnkon^ypHsFRvSV9)VPNzz0qgPwlR1kjTs7-6 z)q8k%>5&atv-%y&TBcXM+pijM0ScZLD` z%{S_ogBoaCW~952R}tDIiR@!31e|DFM=)6ql&5u@Q7X&CDzGa5G7R9<;7}m$u$!JY zkgZD>i}`lUNvPdw2eHEC@ch#|Q54CXO_hoDRXra?Yv;2)Q;rY$3VPZS-zILjf$Eal zx1Rt9$>3#TStM`RGp7V2Sy@xrRX?W}TMP>x-}AkHUQsPASbLn^GZ5e`B!rPo^Bf9# zK3-+@(X7vHC{tRx&<(p|qgYlmvc71xy$06<{R%Ex0Ma1yvAHZu11K$M#^gMiV**PR zt|4!CRg0ck8E5qEd1DjXy<<&OPcs}s?c8KNk%+B_ase=7QY~8EH^yp&`S!iBZ1=!o z*A!o$uJ-dK>cLlR1a+#3N=r zQyH@L7z9i+^`#|B0Zc4}Xly)n3}VKh8fOWNxXQSWozSj@zU9M~`P&^@qC}kz^z+vh znLZD#=XreM(*u9eMuvkD8|Rk=&w({e5UA8_HG$eefy=09s=zO`j+xkoWypD;Yq7od zfdcHhE14W%ULV*UGoXli_U+x3V4LL!pMG;6=MfE;0z#qBcEZ)1gDDL7dFeJJ*Kp(F z*LADsrv$BG%Fby<5jO<$67;n4dWsgA{?a(3PEj~X^3h5dM!@(MaiMUzNqBxw&t<&I*z+hX?f^8gkix#_F#T| zBA*^I^_S-2t4j@YE!tw1m&Qr8!XK4@E%%SgkF^^=%WCh5&&qSOhc`cRvgGK7$W$Da_+yf=b58+5_ zMFH<%9^I%*jI^fgIq!*ZBeYfUBO|63nCaz^WlzSS-Z^NFm{t1GfGUcDQe6 zZ_cQ6Kn3PDW{_dnKAsbfgKXFpDOn2f*QUY;lbG2ME~wF_?ZvOeMaqRNIVHhObw)w5 z3!_+Fs{O4+;)ld{<#aa~;@pmzmQ}V+mi_@eofd;NeDFbnown@FY=4gK=XqAn8my}I zuwMzx`TSK=+vJJ-Haj@#6@c^D8s62{0p)Dw0;IcNuVp?>v#F+5=ZnvGC>QMNmoq%i z%wCNz-`ENqexapzQrIjD1du`KE4UBYZ%YrriY?(^DW@C9Dc;NT?s}PW9vZ4#$rz`q ziUePAjm^l4QkH;F+K4XiH7di&dkw*3PCc>3S#{lEN8m&W;67GCXq|l25Jo_W%dNuPM7fCFS3^#p)?ZBBmigHI zag(F$umy765o5IneTO05MNQ+#;XrB;yssO28Yv7EcUsNr9v+qD<#ub1Psb`oGBupf zEdP9&Y@*XbIX*$-JZvB!P2u<&az5FXe^PN#7$JI+abO|W$W9olw63Cxj2}opbSiIb zsJUaf{u!tIqp9yqQs`fr>)edIeN+(&%?TI>&#-{F{2SldxM@&IX2y%D{8G-_MYntg zh~!=<_9?I$(#l3Dl10Yvg}eNg%YiqpU9w;vc}_!ZS)jIK804Fo)-f!C_>^FK;+eQW zo;+v#l;X#yqnGL;Yjc}#UB1;yeg6LCTt=4r$U&*VXvb^Kh0FqL?La#e)9l>rV6c9E zb>em* z;BUz)x|J{|_Je26N-$X9R*ML=6A&az117|gofdNe);9>%ydh%E!tQ9>Lv1%Y_-nz| z=#SfRluAq5cG@v->qP;mGlmX1{Mt6gX&HO&SC%xG0ZY#`e9(fWj}q zeUEEY4b%Cb(29AMaD~2?=4->?pi3E;+N{iDUxaW|+M#}8D~eNt8Scvpfh(+|XEkJt zy5E!HDgL`2^5@&7MSRuc$AjFUZ?jm@%f1*6^Y*ld0NH~J?tL&!bL{TghSIR&SNmh@ zHB@^%Hy)%y_9rSwlln}6R42TLKwtOFU`E>g?6TR}2&@v*<0}uPGQHQrW*P!k3LbzS zL${y$`a&av(E;bDPVM>@kL5E}hegD{2Ef7es2^`CA72n%btp_jpAS z&-oMdcU8K!=tMpI4%4pWNb>f-q232U?Y}f{P#^=)4j26h;3edhW#`%486Znn`iLF* zV;Myc$v#hI%HL~uagX{>vqP?2*HBp&;uyImbI9SQB7_<-{{7)7VpkiKyYpZ-YL_7` zi)W}m78o$#*G_B>A#9&o4QUF;Ita}Pwp`TbZk^doL_bmZc`*tIAiyYsyvJAJdlrGE zaAk%=G2>B zLE(_~{qDO5C_u7yiI8jH`*4J_?ab2(|Ng`vnxnLjS3aP)dbyFLb%BJxYt_+pPT(^=BIyv z72U=E0Z{mtp~F9>4*x%V?LlW*@p>`MH;@Ahl0AeFCDe91yBO4poTt*blUgxqUE1xpe6- z%}Uyd&gba2f57)x&?ohvbI+xtpH#N@e`$7&K+7i7ES8!8DMR7Uf;}Cv$qiYqC#-!~ zz!$nb`Ip9kbrMPpMgOHqZ~<|(+aO0~|NV&%=uV)I`XhlearwN2v_Z9JgRKnQkv_5x zbaN1cQWEtjY7p|~Uz%L>CI+~5`!7w8(owVyFWv6uf4n#7e;5FE%0QUo)C^?4J$^UR~ivMu{u!1U+7ytEe|LfuYSLFUzTKGTm z+JB{mf7Xou%DMkvU(nFhvtS9ZOnvx&TGo}gp0IF|9l$CQ8;Yw07iw^qkK!{V(RJ3# zWeS04ysC#z@g`?kzrK@84G$-;K_u4hchZ(xQicl8ZntJr+gXuhWtIdf{`0vn zv@Zm!jaB#li|p|~YghmEGmIYG`0C)68tPTHY?eLr+O$pqdL+T++Ngd0iAig%3l*t~ zM(38g5>676BHO?uucJlvx=&pV~EaQQvVsYu3j$GQ)K61D^Dy=_aVH_z0b(|sDb5;pI-MizM#A04HqRqel-tDyvtYI!bw(E$O*JMTRh=Xu;>fNxHjHmvjHuk@TNO7{m8PA_!f?K)4#Emr=og zX;_O~wIbUi&>iJ5 zj-Jzs6jlt7B1PY;1yIMzGp+$?s4!U>sEc4G@~2LSdBU9$QGJT)1>T2>BZ_Znc;7mG z_)9bNf`yJ28m(dIUP2u})y8zB#gvXuRFbZ@AB8FihWXMbz6(oH z2VXW+-S+EkQM~f`sc9b`*2BijP`7dA>Zwo%Xz2598PJI)67=ifb0014N7?(j;J~-t zdVBkpn)ujs8KHLQ5Zg>xx;a&*$#SX&+{0Dy{fC(iOSAe(;hiMtfjbg6R(^ysY^r27=iHbT@M3GZ5D0D|^O!#iAY?WW`*)4sV5Ev=8&l0cq#^>S^?=yy_!(il9iqpw^Eq?0a z47rdbNPvVO?3W8H#>wK2>*x!+0FzQ#Lbq0q?J?XiaJY$00O9pW@vER zdZ{PEls(JP1FFMOEG?$Oq3!Ers-Cx-9j)&80y%^Q1IZH->d+1q@Wn)>An9RIT6E1n zx-M7CiblBVadjK z2?3}a^x0yh?ImEqZwVF-<=AIE2iL=oq{l^RDKvf~{!S9k8!<8Q8H5c(W9J2wCw^TWV#xN4Pc{CK`2Z`2VCe9CmodAI^>BVsOo1~a` zBfpy2YI*uxpU>!&tE8C6M-VJZ9U``r&)u_|KZmSAeuvOF0*Qt2j6_Hw&aE&y1NrwfSjw)~}uRf`F&1e_4pT=T62^?kv+?DYC#Nn?|V>D90K6I#P` zo`X9`dd9cTB>N40aBKjpkL7?Z1$6GrNIy(zuV;;I7NS5& zU6I+H7hxM4cvQ%Kp&k0)tmb2lAMFU#H1?2144Rm|bCMeOoq zAt|52)7Q1g40&XP0!aX&9t(Zu69~|ifa3GYUrv6%;Y6z!f3;qhB-ot8`=R$;|Ko7| zZl!rwHI+7-Q(a_&*YtIevS{Z!`&>)d^41~G8rd5DmRa~!n3-PBaYaWfG_YDt)|w#M z4vi4#oQN(&4nEv`*h665I=Q7vk#g|iZdyH@E|V*h#M=In}zD%|uNfWd0CRCr@!(|{OOMQ8kex??Zb>-;T$v3|}| zS4Z^rPD@^krh+npkY+)+i{&p&jfp6C?(UR^fRrXW zkHItE8P2D$rZ&v+`_|Wma@I*7*-DFximjP**x%m=u!<%80Q){y@rZjJXf{Ns|z?4fTX}U z&KbbrIIx2(?ePiavYDbh<9IlMnvvqB4A0cQ-?9%MTzin2iNJ6)Io!@vJo3a$6d`$2M6&H)`X@k{xm+j|U=t#+L;V#G?k78q` z&a~5E+rJ%^cfX5%W955JFBcMzsq{79I{*d5pf0AWyOULba-p7>zOE$-EE9)dz~s`6 zYG$4ZBQ;Gk*(-yCQht}8Q@T5+YW8gT0`xUV5axvZUzqdM`Q}RilS2-ifo#%9yns5@ zD0FUgVctzz@u7w}J9g%0){XwPn~1v8-@6FehUiO2e{_(yH*rL3 z`51xj;6^oHA!B?{a%Cyp7%z0tIZjTM?MzN8fPXPCJITLOr^_z#=b?<#coIv1P-`&{ z3XrbdmL&*o?$E4Ll>xmRcw+18?oJ_IGZJWS5w;rW#U>y6d9>_P7Ly6Q`1zjrSa~l~ ze|eGq(zTnH>sfS>J?4YZ+7t>`N*nC!@66LNoh1umq~sjhy2@eMFBZLb&I$*0ptbJl zynXOuutT{cD6Y2oBvR|f2DIwumMbxxpo?{K&v#pZ68+-|>a*6SPPMgZzk8)t^h0>O zWE9b!Ym%M{2H4IM>t%^*k|Fh+Aqm|bQ16%}Hm<==P~EQ5qd<<0x>; z+FGb}86J(7Y*$}owrEL<#o_~H-AD+%?5SF)3&vMhvxruP+wfwK6RqR)zT_4ySiA5L z8NfadK6K_VWbIqU*nX{rUl7N!+rs+GtG&Nz-v650_7lI)xD?E=d@$MW#ZS>Z$yM^= zh9gJ2(iUU0>&7M^d@vx#V9a+YvbH9^_i*OX`VVYc&&#g{Y;WZx(-skDEFAcDzv7nS zsfytGNM(ZIgLqpjZBcD!Ny?Ip1>CyN zvu2nII$%B?^;+5Yvd(jeV~*}n>r11QPA^R2d`DoK6BC|4_mx1xd7tpFe;32%VC7L6 zw|yNu1y^s&q9ay!hkpXwF&gHiQ{-7|lFnS5lM^>43d=Ry=_M$WQfn>8Rr)oJtz280 z|4d6Mxf8MT89BU2ucbvD5LPEaB7HRl`tY@H5Vwn5)3%UOBc(mwOONw7cWK>WaiVhvHX6r< zp!K%H2c~OYS-$r}Bz)+RtJAlJ&d&C3dZ_?5kIHAR=S|Amj#Jig42U2M0k_rpnR18d zj4ngycoUef%s#3d*4a|770hFFtbHYZNiScto_e2^drgb$1lK6-dMpWdAo#}- zF@)0E(CWa=AVKX>8N{`-V~$lR5m?cxD0}YS$>poI*39(@7r*6x2L_FUMKt4 z@WfXtw0d!L3MAY2-zuQt=t$f!(A<3DJ7Yrrur*qJJnQFFT{Y}cR{u+0bkCU#9j=mR zKwLb@(C`Z+9=D}2hc^Y{<(Xr2ZOqPY=QP!hRIB?Gbkt;P4WJa)W_oXHBq%mKeYWFD<*uS^J{>}WkcvW*K*eyZw>DabF55{MsNSyNBuGL znE}ennYjt>StR*weqwtkuIe;8)NhBCX_3QKrP9@3|V=%FO%iWfqo}U*F!fs$kzi+lWO=XxXv}^ap+suCc4F|<)GdWfO4xCH8 z)cN}0omLnt#TqY&p>qu|C}|Jm2HluEo2R*}J~F!~F_u1SRKMgN@ga9uaY)8Tn{{&W zRP%WkOl58B4htO89{D0oGF-;tYqbi;tIFO2)dankc~MZ_OefQ^Wae2&3Ta0%H(!Q3 z;OAZk4OB0byWP)7P9Dxnsxm3Yv+zBqxpVVeu5TH~GWDF`(ywa6S^X-gz=A>kAbC`& zCN1HUlYM@?yyP}v;_MzFR3N!GfSr4qC zPlJuD(_F-`qy|GMTI1DueT5;3go5JP1jm-LI6Uum9DXrISiX9Aze%vuf7kZTo}SOE zr{%NUrgO*_Ke1j`c;DP=mzmo0Yad+iR^R0?i7h3UZ$38B(Z>JxZu9@8J^24_9WESr ztdEcw(NY2=G#NSsl;a4@Jg%XYQ*Oy@3$u6odU;|^oy3hrV_B7U^*S(sgnWy8V5yoQ znD-&f+u{>Dx|xm_LF;OXz!0uV#@487RUg7{oxOk2T{W4l{Osb0k*BqrN~++SQ1$Z#mR$Jw;c<%qJMY9imqNwHsF4{A zCQB7uzLh9vUfCNU1zg^1&VKyNW@9_M;}Hv-jP+`5sQ!%mFiERIVUJ$Ig=!c%l}NU4 zT6d1DaYjp@Jfsr3mR(p^dt;yj{12GqUYM6@i!?8fK$ntWtOzLnvade2@sVbz+T$5j z%V(AS6T5mv9rR%y;k)tfy!z=CG!{MdsrOPj!Q6kDLhJCw)@sHUC_3Fxqx{7*ZQx6! zR;!2ODRrxa2Ay0^d8aJJ7uUF?Am!($OErrrsQ#4uklr}tDCjW6dd?cixkYTZG4LpJ zJHA-^HN5xL!-d;!o}tDfx(*S4&TTbJ-)5ZUpSig;X;$q&Q>(mM`v=Z({&%Z7@*6{( z!}=2qSmj`hN~a)-zv?K;t$abJ;FXjJlbr~7VDg#y^qN2BEZz<3!5K?z2vC6DDn{j# zC`G+uo{W_JGIpR}9f*K$W8K>bkNSPa{-sZ;3QQ6W8zR0+%Sae<8dt+11W%(qjoJ- z;$ka~VGiDa_kVN58agw2KUO_ct>X{oSMpE3Cx1qlvcg}z>=k>T_6-t)DmUNO`Anfd zi2?1^g*k~oV-YslZuN^DhDJUF&Q^l@%CL-YyLXWecl9i2(D$q+YDrtB*sZAidre~R zde_gwB8nji1_EMlz=l5uXm{*Pajt3@LwPbHuHmPC9~?LM69?lpA{F$6K6ECiCON%( zWqwwqef7D;4-EorZ1EJb4RywuD2ygfK&Jy+XJBuhH`-^3$F^;>HurcGynPL=;ukn2 zhLW4$BW{1q8#95#n;OkKlVJeDZfw60Nuwi?;z#1}iZs5Ibue<+5w!<$sV3RGMr5#L zKfAg+C^gpQxIntyZt^(L_m9a$+%}fDe3yidwO8xz8e;lYZ&L>nTTy{Rkx?UtKNAS9 z3;2uPtDRzb#E~c3?9fIXYz{bVuNlZTqz1bkLd1YJ6$p=4_!IElT;o%S>tDw-^a|XR zkHiNC%Cd#?3)YJR6vI49&6pZ0hLd6@I?b+!heCeH3xE?_8F_}{tffBI=s-+tO_>?$ zY_R5|IE!kp85E^I;%tk#Ix`ikpY!xPTX`hkySK5Gcq~{y=PxaGMpAt6#^?nu;!d=u zB9k$ba(@0gX|_Mjv_Pk}!sruy7|)FlSKgd!WmIL?<+h<+=P`@4bLL{-*~M!Mc)r|z zb5+4W4D<4(+uh5B|Gl@cZX}lvpnn=l9@QL~-ec7^l73U1XYnO>^7G7?t=g7rhx=N^ z5zl56&`thJb5e@D=8EAHY=JV$X{h4KBis1&hvNr){f7?+uIyN3$9zr@f2aF6+3DG{ z=ge=X3<7+eW07aK-b4F{1SJPZ>&VYJ6wf*t|U2{E?t$*;EX21s7&Hs$A;^+e6>W@ z_Ly5>cu=pR4Qy2IPAGlc|0*X}1!}ZHq(5ekObF_R-zcLuA{Wkwn*3qcY&pP8wUe2M ze`&TnyifriSa@P*v)Fi!gAeN4`~PG%rMdpdEz(cuUM(ytWbV($Dgi>Mx)s*VEzK@HaA#AX#yU{Dskw5`jCx( zxHw30mw<(fBL^`o?13I+3z2Gf{~H%;XT_VUYinmQ%7Gt6FMOBoSA+qw0b!nwqn^JT zPZQE*&-^q%+e|2d#!gPe)tq&;XW8NdD{cW19)tN@*BkBnMWmek*t$i#_pxY{(_%Q4 zBg8P;h$tDled$N(=gLtBBL#W+`@zy3%~6*h7qaIDcz3FurV)$R?F){M(2zZrKwKs2 z=KH;eYA7_5LW ztOuM+<4z5@2e~@=);FHn{b^kRI%jNmMq6+9zj&owYqt5)B01~SJ!z(H^+Oo=IF<^N zVU;_bto*+gZV(YO{?T}Ow)GjdamAB+iyGxN*46vy-l zRNUwy?x3H8C$G#hOWv!A>N6VICRA3{zO%a+uEZG8-1~`kzcfvt{L;T0nPq{XilZr$|t2~T5v{(`dHcSues|-A=0=`AGt6P6>snXSt)Sb~?T_V{qbJ4CW$eqMc zxRpbER6_PynE>7{{{(k|6m+Ap1O8ZbM?D*U1q(cF3 zkSU!C9-!hi^|NJ>zR`FolapW`hBzY}Xn-(x;>q?=+Nx+gR4Mt5lc_Y4DLcN(`qBJ1 z33k`y=I`BKAv-A5D~0-%yMYZK!S@3ogs{ zO*lPQF&Abc9a4Yu)3qB#D3-r8_Cui%#vSo*#M*XNTKH?r{nUMaLE|5#rH8JgPYnE& zlDTP))#nUlN_pqxMX<O@0}^X@e1=ID+Mc1cjD#*rslL8nDLiyrl~L8X(vR!X`wA z8&zC*J07f0#`xB#L_L1>)RyTet zTk0WeZ}GGylIx0Y#HTBt3urEbo}%2qIG76}K;F6Wu_VHsq!(8u%VgFJKuKmEx|^M9 zu_11guT#+SW&7zdiuZn;vH77ZSN3J8Y^VB3j+ztW$)|$fr6SEWaOWu1?4-N(YT@P# z1s91reoG{u_MtSj{2ZIVG-cu3zjRAHM=j516t;8TEx_|x{Q@8U-z6?a$eJ)$it=< z@sE*GL9R#$V5+3bSJ_{~*wC|CcXP()xAbs{%*Bzd?3(IuX?J&D_D(K+cF_k{xoae6aRuv6%AsDWZF8 zvj%eX^I zBW@Q@4$-ek_OV6j@828x+j;W|Tq7fTss~&xOXmcyp(Cda@4JAu(=G}w0o04-5%bk~l;pC=)vEXPXJ)=F#4U<6wOatU z<-1VP5aIn}anyFH8e#U)NG6Mz^~ZOiSF$?CD(I%ZY8KbUQO}0tSR*b0rg*z$7}w%F zLIps(lO*;m$N9ay8ube9>@^l&Q#TWf&%emn#cpzwAt5LPU)#cjLPK~cc7*TM>d}Rb zPk!xMYuqjLs7l;@|MK-=*}ZPTTc7X7>B%KqHDCcx^eA!SMa2~1N}-kKwbf1ke16M6 zmg_O0o1}0pb;?Q z8*8{0fwL4hi>jG<(OTPA+qXM)-a&P!IuHtKf9#qB+hA29z@hQ@&c*22lI$4b{&gEvIn^zfo1Ck>e*OHmU54jHPFtTs zCQFEyb%cWJ!_0Hn@3LfYJPJ)SdYmz5WoTd-;=|S3GggYx>j+%s$A!WH?p+Aw{-v=v^1s zAdpUG$w*A8@i8-!Gv_M9Ry6l)#DbO(C2=YLkE!PFcgj?`HZIf9(fxa_|KGjRd(yui z)#}ee@8u8QJb$e48ZsDHDVa@K-#2-|Pj=jgW+{m}t)5>fwg2|JIxWuA zi9e{mL8+RoKaD>}zZv@HQ@{T82QWIkr=XRRc?SQ<5didNIL}GRF&&T7J#(8>~Mcun1upbw_Us4=K`Bbq;EE=~|hv9wRs0k(_VY-Iq zw6@vqw0)x@Lk@mnP37?fgO8V2BjUHGSdRa<=Ds_ssixao1ObEejv$c^(n9YjN{RH| zL&XP6UQgy?!!kzIR^})bjAz4ObuLR%E ztO4AG3ozmDj&9DDrNVZP8wS0ayS1|+E)OT&jh-OZw(AvwpSwnPEv%JzHy;^}z0A$s zfpdFhIvM01$_E^ZpEr5sU4myISyQaroL&@IAwFkcCuDa#>$x%`sy2h8g<#JDbp;!;`=CkPoVgA%+qNPU)Yep zcH|_)H~fO6;2Yx)Nho;q>_#1CCYi!`aMmfpT8bYp!sgxH(2=Gk&=IMt4Iw@H;o-PD zx{PO3g@q*7RA?cB=_1QToOH`Y5*zD9>z)ryX1x8zI{9WQvhyFkwAt}+-WpS{t~bxl zTWFm|O#_a8={`8o#qt}4_ZenlU1n2ySQE*UEK<$1!^ zh2j?3;}M+RW(NlFZ>qRnBX2gXj=S+;bDeisZYmDRQF`e9CX~|}Z*@Q}rU00%!qepK zmm;y8@7MWX9Bb?0zOOz^V?91fKdKkh@cnknpl&sx+Yty@sndfkI5iLXItj$X$~)jQ zbTg4*HH$6yvNdkjm^vvMQ(dh-+qfREP2>J`MitFf^6^xar@vn!utfWng~X@#4VY;k z`H&?aY*j0fqO&$}pb(Drd3L8N?mN*beOJe?D_)|r~*?!sMWfmS1h!AJbUIQPlTn;|FS5#-?3} zr+3yvQEF*l!nR#7O$IumNhRI1}6*I-~K_IL~ll!`<=S)USbt)KZNKZON(^3)nR!YNvVf zcsB$%Xq04|-YCy-eodZG1k~e8Ja!1uN0H$4wX)RekBiuT4W2_pB`OFixJa}v9)}PKv^px%o`IXIaL?ZW@53a=LKoCg z6Dy-r$b(W?p=ybISsqE)V=U5EP!~;qq?hzv&}kXS18_mC3_DdhlRobL9;j2byOY@D zhm$nJl|L(+UaNObV=}5hx;lmASyT}E=BrU2-LO{6od{}X6{;+hn z70YtU>ud9kC30GfmFPI{o;H;VW;kZfi9{vwi-1Cp?{LXgbFwz8{YT_LtcHa`1p?gB zRsngpgI5USS7qh4_i5ogeTQDWnenxwyBBB?645Cae=PcXqgPM!DUi2Fne%qgq%WWyMPbDJ;XN@!6zftPJaW_9&mKQmKjV8^5_2 zR@{A<^Sret9VKAi!*l@rJ(1pJ@Z0L4MUDtpGPYaGqTCdft z8#wk4^hpNzTk5A!rdn+l^No+KAR5asM%ojYTjr+%7pRsi=Lu($0Y$#-&;V(1Ra0@2 z=~tMg?Vstgl8qstZD+n`I;IICpS5F-BQJAs120$GV2vlBls_zRHsEg2tBeX=-Ecw($Zc(E@sgt+L#f!vndnqeGTm zs^HHr&NxTPyoGM~Y8fXOA-N9THj8kqLy`uk-@JKs#m@Ofs}TMbKcCQ$g@l|N!7RRW zon1^W%{Ug4lkdTHlio-^~)Y%okaF4l8Po`-*3rGSg#z4CvYy-ShM+gB7CK9ePqJ z?%q59{$+qQ(_SINJ}kuAl{irHya;$8#GEjn%)MD6r+F~qnCAYd=ny%#kd@J;e>)b% zF~h*JoTy?I6c#hEc^vDp-{`Ri#42uXCT*>*oSB)4Ih&b3Je)kJ%MJy$&@g`euPiOv zeM_wSsY0ODaW_tUWj7?gLQZ@UhFlz1bFS_CvEG&Jly&grd#ULum!;S1?W$DJU3IzF zJ`~@*NREls7M&=r9wXavvd%%v9cqU3=Bukg$Qc|F!0bqJ)wIRs?;Z#!f5{Sn&!j z;MxW3_Zuh+6ipb@o!D}%03xu0KQ+Z_HacB*an8~(Oq-L=rH~;$kPs=Kvhf2)sEpyW z8#n8!3bTs&+IO(lY^)~|7A(0Ebh^_<@DvgUu6^lW_vGch)6<+>ah8_U$H0jNRMxyt;bEBlRR+>i&qQ@x)usxyHH_ zl+)!(0pvkX*J$0H%VA8>K(oi|E&a^@_=^1*+K@ibX!ss~6(510H{k=2z~GL4Zp=+! zv5WUF+3EhTn56%o+ky9M3Iunt_4M+9!;qI}uGWqqNw6^Z@+c<<7BcX2gM)>1VD@kj z@a+M2@d87DpY=dOns8eLOv%+3Yz|xtgTUxueOQrl9c2fcD%E*wdi0BP2-KR3iep=XbR7J}hybBddZBwzz+Kws^brSH_u-#{uPy-HE$* z20vL9vR}|~Jb2wkZ^??Dswi}yRzh@tggQ{q1+E`&pnnDXJnp89t;y)(gGorFL?MLV zbouMqr?6IB9Bk}57G=26O=a-KWao;1=8{v>RUHl(VN9DD4BHwEOM4B?Yw&!XUJ9?j ziFJIJ!Mpa1E`~Ql<#{9SuzAf)O)Qo}gNY$VAOzy3W2-o}S6BXI|9o|Oa?IOeb&78` z$YVd#{O0UgXxi%50(PVxe^fOs$^P>&f5uQum8K`+Y0^x?-+CN<%nV4G;Q{5Fs zY`rNQSY{JYw_W+x&^t!;#oMr=s>;TY+!U+%N-wQXZ4{QNnCGxtyl`DK+Dno4Ls(H` zBZYragZ(kzgvP7*7AvD3A>`Z}7E%TEgy1d4q67}Plcq7wnLK&zG`p*7?3(#ogPP_$Si5N&FYed$JZqH6J>=KanU)7ITO}hDQEi15sF>#kAdkYXw`2fqRUs%Y!=qz zMpHIJ_c(oVLP9M+&vQf1zc8Rr7B`Gv+4uG{9)C|Dm36RT5R`k-buB$~Sp{-A!={bjz^BBHPh zzc$}E>^)ICs>Aytg4>w4@fsNu*`7|D$5D>o!$j}a&e}$oknRV3gkC`?wc$Idq@Xyf zCu+36?Di!!p3Iah(#iJiT`fCzeP!Y9BE#GL`HRD1-Y3CGY#4N1222t8=IsYxvx=S3T(#uxBR|vU7zTp)8&0hi zh`VFM0%Wrwy!euBc?yX?p1rG^zGJw2FF#oVFaK2pCsZU;41Yc@<#|m;(&5G471mkb zEmhJ|ZSHWMO;34t|x~99;U$fZI9c9Vm<@)?+hF?5;NnuPz#vv?Nir ziVaBOYxi|lz0b#~uHiXK(^n}QLDV+HLzgwU5_|SUnTl-y-O!m&%kW$qZ}Hj6^>0lO z4-@$QwFE(}u@D);i>J9A;H(lZbIz7eEy@IMd# zrZ#Fo1u4incrjA>D{O59KqxGYKhm+lQue2De~+m3u$NGo&(&y)6XnJ)7KD zWBae+dXn&&8GA4IP4Uw(wgl`sBmsD_B@KJ*w@U;}!-Ks4P{#1=;At`9_Gsd5)z#@r zCEjek(|UkcEXj6QtVM4cZ`9n^-5}ThW5Dm}(F;hI&V8fuwuj4@kmz_=!>&%m9l59C zVGIKA3GNxZad(K?NE6KE>s;$V8tkmEk6inb&t##Zb5$W7d0`?YM}M@F{9x;c3JR1k z9NgABwZ_pEX${B*uC~hwHF*YZp9-I!SSI2HEb1Sc%QEf6V_ryanMpDt(Zv`y1CIa z_t2?Rn9+d-CG3*tkJCtpy>hebUh@x+;}mWBB0lEd$ypZMJu@JzE1PM5bTDR-Fy>99 ze5idmE*%7YQRZ826l^Q5(Sq1|RGvN{UWMbdEKr_&&R7Fc<7SMj?g!gMIcS)qhL$w+ zmjWuV0#tBC1w(M9@GT>&h27I%ui`PUtDjuqicnNl9T$|i#$U6WGs-4pzrQtN*q4(X z_$vDZFXgqnyhD+e{eFp)3RxDT-Hk;1Uujb!h2Zxiuxmsm8z6Qi17P7F{Zyp1<_{r( z&)hq6R_?mdWovUI^{Sj_5yHM=schCWF8gB<{jvK)QTV+b5BCs(=cC(e)cP(eHRG-S7rVeFWu&CweVk-I4hDwXB_~Y8% z+^hT!e&12TV1PF4Cf1!DjWtyMN~eKYoAVsEfna7p%og1gMk1*-2nVz7weNc`4?5Jw zUGjw$t4{(9)3e8!Sl^(i-9KATF`Sr`IlbsFwr`gEQ5k)&t=H;s62#ONv3%pTCWVy& zI<=KV7m1fw0yCu>MUiJjNgmx+H3mmO_!E%ktKg?^SX%G9yS0&NbPbj&8!f4GrcdPt z?Bzn6sw*z6TZdmO=R(|LK@Hr97-@wqOI}6^iO&qTk`@F}abd!c8xZ~m#Wokp{aBal z?71*r>rs_}SW2b#A>1vEc7ochVsGcdpWlP$3~%TwBcKT7(i**13y)0kVflQ;de zjL|_G_GBtEb57?viuOK+@rUZ;;pFIjtYD>#>>_x)EsJ zvs{4)yj*NEH9r%b!vY;9AYPw%P(!XkYm$%Mk2&V+n=B^dzDPePaV|_pKeUlQ=&QI z?#!qJIMK}T*?n1Kx~6?YwBd`PtRs!wiwk~M-P0uWvW3O08e_^!bKRz&CaJRnoZm=( zGN(fa6fk}u%6}f4#qi5XD$6|n+m5@E&MXSmk1LNL^)od0_;Zr-b3;XZ-79QIT zc!%n}$k|^8sdKPgul6INRJl45i?DRjOKZZjmyNCbnNBLPU{n1^ESb_K)iUZqmn3EB zSLeB`w%Zr#hbwg~P=3n^YkW6bZYri9_Vwo?Qt5{`+|DvmOIwBQO+(3@EbkD@o?67D zIPCZ2u~`V}Zl>d0fB82&GlQ{LMWjY7LJ2W(>}?N(AapCCqZi-!3nlTFF(gF~vlq52Cg-ACy*#|F}=d ziFf!unQp$gEsIZ03u2sG?9Nb8%@yw<8G*WLqQ+Huh4F*7jTl^$fE}_3W~v9*W3E2> zi0$fJ71*5j-JWwS_UKKqjlwl>UP8YMO7yZi0n+E%~ z=4&X`=je4LQE#8w7?KEdv2_^Eid{-@qEr^2%;C_6F)OsJo=*4Gj8XRU48LppbbYot z0AxK+IVKiGFKEs|%CW&d`*~2o>bhb9xtWrw!>u?U;1C;M*(@*;sRxVJdiadfUk_uN zOH?pQCGc{tIwEltc^xj5HnCm*pc>7K|2_igF`6ieL(!etpCikiN;9DSGfuKnNfn+i^ByCf^qV$Xn9Syt ztUV0RUH+xY1#Cgy>-Pi>jn5R%zbzfOKl>@}rJLP3Xb&xuPJLN(J8Qt0#`aacf7Y+< zeP@>UmS;Odyfe%TG}lKb9ffC!=byxf6492F;MX0A6ja)IRjV$ec})C(2pf{76VKH@ z|LUC6*!}A$hFn4=e;-@_yTkbRu>I3G7WoS=6##Yt3F&)Vd;JD+E*k&=32DKQ0HUKJ z3KCL+dBQKtfQ8iH&QIW82pgDylB=^VNJ!ZQKwJf#u|YpCDj~-!*^ZYM0gj)?!}|xE)9s3=szj|KkIe5EmB}2it-F zlO`r1Ee!Pg@&k7HCruKVT>eax6c+h+8c+ZN;DCQB2V6+}g(e~)33TmG<-|mUMgPKA z1R@4V + + 49er + 2011-06-18+02:00 + 17:30:21.390+02:00 + vorlauefig + Kieler Woche 2011 + 3 + 2011-06-18_49er_Wettfahrt_3.pdf + \ No newline at end of file diff --git a/java/com.sap.sailing.kiworesultimport.test/resources/2011-06-18_49er_Wettfahrt_3_Extra.xml b/java/com.sap.sailing.kiworesultimport.test/resources/2011-06-18_49er_Wettfahrt_3_Extra.xml new file mode 100755 index 00000000000..d388e02f5c0 --- /dev/null +++ b/java/com.sap.sailing.kiworesultimport.test/resources/2011-06-18_49er_Wettfahrt_3_Extra.xml @@ -0,0 +1,2 @@ + + \ No newline at end of file diff --git a/java/com.sap.sailing.kiworesultimport.test/resources/2011-06-18_49er_Wettfahrt_4.pdf b/java/com.sap.sailing.kiworesultimport.test/resources/2011-06-18_49er_Wettfahrt_4.pdf new file mode 100755 index 0000000000000000000000000000000000000000..c8d7d8c9152b36ddd905c8c355d857fcb94349ec GIT binary patch literal 48114 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≀lM0*&d#lg{rY4dHUF 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 GqW=dkh=0-m literal 0 HcmV?d00001 diff --git a/java/com.sap.sailing.kiworesultimport.test/resources/2011-06-18_49er_Wettfahrt_4.xml b/java/com.sap.sailing.kiworesultimport.test/resources/2011-06-18_49er_Wettfahrt_4.xml new file mode 100755 index 00000000000..9bbd4e986d6 --- /dev/null +++ b/java/com.sap.sailing.kiworesultimport.test/resources/2011-06-18_49er_Wettfahrt_4.xml @@ -0,0 +1,10 @@ + + + 49er + 2011-06-18+02:00 + 21:23:41.577+02:00 + vorlauefig + Kieler Woche 2011 + 4 + 2011-06-18_49er_Wettfahrt_4.pdf + \ No newline at end of file diff --git a/java/com.sap.sailing.kiworesultimport.test/resources/2011-06-18_49er_Wettfahrt_4_Extra.xml b/java/com.sap.sailing.kiworesultimport.test/resources/2011-06-18_49er_Wettfahrt_4_Extra.xml new file mode 100755 index 00000000000..35ce25c3e8c --- /dev/null +++ b/java/com.sap.sailing.kiworesultimport.test/resources/2011-06-18_49er_Wettfahrt_4_Extra.xml @@ -0,0 +1,2 @@ + + \ No newline at end of file diff --git a/java/com.sap.sailing.kiworesultimport/.classpath b/java/com.sap.sailing.kiworesultimport/.classpath new file mode 100755 index 00000000000..b1dabee3829 --- /dev/null +++ b/java/com.sap.sailing.kiworesultimport/.classpath @@ -0,0 +1,7 @@ + + + + + + + diff --git a/java/com.sap.sailing.kiworesultimport/.project b/java/com.sap.sailing.kiworesultimport/.project new file mode 100755 index 00000000000..d2d5b17ed20 --- /dev/null +++ b/java/com.sap.sailing.kiworesultimport/.project @@ -0,0 +1,28 @@ + + + com.sap.sailing.kiworesultimport + + + + + + org.eclipse.jdt.core.javabuilder + + + + + org.eclipse.pde.ManifestBuilder + + + + + org.eclipse.pde.SchemaBuilder + + + + + + org.eclipse.pde.PluginNature + org.eclipse.jdt.core.javanature + + diff --git a/java/com.sap.sailing.kiworesultimport/.settings/org.eclipse.jdt.core.prefs b/java/com.sap.sailing.kiworesultimport/.settings/org.eclipse.jdt.core.prefs new file mode 100755 index 00000000000..11f6e462df7 --- /dev/null +++ b/java/com.sap.sailing.kiworesultimport/.settings/org.eclipse.jdt.core.prefs @@ -0,0 +1,7 @@ +eclipse.preferences.version=1 +org.eclipse.jdt.core.compiler.codegen.inlineJsrBytecode=enabled +org.eclipse.jdt.core.compiler.codegen.targetPlatform=1.7 +org.eclipse.jdt.core.compiler.compliance=1.7 +org.eclipse.jdt.core.compiler.problem.assertIdentifier=error +org.eclipse.jdt.core.compiler.problem.enumIdentifier=error +org.eclipse.jdt.core.compiler.source=1.7 diff --git a/java/com.sap.sailing.kiworesultimport/.settings/org.eclipse.pde.core.prefs b/java/com.sap.sailing.kiworesultimport/.settings/org.eclipse.pde.core.prefs new file mode 100755 index 00000000000..b7e72d019c2 --- /dev/null +++ b/java/com.sap.sailing.kiworesultimport/.settings/org.eclipse.pde.core.prefs @@ -0,0 +1,3 @@ +eclipse.preferences.version=1 +pluginProject.extensions=false +resolve.requirebundle=false diff --git a/java/com.sap.sailing.kiworesultimport/META-INF/MANIFEST.MF b/java/com.sap.sailing.kiworesultimport/META-INF/MANIFEST.MF new file mode 100755 index 00000000000..a60f9ea1d9d --- /dev/null +++ b/java/com.sap.sailing.kiworesultimport/META-INF/MANIFEST.MF @@ -0,0 +1,8 @@ +Manifest-Version: 1.0 +Bundle-ManifestVersion: 2 +Bundle-Name: Kiworesultimport +Bundle-SymbolicName: com.sap.sailing.kiworesultimport +Bundle-Version: 1.0.0.qualifier +Bundle-Vendor: SAP +Bundle-RequiredExecutionEnvironment: JavaSE-1.7 +Require-Bundle: com.sap.sailing.server diff --git a/java/com.sap.sailing.kiworesultimport/build.properties b/java/com.sap.sailing.kiworesultimport/build.properties new file mode 100755 index 00000000000..41eb6ade2b4 --- /dev/null +++ b/java/com.sap.sailing.kiworesultimport/build.properties @@ -0,0 +1,4 @@ +source.. = src/ +output.. = bin/ +bin.includes = META-INF/,\ + . diff --git a/java/pom.xml b/java/pom.xml index fb23b1e387d..7403d7c00b2 100755 --- a/java/pom.xml +++ b/java/pom.xml @@ -53,6 +53,8 @@ com.sap.sailing.feature.runtime com.sap.sailing.feature.p2build org.moxieapps.gwt.highcharts + com.sap.sailing.kiworesultimport + com.sap.sailing.kiworesultimport.test From 16b1960f61a878df725737331b442dc3353e0015 Mon Sep 17 00:00:00 2001 From: Axel Uhl Date: Fri, 8 Jun 2012 13:16:16 +0200 Subject: [PATCH 4/8] first minimal test case, reading an XML file as provided by b+m --- .../.classpath | 1 + .../build.properties | 3 +- .../kiworesultimport/test/ParserTest.java | 38 +++++++++++++++++++ .../ResultDocumentParser.java | 5 +++ 4 files changed, 46 insertions(+), 1 deletion(-) create mode 100755 java/com.sap.sailing.kiworesultimport.test/src/com/sap/sailing/kiworesultimport/test/ParserTest.java create mode 100755 java/com.sap.sailing.kiworesultimport/src/com/sap/sailing/kiworesultimport/ResultDocumentParser.java diff --git a/java/com.sap.sailing.kiworesultimport.test/.classpath b/java/com.sap.sailing.kiworesultimport.test/.classpath index b1dabee3829..1228533181d 100755 --- a/java/com.sap.sailing.kiworesultimport.test/.classpath +++ b/java/com.sap.sailing.kiworesultimport.test/.classpath @@ -3,5 +3,6 @@ + diff --git a/java/com.sap.sailing.kiworesultimport.test/build.properties b/java/com.sap.sailing.kiworesultimport.test/build.properties index 41eb6ade2b4..a2e16dfebcd 100755 --- a/java/com.sap.sailing.kiworesultimport.test/build.properties +++ b/java/com.sap.sailing.kiworesultimport.test/build.properties @@ -1,4 +1,5 @@ -source.. = src/ +source.. = src/,\ + resources/ output.. = bin/ bin.includes = META-INF/,\ . diff --git a/java/com.sap.sailing.kiworesultimport.test/src/com/sap/sailing/kiworesultimport/test/ParserTest.java b/java/com.sap.sailing.kiworesultimport.test/src/com/sap/sailing/kiworesultimport/test/ParserTest.java new file mode 100755 index 00000000000..23474a92220 --- /dev/null +++ b/java/com.sap.sailing.kiworesultimport.test/src/com/sap/sailing/kiworesultimport/test/ParserTest.java @@ -0,0 +1,38 @@ +package com.sap.sailing.kiworesultimport.test; + +import static org.junit.Assert.assertNotNull; + +import java.io.File; +import java.io.FileInputStream; +import java.io.FileNotFoundException; +import java.io.IOException; +import java.io.InputStream; + +import javax.xml.parsers.DocumentBuilderFactory; +import javax.xml.parsers.ParserConfigurationException; + +import org.junit.Test; +import org.w3c.dom.Document; +import org.w3c.dom.Node; +import org.xml.sax.SAXException; + +public class ParserTest { + private static final String RESOURCES = "resources/"; + + private InputStream getInputStream(String filename) throws FileNotFoundException, IOException { + return new FileInputStream(getFile(filename)); + } + + private File getFile(String filename) { + return new File(RESOURCES + filename); + } + + @Test + public void testLoadingSampleXML() throws SAXException, IOException, ParserConfigurationException { + Document doc = DocumentBuilderFactory.newInstance().newDocumentBuilder() + .parse(getInputStream("2011-06-18_49er_Wettfahrt_2_Extra.xml")); + assertNotNull(doc); + Node resultList = doc.getElementsByTagName("ResultList").item(0); + assertNotNull(resultList); + } +} diff --git a/java/com.sap.sailing.kiworesultimport/src/com/sap/sailing/kiworesultimport/ResultDocumentParser.java b/java/com.sap.sailing.kiworesultimport/src/com/sap/sailing/kiworesultimport/ResultDocumentParser.java new file mode 100755 index 00000000000..b3092c6d8df --- /dev/null +++ b/java/com.sap.sailing.kiworesultimport/src/com/sap/sailing/kiworesultimport/ResultDocumentParser.java @@ -0,0 +1,5 @@ +package com.sap.sailing.kiworesultimport; + +public class ResultDocumentParser { + +} From 681c59d7632c8e2a7e2639d3d0bdfa7815613fd9 Mon Sep 17 00:00:00 2001 From: Axel Uhl Date: Fri, 8 Jun 2012 13:19:59 +0200 Subject: [PATCH 5/8] added more logging --- .../mongodb/test/TestStoringAndLoadingEventsAndRegattas.java | 1 + 1 file changed, 1 insertion(+) diff --git a/java/com.sap.sailing.mongodb.test/src/com/sap/sailing/mongodb/test/TestStoringAndLoadingEventsAndRegattas.java b/java/com.sap.sailing.mongodb.test/src/com/sap/sailing/mongodb/test/TestStoringAndLoadingEventsAndRegattas.java index 55943314ffa..0207c51b1ed 100755 --- a/java/com.sap.sailing.mongodb.test/src/com/sap/sailing/mongodb/test/TestStoringAndLoadingEventsAndRegattas.java +++ b/java/com.sap.sailing.mongodb.test/src/com/sap/sailing/mongodb/test/TestStoringAndLoadingEventsAndRegattas.java @@ -187,6 +187,7 @@ public class TestStoringAndLoadingEventsAndRegattas extends AbstractMongoDBTest } logger.info("columns in regatta leaderboard for regatta "+regattaLeaderboard.getRegatta().getName()+" ("+ regattaLeaderboard.getRegatta().hashCode()+"): "+rlbrcNames); + logColumnsInRegatta(regattaLeaderboard.getRegatta()); } private void logColumnsInRegatta(Regatta regatta) { From a8a2fc5840340c4d023b607fc798ce88cefe69e9 Mon Sep 17 00:00:00 2001 From: Axel Uhl Date: Fri, 8 Jun 2012 13:21:32 +0200 Subject: [PATCH 6/8] added missing pom.xml files for new bundles --- java/com.sap.sailing.kiworesultimport.test/pom.xml | 12 ++++++++++++ java/com.sap.sailing.kiworesultimport/pom.xml | 12 ++++++++++++ 2 files changed, 24 insertions(+) create mode 100644 java/com.sap.sailing.kiworesultimport.test/pom.xml create mode 100644 java/com.sap.sailing.kiworesultimport/pom.xml diff --git a/java/com.sap.sailing.kiworesultimport.test/pom.xml b/java/com.sap.sailing.kiworesultimport.test/pom.xml new file mode 100644 index 00000000000..4db44bcb63f --- /dev/null +++ b/java/com.sap.sailing.kiworesultimport.test/pom.xml @@ -0,0 +1,12 @@ + + + 4.0.0 + + root + com.sap.sailing + 1.0.0-SNAPSHOT + + com.sap.sailing.kiworesultimport.test + eclipse-test-plugin + diff --git a/java/com.sap.sailing.kiworesultimport/pom.xml b/java/com.sap.sailing.kiworesultimport/pom.xml new file mode 100644 index 00000000000..db7ecfbaa9c --- /dev/null +++ b/java/com.sap.sailing.kiworesultimport/pom.xml @@ -0,0 +1,12 @@ + + + 4.0.0 + + root + com.sap.sailing + 1.0.0-SNAPSHOT + + com.sap.sailing.kiworesultimport + eclipse-plugin + From 049182eaf372718da5657795db57b622b56d9187 Mon Sep 17 00:00:00 2001 From: Axel Uhl Date: Fri, 8 Jun 2012 13:33:09 +0200 Subject: [PATCH 7/8] added interfaces along the XML document format for Kieler Woche result list service --- .../META-INF/MANIFEST.MF | 1 + .../com/sap/sailing/kiworesultimport/Boat.java | 9 +++++++++ .../sailing/kiworesultimport/Crewmember.java | 5 +++++ .../com/sap/sailing/kiworesultimport/Named.java | 5 +++++ .../com/sap/sailing/kiworesultimport/Race.java | 7 +++++++ .../com/sap/sailing/kiworesultimport/Races.java | 5 +++++ .../sailing/kiworesultimport/ResultList.java | 17 +++++++++++++++++ .../kiworesultimport/ResultListParser.java | 7 +++++++ .../ResultListParserFactory.java | 9 +++++++++ .../sap/sailing/kiworesultimport/Skipper.java | 7 +++++++ ...esultDocumentParser.java => Verteilung.java} | 2 +- .../impl/ResultListParserFactoryImpl.java | 13 +++++++++++++ .../impl/ResultListParserImpl.java | 16 ++++++++++++++++ 13 files changed, 102 insertions(+), 1 deletion(-) create mode 100755 java/com.sap.sailing.kiworesultimport/src/com/sap/sailing/kiworesultimport/Boat.java create mode 100755 java/com.sap.sailing.kiworesultimport/src/com/sap/sailing/kiworesultimport/Crewmember.java create mode 100755 java/com.sap.sailing.kiworesultimport/src/com/sap/sailing/kiworesultimport/Named.java create mode 100755 java/com.sap.sailing.kiworesultimport/src/com/sap/sailing/kiworesultimport/Race.java create mode 100755 java/com.sap.sailing.kiworesultimport/src/com/sap/sailing/kiworesultimport/Races.java create mode 100755 java/com.sap.sailing.kiworesultimport/src/com/sap/sailing/kiworesultimport/ResultList.java create mode 100755 java/com.sap.sailing.kiworesultimport/src/com/sap/sailing/kiworesultimport/ResultListParser.java create mode 100755 java/com.sap.sailing.kiworesultimport/src/com/sap/sailing/kiworesultimport/ResultListParserFactory.java create mode 100755 java/com.sap.sailing.kiworesultimport/src/com/sap/sailing/kiworesultimport/Skipper.java rename java/com.sap.sailing.kiworesultimport/src/com/sap/sailing/kiworesultimport/{ResultDocumentParser.java => Verteilung.java} (52%) create mode 100755 java/com.sap.sailing.kiworesultimport/src/com/sap/sailing/kiworesultimport/impl/ResultListParserFactoryImpl.java create mode 100755 java/com.sap.sailing.kiworesultimport/src/com/sap/sailing/kiworesultimport/impl/ResultListParserImpl.java diff --git a/java/com.sap.sailing.kiworesultimport/META-INF/MANIFEST.MF b/java/com.sap.sailing.kiworesultimport/META-INF/MANIFEST.MF index a60f9ea1d9d..897112d18d7 100755 --- a/java/com.sap.sailing.kiworesultimport/META-INF/MANIFEST.MF +++ b/java/com.sap.sailing.kiworesultimport/META-INF/MANIFEST.MF @@ -6,3 +6,4 @@ Bundle-Version: 1.0.0.qualifier Bundle-Vendor: SAP Bundle-RequiredExecutionEnvironment: JavaSE-1.7 Require-Bundle: com.sap.sailing.server +Export-Package: com.sap.sailing.kiworesultimport diff --git a/java/com.sap.sailing.kiworesultimport/src/com/sap/sailing/kiworesultimport/Boat.java b/java/com.sap.sailing.kiworesultimport/src/com/sap/sailing/kiworesultimport/Boat.java new file mode 100755 index 00000000000..87f7124a500 --- /dev/null +++ b/java/com.sap.sailing.kiworesultimport/src/com/sap/sailing/kiworesultimport/Boat.java @@ -0,0 +1,9 @@ +package com.sap.sailing.kiworesultimport; + +public interface Boat extends Named { + String getSailingNumber(); + + Integer getPosition(); + + String getPreis(); +} diff --git a/java/com.sap.sailing.kiworesultimport/src/com/sap/sailing/kiworesultimport/Crewmember.java b/java/com.sap.sailing.kiworesultimport/src/com/sap/sailing/kiworesultimport/Crewmember.java new file mode 100755 index 00000000000..9341d6b9c80 --- /dev/null +++ b/java/com.sap.sailing.kiworesultimport/src/com/sap/sailing/kiworesultimport/Crewmember.java @@ -0,0 +1,5 @@ +package com.sap.sailing.kiworesultimport; + +public interface Crewmember extends Named { + +} diff --git a/java/com.sap.sailing.kiworesultimport/src/com/sap/sailing/kiworesultimport/Named.java b/java/com.sap.sailing.kiworesultimport/src/com/sap/sailing/kiworesultimport/Named.java new file mode 100755 index 00000000000..263d07a89bc --- /dev/null +++ b/java/com.sap.sailing.kiworesultimport/src/com/sap/sailing/kiworesultimport/Named.java @@ -0,0 +1,5 @@ +package com.sap.sailing.kiworesultimport; + +public interface Named { + String getName(); +} diff --git a/java/com.sap.sailing.kiworesultimport/src/com/sap/sailing/kiworesultimport/Race.java b/java/com.sap.sailing.kiworesultimport/src/com/sap/sailing/kiworesultimport/Race.java new file mode 100755 index 00000000000..7c48813242e --- /dev/null +++ b/java/com.sap.sailing.kiworesultimport/src/com/sap/sailing/kiworesultimport/Race.java @@ -0,0 +1,7 @@ +package com.sap.sailing.kiworesultimport; + +public interface Race { + Double getPoints(); + + Double getNumber(); +} diff --git a/java/com.sap.sailing.kiworesultimport/src/com/sap/sailing/kiworesultimport/Races.java b/java/com.sap.sailing.kiworesultimport/src/com/sap/sailing/kiworesultimport/Races.java new file mode 100755 index 00000000000..5e5406274b6 --- /dev/null +++ b/java/com.sap.sailing.kiworesultimport/src/com/sap/sailing/kiworesultimport/Races.java @@ -0,0 +1,5 @@ +package com.sap.sailing.kiworesultimport; + +public interface Races { + Double getTotalPoints(); +} diff --git a/java/com.sap.sailing.kiworesultimport/src/com/sap/sailing/kiworesultimport/ResultList.java b/java/com.sap.sailing.kiworesultimport/src/com/sap/sailing/kiworesultimport/ResultList.java new file mode 100755 index 00000000000..66c7f848005 --- /dev/null +++ b/java/com.sap.sailing.kiworesultimport/src/com/sap/sailing/kiworesultimport/ResultList.java @@ -0,0 +1,17 @@ +package com.sap.sailing.kiworesultimport; + +public interface ResultList { + String getLegende(); + + String getImagePfad(); + + String getStatus(); + + String getBoatClass(); + + String getEvent(); + + String getTime(); + + String getDate(); +} diff --git a/java/com.sap.sailing.kiworesultimport/src/com/sap/sailing/kiworesultimport/ResultListParser.java b/java/com.sap.sailing.kiworesultimport/src/com/sap/sailing/kiworesultimport/ResultListParser.java new file mode 100755 index 00000000000..2843fb6642a --- /dev/null +++ b/java/com.sap.sailing.kiworesultimport/src/com/sap/sailing/kiworesultimport/ResultListParser.java @@ -0,0 +1,7 @@ +package com.sap.sailing.kiworesultimport; + +import java.io.InputStream; + +public interface ResultListParser { + ResultList parse(InputStream inputStream); +} diff --git a/java/com.sap.sailing.kiworesultimport/src/com/sap/sailing/kiworesultimport/ResultListParserFactory.java b/java/com.sap.sailing.kiworesultimport/src/com/sap/sailing/kiworesultimport/ResultListParserFactory.java new file mode 100755 index 00000000000..647929e46ef --- /dev/null +++ b/java/com.sap.sailing.kiworesultimport/src/com/sap/sailing/kiworesultimport/ResultListParserFactory.java @@ -0,0 +1,9 @@ +package com.sap.sailing.kiworesultimport; + +import com.sap.sailing.kiworesultimport.impl.ResultListParserFactoryImpl; + +public interface ResultListParserFactory { + ResultListParserFactory INSTANCE = new ResultListParserFactoryImpl(); + + ResultListParser createResultListParser(); +} diff --git a/java/com.sap.sailing.kiworesultimport/src/com/sap/sailing/kiworesultimport/Skipper.java b/java/com.sap.sailing.kiworesultimport/src/com/sap/sailing/kiworesultimport/Skipper.java new file mode 100755 index 00000000000..a29fa9448db --- /dev/null +++ b/java/com.sap.sailing.kiworesultimport/src/com/sap/sailing/kiworesultimport/Skipper.java @@ -0,0 +1,7 @@ +package com.sap.sailing.kiworesultimport; + +import java.net.URL; + +public interface Skipper extends Named { + URL getIsaf(); +} diff --git a/java/com.sap.sailing.kiworesultimport/src/com/sap/sailing/kiworesultimport/ResultDocumentParser.java b/java/com.sap.sailing.kiworesultimport/src/com/sap/sailing/kiworesultimport/Verteilung.java similarity index 52% rename from java/com.sap.sailing.kiworesultimport/src/com/sap/sailing/kiworesultimport/ResultDocumentParser.java rename to java/com.sap.sailing.kiworesultimport/src/com/sap/sailing/kiworesultimport/Verteilung.java index b3092c6d8df..110b5e48fc2 100755 --- a/java/com.sap.sailing.kiworesultimport/src/com/sap/sailing/kiworesultimport/ResultDocumentParser.java +++ b/java/com.sap.sailing.kiworesultimport/src/com/sap/sailing/kiworesultimport/Verteilung.java @@ -1,5 +1,5 @@ package com.sap.sailing.kiworesultimport; -public class ResultDocumentParser { +public interface Verteilung { } diff --git a/java/com.sap.sailing.kiworesultimport/src/com/sap/sailing/kiworesultimport/impl/ResultListParserFactoryImpl.java b/java/com.sap.sailing.kiworesultimport/src/com/sap/sailing/kiworesultimport/impl/ResultListParserFactoryImpl.java new file mode 100755 index 00000000000..cc527c4308b --- /dev/null +++ b/java/com.sap.sailing.kiworesultimport/src/com/sap/sailing/kiworesultimport/impl/ResultListParserFactoryImpl.java @@ -0,0 +1,13 @@ +package com.sap.sailing.kiworesultimport.impl; + +import com.sap.sailing.kiworesultimport.ResultListParser; +import com.sap.sailing.kiworesultimport.ResultListParserFactory; + +public class ResultListParserFactoryImpl implements ResultListParserFactory { + + @Override + public ResultListParser createResultListParser() { + return new ResultListParserImpl(); + } + +} diff --git a/java/com.sap.sailing.kiworesultimport/src/com/sap/sailing/kiworesultimport/impl/ResultListParserImpl.java b/java/com.sap.sailing.kiworesultimport/src/com/sap/sailing/kiworesultimport/impl/ResultListParserImpl.java new file mode 100755 index 00000000000..c186cc046fe --- /dev/null +++ b/java/com.sap.sailing.kiworesultimport/src/com/sap/sailing/kiworesultimport/impl/ResultListParserImpl.java @@ -0,0 +1,16 @@ +package com.sap.sailing.kiworesultimport.impl; + +import java.io.InputStream; + +import com.sap.sailing.kiworesultimport.ResultList; +import com.sap.sailing.kiworesultimport.ResultListParser; + +public class ResultListParserImpl implements ResultListParser { + + @Override + public ResultList parse(InputStream inputStream) { + // TODO Auto-generated method stub + return null; + } + +} From 1fceac9d2d1243bada76617be1564cc3b58b848e Mon Sep 17 00:00:00 2001 From: Axel Uhl Date: Fri, 8 Jun 2012 13:39:23 +0200 Subject: [PATCH 8/8] added more logging; first implementation class for b+m KiWo result importer --- .../kiworesultimport/ResultListParser.java | 7 ++- .../impl/AbstractNodeWrapper.java | 16 ++++++ .../kiworesultimport/impl/ResultListImpl.java | 53 +++++++++++++++++++ .../impl/ResultListParserImpl.java | 17 ++++-- ...estStoringAndLoadingEventsAndRegattas.java | 2 +- 5 files changed, 90 insertions(+), 5 deletions(-) create mode 100755 java/com.sap.sailing.kiworesultimport/src/com/sap/sailing/kiworesultimport/impl/AbstractNodeWrapper.java create mode 100755 java/com.sap.sailing.kiworesultimport/src/com/sap/sailing/kiworesultimport/impl/ResultListImpl.java diff --git a/java/com.sap.sailing.kiworesultimport/src/com/sap/sailing/kiworesultimport/ResultListParser.java b/java/com.sap.sailing.kiworesultimport/src/com/sap/sailing/kiworesultimport/ResultListParser.java index 2843fb6642a..bbd5822e59b 100755 --- a/java/com.sap.sailing.kiworesultimport/src/com/sap/sailing/kiworesultimport/ResultListParser.java +++ b/java/com.sap.sailing.kiworesultimport/src/com/sap/sailing/kiworesultimport/ResultListParser.java @@ -1,7 +1,12 @@ package com.sap.sailing.kiworesultimport; +import java.io.IOException; import java.io.InputStream; +import javax.xml.parsers.ParserConfigurationException; + +import org.xml.sax.SAXException; + public interface ResultListParser { - ResultList parse(InputStream inputStream); + ResultList parse(InputStream inputStream) throws SAXException, IOException, ParserConfigurationException; } diff --git a/java/com.sap.sailing.kiworesultimport/src/com/sap/sailing/kiworesultimport/impl/AbstractNodeWrapper.java b/java/com.sap.sailing.kiworesultimport/src/com/sap/sailing/kiworesultimport/impl/AbstractNodeWrapper.java new file mode 100755 index 00000000000..4e76e4ab2ab --- /dev/null +++ b/java/com.sap.sailing.kiworesultimport/src/com/sap/sailing/kiworesultimport/impl/AbstractNodeWrapper.java @@ -0,0 +1,16 @@ +package com.sap.sailing.kiworesultimport.impl; + +import org.w3c.dom.Node; + +public class AbstractNodeWrapper { + private final Node node; + + public AbstractNodeWrapper(Node node) { + super(); + this.node = node; + } + + protected Node getNode() { + return node; + } +} diff --git a/java/com.sap.sailing.kiworesultimport/src/com/sap/sailing/kiworesultimport/impl/ResultListImpl.java b/java/com.sap.sailing.kiworesultimport/src/com/sap/sailing/kiworesultimport/impl/ResultListImpl.java new file mode 100755 index 00000000000..785130c7124 --- /dev/null +++ b/java/com.sap.sailing.kiworesultimport/src/com/sap/sailing/kiworesultimport/impl/ResultListImpl.java @@ -0,0 +1,53 @@ +package com.sap.sailing.kiworesultimport.impl; + +import org.w3c.dom.Node; + +import com.sap.sailing.kiworesultimport.ResultList; + +public class ResultListImpl extends AbstractNodeWrapper implements ResultList { + public ResultListImpl(Node node) { + super(node); + } + + @Override + public String getLegende() { + // TODO Auto-generated method stub + return null; + } + + @Override + public String getImagePfad() { + // TODO Auto-generated method stub + return null; + } + + @Override + public String getStatus() { + // TODO Auto-generated method stub + return null; + } + + @Override + public String getBoatClass() { + // TODO Auto-generated method stub + return null; + } + + @Override + public String getEvent() { + // TODO Auto-generated method stub + return null; + } + + @Override + public String getTime() { + // TODO Auto-generated method stub + return null; + } + + @Override + public String getDate() { + // TODO Auto-generated method stub + return null; + } +} diff --git a/java/com.sap.sailing.kiworesultimport/src/com/sap/sailing/kiworesultimport/impl/ResultListParserImpl.java b/java/com.sap.sailing.kiworesultimport/src/com/sap/sailing/kiworesultimport/impl/ResultListParserImpl.java index c186cc046fe..766d46c3648 100755 --- a/java/com.sap.sailing.kiworesultimport/src/com/sap/sailing/kiworesultimport/impl/ResultListParserImpl.java +++ b/java/com.sap.sailing.kiworesultimport/src/com/sap/sailing/kiworesultimport/impl/ResultListParserImpl.java @@ -1,16 +1,27 @@ package com.sap.sailing.kiworesultimport.impl; +import java.io.IOException; import java.io.InputStream; +import javax.xml.parsers.DocumentBuilderFactory; +import javax.xml.parsers.ParserConfigurationException; + +import org.w3c.dom.Document; +import org.xml.sax.SAXException; + import com.sap.sailing.kiworesultimport.ResultList; import com.sap.sailing.kiworesultimport.ResultListParser; public class ResultListParserImpl implements ResultListParser { + private Document parseDocument(InputStream inputStream) throws SAXException, IOException, ParserConfigurationException { + return DocumentBuilderFactory.newInstance().newDocumentBuilder().parse(inputStream); + } @Override - public ResultList parse(InputStream inputStream) { - // TODO Auto-generated method stub - return null; + public ResultList parse(InputStream inputStream) throws SAXException, IOException, ParserConfigurationException { + Document doc = parseDocument(inputStream); + ResultList result = new ResultListImpl(doc.getElementsByTagName("ResultList").item(0)); + return result; } } diff --git a/java/com.sap.sailing.mongodb.test/src/com/sap/sailing/mongodb/test/TestStoringAndLoadingEventsAndRegattas.java b/java/com.sap.sailing.mongodb.test/src/com/sap/sailing/mongodb/test/TestStoringAndLoadingEventsAndRegattas.java index 0207c51b1ed..17e1cca895c 100755 --- a/java/com.sap.sailing.mongodb.test/src/com/sap/sailing/mongodb/test/TestStoringAndLoadingEventsAndRegattas.java +++ b/java/com.sap.sailing.mongodb.test/src/com/sap/sailing/mongodb/test/TestStoringAndLoadingEventsAndRegattas.java @@ -198,7 +198,7 @@ public class TestStoringAndLoadingEventsAndRegattas extends AbstractMongoDBTest rrcNames.append(raceColumn.getName()); } } - logger.info("columns in regatta: "+rrcNames); + logger.info("columns in regatta "+regatta.getName()+" ("+regatta.hashCode()+") : "+rrcNames); } private RacingEventServiceImpl createRacingEventServiceWithOneMockedTrackedRace(final TrackedRace q2YellowTrackedRace) {