diff --git a/README.md b/README.md
index 657544a..4b04f2d 100644
--- a/README.md
+++ b/README.md
@@ -40,12 +40,13 @@ from reqif.parser import ReqIFZParser
input_file_path = "input.reqifz"
reqifz_bundle = ReqIFZParser.parse(input_file_path)
-for reqif_bundle in reqifz_bundle.reqif_bundles:
+for reqif_bundle_file, reqif_bundle in reqifz_bundle.reqif_bundles.items():
+ print(f"Bundle: {reqif_bundle_file} {reqif_bundle}")
for specification in reqif_bundle.core_content.req_if_content.specifications:
- print(specification.long_name)
+ print(specification)
for attachment in reqifz_bundle.attachments:
- print(attachment)
+ print(f"Attachment: {attachment}")
```
### Unparsing ReqIF
diff --git a/tests/integration/examples/01_create_reqif_objects/script.py b/tests/integration/examples/01_create_reqif_objects/script.py
new file mode 100644
index 0000000..99174ae
--- /dev/null
+++ b/tests/integration/examples/01_create_reqif_objects/script.py
@@ -0,0 +1,153 @@
+import uuid
+
+from reqif.models.reqif_core_content import ReqIFCoreContent
+from reqif.models.reqif_data_type import ReqIFDataTypeDefinitionString
+from reqif.models.reqif_namespace_info import ReqIFNamespaceInfo
+from reqif.models.reqif_req_if_content import ReqIFReqIFContent
+from reqif.models.reqif_reqif_header import ReqIFReqIFHeader
+from reqif.models.reqif_spec_hierarchy import ReqIFSpecHierarchy
+from reqif.models.reqif_spec_object import ReqIFSpecObject, SpecObjectAttribute
+from reqif.models.reqif_spec_object_type import (
+ ReqIFSpecObjectType,
+ SpecAttributeDefinition,
+)
+from reqif.models.reqif_specification import ReqIFSpecification
+from reqif.models.reqif_specification_type import ReqIFSpecificationType
+from reqif.models.reqif_types import SpecObjectAttributeType
+from reqif.object_lookup import ReqIFObjectLookup
+from reqif.reqif_bundle import ReqIFBundle
+from reqif.unparser import ReqIFUnparser
+
+
+# "_" is needed to make the ReqIF XML schema validator happy.
+def create_uuid():
+ return "_" + uuid.uuid4().hex
+
+
+date_now = "2023-01-01T00:00:00.000+02:00"
+
+
+class ExampleIdentifiers:
+ # These are usually unique identifiers (UUID)
+ # For example, 550e8400-e29b-41d4-a716-446655440000 or similar.
+ # For this example, we keep it as strings.
+ STRING_DATATYPE_ID = create_uuid()
+ SPEC_ATTRIBUTE_ID = create_uuid()
+ SPEC_OBJECT_TYPE_ID = create_uuid()
+ SPEC_OBJECT_ID = create_uuid()
+ SPEC_HIERARCHY_ID = create_uuid()
+ SPECIFICATION_TYPE_ID = create_uuid()
+ SPECIFICATION_ID = create_uuid()
+ HEADER_ID = create_uuid()
+
+
+string_data_type = ReqIFDataTypeDefinitionString(
+ identifier=(ExampleIdentifiers.STRING_DATATYPE_ID),
+ last_change=date_now,
+ long_name="String type",
+ max_length="50",
+)
+
+requirement_text_attribute = SpecAttributeDefinition(
+ attribute_type=SpecObjectAttributeType.STRING,
+ identifier=ExampleIdentifiers.SPEC_ATTRIBUTE_ID,
+ datatype_definition=(ExampleIdentifiers.STRING_DATATYPE_ID),
+ last_change=date_now,
+ long_name="Requirement text",
+)
+
+spec_object_type = ReqIFSpecObjectType.create(
+ identifier=ExampleIdentifiers.SPEC_OBJECT_TYPE_ID,
+ long_name="Requirement",
+ last_change=date_now,
+ attribute_definitions=[requirement_text_attribute],
+)
+
+spec_object_attribute = SpecObjectAttribute(
+ attribute_type=SpecObjectAttributeType.STRING,
+ definition_ref=ExampleIdentifiers.SPEC_ATTRIBUTE_ID,
+ value="System ABC shall do XYQ.",
+)
+
+spec_object = ReqIFSpecObject(
+ identifier=ExampleIdentifiers.SPEC_OBJECT_ID,
+ attributes=[spec_object_attribute],
+ spec_object_type=spec_object_type.identifier,
+ last_change=date_now,
+)
+
+spec_hierarchy = ReqIFSpecHierarchy(
+ xml_node=None,
+ is_self_closed=False,
+ identifier=ExampleIdentifiers.SPEC_HIERARCHY_ID,
+ last_change=date_now,
+ long_name=None,
+ spec_object=spec_object.identifier,
+ children=[],
+ ref_then_children_order=True,
+ level=1,
+)
+
+specification_type = ReqIFSpecificationType(
+ identifier=ExampleIdentifiers.SPECIFICATION_TYPE_ID,
+ description=None,
+ last_change=date_now,
+ long_name="Software Requirements Specification Document",
+ spec_attributes=None,
+ spec_attribute_map={},
+ is_self_closed=True,
+)
+
+specification = ReqIFSpecification(
+ identifier=ExampleIdentifiers.SPECIFICATION_ID,
+ last_change=date_now,
+ long_name="ReqIF library requirements specification",
+ # Empty tag is needed to make the XML schema validator happy.
+ values=[],
+ specification_type=specification_type.identifier,
+ children=[spec_hierarchy],
+)
+
+reqif_content = ReqIFReqIFContent(
+ data_types=[string_data_type],
+ spec_types=[
+ specification_type,
+ spec_object_type,
+ ],
+ spec_objects=[spec_object],
+ spec_relations=[],
+ specifications=[specification],
+ spec_relation_groups=[],
+)
+
+core_content = ReqIFCoreContent(req_if_content=reqif_content)
+
+namespace_info = ReqIFNamespaceInfo.empty(
+ namespace="http://www.omg.org/spec/ReqIF/20110401/reqif.xsd",
+ configuration=None,
+)
+
+reqif_header = ReqIFReqIFHeader(
+ identifier=ExampleIdentifiers.HEADER_ID,
+ creation_time=date_now,
+ repository_id="FOO BAR ID",
+ req_if_tool_id="ReqIF library",
+ req_if_version="1.0",
+ source_tool_id="FOO BAZ ID",
+ title="An example ReqIF file created from Python objects using reqif library",
+)
+
+reqif_lookup = ReqIFObjectLookup.empty()
+
+bundle = ReqIFBundle(
+ namespace_info=namespace_info,
+ req_if_header=reqif_header,
+ core_content=core_content,
+ tool_extensions_tag_exists=False,
+ lookup=reqif_lookup,
+ exceptions=[],
+)
+
+reqif_string_content = ReqIFUnparser.unparse(bundle)
+with open("Output/output.reqif", "w") as output_reqif_file:
+ output_reqif_file.write(reqif_string_content)
diff --git a/tests/integration/examples/01_create_reqif_objects/test.itest b/tests/integration/examples/01_create_reqif_objects/test.itest
new file mode 100644
index 0000000..ea542ae
--- /dev/null
+++ b/tests/integration/examples/01_create_reqif_objects/test.itest
@@ -0,0 +1 @@
+RUN: python %S/script.py
diff --git a/tests/integration/examples/02_read_reqif/input.reqif b/tests/integration/examples/02_read_reqif/input.reqif
new file mode 100644
index 0000000..d25a787
--- /dev/null
+++ b/tests/integration/examples/02_read_reqif/input.reqif
@@ -0,0 +1,3995 @@
+
+
+
+
+ 2018-10-12T16:43:58
+ 5b6cc2367b684c19
+ IBM Rational DOORS
+ 1.0
+ IBM Rational DOORS
+ IBM Rational DOORS, 12 October 2018
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ _17a56810-ddec-4c0b-9a7f-3c5994ee1ed9
+
+
+
+
+ _86154e3e-5f07-415f-8d56-2f2d0257ab1d
+
+
+
+
+ _69eac2a3-f05d-46db-9e8f-036420b5f259
+
+
+
+
+ _80162b6f-70e1-44ef-9491-b10a34e20c72
+
+
+
+
+ _80162b6f-70e1-44ef-9491-b10a34e20c72
+
+
+
+
+ _ee75e6f3-12f5-4cbf-9159-1515d345ad2a
+
+
+
+
+ _37894a8b-4c87-4b7c-9805-4f8b45c75ab8
+
+
+
+
+ _cbdbd88c-f26c-42ab-96b2-39c61a3e0b60
+
+
+
+
+ _d1cbf7fe-5d6f-4d0a-b14a-c83e3b64477e_CREATEDTHRU
+
+
+ _65892872-d57a-4f53-8cdd-77e38e3597d2
+
+
+
+
+
+
+ _80162b6f-70e1-44ef-9491-b10a34e20c72
+
+
+
+
+ _80162b6f-70e1-44ef-9491-b10a34e20c72
+
+
+
+
+ _80162b6f-70e1-44ef-9491-b10a34e20c72
+
+
+
+
+ _80162b6f-70e1-44ef-9491-b10a34e20c72
+
+
+
+
+ _80162b6f-70e1-44ef-9491-b10a34e20c72
+
+
+
+
+ _80162b6f-70e1-44ef-9491-b10a34e20c72
+
+
+
+
+ _80162b6f-70e1-44ef-9491-b10a34e20c72
+
+
+
+
+ _80162b6f-70e1-44ef-9491-b10a34e20c72
+
+
+
+
+ _80162b6f-70e1-44ef-9491-b10a34e20c72
+
+
+
+
+ _80162b6f-70e1-44ef-9491-b10a34e20c72
+
+
+
+
+ _80162b6f-70e1-44ef-9491-b10a34e20c72
+
+
+
+
+ _80162b6f-70e1-44ef-9491-b10a34e20c72
+
+
+
+
+ _80162b6f-70e1-44ef-9491-b10a34e20c72
+
+
+
+
+ _80162b6f-70e1-44ef-9491-b10a34e20c72
+
+
+
+
+ _80162b6f-70e1-44ef-9491-b10a34e20c72
+
+
+
+
+ _80162b6f-70e1-44ef-9491-b10a34e20c72
+
+
+
+
+ _80162b6f-70e1-44ef-9491-b10a34e20c72
+
+
+
+
+ _80162b6f-70e1-44ef-9491-b10a34e20c72
+
+
+
+
+ _80162b6f-70e1-44ef-9491-b10a34e20c72
+
+
+
+
+ _80162b6f-70e1-44ef-9491-b10a34e20c72
+
+
+
+
+ _80162b6f-70e1-44ef-9491-b10a34e20c72
+
+
+
+
+ _80162b6f-70e1-44ef-9491-b10a34e20c72
+
+
+
+
+ _80162b6f-70e1-44ef-9491-b10a34e20c72
+
+
+
+
+ _80162b6f-70e1-44ef-9491-b10a34e20c72
+
+
+
+
+ _80162b6f-70e1-44ef-9491-b10a34e20c72
+
+
+
+
+ _80162b6f-70e1-44ef-9491-b10a34e20c72
+
+
+
+
+ _80162b6f-70e1-44ef-9491-b10a34e20c72
+
+
+
+
+ _80162b6f-70e1-44ef-9491-b10a34e20c72
+
+
+
+
+ _80162b6f-70e1-44ef-9491-b10a34e20c72
+
+
+
+
+ _80162b6f-70e1-44ef-9491-b10a34e20c72
+
+
+
+
+ _80162b6f-70e1-44ef-9491-b10a34e20c72
+
+
+
+
+ _80162b6f-70e1-44ef-9491-b10a34e20c72
+
+
+
+
+ _80162b6f-70e1-44ef-9491-b10a34e20c72
+
+
+
+
+ _80162b6f-70e1-44ef-9491-b10a34e20c72
+
+
+
+
+ _80162b6f-70e1-44ef-9491-b10a34e20c72
+
+
+
+
+ _80162b6f-70e1-44ef-9491-b10a34e20c72
+
+
+
+
+ _80162b6f-70e1-44ef-9491-b10a34e20c72
+
+
+
+
+ _80162b6f-70e1-44ef-9491-b10a34e20c72
+
+
+
+
+ _80162b6f-70e1-44ef-9491-b10a34e20c72
+
+
+
+
+ _80162b6f-70e1-44ef-9491-b10a34e20c72
+
+
+
+
+ _80162b6f-70e1-44ef-9491-b10a34e20c72
+
+
+
+
+ _80162b6f-70e1-44ef-9491-b10a34e20c72
+
+
+
+
+ _80162b6f-70e1-44ef-9491-b10a34e20c72
+
+
+
+
+ _80162b6f-70e1-44ef-9491-b10a34e20c72
+
+
+
+
+ _80162b6f-70e1-44ef-9491-b10a34e20c72
+
+
+
+
+ _80162b6f-70e1-44ef-9491-b10a34e20c72
+
+
+
+
+ _80162b6f-70e1-44ef-9491-b10a34e20c72
+
+
+
+
+ _80162b6f-70e1-44ef-9491-b10a34e20c72
+
+
+
+
+ _80162b6f-70e1-44ef-9491-b10a34e20c72
+
+
+
+
+ _80162b6f-70e1-44ef-9491-b10a34e20c72
+
+
+
+
+ _80162b6f-70e1-44ef-9491-b10a34e20c72
+
+
+
+
+ _80162b6f-70e1-44ef-9491-b10a34e20c72
+
+
+
+
+ _80162b6f-70e1-44ef-9491-b10a34e20c72
+
+
+
+
+ _80162b6f-70e1-44ef-9491-b10a34e20c72
+
+
+
+
+ _80162b6f-70e1-44ef-9491-b10a34e20c72
+
+
+
+
+ _80162b6f-70e1-44ef-9491-b10a34e20c72
+
+
+
+
+ _80162b6f-70e1-44ef-9491-b10a34e20c72
+
+
+
+
+ _80162b6f-70e1-44ef-9491-b10a34e20c72
+
+
+
+
+ _80162b6f-70e1-44ef-9491-b10a34e20c72
+
+
+
+
+ _ee75e6f3-12f5-4cbf-9159-1515d345ad2a
+
+
+
+
+ _ee75e6f3-12f5-4cbf-9159-1515d345ad2a
+
+
+
+
+ _ee75e6f3-12f5-4cbf-9159-1515d345ad2a
+
+
+
+
+ _ee75e6f3-12f5-4cbf-9159-1515d345ad2a
+
+
+
+
+ _ee75e6f3-12f5-4cbf-9159-1515d345ad2a
+
+
+
+
+ _ee75e6f3-12f5-4cbf-9159-1515d345ad2a
+
+
+
+
+ _ee75e6f3-12f5-4cbf-9159-1515d345ad2a
+
+
+
+
+ _ee75e6f3-12f5-4cbf-9159-1515d345ad2a
+
+
+
+
+ _ee75e6f3-12f5-4cbf-9159-1515d345ad2a
+
+
+
+
+ _ee75e6f3-12f5-4cbf-9159-1515d345ad2a
+
+
+
+
+ _ee75e6f3-12f5-4cbf-9159-1515d345ad2a
+
+
+
+
+ _ee75e6f3-12f5-4cbf-9159-1515d345ad2a
+
+
+
+
+ _ee75e6f3-12f5-4cbf-9159-1515d345ad2a
+
+
+
+
+ _ee75e6f3-12f5-4cbf-9159-1515d345ad2a
+
+
+
+
+ _ee75e6f3-12f5-4cbf-9159-1515d345ad2a
+
+
+
+
+ _ee75e6f3-12f5-4cbf-9159-1515d345ad2a
+
+
+
+
+ _37894a8b-4c87-4b7c-9805-4f8b45c75ab8
+
+
+
+
+ _495ec1b7-e312-4731-8e1e-9db10a270334
+
+
+
+
+ _ee75e6f3-12f5-4cbf-9159-1515d345ad2a
+
+
+
+
+ _ee75e6f3-12f5-4cbf-9159-1515d345ad2a
+
+
+
+
+ _80162b6f-70e1-44ef-9491-b10a34e20c72
+
+
+
+
+ _86154e3e-5f07-415f-8d56-2f2d0257ab1d
+
+
+
+
+ _d1cbf7fe-5d6f-4d0a-b14a-c83e3b64477e_PICTURE
+
+
+
+
+
+
+ _ee75e6f3-12f5-4cbf-9159-1515d345ad2a
+
+
+
+
+ _17a56810-ddec-4c0b-9a7f-3c5994ee1ed9
+
+
+
+
+ _69eac2a3-f05d-46db-9e8f-036420b5f259
+
+
+
+
+ _80162b6f-70e1-44ef-9491-b10a34e20c72
+
+
+
+
+ _86154e3e-5f07-415f-8d56-2f2d0257ab1d
+
+
+
+
+ _684c6f8c-f7f3-42d3-b2f2-9934254a6196
+
+
+
+
+
+
+ _da621508-c6f0-473b-ae7a-be3f931bcd06
+
+
+
+
+ _d6331a38-d646-48ef-b822-37f00332ffa4
+
+
+ _f6889c51-ca2d-4728-83f4-f0f4479c5c27
+
+
+
+
+
+
+ _9c3fd553-2fa4-4b9b-86d7-6309ba4657a1
+
+
+
+
+ _ee75e6f3-12f5-4cbf-9159-1515d345ad2a
+
+
+
+
+ _69eac2a3-f05d-46db-9e8f-036420b5f259
+
+
+
+
+ _80162b6f-70e1-44ef-9491-b10a34e20c72
+
+
+
+
+ _80162b6f-70e1-44ef-9491-b10a34e20c72
+
+
+
+
+ _39f2dca9-78aa-40d7-a6ff-fc4089f3b466
+
+
+
+
+ _86154e3e-5f07-415f-8d56-2f2d0257ab1d
+
+
+
+
+ _ec11479c-b7e2-4727-9496-26f954ce58ab
+
+
+
+
+ _2d0d84a6-0780-4260-873f-860d22cc824d
+
+
+
+
+ _9881aa69-4adb-4bf4-94e3-234c7802496c
+
+
+ _9c98c320-17cd-480f-9a8e-da3ab36f7810
+
+
+
+
+
+
+ _80162b6f-70e1-44ef-9491-b10a34e20c72
+
+
+
+
+ _86154e3e-5f07-415f-8d56-2f2d0257ab1d
+
+
+
+
+
+
+
+
+ _ee75e6f3-12f5-4cbf-9159-1515d345ad2a
+
+
+
+
+ _37894a8b-4c87-4b7c-9805-4f8b45c75ab8
+
+
+
+
+ _ee75e6f3-12f5-4cbf-9159-1515d345ad2a
+
+
+
+
+ _ee75e6f3-12f5-4cbf-9159-1515d345ad2a
+
+
+
+
+ _37894a8b-4c87-4b7c-9805-4f8b45c75ab8
+
+
+
+
+ _ee75e6f3-12f5-4cbf-9159-1515d345ad2a
+
+
+
+
+ _ee75e6f3-12f5-4cbf-9159-1515d345ad2a
+
+
+
+
+
+
+
+
+ _c353bebc-3341-473c-a6cd-9d1771becd34
+
+
+
+
+ _9d5545c6-de3e-4099-9a3f-4ca45900a8f8
+
+
+
+
+ _01ddd33b-d2f5-447e-92c2-634d4b766357
+
+
+
+
+ _132ba67c-2939-4b23-9cca-5f3503af70f2
+
+
+
+
+ _822a3206-c701-4cfa-92db-acd9f5b82ce7
+
+
+
+
+ _2b3294ed-876a-4ae6-bc7e-3dd51f27798b
+
+
+
+
+ _e75de79f-e00c-48d9-a972-b4199e1f6042
+
+
+
+
+ _a3970b22-a021-4b91-9b88-e343737458e9_CREATEDTHRU
+
+
+ _f7bfb4bb-6554-431c-b5ff-b4547a0a6924
+
+
+
+
+
+
+ _822a3206-c701-4cfa-92db-acd9f5b82ce7
+
+
+
+
+ _2b3294ed-876a-4ae6-bc7e-3dd51f27798b
+
+
+
+
+ _7235e3bf-c4b3-4ca7-b0cc-6aaf5c372974
+
+
+
+
+ _822a3206-c701-4cfa-92db-acd9f5b82ce7
+
+
+
+
+ _822a3206-c701-4cfa-92db-acd9f5b82ce7
+
+
+
+
+ _132ba67c-2939-4b23-9cca-5f3503af70f2
+
+
+
+
+ _9d5545c6-de3e-4099-9a3f-4ca45900a8f8
+
+
+
+
+ _a3970b22-a021-4b91-9b88-e343737458e9_PICTURE
+
+
+
+
+
+
+ _822a3206-c701-4cfa-92db-acd9f5b82ce7
+
+
+
+
+ _c353bebc-3341-473c-a6cd-9d1771becd34
+
+
+
+
+ _01ddd33b-d2f5-447e-92c2-634d4b766357
+
+
+
+
+ _132ba67c-2939-4b23-9cca-5f3503af70f2
+
+
+
+
+ _b2ede47a-5f34-4f76-a005-dc0ac4af39bc
+
+
+
+
+ _822a3206-c701-4cfa-92db-acd9f5b82ce7
+
+
+
+
+ _01ddd33b-d2f5-447e-92c2-634d4b766357
+
+
+
+
+ _18cfbb86-dd63-417f-b419-cd9dab3f77c7
+
+
+
+
+ _bde48e36-75a6-4ba6-b0c5-41650ff2e989
+
+
+ _93f57381-bd97-42bd-9e1b-64f00089f54b
+
+
+
+
+
+
+ _e12e9510-336c-4859-a1a7-e7b4e23d5e0b
+
+
+
+
+ _939bc5fd-5a3f-4f9f-92a7-625369bff16f
+
+
+
+
+ _c353bebc-3341-473c-a6cd-9d1771becd34
+
+
+
+
+ _9d5545c6-de3e-4099-9a3f-4ca45900a8f8
+
+
+
+
+ _e12e9510-336c-4859-a1a7-e7b4e23d5e0b
+
+
+
+
+ _9d5545c6-de3e-4099-9a3f-4ca45900a8f8
+
+
+
+
+ _e12e9510-336c-4859-a1a7-e7b4e23d5e0b
+
+
+
+
+ _9d5545c6-de3e-4099-9a3f-4ca45900a8f8
+
+
+
+
+ _9d5545c6-de3e-4099-9a3f-4ca45900a8f8
+
+
+
+
+ _9d5545c6-de3e-4099-9a3f-4ca45900a8f8
+
+
+
+
+ _e12e9510-336c-4859-a1a7-e7b4e23d5e0b
+
+
+
+
+ _663bd2dc-4d74-42f1-b896-7d60a21baf1a
+
+
+
+
+ _a3970b22-a021-4b91-9b88-e343737458e9_TABLETYPE
+
+
+ _3f80b6ab-7190-46b9-94e2-4215fa8069cf
+
+
+
+
+
+
+ _132ba67c-2939-4b23-9cca-5f3503af70f2
+
+
+
+
+ _ad920993-841c-4599-b028-588eb7c47b27
+
+
+
+
+ _9d5545c6-de3e-4099-9a3f-4ca45900a8f8
+
+
+
+
+ _4c305993-5d02-456c-a087-2e6efdfc864c
+
+
+
+
+ _5f3a1108-a1b2-4c42-9847-de4057a838ce
+
+
+ _0783c027-1db3-42ed-a5d2-d7dbf4247a9e
+
+
+
+
+
+
+ _9d5545c6-de3e-4099-9a3f-4ca45900a8f8
+
+
+
+
+
+
+
+
+ _822a3206-c701-4cfa-92db-acd9f5b82ce7
+
+
+
+
+ _2b3294ed-876a-4ae6-bc7e-3dd51f27798b
+
+
+
+
+ _822a3206-c701-4cfa-92db-acd9f5b82ce7
+
+
+
+
+ _822a3206-c701-4cfa-92db-acd9f5b82ce7
+
+
+
+
+ _2b3294ed-876a-4ae6-bc7e-3dd51f27798b
+
+
+
+
+ _822a3206-c701-4cfa-92db-acd9f5b82ce7
+
+
+
+
+ _822a3206-c701-4cfa-92db-acd9f5b82ce7
+
+
+
+
+
+
+
+
+ _8689901f-2fde-4a7c-8d37-e6b8fb2474c1
+
+
+
+
+ _750bdaea-ecfc-4a18-93ce-3055aca07393
+
+
+
+
+ _750bdaea-ecfc-4a18-93ce-3055aca07393
+
+
+
+
+ _b8b152d1-15f4-4297-8507-09b6bb47a91f
+
+
+ --
+
+
+
+
+
+
+ _b8360cf7-6726-43c4-ac88-d0e7787c041d
+
+
+
+
+ _3e5ba69a-f08a-4053-876e-cb1cf3c77d4d
+
+
+
+
+ _f19df108-7669-4395-a2bf-54d448cfb47b
+
+
+
+
+ _6255801f-091d-4354-a68f-89cb40fd8f41_CREATEDTHRU
+
+
+ _ac1f713e-52fd-4a0b-a2f2-1a710d7a45d8
+
+
+
+
+
+
+ _750bdaea-ecfc-4a18-93ce-3055aca07393
+
+
+
+
+ _1895597b-a109-442b-b9b1-affb84029717
+
+
+ --
+
+
+
+
+
+
+ _fe806ebd-7598-4db3-9a62-c80e259fc2ab
+
+
+
+
+ _3f4f691c-a3f8-4490-bcd2-d12c6548f917
+
+
+ _8587664f-2478-4038-8868-1ab0bb21f375
+
+
+
+
+
+
+ _f4da0c16-1ec4-485d-8f79-0fa7a107e1ef
+
+
+
+
+ _e51167a3-70ea-43a8-9c36-9e2ee1fc5d44
+
+
+ _720a01a6-bf86-41bb-9254-e267863d5c12
+
+
+
+
+
+
+ _b3a9c2d4-d305-4e34-a195-8a4ab3b2548d
+
+
+
+
+ _0bffcb42-ed13-4c96-8c8a-12200ba9f9e8
+
+
+ _902ee09e-9b82-4c5f-abb4-332dbafd1636
+
+
+
+
+
+
+ _3eeea3e9-a999-4e9a-a08d-051dab4d921d
+
+
+
+
+ _c620ff22-9fdd-4d71-862f-2cdfcac33246
+
+
+ _532e432e-ac07-4a9d-841c-9f890d9ffe26
+
+
+
+
+
+
+ _e8221a4a-a5e3-4ebe-b928-644a097751f0
+
+
+
+
+ _c9bcd7cb-2d33-4dbb-9fdc-1e8c14d95267
+
+
+ _a8a6d072-25e3-4764-a579-a4855d805899
+
+
+
+
+
+
+ _b8360cf7-6726-43c4-ac88-d0e7787c041d
+
+
+
+
+ _3e5ba69a-f08a-4053-876e-cb1cf3c77d4d
+
+
+
+
+ _b8360cf7-6726-43c4-ac88-d0e7787c041d
+
+
+
+
+ _b8360cf7-6726-43c4-ac88-d0e7787c041d
+
+
+
+
+ _750bdaea-ecfc-4a18-93ce-3055aca07393
+
+
+
+
+ _06b93fc4-accf-469f-8560-c02f9e10af88
+
+
+
+
+ _5ad2ed4e-e7be-4b77-924c-d0c2976a4ef6
+
+
+ _73cd3c0d-3a61-47aa-803a-d1d8e787eea8
+
+
+
+
+
+
+ _80f34405-341c-43e1-b865-199baf35afdd
+
+
+
+
+ _b8360cf7-6726-43c4-ac88-d0e7787c041d
+
+
+
+
+ _fe806ebd-7598-4db3-9a62-c80e259fc2ab
+
+
+
+
+ _530bd0b2-8eab-48c5-8c76-8335819dbc08
+
+
+ _8587664f-2478-4038-8868-1ab0bb21f375
+
+
+
+
+
+
+ _b3a9c2d4-d305-4e34-a195-8a4ab3b2548d
+
+
+
+
+ _cd4f05b7-e36d-41d8-a1fe-58c4a69f9109
+
+
+ _902ee09e-9b82-4c5f-abb4-332dbafd1636
+
+
+
+
+
+
+ _f4da0c16-1ec4-485d-8f79-0fa7a107e1ef
+
+
+
+
+ _6c8c275f-8b83-4276-9790-1c2b044738b9
+
+
+ _720a01a6-bf86-41bb-9254-e267863d5c12
+
+
+
+
+
+
+ _3eeea3e9-a999-4e9a-a08d-051dab4d921d
+
+
+
+
+ _a48ef6f1-3fd5-4ffb-be32-27737bb80a4d
+
+
+ _532e432e-ac07-4a9d-841c-9f890d9ffe26
+
+
+
+
+
+
+ _e8221a4a-a5e3-4ebe-b928-644a097751f0
+
+
+
+
+ _d465000b-a5ef-4cdb-a702-a836d4827aa5
+
+
+ _a8a6d072-25e3-4764-a579-a4855d805899
+
+
+
+
+
+
+ _5a9493e2-9c89-4a31-823b-42b5b628ce44
+
+
+
+
+ _b0f2ec2d-c2c4-4396-a682-6085f6623564
+
+
+ _5f412e4d-a8be-4ee1-824c-2761e100726b
+
+
+
+
+
+
+ _3bbe546c-ecfe-442b-8afa-56564a275ae5
+
+
+
+
+ _e8d47f65-c244-48f0-95c2-4a4baf2e49a3
+
+
+
+
+ _8689901f-2fde-4a7c-8d37-e6b8fb2474c1
+
+
+
+
+ _07b4e5ce-18ef-49bf-8bc3-40e6631f8add
+
+
+
+
+ _3bbe546c-ecfe-442b-8afa-56564a275ae5
+
+
+
+
+ _07b4e5ce-18ef-49bf-8bc3-40e6631f8add
+
+
+
+
+ _3bbe546c-ecfe-442b-8afa-56564a275ae5
+
+
+
+
+ _07b4e5ce-18ef-49bf-8bc3-40e6631f8add
+
+
+
+
+ _07b4e5ce-18ef-49bf-8bc3-40e6631f8add
+
+
+
+
+ _07b4e5ce-18ef-49bf-8bc3-40e6631f8add
+
+
+
+
+ _3bbe546c-ecfe-442b-8afa-56564a275ae5
+
+
+
+
+ _88be8c31-4ca1-4f74-9d1a-588fd80b0ea1
+
+
+
+
+ _6255801f-091d-4354-a68f-89cb40fd8f41_TABLETYPE
+
+
+ _005c348b-140e-42b6-ab6d-21995871f154
+
+
+
+
+
+
+ _07b4e5ce-18ef-49bf-8bc3-40e6631f8add
+
+
+
+
+
+
+
+
+ _b8360cf7-6726-43c4-ac88-d0e7787c041d
+
+
+
+
+ _3e5ba69a-f08a-4053-876e-cb1cf3c77d4d
+
+
+
+
+ _b8360cf7-6726-43c4-ac88-d0e7787c041d
+
+
+
+
+ _b8360cf7-6726-43c4-ac88-d0e7787c041d
+
+
+
+
+ _3e5ba69a-f08a-4053-876e-cb1cf3c77d4d
+
+
+
+
+ _b8360cf7-6726-43c4-ac88-d0e7787c041d
+
+
+
+
+ _b8360cf7-6726-43c4-ac88-d0e7787c041d
+
+
+
+
+
+
+
+
+ _68eb82f0-f0cf-4206-8972-3136c1eacbfd
+
+
+
+
+ _236c70fe-82af-4234-808c-b864aed5cefe
+
+
+
+
+ _5b2fc301-28d1-44c5-a6e9-177f69f86a21
+
+
+
+
+ _0bd3016d-daa6-4af1-b0d7-06fde0e3a45b
+
+
+
+
+ _9772572b-b9dd-4176-965d-2035109e5be7_CREATEDTHRU
+
+
+ _43589df7-6074-4cd6-a93d-cdbe91ea4601
+
+
+
+
+
+
+ _236c70fe-82af-4234-808c-b864aed5cefe
+
+
+
+
+ _5b2fc301-28d1-44c5-a6e9-177f69f86a21
+
+
+
+
+ _236c70fe-82af-4234-808c-b864aed5cefe
+
+
+
+
+ _236c70fe-82af-4234-808c-b864aed5cefe
+
+
+
+
+ _d55f50b0-710a-4dce-a837-4781e2d9da79
+
+
+
+
+ _a82f72c6-0878-44af-9ec2-4d7fce535902
+
+
+
+
+
+
+
+
+ _236c70fe-82af-4234-808c-b864aed5cefe
+
+
+
+
+ _5b2fc301-28d1-44c5-a6e9-177f69f86a21
+
+
+
+
+ _236c70fe-82af-4234-808c-b864aed5cefe
+
+
+
+
+ _236c70fe-82af-4234-808c-b864aed5cefe
+
+
+
+
+ _5b2fc301-28d1-44c5-a6e9-177f69f86a21
+
+
+
+
+ _236c70fe-82af-4234-808c-b864aed5cefe
+
+
+
+
+ _236c70fe-82af-4234-808c-b864aed5cefe
+
+
+
+
+
+
+
+
+ _32a00585-16ce-4f36-ab6b-aae8a6b5680f
+
+
+
+
+ _0c92237f-9811-4f55-b697-df3efa11cf51
+
+
+
+
+ _8bfc3373-c05a-4ac9-9f3e-78cefe60bd01
+
+
+
+
+ _721de354-f14e-4b14-b6df-0b142caeb7ce
+
+
+
+
+ _659b5d67-bd3e-4341-9c13-e0aab523b4ec_CREATEDTHRU
+
+
+ _56380d9b-b034-4bf2-98a2-2d6b7d6495d5
+
+
+
+
+
+
+ _0c92237f-9811-4f55-b697-df3efa11cf51
+
+
+
+
+ _0c92237f-9811-4f55-b697-df3efa11cf51
+
+
+
+
+ _0c92237f-9811-4f55-b697-df3efa11cf51
+
+
+
+
+ _0c92237f-9811-4f55-b697-df3efa11cf51
+
+
+
+
+ _0c92237f-9811-4f55-b697-df3efa11cf51
+
+
+
+
+ _8bfc3373-c05a-4ac9-9f3e-78cefe60bd01
+
+
+
+
+ _0c92237f-9811-4f55-b697-df3efa11cf51
+
+
+
+
+ _0c92237f-9811-4f55-b697-df3efa11cf51
+
+
+
+
+ _df001e20-7249-4bc8-a771-ca979288e74f
+
+
+
+
+ _0c92237f-9811-4f55-b697-df3efa11cf51
+
+
+
+
+ _0c92237f-9811-4f55-b697-df3efa11cf51
+
+
+
+
+ _3cb3d477-79ee-4ba8-b1e4-b6a5595303aa
+
+
+
+
+
+
+
+
+ _0c92237f-9811-4f55-b697-df3efa11cf51
+
+
+
+
+ _8bfc3373-c05a-4ac9-9f3e-78cefe60bd01
+
+
+
+
+ _0c92237f-9811-4f55-b697-df3efa11cf51
+
+
+
+
+ _0c92237f-9811-4f55-b697-df3efa11cf51
+
+
+
+
+ _8bfc3373-c05a-4ac9-9f3e-78cefe60bd01
+
+
+
+
+ _0c92237f-9811-4f55-b697-df3efa11cf51
+
+
+
+
+ _0c92237f-9811-4f55-b697-df3efa11cf51
+
+
+
+
+ _0c92237f-9811-4f55-b697-df3efa11cf51
+
+
+
+
+
+
+
+
+ _af2c9e93-2dda-41c1-ab20-02445b26f694
+
+
+
+
+ _1ee55e1e-51eb-45d0-9a36-b2a30c97bbca
+
+
+
+
+ _3bedac02-881a-4140-85b8-8b000f680c7d
+
+
+
+
+ _591e208d-2412-4eed-bf9b-0e4c16c0608a
+
+
+
+
+ _ce281e4e-7bb0-429d-a1de-f2e6233b86de_CREATEDTHRU
+
+
+ _85e4b47b-6aa0-4028-b5dd-400ff5880d14
+
+
+
+
+
+
+ _1ee55e1e-51eb-45d0-9a36-b2a30c97bbca
+
+
+
+
+ _1ee55e1e-51eb-45d0-9a36-b2a30c97bbca
+
+
+
+
+ _1ee55e1e-51eb-45d0-9a36-b2a30c97bbca
+
+
+
+
+ _1ee55e1e-51eb-45d0-9a36-b2a30c97bbca
+
+
+
+
+ _1ee55e1e-51eb-45d0-9a36-b2a30c97bbca
+
+
+
+
+ _3bedac02-881a-4140-85b8-8b000f680c7d
+
+
+
+
+ _1ee55e1e-51eb-45d0-9a36-b2a30c97bbca
+
+
+
+
+ _1ee55e1e-51eb-45d0-9a36-b2a30c97bbca
+
+
+
+
+ _72a4cdd8-e9ab-45f9-96e7-9229807d32cd
+
+
+
+
+ _1ee55e1e-51eb-45d0-9a36-b2a30c97bbca
+
+
+
+
+ _1ee55e1e-51eb-45d0-9a36-b2a30c97bbca
+
+
+
+
+ _72a4cdd8-e9ab-45f9-96e7-9229807d32cd
+
+
+
+
+ _c77416b4-9cc0-42e1-92d0-01ecdc202016
+
+
+
+
+
+
+
+
+ _1ee55e1e-51eb-45d0-9a36-b2a30c97bbca
+
+
+
+
+ _3bedac02-881a-4140-85b8-8b000f680c7d
+
+
+
+
+ _1ee55e1e-51eb-45d0-9a36-b2a30c97bbca
+
+
+
+
+ _1ee55e1e-51eb-45d0-9a36-b2a30c97bbca
+
+
+
+
+ _3bedac02-881a-4140-85b8-8b000f680c7d
+
+
+
+
+ _1ee55e1e-51eb-45d0-9a36-b2a30c97bbca
+
+
+
+
+ _1ee55e1e-51eb-45d0-9a36-b2a30c97bbca
+
+
+
+
+ _1ee55e1e-51eb-45d0-9a36-b2a30c97bbca
+
+
+
+
+
+
+
+
+ _9c5844f5-9138-48d0-a28a-3af5d894a98e
+
+
+
+
+ _33aca405-9cb8-43b4-9e43-26479cd7e7bd
+
+
+
+
+ _34c9fd07-f824-4184-9794-f51cde622d14
+
+
+
+
+ _5c559e5d-93ca-4175-bc43-b730a51ede53
+
+
+
+
+ _68ba0236-ffb5-4b62-825a-f55dae08b53f_CREATEDTHRU
+
+
+ _d728fb7a-b89c-4f7b-81e9-41402b1a59a9
+
+
+
+
+
+
+ _33aca405-9cb8-43b4-9e43-26479cd7e7bd
+
+
+
+
+ _33aca405-9cb8-43b4-9e43-26479cd7e7bd
+
+
+
+
+ _33aca405-9cb8-43b4-9e43-26479cd7e7bd
+
+
+
+
+ _33aca405-9cb8-43b4-9e43-26479cd7e7bd
+
+
+
+
+ _33aca405-9cb8-43b4-9e43-26479cd7e7bd
+
+
+
+
+ _34c9fd07-f824-4184-9794-f51cde622d14
+
+
+
+
+ _33aca405-9cb8-43b4-9e43-26479cd7e7bd
+
+
+
+
+ _33aca405-9cb8-43b4-9e43-26479cd7e7bd
+
+
+
+
+ _ff80ff06-2bb3-4a62-8fec-e2dbaeef1b7d
+
+
+
+
+ _33aca405-9cb8-43b4-9e43-26479cd7e7bd
+
+
+
+
+ _33aca405-9cb8-43b4-9e43-26479cd7e7bd
+
+
+
+
+ _33aca405-9cb8-43b4-9e43-26479cd7e7bd
+
+
+
+
+ _33aca405-9cb8-43b4-9e43-26479cd7e7bd
+
+
+
+
+ _e65e0dd4-628a-4d5a-b5fc-0729df606e02
+
+
+
+
+
+
+
+
+ _33aca405-9cb8-43b4-9e43-26479cd7e7bd
+
+
+
+
+ _34c9fd07-f824-4184-9794-f51cde622d14
+
+
+
+
+ _33aca405-9cb8-43b4-9e43-26479cd7e7bd
+
+
+
+
+ _33aca405-9cb8-43b4-9e43-26479cd7e7bd
+
+
+
+
+ _34c9fd07-f824-4184-9794-f51cde622d14
+
+
+
+
+ _33aca405-9cb8-43b4-9e43-26479cd7e7bd
+
+
+
+
+ _33aca405-9cb8-43b4-9e43-26479cd7e7bd
+
+
+
+
+ _33aca405-9cb8-43b4-9e43-26479cd7e7bd
+
+
+
+
+
+
+
+
+ _c8b756ec-56d9-4f83-be4a-be20247b95a2
+
+
+
+
+ _78bae8d6-f699-45af-bfcd-d664eced0af1
+
+
+
+
+ _a4deeb85-0ff8-4ce1-b2a6-b4d4e6699e86
+
+
+
+
+ _2ad86880-8af7-4140-85b0-4bf89db5fe2e
+
+
+
+
+ _6514bf1e-b7ac-416f-85ef-f8d06cffd1ab_CREATEDTHRU
+
+
+ _097a0755-1c07-4a3b-b8f4-011a7f43253f
+
+
+
+
+
+
+ _78bae8d6-f699-45af-bfcd-d664eced0af1
+
+
+
+
+ _a4deeb85-0ff8-4ce1-b2a6-b4d4e6699e86
+
+
+
+
+ _78bae8d6-f699-45af-bfcd-d664eced0af1
+
+
+
+
+ _78bae8d6-f699-45af-bfcd-d664eced0af1
+
+
+
+
+ _df0113d6-58d3-4031-80aa-d255d333ed38
+
+
+
+
+ _b7c5a8f9-f343-4dc9-9e6a-d52d7471115f
+
+
+
+
+
+
+
+
+ _78bae8d6-f699-45af-bfcd-d664eced0af1
+
+
+
+
+ _a4deeb85-0ff8-4ce1-b2a6-b4d4e6699e86
+
+
+
+
+ _78bae8d6-f699-45af-bfcd-d664eced0af1
+
+
+
+
+ _78bae8d6-f699-45af-bfcd-d664eced0af1
+
+
+
+
+ _a4deeb85-0ff8-4ce1-b2a6-b4d4e6699e86
+
+
+
+
+ _78bae8d6-f699-45af-bfcd-d664eced0af1
+
+
+
+
+ _78bae8d6-f699-45af-bfcd-d664eced0af1
+
+
+
+
+
+
+
+
+ _402cdd2b-9ca4-4cc1-a398-f9c091a5a0e2
+
+
+
+
+ _16a261a3-1f4e-465c-9bc0-d66e0b4e7939
+
+
+
+
+ _c5490f15-daa0-4e29-a3d4-7b4a0b171e82
+
+
+
+
+ _f4116fd3-b7ef-46d1-afc1-2f3a3ce23d95
+
+
+
+
+ _bfc1a44e-d113-440f-b9c5-17063276417d_CREATEDTHRU
+
+
+ _f1fcad3c-dd35-4ebb-80ae-f1d5e4830bae
+
+
+
+
+
+
+ _16a261a3-1f4e-465c-9bc0-d66e0b4e7939
+
+
+
+
+ _16a261a3-1f4e-465c-9bc0-d66e0b4e7939
+
+
+
+
+ _16a261a3-1f4e-465c-9bc0-d66e0b4e7939
+
+
+
+
+ _16a261a3-1f4e-465c-9bc0-d66e0b4e7939
+
+
+
+
+ _16a261a3-1f4e-465c-9bc0-d66e0b4e7939
+
+
+
+
+ _c5490f15-daa0-4e29-a3d4-7b4a0b171e82
+
+
+
+
+ _16a261a3-1f4e-465c-9bc0-d66e0b4e7939
+
+
+
+
+ _16a261a3-1f4e-465c-9bc0-d66e0b4e7939
+
+
+
+
+ _6f0a087d-fcb9-4779-ad47-c1fc42dd46a7
+
+
+
+
+ _16a261a3-1f4e-465c-9bc0-d66e0b4e7939
+
+
+
+
+ _16a261a3-1f4e-465c-9bc0-d66e0b4e7939
+
+
+
+
+ _16a261a3-1f4e-465c-9bc0-d66e0b4e7939
+
+
+
+
+ _16a261a3-1f4e-465c-9bc0-d66e0b4e7939
+
+
+
+
+ _5a4c4e35-38e4-477f-bcdb-b5c19a47cc82
+
+
+
+
+
+
+
+
+ _16a261a3-1f4e-465c-9bc0-d66e0b4e7939
+
+
+
+
+ _c5490f15-daa0-4e29-a3d4-7b4a0b171e82
+
+
+
+
+ _16a261a3-1f4e-465c-9bc0-d66e0b4e7939
+
+
+
+
+ _16a261a3-1f4e-465c-9bc0-d66e0b4e7939
+
+
+
+
+ _c5490f15-daa0-4e29-a3d4-7b4a0b171e82
+
+
+
+
+ _16a261a3-1f4e-465c-9bc0-d66e0b4e7939
+
+
+
+
+ _16a261a3-1f4e-465c-9bc0-d66e0b4e7939
+
+
+
+
+ _16a261a3-1f4e-465c-9bc0-d66e0b4e7939
+
+
+
+
+
+
+
+
+ _55c2126b-e2f4-47d3-b767-441cb966d163
+
+
+
+
+ _36744c97-c0a6-4d37-816b-e7a4f17f2205
+
+
+
+
+ _4642a0e3-6a03-46f5-a748-1fc10c9b3124
+
+
+
+
+ _ec467a15-0877-4f50-9263-6824e5ad2f33
+
+
+
+
+ _93fdcb78-c12f-4273-ab3c-650594472e96_CREATEDTHRU
+
+
+ _f918a8da-a8a1-4a9d-951c-72dac4a017fd
+
+
+
+
+
+
+ _36744c97-c0a6-4d37-816b-e7a4f17f2205
+
+
+
+
+ _4642a0e3-6a03-46f5-a748-1fc10c9b3124
+
+
+
+
+ _36744c97-c0a6-4d37-816b-e7a4f17f2205
+
+
+
+
+ _36744c97-c0a6-4d37-816b-e7a4f17f2205
+
+
+
+
+ _c345953e-3e17-4613-848a-1ef061d6db41
+
+
+
+
+ _8b805239-c8de-4db6-b414-93337b563e08
+
+
+
+
+
+
+
+
+ _36744c97-c0a6-4d37-816b-e7a4f17f2205
+
+
+
+
+ _4642a0e3-6a03-46f5-a748-1fc10c9b3124
+
+
+
+
+ _36744c97-c0a6-4d37-816b-e7a4f17f2205
+
+
+
+
+ _36744c97-c0a6-4d37-816b-e7a4f17f2205
+
+
+
+
+ _4642a0e3-6a03-46f5-a748-1fc10c9b3124
+
+
+
+
+ _36744c97-c0a6-4d37-816b-e7a4f17f2205
+
+
+
+
+ _36744c97-c0a6-4d37-816b-e7a4f17f2205
+
+
+
+
+
+
+
+
+ _5f1deeab-8b0c-4f26-9846-f7b3dd72e173
+
+
+
+
+ _98d41281-cdaa-4379-a3f1-2cd892ca062d
+
+
+
+
+ _02eafdfa-6a08-4811-a0ab-9d6884eafd53
+
+
+
+
+ _0b6b54c1-bcc9-476e-9789-e46907ff741a
+
+
+
+
+ _387fb54a-f93f-455b-91e9-c34908303d73_CREATEDTHRU
+
+
+ _ce58b036-de59-41ac-bebe-469d84713a68
+
+
+
+
+
+
+ _98d41281-cdaa-4379-a3f1-2cd892ca062d
+
+
+
+
+ _02eafdfa-6a08-4811-a0ab-9d6884eafd53
+
+
+
+
+ _98d41281-cdaa-4379-a3f1-2cd892ca062d
+
+
+
+
+ _98d41281-cdaa-4379-a3f1-2cd892ca062d
+
+
+
+
+ _c8995aaf-652a-47ec-87e8-c4d98d33776a
+
+
+
+
+ _72afd989-a4ea-4be8-ba0a-f8fb0cd0aa86
+
+
+
+
+
+
+
+
+ _98d41281-cdaa-4379-a3f1-2cd892ca062d
+
+
+
+
+ _02eafdfa-6a08-4811-a0ab-9d6884eafd53
+
+
+
+
+ _98d41281-cdaa-4379-a3f1-2cd892ca062d
+
+
+
+
+ _98d41281-cdaa-4379-a3f1-2cd892ca062d
+
+
+
+
+ _02eafdfa-6a08-4811-a0ab-9d6884eafd53
+
+
+
+
+ _98d41281-cdaa-4379-a3f1-2cd892ca062d
+
+
+
+
+ _98d41281-cdaa-4379-a3f1-2cd892ca062d
+
+
+
+
+
+
+
+
+ _b98067f1-55e4-44e2-8f4a-a37fc6f439d9
+
+
+
+
+ _9725fb48-d8cb-4e7e-af2e-2c7eb740de2e
+
+
+
+
+ _19c25103-9f44-440d-9141-8f61e2349920
+
+
+
+
+ _a85eb354-8dbe-47fa-85d3-bb4ad821fe39
+
+
+
+
+ _417bdd8a-e990-4331-ba37-cc354b818bde_CREATEDTHRU
+
+
+ _891a2fcc-4f43-407f-80ef-e74ce06b1e8d
+
+
+
+
+
+
+ _9725fb48-d8cb-4e7e-af2e-2c7eb740de2e
+
+
+
+
+ _19c25103-9f44-440d-9141-8f61e2349920
+
+
+
+
+ _9725fb48-d8cb-4e7e-af2e-2c7eb740de2e
+
+
+
+
+ _9725fb48-d8cb-4e7e-af2e-2c7eb740de2e
+
+
+
+
+ _b20ee3d8-42cb-4719-920f-ef831e55e8f8
+
+
+
+
+ _fe902261-d5ab-49b3-b683-0b33914ee08f
+
+
+
+
+
+
+
+
+ _9725fb48-d8cb-4e7e-af2e-2c7eb740de2e
+
+
+
+
+ _19c25103-9f44-440d-9141-8f61e2349920
+
+
+
+
+ _9725fb48-d8cb-4e7e-af2e-2c7eb740de2e
+
+
+
+
+ _9725fb48-d8cb-4e7e-af2e-2c7eb740de2e
+
+
+
+
+ _19c25103-9f44-440d-9141-8f61e2349920
+
+
+
+
+ _9725fb48-d8cb-4e7e-af2e-2c7eb740de2e
+
+
+
+
+ _9725fb48-d8cb-4e7e-af2e-2c7eb740de2e
+
+
+
+
+
+
+
+
+ _a26d0227-f3c5-48d2-b688-edaa680c76b2
+
+
+
+
+ _d73c6ac7-2049-4e66-a385-1b87f0f9d8d9
+
+
+
+
+ _b1e2eeb4-d749-4b1f-a388-c0fd2f59a243
+
+
+
+
+ _2c6d2533-9be2-4bb8-adef-65a72c76b0a4
+
+
+
+
+ _7f123ed4-98dd-4eed-b96a-edc8828963a8_CREATEDTHRU
+
+
+ _3652b128-76e4-4e0e-aeec-1c284925f741
+
+
+
+
+
+
+ _d73c6ac7-2049-4e66-a385-1b87f0f9d8d9
+
+
+
+
+ _b1e2eeb4-d749-4b1f-a388-c0fd2f59a243
+
+
+
+
+ _d73c6ac7-2049-4e66-a385-1b87f0f9d8d9
+
+
+
+
+ _d73c6ac7-2049-4e66-a385-1b87f0f9d8d9
+
+
+
+
+ _bde5b563-aea4-4b26-97d4-6bf29a833480
+
+
+
+
+ _13260461-4efb-41d8-b34c-d96c4fa34c95
+
+
+
+
+
+
+
+
+ _d73c6ac7-2049-4e66-a385-1b87f0f9d8d9
+
+
+
+
+ _b1e2eeb4-d749-4b1f-a388-c0fd2f59a243
+
+
+
+
+ _d73c6ac7-2049-4e66-a385-1b87f0f9d8d9
+
+
+
+
+ _d73c6ac7-2049-4e66-a385-1b87f0f9d8d9
+
+
+
+
+ _b1e2eeb4-d749-4b1f-a388-c0fd2f59a243
+
+
+
+
+ _d73c6ac7-2049-4e66-a385-1b87f0f9d8d9
+
+
+
+
+ _d73c6ac7-2049-4e66-a385-1b87f0f9d8d9
+
+
+
+
+
+
+
+
+ _566a6afa-bfaf-4de8-8d74-58588b5bec6a
+
+
+
+
+ _1c9078ce-c7c5-4a66-b40c-2c8b8a525e9f
+
+
+
+
+ _317d8419-2449-42b6-b8d2-0bec2e758a51
+
+
+
+
+ _0f09b17a-ccbf-4e76-bac9-93d04b295f05
+
+
+
+
+ _f7e5ace6-b5b7-432f-a633-3d470ea4311e_CREATEDTHRU
+
+
+ _b31fbb88-9c63-45cf-874e-4cb954b92382
+
+
+
+
+
+
+ _1c9078ce-c7c5-4a66-b40c-2c8b8a525e9f
+
+
+
+
+ _1c9078ce-c7c5-4a66-b40c-2c8b8a525e9f
+
+
+
+
+ _1c9078ce-c7c5-4a66-b40c-2c8b8a525e9f
+
+
+
+
+ _1c9078ce-c7c5-4a66-b40c-2c8b8a525e9f
+
+
+
+
+ _1c9078ce-c7c5-4a66-b40c-2c8b8a525e9f
+
+
+
+
+ _317d8419-2449-42b6-b8d2-0bec2e758a51
+
+
+
+
+ _1c9078ce-c7c5-4a66-b40c-2c8b8a525e9f
+
+
+
+
+ _1c9078ce-c7c5-4a66-b40c-2c8b8a525e9f
+
+
+
+
+ _b609ee39-c017-4fe2-bdc4-7b7294accc33
+
+
+
+
+ _1c9078ce-c7c5-4a66-b40c-2c8b8a525e9f
+
+
+
+
+ _1c9078ce-c7c5-4a66-b40c-2c8b8a525e9f
+
+
+
+
+ _1253c271-80ac-4e3b-b79e-f175f0576e87
+
+
+
+
+
+
+
+
+ _1c9078ce-c7c5-4a66-b40c-2c8b8a525e9f
+
+
+
+
+ _317d8419-2449-42b6-b8d2-0bec2e758a51
+
+
+
+
+ _1c9078ce-c7c5-4a66-b40c-2c8b8a525e9f
+
+
+
+
+ _1c9078ce-c7c5-4a66-b40c-2c8b8a525e9f
+
+
+
+
+ _317d8419-2449-42b6-b8d2-0bec2e758a51
+
+
+
+
+ _1c9078ce-c7c5-4a66-b40c-2c8b8a525e9f
+
+
+
+
+ _1c9078ce-c7c5-4a66-b40c-2c8b8a525e9f
+
+
+
+
+ _1c9078ce-c7c5-4a66-b40c-2c8b8a525e9f
+
+
+
+
+
+
+
+
+ _7f123ed4-98dd-4eed-b96a-edc8828963a8
+
+
+
+
+ _7f123ed4-98dd-4eed-b96a-edc8828963a8_ABSOLUTENUMBER
+
+
+
+
+ _7f123ed4-98dd-4eed-b96a-edc8828963a8_CREATEDBY
+
+
+ susan
+
+
+
+
+ _7f123ed4-98dd-4eed-b96a-edc8828963a8_CREATEDON
+
+
+
+
+ _7f123ed4-98dd-4eed-b96a-edc8828963a8_LASTMODIFIEDBY
+
+
+ susan
+
+
+
+
+ _7f123ed4-98dd-4eed-b96a-edc8828963a8_LASTMODIFIEDON
+
+
+
+
+ _7f123ed4-98dd-4eed-b96a-edc8828963a8_OBJECTHEADING
+
+
+ Carbon Trust Standard
+
+
+
+
+
+
+ _7f123ed4-98dd-4eed-b96a-edc8828963a8
+
+
+
+
+ _7f123ed4-98dd-4eed-b96a-edc8828963a8_ABSOLUTENUMBER
+
+
+
+
+ _7f123ed4-98dd-4eed-b96a-edc8828963a8_CREATEDBY
+
+
+ susan
+
+
+
+
+ _7f123ed4-98dd-4eed-b96a-edc8828963a8_CREATEDON
+
+
+
+
+ _7f123ed4-98dd-4eed-b96a-edc8828963a8_LASTMODIFIEDBY
+
+
+ susan
+
+
+
+
+ _7f123ed4-98dd-4eed-b96a-edc8828963a8_LASTMODIFIEDON
+
+
+
+
+ _7f123ed4-98dd-4eed-b96a-edc8828963a8_OBJECTHEADING
+
+
+ CRC and CCA
+
+
+
+
+
+
+ _7f123ed4-98dd-4eed-b96a-edc8828963a8
+
+
+
+
+ _7f123ed4-98dd-4eed-b96a-edc8828963a8_ABSOLUTENUMBER
+
+
+
+
+ _7f123ed4-98dd-4eed-b96a-edc8828963a8_CREATEDBY
+
+
+ susan
+
+
+
+
+ _7f123ed4-98dd-4eed-b96a-edc8828963a8_CREATEDON
+
+
+
+
+ _7f123ed4-98dd-4eed-b96a-edc8828963a8_LASTMODIFIEDBY
+
+
+ susan
+
+
+
+
+ _7f123ed4-98dd-4eed-b96a-edc8828963a8_LASTMODIFIEDON
+
+
+
+
+ _7f123ed4-98dd-4eed-b96a-edc8828963a8_OBJECTHEADING
+
+
+ Picture or Whitepaper
+
+
+
+
+
+
+
+
+
+
+ _22020a9d-bd6d-45e9-9303-69dc17cf7c97
+
+
+
+
+ _7f123ed4-98dd-4eed-b96a-edc8828963a8_CREATEDBY-DOORS-MODULE
+
+
+ susan
+
+
+
+
+ _7f123ed4-98dd-4eed-b96a-edc8828963a8_CREATEDON-DOORS-MODULE
+
+
+
+
+ _22020a9d-bd6d-45e9-9303-69dc17cf7c97_DESCRIPTION-DOORS-MODULE
+
+
+ References to external governance standards
+
+
+
+
+ _7f123ed4-98dd-4eed-b96a-edc8828963a8_LASTMODIFIEDBY-DOORS-MODULE
+
+
+ susan
+
+
+
+
+ _7f123ed4-98dd-4eed-b96a-edc8828963a8_LASTMODIFIEDON-DOORS-MODULE
+
+
+
+
+ _22020a9d-bd6d-45e9-9303-69dc17cf7c97_NAME-DOORS-MODULE
+
+
+ AMR Standards Documents
+
+
+
+
+ _22020a9d-bd6d-45e9-9303-69dc17cf7c97_PREFIX-DOORS-MODULE
+
+
+ AMR-REF-
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/tests/integration/examples/02_read_reqif/script.py b/tests/integration/examples/02_read_reqif/script.py
new file mode 100644
index 0000000..3d05872
--- /dev/null
+++ b/tests/integration/examples/02_read_reqif/script.py
@@ -0,0 +1,13 @@
+# ruff: noqa: T201
+from reqif.parser import ReqIFParser
+
+input_file_path = "input.reqif"
+
+reqif_bundle = ReqIFParser.parse(input_file_path)
+for specification in reqif_bundle.core_content.req_if_content.specifications:
+ print(specification.long_name)
+
+ for current_hierarchy in reqif_bundle.iterate_specification_hierarchy(
+ specification
+ ):
+ print(current_hierarchy)
diff --git a/tests/integration/examples/02_read_reqif/test.itest b/tests/integration/examples/02_read_reqif/test.itest
new file mode 100644
index 0000000..ea542ae
--- /dev/null
+++ b/tests/integration/examples/02_read_reqif/test.itest
@@ -0,0 +1 @@
+RUN: python %S/script.py
diff --git a/tests/integration/examples/03_read_reqifz/input.reqifz b/tests/integration/examples/03_read_reqifz/input.reqifz
new file mode 100644
index 0000000..bd54d17
Binary files /dev/null and b/tests/integration/examples/03_read_reqifz/input.reqifz differ
diff --git a/tests/integration/examples/03_read_reqifz/script.py b/tests/integration/examples/03_read_reqifz/script.py
new file mode 100644
index 0000000..ee58c10
--- /dev/null
+++ b/tests/integration/examples/03_read_reqifz/script.py
@@ -0,0 +1,15 @@
+# ruff: noqa: T201
+from reqif.parser import ReqIFZParser
+
+input_file_path = "input.reqifz"
+
+reqifz_bundle = ReqIFZParser.parse(input_file_path)
+for reqif_bundle_file, reqif_bundle in reqifz_bundle.reqif_bundles.items():
+ print(f"Bundle: {reqif_bundle_file} {reqif_bundle}")
+ for (
+ specification
+ ) in reqif_bundle.core_content.req_if_content.specifications:
+ print(specification)
+
+for attachment in reqifz_bundle.attachments:
+ print(f"Attachment: {attachment}")
diff --git a/tests/integration/examples/03_read_reqifz/test.itest b/tests/integration/examples/03_read_reqifz/test.itest
new file mode 100644
index 0000000..ea542ae
--- /dev/null
+++ b/tests/integration/examples/03_read_reqifz/test.itest
@@ -0,0 +1 @@
+RUN: python %S/script.py