From 9fc2ad8285866c5d45391f9c9f4f49a87a36763a Mon Sep 17 00:00:00 2001 From: Pavel Aharoni Date: Thu, 6 Apr 2017 18:56:11 +0300 Subject: [PATCH] [SDC-8] implementing the tosca stubs Change-Id: Icadc0cc0dadce98e36eaffed0fe551c1387f6f8f Signed-off-by: Pavel Aharoni --- jython-tosca-parser/pom.xml | 2 +- .../sdc/toscaparser/api/EntityTemplate.java | 13 +- .../org/openecomp/sdc/toscaparser/api/Group.java | 22 + .../openecomp/sdc/toscaparser/api/Metadata.java | 28 ++ .../sdc/toscaparser/api/NodeTemplate.java | 15 +- .../sdc/toscaparser/api/SubstitutionMappings.java | 16 +- .../sdc/toscaparser/api/TopologyTemplate.java | 21 +- .../sdc/toscaparser/api/ToscaTemplate.java | 7 +- .../sdc/toscaparser/api/parameters/Input.java | 7 +- .../openecomp/sdc/toscaparser/jython/JyGroup.java | 7 +- .../sdc/toscaparser/jython/JyNodeTemplate.java | 3 +- .../toscaparser/jython/JySubstitutionMappings.java | 1 + .../sdc/toscaparser/jython/JyTopologyTemplate.java | 4 +- .../sdc/toscaparser/jython/JyToscaTemplate.java | 4 +- .../sdc/toscaparser/jython/parameters/JyInput.java | 2 +- .../toscaparser/groups.py | 6 + .../toscaparser/nodetemplate.py | 4 + .../toscaparser/parameters.py | 5 +- .../toscaparser/substitution_mappings.py | 6 +- .../toscaparser/topology_template.py | 1 + .../toscaparser/tosca_template.py | 14 + pom.xml | 2 +- sdc-distribution-ci/pom.xml | 2 +- .../main/java/org/openecomp/test/ClientTest.java | 10 +- sdc-distribution-client/pom.xml | 2 +- sdc-tosca-parser/pom.xml | 2 +- .../sdc/tosca/parser/api/ISdcCsarHelper.java | 31 +- .../sdc/tosca/parser/impl/SdcCsarHelperImpl.java | 422 +++++++++++++----- .../tosca/parser/impl/SdcToscaParserFactory.java | 18 +- .../sdc/tosca/parser/utils/GeneralUtility.java | 8 + .../openecomp/sdc/impl/ToscaParserStubsTest.java | 477 +++++++++++++++++++-- .../src/test/resources/csars/csar_hello_world.zip | Bin 0 -> 936 bytes .../service-ServiceFdnt-csar-cp-vfc-req-cap-8.csar | Bin 0 -> 40116 bytes .../service-ServiceFdnt-csar-flat-input-9-1.csar | Bin 0 -> 40109 bytes .../service-ServiceFdnt-csar-group-meta-10.csar | Bin 0 -> 40118 bytes .../csars/service-ServiceFdnt-csar-inputs-9.csar | Bin 0 -> 40130 bytes .../csars/service-ServiceFdnt-csar-no-vf.csar | Bin 0 -> 39954 bytes .../csars/service-ServiceFdnt-csar-rainy.csar | Bin 0 -> 39675 bytes .../service-ServiceFdnt-csar-service-vl-7.csar | Bin 0 -> 40014 bytes .../csars/service-ServiceFdnt-csar-two-vfs-5.csar | Bin 0 -> 39964 bytes .../csars/service-ServiceFdnt-test-csar.csar | Bin 0 -> 39938 bytes 41 files changed, 969 insertions(+), 193 deletions(-) create mode 100644 jython-tosca-parser/src/main/java/org/openecomp/sdc/toscaparser/api/Metadata.java create mode 100644 sdc-tosca-parser/src/main/java/org/openecomp/sdc/tosca/parser/utils/GeneralUtility.java create mode 100644 sdc-tosca-parser/src/test/resources/csars/csar_hello_world.zip create mode 100644 sdc-tosca-parser/src/test/resources/csars/service-ServiceFdnt-csar-cp-vfc-req-cap-8.csar create mode 100644 sdc-tosca-parser/src/test/resources/csars/service-ServiceFdnt-csar-flat-input-9-1.csar create mode 100644 sdc-tosca-parser/src/test/resources/csars/service-ServiceFdnt-csar-group-meta-10.csar create mode 100644 sdc-tosca-parser/src/test/resources/csars/service-ServiceFdnt-csar-inputs-9.csar create mode 100644 sdc-tosca-parser/src/test/resources/csars/service-ServiceFdnt-csar-no-vf.csar create mode 100644 sdc-tosca-parser/src/test/resources/csars/service-ServiceFdnt-csar-rainy.csar create mode 100644 sdc-tosca-parser/src/test/resources/csars/service-ServiceFdnt-csar-service-vl-7.csar create mode 100644 sdc-tosca-parser/src/test/resources/csars/service-ServiceFdnt-csar-two-vfs-5.csar create mode 100644 sdc-tosca-parser/src/test/resources/csars/service-ServiceFdnt-test-csar.csar diff --git a/jython-tosca-parser/pom.xml b/jython-tosca-parser/pom.xml index 7e29249..01507cc 100644 --- a/jython-tosca-parser/pom.xml +++ b/jython-tosca-parser/pom.xml @@ -5,7 +5,7 @@ org.openecomp.sdc.sdc-distribution-client sdc-main-distribution-client - 1.1.0-SNAPSHOT + 1.1.6-SNAPSHOT jython-tosca-parser diff --git a/jython-tosca-parser/src/main/java/org/openecomp/sdc/toscaparser/api/EntityTemplate.java b/jython-tosca-parser/src/main/java/org/openecomp/sdc/toscaparser/api/EntityTemplate.java index a6f9868..5a928e0 100644 --- a/jython-tosca-parser/src/main/java/org/openecomp/sdc/toscaparser/api/EntityTemplate.java +++ b/jython-tosca-parser/src/main/java/org/openecomp/sdc/toscaparser/api/EntityTemplate.java @@ -2,12 +2,15 @@ package org.openecomp.sdc.toscaparser.api; import static com.google.common.collect.ImmutableList.toImmutableList; +import java.util.ArrayList; import java.util.List; import java.util.Map; import java.util.Objects; import org.openecomp.sdc.toscaparser.api.elements.StatefulEntityType; +import org.openecomp.sdc.toscaparser.jython.JyCapability; import org.openecomp.sdc.toscaparser.jython.JyEntityTemplate; +import org.openecomp.sdc.toscaparser.jython.JyProperty; import com.google.common.base.MoreObjects; import com.google.common.base.MoreObjects.ToStringHelper; @@ -36,17 +39,19 @@ public abstract class EntityTemplate { } public List getProperties() { - return jyEntityTemplate.getJyProperties() + List jyProperties = jyEntityTemplate.getJyProperties(); + return jyProperties != null ? jyProperties .stream() .map(Property::new) - .collect(toImmutableList()); + .collect(toImmutableList()) : new ArrayList<>(); } public List getCapabilities() { - return jyEntityTemplate.getJyCapabilities() + List jyCapabilities = jyEntityTemplate.getJyCapabilities(); + return jyCapabilities != null ? jyCapabilities .stream() .map(Capability::new) - .collect(toImmutableList()); + .collect(toImmutableList()) : new ArrayList<>(); } public List>> getRequirements() { diff --git a/jython-tosca-parser/src/main/java/org/openecomp/sdc/toscaparser/api/Group.java b/jython-tosca-parser/src/main/java/org/openecomp/sdc/toscaparser/api/Group.java index 65f6857..0fa0d9c 100644 --- a/jython-tosca-parser/src/main/java/org/openecomp/sdc/toscaparser/api/Group.java +++ b/jython-tosca-parser/src/main/java/org/openecomp/sdc/toscaparser/api/Group.java @@ -1,10 +1,32 @@ package org.openecomp.sdc.toscaparser.api; +import java.util.List; + import org.openecomp.sdc.toscaparser.jython.JyGroup; +import com.google.common.base.MoreObjects.ToStringHelper; + public class Group extends EntityTemplate { + private final JyGroup jyGroup; + public Group(JyGroup jyGroup) { super(jyGroup); + this.jyGroup = jyGroup; + } + + public List getMembers(){ + return jyGroup.getJyMembers(); } + + public Metadata getMetadata(){ + return jyGroup.getJyMetadata() != null ? new Metadata(jyGroup.getJyMetadata()) : null; + } + + @Override + protected ToStringHelper toStringHelper() { + return super.toStringHelper() + .add("members", getMembers()) + .add("metadata", getMetadata()); + } } diff --git a/jython-tosca-parser/src/main/java/org/openecomp/sdc/toscaparser/api/Metadata.java b/jython-tosca-parser/src/main/java/org/openecomp/sdc/toscaparser/api/Metadata.java new file mode 100644 index 0000000..4fa3646 --- /dev/null +++ b/jython-tosca-parser/src/main/java/org/openecomp/sdc/toscaparser/api/Metadata.java @@ -0,0 +1,28 @@ +package org.openecomp.sdc.toscaparser.api; + +import java.util.Map; + +import com.google.common.base.MoreObjects; + +public class Metadata { + + private final Map metadataMap; + + public Metadata(Map metadataMap) { + this.metadataMap = metadataMap; + } + + public String getValue(String key) { + return !isEmpty() ? String.valueOf(this.metadataMap.get(key)) : null; + } + + private boolean isEmpty() { + return this.metadataMap == null || this.metadataMap.size() == 0; + } + + @Override + public String toString() { + return MoreObjects.toStringHelper(this) + .add("metadataMap", metadataMap).toString(); + } +} diff --git a/jython-tosca-parser/src/main/java/org/openecomp/sdc/toscaparser/api/NodeTemplate.java b/jython-tosca-parser/src/main/java/org/openecomp/sdc/toscaparser/api/NodeTemplate.java index d8cac9e..3592a69 100644 --- a/jython-tosca-parser/src/main/java/org/openecomp/sdc/toscaparser/api/NodeTemplate.java +++ b/jython-tosca-parser/src/main/java/org/openecomp/sdc/toscaparser/api/NodeTemplate.java @@ -1,8 +1,7 @@ package org.openecomp.sdc.toscaparser.api; -import java.util.Map; - import org.openecomp.sdc.toscaparser.jython.JyNodeTemplate; +import org.openecomp.sdc.toscaparser.jython.JySubstitutionMappings; import com.google.common.base.MoreObjects.ToStringHelper; @@ -15,13 +14,19 @@ public class NodeTemplate extends EntityTemplate { this.jyNodeTemplate = jyNodeTemplate; } - public Map getMetadata() { - return jyNodeTemplate.getJyMetadata(); + public Metadata getMetadata() { + return jyNodeTemplate.getJyMetadata() != null ? new Metadata(jyNodeTemplate.getJyMetadata()) : null; + } + + public SubstitutionMappings getSubstitutionMappings(){ + JySubstitutionMappings jySubstitutionMappings = jyNodeTemplate.getJySubstitutionMappings(); + return jySubstitutionMappings != null ? new SubstitutionMappings(jySubstitutionMappings) : null; } @Override protected ToStringHelper toStringHelper() { return super.toStringHelper() - .add("metadata", getMetadata()); + .add("metadata", getMetadata()) + .add("substitutionMappings", getSubstitutionMappings()); } } diff --git a/jython-tosca-parser/src/main/java/org/openecomp/sdc/toscaparser/api/SubstitutionMappings.java b/jython-tosca-parser/src/main/java/org/openecomp/sdc/toscaparser/api/SubstitutionMappings.java index 526a0e3..30de2a8 100644 --- a/jython-tosca-parser/src/main/java/org/openecomp/sdc/toscaparser/api/SubstitutionMappings.java +++ b/jython-tosca-parser/src/main/java/org/openecomp/sdc/toscaparser/api/SubstitutionMappings.java @@ -2,12 +2,15 @@ package org.openecomp.sdc.toscaparser.api; import static com.google.common.collect.ImmutableList.toImmutableList; +import java.util.ArrayList; import java.util.List; import java.util.Objects; import org.openecomp.sdc.toscaparser.api.elements.NodeType; import org.openecomp.sdc.toscaparser.api.parameters.Input; +import org.openecomp.sdc.toscaparser.jython.JyGroup; import org.openecomp.sdc.toscaparser.jython.JySubstitutionMappings; +import org.openecomp.sdc.toscaparser.jython.parameters.JyInput; import com.google.common.base.MoreObjects; @@ -25,12 +28,21 @@ public class SubstitutionMappings { .map(NodeTemplate::new) .collect(toImmutableList()); } + + public List getGroups() { + List jyGroups = jySubstitutionMappings.getJyGroups(); + return jyGroups != null ? jyGroups + .stream() + .map(Group::new) + .collect(toImmutableList()) : new ArrayList<>(); + } public List getInputs() { - return jySubstitutionMappings.getJyInputs() + List jyInputs = jySubstitutionMappings.getJyInputs(); + return jyInputs != null ? jyInputs .stream() .map(Input::new) - .collect(toImmutableList()); + .collect(toImmutableList()) : new ArrayList<>(); } public NodeType getNodeDefinition() { diff --git a/jython-tosca-parser/src/main/java/org/openecomp/sdc/toscaparser/api/TopologyTemplate.java b/jython-tosca-parser/src/main/java/org/openecomp/sdc/toscaparser/api/TopologyTemplate.java index 5c9db48..0d0dd10 100644 --- a/jython-tosca-parser/src/main/java/org/openecomp/sdc/toscaparser/api/TopologyTemplate.java +++ b/jython-tosca-parser/src/main/java/org/openecomp/sdc/toscaparser/api/TopologyTemplate.java @@ -2,13 +2,17 @@ package org.openecomp.sdc.toscaparser.api; import static com.google.common.collect.ImmutableList.toImmutableList; +import java.util.ArrayList; import java.util.List; import java.util.Map; import java.util.Objects; import org.openecomp.sdc.toscaparser.api.parameters.Input; +import org.openecomp.sdc.toscaparser.jython.JyGroup; +import org.openecomp.sdc.toscaparser.jython.JyNodeTemplate; import org.openecomp.sdc.toscaparser.jython.JySubstitutionMappings; import org.openecomp.sdc.toscaparser.jython.JyTopologyTemplate; +import org.openecomp.sdc.toscaparser.jython.parameters.JyInput; import com.google.common.base.MoreObjects; @@ -25,24 +29,27 @@ public class TopologyTemplate { } public List getNodeTemplates() { - return jyTopologyTemplate.getJyNodeTemplates() + List jyNodeTemplates = jyTopologyTemplate.getJyNodeTemplates(); + return jyNodeTemplates != null ? jyNodeTemplates .stream() .map(NodeTemplate::new) - .collect(toImmutableList()); + .collect(toImmutableList()) : new ArrayList<>(); } public List getInputs() { - return jyTopologyTemplate.getJyInputs() + List jyInputs = jyTopologyTemplate.getJyInputs(); + return jyInputs != null ? jyInputs .stream() .map(Input::new) - .collect(toImmutableList()); + .collect(toImmutableList()) : new ArrayList<>(); } public List getGroups() { - return jyTopologyTemplate.getJyGroups() + List jyGroups = jyTopologyTemplate.getJyGroups(); + return jyGroups != null ? jyGroups .stream() .map(Group::new) - .collect(toImmutableList()); + .collect(toImmutableList()) : new ArrayList<>(); } public SubstitutionMappings getSubstitutionMappings() { @@ -50,7 +57,7 @@ public class TopologyTemplate { return jySubstitutionMappings != null ? new SubstitutionMappings(jySubstitutionMappings) : null; } - public Map getMetadata() { + public Metadata getMetadata() { return jyTopologyTemplate.getJyMetadata(); } diff --git a/jython-tosca-parser/src/main/java/org/openecomp/sdc/toscaparser/api/ToscaTemplate.java b/jython-tosca-parser/src/main/java/org/openecomp/sdc/toscaparser/api/ToscaTemplate.java index abf1b53..0aaafff 100644 --- a/jython-tosca-parser/src/main/java/org/openecomp/sdc/toscaparser/api/ToscaTemplate.java +++ b/jython-tosca-parser/src/main/java/org/openecomp/sdc/toscaparser/api/ToscaTemplate.java @@ -23,6 +23,10 @@ public class ToscaTemplate { public String getVersion() { return jyToscaTemplate.getJyVersion(); } + + public Metadata getMetadata() { + return jyToscaTemplate.getJyMetadata() != null ? new Metadata(jyToscaTemplate.getJyMetadata()) : null; + } public String getDescription() { return jyToscaTemplate.getJyDescription(); @@ -37,7 +41,7 @@ public class ToscaTemplate { } public List getNestedTopologyTemplates() { - return jyToscaTemplate.getNestedTopologyTemplates() + return jyToscaTemplate.getJyNestedTopologyTemplates() .stream() .map(TopologyTemplate::new) .collect(toImmutableList()); @@ -53,6 +57,7 @@ public class ToscaTemplate { .add("version", getVersion()) .add("description", getDescription()) .add("topologyTemplate", topologyTemplate) + .add("nestedTopologyTemplates", getNestedTopologyTemplates()) .toString(); } } \ No newline at end of file diff --git a/jython-tosca-parser/src/main/java/org/openecomp/sdc/toscaparser/api/parameters/Input.java b/jython-tosca-parser/src/main/java/org/openecomp/sdc/toscaparser/api/parameters/Input.java index 0b9ad7d..2339bb4 100644 --- a/jython-tosca-parser/src/main/java/org/openecomp/sdc/toscaparser/api/parameters/Input.java +++ b/jython-tosca-parser/src/main/java/org/openecomp/sdc/toscaparser/api/parameters/Input.java @@ -22,8 +22,6 @@ public class Input { return jyInput.getJyType(); } - - public boolean isRequired() { return jyInput.isJyRequired(); } @@ -31,6 +29,10 @@ public class Input { public String getDescription() { return jyInput.getJyDescription(); } + + public Object getDefault() { + return jyInput.getJyDefault(); + } @Override public String toString() { @@ -39,6 +41,7 @@ public class Input { .add("type", getType()) .add("required", isRequired()) .add("description", getDescription()) + .add("default", getDefault()) .toString(); } } diff --git a/jython-tosca-parser/src/main/java/org/openecomp/sdc/toscaparser/jython/JyGroup.java b/jython-tosca-parser/src/main/java/org/openecomp/sdc/toscaparser/jython/JyGroup.java index c155dc6..e12a31e 100644 --- a/jython-tosca-parser/src/main/java/org/openecomp/sdc/toscaparser/jython/JyGroup.java +++ b/jython-tosca-parser/src/main/java/org/openecomp/sdc/toscaparser/jython/JyGroup.java @@ -1,5 +1,10 @@ package org.openecomp.sdc.toscaparser.jython; -public interface JyGroup extends JyEntityTemplate { +import java.util.List; +import java.util.Map; +public interface JyGroup extends JyEntityTemplate { + + List getJyMembers(); + Map getJyMetadata(); } diff --git a/jython-tosca-parser/src/main/java/org/openecomp/sdc/toscaparser/jython/JyNodeTemplate.java b/jython-tosca-parser/src/main/java/org/openecomp/sdc/toscaparser/jython/JyNodeTemplate.java index a837137..620cc1c 100644 --- a/jython-tosca-parser/src/main/java/org/openecomp/sdc/toscaparser/jython/JyNodeTemplate.java +++ b/jython-tosca-parser/src/main/java/org/openecomp/sdc/toscaparser/jython/JyNodeTemplate.java @@ -4,5 +4,6 @@ import java.util.Map; public interface JyNodeTemplate extends JyEntityTemplate { - Map getJyMetadata(); + Map getJyMetadata(); + JySubstitutionMappings getJySubstitutionMappings(); } diff --git a/jython-tosca-parser/src/main/java/org/openecomp/sdc/toscaparser/jython/JySubstitutionMappings.java b/jython-tosca-parser/src/main/java/org/openecomp/sdc/toscaparser/jython/JySubstitutionMappings.java index bd95cdc..1130e8c 100644 --- a/jython-tosca-parser/src/main/java/org/openecomp/sdc/toscaparser/jython/JySubstitutionMappings.java +++ b/jython-tosca-parser/src/main/java/org/openecomp/sdc/toscaparser/jython/JySubstitutionMappings.java @@ -9,5 +9,6 @@ public interface JySubstitutionMappings { List getJyNodeTemplates(); List getJyInputs(); + List getJyGroups(); JyNodeType getJyNodeDefinition(); } diff --git a/jython-tosca-parser/src/main/java/org/openecomp/sdc/toscaparser/jython/JyTopologyTemplate.java b/jython-tosca-parser/src/main/java/org/openecomp/sdc/toscaparser/jython/JyTopologyTemplate.java index 9cdc38b..d16ef5c 100644 --- a/jython-tosca-parser/src/main/java/org/openecomp/sdc/toscaparser/jython/JyTopologyTemplate.java +++ b/jython-tosca-parser/src/main/java/org/openecomp/sdc/toscaparser/jython/JyTopologyTemplate.java @@ -1,8 +1,8 @@ package org.openecomp.sdc.toscaparser.jython; import java.util.List; -import java.util.Map; +import org.openecomp.sdc.toscaparser.api.Metadata; import org.openecomp.sdc.toscaparser.jython.parameters.JyInput; public interface JyTopologyTemplate { @@ -12,5 +12,5 @@ public interface JyTopologyTemplate { List getJyInputs(); List getJyGroups(); JySubstitutionMappings getJySubstitutionMappings(); - Map getJyMetadata(); + Metadata getJyMetadata(); } diff --git a/jython-tosca-parser/src/main/java/org/openecomp/sdc/toscaparser/jython/JyToscaTemplate.java b/jython-tosca-parser/src/main/java/org/openecomp/sdc/toscaparser/jython/JyToscaTemplate.java index 7cba568..a2180c7 100644 --- a/jython-tosca-parser/src/main/java/org/openecomp/sdc/toscaparser/jython/JyToscaTemplate.java +++ b/jython-tosca-parser/src/main/java/org/openecomp/sdc/toscaparser/jython/JyToscaTemplate.java @@ -1,12 +1,14 @@ package org.openecomp.sdc.toscaparser.jython; import java.util.List; +import java.util.Map; public interface JyToscaTemplate { String getJyVersion(); String getJyDescription(); List getJyNodeTemplates(); - List getNestedTopologyTemplates(); + List getJyNestedTopologyTemplates(); JyTopologyTemplate getJyTopologyTemplate(); + Map getJyMetadata(); } diff --git a/jython-tosca-parser/src/main/java/org/openecomp/sdc/toscaparser/jython/parameters/JyInput.java b/jython-tosca-parser/src/main/java/org/openecomp/sdc/toscaparser/jython/parameters/JyInput.java index 253805b..c1614ce 100644 --- a/jython-tosca-parser/src/main/java/org/openecomp/sdc/toscaparser/jython/parameters/JyInput.java +++ b/jython-tosca-parser/src/main/java/org/openecomp/sdc/toscaparser/jython/parameters/JyInput.java @@ -4,7 +4,7 @@ public interface JyInput { String getJyName(); String getJyType(); - String getJyDefault(); + Object getJyDefault(); boolean isJyRequired(); String getJyDescription(); } diff --git a/jython-tosca-parser/src/main/resources/Lib/site-packages/tosca_parser-0.7.0-py2.7.egg/toscaparser/groups.py b/jython-tosca-parser/src/main/resources/Lib/site-packages/tosca_parser-0.7.0-py2.7.egg/toscaparser/groups.py index f1da5b0..cb9c20d 100644 --- a/jython-tosca-parser/src/main/resources/Lib/site-packages/tosca_parser-0.7.0-py2.7.egg/toscaparser/groups.py +++ b/jython-tosca-parser/src/main/resources/Lib/site-packages/tosca_parser-0.7.0-py2.7.egg/toscaparser/groups.py @@ -37,6 +37,12 @@ class Group(EntityTemplate, JyGroup): self.member_nodes = member_nodes self._validate_keys() + def getJyMembers(self): + return self.members + + def getJyMetadata(self): + return self.meta_data + @property def members(self): return self.entity_tpl.get('members') diff --git a/jython-tosca-parser/src/main/resources/Lib/site-packages/tosca_parser-0.7.0-py2.7.egg/toscaparser/nodetemplate.py b/jython-tosca-parser/src/main/resources/Lib/site-packages/tosca_parser-0.7.0-py2.7.egg/toscaparser/nodetemplate.py index ee7622c..fadc8d0 100644 --- a/jython-tosca-parser/src/main/resources/Lib/site-packages/tosca_parser-0.7.0-py2.7.egg/toscaparser/nodetemplate.py +++ b/jython-tosca-parser/src/main/resources/Lib/site-packages/tosca_parser-0.7.0-py2.7.egg/toscaparser/nodetemplate.py @@ -61,6 +61,10 @@ class NodeTemplate(EntityTemplate, JyNodeTemplate): def getJyMetadata(self): return self.meta_data + def getJySubstitutionMappings(self): + return self.sub_mapping_tosca_template + + @property def relationships(self): if not self._relationships: diff --git a/jython-tosca-parser/src/main/resources/Lib/site-packages/tosca_parser-0.7.0-py2.7.egg/toscaparser/parameters.py b/jython-tosca-parser/src/main/resources/Lib/site-packages/tosca_parser-0.7.0-py2.7.egg/toscaparser/parameters.py index 1bb58be..765ccb7 100644 --- a/jython-tosca-parser/src/main/resources/Lib/site-packages/tosca_parser-0.7.0-py2.7.egg/toscaparser/parameters.py +++ b/jython-tosca-parser/src/main/resources/Lib/site-packages/tosca_parser-0.7.0-py2.7.egg/toscaparser/parameters.py @@ -44,7 +44,7 @@ class Input(JyInput): return self.name def getJyType(self): - return self.name + return self.type def isJyRequired(self): return self.required @@ -93,7 +93,8 @@ class Input(JyInput): def validate_type(self, input_type): if input_type not in Schema.PROPERTY_TYPES: ExceptionCollector.appendException( - ValueError(_('Invalid type "%s".') % type)) + #ValueError(_('Invalid type "%s".') % type)) + ValueError(_('Invalid type "%s".') % input_type)) # TODO(anyone) Need to test for any built-in datatype not just network # that is, tosca.datatypes.* and not assume tosca.datatypes.network.* diff --git a/jython-tosca-parser/src/main/resources/Lib/site-packages/tosca_parser-0.7.0-py2.7.egg/toscaparser/substitution_mappings.py b/jython-tosca-parser/src/main/resources/Lib/site-packages/tosca_parser-0.7.0-py2.7.egg/toscaparser/substitution_mappings.py index 859b7a4..9a14f6f 100644 --- a/jython-tosca-parser/src/main/resources/Lib/site-packages/tosca_parser-0.7.0-py2.7.egg/toscaparser/substitution_mappings.py +++ b/jython-tosca-parser/src/main/resources/Lib/site-packages/tosca_parser-0.7.0-py2.7.egg/toscaparser/substitution_mappings.py @@ -38,12 +38,13 @@ class SubstitutionMappings(JySubstitutionMappings): OPTIONAL_OUTPUTS = ['tosca_id', 'tosca_name', 'state'] - def __init__(self, sub_mapping_def, nodetemplates, inputs, outputs, + def __init__(self, sub_mapping_def, nodetemplates, inputs, outputs, groups, #ATT sub_mapped_node_template, custom_defs): self.nodetemplates = nodetemplates self.sub_mapping_def = sub_mapping_def self.inputs = inputs or [] self.outputs = outputs or [] + self.groups = groups or [] #ATT self.sub_mapped_node_template = sub_mapped_node_template self.custom_defs = custom_defs or {} self._validate() @@ -57,6 +58,9 @@ class SubstitutionMappings(JySubstitutionMappings): def getJyInputs(self): return self.inputs + def getJyGroups(self): #ATT + return self.groups + def getJyNodeDefinition(self): return self.node_definition diff --git a/jython-tosca-parser/src/main/resources/Lib/site-packages/tosca_parser-0.7.0-py2.7.egg/toscaparser/topology_template.py b/jython-tosca-parser/src/main/resources/Lib/site-packages/tosca_parser-0.7.0-py2.7.egg/toscaparser/topology_template.py index c56e7b9..a64c561 100644 --- a/jython-tosca-parser/src/main/resources/Lib/site-packages/tosca_parser-0.7.0-py2.7.egg/toscaparser/topology_template.py +++ b/jython-tosca-parser/src/main/resources/Lib/site-packages/tosca_parser-0.7.0-py2.7.egg/toscaparser/topology_template.py @@ -146,6 +146,7 @@ class TopologyTemplate(JyTopologyTemplate): self.nodetemplates, self.inputs, self.outputs, + self.groups, #ATT self.sub_mapped_node_template, self.custom_defs) diff --git a/jython-tosca-parser/src/main/resources/Lib/site-packages/tosca_parser-0.7.0-py2.7.egg/toscaparser/tosca_template.py b/jython-tosca-parser/src/main/resources/Lib/site-packages/tosca_parser-0.7.0-py2.7.egg/toscaparser/tosca_template.py index 6b3ea87..c2c3f36 100644 --- a/jython-tosca-parser/src/main/resources/Lib/site-packages/tosca_parser-0.7.0-py2.7.egg/toscaparser/tosca_template.py +++ b/jython-tosca-parser/src/main/resources/Lib/site-packages/tosca_parser-0.7.0-py2.7.egg/toscaparser/tosca_template.py @@ -13,6 +13,7 @@ import logging import os +#import shutil from copy import deepcopy from toscaparser.common.exception import ExceptionCollector @@ -73,6 +74,7 @@ class ToscaTemplate(JyToscaTemplate): self.input_path = None self.path = None self.tpl = None + self.csar_tempdir = None self.nested_tosca_tpls_with_topology = {} self.nested_tosca_templates_with_topology = [] if path: @@ -97,6 +99,7 @@ class ToscaTemplate(JyToscaTemplate): self.parsed_params = parsed_params self._validate_field() self.version = self._tpl_version() + self.metadata = self._tpl_metadata() self.relationship_types = self._tpl_relationship_types() self.description = self._tpl_description() self.topology_template = self._topology_template() @@ -109,12 +112,19 @@ class ToscaTemplate(JyToscaTemplate): self._handle_nested_tosca_templates_with_topology() self.graph = ToscaGraph(self.nodetemplates) + if self.csar_tempdir: + #shutil.rmtree(self.csar_tempdir) + csar_tempdir = None + ExceptionCollector.stop() self.verify_template() def getJyVersion(self): return self.version + def getJyMetadata(self): + return self.metadata + def getJyDescription(self): return self.description @@ -146,6 +156,9 @@ class ToscaTemplate(JyToscaTemplate): def _tpl_version(self): return self.tpl.get(DEFINITION_VERSION) + def _tpl_metadata(self): + return self.tpl.get(METADATA) + def _tpl_description(self): desc = self.tpl.get(DESCRIPTION) if desc: @@ -290,6 +303,7 @@ class ToscaTemplate(JyToscaTemplate): if csar.validate(): csar.decompress() self.a_file = True # the file has been decompressed locally + self.csar_tempdir = csar.temp_dir return os.path.join(csar.temp_dir, csar.get_main_template()) else: ExceptionCollector.appendException( diff --git a/pom.xml b/pom.xml index 7c348e9..04634b6 100644 --- a/pom.xml +++ b/pom.xml @@ -4,7 +4,7 @@ org.openecomp.sdc.sdc-distribution-client sdc-main-distribution-client - 1.1.0-SNAPSHOT + 1.1.6-SNAPSHOT pom diff --git a/sdc-distribution-ci/pom.xml b/sdc-distribution-ci/pom.xml index 93cd214..a570d62 100644 --- a/sdc-distribution-ci/pom.xml +++ b/sdc-distribution-ci/pom.xml @@ -6,7 +6,7 @@ org.openecomp.sdc.sdc-distribution-client sdc-main-distribution-client - 1.1.0-SNAPSHOT + 1.1.6-SNAPSHOT sdc-distribution-ci diff --git a/sdc-distribution-ci/src/main/java/org/openecomp/test/ClientTest.java b/sdc-distribution-ci/src/main/java/org/openecomp/test/ClientTest.java index d944bf0..e44013c 100644 --- a/sdc-distribution-ci/src/main/java/org/openecomp/test/ClientTest.java +++ b/sdc-distribution-ci/src/main/java/org/openecomp/test/ClientTest.java @@ -33,15 +33,7 @@ import ch.qos.logback.classic.LoggerContext; public class ClientTest { public static void main(String[] args) throws Exception { - try (SdcToscaParserFactory toscaParserFactory = SdcToscaParserFactory.getInstance()){ - //ISdcCsarHelper csarHelper = toscaParserFactory.getSdcCsarHelper("C:\\Users\\pa0916\\Desktop\\Work\\ASDC\\CSARs\\service-ServiceFdnt-csar-nt-metadata.csar"); - ISdcCsarHelper csarHelper = toscaParserFactory.getSdcCsarHelper("C:\\Users\\pa0916\\Desktop\\Work\\ASDC\\CSARs\\service-ServiceFdnt-csar-nt-props.csar"); - //ISdcCsarHelper csarHelper = toscaParserFactory.getSdcCsarHelper("C:\\Users\\pa0916\\Desktop\\Work\\ASDC\\CSARs\\service-ServiceFdnt-csar.csar"); - String serviceSubstitutionMappingsTypeName = csarHelper.getServiceSubstitutionMappingsTypeName(); - System.out.println("serviceSubstitutionMappingsTypeName is "+serviceSubstitutionMappingsTypeName); - String nodeTemplatePropertyLeafValue = csarHelper.getNodeTemplatePropertyLeafValue(csarHelper.getServiceVfList().get(0), "nf_role#nf_naming#ecomp_generated_naming"); - System.out.println("property is "+nodeTemplatePropertyLeafValue); - } + LoggerContext lc = (LoggerContext) LoggerFactory.getILoggerFactory(); lc.getLogger("org.apache.http").setLevel(Level.INFO); diff --git a/sdc-distribution-client/pom.xml b/sdc-distribution-client/pom.xml index ec93149..9ec6d02 100644 --- a/sdc-distribution-client/pom.xml +++ b/sdc-distribution-client/pom.xml @@ -6,7 +6,7 @@ org.openecomp.sdc.sdc-distribution-client sdc-main-distribution-client - 1.1.0-SNAPSHOT + 1.1.6-SNAPSHOT sdc-distribution-client diff --git a/sdc-tosca-parser/pom.xml b/sdc-tosca-parser/pom.xml index cd6e49e..3bc6a80 100644 --- a/sdc-tosca-parser/pom.xml +++ b/sdc-tosca-parser/pom.xml @@ -6,7 +6,7 @@ org.openecomp.sdc.sdc-distribution-client sdc-main-distribution-client - 1.1.0-SNAPSHOT + 1.1.6-SNAPSHOT sdc-tosca-parser diff --git a/sdc-tosca-parser/src/main/java/org/openecomp/sdc/tosca/parser/api/ISdcCsarHelper.java b/sdc-tosca-parser/src/main/java/org/openecomp/sdc/tosca/parser/api/ISdcCsarHelper.java index 26995c4..88e22a0 100644 --- a/sdc-tosca-parser/src/main/java/org/openecomp/sdc/tosca/parser/api/ISdcCsarHelper.java +++ b/sdc-tosca-parser/src/main/java/org/openecomp/sdc/tosca/parser/api/ISdcCsarHelper.java @@ -20,11 +20,12 @@ package org.openecomp.sdc.tosca.parser.api; import java.util.List; -import java.util.Map; import org.apache.commons.lang3.tuple.Pair; import org.openecomp.sdc.toscaparser.api.Group; +import org.openecomp.sdc.toscaparser.api.Metadata; import org.openecomp.sdc.toscaparser.api.NodeTemplate; +import org.openecomp.sdc.toscaparser.api.parameters.Input; public interface ISdcCsarHelper { @@ -120,17 +121,18 @@ public interface ISdcCsarHelper { * @param metadata - metadata object. * @param metadataPropertyName - the name of the metadata property. * @return metadata property value - *//* - //public String getMetadataPropertyValue(Metadata metadata, String metadataPropertyName); - */ + */ + public String getMetadataPropertyValue(Metadata metadata, String metadataPropertyName); + /** * Get input leaf value for the CSAR service, by full path separated by #.
* Same logic as in {@link #getNodeTemplatePropertyLeafValue(NodeTemplate, String) getNodeTemplatePropertyLeafValue}, only for an input full path. + * The expected format is "input_name#default[optionally #rest_of_path]" * @param inputLeafValuePath by full path separated by #. * @return input leaf value for the service. */ - public String getServiceInputLeafValue(String inputLeafValuePath); + public String getServiceInputLeafValueOfDefault(String inputLeafValuePath); /** * Get the type name of the CSAR service's substitution mappings element.
@@ -151,7 +153,7 @@ public interface ISdcCsarHelper { * Get the CSAR service metadata * @return - the service metadata object. */ - public Map getServiceMetadata(); + public Metadata getServiceMetadata(); /** * Get all VFC node templates from a specified VF. @@ -178,13 +180,14 @@ public interface ISdcCsarHelper {   members: [vIPR_ATM_Ha_Two, vIPR_ATM_Ha_One, vIPR_ATM_OAM_SG, vIPR_ATM_HA_TWO_SG, vIPR_ATM_HA_ONE_SG]

calling
- getMembersOfGroup(group)
- will return List of the following Strings: "vIPR_ATM_Ha_Two, vIPR_ATM_Ha_One, vIPR_ATM_OAM_SG, vIPR_ATM_HA_TWO_SG, vIPR_ATM_HA_ONE_SG"
- * @param group - group to return the members. - * @return names of all group members. + getMembersOfVfModule(NoteTemplate vfNodeTemplate, Group group)
+ will return List of the following Node templates in the vfNodeTemplate: "vIPR_ATM_Ha_Two, vIPR_ATM_Ha_One, vIPR_ATM_OAM_SG, vIPR_ATM_HA_TWO_SG, vIPR_ATM_HA_ONE_SG"
+ * @param vf - VF to return the node templates from. + * @param vfModule - group to return the members from. + * @return node templates from vf with the names as in members section. * */ - public List getMembersOfGroup(Group group); + public List getMembersOfVfModule(NodeTemplate vf, Group vfModule); /** @@ -238,4 +241,10 @@ public interface ISdcCsarHelper { */ public String getTypeOfNodeTemplate(NodeTemplate nodeTemplate); + /** + * Get the CSAR service inputs list. + * @return - the service inputs list. + */ + public List getServiceInputs(); + } diff --git a/sdc-tosca-parser/src/main/java/org/openecomp/sdc/tosca/parser/impl/SdcCsarHelperImpl.java b/sdc-tosca-parser/src/main/java/org/openecomp/sdc/tosca/parser/impl/SdcCsarHelperImpl.java index d5caa5d..612bc04 100644 --- a/sdc-tosca-parser/src/main/java/org/openecomp/sdc/tosca/parser/impl/SdcCsarHelperImpl.java +++ b/sdc-tosca-parser/src/main/java/org/openecomp/sdc/tosca/parser/impl/SdcCsarHelperImpl.java @@ -20,27 +20,27 @@ package org.openecomp.sdc.tosca.parser.impl; +import org.apache.commons.lang3.tuple.ImmutablePair; +import org.apache.commons.lang3.tuple.Pair; +import org.openecomp.sdc.tosca.parser.api.ISdcCsarHelper; +import org.openecomp.sdc.tosca.parser.utils.GeneralUtility; +import org.openecomp.sdc.toscaparser.api.*; +import org.openecomp.sdc.toscaparser.api.elements.NodeType; +import org.openecomp.sdc.toscaparser.api.parameters.Input; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; +import org.yaml.snakeyaml.Yaml; + import java.util.ArrayList; import java.util.List; import java.util.Map; import java.util.Optional; -import java.util.stream.Collector; import java.util.stream.Collectors; -import org.apache.commons.lang3.tuple.Pair; -import org.openecomp.sdc.tosca.parser.api.ISdcCsarHelper; -import org.openecomp.sdc.toscaparser.api.Group; -import org.openecomp.sdc.toscaparser.api.NodeTemplate; -import org.openecomp.sdc.toscaparser.api.Property; -import org.openecomp.sdc.toscaparser.api.TopologyTemplate; -import org.openecomp.sdc.toscaparser.api.ToscaTemplate; -import org.yaml.snakeyaml.Yaml; - public class SdcCsarHelperImpl implements ISdcCsarHelper { private ToscaTemplate toscaTemplate; - private static Yaml defaultYaml = new Yaml(); - + private static Logger log = LoggerFactory.getLogger(SdcCsarHelperImpl.class.getName()); public SdcCsarHelperImpl(ToscaTemplate toscaTemplate) { this.toscaTemplate = toscaTemplate; @@ -49,38 +49,62 @@ public class SdcCsarHelperImpl implements ISdcCsarHelper { @Override //Sunny flow - covered with UT, flat and nested public String getNodeTemplatePropertyLeafValue(NodeTemplate nodeTemplate, String leafValuePath) { + if (nodeTemplate == null) { + log.error("getNodeTemplatePropertyLeafValue - nodeTemplate is null"); + return null; + } + if (GeneralUtility.isEmptyString(leafValuePath)) { + log.error("getNodeTemplatePropertyLeafValue - leafValuePath is null or empty"); + return null; + } + log.trace("getNodeTemplatePropertyLeafValue - nodeTemplate is : {}, leafValuePath is {} ", nodeTemplate.toString(), leafValuePath); String[] split = leafValuePath.split("#"); List properties = nodeTemplate.getProperties(); - Optional findFirst = properties.stream().filter(x -> x.getName().equals(split[0])).findFirst(); - if (findFirst.isPresent()){ - Property property = findFirst.get(); - Object current = property.getValue(); - if (split.length > 1){ - current = defaultYaml.load((String)current); - for (int i = 1; i < split.length; i++) { - current = ((Map)current).get(split[i]); - } - } - return String.valueOf(current); - } - return null; + log.trace("getNodeTemplatePropertyLeafValue - properties of nodeTemplate are : {}", properties.toString()); + return processProperties(split, properties); } @Override + //Sunny flow - covered with UT public List getServiceVlList() { - return getNodeTemplateBySdcType(toscaTemplate.getTopologyTemplate(), Types.TYPE_VL); - + List serviceVlList = getNodeTemplateBySdcType(toscaTemplate.getTopologyTemplate(), Types.TYPE_VL); + log.trace("getServiceVlList - the VL list is {}", serviceVlList); + return serviceVlList; } @Override //Sunny flow - covered with UT public List getServiceVfList() { - return getNodeTemplateBySdcType(toscaTemplate.getTopologyTemplate(), Types.TYPE_VF); + List serviceVfList = getNodeTemplateBySdcType(toscaTemplate.getTopologyTemplate(), Types.TYPE_VF); + log.trace("getServiceVfList - the VF list is {}", serviceVfList); + return serviceVfList; + } + + @Override + //Sunny flow - covered with UT + public String getMetadataPropertyValue(Metadata metadata, String metadataPropertyName) { + if (GeneralUtility.isEmptyString(metadataPropertyName)) { + log.error("getMetadataPropertyValue - the metadataPropertyName is null or empty"); + return null; + } + if (metadata == null) { + log.error("getMetadataPropertyValue - the metadata is null"); + return null; + } + String metadataPropertyValue = metadata.getValue(metadataPropertyName); + log.trace("getMetadataPropertyValue - metadata is {} metadataPropertyName is {} the value is : {}", metadata.toString(), metadataPropertyName , metadataPropertyValue); + return metadataPropertyValue; } + @Override //Sunny flow - covered with UT public List getServiceNodeTemplatesByType(String nodeType) { + if (GeneralUtility.isEmptyString(nodeType)) { + log.error("getServiceNodeTemplatesByType - nodeType - is null or empty"); + return new ArrayList<>(); + } + List res = new ArrayList<>(); List nodeTemplates = toscaTemplate.getNodeTemplates(); for (NodeTemplate nodeTemplate : nodeTemplates){ @@ -88,132 +112,336 @@ public class SdcCsarHelperImpl implements ISdcCsarHelper { res.add(nodeTemplate); } } + + log.trace("getServiceNodeTemplatesByType - NodeTemplate list value is: {}", res); return res; } @Override + //Sunny flow - covered with UT public List getVfcListByVf(String vfCustomizationId) { + if (GeneralUtility.isEmptyString(vfCustomizationId)) { + log.error("getVfcListByVf - vfCustomizationId - is null or empty"); + return new ArrayList<>(); + } + List serviceVfList = getServiceVfList(); NodeTemplate vfInstance = getNodeTemplateByCustomizationUuid(serviceVfList, vfCustomizationId); + log.trace("getVfcListByVf - serviceVfList value: {}, vfInstance value: {}", serviceVfList, vfInstance); return getNodeTemplateBySdcType(vfInstance, Types.TYPE_VFC); } - //Assumed to be unique property for the list - private NodeTemplate getNodeTemplateByCustomizationUuid(List nodeTemplates, String customizationId){ - for (NodeTemplate nodeTemplate : nodeTemplates){ - if (customizationId.equals(nodeTemplate.getMetadata().get(SdcPropertyNames.PROPERTY_NAME_CUSTOMIZATIONUUID))){ - return nodeTemplate; - } - } - return null; - } - @Override + //Sunny flow - covered with UT public List getVfModulesByVf(String vfCustomizationUuid) { List serviceVfList = getServiceVfList(); - List res = new ArrayList<>(); NodeTemplate nodeTemplateByCustomizationUuid = getNodeTemplateByCustomizationUuid(serviceVfList, vfCustomizationUuid); - //Asked Yaniv about getGroups from NodeTemplate - /* - List groups = nodeTemplateByCustomizationUuid.; - for (Group group : groups){ - if (Types.TYPE_VFMODULE.equals(group.getType())){ - res.add(group); + if (nodeTemplateByCustomizationUuid != null){ + SubstitutionMappings substitutionMappings = nodeTemplateByCustomizationUuid.getSubstitutionMappings(); + if (substitutionMappings != null){ + List groups = substitutionMappings.getGroups(); + if (groups != null){ + return groups.stream().filter(x -> "org.openecomp.groups.VfModule".equals(x.getTypeDefinition().getType())).collect(Collectors.toList()); + } } - }*/ - return res; + } + return new ArrayList<>(); } @Override - public String getServiceInputLeafValue(String inputLeafValuePath) { - //toscaTemplate.getTopologyTemplate().getNodeTemplates().get(0).getProperties().get(0). - return null;//getLeafPropertyValue(toscaTemplate, inputLeafValuePath); + //Sunny flow - covered with UT + public String getServiceInputLeafValueOfDefault(String inputLeafValuePath) { + if (GeneralUtility.isEmptyString(inputLeafValuePath)) { + log.error("getServiceInputLeafValueOfDefault - inputLeafValuePath is null or empty"); + return null; + } + + String[] split = inputLeafValuePath.split("#"); + if (split.length < 2 || !split[1].equals("default")){ + log.error("getServiceInputLeafValue - inputLeafValuePath should be of format #default[optionally #] "); + return null; + } + + List inputs = toscaTemplate.getInputs(); + log.trace("getServiceInputLeafValue - the leafValuePath is {} , the inputs are {}", inputLeafValuePath, inputs); + if (inputs != null){ + Optional findFirst = inputs.stream().filter(x -> x.getName().equals(split[0])).findFirst(); + if (findFirst.isPresent()){ + log.trace("getServiceInputLeafValue - find first item is {}", findFirst.get().toString()); + Input input = findFirst.get(); + Object current = input.getDefault(); + if (current == null){ + log.error("getServiceInputLeafValue - this input has no default"); + return null; + } + if (split.length > 2){ + current = new Yaml().load((String)current); + for (int i = 2; i < split.length; i++) { + if (current instanceof Map){ + current = ((Map)current).get(split[i]); + } else { + log.error("getServiceInputLeafValue - found an unexpected leaf where expected to find a complex type"); + return null; + } + } + } + if (current != null){ + log.trace("getServiceInputLeafValue - the input default leaf value is {}", String.valueOf(current)); + return String.valueOf(current); + } + } + } + log.error("getServiceInputLeafValue - value not found"); + return null; } + @Override + //Sunny flow - covered with UT public String getServiceSubstitutionMappingsTypeName() { - return toscaTemplate.getTopologyTemplate().getSubstitutionMappings().getNodeDefinition().getType(); - } + SubstitutionMappings substitutionMappings = toscaTemplate.getTopologyTemplate().getSubstitutionMappings(); + if (substitutionMappings == null) { + log.trace("getServiceSubstitutionMappingsTypeName - No Substitution Mappings defined"); + return null; + } + log.trace("getServiceSubstitutionMappingsTypeName - SubstitutionMappings value: {}", substitutionMappings); - @Override - public Map getServiceMetadata() { - TopologyTemplate topologyTemplate = toscaTemplate.getTopologyTemplate(); - System.out.println(topologyTemplate.toString()); - return topologyTemplate.getMetadata(); + NodeType nodeType = substitutionMappings.getNodeDefinition(); + if (nodeType == null) { + log.trace("getServiceSubstitutionMappingsTypeName - No Substitution Mappings node defined"); + return null; + } + log.trace("getServiceSubstitutionMappingsTypeName - nodeType value: {}", nodeType); + + return nodeType.getType(); } - //Get property from group @Override - public String getGroupPropertyLeafValue(Group group, String propertyName) { - return null;//getLeafPropertyValue(group, propertyName); + //Sunny flow - covered with UT + public Metadata getServiceMetadata() { + return toscaTemplate.getMetadata(); } - private List getNodeTemplateBySdcType(NodeTemplate nodeTemplate, String sdcType){ - //Need metadata to fetch by type - - /*List nodeTemplates = nodeTemplate.getNestedNodeTemplates(); - List res = new ArrayList<>(); - for (NodeTemplate nodeTemplateEntry : nodeTemplates){ - if (nodeTemplateEntry.getMetadata().getMetadataPropertyValue(SdcPropertyNames.PROPERTY_NAME_TYPE).equals(sdcType)){ - res.add(nodeTemplateEntry); - } - }*/ - return null; + @Override + //Sunny flow - covered with UT + public List getServiceInputs() { + return toscaTemplate.getInputs(); } - private List getNodeTemplateBySdcType(TopologyTemplate topologyTemplate, String sdcType){ - //Need metadata to fetch by type + @Override + //Sunny flow - covered with UT + public String getGroupPropertyLeafValue(Group group, String leafValuePath) { + if (group == null) { + log.error("getGroupPropertyLeafValue - group is null"); + return null; + } - List nodeTemplates = topologyTemplate.getNodeTemplates(); - List res = new ArrayList<>(); - for (NodeTemplate nodeTemplateEntry : nodeTemplates){ - //TODO switch back to type condition - if (nodeTemplateEntry.getTypeDefinition().getType().contains("."+sdcType.toLowerCase()+".")){ - //if (sdcType.equals(nodeTemplateEntry.getMetadata().get(SdcPropertyNames.PROPERTY_NAME_TYPE))){ - res.add(nodeTemplateEntry); - } + if (GeneralUtility.isEmptyString(leafValuePath)) { + log.error("getGroupPropertyLeafValue - leafValuePath is null or empty"); + return null; } - return res; + + String[] split = leafValuePath.split("#"); + List properties = group.getProperties(); + return processProperties(split, properties); } @Override + //Sunny flow - covered with UT public List getCpListByVf(String vfCustomizationId) { + List cpList = new ArrayList<>(); + if (GeneralUtility.isEmptyString(vfCustomizationId)){ + log.error("getCpListByVf vfCustomizationId string is empty"); + return cpList; + } + List serviceVfList = getServiceVfList(); + if (serviceVfList == null || serviceVfList.size() == 0){ + log.error("getCpListByVf Vfs not exist for vfCustomizationId {}",vfCustomizationId); + return cpList; + } NodeTemplate vfInstance = getNodeTemplateByCustomizationUuid(serviceVfList, vfCustomizationId); - return getNodeTemplateBySdcType(vfInstance, Types.TYPE_CP); + log.debug("getCpListByVf vf list is {}", vfInstance); + if (vfInstance == null) { + log.debug("getCpListByVf vf list is null"); + return cpList; + } + cpList = getNodeTemplateBySdcType(vfInstance, Types.TYPE_CP); + if(cpList == null || cpList.size()==0) + log.trace("getCpListByVf cps not exist for vfCustomizationId {}",vfCustomizationId); + return cpList; } @Override - public List getMembersOfGroup(Group group) { - //Can be done - return null;//toscaTemplate.getTopologyTemplate().getSubstitutionMappings().getNodeTemplates().get(0).get + //Sunny flow - covered with UT + public List getMembersOfVfModule(NodeTemplate vf, Group vfModule) { + if (vf == null) { + log.error("getMembersOfVfModule - vf is null"); + return new ArrayList<>(); + } + + if (vfModule == null) { + log.error("getMembersOfVfModule - vfModule is null"); + return new ArrayList<>(); + } + + List members = vfModule.getMembers(); + if (members != null){ + SubstitutionMappings substitutionMappings = vf.getSubstitutionMappings(); + if (substitutionMappings != null){ + return substitutionMappings.getNodeTemplates().stream().filter(x -> members.contains(x.getName())).collect(Collectors.toList()); + } + } + return new ArrayList<>(); } @Override + //Sunny flow - covered with UT public List> getNodeTemplatePairsByReqName( List listOfReqNodeTemplates, List listOfCapNodeTemplates, String reqName) { - //TODO - Can be done - return new ArrayList<>(); + if (listOfReqNodeTemplates == null || listOfCapNodeTemplates == null || reqName == null){ + //TODO error message + return new ArrayList<>(); + } + + List> pairsList = new ArrayList<>(); + + if (listOfReqNodeTemplates != null){ + for (NodeTemplate reqNodeTemplate : listOfReqNodeTemplates) { + List>> requirements = reqNodeTemplate.getRequirements(); + if (requirements != null){ + for (Map> reqEntry : requirements){ + Map reqEntryMap = reqEntry.get(reqName); + + if (reqEntryMap != null){ + Object node = reqEntryMap.get("node"); + if (node != null){ + String nodeString = (String)node; + Optional findFirst = listOfCapNodeTemplates.stream().filter(x -> x.getName().equals(nodeString)).findFirst(); + if (findFirst.isPresent()){ + pairsList.add(new ImmutablePair(reqNodeTemplate, findFirst.get())); + } + } + } + } + } + } + } + return pairsList; } @Override + //Sunny flow - covered with UT //TODO constant strings public List getAllottedResources() { - List nodeTemplates = toscaTemplate.getTopologyTemplate().getNodeTemplates(); - return nodeTemplates.stream().filter(x -> x.getMetadata() != null && x.getMetadata().get("category").equals("allotted_resources")).collect(Collectors.toList()); + List nodeTemplates = null; + nodeTemplates = toscaTemplate.getTopologyTemplate().getNodeTemplates(); + if(nodeTemplates==null || nodeTemplates.size()==0 ){ + log.error("getAllottedResources nodeTemplates not exist"); + } + nodeTemplates = nodeTemplates.stream().filter(x -> x.getMetadata() != null && x.getMetadata().getValue("category").equals("Allotted Resources")).collect(Collectors.toList()); + if(nodeTemplates==null || nodeTemplates.size()==0 ){ + log.trace("getAllottedResources - allotted resources not exist"); + }else + log.trace("getAllottedResources - the allotted resources list is {}", nodeTemplates); + return nodeTemplates; } - @Override //Sunny flow - covered with UT public String getTypeOfNodeTemplate(NodeTemplate nodeTemplate) { - //Can be done + if(nodeTemplate == null){ + + log.error("getTypeOfNodeTemplate nodeTemplate is null"); + return null; + } + log.debug("getTypeOfNodeTemplate node template type is {}",nodeTemplate.getTypeDefinition().getType()); return nodeTemplate.getTypeDefinition().getType(); } - /*//Not part of API, for inner/test use - public NodeTemplate getNodeTemplateByName(TopologyTemplate topologyTemplate, String topologyName){ + /************************************* helper functions ***********************************/ + private List getNodeTemplateBySdcType(NodeTemplate nodeTemplate, String sdcType){ + if (nodeTemplate == null) { + log.error("getNodeTemplateBySdcType - nodeTemplate is null or empty"); + return new ArrayList<>(); + } + + if (GeneralUtility.isEmptyString(sdcType)) { + log.error("getNodeTemplateBySdcType - sdcType is null or empty"); + return new ArrayList<>(); + } + + SubstitutionMappings substitutionMappings = nodeTemplate.getSubstitutionMappings(); + + if (substitutionMappings != null) { + List nodeTemplates = substitutionMappings.getNodeTemplates(); + if (nodeTemplates != null && nodeTemplates.size() > 0) + return nodeTemplates.stream().filter(x -> (x.getMetadata() != null && sdcType.equals(x.getMetadata().getValue(SdcPropertyNames.PROPERTY_NAME_TYPE)))).collect(Collectors.toList()); + else + log.trace("getNodeTemplateBySdcType - SubstitutionMappings' node Templates not exist"); + } else + log.trace("getNodeTemplateBySdcType - SubstitutionMappings not exist"); + + return new ArrayList<>(); + } + + private List getNodeTemplateBySdcType(TopologyTemplate topologyTemplate, String sdcType){ + if (GeneralUtility.isEmptyString(sdcType)) { + log.error("getNodeTemplateBySdcType - sdcType is null or empty"); + return new ArrayList<>(); + } + + if (topologyTemplate == null) { + log.error("getNodeTemplateBySdcType - topologyTemplate is null"); + return new ArrayList<>(); + } + List nodeTemplates = topologyTemplate.getNodeTemplates(); - Optional findFirst = nodeTemplates.stream().filter(x -> x.getName().equals(topologyName)).findFirst(); - return findFirst.isPresent() ? findFirst.get() : null; - }*/ + + if (nodeTemplates != null && nodeTemplates.size() > 0) + return nodeTemplates.stream().filter(x -> (x.getMetadata() != null && sdcType.equals(x.getMetadata().getValue(SdcPropertyNames.PROPERTY_NAME_TYPE)))).collect(Collectors.toList()); + + log.trace("getNodeTemplateBySdcType - topologyTemplate's nodeTemplates not exist"); + return new ArrayList<>(); + } + + //Assumed to be unique property for the list + private NodeTemplate getNodeTemplateByCustomizationUuid(List nodeTemplates, String customizationId){ + for (NodeTemplate nodeTemplate : nodeTemplates){ + if (customizationId.equals(nodeTemplate.getMetadata().getValue(SdcPropertyNames.PROPERTY_NAME_CUSTOMIZATIONUUID))){ + return nodeTemplate; + } + } + return null; + } + + private String processProperties(String[] split, List properties) { + log.trace("processProperties - the leafValuePath is {} , the properties are {}", split.toString(), properties.toString()); + Optional findFirst = properties.stream().filter(x -> x.getName().equals(split[0])).findFirst(); + if (findFirst.isPresent()){ + log.trace("processProperties - find first item is {}", findFirst.get().toString()); + Property property = findFirst.get(); + Object current = property.getValue(); + if (current == null){ + log.error("processProperties - this property has no value"); + return null; + } + if (split.length > 1){ + current = new Yaml().load((String)current); + for (int i = 1; i < split.length; i++) { + if (current instanceof Map){ + current = ((Map)current).get(split[i]); + } else { + log.error("processProperties - found an unexpected leaf where expected to find a complex type"); + return null; + } + } + } + if (current != null){ + log.trace("processProperties - the property value is {}", String.valueOf(current)); + return String.valueOf(current); + } + } + log.error("processProperties - Dont find property"); + return null; + } } diff --git a/sdc-tosca-parser/src/main/java/org/openecomp/sdc/tosca/parser/impl/SdcToscaParserFactory.java b/sdc-tosca-parser/src/main/java/org/openecomp/sdc/tosca/parser/impl/SdcToscaParserFactory.java index 6be293e..243d238 100644 --- a/sdc-tosca-parser/src/main/java/org/openecomp/sdc/tosca/parser/impl/SdcToscaParserFactory.java +++ b/sdc-tosca-parser/src/main/java/org/openecomp/sdc/tosca/parser/impl/SdcToscaParserFactory.java @@ -1,10 +1,14 @@ package org.openecomp.sdc.tosca.parser.impl; import java.io.IOException; +import java.util.List; import org.openecomp.sdc.tosca.parser.api.ISdcCsarHelper; import org.openecomp.sdc.tosca.parser.exceptions.SdcToscaParserException; +import org.openecomp.sdc.toscaparser.ToscaParser; import org.openecomp.sdc.toscaparser.ToscaParserFactory; +import org.openecomp.sdc.toscaparser.api.NodeTemplate; +import org.openecomp.sdc.toscaparser.api.ToscaTemplate; public class SdcToscaParserFactory implements AutoCloseable{ @@ -42,7 +46,10 @@ public class SdcToscaParserFactory implements AutoCloseable{ throw new SdcToscaParserException("The factory is closed. It was probably closed too soon."); } try { - return new SdcCsarHelperImpl(toscaParserFactory.create().parse(csarPath)); + ToscaParser create = toscaParserFactory.create(); + ToscaTemplate parse = create.parse(csarPath); + SdcCsarHelperImpl sdcCsarHelperImpl = new SdcCsarHelperImpl(parse); + return sdcCsarHelperImpl; } catch (IOException e) { throw new SdcToscaParserException("Exception when creating the parser: "+e.getMessage()); } @@ -66,4 +73,13 @@ public class SdcToscaParserFactory implements AutoCloseable{ } } } + + public static void main(String[] args) throws SdcToscaParserException { + try (SdcToscaParserFactory factory = SdcToscaParserFactory.getInstance()){ //Autoclosable + ISdcCsarHelper sdcCsarHelper = factory.getSdcCsarHelper("C:\\Users\\pa0916\\Desktop\\Work\\ASDC\\CSARs\\csar_hello_world.zip"); + //Can run methods on the helper + List allottedResources = sdcCsarHelper.getAllottedResources(); + //.............. + } + } } \ No newline at end of file diff --git a/sdc-tosca-parser/src/main/java/org/openecomp/sdc/tosca/parser/utils/GeneralUtility.java b/sdc-tosca-parser/src/main/java/org/openecomp/sdc/tosca/parser/utils/GeneralUtility.java new file mode 100644 index 0000000..e4d92f5 --- /dev/null +++ b/sdc-tosca-parser/src/main/java/org/openecomp/sdc/tosca/parser/utils/GeneralUtility.java @@ -0,0 +1,8 @@ +package org.openecomp.sdc.tosca.parser.utils; + +public class GeneralUtility { + + public static boolean isEmptyString(String str){ + return str == null || str.trim().isEmpty(); + } +} diff --git a/sdc-tosca-parser/src/test/java/org/openecomp/sdc/impl/ToscaParserStubsTest.java b/sdc-tosca-parser/src/test/java/org/openecomp/sdc/impl/ToscaParserStubsTest.java index aac552c..6a23cc4 100644 --- a/sdc-tosca-parser/src/test/java/org/openecomp/sdc/impl/ToscaParserStubsTest.java +++ b/sdc-tosca-parser/src/test/java/org/openecomp/sdc/impl/ToscaParserStubsTest.java @@ -1,96 +1,493 @@ package org.openecomp.sdc.impl; +import static org.junit.Assert.assertEquals; +import static org.junit.Assert.assertNotNull; +import static org.junit.Assert.assertNull; +import static org.junit.Assert.assertTrue; + import java.io.File; +import java.util.ArrayList; import java.util.List; -import java.util.Map; +import org.apache.commons.lang3.tuple.Pair; import org.junit.AfterClass; -import static org.junit.Assert.*; import org.junit.BeforeClass; import org.junit.Test; import org.openecomp.sdc.tosca.parser.api.ISdcCsarHelper; import org.openecomp.sdc.tosca.parser.exceptions.SdcToscaParserException; import org.openecomp.sdc.tosca.parser.impl.SdcToscaParserFactory; +import org.openecomp.sdc.toscaparser.api.Group; +import org.openecomp.sdc.toscaparser.api.Metadata; import org.openecomp.sdc.toscaparser.api.NodeTemplate; +import org.openecomp.sdc.toscaparser.api.parameters.Input; public class ToscaParserStubsTest { - private static ISdcCsarHelper csarHelper; - private static SdcToscaParserFactory factory; - + static SdcToscaParserFactory factory; + static ISdcCsarHelper rainyCsarHelperSingleVf; + static ISdcCsarHelper rainyCsarHelperMultiVfs; + static ISdcCsarHelper rainyCsarHelperNoVf; + static ISdcCsarHelper sunnyCsarHelperMultipleVf; @BeforeClass public static void init() throws SdcToscaParserException{ + long startTime = System.currentTimeMillis(); factory = SdcToscaParserFactory.getInstance(); - //csarHelper = factory.getSdcCsarHelper("C:\\Users\\pa0916\\Desktop\\Work\\ASDC\\CSARs\\service-ServiceFdnt-csar-allotted-resources-4.csar"); - String fileStr = ToscaParserStubsTest.class.getClassLoader().getResource("csars/service-ServiceFdnt-csar-allotted-resources-4.csar").getFile(); + long estimatedTime = System.currentTimeMillis() - startTime; + System.out.println("Time to init factory "+estimatedTime); + String fileStr2 = ToscaParserStubsTest.class.getClassLoader().getResource("csars/service-ServiceFdnt-csar-group-meta-10.csar").getFile(); + File file2 = new File(fileStr2); + startTime = System.currentTimeMillis(); + sunnyCsarHelperMultipleVf = factory.getSdcCsarHelper(file2.getAbsolutePath()); + estimatedTime = System.currentTimeMillis() - startTime; + System.out.println("init CSAR Execution time: "+estimatedTime); + String fileStr = ToscaParserStubsTest.class.getClassLoader().getResource("csars/service-ServiceFdnt-csar-rainy.csar").getFile(); File file = new File(fileStr); - csarHelper = factory.getSdcCsarHelper(file.getAbsolutePath()); + rainyCsarHelperMultiVfs = factory.getSdcCsarHelper(file.getAbsolutePath()); + String fileStr3 = ToscaParserStubsTest.class.getClassLoader().getResource("csars/service-ServiceFdnt-csar.csar").getFile(); + File file3 = new File(fileStr3); + rainyCsarHelperSingleVf = factory.getSdcCsarHelper(file3.getAbsolutePath()); + String fileStr4 = ToscaParserStubsTest.class.getClassLoader().getResource("csars/service-ServiceFdnt-csar-no-vf.csar").getFile(); + File file4 = new File(fileStr3); + rainyCsarHelperNoVf = factory.getSdcCsarHelper(file3.getAbsolutePath()); } - - + @Test - //TODO add rainy flows public void testNumberOfVfSunnyFlow() throws SdcToscaParserException { - List serviceVfList = csarHelper.getServiceVfList(); + List serviceVfList = sunnyCsarHelperMultipleVf.getServiceVfList(); assertNotNull(serviceVfList); - assertEquals(1, serviceVfList.size()); + assertEquals(2, serviceVfList.size()); } @Test - //TODO add rainy flows public void testNodeTemplateFlatProperty() throws SdcToscaParserException { - List serviceVfList = csarHelper.getServiceVfList(); - String nodeTemplatePropertyLeafValue = csarHelper.getNodeTemplatePropertyLeafValue(serviceVfList.get(0), "availability_zone_max_count"); + List serviceVfList = sunnyCsarHelperMultipleVf.getServiceVfList(); + String nodeTemplatePropertyLeafValue = sunnyCsarHelperMultipleVf.getNodeTemplatePropertyLeafValue(serviceVfList.get(0), "availability_zone_max_count"); assertEquals("2", nodeTemplatePropertyLeafValue); } + + @Test + public void testGroupFlatProperty() throws SdcToscaParserException { + List vfModulesByVf = sunnyCsarHelperMultipleVf.getVfModulesByVf("56179cd8-de4a-4c38-919b-bbc4452d2d72"); + String volumeGroup = sunnyCsarHelperMultipleVf.getGroupPropertyLeafValue(vfModulesByVf.get(0), "volume_group"); + assertEquals("false", volumeGroup); + } @Test - //TODO add rainy flows public void testNodeTemplateNestedProperty() throws SdcToscaParserException { - List serviceVfList = csarHelper.getServiceVfList(); - String nodeTemplatePropertyLeafValue = csarHelper.getNodeTemplatePropertyLeafValue(serviceVfList.get(0), "nf_role#nf_naming#instance_name"); - assertEquals("FDNT_instance_VF", nodeTemplatePropertyLeafValue); + List serviceVfList = sunnyCsarHelperMultipleVf.getServiceVfList(); + String nodeTemplatePropertyLeafValue = sunnyCsarHelperMultipleVf.getNodeTemplatePropertyLeafValue(serviceVfList.get(0), "nf_role#nf_naming#ecomp_generated_naming"); + assertEquals("false", nodeTemplatePropertyLeafValue); } @Test - //TODO add rainy flows public void testServiceNodeTemplatesByType() throws SdcToscaParserException { - List serviceVfList = csarHelper.getServiceNodeTemplatesByType("org.openecomp.resource.vf.Fdnt"); + List serviceVfList = sunnyCsarHelperMultipleVf.getServiceNodeTemplatesByType("org.openecomp.resource.vf.Fdnt"); assertNotNull(serviceVfList); - assertEquals(1, serviceVfList.size()); + assertEquals(2, serviceVfList.size()); } @Test - //TODO add rainy flows public void testGetTypeOfNodeTemplate() { - List serviceVfList = csarHelper.getServiceVfList(); - String typeOfNodeTemplate = csarHelper.getTypeOfNodeTemplate(serviceVfList.get(0)); + List serviceVfList = sunnyCsarHelperMultipleVf.getServiceVfList(); + String typeOfNodeTemplate = sunnyCsarHelperMultipleVf.getTypeOfNodeTemplate(serviceVfList.get(0)); assertEquals("org.openecomp.resource.vf.Fdnt", typeOfNodeTemplate); } - - //@Test - //TODO add rainy flows + @Test public void testGetServiceMetadata() { - //FAILS!! Metadata is null - Map serviceMetadata = csarHelper.getServiceMetadata(); + Metadata serviceMetadata = sunnyCsarHelperMultipleVf.getServiceMetadata(); assertNotNull(serviceMetadata); - assertEquals("78c72999-1003-4a35-8534-bbd7d96fcae3", serviceMetadata.get("invariantUUID")); - assertEquals("Service FDNT", serviceMetadata.get("name")); - assertEquals("true", serviceMetadata.get("serviceEcompNaming")); + assertEquals("78c72999-1003-4a35-8534-bbd7d96fcae3", serviceMetadata.getValue("invariantUUID")); + assertEquals("Service FDNT", serviceMetadata.getValue("name")); + assertEquals("true", String.valueOf(serviceMetadata.getValue("serviceEcompNaming"))); } @Test - //TODO add rainy flows public void testGetAllottedResources() { - List allottedResources = csarHelper.getAllottedResources(); - assertEquals(1, allottedResources.size()); + List allottedResources = sunnyCsarHelperMultipleVf.getAllottedResources(); + assertEquals(2, allottedResources.size()); + } + + @Test + public void testGetServiceSubstitutionMappingsTypeName() { + String serviceSubstitutionMappingsTypeName = sunnyCsarHelperMultipleVf.getServiceSubstitutionMappingsTypeName(); + assertEquals("org.openecomp.service.ServiceFdnt", serviceSubstitutionMappingsTypeName); + } + + @Test + public void testGetVfcFromVf(){ + List vfcListByVf = sunnyCsarHelperMultipleVf.getVfcListByVf("56179cd8-de4a-4c38-919b-bbc4452d2d72"); + assertEquals(2, vfcListByVf.size()); + } + + @Test + public void testGetCpFromVf(){ + List cpListByVf = sunnyCsarHelperMultipleVf.getCpListByVf("56179cd8-de4a-4c38-919b-bbc4452d2d72"); + assertEquals(1, cpListByVf.size()); + NodeTemplate nodeTemplate = cpListByVf.get(0); + assertEquals("DNT_PORT", nodeTemplate.getName()); + } + + @Test + public void testServiceVl(){ + List vlList = sunnyCsarHelperMultipleVf.getServiceVlList(); + assertEquals(1, vlList.size()); + } + + @Test + public void testVfModulesFromVf(){ + List vfModulesByVf = sunnyCsarHelperMultipleVf.getVfModulesByVf("56179cd8-de4a-4c38-919b-bbc4452d2d72"); + assertEquals(2, vfModulesByVf.size()); + } + + @Test + public void testGetNodeTemplatePairsByReqName(){ + List> nodeTemplatePairsByReqName = sunnyCsarHelperMultipleVf.getNodeTemplatePairsByReqName(sunnyCsarHelperMultipleVf.getCpListByVf("56179cd8-de4a-4c38-919b-bbc4452d2d72"), sunnyCsarHelperMultipleVf.getVfcListByVf("56179cd8-de4a-4c38-919b-bbc4452d2d72"), "binding"); + assertNotNull(nodeTemplatePairsByReqName); + assertEquals(1, nodeTemplatePairsByReqName.size()); + Pair pair = nodeTemplatePairsByReqName.get(0); + NodeTemplate cp = pair.getLeft(); + NodeTemplate vfc = pair.getRight(); + assertEquals("DNT_PORT", cp.getName()); + assertEquals("DNT_FW_RHRG", vfc.getName()); + } + + @Test + public void testGetMembersOfVfModule(){ + NodeTemplate vf = sunnyCsarHelperMultipleVf.getServiceVfList().get(0); + List vfModulesByVf = sunnyCsarHelperMultipleVf.getVfModulesByVf(vf.getMetadata().getValue("customizationUUID")); + assertEquals(2, vfModulesByVf.size()); + for (Group group : vfModulesByVf){ + List membersOfVfModule = sunnyCsarHelperMultipleVf.getMembersOfVfModule(vf, group); + assertNotNull(membersOfVfModule); + if (group.getName().equals("Fdnt..base_stsi_dnt_frwl..module-0")){ + assertEquals(1, membersOfVfModule.size()); + NodeTemplate nodeTemplate = membersOfVfModule.get(0); + assertEquals("DNT_FW_RSG_SI_1", nodeTemplate.getName()); + } else { + assertEquals("Fdnt..mod_vmsi_dnt_fw_parent..module-1", group.getName()); + assertEquals(1, membersOfVfModule.size()); + NodeTemplate nodeTemplate = membersOfVfModule.get(0); + assertEquals("DNT_FW_RHRG", nodeTemplate.getName()); + } + } + } + + @Test + public void testGetServiceInputs(){ + List serviceInputs = sunnyCsarHelperMultipleVf.getServiceInputs(); + assertNotNull(serviceInputs); + assertEquals(1, serviceInputs.size()); + } + + @Test + public void testGetMetadataProperty(){ + Metadata serviceMetadata = sunnyCsarHelperMultipleVf.getServiceMetadata(); + String metadataPropertyValue = sunnyCsarHelperMultipleVf.getMetadataPropertyValue(serviceMetadata, "invariantUUID"); + assertEquals("78c72999-1003-4a35-8534-bbd7d96fcae3", metadataPropertyValue); + } + + @Test + public void testGetGroupMetadata(){ + NodeTemplate vf = sunnyCsarHelperMultipleVf.getServiceVfList().get(0); + List vfModulesByVf = sunnyCsarHelperMultipleVf.getVfModulesByVf(vf.getMetadata().getValue("customizationUUID")); + boolean found = false; + for (Group group : vfModulesByVf){ + if (group.getName().equals("Fdnt..base_stsi_dnt_frwl..module-0")){ + found = true; + Metadata metadata = group.getMetadata(); + assertNotNull(metadata); + assertEquals("1", metadata.getValue("vfModuleModelVersion")); + } + } + assertTrue(found); + } + + + @Test + public void testGetServiceInputLeafValue(){ + String serviceInputLeafValue = sunnyCsarHelperMultipleVf.getServiceInputLeafValueOfDefault("service_naming#default"); + assertEquals("test service naming", serviceInputLeafValue); + } + + + /***************** RAINY TESTS ***************************/ + + + @Test + public void testGetServiceInputLeafValueNotExists(){ + String serviceInputLeafValue = sunnyCsarHelperMultipleVf.getServiceInputLeafValueOfDefault("service_naming#default#kuku"); + assertNull(serviceInputLeafValue); + } + + @Test + public void testGetServiceInputLeafValueNull(){ + String serviceInputLeafValue = sunnyCsarHelperMultipleVf.getServiceInputLeafValueOfDefault(null); + assertNull(serviceInputLeafValue); } + @Test + public void testNodeTemplateNestedPropertyNotExists() throws SdcToscaParserException { + List serviceVfList = sunnyCsarHelperMultipleVf.getServiceVfList(); + String nodeTemplatePropertyLeafValue = sunnyCsarHelperMultipleVf.getNodeTemplatePropertyLeafValue(serviceVfList.get(0), "nf_role#nf_naming#kuku"); + assertNull(nodeTemplatePropertyLeafValue); + } - @AfterClass - public static void close(){ - factory.close(); + @Test + public void testGetGroupEmptyMetadata(){ + NodeTemplate vf = sunnyCsarHelperMultipleVf.getServiceVfList().get(0); + List vfModulesByVf = sunnyCsarHelperMultipleVf.getVfModulesByVf(vf.getMetadata().getValue("customizationUUID")); + boolean found = false; + for (Group group : vfModulesByVf){ + if (group.getName().equals("Fdnt..mod_vmsi_dnt_fw_parent..module-1")){ + found = true; + Metadata metadata = group.getMetadata(); + assertNull(metadata); + } } + assertTrue(found); + } + + @Test + public void testNodeTemplateFlatPropertyByNotFoundProperty() throws SdcToscaParserException { + List serviceVfList = rainyCsarHelperMultiVfs.getServiceVfList(); + String nodeTemplatePropertyLeafValue = rainyCsarHelperMultiVfs.getNodeTemplatePropertyLeafValue(serviceVfList.get(0), "XXXX"); + assertNull(nodeTemplatePropertyLeafValue); + } + + @Test + public void testNodeTemplateFlatPropertyByNullProperty() throws SdcToscaParserException { + List serviceVfList = rainyCsarHelperMultiVfs.getServiceVfList(); + String nodeTemplatePropertyLeafValue = rainyCsarHelperMultiVfs.getNodeTemplatePropertyLeafValue(serviceVfList.get(0), null); + assertNull(nodeTemplatePropertyLeafValue); + } + + @Test + public void testNodeTemplateFlatPropertyByNullNodeTemplate() throws SdcToscaParserException { + String nodeTemplatePropertyLeafValue = rainyCsarHelperMultiVfs.getNodeTemplatePropertyLeafValue(null, "availability_zone_max_count"); + assertNull(nodeTemplatePropertyLeafValue); + } + + @Test + public void testNumberOfVLRainyFlow() throws SdcToscaParserException { + List serviceVlList = rainyCsarHelperMultiVfs.getServiceVlList(); + assertNotNull(serviceVlList); + assertEquals(0, serviceVlList.size()); + } + + @Test + public void testSingleVFWithNotMetadata() throws SdcToscaParserException { + //If there is no metadata on VF level - There is no VF's because the type is taken from metadata values. + List serviceVfList = rainyCsarHelperSingleVf.getServiceVfList(); + assertNotNull(serviceVfList); + assertEquals(0, serviceVfList.size()); + } + + @Test + public void testGetNullMetadataPropertyValue() { + String value = rainyCsarHelperMultiVfs.getMetadataPropertyValue(null, "XXX"); + assertNull(value); + } + + @Test + public void testGetMetadataByNullPropertyValue() { + Metadata metadata = rainyCsarHelperMultiVfs.getServiceMetadata(); + String value = rainyCsarHelperMultiVfs.getMetadataPropertyValue(metadata, null); + assertNull(value); + } + + @Test + public void testGetMetadataByEmptyPropertyValue() { + Metadata metadata = rainyCsarHelperMultiVfs.getServiceMetadata(); + String value = rainyCsarHelperMultiVfs.getMetadataPropertyValue(metadata, ""); + assertNull(value); + } + + @Test + public void testGetCpFromVfByNullId() { + List cpListByVf = rainyCsarHelperMultiVfs.getCpListByVf(null); + assertNotNull(cpListByVf); + assertEquals(0, cpListByVf.size()); + } + + @Test + public void testGetAllottedResourcesZero() { + List allottedResources = rainyCsarHelperMultiVfs.getAllottedResources(); + assertNotNull(allottedResources); + assertEquals(0, allottedResources.size()); + } + + @Test + public void testGetTypeOfNullNodeTemplate() { + String typeOfNodeTemplate = rainyCsarHelperMultiVfs.getTypeOfNodeTemplate(null); + assertNull(typeOfNodeTemplate); + } + + @Test + public void testGetCpFromVfXxx() { + List cpListByVf = rainyCsarHelperMultiVfs.getCpListByVf("XXXXX"); + assertNotNull(cpListByVf); + assertEquals(0, cpListByVf.size()); + } + + @Test + public void testServiceNodeTemplatesByNull() { + List nodeTemplates = rainyCsarHelperMultiVfs.getServiceNodeTemplatesByType(null); + assertNotNull(nodeTemplates); + assertEquals(0, nodeTemplates.size()); + } + + @Test + public void testServiceNodeTemplatesByNotFoundProperty() { + List nodeTemplates = rainyCsarHelperMultiVfs.getServiceNodeTemplatesByType("XXX"); + assertNotNull(nodeTemplates); + assertEquals(0, nodeTemplates.size()); + } + + @Test + public void testVfcListByNull() { + List vfcList = rainyCsarHelperMultiVfs.getVfcListByVf(null); + assertNotNull(vfcList); + assertEquals(0, vfcList.size()); + } + + @Test + public void testVfcListByNotFoundProperty() { + List vfcList = rainyCsarHelperMultiVfs.getVfcListByVf("XXX"); + assertNotNull(vfcList); + assertEquals(0, vfcList.size()); + } + + @Test + public void testServiceSubstitutionMappingsTypeName() { + String substitutionMappingsTypeName = rainyCsarHelperMultiVfs.getServiceSubstitutionMappingsTypeName(); + assertNull(substitutionMappingsTypeName); + } + + @Test + public void testServiceMetadata() { + Metadata metadata = rainyCsarHelperSingleVf.getServiceMetadata(); + assertNull(metadata); + } + + @Test + public void testGetVfModuleNonExisitingVf() { + List vfModulesByVf = rainyCsarHelperSingleVf.getVfModulesByVf("dummy"); + assertNotNull(vfModulesByVf); + assertEquals(0, vfModulesByVf.size()); + } + + @Test + public void testGetVfModuleNullVf() { + List vfModulesByVf = rainyCsarHelperSingleVf.getVfModulesByVf(null); + assertNotNull(vfModulesByVf); + assertEquals(0, vfModulesByVf.size()); + } + + @Test + public void testGroupPropertyLeafValueByNullGroup() { + String groupProperty = sunnyCsarHelperMultipleVf.getGroupPropertyLeafValue(null, "volume_group"); + assertNull(groupProperty); + } + + @Test + public void testGroupPropertyLeafValueByNullProperty() { + List vfModulesByVf = sunnyCsarHelperMultipleVf.getVfModulesByVf("56179cd8-de4a-4c38-919b-bbc4452d2d72"); + String groupProperty = sunnyCsarHelperMultipleVf.getGroupPropertyLeafValue(vfModulesByVf.get(0), null); + assertNull(groupProperty); + } + + @Test + public void testGroupPropertyLeafValueByDummyProperty() { + List vfModulesByVf = sunnyCsarHelperMultipleVf.getVfModulesByVf("56179cd8-de4a-4c38-919b-bbc4452d2d72"); + String groupProperty = sunnyCsarHelperMultipleVf.getGroupPropertyLeafValue(vfModulesByVf.get(0), "XXX"); + assertNull(groupProperty); + } + + @Test + public void testMembersOfVfModuleByNullVf() { + List vfModulesByVf = sunnyCsarHelperMultipleVf.getVfModulesByVf("56179cd8-de4a-4c38-919b-bbc4452d2d72"); + List nodeTemplates = sunnyCsarHelperMultipleVf.getMembersOfVfModule(null, vfModulesByVf.get(0)); + assertNotNull(nodeTemplates); + assertEquals(0, nodeTemplates.size()); + } + + @Test + public void testMembersOfVfModuleByNullGroup() { + List serviceVfList = rainyCsarHelperMultiVfs.getServiceVfList(); + List nodeTemplates = rainyCsarHelperMultiVfs.getMembersOfVfModule(serviceVfList.get(0), null); + assertNotNull(nodeTemplates); + assertEquals(0, nodeTemplates.size()); + } + + @Test + public void testGetNodeTemplatePairsByReqNameWithNullVF(){ + List> nodeTemplatePairsByReqName = sunnyCsarHelperMultipleVf.getNodeTemplatePairsByReqName( + null, sunnyCsarHelperMultipleVf.getVfcListByVf("56179cd8-de4a-4c38-919b-bbc4452d2d72"), "binding"); + assertNotNull(nodeTemplatePairsByReqName); + assertEquals(0, nodeTemplatePairsByReqName.size()); + } + + @Test + public void testGetNodeTemplatePairsByReqNameWithEmptyVF(){ + List> nodeTemplatePairsByReqName = sunnyCsarHelperMultipleVf.getNodeTemplatePairsByReqName( + new ArrayList<>(), sunnyCsarHelperMultipleVf.getVfcListByVf("56179cd8-de4a-4c38-919b-bbc4452d2d72"), "binding"); + assertNotNull(nodeTemplatePairsByReqName); + assertEquals(0, nodeTemplatePairsByReqName.size()); + } + + @Test + public void testGetNodeTemplatePairsByReqNameWithNullCap(){ + List> nodeTemplatePairsByReqName = sunnyCsarHelperMultipleVf.getNodeTemplatePairsByReqName( + sunnyCsarHelperMultipleVf.getCpListByVf("56179cd8-de4a-4c38-919b-bbc4452d2d72"), null, "binding"); + assertNotNull(nodeTemplatePairsByReqName); + assertEquals(0, nodeTemplatePairsByReqName.size()); + } + + @Test + public void testGetNodeTemplatePairsByReqNameWithEmptyCap(){ + List> nodeTemplatePairsByReqName = sunnyCsarHelperMultipleVf.getNodeTemplatePairsByReqName( + sunnyCsarHelperMultipleVf.getCpListByVf("56179cd8-de4a-4c38-919b-bbc4452d2d72"), new ArrayList<>(), "binding"); + assertNotNull(nodeTemplatePairsByReqName); + assertEquals(0, nodeTemplatePairsByReqName.size()); + } + + @Test + public void testGetNodeTemplatePairsByReqNameWithNullReq(){ + List> nodeTemplatePairsByReqName = sunnyCsarHelperMultipleVf.getNodeTemplatePairsByReqName( + sunnyCsarHelperMultipleVf.getCpListByVf("56179cd8-de4a-4c38-919b-bbc4452d2d72"), sunnyCsarHelperMultipleVf.getVfcListByVf("56179cd8-de4a-4c38-919b-bbc4452d2d72"), null); + assertNotNull(nodeTemplatePairsByReqName); + assertEquals(0, nodeTemplatePairsByReqName.size()); + } + + @Test + public void testGetNodeTemplatePairsByReqNameWithDummyReq(){ + List> nodeTemplatePairsByReqName = sunnyCsarHelperMultipleVf.getNodeTemplatePairsByReqName( + sunnyCsarHelperMultipleVf.getCpListByVf("56179cd8-de4a-4c38-919b-bbc4452d2d72"), sunnyCsarHelperMultipleVf.getVfcListByVf("56179cd8-de4a-4c38-919b-bbc4452d2d72"), "XXX"); + assertNotNull(nodeTemplatePairsByReqName); + assertEquals(0, nodeTemplatePairsByReqName.size()); + } + + @Test + public void testServiceInputs() { + List inputs = rainyCsarHelperSingleVf.getServiceInputs(); + assertNotNull(inputs); + assertEquals(0, inputs.size()); + } + + @Test + public void testServiceWithoutVF() { + List vfList = rainyCsarHelperNoVf.getServiceVfList(); + assertNotNull(vfList); + assertEquals(0, vfList.size()); + } + + @AfterClass + public static void close(){ + long startTime = System.currentTimeMillis(); + factory.close(); + long estimatedTime = System.currentTimeMillis() - startTime; + System.out.println("close Execution time: "+estimatedTime); } +} diff --git a/sdc-tosca-parser/src/test/resources/csars/csar_hello_world.zip b/sdc-tosca-parser/src/test/resources/csars/csar_hello_world.zip new file mode 100644 index 0000000000000000000000000000000000000000..43ffbbc83003a5b4fa1e04284d080610c9051877 GIT binary patch literal 936 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�dsX`@hIcLGoy-L&lId3x}KAy>fRa> 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 R3Fh!X13=EEPM|;#=znIek4gXl literal 0 HcmV?d00001 diff --git a/sdc-tosca-parser/src/test/resources/csars/service-ServiceFdnt-csar-flat-input-9-1.csar b/sdc-tosca-parser/src/test/resources/csars/service-ServiceFdnt-csar-flat-input-9-1.csar new file mode 100644 index 0000000000000000000000000000000000000000..4ae4c6f0903e1625b02bb15d718f424a77a36e7d GIT binary patch literal 40109 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�dsX`@hIcLGoy-L&lId3x}KAy>fRa> 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 N08p%{4QLPq`X9qdivs`v literal 0 HcmV?d00001 diff --git a/sdc-tosca-parser/src/test/resources/csars/service-ServiceFdnt-csar-group-meta-10.csar b/sdc-tosca-parser/src/test/resources/csars/service-ServiceFdnt-csar-group-meta-10.csar new file mode 100644 index 0000000000000000000000000000000000000000..dc21ce9ed8a7a62e041d6460738c0671b2439c90 GIT binary patch literal 40118 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�dsX`@hIcLGoy-L&lId3x}KAy>fRa> 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 `^3^)r1`ZHqg-I5qf7Khv+ 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 b35BGp3YdT+aZqB86x0t?ZR!FV1cCksBD|Lg literal 0 HcmV?d00001 diff --git a/sdc-tosca-parser/src/test/resources/csars/service-ServiceFdnt-csar-inputs-9.csar b/sdc-tosca-parser/src/test/resources/csars/service-ServiceFdnt-csar-inputs-9.csar new file mode 100644 index 0000000000000000000000000000000000000000..c1c28551a9eea5e79c83f378098d28871599f9d8 GIT binary patch literal 40130 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�dsX`@hIcLGoy-L&lId3x}KAy>fRa> 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 F{|D0}SQ`KU literal 0 HcmV?d00001 diff --git a/sdc-tosca-parser/src/test/resources/csars/service-ServiceFdnt-csar-service-vl-7.csar b/sdc-tosca-parser/src/test/resources/csars/service-ServiceFdnt-csar-service-vl-7.csar new file mode 100644 index 0000000000000000000000000000000000000000..db3af99b3fc0b850c40fa763ca34d4fba08ee6fb GIT binary patch literal 40014 zcmZ^~V~{4#wmsaoZQJJ4wr$(CIc?jTwr$()p0;gkx~JdyoqJFG?>#r(ipZ?Ws2v&g zVXswdBNb&p!O(#IxklprrT_Kt-xJK=yO6W1mAR3Ls|%yzf7?L;nJfB9e+5~D8G!%+ z^&8u zrTRlA!=alL$+l5EUdJ5U_g9s)X8Xs64XY*nB$dx6s;D{N(3}~Z1M3G1^_6G^P7giK zZz|EH9rRxw!LS)rlQT)d0ws{@1Si)u8m;<;6AqTx*X3G$>ui2#Ngs1 zkpe}|hEZ&RDHGC|$_F{U3LD}0+byHmrw051U;FQf{ofC#`)q5Qzo~LP_cxq(>{f05 z@V&o(Z5|=J_l@wmTI1Gwp6qVOmo9}~e*lkJKnx-niO|z@&-fKW?nN4g)2Fhlo3+iR zx7ekzGn*YCZ$ZZKd}N^Lm!x2(yB4wC!*w0QaMrmyY0MVVV0Pg^jsX;IMKTI(9>Pbb zMdRbv&C}oWD~ApcOaksZ1;$->!!y??^Rq2}tR%TC&K9n~kcELus!-J%p#&POGUKGR zV+(}`4K!MFb1!`p^YPC0` z5;!brXjwcjGg3?`iyh7B*IboMEayv{!zW~ffWoFZs{t9_cg>|tEVcG?PTb`08!C{1 zr34J%%;HiaCP@pn?K5*9u@3!-im_qgQ#4d7LAgH^MsjePM8bwKa4D^L(jG<)VO-7$ zsEBx6(_a21-^JUY0K3T+9qyTwSaT z{w@v7ojq(B80;KO-E7V1nf|B${^Pw`6G=-ZCjH-8ujC=A{Rza|1^6Rtx zpL{T^>|u0<7LBS(QVdRAI?4jCK2{S`YPb#lzfIIQzrsBX!i~OqsWxt=iu6oE3iWC* zXVs!Bz52~9yT%R%dTDpNXY$J=$31j4I?MxU(qI&4jTpvOeZJ-0^W5CI2F#TW+#+r78D3^tzm|M9)4jw<1czK2ue5jK z5KPG(ZpxuDGeqxBo9tDW%t`IjRdn-|tXJeF9T+Hoaq+G+mH3i98yl;Jw`{6=e79(e z=slw{uSMq)aD*9$7SbC;bkK=kQV;Rf9sN?t!0Zzk<@CkFY+YNaK243AMa^Hhe<#rG z8DOE7XorS_BLxO~M0iMrtR-g&qA+VAJS6};iMkc1o3LwBNLtCb^oZpN$vdE3cNc+_RDA2m4}PV@t@V|N)OG!~c+ z8P9c*Eg&*Ycqd~LGwgR%r_{f^sXZT5F5 zi$+Ys5jhzJbp#nH*96oVkzPvB530}D3SXo4y7KHDaJEDUM_IG_$O6N}%dJZn>6QYP zBv+IAZ=da)05YdvGhOyK%*xhciAO!gip+$g;)g7$eqatsNJ)~&%v=Bd4syE0+unPl}>f0tkve)wF3ui@jIgcmQgWA+k1dT?&lX^0RD;#Vy%ok~H+ zN*7)tGykfg=Kc)hl+Pz){*DMnpwmqBgFPoJWe#&8AdC6Hg5kh;{yxX3DAr1)`+_>S z6Fl;a5}@P^f!KSO4E~V)I@1?wa!)G?LYhv&2-PiOtV!QLyvpy*d5_n5Qb!Q_mc}vJ z2Chxf*D;Q{krmd4mJBpBP!kS$b?soqMvWJ1Ak+a!92>)+1Gyfkn zPc<$v!EHaH!}+kgf0|3D`2zpu^&d|tl;gG1ZV!l`yhb_$P1@l%&uFcpO0vs6%UPRr z?Um&6`R&JVqfWTvciwsYyGXM+pE8=90}J! zyX$O(3svZ;mJ^D=Whx=*(E&61{*Gd#9%zt}W-hqDXuk1^REw?}>5P@!>5B>Qw5!+a z!TQ7Y(#m)0y1N!1HtNLFjNdZ%K27U$4?J#zvJ@aSg~WGs($X` z+48K^J!6GGUhc(+GJm2sGgIYA=C1ndg-lPVRu4|ZfY8-lJwF<%YxD&sbD5X}pGEt& zv_Jn3r~7ad-;q;)qh!DBjhbc;g0~p?xwiWzc6BWu3R}8?G`e8A5Xep#qL@MDq8a&= zuPwj5_Vuz6+Wk(Ft>m7zHS_@tEpZhVXmKv@mN2A#9EW~yyVSHnv9TMtmu4)51}i6s zlClv=eBZMZ&ji9wFM68aNI#Q^g`vb3Z&<|~Wnq}s9Y0uq7I(6y*1^5PyDepEUYy}s z+F<31lTc2WLU=mIl+;uf^|G!ZZvWjwg!5a@tWajuSusIoM94g~zbYvxa*`5#D#Nt> zzjt6&gdL_J7)a0RH&0UW5XIWKgq@8&qG|B8_y^B;yGfq^Y=ekZ5pyzrR*mIWWN*=! zSB{4QmR+JMI}v(6tJ=%5#knk3<|TE;Gfqb=X&UvC-BE19o34$M80&w<3CX3x>B{v4 zn(iXLk*<{TE9IpI?MRbZC#Eo_d9KKW+K&!-Yu;Uun##?JtTZPH zVzWf6OEeg0rwDu^^G5H2Xlr=ieU-}obex~(RiZ|sIb1I_0yESmQ3I3 zGZGVN*my%P>@&CG3LVDbmuWI9P)7Ks)p*9vg%Nk5c81|)6GNj`o-WCc(Uu~8B@9EC zV#Z%tPPl9?XLFX*u^={3q>#+_fk8tV5*{D%XFd?ln|f*jK>r)f_8vKCNPm?h7Az1D z&Hq8OikY*!m5CYAzZ9g)e=YtkAbZpYlCu8_$X8kxA54ftpc_T`Tmm1f06|UTbZTG- z$&F7xx#Td2BnH#uM?;hRkQ8fh9NcO6M=7C+&?T!lfM3r-g?(X`*R+x2#lg1q({B6|R?Ve!3gn%}~*M@6&3M4ZY6DNn@8L6B73Qz=q@@*#a< zkQ*Z^GFy%h*N$^5>2n5sIy=<&eLiG)hjG@rp{Q-86PLAf3YT#2Hogp=CVd-9WtV{> z{=wAmlt}JSd~CFL+zqLe1GJ_g@W4gJ628ITS1yBCZq6W0L`@xntSR0eAlG5v&}>bfbGZ zmsj;`&L~cmsii=!h90R&LBL&jx=@+QW&mwmRCspCgYL?PcBM4P@$;D08_?mS2x`)l zz^r0)6_kQS2w$rN-v_pu``nS35nq{MW|Qw><5>=!gC}r=fS*kc*aH&0?~C&l zL@SFbFwIZMXi}Jqma%);DJ19+LZRO8^YjF*ypwK}W%{}vi%T%9bCsm<<@#k*O&iqb zjVa~WN_?8t+;KU_!;zq;+;iq(0V7KNgK-WM4*&KmAfV0vh+N?Q`jx1exs|<@tCfTO z|BPMUBK@V+`WZQ^!GM4){+eO`ho#ZK;~fSsJKGv{x%huH->XK#C`m)eb#th}94@6*>lBEXVoj^u$>q#+cEfG#%>r(2<9&{j9g91fbE#H| zvaef`%*Xhwjm??ULjr@S(N^SWGUeU;T9))mLPL=CoMR!Mo!h|hu5vAil}H7Bl`w5G z3%=`kq03W#|H$d=k8Ln;JMb?Uh0Sd5;z3EEF$Dr)H}+ftgm6)@=18|Ls|D+i^X&H~ z%;@82NI^V1{*2%r$}t0*>x9cvVl_2I4cvaZ<)CWP78f|JdXTq0*LiafsU7q-)3`rMG=P4(0@Rx@%68~xFSGkJq(6XT9(BlB@BvvyHOQp|Q zNw*rmiYW2Zha57sqM#OuNO_<R$9FO12NmA-c0dZCTYv;-pwMl=AeJDZ z9a*d!|2ge)UKNhIg&=w0(8mUJ=P=$dkLyg{(yhmrK%5?h9hLmedbz*5xHeYsjeaI6rziYS3{wI7RX!WmAW9nL;Y6`>wWuSXG49# znh_1_SGu&r9)u}#bQiH`g4*1e^PaTFOYo=Rld9!%=s%3FfWMUN$Ak_hPYgXQu1^OQ z_8h$O0BZaKWuIl{0lOfPB1(O!Fqv_RerQw1bcrRmrk3O4FBE0lD3K{&hEHv?I|UUP8E6)=0UQ!9<}qZ0_9_gD3bNWY53a>c|=E-Q%od=Ej>LCgydoQ6ojVez^1 z51L(KT^B!#6!kUTh8KmbC-ZACpu(XF$J$*h zznn6?>!CW^%$`5?Id{a8b$w#Q@=n~>BLmA1;0WCwxmMS4gvi9k?ju2ee+yo@JPZTh zNl?hRpU%HC*n`-2;U%wHX;X1$w1te;zsS?JFNk-XtQN6<@sSa5L|p#hw$d_to`wCKmk+V>a4&4j;jkL;SbZvCnB@tatu>EF8w;5pQSyGIVsF>; znjqKk(Uer`ZmSUI*OICBOthpL#$%n35eu3oK(TS)$jHT;1DEEC6hQ7sc~@oh@T*8_N$WQfJAX z#AtZT+pL|vtkCiUfAioq*^`vLt$6!D*7y=o`3m}PGK2yGi}IJYB{3$3`1^ysWdH)g z`wxmUF>*9AwzB<8jb<+Yu-uBaoy#E`(w`lJLTJK`=_6k}rhc@rOkEwKp#}FWj4%c4 z6?K##J8UU?oG`+L-!&(+uFa zn1IoM{i%pAlIBDji+r*CMpP24P=%0v&b@kd@~OA1c8;E|Jfl8vL$*tL*&tTwNPfw3!n6O3r&3_fE~xpWhOE^nruJU88klEEN$R`t za7@-F`Y#Y&6szjA*OHp%m0(J_XhETv9QaWcj!cBL&3jiC{GhSAx-?WI1>5`w> ze4gQ4W`B~26^&a@w0L}2e?Og_CCh5&IZi1w1iJjlu^>t4i!*BQ$qY_sTHuk1EIsl3 zr1*Gxi)bLdQ{Bi~`l%7ag-k3Se=%{HsfP)&n`wdDvbIBIb`LEO$<&bc!)?o9g8e>T zG*qx#mY#Q^0Kajw>U=#TcjaoGeyvH|dU`+Yp3N-EwlROlFgOjd{)f7jYct_yiFD`? zMnp2UQoeg+g9J# z;?gl<-mYF&K}%ISV&TQ%e%9fUMQ^2|ELN`iVpn!;i8>XI(+cDjF6h|$A)#L2 z8*~x2A#Lx{Cpc6u@5!CeIwa81;ezo)w{U<8p=hu`B1?M-kn&teIoWE%z=yV|y^Wf+ zjt26S!WeG5(9No?MO-qcJa_Mv zz~@_fS>fIvNa1aRA{mo6ReY_#9LgDT56Ph7F|CP?kc(vJmf4k2{eZ7wNU7#ZvQB0E z_38eW@)UXr4nF1_M1-nESSVEb^l^yp9zfJRo-7I*&jM0V$-zbT4@#lm*kpRa$ZAr>X2*xeKmO=LQXw%N29vAu!c-aaw@- z3Gotie75Fxo}jQXe28HL0c?s4B{#fNOWUwjgo)nZid;9{4W~VS0CI>{mmHe#Hg6zU z#Uw?qd+y9mSfH`E{2n9u^5cZbSgm>yfsn5>846mmh1bU0orDxQR@=lgu$3_UnOf!1 zG?u_q)~iOSeD2qkHILEl8_vLYw1&Zo?=+J!W;`AYn0$I|+?E5Yu?xV#v4xpG71|#f zS7L0_-+_Hv8D2e$zeLNYHE_iY=&E|D5NR>oc@E&_D#Y9pcs-->&QoHvik~>3y1;&t z7yTa8V=1b8Q48cOqO_?gLg@+%iZS93l}xSS)*=RX<46MiGM(~c>PL1)(kYkuG`*M3 z#o??n#^&G_Z7NKjLlv7LKaotulGea=W4!sT{SI@{_UcVT1!rK6!!ofDcr2s1!uue@ z;OGtO!wWxB(NV~VyY|YyZQMl3x8Aoi{cnL7y5>_gi+*s&jRqvO!wUUOrSU6* zaJR3dN(vd`sXQ3BJ_-DHsuZlB41PqleQdtj#8c10YpaUHmCLJyWPZ&F_aFz}AFD

mWPA|&fLlq zCdq(}kS&V_!<{o#iN~Qw3u^KO9eh#FPB8QnL$}JE(CY4tK}9;Pcwk?iIP%6)x2)9K z^_BWXRBnO`c_(JC%Nb-kJn@5EQ8xj2n`&lDwmE(VA|J-;xDCM{{wH@R+>7WeX6@5O zu<@kldA<69)$xX|rxm?Hi3_{OVhsj1-o$(Zorv4KrGPxSZM%-gEiaw7I0xYzqMbw;dr_V2Acss6TKDfol2HDZJS)bDI-^dMqE>;2c<@nltcB-TY@^olH8O?W+4IUD}* z_6yhu%bH^dKL? zPwE^LN0zSY4JY@9zq! zT~ID_KH&DSjvzp)*E^T7?t#XriEDZyZB^&eS_NY7tC{`OD{AVEUT4V`r761^t-HpM-lf~sn$>iL z!5SyZH?7XfGse)Y?+!(YsQv*{kTuN#ajUqy689xf-VP}#BH{;`ky!D#)q-*j%uU5g6^@yZU%Xqj$AmM zSEr2<xHG4gsHkcdMYTea1PA z&ts#l{d~!z_N|lR7pvl{t=c}Fs`#hQ7NKgCO~EM>e@53{ogc{>8>Xwo3WuMHo9Jng zp<(lVvkshH9maOwylhpL=vBHmRz z1e=bzB~Qtwayzwz!X`Z`lQ*8+V|DvV_nJvnnfdpXxd7+zyH*c~Zs~lTgh^%=zAF*# zo+*Z47hQ$vVj_p`_IKQ3j9gNs$F10IcHb+L@@6GuGeDfhkomWGJBQ!yV+hLapO-Fm zE0`<7AJDMz&xei1^Us+H6@yLl-yUjX?28Oy0#4X#5!kL*K%LlkE7mm;xyzVeGtTA0 zfYAK_V=Uzb*e$Q_Zv4(={R5xyjoZ75>rMXi0AjJ5+BK(oc1FgYCGVH2v+kX;h{P)2 z0?Yj@fTsX$QxeK1Bp^R}xk&C2lo7L5>gGd?8hPtEN%tU}qsY<2|7E6jQrXJ0<)pZ}qsa~k}mr4GqpSCN2#V7-BW z(Ecju|CvlMHF7ojM>ngfLIZ)eX>M!&Gu%93fq=oz{${EFHErYTxoo!IZ})*50){gq zkB>H{LVg!-Nd2@rC{Ihy&Xx}cO-u+4Gmr>wbhG>R@c;%XrV1*SoOEYEl#&FA9`QHw zXb9BL=_bl=pBhZ@B7@~iLuxQK#Z$rjGtt*gv8$Q%Kt(1HyOY3b>zEb5+35*+EzlTvHMPK>gizV=;CYU>WkZu?zb?qmIB}Ko=?2K2)(4F-pzt8<^X(z+i*axm=WqmkK)Aj4<$lH?Z-RfV0 zWa)iR{q%Eo`O0D{K!+P5H~_ncB;#I8^pb4GHqn8iBl)3-!ar?L#1Q$BLZUpqKHu-L z!{Z&xC5OA>SoeXn^z0l;W{#ozOPHFIaDfMz55HJ`U71S#y7FPfBb@t6ZL zGHqdqFY|_DnISp=9r$CwH!H`2=}>7hz`~o#_K17!!kJNer56^B8>2J376=Rx0jK+e z-}HcAx;Nf_xi8rfxdoyvy_1_L_*(I#V$tp;0TsijJYK7^St=+aBu`9co-6-|D<~^y z976d;+_|0$7+MNUgKkW~OGRQ*;g3C{@|#w6^duGOp!n2+jWdpgi{hKgC*gDsOxSmc ze*ch)CFxcoaQvD9it4eWmA>_+lN83Xf)=>I&59vp3>Yy{vW=*cO$EguiYiH=Fm}lU zB++OVXgbfn7#||NxX?JC<-1`G($9%zOL;1+a5Jd20$oYpVx>DyOFlL!S}bCs$EY79 z>s-_sM}Zh2ZKD41K)XR8vcdyN?9YfvTY5&);BuiVma0J*y&-i%-H@z_rdgGAPn~Xc zO4C*;5!jkn{@N9V%T>p@N>jhlVOxwR-GD!`e~=o$D=JqYOK`#rxc@q*=|)b(eP<`J zz%blaHv+XGm&PGkAiA!HS(wHY#AzeqD1eyhcS0g}5}+hv+H%>ut*(Z6BY!-oIb~t; zJ&_rjWSc~3n|%^}_%?Jil^5yZo{0fGi7+m zg6{AR*&UM(DUj_q>IBUT!&T8#&G%HOoH#bYzYs|f314pAlOB=&D4zfxG_k7<1DtL*~^88+*t zhCL0;YRcfnUAXBDSOiWWK6SXCX!M_7WX{W07lnQ^JSVh6=vy~)o>r!rJdZQiLwZl5 zGhOdDW}pwW)8)Epi0*1piEMB%B-zprv^_@}BjFMSX%N(YNhal}K9m_|Jps3I1u~)y zBtB(b%&VbxVQk*os+1vwt!Xo|EzHR&gAz-U2{xgem#agu3rIpaAvBdW~NLWhoyBpC6sU+`+rPD~0C8?>2OI4?pdDKTurM(vQf(GdH(ZZmI zqbV!I60>5RCPr5kutBI3OYV507p|D=f&>8eSREOIilCg%#M(>PqSf^oX@1$ShK3Bx0g&M}ODS#Zw+}k7;PMP*KF1lgWa=Yh0drRaOUDj^<_o@`~ zYRefRR1!|;!gD{zE!eK64?>Dz?{$qC6l!zp_pXG>%f=_F6GM73l1JD_g*b+bnbzd{ zC0`W1D!)8iC{>Z6FwdcJJNv{cP$l?(X^r=kV}!vXe@d{CRz|Zu3M+cJ$p(M;yCO;_ zG|eZLjt0|ZaO7og`9Vkz3EMgefu$r<>D1abb{vbZ-`5&QBD74v9|4VxfjaBgirjF# z!>)NpN24r(d z{)EYq7xV|0QEmx1{Ky=0B$POcLy)Ngqw0dzd$)fa{`1&3YZDG9PxadOWeP?);meUl z&QMFdB+S}bjaL$*c%+s4Q`;cK?k*FjGH(9C}AY$LysO za_FNAfE>O9;;-`}VY!GG6jBG6{$$IZig^tV=H!c@e3gq8=r^`lV1)B&b;tHcz zUQFYT0A#Z-8uE)IL$tj(63$(0s!8Bvoh5Uq4_>scZJ}>8Z@Z!iZL(1Psu&+3*Q?1~h)HIhgr3s8DRAsT1Sfs<+AX7ar~h2Zo$L?@OMoc4CT{k1 zZL4V6dNCkNpmI*M6hd0R;YJ?v1phjpPe8~%$S?+!lXXz!M;!!EN+ z)cE>3->UIu;A14G>014g5+pyy&xxB+N}_M2+yeCjzfs|RaFe4tNj$Plv+!}GmhoY* zM1ja$4JC$#B^k&e7rk@(+DWpOGL@M&DmTPB_#QuYZlh)7J+exySB{-c%NM(kgwE~Q#U)oxQsfu+8&LdLLjdE03Ti=;)@zUdZ6ahE6i zD}ccNL`U%v^OmiNIhN+NJ2#MD^W-;*7ec;Q0{Ahums{wfgkAEZgB$~N<9c%<_$uv9t!=CP4eD6qVh3kO z!TajYoS~}mrekVc%5JJ0XdNk>J&J1s+;6zSM^;Ek(J3D4rsLf}s7Z#OQnDdh9Eh1` zH!f!nW}#yC>%uF6wB_(h?BNUuM9DmjYy3Mn(*%KV^Yhzj&+Q!j0`=bLSSoSq@ zgeJHwDt0t$2ub!AS~V+2?*+*q{F5yJsb6aHFW!J{z1*ALer7DDW|NLoG2WD1!uGk3 zmAU{hCa?jdP!l7RyfRyr)%R!jBv>kLnT$H=1SYcFvc!Do7n=A1T^!?#nklQV@evyG z7)Hn9KhpY@io$_%;Pl7M^LtRPP>=PdF1$CezjWqo3e4-bMHyM;P=1am$y|(ka(=n? zIwo1C;7g6^K?+M4ZL49M3@{o36&1=jt8o@}o}QuLlPZiV&?=p(}p;xyY^zf}fQAl56fV#u=B#nj^g>W+(Bm)sm7 zO;}`0!p!1BrFB-e)wlMg4HL^Csqd1{k62ZjzGAR>98~w^RS3?R#;zk91-nK9zgPrM z5_FZYEPpCY1nOA2q>@_U#q#M?#$z_#CRM&R*3TVZCHm2l=hL$Z6qw>lq zi<;xhA8NN$j1N9GN+>L%?j!h>X|736-G6w+*fz1k=`e+m7Koqa*b@@h+3}M}TAa&m z)-@a7DzwZoX#Hh6SlRoW{irdp)ao0nSWq!qC$^xr4hE1PxX~de!=H|Z#l0?&=YZq*G7YU#*MNfu@=`VBKWC zLbU?=axx^eZQf-44`ZKU4P(fb1a-UI^o`G+7jt(woA5Fd2;5%9A0OKt-5R!u@2d{} z&jrdCDi>*G`SYWhyKxhlt{Ny%3BRavs9^$*Z7`;)@Q z7%#UCP8XV2rI+v}TFM&RZu@CR?uLFDdK%F%#;Lb)X-_de=YASes!%j_|Keo*VX?zn z*FXH@1S_XrYD?gIg=qjiwC%a2MDm`T>WFW9?e@$U;8ZF85*r=%j-5lWbh!sjxbOS> zW#8Se@hfmwSE`LO5Mlud9d&a~UTy|>qC~TTEnImuDM)z}ppMVKvA>p85aQ$327TD^ zYBZ4%U0~89T$7r^FJvd{A<^?*R84r0g(GvU^K%0*fG;nwQ)BG5Vk6h98l7yxV-%8& zvF7XP{EhXR>Xy7uc+p!&ko0u+>eBR|E-+K?H(M~&06|&s9cN2xyR;ASfX$0| zMb<2s8P2CTIvetvojurDBm`9X#5DaC2B^VN6X7(&pkjb%0Y>0=FF*s3 z0hA^=5%OM+a8l|?)=rj}CGZEU`jZ=T2&{Y6B6{mN>{{`YedfYH>Ad5>;HT5={kwy= zWY?b+o2$Yo&j=;}F}+=Y_1QbRZ=20~lX<-O^eICo_rU%VN%K!R*mD0R-S9S zFrkzMdRc97p%T)>8;Zzwa&x&Y7%aXjA7OeY;aZ09f@c?k4T#`q5*PB#PvJ@}bJ=iq zC^7HC;5%p3U#}q_>N$X=8zAfeVBtr?JXFQP{o!!5h{_`7lhRU!tf8q-u#M|)3gaX3 zqdzjegjR#EXuWCOuLa)_K;z~He^>5a)~HvBiZ(|!Jmyu>>)l@7J$SSA@>34qPkYqN zbJxGoO3LV3*dVEiofwNVrD_H>5S?IH&EZ0HH!jNX34mI_^r2u($S~x#Ib--{*GSwI z`^rIr>1RxBaZzH}&K#YQx2f z@$XOHKf8caR0fmrs;1kwNJx5&;HI>Td4m!(vKFizl*M2n)%PYC#xt@{vt(Zgg0Z8< z*H}XC&grJol4bJMH6QBYd3XR^jP!c=_CQbl_Gd(i`(!yUPvvf;7W(FM06`eGy{WKWTI> zmpKpPd}6^&U7f!(+YxgSv5EMKgbLAtZoT)%#PypqQ2ra2>^P-uM`FhvQ3}XVrh}}- z;C@`sPf&FR>ciC(DLDET37rVKgXs9j6aym{ZwG>~U59#yYg9XD*%Ue^9SfLbCzrT5 zB^k<6;aC74{kGNp%#o1M(J+`gIlr>|MO%pFE9?>5YLa3j?n5V&&;pe62CdoZ__xZfaqh$D z^mU1yd5mzOm0Pktp)R3rdAk9VgU5#PYa!C4QCD}S-((W}^+TiNrDFvOtExi%o7~hj ztD-6wJs_5V|BVRkbC`WX9}NLUxj-zJorJ50yUt~-SdkoPH~3NZZxV!dS$mDlho`fm z<|U%3=M}CPswk2_o4GWE)pz^Yjr*;BnaszOD^Od}k4T`2rpDG9J-~B}I+%R`3mTeZ+0Ch}#EBId z`mZ+L>X3MhT0)w_cV`we@Uh?RYy&zZ9iR zrku$PaYT}u%72pyF72b&hr&A8>N$nOu)ajcy4iJE;W#h1$9`W&;Lvm8=tHKEQ;eDY z?i+bOTN!&*d&u;Ug`Sxs#oXI!NFh6WN+q}*mUXzX5P~xe(w##TI;fSToECbqYt%f_t*FZr;>f|Pp%F*5XpN}B zgqnXX=tvOc4L|RRHAgOo9BO482b()Dy?05re>?#J=KWzVk_WSZYtU@ahyc4*h1*ha zB~4;gtRY4vu!)cz{Ui=9;+CfI;wCg#vdd4pC>ilMdOK@=*GrK2tsni8*f{nl%%b=3 zzFA{R0OWXsg^$aJF&zIHjjDHJe7@0o-GL$Jdv0xssUNz2LGK5gzR?)@l!0W})lUtL zgSW&JugI*s%~x zG1yKG(#H8a?1aBM1Pgw~m~q11^mn;7?qQ`l>J-um-(u#y*TfiUB`Ab3w5U2+biJTb z8yI9R7hVMK*PvhXYBC;%bBjX4YDRPBSf?V56hwi<>_%2OQ+mtztOMChGPRGE$b}gR zahKX@8)7v*>91Fd;1@LwhtJjidJ>kBkl;FlbicAm%@mp`j*0~2w5ncF$4(3O?dmy+ zNafAD%@tJ9?taxzov*3pJ!t(Afu;C>&9Gu604_ z^~_H+Q{q08+;Uz%VHE>b)sT_$~i7q2AE z<8pM_3tpmN0;KywnLNqQ<>h&&#Z8{DkIO`{kp*71+`mEE1qS)nxG(o^ufdDhe&1)W zO)+-iLVW*^o?p#6e`z>Bx<4Cy2ZC+j; zL{0(z@WhoKl}_pHti)JZdRtjI5cBgp+7A*rEs{TZkkHj`-KM_4K<~bAhGCzPBhZIU zqWun9F+c+3LKvb=plPE^SCNz;;+bGpX<&x{S|gbd$mmvFpkB{mf1I7hg=>W?OHbZT zzCdRF_#6M857#k%Lmadiv|;vPS%WZqmy!_ouHz5$&8ZbJ}9@TG`T zvEVz<1mFWDStP4A;S`{ZQIrB#;!i`IxB6Pkw8u=trZ*)rWV&#AQ5Hnytr@ib?0zaE zCPbFJ1c*po#sKqDf z4Q7(?@To9+0Okm4B0}0DQUIGskH5g%`*W2BlWLCXdAP<^!ame8!k@Whx(sIlnP*J? ztKVEuz$8Y!utl-bM&_!7Fn=AH!RaATp2o}->vjT!FpFSssi1WSl#qGSW4wwfq& zkW7FWP`-n*lvX6(DSI&V#Y52WRZprSG%8t9Y#FhzF%ufkG*BzWF>W?Qr(`3OeKxWB zM;F`Q;&A36pj~Y(>B}m)u(r7bDNHgZKL%9aWC-P@gZA1$h0*5F2Fg&JU<&n_7V>Gw z@jw#61Llm%p{F5CVI-AL0muM2|B#=kqE_P7ApUzW4j_^-|0v7=YGNcJT^wI>mo>Y7 zbo-Hhpul{7CP3CgH5j>)8EcNS#?u8*s})t?2bAJfX%K_Rm`bFMHrN*fv5eRQ6lIiI zW#NV!4%D~UEcF6N*LDo-hF;D}JnGuL7@nMC9i=hysElR#8@6z~A(Ua1IS+gc-VkIj z7%9=j;HwiE7P11#v}r{twxBWp%} ze%Ra=7UqLTtTtHysPbjKZ2kaZ%vo0WQ;6KSx3ZftziL>rZNadLqeVrkACGCDh-ep( zIrjUMG1-#OIzPdmffm1VX2Qp&nO4^(7Fu3npv9{3r$|2m$jSa|T0AMYR~ z5&0Wt#(B0IbSrW7~g*XI+|DHMH{+@+3XEzHg z@MMCx72nV!I;y1eIY`bc17nv|Jt!9J1R!+*_6#c@a4-@HiSP9m^fk>-PyylcXUj`& zo+IP*(ZN?vZc9q&YG6Tsm`NRy!>uw)eQsxBVdT1!)T7FE(`0^D2tl;w6cMr-pEoWL zdByr=cnH+}ce;x^2xR0_UbHZ3M=GUQ)v_u2e7C1(N{lOh9@tt)+n&`28YROqNKh;$ z3d}{nE2N9N6*^a{q=f@Gm77Y}k@bc}Y&WhluJ9 z<2#)}{#ahawhfG;AEX+7C?-CJ33%L=(nJVysrQW zq!3{aS52WyKqVsbC7JIF+3k6k;*G*^ZwP=mfL0*N`^A}x-fbozCHy&IM#=z`FStRF zFFRki;H+M7oI@$I9THocc>(5f2%R{K7t9y)C}or+DY7Mw!;>*C0A3m$PgQFFg3*$f zBE}!quo{%f<13dynizEVdlAAGtN2KYX|n7>xxbQ5Sq{h37Pbma%MnSgWIs0T6l=xY zQlJim;}rH0eqOclNtucAv^%h7T2>L6vXoDe2%h1%k2GTzW%QCRZX+OswhN+ty0JIu z&S4cC8yE7(@{FlVe+KzUu&?q0xeWh9pMHEi%3N7&`GU!MpGi3!*j`Pgtesf@tfZA* zd(gdU3)>v~mGA_dCkt#2Ip#|YyVPc!fV)-l)_BQ^9=DgIk!H+PXQ3p_YH@CS+egt1 zy9({i(CBmY1{HQ%nVqIPc%ym=R<}?QS7V-#lYQf;FsRSP2lp;rAdUY^>e6q3%t{OO z&-ADyY3{G(2{d5wR8s;)4O*U-D`0a-XI_PpWpSz_+)P6c5Ac*LPLot2`W8GRTtIRo++)O8c^u1L;6f$y*W@)CnIe@SkeyV4Di)k(4LNbtb%7t5a@c zi0(a_$5|SmHj!z|0Ere1G=uxAaIYv}2<5hDCWV1(*XgC5wi)@hjKVcyuLTVGhRt=M z)Ht0gysy{OA(=D3e*T@DM!I+s!VEIzbQ(MT0TM&IMG03>ig+hH!KQY1C1W z3ek|T66YZt^{F>9Y|mtaj!`7_cgpq8MJG$QzicPMP~0dHrmf-CcG zVd4dQAEQeoErf^W68ogsxKKEDMG|VOBsI6g!|+_Z@6T_Y)yU|9@k0901X}Y{vEbts z+e=%fxS>K%X7Jaacv;Csx*iWww^EGqCTpFQBDE3O>DU~EKM}%&;yBvsO`nBml#mvK z#Hu96x{iql6x5G+^~>jD;aoQL(;*m(QRd~i#FOnzPBB5j4GBcEp9tX^PN%Sg%&M1j zjjfM_;%^LDscfEMB-|Y8d5El-hmEKRgd8hOa6U_MV84l@2DG&h+>c|nMi!`QE&de~A}=?z2=GcT9E z^y}J=Et`Y=e|)`TmncD$u35Hi+qP}nwr$(CZQHhuQ&p#I+xPU$UEMuB>)sFX12R{v z$k=Z_``Oa5T({uL3>mbjl$W z0OJ1K0$Sl!;?s+arV3k041#PYGv|=$kDwR4nA?0>`)c)WM;jwn7foOV9s$Rh-asu)?hkZJaa zC*`hNJl(>p$1>WjY;jPwyfQGOG++LUSuygU8yK;;nT`U!-pBb>&j*tAofVMQ2%Bzz z8A_NGm_c8$!vbIawu(_hn#;pCW>TBb(J@y){nXStDSAkZ6x^~A2Z^bNo!iNg36cKz z!a7N4W6;DK?Yp2zYz&-49vXSIpWcq7-FBHVmkm`a0Sux*nM`lVnj%-prW^ki=D)8r zY821l_>soc7R?CBgagk!FB)adtH1U}QCNTsaL(Z_P6F}1@24a*!Sc=h_`)92(=hHm2H6MQC6ZmEN z-(CR&huJv2oYLdU{o=3R*mGrSekzpYe1B!X1a>NVzMc^g70^rFnow*JR{^g-S7)lD6jhOcJ)m>WnTa;_d2z)ci@ zN^8?|hFrX$85m5R3tl~QmIG}$c(sM8Hd*#@g8oZDtGv|OY;o_&Ua6z8nITQ;rXhk1 z?X`s}jucMQ+t<(L0P{p zN~=yHSPd$QLTts(M~PomN?T%m@vH^}k-@lYUL>7)VVTr6N^7M@`iF(sy6id+F$}TF6mc)D8q%GPzPYf`a(gE>^QjF2T!;5fx2w!e>UsEgcK zm)^fPAas(j-Rw_oH%z2IvOXpjcQc>?+y)T^5O6Lew+9UMP1xt7>Udw0_c2Fke82)n zrBO37CU00OOhT<2MzTFyr~ZLJM%-UY6PVTUZJZxulgkoC_BTw@y}Kt>F?+0#%txDS zN=1}>#px-iX=w_afyz~919)Qb#>SX*lt+|=eENj>NJ-!y%A{>6ql15Tmg*Z7O>~x5 z^D8+KoEX>Q+OKWMmfEj7W&T2tP`SJhD_aD1(taA^5KH z=b6e}g*k6OR~)AHH}p&G75iYwg?+dU+soOXi}#co`^&D}60RtwHgp z>f*!B8Gns2;%h;mSwmI=m%!_+*fTnc<5=5n*S9S5Ud>D6t-ecdNk&$IO@>M?@rail zp{Iz$0*#6Yb+<=f=qg>?@9_^@#eP_C_?lW4X;}@Q?@%MTX~Zn@l|IWZI~8_Ly4Akv zsbh*Z z;J!mA7%p@x{Ae1O8X8;;Uq%!I)bq&;z?0WiKn!`%HNPLsFd<1{&Ey_o<7D?#(e}N| zIj3Xp`~9i&qdjvvFt%?!c0^tTdmO?R{7$9QMPUQ#?tf0`rS@UEH9}p`D$`U2+_|2 zsXv_DdK|wXQV<<@M}bp9$z+(tzXy<_ykf#$7+lo`fb@0vN4L56%^>>yHR?w_=5@!A zz!`CDE00qeH{4JLe1{k^)Q1lw3c{yb;cZ3F)jQ%n2DMAI%tvf`eR+b<*TRJU3TH76`U?%ul$hvQE36)NJS3mi<@dRCv`@co|J9-&%Mylgy#( z5tYTs2I*UzGwtc~s*rp#U1$$FknYzy*VR6&J{QI@=pCr04#?zsB6 z2*bLG8D|!nsC5CaTJ`JrPE%g4GO|%)bdlQbHbHt_J zXBzL0cOHFtY=-D*Cl?q^7K_VNv{@}a0VfWIK^Iik8(5%X&HdSS1ssy%I-x3xRtt*I z6QZP}A6hgc-l+z%c(zK#F4EQO&wo5!y;P#_dFrjJMZfR+UK&65M5rY$)lKKqaRuO3 z8+6hWyKxYGNKZrkh=%GQ02cdLt*CRaxKs1uMms00iU|MS%OAY-81DXc9DhQ&itUrR zPurpq}4ySJ0S!k}*u0Ov(Q-y&^13J&~m?fU(Q|NXW9egFN@ zh4qXOUQ+)}9vn~$Eo|vHvEPyVdUo+J$4j?1Z;ti6cfRp^z3X_00&-oc z=I*0Xd=g~qosJiZg8}Yzg^I83g8K@fF8UABk0|%{C)5=DZXY1+_ zNg9hrjV2tBm0eLCsc(&*bc)U9veS4n zS2~-~-M_2wP@tKR24qxKa`&!It5*@g@!`b^LyALSdW82JmAYn8Fb&^{$+g4OLh(y5 zEL?43d5tLix{w-x-hhBw(%#SrMbr{R)3rsRyC&zJq2e09iHMID+zer zsVcz*g3Yy3Sf?6&4M}npG}=X*DtUt*G$9MD1pka8LV5|61E#EuCh1%h)n`?MK6qRW z*;s4s!+UULisB0b`>91VP0Iqp?3`xX^b92HiR%@tw6ct00$GE;l%6x9;n+TnDqdfz z&kN(e=7}|}6}K9w8x;k^DY@|#&Cj(CPmK;D1tnS6p#~}pm%>^Y>qm_TO6{ExW%)u~ zlEJ&ePrS{DU1+IH9evJtre$}sYh&8A&5@k@OsN@P-~}smi~^BNFD6xlo9VNYn^)A> zYgamI%FP@dOZ*&2!&8MXNzg^3mRsXzi)*9_A`kpTIh%`+`Z#dtt<^Qsi|{q(Lb)ry zL-Cn9IMU7T40mM{H~aeF>DKl%k;>|~^r^^Ji?b+OwmXu`seCn24>5snMBXmGuvIY| zcK#d_`_}PB$$?I`DsJrRTePaHawx5U`lV%!RpVawnDo%^MRzlKH|G;xqs(PAjhM>C zaXwFhpx-?k+jHwSYS7>+2}M{&pZW7sAB?KBd(a;*AFnOYG%aWpNK0Mtm=oZS{C5c$u z5>rW?r*AMUSGeDGH+Fn&b}F1kcW#`KH$IreR7D;(jPf7MWABtSGvp8eSa;Hc-S4O~ z?0_FzyVjJ7*4(FS?zb2EUFP?V_6|V&ryfat#cW)uiV{nsI;fB6#I$#|%6moM#L^2^ z6lmdBmi_cnHrt^{;z%>-)}O-HTU*Y=-u3Y(9|a%Ec}DH!la-fkpVZU?ZY3M$ZAL67 z({d#`gp=2*ai7x>aOe0dCGgLVvcu4)VMLs_hdmdacA)-N$yQfN!BPWUj75@z*nSxTa|yr#Emq`tMV4LClC!_UI`0 zEmiY^+`RX5mYBoHbaDNnH_9M?;Cyak$d$C*-ysz@dfk?t(J{q~;PiWwlR3gPc*<(F z*!ttv<+bU|Zv#&88`m@U1JkA>k@h+P?$hYnKwWtqL=5YwidzkObqjmg$qBNw$3l)O zZgM)ggz@8s&T3Afw7wU!EAUQ;3TO>aj;2jYAkr8cduDbW|w z3UI4IdEC!;oJ(lxInQKN8W1PfO1QmAl`g!{%k~_j@k?o13#?p&?fJH+q|XH2kTBv% zy4(R1)9A=B?DPu-&Z=siW%!CEz~O=sccv$#dWeOLaKVtt!!}R_lN{ZgydNxF{F;F8 zV3ep<2Dcw4DEjBz&vNztyuBQ~n0e}1y7}*pqDO*l+`TOC8c-ddylauKTM)TY^VSAasF>6bdkhq8inn;ul$}w3+tenxSuc zjo}g7QGC&cAI0-bzE2YQu0zN#^YC2#^3pO zlr~$g@1+l%k>>lS7lJPQF^`jk6XjKN&3ssT{d$&SttJy}&3>(lS+B#LaqOYZjO5qR z8f})%=};&ZVU9u}#1TJaK0Ps(b~exSefN={M~N=V?j8mce7-;-s8%9n%ApEY@t|Ia zD!c=Iy_m;7F|53?5jQBWo-Pka=k;Mczw5txw5(-=GuZ`xXBtT}uqw2ett+n(*yjb^ z3JxU118QT4_La|UBHRFtJfPKNv@7lIi~_=}UuC%$Pt6{V`bQCB@0$xeWzL+BmEZ_$hFG5xskQF-Fm26=b3Q+b)sy85~K z-X*d-9^>Ze-_k(qAggl7|XbL;+}50gQ#9;L%9g1?o3~DRWd~rROZKGyUuX^LNWTs^`(s`^V)6oVPDH zx`|grln5CMB=CVC_&~3|8$&RFn0^w}$&~ywx)AvEQ%P7N?1RGq^*_MSz6kq5R5(4E zKJEiF-JI~9x6v%Py8J(lqOn`Wsa`IKP$sx zUzPK*XGuf6Up~^I@Bj!a=3X5t%Yu=+Zie*u+o?WCmmEiuXGAs#HI=oV)pXW-P#&$i zbQ|CFzNW#pseI3G({oG}QA=1$XRmFt+ScK%)^Ha2o!0aiv>%DvE0pO*N-+VC?x)o_L)~gdHh9$n!ux&iC4s-g~mZ#7APgp#&I8aZ#!pQISF=4D}V+u z7=SC1IrAnneSp36=~bqtt@Q%ob31-9K>gQE9Co;EiluWCqL4-0Stus5r;gwzt$~Cr zr$5GKl?6{GKrvV8_7!3kVP`0qSmVOM!=iBI^8g@QK{-*?rAx~a&%1y1hk_oCuXmBo zZ`u@d2>qgRQrm5g<)O7L;xBrGQ$80F)k4-_vw@7D4=utVZqegJXoPN(eRP>63TX%q zv^Z*ij}^eEpis@YOV_pzk~H_+VaBoZ{PBLC+n$nH_g{}h-9T7^%)2yig1$vcj=XSm z%SU&8NpEOXv2Yw6!VKcks-faE)5mcxo2PpLTjwU;v2LZn6DH9%po5>~YV|9*lg_E= z=an9@snLN0Wu@1>+Ew#sDydL;&*{IM?tP0S<>S8%hP4X#NcdMK%bf$Wtl7w1q zG}&hi&XWraq#x!H?1a;ayYF3x(Ps^l_pWYX$H$@p zwG;x2+LEUMlEMA=?=uPL*2T;V)GdhqMYb3-&6!YeXC1=O-@Q3tO-Y9QC}EunwX41* zDk54Srbv&;7#<0en{me-P9`Ts>`^fk>7PJ#kWJNkG-z5KcY-3BO=EQLIOkriE>#n!shgs4rRF*EWN4p^tB!7t zbnDc@l69rpL2qPp&8kLyN*L3DDN;LGL+A%uZ)v5rwZ2Y_;@0wdZ3>TE`=r;bwpDH| zSdsdHUR~j-GQ9HZVCPDC^xfQpMxo6vF1^SXw1Wy%;#Wb%DuEsAhs}x{wS_YdwG$4# zBMrI+Z=p?Oe~e0H(LhkGg6erWehz7!$;9bVwt*XGC^dt!`Fz17IO z!kgEh(X$J8v?w7PHgBv_8r4m!ujtrvtBpJ?X`yR)(0fS*m&SFoI&|4n*mH;foUCz8 zHpb0qMXVe$x|(q?hVye~yait8zyY2%Y{woo?zOiRYrn`7kBDZBS zj+uY@(v?Q36_>OzFZ9r$C)6%?94ft);ycg71ZcGlmtVoVQ#ool)JRpbd2}NDx!w}? z>~$s@JTeT^OJQW^R)XdwWm;7IF?8YS0d$oK*Jq^WfqPSm>-QDX=w@OJNZF0H_Rou^ zj`LNk)h%1sKFIeDKGwCnH(%|vf1X)tKJ;97%Id)$U-3P@F5IX3vdub~UcbSVXj4`xaX$vK$DSL8L4- zO0|5aUhM{BH?Gh(P)W~zG->uWQSlkrWzq*)ss5sMuiq}7oAE7Q)!uhut)1uLZ~>C& z8ESe`!6BT0nm#V}5^j!~8`B8mJj;->1;Bj{|5!k2vKM+;E2xbctbDKd2{CBz#ypU} z5GMR%zGz?W`gb?ZU4492-f)hqHi2n~JzdIt41a`ij5%Qo0(d4U!qr4YYczu? zqfY_V&ON_Z8Id#=fuWcHr3Fb+`eeRYD0~yk50}hWYJqJp2q#aW+fV!aicI3ujkKxG z@y7IlN0to1`NrD10na*`u*WgiCQ#;SCxMx3h|;Q{HY*F8-Js?wL)#B15cV&PxEFo^R41Z~brZiuLWqzBhVT~Ncp^Na zr3!+7HBMx7%NT5GJERE3ZE8Zx$~TCF2MWc3k|9c5n+|@!JCCTpFp`;Ewcc>3vCZLe zRPsK$8@2;A+Yk3gXodQo)U1ukzb}kJ3D?sUYMM1_*S;x&tZ_&g(2|ddoOdrdmDG(? zRLyyg17VA1q!f)69JjRgXX?5?RHxJ>kr$oQoJM@7f;b`M`Sdq56sFUA>eYyrT{IyB z%NFCF2ipi?Y+=_{X4Hxs?iEp5UlFC>l54cXKbx%k;xCk?A6BHap7+NaSBBci)>PX; zOUTKpON4B?eC5!m|NdMB`+&GME14ZWn%d9h8!quo>3B4u+n8?luJ7$% z3+G0ssRb%^^;<$GyV^=8b6E)6jtP_&x)vdw5FqDXw;`(iV*eN8*!Yie6ivGaH2P;) zOauF8S^OW2ql3MTrSbn3Kh3Jh%K!PNw>wpjNfQ>-YFapaNdZzVF4Ap*6wN8xG(n=_ zY_sMrd4I(v-QB++Aly$3h+xe;eh}xwTnfmkP6a!;~wLA7?*M6 zRzB+$7b8A|^)=!)TXe?Gt_Ptg2IvL8tk z{^HWCFKVpei$p1iR|zdL6`=!J@j^O17|-7EM^I8!0N%reHXZezPE0X9&?n6d4Vup_PwHqTse1H44RB?;7BMhSJX7 zr7r4t2-4wcVIIWWd$0=3*J5nr^!oCzb=lqmlr8Ld;^_GF8e6Pg6VRs-!^2VQoN7&cl34|+9f@* zUw`~Jse<}HDH;9SuW~Xd001K*008d)*q2VGHirL?tI@*p|Lq%SRacBhVnpyeRhO9q zXW>MDM$ErkkzmQ;R5(OFzlK}rXtCY~y?663q!{ZGP&#kqrbu+Ok*kabPkcZY~ zx^K^^7T8j-TUV`2oy=_Gs`)1_ng4s>d^ofV25JrZ2_+vb%&k;N9&l)mD#VHd)3$9} zMzl54bzC5m=67f3^K8ZB`-~BBmc8kDErZFQv}EUMt0LrTdg` zCjZuhr>lkb+whj*lzUT4kCxuOb#mr86toM2xAtJzm> znE$6^1Yt;i7|mY@C{fh~^Exy5j4)eYu14I!@hHS3TFAq`QVLYjOiE4WZXGs`UdGPJ zY`&y1QXou~8==k*)6p$C)pv+<(D|^A9irX8flw-2cXM14*B!Ij_b2~^nGEY04t-6LX0c}XNbZ3x(Qgnob z0mErIRN6obpOXs@Pl54a7whP#;iv=pA{Tsm{>ADS+pRJs~e-}RJgi>DF))$W^+Kdl*TeMCfWwE+oJ_x-&u+iX} zQviLVVih6IMn6@8C4TbP1EYRQpKs={C`c6v%GTA&T9PV$_oD^Ua{0Z=S+cf_bTmD1>pjX64YY#)Z*Fu7Ln#N8kk%oIlK)jN z91@WJDYfFMpTB}PdjhmjfBxbKSQ>Dgj&QU!z7|f2@#KND%k~Cvxf2_D&>hibzWV4N ztVLS^s|}g*hBdP|>3OD_u&0)Frzk;JxgzQAl?*^Y_!wseFKkVHH2H$F$EFxGd zpNX3|2ZQG^6NN}DJ}j+0(&-o_myU!Gjukh^aktp+89LrkFLdx^4X)&KU+!67LfHp+ zN-LHR`4@`Z>NkaBu?}C@tZ83!mG{_}g4eC@%0M^8qb)(sIfI(GKh;+b{0aFvR|#vK z&L8rgw3vmZr^YC3?>Bqp9D{r&?l)d8@m;;@Ubd4bj4>HMpHEA<=SL3HxZ```RXv|# zRLMlGW2)w!N^gGujp>GL_LD+BD@H4W_%~aD3jl!Oe=yzuIr>BF-&_S+7gJk@f2X@C z?SD2{{HH$0P^$d>it2{VQI|Z*bZRI8t-T$b4Q}%kT>K`8Z;1E zL^MUDON12Vx)=HVqL554Z6|N=;FqeUP57$%yc((`sPOOh4$lkW_Y|T}@jn*n)u;Vw z7n4x}O;iv&Mf+zgD@dAATK#F|BFKHMr-6B$?4xlA6;YI0wuq1@)g@k1w;~*~Z8LBY z=|va<9L{tjVXwDYOswSsxRp}g`a}BJ94+EW{dO~)FvX`zBmbn`0S{rq0tUo(C@^lZ z9;+b1Z^}>`p;D50$U#DGJ7;h4?0HFrpbfIQVwhuDN3g4e-7yJCs!x0k6njYfz{B5* z!uvs04k^~dGX)Qc^Crw1;^C6^gKO^v^JP;MwF%bgw`bZ#gP4r+7-V86+OiRoK1;yN zmq= zAz-ho{)j*aK zBNRccF_#M0XwhpYt-^C%>0@jmfmZ416QW{=kvNVVQ#46*k&Ol5=23B~G7@1+UQyzR zQR@ob1aC0epgW*Ed-vpu^DLDq6NK#Y)HI3Mj8qcp9JI!CF~Sj@5gUpmu1L$BGVygY zl&(eI)Jg<7wVB^QO3IVnM8&gUu;I%aJb~#3`K%pAY(xqN+U!UUOK6C`GkVb z5%wA<#wK)iu)&UH2fo~MdRy%4>8J=vRj5J6>*Yx~ULR@~SIFV42`N0k7U*I4XDiN9 zd?q_O?Ri%XFE|BQXFu?a4YWtUVLG6vOu<$d#MJ`u@BFsiM;_ajwAcHX%#o6jRBwI? zYi3hm4E0pdQ(Njq?2})}@R~92g8Kmhc74jWBvS1J4J;0&q?}6qbFko4Der~@5Amu0 zSjPEHe~vmbuJA-*g`3UdJ2aW~5pddFGIt>5pm!}?cGV=rCGH3wMP?7}Sd+`fhEMG% zo4;Ty1EIUgrc!QL>W)os#7EI0eAn@ft1o|BChy_FiLtu}2VS4%(OomrNbbv!QQA1t z%5ZFQym-K*2T2hFNk0fUt9ptcTsHBZha}(0PS^UNIFoAKb5EE$s!EB6w!xi8uu8`c zDj&^`(=cLCrl-tK_h^$+w}}A=)Mv$#m0dfeYntiE*+C(;_M(}3&nNFw|Ib%YR$WZh zt|pc-ewPkyb)B|?h zlW6O0`-c?S?dOcX|wbgG@8uH&$5yoH--XH(!J9aFvoq7Z6p(4Xmm*UOI})%vGw*tzW*> zR7K3j*9|#=A%w_jNiMdp=ByoW_o{-zjRo#xwec zI|uuOJde||UgJ4OI9d$56rqYU3k5#VZ-hew|KyTWZbj??9(dcM{D2cCsDf6Z3-p4R z^!vwWj9Zj6>;tGYly9kUxSgnNnB4YkrdfT4yl9D5<4eR25`g`q|su2`8?&u;9X8U>i+9~M$nTxRxcOI>~Il(42 zxxi|)wlsRt-2jQtCwSi8{4E%@@A>TdMvLtJyhq!>^!uX`C+6Y%^l(c@z1$6vvwD@8 zI$sBv)yIYjyRe2D3F)kES|MN8L=XRb9e%#~;iSiUTcFnJm}JKA=d>Pk-^s%Y)XZ~* zbmSIb6Noxe((m-~-{a*~n5h>_EeACU;gCu^wB+|`lU<>QaRR=+{mW6buX%oww+6+# zrO=x^_Y?Q$tq6QcePWGVHV%Y)p{(<1KXwPE#)D0fu()$8$q0#!-m@o^$z>56hx5&+ z{SVK;Tl9QCCVQ|>9@ze7dHR_V{Qa5L*HcWMQ0b>P%Ds}}F6l30ip(*(l_syUKX4&( zqPovKjL6{XUh1F3Ew$3CK3cN`7cEDwn3Od8tt2h{`t3nLc~nqceYncyq-k%-L`5N2 zP-Oa?!^UW8=&08bytC#1K4X&7Gxz8~sXS2Z$e_=rb>uNWRK3gOg3<)7>5iCITR71H zTA6c8dHtHwxy4V1tH6F){B-2({Q8@U3Zt`!K0)KloD~PBY9f~cTdH4W3Rwr5fA&XF z;KAV{lC?WqDa^XTe6XxC3h=y;lD6-kbRz z^WbUia>$)DOE!6bNd~1e#`dMN$$XUF87luZJLSEg=yapn#$&5ZD?Q2H2YLNLK6TOf zX+Cv~;qo~Gt!&xf%NM~r%-{ZWjCN(Vp*Fs-%m)yhdzMdQm*&)o0#;g2$GKJ9D${!8 zo!a)Pc*P^F<9+mmA1bRP?a%x{Bz%*iH0s=}CylkqU7{#YObUX3s%sL16!p?HB_Xhg zU3@-ff=f;KP#(+*dZ$;FUAtNbxP2r7Tp#?xjO5Sxe&imCG^UVSmB!$!or2xrDDcO#P<^EbFr-rB6F&2ND+tYVZ}IK0URRcsVx6f^ujT$~#dCUX7}gR)|1YbL_W z4KXm&sjjo48sk-=yIa%%XXSR~U6s<#pWV3xrS;LS0=Q zz6N^+Njn*KN_55&c_rhY-NRyF$v12P_a38s-3IX06uYz~)@PID%a=?Sm2}~ zt|KIoO&g@~BqNGF2|6Flu96uDu(GPIX6LpAr1y{p^dpX z5$spq?1}O_Sp7|v0e_tdmKjJJ!*!GfuUU!o_Zd=^f!KgAY6YObybsJ6W!(}Jscp<4sgc+bK7bi`BIyxA%$DN^KS~|a0KVGa!p2i7 zTfq4ol=jr_8zLdu4+67LIO+T6yYHYRIorUYC8bCQTgv=d0W%-gqPR&bo_)+CcA%fc zOvSNdgRPu~e?_e{q9wUs(;Ll3lxdDJqI}o@8wZy)y1^A|Ah~JQIHA^0sl*;Vl12H` z)|T|U=0l1o6{_qVdnK?iNx)u;Kz!`qMM7o4Xt@!?GTUAG+>X_HT5OBL98S)1<-qND z+Gu4YtJp;{HTevy<@L3J#SSBo;f*YRjTDHu4SgqZh(ffjox~@4kKcMO7n++1j+38o zi|=d!)6aPoZZv<%__VHT(eW1_G$M?sn2v9PQ!JgsQ~tJsy3QsjTRTxcc@Fo02MUNp z7a<=kr4)}J80XQdJqF}-m946TKxBwzcQdk^4AAIL82G#PeWc@iuDcjT1G{4i(rZgD zy#S$BVn7Ie<1Z`h?q`g!qA_O^Tv%=Cuof?b^A|1$1tP7@EM21AO$oJ}s8>AWNV4Q~ z6m@bTV1?oavySXFzI~njjg4w{1%BPiq&d6SQkO}^8Q!Z>YOzK)8)V{P@)(zE5rk4| z10~d1wX-mV1xu$8!gcxOBdeqJjU{fq2TLA!e4Cc}^*f>zH!F-;s7IO)oQKc;U4;&n zI;r_Q(Ces?Cdj`RKp4cPc(JSGVO~;*b7DpoezrmM7e%y3+*r~Mgcq_HYQR)Ng;u6A z;TE)aY*2`I&|HK-{|o5Gh+p%#ahS2XlB_G*S@7@KlMOFhXo7a!#t>iVle1V!c61Pv z>|X=HkBLbM(>126d?73jO{03`-|JP}GHh>9E>9tDMOvNHzkd-p@3+Id_X+VcHmpC5 zPJn_T;#!I{G$!%!HVU?U;Ll;+hiuPaZvku%jVQuTScmH1kmuOrW;Utj+-*P5-Oq=r z=ogLvIvvKO;xxR1gB4J^*XPfF=*p^}r9;F+%Mi@ONwHH%{;oDg0Pvdx0 zOPWvMx5TfbD8{lYZZGCHJXH6ZyU5)5w&kOysn>`f&!TRfTRL+Sdps|qr=g20evDQ7 z`kRb^Khcn~B*RNo+y?9kw*>}Jz%Po%G({!uIhYNQ-vQrd2%t;K#q+^ONEp2%8Rsqq zh-gv`xNXh05jcdHPJiZQ4D_)akJjKN==AIT58x3Vm+|eJ~R# z#N`>{o{PBC7@d3n!5Ph@L|a6ac9R8GSlN_u%c&%scbQ&n*uTK5RM2S%rJx{MEfT0R zg4Qg947J-yjqS9aat5ZbREGB~V{48uN_jIC(?&^)K54?)#c@0xG&x&TRl}(l(bJpV zk<`hy*>;EsVZ+WJA_D^GvEikZP-T63Y%0~2r1!!)eiDux7#!YJL22A(QX5Wq%Y;Kt z+FV(!=M{`gf!0S%#*AihBF4`tgl^pWA*3;%19x<8uWgx{dIhxMcAx?NgxB$Tb0(xj z{<#G&4LZ1JFh;4(S5htHkap8K4am zqn_lMa&Gi6{Wf`vMtp`|qSDxbp8W6$#^dyk6o}Fh$IOhg$!ZoRiNNS0%9+O7(fs}= zSMX(jHjxrr8TYPH>WK3tp%ObS3|IVLn|znlCT`=N80Cy!8bSDaKLMhF;?D*iAY7Pj<)tb6vn|5yfhQlEy06gUI zLQ+Z@rVCpky3(naeabx9)!Z-O;Fl7Ey#@51J9G(<`8wu6;X~`qU^VutLDgrm5!K$X zW5ZyRR<;y&S}>d*b*=J67%$7Y-bzvOYix%yS5J@Dw0g%2nL)JcxN}L*YS}vIB%ml= zDqM9hmc4wZ^@e16g7?6S>oOjZtpMD*yRC|W3MoZ63XLi3wwQIu^;XV+85xl_(^aIm zB2>(a=nPvfmPDxf>K_nYLD&>wyxNS`$reJ+zYeL@auu*Ti%7j^o-sud1WHV(Ela&V zMd}RUw1qdOS+CTfXhh-IaOh#^3iMFp2pu0BPSHGWo(-~f=spfB1zC)Q61Jn!y0|sU z*WwsY4g>BY4x33V^)`|_AXQuH$B4Y`FE?o^B7mAhrJFe-m$>EM(GsiDGOFXM|qfk2*R?K_q%;-@9ct&fbuye8e1}fQ7HGp z-){LtZ}2}uI2InJlI4l`wGQ&-5&A1Xis^e^CTPkbLsJypT9bM!t!bBJ84W?L)EqGP+U)&?~;sp}og>sQ3Sj((-VlvKRMDW;iS#s$H0k}YI3(@3?! zDqxL)xSD0gn)t{GTnm5rdZRS;z^0tZa3w;uQ(o8md}_B2r5v&qF~CO-f6DFEEDm9;K7%b`{JoQj(!5?+tus1 z3cm<`)ot=V{XIB(IR8ehaCO1M%ed}-$9|cZZ~w+xoR|kn!qz6@4O^3w`0160)w7t zDwZ>>2M}IM6oonZ(S9j=+SYD&0<*1KKcM>!(a$v)%Cm5rQf#h{i+#Jk0H_NW5E&Y! zw0nZdX?q-Y1KW864fe8Y19JfvqDQkp9difvr?b1g4nHpc44;Pfet)|!TNZk?1p?vP zs4FI+RlK23k58XI)Y-ZlHs<^_^|aLgLqk80KNepc`DYNW2;pBlL_DT=Br^xvn{2eK z$grXmm4g^H)X9~Tr}rfJjY;S;;<*7nsj(O;Y4G7a0oat0Q;r-UOHG{qu7AsIT0f6Y zUVaPE*4Z$P=#xSL3{^3pyZ7V$xcuu&_-Fn&d}-jeL0Zj*VYHT2KfA+4PGE-5oW+cO z_2rW^AM9^KzG*%YiWf$H33nJp8OIn{GAxZcQdjq(3UvpbrhKbb826M3=Fs^z$S_`~ zI77;^59ct7%TXz!x))yCVX^bjo_gQ{ThyY}%9;a6qqvzHrh$eQnCr`Ld^T(Tum7Jb z*MIfU&wtYp88rDx{RqD>QG){jK+ymI2>jo|bGiSpqez$z8vsd52y0K0kd_%@63`HjML1m$ zNz0ieBUO&yFWv{hhHynz(mi+koD6eAhZJ7SOfcMQQ)Gh@U#Vou6 z^v!CpMIi_4%y&XBlJ19A8fX{NE>NdJu>vED77=1bhWa~*GZH#{`Uf(y91#EkupF7w zTs7R14;7?>csSxW{pSrO^q@!NGBFzyePTv~hCS6!0K^;%!yzGo?7(dbM0rFQu01Lv zBuqL{QAp;+J)29DpIXdHs$p1%uH#tskW(3puSLP9q!Zr*hCbqUpNp>!=iR_69Al{p zhmc`3he9r-v-{Fj>kRtc$<1l0MqRS`y>lyr1$$NUP`TG@tAd^UCUcoUpX@~o#@Ea3 zAZI1p?%6pw$toD9nTpd^rmDqp%YtbLD?dJ-wuOMtx=>m?BP+q+a4QB;`LQ(kwC@Dt zrSUW3JjOc?6da<;!+?nJ!vK9$NR|u_*lv)+!pGBaaE1t=W)dArjyct8QAocQkh3+L zE2rjV8<~Nka14*4%(Q|6n|WViRVYQ@aVo?te?qd?&+Ek#`JXXDj0NFKp&r-2LPelj z33I2afGR2^NWMYm22h6Pc);+B|(M-L2wF@;neSu+&!4n^lKk!DKa15019cRNDG-z9qh@^N6P1x915kdEk~hMzo7p~%WsRW=owO=6A97_0F-1qI(lza&HwHMv-Vaizi!$+3;pYTP z!{J-F%*Tlw2YR|k=r3WYu=r_(&5pdYL{y1m@a282)FzNW;NmHRw|swFamE)isDYb> z@-ZFWKW!j7@iL`Vxl+g0-Oiz6>)R`)qm5@!7o=5WFj@z)<}&2fSlXkK8_G*q>eF|ZlSYYK zdA5Tessa|@(JJDEGRPJQEa%eQ+&5l%7}t|c!U>7qT7>9=Ws&fO+wCxTEl^A*zslG? z)Jr}~-?&Y#rFiI^rj|BMT&?}FcGXhgbv4bbu;Ob~!Wxw6_jh^!vSE!89uDYUo}s&) zi4vcHGn9?P_yq5FtV$7|Uz&MmIIk3llr;|xhO&(K5D9GZnJ|zrHKk2ib=TZIxSH@P z=`jkpuN=LD^ZMl@ZAOh3S65 zcxv4UcZbwK=$!vbKXNzPn;B(sP1N&W!F}o`e&ZX--7WBD916a7tq)ixfh=%?!?H{Wf-Jetp1Nqu)~RW|CO#u%u`xf=xotbBP~mHp?I>BIj>Bd0oJ67vBZy8MiyozLX(x&Pe1|As4^n%A69ICgj;fu17yFp_Tlcp6omBx zKOpBb6u%3R_;-_V)StnHG8tVxEgeFWueyV(FjuiCwK5&+4NR$qwEu<&qttkj2fxgC zmat27GM|4|1M!)v+>46&G@oxLI{)X#=cg?UX+yKNAiM&;itD>he>lez+#W;VdR)(s zWfSEAf4K=~bS4#vb!4VKUcCKL)@%CtWj|5AwEe+;#Q(2ESNk7FSNe7`0Q}DtxCR9P zK>vSAbd^nwUH?~O*8$bU)`SC!pcDfr5JWo4gAl6JfYKB~i-1%SDWM}(I-wUsM+7NS zrAZMUC|#OTMS4eyf+9+jD$RevhXn9{=jEKuWOI`H%{TY%-nnIVY)$Q*ZSPy4><;zG zvufJr!(8Xki5`CRTw0G6ls`*+@8cMz3VvxQs~ZBn*r@+<5@G9o1HBdMCL3qS&Jo-h zkSLLsu=Hg9HcMB~odBn&B~0z%j*24_E;Wj1-4(%c0 z_fTpPQl`q(^fuBarYh-gILD=AVEo=Oe7q-dR8z00U04vJDva)7Y`|^fd^<&sb0=I5 z*xswc@IWCYJ3hNIS=qDpq+mo#-(bGDcLrpl?g}F;5Bc}vRWtErVZ+awD5?-aW{EQ~ zIS=@giD`|Vazi30AyVhticG*ORd+(uKJ|3P_A?1$hD*^ zo9Gl9-)7b{?)V1q`En)J@!8)a7EWBw1g~a_T{ufB`dEHTkd}B`RxsrGdbr=|9urx+ z#}RZj2o8%Eth`)`A>Bq==UytVK8$>z5fj%(tbY10)k_-E#gYbpF`tqMVk9rUfJnWi zO)f~GeO?CrbL!z{owZ{hLY?<}Z`)0-Og@xb$9$SO*Rvj?IdR)`<5F@t+d_Me3b+6# z{RuO!cl6UA$D-FH!@x?D_i1^<)=RI^jGSg6g-Do7Bd21E%KZ&8ZUkx#;&Lr{H!#*i zXbngKg% zcq`O-yWA01aXr&>itL-(m!x$~tvtg86XNp6G?!oC(6VSv%?`aJB20%$>@?>K#z`0q zZFGDz5~#2%k)Qk2dOr^yGeR30~nrXN-P5WQoKr< zA1TA5z)r?noXv)#ZlrJdU@y+Rkp(DbA0E(3@Tx>@Z6kyoE5q!>H>6D>H zr`>asX;ZYD*9mhZ%~BAoYbFq5iQG#L?;NI4y>uQ1k=K&1)pw014y;JZery&Pb4!H8 zcclLe>tuLO*`>er$-iP+$s;KeKaYo_hDRq{NsKB7uLO)9b-%mPA*W4e$oSA(3h{6R z6iewl#jmF2<`Yf;!K4$|MN@g7lK=4SHpc|pNhXTO6i0op^rW|+4QPk#G((K_3>Y4S zqy)$3@EIt3isLdwwB!%Ku6Y}sKJ7=YpQxQO8BLHrOjp&@>-0qfC78w_C2^*)w}ZvR zhqC`^0uN&wSu&m+`B0j!@Wm}%Q}cY0NsRAXp64mHPXL0aYlb5m)Dxp~Y$eVeS zW4wJRqmpzbO`ni5FqjnjhF{l8e{{7S2hy(I;!ytXQvEWnrQeCUXoQ-R>ffqOZ#G`m z^WF}6n?J3t_Oy72N+_~lgh+>m{rjj>T4P9jkW`dSlmqEZ$I`;tki_iJ2;|9Wc}Yv89fzN(gp+})sb#ug`-@Y}0s|*0 zGy6-?G-L9#jXo3O$yW9e1w#4Dcj4)}KT~Tvl8Cn{RJ~_v?WQd_moh#nubw?m)_?bc zMg0vKLc$Jh-mmw+T#4{?yZm(K(_bdfdqW=;US@aCd5V(YmqEw$$VCT+Q$I2vWgQ%P zrRnE|`NrFA9dsp?S!T1rwi%udZ`J-<@m!fL!q2&`Z;5zSJWu(S?$kgb+_;;JJXSBW z*0d+biO|tcHp|2 z&7Px3f<^hSMj#)4Ne!btU2NTozJ^0_|yUYFf#bmxXbyq=q#Y9+oMZG+4N)F;?Y2 zDHGvtk=79|A@`8MXYz0oN#FT~?nw=N#CV@Q9CC)|l-mYp`d(oO zb@eu4jNP7So7?zEpA=TmITN^8Z_8?DOCEc7kT;0>lwV;uT8dKhhggXhU)XzNpWe$8 zqJq7ua`YL_P^h(Qvfvo!i_6=t8{+^`O^8=T+7@s zSTIj9ll9+m(wO;9F7WxHW<%O$e52s?>j94WMkt#02YJn#%Q;(QRY8B#(}V0V2Iu#FiQ!5>Nw_iuNyy%k?g zO{?x}VDzQxIx@1xdaYL<2Ha1?VGu0Ie7=pnE{+NL))pU`SOV$V*Wc*~&`5Z@o6HUh zIT*c)eSbf(3wWqyROZ+t+K;l_m;m)6W8NuAvNsQWgIUa{-kj@#M!-)j+TKVe+ZgTl z|1L(7?i5-d@NE8WBhzLVI@nmbt{aqVa5qI<{-;K6CFG7&Q-A_lFB1BOLt!EBJef5QmZ&Iwu zFMNv>HIyqw-eb^|C28rMGE|G?9)m~N6waL}8Wf)MMVz@|0!=k^Pm!mu2#aiQ2~m88 zmwtY@v}wkd165iBViqFm*k*0+3c{(SNvrL$(mj<`?xx<~3i^x*Pp)nI5vit-Hucz< zrv_|gV?U{O6Bmb_+~)E};ywCW!xI{S~aMr zPUG9M)CC)Qf@?bN=RR^HA9fcFNxhW&^b3Xs4apghr{&Lx+Y#AhCH~&VaQ3aKQ{D+J*pM0~<6pYBs;s_(G^c*PuR0MB= zouj)zQEYENF9#zBw@FDh2H*lc%6;6{X;xt|IvpKy&ihk2(oJT4vlvn2i*e5dJYE7j zKXGV1*jE#FIiog~%Wn?DV2)xZ#fSIX`YGHVrb!KKJKa}!{W?87=&OEHSvO_@-jce%z9q);dAx&02r5>r#SgYt*MZjgAi(Ry5*E1Z$<3QSOfH%cf*_C~^Cz z6rl)#maR^+`D@+8a`?e8JAz^`_j@5F?V&Bq3A%8S--W~aLB%v=g?6w6x{oxjng+~&B@96>S@mBbd{e3c;PHb z#06|J_+h;9S;Asviv`Z!NVi-o9gf!9w+N}a_~cmLsLxzp^Lhqjiom~CtTLFVL~r*~ zr`e4!B_|H&rv%quAHNq&)OYm{4;0`eL~vQ?54==@4m&&u%2fIg=Raj~N&q@XtEOtu zdSBFd+J5qul}eCYYp@$YWs&?sK93F_uQ0^+T-M4Ph_9`?d&|_ zASP}{h5khg!QQh4SzlT*Z}|?DzwwbNA-C_=s01fBSAiX82Kskqo^4fMx5U3Bp!Z%e zCWeSYRn$Pv^xULeGKn?;jpNX%VNN^4fQD?tc81nb)?f_~V(xppwg}jTp4-~$o`jaFo z+P^REq^X}1TBgz0zs2onC_+pA`L2pcXj{D=8k}^aQ)mYhvs}0I3M}gV+I^kkUepu* zHbb@1B^!}ogAv2lsh)s!NsU}9nwf_5Ebu@DvjZLypQ%hzloq{njj4Db^SM~3`Ie(l zS$ffz#^J&BNX5_d`4{w*b*YE?Z_Egl`&Y2GQP%=_*u@f8dCEBZ`dbC&GYwpvMK4yz zKAD}!4^4ZyScIR-?a2$bkaBf7of60dNhEL8T7K)K|FW^Wxm5l~d&7Md_2=u?zd&}b zn<^=}*Tg&FRz>wyx~Hw~^onfgZJ_zlOT3TzOq~nfnKkp)-I7}k9wb?t+<5;rtYmq1 zwrx;x?wO#8unzLuvdetb?7~_8SE*2&7{N}y6A*MpHSVVSxfQK9Lfm3dkD&}tDs4Pp zxA(15jiaqWyzHq-82oOh(FS!^A@hFrlOAT0Z0F!+0?%-MK4$J?tRjO<+>>7Hi79v^ z6t8pkNB!J6T^YLKf@b*oPx8UJ-M1vj82;7YJFY>XH=$?*(9!&UodrIrDyc|{b10zf z^>$N|avpS1D5N_gicWRJ2KZ3`a6pd#c<;Y3OW?l>!L4WNxWLkDKQLQ0sugXp3<@c? z@xV>}=Um~}Wlu49j7bRS=*&%6Ckl`x!aBTM9wbxRMp)Utv|PPZ;9((aF42%o^#%E4 zWdzT4)$OWI8@FkG&jgdKePK{hd=Yz-hqI5kNo_?|TpkO#kbHxUIb@@JxPtJI*tpUti$>L2Zq*ZLX;7E}VTiHve|-{Geo zZ7*YgJs=dW2Cx^?@3K9CqFI6Cploq*S&r*cimDvHcdm28xL{6}7TBPmQtJS%tOL+} z@S~tnhK_`mz`Owr(D&*g&=x?IBcQ+rc^FJz&km()XK!b!3!Lg2**aRlV3t;fz?1?9 z7q&|ON1>mhzpSw@k1Eu9iil}fAs#>>$wLZ70Zz=H6av6?9f0MAU-~%eTI<=Ob`||c zDenKERE*OvrS|1frS3T)pdti;*bXVB56rh5R_dQoA^lzz?K@ciQbWckeqry+ z18fjz_{fz+^c#D($&~}iY_OC4V%Psw!n4u4jc#9h;2m#t>krU~TQ!^lxxhHr7$^(! zyL5V>^vNTo>+Lu0UB?g`%9CA`{w@H8@9g5g3%M^3h!B8I0wHx4jQR|x00Yj$fMN9^ zs74^j4x5O9p0%F7sfDTiKf#}e&}LboyJ%xdu6t}2%CXH=T|b#+%6nSQujRu z`w|=Hc=``)oN=DRIKN|6_OcjZV|n6cg7g7v&42!dwJ)))bv)?-wzbsw4`X4aKmg43 zhx7;7G>%93V$*o7eYj}sc;7=LUPlt`lCYxp*fZF^#6~(Evx$v#`_5scV-cK(;5u$$ zc3YT0$1k{jiEXpvK}Fa$V>3Jo_opqjN2iJabN(T`2%F^bt-HTT0xetE^1q-Sy?Q^O z-mQ28tr3!4kizurKw`5!z6y-Z*4Xu5aR2j~Fu?u~>%rLUk56;|W)EC@L_YsVi~m3A zeW=ol`SSFDN-tR>*}HG#r(ipZ?Ws2v&g zVXswdBNb&p!O(#IxklprrT_Kt-xJK=yO6W1mAR3Ls|%yzf7?L;nJfB9e+5~D8G!%+ z^&8u zrTRlA!=alL$+l5EUdJ5U_g9s)X8Xs64XY*nB$dx6s;D{N(3}~Z1M3G1^_6G^P7giK zZz|EH9rRxw!LS)rlQT)d0ws{@1Si)u8m;<;6AqTx*X3G$>ui2#Ngs1 zkpe}|hEZ&RDHGC|$_F{U3LD}0+byHmrw051U;FQf{ofC#`)q5Qzo~LP_cxq(>{f05 z@V&o(Z5|=J_l@wmTI1Gwp6qVOmo9}~e*lkJKnx-niO|z@&-fKW?nN4g)2Fhlo3+iR zx7ekzGn*YCZ$ZZKd}N^Lm!x2(yB4wC!*w0QaMrmyY0MVVV0Pg^jsX;IMKTI(9>Pbb zMdRbv&C}oWD~ApcOaksZ1;$->!!y??^Rq2}tR%TC&K9n~kcELus!-J%p#&POGUKGR zV+(}`4K!MFb1!`p^YPC0` z5;!brXjwcjGg3?`iyh7B*IboMEayv{!zW~ffWoFZs{t9_cg>|tEVcG?PTb`08!C{1 zr34J%%;HiaCP@pn?K5*9u@3!-im_qgQ#4d7LAgH^MsjePM8bwKa4D^L(jG<)VO-7$ zsEBx6(_a21-^JUY0K3T+9qyTwSaT z{w@v7ojq(B80;KO-E7V1nf|B${^Pw`6G=-ZCjH-8ujC=A{Rza|1^6Rtx zpL{T^>|u0<7LBS(QVdRAI?4jCK2{S`YPb#lzfIIQzrsBX!i~OqsWxt=iu6oE3iWC* zXVs!Bz52~9yT%R%dTDpNXY$J=$31j4I?MxU(qI&4jTpvOeZJ-0^W5CI2F#TW+#+r78D3^tzm|M9)4jw<1czK2ue5jK z5KPG(ZpxuDGeqxBo9tDW%t`IjRdn-|tXJeF9T+Hoaq+G+mH3i98yl;Jw`{6=e79(e z=slw{uSMq)aD*9$7SbC;bkK=kQV;Rf9sN?t!0Zzk<@CkFY+YNaK243AMa^Hhe<#rG z8DOE7XorS_BLxO~M0iMrtR-g&qA+VAJS6};iMkc1o3LwBNLtCb^oZpN$vdE3cNc+_RDA2m4}PV@t@V|N)OG!~c+ z8P9c*Eg&*Ycqd~LGwgR%r_{f^sXZT5F5 zi$+Ys5jhzJbp#nH*96oVkzPvB530}D3SXo4y7KHDaJEDUM_IG_$O6N}%dJZn>6QYP zBv+IAZ=da)05YdvGhOyK%*xhciAO!gip+$g;)g7$eqatsNJ)~&%v=Bd4syE0+unPl}>f0tkve)wF3ui@jIgcmQgWA+k1dT?&lX^0RD;#Vy%ok~H+ zN*7)tGykfg=Kc)hl+Pz){*DMnpwmqBgFPoJWe#&8AdC6Hg5kh;{yxX3DAr1)`+_>S z6Fl;a5}@P^f!KSO4E~V)I@1?wa!)G?LYhv&2-PiOtV!QLyvpy*d5_n5Qb!Q_mc}vJ z2Chxf*D;Q{krmd4mJBpBP!kS$b?soqMvWJ1Ak+a!92>)+1Gyfkn zPc<$v!EHaH!}+kgf0|3D`2zpu^&d|tl;gG1ZV!l`yhb_$P1@l%&uFcpO0vs6%UPRr z?Um&6`R&JVqfWTvciwsYyGXM+pE8=90}J! zyX$O(3svZ;mJ^D=Whx=*(E&61{*Gd#9%zt}W-hqDXuk1^REw?}>5P@!>5B>Qw5!+a z!TQ7Y(#m)0y1N!1HtNLFjNdZ%K27U$4?J#zvJ@aSg~WGs($X` z+48K^J!6GGUhc(+GJm2sGgIYA=C1ndg-lPVRu4|ZfY8-lJwF<%YxD&sbD5X}pGEt& zv_Jn3r~7ad-;q;)qh!DBjhbc;g0~p?xwiWzc6BWu3R}8?G`e8A5Xep#qL@MDq8a&= zuPwj5_Vuz6+Wk(Ft>m7zHS_@tEpZhVXmKv@mN2A#9EW~yyVSHnv9TMtmu4)51}i6s zlClv=eBZMZ&ji9wFM68aNI#Q^g`vb3Z&<|~Wnq}s9Y0uq7I(6y*1^5PyDepEUYy}s z+F<31lTc2WLU=mIl+;uf^|G!ZZvWjwg!5a@tWajuSusIoM94g~zbYvxa*`5#D#Nt> zzjt6&gdL_J7)a0RH&0UW5XIWKgq@8&qG|B8_y^B;yGfq^Y=ekZ5pyzrR*mIWWN*=! zSB{4QmR+JMI}v(6tJ=%5#knk3<|TE;Gfqb=X&UvC-BE19o34$M80&w<3CX3x>B{v4 zn(iXLk*<{TE9IpI?MRbZC#Eo_d9KKW+K&!-Yu;Uun##?JtTZPH zVzWf6OEeg0rwDu^^G5H2Xlr=ieU-}obex~(RiZ|sIb1I_0yESmQ3I3 zGZGVN*my%P>@&CG3LVDbmuWI9P)7Ks)p*9vg%Nk5c81|)6GNj`o-WCc(Uu~8B@9EC zV#Z%tPPl9?XLFX*u^={3q>#+_fk8tV5*{D%XFd?ln|f*jK>r)f_8vKCNPm?h7Az1D z&Hq8OikY*!m5CYAzZ9g)e=YtkAbZpYlCu8_$X8kxA54ftpc_T`Tmm1f06|UTbZTG- z$&F7xx#Td2BnH#uM?;hRkQ8fh9NcO6M=7C+&?T!lfM3r-g?(X`*R+x2#lg1q({B6|R?Ve!3gn%}~*M@6&3M4ZY6DNn@8L6B73Qz=q@@*#a< zkQ*Z^GFy%h*N$^5>2n5sIy=<&eLiG)hjG@rp{Q-86PLAf3YT#2Hogp=CVd-9WtV{> z{=wAmlt}JSd~CFL+zqLe1GJ_g@W4gJ628ITS1yBCZq6W0L`@xntSR0eAlG5v&}>bfbGZ zmsj;`&L~cmsii=!h90R&LBL&jx=@+QW&mwmRCspCgYL?PcBM4P@$;D08_?mS2x`)l zz^r0)6_kQS2w$rN-v_pu``nS35nq{MW|Qw><5>=!gC}r=fS*kc*aH&0?~C&l zL@SFbFwIZMXi}Jqma%);DJ19+LZRO8^YjF*ypwK}W%{}vi%T%9bCsm<<@#k*O&iqb zjVa~WN_?8t+;KU_!;zq;+;iq(0V7KNgK-WM4*&KmAfV0vh+N?Q`jx1exs|<@tCfTO z|BPMUBK@V+`WZQ^!GM4){+eO`ho#ZK;~fSsJKGv{x%huH->XK#C`m)eb#th}94@6*>lBEXVoj^u$>q#+cEfG#%>r(2<9&{j9g91fbE#H| zvaef`%*Xhwjm??ULjr@S(N^SWGUeU;T9))mLPL=CoMR!Mo!h|hu5vAil}H7Bl`w5G z3%=`kq03W#|H$d=k8Ln;JMb?Uh0Sd5;z3EEF$Dr)H}+ftgm6)@=18|Ls|D+i^X&H~ z%;@82NI^V1{*2%r$}t0*>x9cvVl_2I4cvaZ<)CWP78f|JdXTq0*LiafsU7q-)3`rMG=P4(0@Rx@%68~xFSGkJq(6XT9(BlB@BvvyHOQp|Q zNw*rmiYW2Zha57sqM#OuNO_<R$9FO12NmA-c0dZCTYv;-pwMl=AeJDZ z9a*d!|2ge)UKNhIg&=w0(8mUJ=P=$dkLyg{(yhmrK%5?h9hLmedbz*5xHeYsjeaI6rziYS3{wI7RX!WmAW9nL;Y6`>wWuSXG49# znh_1_SGu&r9)u}#bQiH`g4*1e^PaTFOYo=Rld9!%=s%3FfWMUN$Ak_hPYgXQu1^OQ z_8h$O0BZaKWuIl{0lOfPB1(O!Fqv_RerQw1bcrRmrk3O4FBE0lD3K{&hEHv?I|UUP8E6)=0UQ!9<}qZ0_9_gD3bNWY53a>c|=E-Q%od=Ej>LCgydoQ6ojVez^1 z51L(KT^B!#6!kUTh8KmbC-ZACpu(XF$J$*h zznn6?>!CW^%$`5?Id{a8b$w#Q@=n~>BLmA1;0WCwxmMS4gvi9k?ju2ee+yo@JPZTh zNl?hRpU%HC*n`-2;U%wHX;X1$w1te;zsS?JFNk-XtQN6<@sSa5L|p#hw$d_to`wCKmk+V>a4&4j;jkL;SbZvCnB@tatu>EF8w;5pQSyGIVsF>; znjqKk(Uer`ZmSUI*OICBOthpL#$%n35eu3oK(TS)$jHT;1DEEC6hQ7sc~@oh@T*8_N$WQfJAX z#AtZT+pL|vtkCiUfAioq*^`vLt$6!D*7y=o`3m}PGK2yGi}IJYB{3$3`1^ysWdH)g z`wxmUF>*9AwzB<8jb<+Yu-uBaoy#E`(w`lJLTJK`=_6k}rhc@rOkEwKp#}FWj4%c4 z6?K##J8UU?oG`+L-!&(+uFa zn1IoM{i%pAlIBDji+r*CMpP24P=%0v&b@kd@~OA1c8;E|Jfl8vL$*tL*&tTwNPfw3!n6O3r&3_fE~xpWhOE^nruJU88klEEN$R`t za7@-F`Y#Y&6szjA*OHp%m0(J_XhETv9QaWcj!cBL&3jiC{GhSAx-?WI1>5`w> ze4gQ4W`B~26^&a@w0L}2e?Og_CCh5&IZi1w1iJjlu^>t4i!*BQ$qY_sTHuk1EIsl3 zr1*Gxi)bLdQ{Bi~`l%7ag-k3Se=%{HsfP)&n`wdDvbIBIb`LEO$<&bc!)?o9g8e>T zG*qx#mY#Q^0Kajw>U=#TcjaoGeyvH|dU`+Yp3N-EwlROlFgOjd{)f7jYct_yiFD`? zMnp2UQoeg+g9J# z;?gl<-mYF&K}%ISV&TQ%e%9fUMQ^2|ELN`iVpn!;i8>XI(+cDjF6h|$A)#L2 z8*~x2A#Lx{Cpc6u@5!CeIwa81;ezo)w{U<8p=hu`B1?M-kn&teIoWE%z=yV|y^Wf+ zjt26S!WeG5(9No?MO-qcJa_Mv zz~@_fS>fIvNa1aRA{mo6ReY_#9LgDT56Ph7F|CP?kc(vJmf4k2{eZ7wNU7#ZvQB0E z_38eW@)UXr4nF1_M1-nESSVEb^l^yp9zfJRo-7I*&jM0V$-zbT4@#lm*kpRa$ZAr>X2*xeKmO=LQXw%N29vAu!c-aaw@- z3Gotie75Fxo}jQXe28HL0c?s4B{#fNOWUwjgo)nZid;9{4W~VS0CI>{mmHe#Hg6zU z#Uw?qd+y9mSfH`E{2n9u^5cZbSgm>yfsn5>846mmh1bU0orDxQR@=lgu$3_UnOf!1 zG?u_q)~iOSeD2qkHILEl8_vLYw1&Zo?=+J!W;`AYn0$I|+?E5Yu?xV#v4xpG71|#f zS7L0_-+_Hv8D2e$zeLNYHE_iY=&E|D5NR>oc@E&_D#Y9pcs-->&QoHvik~>3y1;&t z7yTa8V=1b8Q48cOqO_?gLg@+%iZS93l}xSS)*=RX<46MiGM(~c>PL1)(kYkuG`*M3 z#o??n#^&G_Z7NKjLlv7LKaotulGea=W4!sT{SI@{_UcVT1!rK6!!ofDcr2s1!uue@ z;OGtO!wWxB(NV~VyY|YyZQMl3x8Aoi{cnL7y5>_gi+*s&jRqvO!wUUOrSU6* zaJR3dN(vd`sXQ3BJ_-DHsuZlB41PqleQdtj#8c10YpaUHmCLJyWPZ&F_aFz}AFD

mWPA|&fLlq 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 C#q@dr literal 0 HcmV?d00001 diff --git a/sdc-tosca-parser/src/test/resources/csars/service-ServiceFdnt-test-csar.csar b/sdc-tosca-parser/src/test/resources/csars/service-ServiceFdnt-test-csar.csar new file mode 100644 index 0000000000000000000000000000000000000000..5a364cd0b15ab8e78e760a4bb619534522acf859 GIT binary patch literal 39938 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