armodel 1.6.1__py3-none-any.whl → 1.6.2__py3-none-any.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (30) hide show
  1. armodel/cli/arxml_dump_cli.py +25 -22
  2. armodel/cli/arxml_format_cli.py +1 -4
  3. armodel/cli/connector_update_cli.py +1 -1
  4. armodel/cli/swc_list_cli.py +1 -1
  5. armodel/lib/sw_component.py +3 -1
  6. armodel/lib/system_signal.py +3 -1
  7. armodel/models/__init__.py +1 -1
  8. armodel/models/datatype.py +2 -3
  9. armodel/models/m2/autosar_templates/autosar_top_level_structure.py +120 -0
  10. armodel/models/m2/autosar_templates/common_structure/implementation_data_types.py +11 -5
  11. armodel/models/m2/autosar_templates/generic_structure/ar_package.py +528 -0
  12. armodel/models/m2/autosar_templates/sw_component_template/port_interface/__init__.py +2 -2
  13. armodel/parser/abstract_arxml_parser.py +1 -1
  14. armodel/parser/arxml_parser.py +40 -29
  15. armodel/parser/connector_xlsx_parser.py +3 -1
  16. armodel/report/connector_xls_report.py +2 -1
  17. armodel/tests/test_armodel/models/test_ar_package.py +1 -1
  18. armodel/tests/test_armodel/models/test_datatype.py +1 -1
  19. armodel/tests/test_armodel/models/test_general_structure.py +1 -1
  20. armodel/tests/test_armodel/models/test_implementation.py +1 -1
  21. armodel/tests/test_armodel/models/test_port_interface.py +1 -1
  22. armodel/tests/test_armodel/parser/test_parse_bswmd.py +3 -1
  23. armodel/tests/test_armodel/parser/test_sw_components.py +1 -1
  24. armodel/writer/arxml_writer.py +2 -2
  25. {armodel-1.6.1.dist-info → armodel-1.6.2.dist-info}/METADATA +1 -1
  26. {armodel-1.6.1.dist-info → armodel-1.6.2.dist-info}/RECORD +30 -28
  27. {armodel-1.6.1.dist-info → armodel-1.6.2.dist-info}/LICENSE +0 -0
  28. {armodel-1.6.1.dist-info → armodel-1.6.2.dist-info}/WHEEL +0 -0
  29. {armodel-1.6.1.dist-info → armodel-1.6.2.dist-info}/entry_points.txt +0 -0
  30. {armodel-1.6.1.dist-info → armodel-1.6.2.dist-info}/top_level.txt +0 -0
@@ -2,10 +2,13 @@ from typing import List
2
2
  import xml.etree.ElementTree as ET
3
3
  import os
4
4
 
5
+ from ..models.m2.autosar_templates.generic_structure.ar_package import ARPackage
6
+
5
7
  from ..models.ar_ref import RefType
6
8
  from ..models.m2.autosar_templates.common_structure.implementation import ImplementationProps
7
9
  from ..models.m2.autosar_templates.common_structure import ApplicationValueSpecification, ArrayValueSpecification, ConstantReference, NumericalValueSpecification, RecordValueSpecification, TextValueSpecification, ValueSpecification
8
10
  from ..models.m2.autosar_templates.generic_structure.abstract_structure import AnyInstanceRef
11
+ from ..models.m2.autosar_templates.common_structure.implementation_data_types import ImplementationDataTypeElement
9
12
  from ..models.m2.autosar_templates.sw_component_template.composition.instance_refs import POperationInAtomicSwcInstanceRef, PPortInCompositionInstanceRef, ROperationInAtomicSwcInstanceRef, RPortInCompositionInstanceRef
10
13
  from ..models.m2.autosar_templates.sw_component_template.port_interface.instance_refs import ApplicationCompositeElementInPortInterfaceInstanceRef
11
14
  from ..models.m2.autosar_templates.sw_component_template.swc_internal_behavior.instance_refs_usage import AutosarParameterRef, AutosarVariableRef, VariableInAtomicSWCTypeInstanceRef
@@ -15,7 +18,7 @@ from ..models.m2.autosar_templates.sw_component_template.swc_internal_behavior i
15
18
  from ..models.m2.autosar_templates.sw_component_template.components import PortGroup, SwComponentType, SymbolProps, PPortPrototype, RPortPrototype
16
19
  from ..models.m2.autosar_templates.sw_component_template.composition import AssemblySwConnector, CompositionSwComponentType, DelegationSwConnector
17
20
 
18
- from ..models.m2.autosar_templates.sw_component_template.swc_internal_behavior.mode_declaration_group import ModeAccessPoint, ModeSwitchPoint
21
+ from ..models.m2.autosar_templates.sw_component_template.swc_internal_behavior.mode_declaration_group import ModeAccessPoint
19
22
  from ..models.m2.autosar_templates.sw_component_template.swc_internal_behavior.server_call import ServerCallPoint
20
23
  from ..models.m2.autosar_templates.sw_component_template.communication import ClientComSpec, ModeSwitchSenderComSpec, NonqueuedReceiverComSpec, NonqueuedSenderComSpec, ParameterRequireComSpec, QueuedSenderComSpec, ReceiverComSpec, SenderComSpec, ServerComSpec
21
24
  from ..models.fibex.lin_communication import LinFrameTriggering
@@ -44,7 +47,7 @@ from ..models.calibration import SwAxisGrouped, SwAxisIndividual, SwCalprmAxis,
44
47
  from ..models.communication import CompositeNetworkRepresentation
45
48
  from ..models.end_to_end_protection import EndToEndDescription, EndToEndProtection, EndToEndProtectionSet, EndToEndProtectionVariablePrototype
46
49
  from ..models.service_mapping import RoleBasedPortAssignment
47
- from ..models.ar_package import AUTOSAR, ARPackage
50
+ from ..models.m2.autosar_templates.autosar_top_level_structure import AUTOSAR
48
51
  from ..models.ar_object import ARLiteral
49
52
  from ..models.service_needs import RoleBasedDataAssignment
50
53
  from ..models.sw_component import AtomicSwComponentType, PortAPIOption, PortDefinedArgumentValue, ServiceDependency, SwcServiceDependency
@@ -224,7 +227,7 @@ class ARXMLParser(AbstractARXMLParser):
224
227
  ref = self.getChildElementOptionalRefType(child_element, "BSW-MODULE-ENTRY-REF")
225
228
  if (ref is not None):
226
229
  parent.addImplementedEntry(ref)
227
- self.logger.debug("ImplementedEntry <%s> of BswModuleDescription <%s> has been added", ref.value, parent.short_name)
230
+ self.logger.debug("ImplementedEntry <%s> of BswModuleDescription <%s> has been added", ref.value, parent.getShortName())
228
231
 
229
232
  def readModeDeclarationGroupPrototype(self, element: ET.Element, prototype: ModeDeclarationGroupPrototype):
230
233
  self.readIdentifiable(element, prototype)
@@ -243,14 +246,14 @@ class ARXMLParser(AbstractARXMLParser):
243
246
  short_name = self.getShortName(child_element)
244
247
  self.logger.debug("readRequiredModeGroup %s" % short_name)
245
248
  mode_group = parent.createProvidedModeGroup(short_name)
246
- mode_group.type_tref = self.getChildElementRefType(parent.short_name, child_element, "TYPE-TREF")
249
+ mode_group.type_tref = self.getChildElementRefType(parent.getShortName(), child_element, "TYPE-TREF")
247
250
 
248
251
  def readCanEnterExclusiveAreaRefs(self, element: ET.Element, entity: ExecutableEntity):
249
252
  for ref in self.getChildElementRefTypeList(element, "CAN-ENTER-EXCLUSIVE-AREA-REFS/CAN-ENTER-EXCLUSIVE-AREA-REF"):
250
253
  entity.addCanEnterExclusiveAreaRef(ref)
251
254
 
252
255
  def readExecutableEntity(self, element: ET.Element, entity: ExecutableEntity):
253
- self.logger.debug("readExecutableEntity %s" % entity.short_name)
256
+ self.logger.debug("readExecutableEntity %s" % entity.getShortName())
254
257
  self.readIdentifiable(element, entity)
255
258
  self.readCanEnterExclusiveAreaRefs(element, entity)
256
259
  entity.setMinimumStartInterval(self.getChildElementOptionalFloatValue(element, "MINIMUM-START-INTERVAL")) \
@@ -264,7 +267,7 @@ class ARXMLParser(AbstractARXMLParser):
264
267
 
265
268
  def readBswModuleEntity(self, element: ET.Element, entity: BswModuleEntity):
266
269
  self.readExecutableEntity(element, entity)
267
- entity.setImplementedEntryRef(self.getChildElementRefType(entity.short_name, element, "IMPLEMENTED-ENTRY-REF"))
270
+ entity.setImplementedEntryRef(self.getChildElementRefType(entity.getShortName(), element, "IMPLEMENTED-ENTRY-REF"))
268
271
  self.readBswModuleEntityManagedModeGroup(element, entity)
269
272
 
270
273
  def readBswCalledEntity(self, element: ET.Element, parent: BswInternalBehavior):
@@ -283,7 +286,7 @@ class ARXMLParser(AbstractARXMLParser):
283
286
  self.readBswModuleEntity(child_element, entity)
284
287
 
285
288
  def readBswEvent(self, element: ET.Element, event: BswScheduleEvent):
286
- event.startsOnEventRef = self.getChildElementRefType(event.short_name, element, "STARTS-ON-EVENT-REF")
289
+ event.startsOnEventRef = self.getChildElementRefType(event.getShortName(), element, "STARTS-ON-EVENT-REF")
287
290
 
288
291
  def readBswScheduleEvent(self, element, event: BswScheduleEvent):
289
292
  self.readBswEvent(element, event)
@@ -310,7 +313,7 @@ class ARXMLParser(AbstractARXMLParser):
310
313
  short_name = self.getShortName(child_element)
311
314
  self.logger.debug("readBswDataReceivedEvent %s" % short_name)
312
315
  event = parent.createBswDataReceivedEvent(short_name)
313
- event.data_ref = self.getChildElementRefType(parent.short_name, child_element, "DATA-REF")
316
+ event.data_ref = self.getChildElementRefType(parent.getShortName(), child_element, "DATA-REF")
314
317
  # Read the Inherit BswScheduleEvent
315
318
  self.readBswScheduleEvent(child_element, event)
316
319
 
@@ -319,7 +322,7 @@ class ARXMLParser(AbstractARXMLParser):
319
322
  short_name = self.getShortName(child_element)
320
323
  self.logger.debug("readBswInternalTriggerOccurredEvent %s" % short_name)
321
324
  event = parent.createBswInternalTriggerOccurredEvent(short_name)
322
- event.event_source_ref = self.getChildElementRefType(parent.short_name, child_element, "EVENT-SOURCE-REF")
325
+ event.event_source_ref = self.getChildElementRefType(parent.getShortName(), child_element, "EVENT-SOURCE-REF")
323
326
  # Read the Inherit BswScheduleEvent
324
327
  self.readBswScheduleEvent(child_element, event)
325
328
 
@@ -513,7 +516,7 @@ class ARXMLParser(AbstractARXMLParser):
513
516
  entry.sw_service_impl_policy = self.getChildElementOptionalLiteral(element, "SW-SERVICE-IMPL-POLICY")
514
517
 
515
518
  #self.logger.debug("readBswModuleEntry \n%s" % entry)
516
- self.logger.debug("readBswModuleEntry %s" % entry.short_name)
519
+ self.logger.debug("readBswModuleEntry %s" % entry.getShortName())
517
520
 
518
521
  def readEngineeringObject(self, element: ET.Element, engineering_obj: EngineeringObject):
519
522
  self.readElementAttributes(element, engineering_obj)
@@ -558,7 +561,7 @@ class ARXMLParser(AbstractARXMLParser):
558
561
  memory_section.size = self.getChildElementOptionalNumericalValue(child_element, "SIZE")
559
562
  memory_section.swAddrMethodRef = self.getChildElementOptionalRefType(child_element, "SW-ADDRMETHOD-REF")
560
563
  memory_section.symbol = self.getChildElementOptionalLiteral(child_element, "SYMBOL")
561
- self.logger.debug("readMemorySections %s" % memory_section.short_name)
564
+ self.logger.debug("readMemorySections %s" % memory_section.getShortName())
562
565
 
563
566
  def readResourceConsumption(self, element: ET.Element, impl: Implementation):
564
567
  child_element = element.find("./xmlns:RESOURCE-CONSUMPTION", self.nsmap)
@@ -588,7 +591,7 @@ class ARXMLParser(AbstractARXMLParser):
588
591
  def readBswImplementation(self, element: ET.Element, parent: ARPackage):
589
592
  short_name = self.getShortName(element)
590
593
  impl = parent.createBswImplementation(short_name)
591
- self.logger.debug("readBswImplementation %s" % impl.short_name)
594
+ self.logger.debug("readBswImplementation %s" % impl.getShortName())
592
595
  self.readImplementation(element, impl)
593
596
  impl.ar_release_version = self.getChildElementOptionalLiteral(element, "AR-RELEASE-VERSION")
594
597
  impl.behavior_ref = self.getChildElementOptionalRefType(element, "BEHAVIOR-REF")
@@ -597,7 +600,7 @@ class ARXMLParser(AbstractARXMLParser):
597
600
  def readSwcImplementation(self, element: ET.Element, parent: ARPackage):
598
601
  short_name = self.getShortName(element)
599
602
  impl = parent.createSwcImplementation(short_name)
600
- self.logger.debug("readSwcImplementation %s" % impl.short_name)
603
+ self.logger.debug("readSwcImplementation %s" % impl.getShortName())
601
604
  self.readImplementation(element, impl)
602
605
  impl.behavior_ref = self.getChildElementOptionalRefType(element, "BEHAVIOR-REF")
603
606
 
@@ -790,8 +793,8 @@ class ARXMLParser(AbstractARXMLParser):
790
793
  child_element = element.find("./xmlns:OPERATION-IREF", self.nsmap)
791
794
  if (child_element is not None):
792
795
  parent.operation_iref = POperationInAtomicSwcInstanceRef()
793
- parent.operation_iref.context_p_port_ref = self.getChildElementRefType(parent.short_name, child_element, "CONTEXT-P-PORT-REF")
794
- parent.operation_iref.target_provided_operation_ref = self.getChildElementRefType(parent.short_name, child_element, "TARGET-PROVIDED-OPERATION-REF")
796
+ parent.operation_iref.context_p_port_ref = self.getChildElementRefType(parent.getShortName(), child_element, "CONTEXT-P-PORT-REF")
797
+ parent.operation_iref.target_provided_operation_ref = self.getChildElementRefType(parent.getShortName(), child_element, "TARGET-PROVIDED-OPERATION-REF")
795
798
 
796
799
  def readOperationInvokedEvent(self, element: ET.Element, parent: SwcInternalBehavior):
797
800
  short_name = self.getShortName(element)
@@ -876,7 +879,7 @@ class ARXMLParser(AbstractARXMLParser):
876
879
  short_name = self.getShortName(element)
877
880
  event = parent.createInternalTriggerOccurredEvent(short_name)
878
881
  self.readRTEEvent(element, event)
879
- event.event_source_ref = self.getChildElementRefType(parent.short_name, element, "EVENT-SOURCE-REF")
882
+ event.event_source_ref = self.getChildElementRefType(parent.getShortName(), element, "EVENT-SOURCE-REF")
880
883
 
881
884
  def readInitEvent(self, element, parent: SwcInternalBehavior):
882
885
  short_name = self.getShortName(element)
@@ -1048,14 +1051,14 @@ class ARXMLParser(AbstractARXMLParser):
1048
1051
  self.readApplicationRecordElements(element, data_type)
1049
1052
 
1050
1053
  def readImplementationDataTypeElements(self, element: ET.Element, parent: ImplementationDataType):
1051
- for child_element in element.findall("./xmlns:SUB-ELEMENTS/xmlns:IMPLEMENTATION-DATA-TYPE-ELEMENT", self.nsmap):
1054
+ for child_element in self.findall(element, "SUB-ELEMENTS/IMPLEMENTATION-DATA-TYPE-ELEMENT"):
1052
1055
  short_name = self.getShortName(child_element)
1053
- type_element = parent.createImplementationDataTypeElement(short_name) # type: ImplementationDataTypeElement
1056
+ type_element = parent.createImplementationDataTypeElement(short_name)
1054
1057
  self.readIdentifiable(child_element, type_element)
1055
1058
  type_element.setArraySize(self.getChildElementOptionalLiteral(child_element, "ARRAY-SIZE")) \
1056
1059
  .setArraySizeSemantics(self.getChildElementOptionalLiteral(child_element, "ARRAY-SIZE-SEMANTICS"))
1057
1060
  self.readImplementationDataTypeElements(child_element, type_element)
1058
- type_element.swDataDefProps = self.getSwDataDefProps(child_element, "SW-DATA-DEF-PROPS")
1061
+ type_element.setSwDataDefProps(self.getSwDataDefProps(child_element, "SW-DATA-DEF-PROPS"))
1059
1062
 
1060
1063
  def readImplementationDataType(self, element: ET.Element, parent: ARPackage):
1061
1064
  short_name = self.getShortName(element)
@@ -1063,26 +1066,34 @@ class ARXMLParser(AbstractARXMLParser):
1063
1066
  self.readAutosarDataType(element, data_type)
1064
1067
  self.readImplementationDataTypeElements(element, data_type)
1065
1068
  data_type.setTypeEmitter(self.getChildElementOptionalLiteral(element, "TYPE-EMITTER"))
1069
+
1070
+
1071
+ '''
1066
1072
  if (data_type.getCategory().getValue() == ImplementationDataType.CATEGORY_ARRAY):
1067
1073
  if (len(data_type.getImplementationDataTypeElements()) < 1):
1068
- self._raiseError("Array Sub-Element of <%s> do not defined." % data_type.short_name)
1074
+ self._raiseError("Array Sub-Element of <%s> do not defined." % data_type.getShortName())
1069
1075
 
1070
1076
  array_sub_element = data_type.getImplementationDataTypeElements()[0]
1071
- if (array_sub_element.category.getValue() == ImplementationDataType.CATEGORY_TYPE_REFERENCE):
1077
+ if (array_sub_element.getCategory().getValue() == ImplementationDataType.CATEGORY_TYPE_REFERENCE):
1072
1078
  data_type.setArrayElementType(array_sub_element.swDataDefProps.implementationDataTypeRef.value)
1073
- elif (array_sub_element.category.getValue() == ImplementationDataType.CATEGORY_TYPE_VALUE): # TODO: fix
1079
+ elif (array_sub_element.getCategory().getValue() == ImplementationDataType.CATEGORY_TYPE_VALUE): # TODO: fix
1074
1080
  return
1075
1081
  else:
1076
- self._raiseError("The category <%s> of array sub-element <%s> does not support." % (array_sub_element.category.value, data_type.short_name))
1082
+ self._raiseError("The category <%s> of array sub-element <%s> does not support." % (
1083
+ array_sub_element.getCategory().getValue(), data_type.getShortName()))
1077
1084
  elif (data_type.getCategory().getValue() == ImplementationDataType.CATEGORY_TYPE_STRUCTURE):
1078
- if (len(data_type.getImplementationDataTypeElements()) < 1):
1079
- self._raiseError("Structure Sub-Element of <%s> do not defined." % data_type.short_name)
1085
+ if len(data_type.getImplementationDataTypeElements()) < 1:
1086
+ self._raiseError("Structure Sub-Element of <%s> do not defined." % data_type.getShortName())
1080
1087
  self.readImplementationDataTypeSymbolProps(element, data_type)
1081
1088
  struct_sub_element = data_type.getImplementationDataTypeElements()[0]
1082
- if (struct_sub_element.getCategory().getValue() == ImplementationDataType.CATEGORY_TYPE_REFERENCE):
1089
+ if struct_sub_element.getCategory().getValue() == ImplementationDataType.CATEGORY_TYPE_REFERENCE:
1083
1090
  data_type.setStructElementType(struct_sub_element.getSwDataDefProps().getImplementationDataTypeRef().getValue())
1091
+ #elif struct_sub_element.getCategory().getValue() == ImplementationDataType.CATEGORY_TYPE_VALUE:
1092
+ # return
1084
1093
  else:
1085
- self._raiseError("The category <%s> of structure sub-element <%s> does not support." % (struct_sub_element.category.value, data_type.short_name))
1094
+ self._raiseError("The category <%s> of structure sub-element <%s> does not support." % (
1095
+ struct_sub_element.getCategory().getValue(), data_type.getShortName()))
1096
+ '''
1086
1097
 
1087
1098
  def readBaseTypeDirectDefinition(self, element: ET.Element, definition: BaseTypeDirectDefinition):
1088
1099
  definition.base_type_size = self.getChildElementOptionalNumericalValue(element, "BASE-TYPE-SIZE")
@@ -2212,7 +2223,7 @@ class ARXMLParser(AbstractARXMLParser):
2212
2223
  .setNmRangeConfig(self.getChildElementRxIdentifierRange(element, "NM-RANGE-CONFIG"))
2213
2224
 
2214
2225
  def readNmClusterNmNodes(self, element: ET.Element, parent: NmCluster):
2215
- self.logger.debug("readNmConfigNmNodes %s" % parent.short_name)
2226
+ self.logger.debug("readNmConfigNmNodes %s" % parent.getShortName())
2216
2227
  for child_element in self.findall(element, "NM-NODES/*"):
2217
2228
  tag_name = self.getTagName(child_element)
2218
2229
  if tag_name == "CAN-NM-NODE":
@@ -2359,7 +2370,7 @@ class ARXMLParser(AbstractARXMLParser):
2359
2370
  ref = self.getChildElementOptionalRefType(child_element, "ECUC-MODULE-CONFIGURATION-VALUES-REF")
2360
2371
  if (ref is not None):
2361
2372
  parent.addEcucValueRef(ref)
2362
- self.logger.debug("EcucValue <%s> of EcucValueCollection <%s> has been added", ref.value, parent.short_name)
2373
+ self.logger.debug("EcucValue <%s> of EcucValueCollection <%s> has been added", ref.value, parent.getShortName())
2363
2374
 
2364
2375
  def readEcucValueCollection(self, element: ET.Element, parent: ARPackage):
2365
2376
  short_name = self.getShortName(element)
@@ -5,11 +5,13 @@ from openpyxl.worksheet.worksheet import Worksheet
5
5
  import openpyxl
6
6
  import re
7
7
 
8
+ from ..models.m2.autosar_templates.generic_structure.ar_package import ARPackage
9
+
8
10
  from ..parser.excel_parser import AbstractExcelParser
9
11
  from ..data_models.sw_connector import AssemblySwConnectorData, DelegationSwConnectorData, SwConnectorData
10
12
  from ..models.ar_ref import PPortInCompositionInstanceRef, RPortInCompositionInstanceRef, RefType
11
13
  from ..models.sw_component import CompositionSwComponentType
12
- from ..models.ar_package import AUTOSAR, ARPackage
14
+ from ..models.m2.autosar_templates.autosar_top_level_structure import AUTOSAR
13
15
 
14
16
  class ConnectorXls:
15
17
 
@@ -1,5 +1,6 @@
1
+ from ..models.m2.autosar_templates.generic_structure.ar_package import ARPackage
1
2
  from .excel_report import ExcelReporter
2
- from ..models import AUTOSAR, ARPackage, CompositionSwComponentType
3
+ from ..models import AUTOSAR, CompositionSwComponentType
3
4
  from ..models import PPortInCompositionInstanceRef, RPortInCompositionInstanceRef
4
5
  from typing import List
5
6
 
@@ -3,7 +3,7 @@ import pytest
3
3
 
4
4
  from ....models.m2.autosar_templates.common_structure.implementation_data_types import ImplementationDataType
5
5
  from ....models.m2.autosar_templates.sw_component_template.components import SwComponentType
6
- from ....models.ar_package import AUTOSAR
6
+ from ....models.m2.autosar_templates.autosar_top_level_structure import AUTOSAR
7
7
  from ....models.datatype import ApplicationPrimitiveDataType, ApplicationRecordDataType, DataTypeMappingSet, SwBaseType
8
8
  from ....models.general_structure import ARElement, ARObject, CollectableElement, Identifiable, MultilanguageReferrable, PackageableElement, Referrable
9
9
  from ....models.m2_msr import CompuMethod
@@ -226,7 +226,7 @@ class Test_M2_AUTOSARTemplates_CommonStructure_ImplementationDataTypes:
226
226
 
227
227
  assert(data_type._parent == ar_root)
228
228
  assert(data_type.short_name == "ImplementationDataType")
229
- assert(data_type.sub_elements == [])
229
+ assert(data_type.subElements == [])
230
230
  assert(data_type.symbolProps == None)
231
231
  assert(data_type._type_emitter == None)
232
232
 
@@ -1,6 +1,6 @@
1
1
  import pytest
2
2
 
3
- from ....models.ar_package import AUTOSAR
3
+ from ....models.m2.autosar_templates.autosar_top_level_structure import AUTOSAR
4
4
  from ....models.general_structure import ARElement, ARObject, AtpFeature, CollectableElement, Identifiable, Limit, MultilanguageReferrable, PackageableElement, Referrable
5
5
 
6
6
  class TestGeneralStructure:
@@ -1,6 +1,6 @@
1
1
 
2
2
  from ....models.implementation import AutosarEngineeringObject, Code
3
- from ....models.ar_package import AUTOSAR
3
+ from ....models.m2.autosar_templates.autosar_top_level_structure import AUTOSAR
4
4
 
5
5
 
6
6
  class TestImplementation:
@@ -1,6 +1,6 @@
1
1
  import pytest
2
2
 
3
- from ....models.ar_package import AUTOSAR
3
+ from ....models.m2.autosar_templates.autosar_top_level_structure import AUTOSAR
4
4
  from ....models.ar_ref import RefType
5
5
  from ....models.m2.autosar_templates.sw_component_template.data_type.data_prototypes import AtpPrototype, AutosarDataPrototype, DataPrototype, VariableDataPrototype
6
6
  from ....models.datatype import AtpType
@@ -1,6 +1,8 @@
1
1
  import filecmp
2
2
 
3
- from .... import AUTOSAR, ARPackage
3
+ from ....models.m2.autosar_templates.generic_structure.ar_package import ARPackage
4
+
5
+ from .... import AUTOSAR
4
6
  from .... import ARXMLParser, ARXMLWriter
5
7
 
6
8
  import logging
@@ -2,7 +2,7 @@ import filecmp
2
2
  from ....models.m2.autosar_templates.sw_component_template.composition import CompositionSwComponentType
3
3
  from ....writer.arxml_writer import ARXMLWriter
4
4
  from ....parser.arxml_parser import ARXMLParser
5
- from ....models.ar_package import AUTOSAR
5
+ from ....models.m2.autosar_templates.autosar_top_level_structure import AUTOSAR
6
6
 
7
7
  class TestSWComponents:
8
8
  def setup_method(self):
@@ -47,9 +47,9 @@ from ..models.service_mapping import RoleBasedPortAssignment
47
47
  from ..models.service_needs import NvBlockNeeds, RoleBasedDataAssignment
48
48
  from ..models.m2.autosar_templates.sw_component_template.data_type.data_prototypes import ApplicationArrayElement, ApplicationCompositeElementDataPrototype, ApplicationRecordElement, AutosarDataPrototype, DataPrototype, ParameterDataPrototype, VariableDataPrototype
49
49
  from ..models.bsw_module_template import BswCalledEntity, BswEvent, BswInternalBehavior, BswModeSenderPolicy, BswModuleDescription, BswModuleEntity, BswModuleEntry, BswSchedulableEntity, BswScheduleEvent, BswTimingEvent
50
- from ..models.ar_package import AUTOSAR
50
+ from ..models.m2.autosar_templates.autosar_top_level_structure import AUTOSAR
51
51
  from ..models.sw_component import ApplicationSwComponentType, AtomicSwComponentType, ComplexDeviceDriverSwComponentType, DataReceivedEvent, EcuAbstractionSwComponentType, InitEvent, InternalTriggerOccurredEvent, OperationInvokedEvent, PortAPIOption, RTEEvent, ServiceDependency, ServiceSwComponentType, SwcModeSwitchEvent, SwcServiceDependency
52
- from ..models.ar_package import ARPackage
52
+ from ..models.m2.autosar_templates.generic_structure.ar_package import ARPackage
53
53
  from ..models.ar_ref import RefType
54
54
  from ..models.calibration import SwAxisGrouped, SwAxisIndividual, SwCalprmAxis, SwCalprmAxisSet, SwValueCont, SwValues
55
55
  from ..models.common_structure import IncludedModeDeclarationGroupSet, ModeDeclaration, ModeDeclarationGroup, ModeDeclarationGroupPrototype
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: armodel
3
- Version: 1.6.1
3
+ Version: 1.6.2
4
4
  Summary: the python arxml parser
5
5
  Home-page: http://github.com/melodypapa/py-armodel
6
6
  Author: melodypapa
@@ -1,20 +1,20 @@
1
1
  armodel/__init__.py,sha256=GVXg600GzbcLT2-Lrepuz6mjT6_BsVNmi2eDiz85NiA,67
2
2
  armodel/cli/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
3
- armodel/cli/arxml_dump_cli.py,sha256=eIn1PD5H8AlaF_hEJshUhtw0weM44rVa-mMwNFUrqZY,9961
4
- armodel/cli/arxml_format_cli.py,sha256=9Ys_3DlcVwV2vDGcE6FAwmVfyx2dKLlIdLi17Fla-Jk,2066
3
+ armodel/cli/arxml_dump_cli.py,sha256=vRPZ98BBMbLJK4ySbFJJ2nJI-A8XFZROZ7QT6p9lIHk,10312
4
+ armodel/cli/arxml_format_cli.py,sha256=76IBQo6t9fqL1WXjsdoONuX9FSqapb1WuM1yDJobpfM,2004
5
5
  armodel/cli/connector2xlsx_cli.py,sha256=bPxJ53znVpluabEbjqN58RX8a9dvlf-cF5o7ncjqTyw,2125
6
- armodel/cli/connector_update_cli.py,sha256=j8T2N-gxHM6CD5Vb44X24HyuhvXwNDIniUkdJ7Dsluc,2286
6
+ armodel/cli/connector_update_cli.py,sha256=kEySXg4El5Eez6wnSvCugmOsDzdqbTiRzAfX8Fy8E6g,2324
7
7
  armodel/cli/memory_section_cli.py,sha256=ky-EJyl74-F8DpIu6uafEFilfblOvEa4HqQyM5HhqyI,2139
8
- armodel/cli/swc_list_cli.py,sha256=NUyOuIYhXsbSzQl1CjWdgdP83CkeAkXS_kWY4zs-XKU,2414
8
+ armodel/cli/swc_list_cli.py,sha256=TSzKmxjaPZs499jY4WX5pQ4UZ924m5yqmriQbAsvOTY,2403
9
9
  armodel/cli/system_signal_cli.py,sha256=4u474E1yd1CGBPiALL-ZXpDatXpUrD6qyXsR-au2yp0,2101
10
10
  armodel/data_models/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
11
11
  armodel/data_models/sw_connector.py,sha256=ZU1B3AI84vpSSSpQaGR6CMc3qZGnhbK1Z-SQGvwYA9o,584
12
12
  armodel/lib/__init__.py,sha256=5629DkORqTomt16J6VL40o5hFv86-9SRB1240OJWTts,142
13
13
  armodel/lib/cli_args_parser.py,sha256=WiTC3wy_fZYloA1AjPqCvvOA_26V_y5toun0qfV51cw,1207
14
14
  armodel/lib/data_analyzer.py,sha256=y4ViEGPi_xRKD7hw1ptkGl0_UfhnNdgNzf2YjbOhpjM,1159
15
- armodel/lib/sw_component.py,sha256=y4ViEGPi_xRKD7hw1ptkGl0_UfhnNdgNzf2YjbOhpjM,1159
16
- armodel/lib/system_signal.py,sha256=uzII_GM_-kwzvFeDOGD2HrC_gunsmhJPD1xwbVofa7c,1241
17
- armodel/models/__init__.py,sha256=tdwxgqP9MRC-dnKnf4zIpgv7FrdZrJ3QgkCeOOOBA6E,988
15
+ armodel/lib/sw_component.py,sha256=L4k3iH4i5Z09zeaHxIHjK-xbMH_0PDcOflh4ACJ9WfE,1232
16
+ armodel/lib/system_signal.py,sha256=292yH9yybuCK4GKf7rpECsy27Ds6YRSoYm89yYIKgfw,1352
17
+ armodel/models/__init__.py,sha256=bS1Xj5vu2R_gWy8IE17i4faxmdYdqtsBXphv058Mnyo,1026
18
18
  armodel/models/annotation.py,sha256=54XqgKgIzPGRfv3gVCIACKqYt1hUUG6eQDlB06A7xqs,1354
19
19
  armodel/models/ar_object.py,sha256=FqCUl0UcQaE7i8VvkmQPmsLsUGFNLPEDMn2aH3CyuNM,5783
20
20
  armodel/models/ar_package.py,sha256=EKHzIrsy1q2w6Uso_4-5cQ2xTMMDTSUQ6Q4hp4PieYQ,32070
@@ -26,7 +26,7 @@ armodel/models/communication.py,sha256=CafA0LKVpSpjMQ0UUdC3IcZf6ttBw6yCvqyqxTLWT
26
26
  armodel/models/data_def_properties.py,sha256=Mhmucm3k_f12IV5BqH3KlJ5SdmIrlmqnmrQPb5gqamA,470
27
27
  armodel/models/data_dictionary.py,sha256=1gbRyvWp5QD0Z-2kxNrqa1qrab5kEZTMcNdWscdmth0,2513
28
28
  armodel/models/data_prototype.py,sha256=Sq0nizgUKzc6kG3PKVfIE4e_l4UMsDi2m34tm7TVph4,3622
29
- armodel/models/datatype.py,sha256=d6yxMhNWbbTtu7tWGDxntWl2nCdiZM636CPxJV328Z8,6259
29
+ armodel/models/datatype.py,sha256=zujOOmC0Di6bD-facMEetPcsuXpwY7AB5Fz0KD4zlrc,6327
30
30
  armodel/models/ecuc_parameter_def_template.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
31
31
  armodel/models/end_to_end_protection.py,sha256=Qvcqy5_eoSD8nFJd2mEee-wLtv7VvyGoPqUHkR2JMfM,3022
32
32
  armodel/models/general_structure.py,sha256=NlWnbpSQ1DJwubYkkVs5oxYxJGSRFqLVqtb_yu_WJDI,8893
@@ -59,13 +59,15 @@ armodel/models/fibex/fibex_core/core_communication.py,sha256=Wyoag9k-uLNRSagGX2B
59
59
  armodel/models/fibex/fibex_core/core_topology.py,sha256=ZaRivNXDOvdXlW4Z1EIYhzh_BGk87UOHgmc8ZjYegNk,7044
60
60
  armodel/models/m2/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
61
61
  armodel/models/m2/autosar_templates/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
62
+ armodel/models/m2/autosar_templates/autosar_top_level_structure.py,sha256=ETQNNosMeyLZ9Jgx1YI--5yieyeFK_m538Ii6vzrFyE,4855
62
63
  armodel/models/m2/autosar_templates/ecuc_description_template.py,sha256=i3iKNzibMX4BeL95nUbBTLIH8LSHv7TQ3sGsUqQcbhw,9078
63
64
  armodel/models/m2/autosar_templates/common_structure/__init__.py,sha256=OHaKJ0UGd_Ni9F11LHMpc8ILTNgxKuJ9QQnuQDSZ_lw,5804
64
65
  armodel/models/m2/autosar_templates/common_structure/constants.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
65
66
  armodel/models/m2/autosar_templates/common_structure/implementation.py,sha256=KbgskqCO1970U4kUGvfnhThf9eh2ruO8Uz_NsU-Sh7I,646
66
- armodel/models/m2/autosar_templates/common_structure/implementation_data_types.py,sha256=czXitc6bHGvybkGm0yiSKYXj6lTzu2aecVaR7zXeJfA,5503
67
+ armodel/models/m2/autosar_templates/common_structure/implementation_data_types.py,sha256=1Pca5SMQOWOLd-szP7xpc-KbTPUOERrhCYe1DNqi49o,5771
67
68
  armodel/models/m2/autosar_templates/generic_structure/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
68
69
  armodel/models/m2/autosar_templates/generic_structure/abstract_structure.py,sha256=Sad_Bt9d1um5zC8T6cRyNhzIDCGDjd48dSO01cH--hg,1948
70
+ armodel/models/m2/autosar_templates/generic_structure/ar_package.py,sha256=94NHRTq_BU1CmoRw0pWEprrhpa_193iqTtYmu5OyevY,27587
69
71
  armodel/models/m2/autosar_templates/sw_component_template/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
70
72
  armodel/models/m2/autosar_templates/sw_component_template/communication.py,sha256=_Y51VV0nquCBBVA21uzw7zcresFow6857JcvTyfEHJM,11205
71
73
  armodel/models/m2/autosar_templates/sw_component_template/port_interface.py,sha256=XRBp3ZuBbFGFs3BWpF5VsjhuGoDgs1sEuJ7IRI6WET4,9249
@@ -75,7 +77,7 @@ armodel/models/m2/autosar_templates/sw_component_template/composition/__init__.p
75
77
  armodel/models/m2/autosar_templates/sw_component_template/composition/instance_refs.py,sha256=_djnWMHLGYw2C5bjAgopoqwG3r2IG-d9kMZk4cbXtyY,4889
76
78
  armodel/models/m2/autosar_templates/sw_component_template/data_type/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
77
79
  armodel/models/m2/autosar_templates/sw_component_template/data_type/data_prototypes.py,sha256=tGi_fL8zU1Ewe7rssiKSb_EetkPaGKMVdk0eTBAC-yg,3621
78
- armodel/models/m2/autosar_templates/sw_component_template/port_interface/__init__.py,sha256=h-EB1vrZrHi0XQuuV0S6AAtXg-Pz7Gjl-2MQqFPvHiE,9955
80
+ armodel/models/m2/autosar_templates/sw_component_template/port_interface/__init__.py,sha256=MHrDO2xbZ3c2guKWapLSoFJs2_qWabPXYYD5Rmkz4G0,9955
79
81
  armodel/models/m2/autosar_templates/sw_component_template/port_interface/instance_refs.py,sha256=P-2ST0LTTXk6Fghh2mATPE5-h2pF55YcKW_2eQUQIvA,1332
80
82
  armodel/models/m2/autosar_templates/sw_component_template/swc_internal_behavior/__init__.py,sha256=I4BP4XjWbOwafMXWpTUZ4iQ2Liu_HQaDKyLzQ86KqUs,9452
81
83
  armodel/models/m2/autosar_templates/sw_component_template/swc_internal_behavior/access_count.py,sha256=o6BLmmYiqc5U5mb7YtzS74U1FIhDDPt1XgJBiib5VkA,460
@@ -101,40 +103,40 @@ armodel/models/system_template/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5
101
103
  armodel/models/system_template/network_management.py,sha256=ztMxX4zDFBFEiXmR3zne23Lc_rNuaXQbCJS4eL61VZ0,218
102
104
  armodel/models/system_template/transport_protocols.py,sha256=en2Pl3eThqDY5DJ7d8sT0vxLwUQsu88Mn7l2VzcHDZg,221
103
105
  armodel/parser/__init__.py,sha256=wFcqh5unmDvKvf4R8vWkeertAXwWxAuOOEsbsM4mOHs,78
104
- armodel/parser/abstract_arxml_parser.py,sha256=9OT6j4W3gRCgwgplQf3d87w7kiJVMYW0ZD71VQpvI_k,10823
105
- armodel/parser/arxml_parser.py,sha256=Ag8PJnftG0_ME4RGHhjyezZPzZZtyIxT-xjAYRQ08WM,175357
106
- armodel/parser/connector_xlsx_parser.py,sha256=5KDaHykqL0NszftFG0V5CgmgiRi4Bsg7wJnlRg2pc2k,10087
106
+ armodel/parser/abstract_arxml_parser.py,sha256=vFJ3hc0mI1wXVC_9IFXf9nxFT4y8NacJIGwxI6gHj8E,10861
107
+ armodel/parser/arxml_parser.py,sha256=JXx7Gxc1dejIasi_miyVlrQoQ9jwg4Un5pjYFg5Li_w,175840
108
+ armodel/parser/connector_xlsx_parser.py,sha256=1w-1iIpIgPXTnQUS5mCoJm2lEAktwX2Gg5JaNzxq6Co,10198
107
109
  armodel/parser/excel_parser.py,sha256=-Ws0eDvGna9LPQC9T8bgMg3Zq84v04aSuSxZUlZx1Wo,698
108
110
  armodel/parser/file_parser.py,sha256=SEPj3YsYdsz8iBvxdeDIs63NC-NQLftoIm4yPoHheEc,1410
109
111
  armodel/report/__init__.py,sha256=EId0Ph3qYyzkKHKplJrs00ToxHeSjQVvhLwrSoV-SBw,52
110
- armodel/report/connector_xls_report.py,sha256=7GsvFWo_lfZRKCLAV-a17kC8-3KKSMAR1wGOnp9Cqlo,3876
112
+ armodel/report/connector_xls_report.py,sha256=y8BXiqDh-r4UYWLl1UQrCu_NqYbjvsjjBLQdBGRIljk,3947
111
113
  armodel/report/excel_report.py,sha256=Iome8wALpOFZyZkMCG5DPSAFkfv4pU0y_BZXHVSdonc,1412
112
114
  armodel/tests/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
113
115
  armodel/tests/test_armodel/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
114
116
  armodel/tests/test_armodel/models/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
115
117
  armodel/tests/test_armodel/models/test_ar_object.py,sha256=YLuEYmxk4KqmYGef6ru20i838raHgHrwVgnZQwi5_OU,4941
116
- armodel/tests/test_armodel/models/test_ar_package.py,sha256=amawnatYtITWZAgIvY9WIwvT0to_iFz11Rw77VG0QnU,14808
118
+ armodel/tests/test_armodel/models/test_ar_package.py,sha256=fOqVe5a11sDPLjHwYSgRb0Y9SpWKRW67aLPmDI2Qn8w,14846
117
119
  armodel/tests/test_armodel/models/test_ar_ref.py,sha256=h5XVmdZeVv3aqCaefai9MKI9PwE7YNt-FKGnmZJmc58,3519
118
120
  armodel/tests/test_armodel/models/test_bsw_module_template.py,sha256=nUMH7t6dJOXdATt8dfEnLotRUhSUQAYpUCianE0F_ao,2071
119
121
  armodel/tests/test_armodel/models/test_common_structure.py,sha256=ZPUA8txjwI16Jwxi9rH_5kcR3qQc4hLjdH7ql2iW7s8,3552
120
122
  armodel/tests/test_armodel/models/test_data_dictionary.py,sha256=Z_nn9JK7cJOPjst0ih4qj0212LIsHiJ-YUTfJOPEOvw,1106
121
123
  armodel/tests/test_armodel/models/test_data_prototype.py,sha256=ev8jFNFVFjkckkZP_dzj4oM49W-8CJJoucQB-0xActk,4259
122
- armodel/tests/test_armodel/models/test_datatype.py,sha256=hcuCcqmyi5p8-pHho4KnrAKIWiA00dlf-cHhodgPUJI,12035
123
- armodel/tests/test_armodel/models/test_general_structure.py,sha256=E8kiGQY_2Lj9lUhLNTHzBgu-xnGl8gO3faNueJFeHJE,2220
124
- armodel/tests/test_armodel/models/test_implementation.py,sha256=RBIuwvVjiSfAmqytZpT53SJd1AJzwHuH0KdAACoZ2Ik,912
124
+ armodel/tests/test_armodel/models/test_datatype.py,sha256=LDi92RzIK9Fzs3T30btodBecpwo-GK_eLTK43Wo1K9E,12034
125
+ armodel/tests/test_armodel/models/test_general_structure.py,sha256=QQKLcarnYDpA56LAdis_rr1PyLtiV-q4YLqfVvN1OIk,2258
126
+ armodel/tests/test_armodel/models/test_implementation.py,sha256=O0H18jgbrRwmnUE5tjrcHwoZ8puI4zNsPqqnAPlwn6E,950
125
127
  armodel/tests/test_armodel/models/test_m2_msr.py,sha256=pMWQS4O7FUMrbZcaCR0WF7lYj2m3jvq3AoR4ZbS7Ntg,2650
126
- armodel/tests/test_armodel/models/test_port_interface.py,sha256=6yD1dOERLv9lnlRUv4JnqJiTWaKnekcYFy2iktOuc4I,9201
128
+ armodel/tests/test_armodel/models/test_port_interface.py,sha256=o6dqy-4tvz3-9qyefR79OwwoYYeDjwPCvM7ahbzXx2w,9239
127
129
  armodel/tests/test_armodel/models/test_port_prototype.py,sha256=wV_QjAg4fb9MfeiwDWldzJiHeNpAcZq5vPZ4rWB2Pn0,494
128
130
  armodel/tests/test_armodel/parser/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
129
131
  armodel/tests/test_armodel/parser/test_arxml_parser.py,sha256=4-4DKdHIZN50wiM0tzzP-nejY74aEtAWhURwYxDGrWw,747
130
- armodel/tests/test_armodel/parser/test_parse_bswmd.py,sha256=z7ROVjFFDjk7eIKUwRc1HHUZFIqvSPoTyFAy1IABdC0,10182
131
- armodel/tests/test_armodel/parser/test_sw_components.py,sha256=OMJ7HEel8TmUEo50Hn3gEc8jdSV0StUOs_ThMENJXGM,4150
132
+ armodel/tests/test_armodel/parser/test_parse_bswmd.py,sha256=hh3R2L6QJOl4N9oY5fmy2REQm0KYpPoyY67tUcxf1PI,10257
133
+ armodel/tests/test_armodel/parser/test_sw_components.py,sha256=Mm8eteRFmVHF2VDvCYoxpMGtoya66-zxdq1ZUz4lvOE,4188
132
134
  armodel/writer/__init__.py,sha256=eXr3qhGzFIvHNBin22x-Tk2JM6QwRgx1jwrluDKAlzQ,37
133
135
  armodel/writer/abstract_arxml_writer.py,sha256=QoBAlVwt8D7Mpsd5t3Cg0foi-vyLlfaeSOqykn3O9u4,5235
134
- armodel/writer/arxml_writer.py,sha256=qJ_QgY-cy5y3X0oz1iBwpTPHvJdWz0c1AnYHfDkhxXU,170548
135
- armodel-1.6.1.dist-info/LICENSE,sha256=rceTpGhsmmN1M0k1KO0HRS11iCjen-2y56ZEqgo43wo,1088
136
- armodel-1.6.1.dist-info/METADATA,sha256=NrMjj0hjnot7yF6rs0h3rAmCvdgaxtY3BoXvR0EkPIU,10573
137
- armodel-1.6.1.dist-info/WHEEL,sha256=yQN5g4mg4AybRjkgi-9yy4iQEFibGQmlz78Pik5Or-A,92
138
- armodel-1.6.1.dist-info/entry_points.txt,sha256=7n_GwPbHcnqMTnKCnPjjjo3s_uo_vaFrjtZQeDQtHHM,397
139
- armodel-1.6.1.dist-info/top_level.txt,sha256=AEATYsqAuRpr0XGa_ThW7-o4WLlA5e3PEgD0QJhzmoA,8
140
- armodel-1.6.1.dist-info/RECORD,,
136
+ armodel/writer/arxml_writer.py,sha256=Zi_L-bRfKs3msa2kIxx_A9xjpa144QGIB8JvWzDDk3k,170625
137
+ armodel-1.6.2.dist-info/LICENSE,sha256=rceTpGhsmmN1M0k1KO0HRS11iCjen-2y56ZEqgo43wo,1088
138
+ armodel-1.6.2.dist-info/METADATA,sha256=j10Pbt8SKB8z1wZBqpkVKS1iME1y_tdYkTOSGtxpaBQ,10573
139
+ armodel-1.6.2.dist-info/WHEEL,sha256=yQN5g4mg4AybRjkgi-9yy4iQEFibGQmlz78Pik5Or-A,92
140
+ armodel-1.6.2.dist-info/entry_points.txt,sha256=7n_GwPbHcnqMTnKCnPjjjo3s_uo_vaFrjtZQeDQtHHM,397
141
+ armodel-1.6.2.dist-info/top_level.txt,sha256=AEATYsqAuRpr0XGa_ThW7-o4WLlA5e3PEgD0QJhzmoA,8
142
+ armodel-1.6.2.dist-info/RECORD,,