blob: 6b6897e71845adfab1bc3c8d6052d32e836d747b [file] [log] [blame]
<?xml version="1.0" encoding="UTF-8"?>
<am:Amalthea xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:am="http://app4mc.eclipse.org/amalthea/0.9.3" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<swModel>
<tasks name="Task_1" stimuli="PeriodicStimulus_1?type=PeriodicStimulus" preemption="preemptive" multipleTaskActivationLimit="0">
<callGraph>
<graphEntries xsi:type="am:CallSequence" name="CallSequence_1">
<calls xsi:type="am:TaskRunnableCall" runnable="Runnable_1?type=Runnable">
<counter prescaler="0" offset="0"/>
</calls>
</graphEntries>
</callGraph>
</tasks>
<tasks name="Task_2" stimuli="PeriodicStimulus_1?type=PeriodicStimulus" preemption="preemptive" multipleTaskActivationLimit="0">
<callGraph>
<graphEntries xsi:type="am:CallSequence" name="">
<calls xsi:type="am:TaskRunnableCall" runnable="Runnable_2?type=Runnable"/>
</graphEntries>
</callGraph>
</tasks>
<tasks name="Task_3-1" stimuli="PeriodicStimulus_1?type=PeriodicStimulus" preemption="preemptive" multipleTaskActivationLimit="0">
<callGraph>
<graphEntries xsi:type="am:CallSequence" name="CallSequence_1">
<calls xsi:type="am:TaskRunnableCall" runnable="Runnable_3?type=Runnable"/>
</graphEntries>
</callGraph>
</tasks>
<tasks name="Task_3-2" stimuli="PeriodicStimulus_1?type=PeriodicStimulus" preemption="preemptive" multipleTaskActivationLimit="0">
<callGraph>
<graphEntries xsi:type="am:CallSequence" name="CallSequence_1">
<calls xsi:type="am:TaskRunnableCall" runnable="Runnable_3?type=Runnable"/>
</graphEntries>
</callGraph>
</tasks>
<tasks name="Task4" stimuli="PeriodicStimulus_1?type=PeriodicStimulus" preemption="preemptive" multipleTaskActivationLimit="0">
<callGraph>
<graphEntries xsi:type="am:CallSequence" name="">
<calls xsi:type="am:TaskRunnableCall" runnable="Runnable_4?type=Runnable"/>
</graphEntries>
</callGraph>
</tasks>
<runnables name="Runnable_1" callback="false" service="false">
<runnableItems xsi:type="am:ChannelReceive" data="Channel2?type=Channel" elements="2" receiveOperation="LIFO_Read" dataMustBeNew="false" elementIndex="0" lowerBound="2">
<transmissionPolicy chunkProcessingTicks="0" transmitRatio="1.0">
<chunkSize value="23" unit="B"/>
</transmissionPolicy>
</runnableItems>
<runnableItems xsi:type="am:Ticks">
<default xsi:type="am:DiscreteValueConstant" value="100000"/>
</runnableItems>
<runnableItems xsi:type="am:ChannelSend" data="Channel1?type=Channel" elements="23">
<transmissionPolicy chunkProcessingTicks="0" transmitRatio="1.0">
<chunkSize value="3" unit="B"/>
</transmissionPolicy>
</runnableItems>
</runnables>
<runnables name="Runnable_2" callback="false" service="false">
<runnableItems xsi:type="am:ChannelReceive" data="Channel1?type=Channel" elements="2" receiveOperation="FIFO_Take" dataMustBeNew="false" elementIndex="0" lowerBound="1">
<transmissionPolicy chunkProcessingTicks="0" transmitRatio="1.0">
<chunkSize value="42" unit="B"/>
</transmissionPolicy>
</runnableItems>
<runnableItems xsi:type="am:Ticks">
<default xsi:type="am:DiscreteValueConstant" value="100000"/>
</runnableItems>
<runnableItems xsi:type="am:ChannelSend" data="Channel2?type=Channel" elements="23">
<transmissionPolicy chunkProcessingTicks="0" transmitRatio="1.0">
<chunkSize value="3" unit="B"/>
</transmissionPolicy>
</runnableItems>
</runnables>
<runnables name="Runnable_3" callback="false" service="false">
<runnableItems xsi:type="am:Ticks">
<default xsi:type="am:DiscreteValueConstant" value="100000"/>
</runnableItems>
<runnableItems xsi:type="am:ChannelSend" data="Channel3?type=Channel" elements="23">
<transmissionPolicy chunkProcessingTicks="0" transmitRatio="1.0">
<chunkSize value="3" unit="B"/>
</transmissionPolicy>
</runnableItems>
</runnables>
<runnables name="Runnable_4" callback="false" service="false">
<runnableItems xsi:type="am:Ticks">
<default xsi:type="am:DiscreteValueConstant" value="100000"/>
</runnableItems>
<runnableItems xsi:type="am:ChannelReceive" data="Channel3?type=Channel" elements="0" receiveOperation="LIFO_Read" dataMustBeNew="false" elementIndex="0" lowerBound="0"/>
</runnables>
<channels name="Channel1" defaultElements="1" maxElements="5">
<size value="22" unit="MB"/>
<elementType xsi:type="am:TypeRef" typeDef="BaseTypeDefinition_8?type=BaseTypeDefinition"/>
</channels>
<channels name="Channel2" defaultElements="1" maxElements="5">
<size value="44" unit="MB"/>
<elementType xsi:type="am:TypeRef" typeDef="BaseTypeDefinition_8?type=BaseTypeDefinition"/>
</channels>
<channels name="Channel3" defaultElements="1" maxElements="5">
<size value="44" unit="MB"/>
<elementType xsi:type="am:TypeRef" typeDef="BaseTypeDefinition_8?type=BaseTypeDefinition"/>
</channels>
<typeDefinitions xsi:type="am:BaseTypeDefinition" name="BaseTypeDefinition_1">
<size value="8" unit="B"/>
</typeDefinitions>
<typeDefinitions xsi:type="am:BaseTypeDefinition" name="BaseTypeDefinition_2">
<size value="0" unit="B"/>
</typeDefinitions>
<typeDefinitions xsi:type="am:BaseTypeDefinition" name="BaseTypeDefinition_3">
<size value="0" unit="B"/>
</typeDefinitions>
<typeDefinitions xsi:type="am:BaseTypeDefinition" name="BaseTypeDefinition_4">
<size value="4" unit="MB"/>
</typeDefinitions>
<typeDefinitions xsi:type="am:BaseTypeDefinition" name="BaseTypeDefinition_5">
<size value="120" unit="kB"/>
</typeDefinitions>
<typeDefinitions xsi:type="am:BaseTypeDefinition" name="BaseTypeDefinition_6">
<size value="10" unit="kB"/>
</typeDefinitions>
<typeDefinitions xsi:type="am:BaseTypeDefinition" name="BaseTypeDefinition_7">
<size value="4" unit="MB"/>
</typeDefinitions>
<typeDefinitions xsi:type="am:BaseTypeDefinition" name="BaseTypeDefinition_8">
<size value="20" unit="kB"/>
</typeDefinitions>
<typeDefinitions xsi:type="am:BaseTypeDefinition" name="BaseTypeDefinition_9">
<size value="180" unit="kB"/>
</typeDefinitions>
</swModel>
<hwModel>
<definitions xsi:type="am:ProcessingUnitDefinition" name="ProcessingUnitDefinition_1"/>
<definitions xsi:type="am:ProcessingUnitDefinition" name="ProcessingUnitDefinition_2"/>
<definitions xsi:type="am:MemoryDefinition" name="MemoryDefinition_1" memoryType="DRAM">
<size value="768" unit="kB"/>
<dataRate value="10" unit="MbitPerSecond"/>
</definitions>
<definitions xsi:type="am:MemoryDefinition" name="MemoryDefinition_2" memoryType="SRAM">
<size value="256" unit="kB"/>
<accessLatency xsi:type="am:DiscreteValueConstant" value="5"/>
</definitions>
<structures name="HwStructure_1" structureType="System">
<structures name="HwStructure_2" structureType="ECU">
<structures name="HwStructure_1" structureType="Microcontroller">
<modules xsi:type="am:ProcessingUnit" name="ProcessingUnit_1" frequencyDomain="FrequencyDomain_1?type=FrequencyDomain" definition="ProcessingUnitDefinition_1?type=ProcessingUnitDefinition">
<accessElements name="HwAccessElement_1" destination="Memory_1?type=Memory">
<readLatency xsi:type="am:DiscreteValueConstant" value="5"/>
<writeLatency xsi:type="am:DiscreteValueConstant" value="1"/>
</accessElements>
</modules>
<modules xsi:type="am:Memory" name="Memory_1" frequencyDomain="FrequencyDomain_1?type=FrequencyDomain" definition="MemoryDefinition_2?type=MemoryDefinition"/>
<modules xsi:type="am:ProcessingUnit" name="ProcessingUnit_2" frequencyDomain="FrequencyDomain_1?type=FrequencyDomain" definition="ProcessingUnitDefinition_2?type=ProcessingUnitDefinition">
<accessElements name="HwAccessElement_4" destination="Memory_2?type=Memory">
<readLatency xsi:type="am:DiscreteValueStatistics" lowerBound="10" upperBound="120" average="70.0"/>
<writeLatency xsi:type="am:DiscreteValueStatistics" lowerBound="90" upperBound="150" average="50.0"/>
</accessElements>
</modules>
<modules xsi:type="am:Memory" name="Memory_2" frequencyDomain="FrequencyDomain_1?type=FrequencyDomain" definition="MemoryDefinition_1?type=MemoryDefinition"/>
</structures>
</structures>
</structures>
<domains xsi:type="am:FrequencyDomain" name="FrequencyDomain_1" clockGating="false">
<defaultValue value="0.1" unit="GHz"/>
</domains>
</hwModel>
<osModel>
<operatingSystems name="OperatingSystem_1">
<taskSchedulers name="TaskScheduler_1">
<schedulingAlgorithm xsi:type="am:OSEK"/>
</taskSchedulers>
</operatingSystems>
</osModel>
<stimuliModel>
<stimuli xsi:type="am:PeriodicStimulus" name="PeriodicStimulus_1">
<offset value="0" unit="s"/>
<recurrence value="10" unit="ms"/>
</stimuli>
</stimuliModel>
<eventModel>
<events xsi:type="am:ChannelEvent" name="task1_runnable1_channel1_send" eventType="send" entity="Channel1?type=Channel" runnable="Runnable_1?type=Runnable" process="Task_1?type=Task"/>
<events xsi:type="am:ChannelEvent" name="task1_runnable1_channel2_receive" description="" eventType="receive" entity="Channel2?type=Channel" runnable="Runnable_1?type=Runnable" process="Task_1?type=Task"/>
<events xsi:type="am:ChannelEvent" name="task2_runnable2_channel1_receive" description="" eventType="receive" entity="Channel1?type=Channel" runnable="Runnable_2?type=Runnable" process="Task_2?type=Task"/>
<events xsi:type="am:ChannelEvent" name="task2_runnable2_channel2_send" eventType="send" entity="Channel2?type=Channel" runnable="Runnable_2?type=Runnable" process="Task_2?type=Task"/>
<events xsi:type="am:CustomEvent" name="customEvent0"/>
<events xsi:type="am:ChannelEvent" name="task1_channel1_allAccesses_r1" description="" entity="Channel1?type=Channel" runnable="Runnable_1?type=Runnable" process="Task_1?type=Task"/>
<events xsi:type="am:ChannelEvent" name="task1_channel1_send_r-notSet" eventType="send" entity="Channel1?type=Channel" process="Task_1?type=Task"/>
<events xsi:type="am:ChannelEvent" name="task1_channel-notSet_send_r1" eventType="send" runnable="Runnable_1?type=Runnable" process="Task_1?type=Task"/>
<events xsi:type="am:ChannelEvent" name="task1_channel1_send_r3" description="" eventType="send" entity="Channel1?type=Channel" process="Task_1?type=Task"/>
<events xsi:type="am:ChannelEvent" name="taskX_runnable1_channel1_send" eventType="send" entity="Channel1?type=Channel" runnable="Runnable_1?type=Runnable"/>
<events xsi:type="am:ProcessEvent" name="task1_activate" eventType="activate" entity="Task_1?type=Task"/>
<events xsi:type="am:ProcessEvent" name="task1_terminate" eventType="terminate" entity="Task_1?type=Task"/>
<events xsi:type="am:ProcessEvent" name="task1_start" eventType="start" entity="Task_1?type=Task"/>
<events xsi:type="am:ProcessEvent" name="task1_preempt" eventType="preempt" entity="Task_1?type=Task"/>
<events xsi:type="am:ProcessEvent" name="task1_resume" eventType="resume" entity="Task_1?type=Task"/>
<events xsi:type="am:ProcessEvent" name="task1_run" eventType="run" entity="Task_1?type=Task"/>
<events xsi:type="am:ProcessEvent" name="task2_activate" eventType="activate" entity="Task_2?type=Task"/>
<events xsi:type="am:ProcessEvent" name="task2_start" eventType="start" entity="Task_2?type=Task"/>
<events xsi:type="am:ProcessEvent" name="task2_terminate" eventType="terminate" entity="Task_2?type=Task"/>
<events xsi:type="am:ProcessEvent" name="task3-1_activate" eventType="activate" entity="Task_3-1?type=Task"/>
<events xsi:type="am:ProcessEvent" name="task3-1_start" eventType="start" entity="Task_3-1?type=Task"/>
<events xsi:type="am:ProcessEvent" name="task3-1_terminate" eventType="terminate" entity="Task_3-1?type=Task"/>
<events xsi:type="am:RunnableEvent" name="runnable1_start" eventType="start" entity="Runnable_1?type=Runnable" process="Task_1?type=Task"/>
<events xsi:type="am:RunnableEvent" name="runnable1_terminate" eventType="terminate" entity="Runnable_1?type=Runnable" process="Task_1?type=Task"/>
<events xsi:type="am:RunnableEvent" name="runnable2_start" eventType="start" entity="Runnable_2?type=Runnable" process="Task_2?type=Task"/>
<events xsi:type="am:RunnableEvent" name="runnable2_terminate" eventType="terminate" entity="Runnable_2?type=Runnable" process="Task_2?type=Task"/>
<events xsi:type="am:RunnableEvent" name="runnable3_task_3_1_start" eventType="start" entity="Runnable_3?type=Runnable" process="Task_3-1?type=Task"/>
<events xsi:type="am:RunnableEvent" name="runnable3_task_3_1_terminate" eventType="terminate" entity="Runnable_3?type=Runnable" process="Task_3-1?type=Task"/>
<events xsi:type="am:RunnableEvent" name="runnable3_task_3_2_start" eventType="start" entity="Runnable_3?type=Runnable" process="Task_3-2?type=Task"/>
<events xsi:type="am:RunnableEvent" name="runnable3_task_3_2_terminate" eventType="terminate" entity="Runnable_3?type=Runnable" process="Task_3-2?type=Task"/>
<events xsi:type="am:RunnableEvent" name="runnableEvent_taskNotSet" eventType="terminate" entity="Runnable_3?type=Runnable"/>
</eventModel>
<constraintsModel>
<eventChains name="EventSequence_Function_NestedEventChain">
<segments xsi:type="am:EventChainContainer">
<eventChain name="">
<segments xsi:type="am:EventChainContainer">
<eventChain name="runnable2_start-terminate" stimulus="runnable2_start?type=RunnableEvent" response="runnable2_terminate?type=RunnableEvent"/>
</segments>
<segments xsi:type="am:EventChainContainer">
<eventChain name="runnable2-terminate_runnable3_2-activate" stimulus="runnable2_terminate?type=RunnableEvent" response="runnable3_task_3_2_start?type=RunnableEvent"/>
</segments>
<segments xsi:type="am:EventChainContainer">
<eventChain name="runnable3_2_start-terminate" stimulus="runnable3_task_3_2_start?type=RunnableEvent" response="runnable3_task_3_2_terminate?type=RunnableEvent"/>
</segments>
</eventChain>
</segments>
<segments xsi:type="am:EventChainReference" eventChain="EventSequence_Function_SimpleEventChain?type=EventChain"/>
<segments xsi:type="am:EventChainContainer">
<eventChain name="runnable1_terminate-runnable2_start" stimulus="runnable1_terminate?type=RunnableEvent" response="runnable2_start?type=RunnableEvent"/>
</segments>
</eventChains>
<eventChains name="EventSequence_Function_ReferenceChain" stimulus="runnable2_start?type=RunnableEvent" response="runnable3_task_3_2_start?type=RunnableEvent">
<segments xsi:type="am:EventChainReference" eventChain="EventSequence_Function_NestedEventChain?type=EventChain"/>
</eventChains>
<eventChains name="EventSequence_Function_SimpleEventChain" stimulus="runnable1_start?type=RunnableEvent" response="runnable1_terminate?type=RunnableEvent"/>
<eventChains name="EventSequence_Process_SimpleEventChain" stimulus="task1_activate?type=ProcessEvent" response="task1_terminate?type=ProcessEvent"/>
<eventChains name="EventSequence_Process_NestedEventChain" stimulus="task1_activate?type=ProcessEvent" response="task3-1_terminate?type=ProcessEvent">
<segments xsi:type="am:EventChainContainer">
<eventChain name="" stimulus="task3-1_terminate?type=ProcessEvent" response="task2_activate?type=ProcessEvent">
<segments xsi:type="am:EventChainContainer">
<eventChain name="task2_activate-terminate" stimulus="task2_activate?type=ProcessEvent" response="task2_terminate?type=ProcessEvent"/>
</segments>
<segments xsi:type="am:EventChainContainer">
<eventChain name="task3_1_activate-terminate" stimulus="task3-1_activate?type=ProcessEvent" response="task3-1_terminate?type=ProcessEvent"/>
</segments>
</eventChain>
</segments>
<segments xsi:type="am:EventChainContainer">
<eventChain name="task2_termiate-task3_1_activate" stimulus="task2_terminate?type=ProcessEvent" response="task3-1_activate?type=ProcessEvent"/>
</segments>
</eventChains>
<eventChains name="EventSequence_Process_ReferenceChain" stimulus="task2_activate?type=ProcessEvent" response="task3-1_activate?type=ProcessEvent">
<segments xsi:type="am:EventChainReference" eventChain="EventSequence_Process_NestedEventChain?type=EventChain"/>
</eventChains>
<eventChains name="DataFlow_ReferenceEventChain" stimulus="task1_runnable1_channel1_send?type=ChannelEvent" response="task2_runnable2_channel2_send?type=ChannelEvent">
<segments xsi:type="am:EventChainReference" eventChain="DataFlow_NestedEventChain?type=EventChain"/>
<segments xsi:type="am:EventChainReference" eventChain="DataFlow_SimpleEventChain?type=EventChain"/>
</eventChains>
<eventChains name="DataFlow_SimpleEventChain" stimulus="task2_runnable2_channel2_send?type=ChannelEvent" response="task1_runnable1_channel2_receive?type=ChannelEvent"/>
<eventChains name="DataFlow_NestedEventChain" stimulus="task1_runnable1_channel1_send?type=ChannelEvent" response="task1_runnable1_channel2_receive?type=ChannelEvent">
<segments xsi:type="am:EventChainContainer">
<eventChain name="SubEventChain3" stimulus="task2_runnable2_channel2_send?type=ChannelEvent" response="task1_runnable1_channel2_receive?type=ChannelEvent"/>
</segments>
<segments xsi:type="am:EventChainContainer">
<eventChain name="SubEventChain_1" stimulus="task1_channel-notSet_send_r1?type=ChannelEvent" response="task2_runnable2_channel2_send?type=ChannelEvent">
<segments xsi:type="am:EventChainContainer">
<eventChain name="SubEventChain_1_1" stimulus="task1_runnable1_channel1_send?type=ChannelEvent" response="task2_runnable2_channel1_receive?type=ChannelEvent"/>
</segments>
<segments xsi:type="am:EventChainContainer">
<eventChain name="SubEventChain_1_2" stimulus="task2_runnable2_channel1_receive?type=ChannelEvent" response="task2_runnable2_channel2_send?type=ChannelEvent"/>
</segments>
</eventChain>
</segments>
</eventChains>
<eventChains name="NotADataFlowEventChain_wrongEventType" stimulus="task2_runnable2_channel1_receive?type=ChannelEvent" response="customEvent0?type=CustomEvent"/>
<eventChains name="NotADataFlowEventChain_IllegalEventTypeInStimulus" stimulus="task1_channel1_allAccesses_r1?type=ChannelEvent" response="task1_runnable1_channel1_send?type=ChannelEvent"/>
<eventChains name="NotADataFlowEventChain_ChannelNotSet" stimulus="task1_channel-notSet_send_r1?type=ChannelEvent" response="task1_runnable1_channel1_send?type=ChannelEvent"/>
<eventChains name="NotADataFlowEventChain_RunnableNotSet" stimulus="task1_channel1_allAccesses_r1?type=ChannelEvent" response="task1_runnable1_channel1_send?type=ChannelEvent"/>
<eventChains name="NotADataFlowEventChain_RunnableNotContainsChannelAccess" stimulus="task1_channel1_send_r3?type=ChannelEvent" response="task1_runnable1_channel1_send?type=ChannelEvent"/>
<eventChains name="NotADataFlowEventChain_TaskNotSet" stimulus="task2_runnable2_channel1_receive?type=ChannelEvent" response="taskX_runnable1_channel1_send?type=ChannelEvent"/>
<eventChains name="NotAEventSequenceEventChain_wrongEventType" stimulus="task1_activate?type=ProcessEvent" response="customEvent0?type=CustomEvent"/>
<eventChains name="NotAEventSequence_EventChain_RunnableNotSet" stimulus="runnable1_start?type=RunnableEvent" response="runnableEvent_taskNotSet?type=RunnableEvent"/>
<eventChains name="NotAEventSequenceEventChain_TaskNotSet" stimulus="runnableEvent_taskNotSet?type=RunnableEvent" response="runnable1_start?type=RunnableEvent"/>
</constraintsModel>
<mappingModel>
<schedulerAllocation scheduler="TaskScheduler_1?type=TaskScheduler" responsibility="ProcessingUnit_1?type=ProcessingUnit ProcessingUnit_2?type=ProcessingUnit" executingPU="ProcessingUnit_1?type=ProcessingUnit"/>
<taskAllocation task="Task_1?type=Task" scheduler="TaskScheduler_1?type=TaskScheduler" affinity="ProcessingUnit_1?type=ProcessingUnit">
<schedulingParameters priority="20"/>
</taskAllocation>
<taskAllocation task="Task_2?type=Task" scheduler="TaskScheduler_1?type=TaskScheduler" affinity="ProcessingUnit_1?type=ProcessingUnit"/>
<taskAllocation task="Task_3-1?type=Task" scheduler="TaskScheduler_1?type=TaskScheduler"/>
<taskAllocation task="Task_3-2?type=Task" scheduler="TaskScheduler_1?type=TaskScheduler"/>
<taskAllocation task="Task4?type=Task" scheduler="TaskScheduler_1?type=TaskScheduler"/>
<memoryMapping abstractElement="Channel1?type=Channel" memory="Memory_1?type=Memory" memoryPositionAddress="0x2000"/>
<memoryMapping abstractElement="Channel2?type=Channel" memory="Memory_2?type=Memory" memoryPositionAddress="0x3000"/>
</mappingModel>
<componentsModel>
<components name="Component_1"/>
<components name="Component_2"/>
<components name="Component_3"/>
<components name="Component_4"/>
<components name="Component_5"/>
<components name="Component_6"/>
<components name="Component_7"/>
<components name="Component_8"/>
<components xsi:type="am:Composite" name="Composite_1">
<componentInstances name="ComponentInstance_1" type="Component_1?type=Component"/>
<componentInstances name="ComponentInstance_2" type="Component_2?type=Component"/>
<componentInstances name="ComponentInstance_3" type="Component_3?type=Component"/>
<componentInstances name="ComponentInstance_4" type="Component_1?type=Component"/>
</components>
<components xsi:type="am:Composite" name="Composite_2">
<componentInstances name="ComponentInstance_5" type="Component_4?type=Component"/>
<componentInstances name="ComponentInstance_6" type="Component_5?type=Component"/>
</components>
<components xsi:type="am:Composite" name="Composite_3">
<componentInstances name="ComponentInstance_7" type="Component_7?type=Component"/>
</components>
<systems name="System_1">
<componentInstances name="ComponentInstance_8" type="Component_6?type=Component"/>
<componentInstances name="ComponentInstance_9" type="Component_6?type=Component"/>
<componentInstances name="ComponentInstance_10" type="Composite_1?type=Composite"/>
<componentInstances name="ComponentInstance_11" type="Composite_2?type=Composite"/>
<componentInstances name="ComponentInstance_12" type="Composite_3?type=Composite"/>
</systems>
</componentsModel>
</am:Amalthea>