<?xml version="1.0" encoding="ASCII"?>
<tTCN3:TTCN3File xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:tTCN3="http://www.ugoe.de/cs/swe/TTCN3">
  <modules name="Wizardry">
    <defs>
      <definitions>
        <def xsi:type="tTCN3:ModuleParDef">
          <param>
            <type pre="float"/>
            <list>
              <params name="mp_componentElapsedTimerMaxDuration"/>
            </list>
          </param>
        </def>
      </definitions>
      <definitions>
        <def xsi:type="tTCN3:TypeDef">
          <body>
            <sub xsi:type="tTCN3:SubTypeDefNamed" name="Wizardry_SimpleDataType">
              <type pre="charstring"/>
            </sub>
          </body>
        </def>
      </definitions>
      <definitions>
        <def xsi:type="tTCN3:TypeDef">
          <body>
            <sub xsi:type="tTCN3:SubTypeDefNamed" name="TDLinteger">
              <type>
                <ref head="//@modules.0/@defs/@definitions.1/@def/@body/@sub"/>
              </type>
            </sub>
          </body>
        </def>
      </definitions>
      <definitions>
        <def xsi:type="tTCN3:TypeDef">
          <body>
            <sub xsi:type="tTCN3:SubTypeDefNamed" name="string">
              <type>
                <ref head="//@modules.0/@defs/@definitions.1/@def/@body/@sub"/>
              </type>
            </sub>
          </body>
        </def>
      </definitions>
      <definitions>
        <def xsi:type="tTCN3:TypeDef">
          <body>
            <structured>
              <recordOf xsi:type="tTCN3:RecordOfDefNamed" name="iCol">
                <type>
                  <ref head="//@modules.0/@defs/@definitions.2/@def/@body/@sub"/>
                </type>
              </recordOf>
            </structured>
          </body>
        </def>
      </definitions>
      <definitions>
        <def xsi:type="tTCN3:FunctionDef" name="setupTestConfiguration_base">
          <runsOn component="//@modules.0/@defs/@definitions.6/@def/@body/@structured/@component"/>
          <system component="//@modules.0/@defs/@definitions.7/@def/@body/@structured/@component"/>
          <statement>
            <stat>
              <statements>
                <basic>
                  <assign>
                    <ref>
                      <ref>
                        <head target="//@modules.0/@defs/@definitions.6/@def/@body/@structured/@component/@defs.0/@element/@variable/@list/@variables.0"/>
                      </ref>
                    </ref>
                    <expression xsi:type="tTCN3:OpCall">
                      <configuration>
                        <create type="//@modules.0/@defs/@definitions.8/@def/@body/@structured/@component"/>
                      </configuration>
                    </expression>
                  </assign>
                </basic>
              </statements>
              <statements>
                <configuration>
                  <map>
                    <spec>
                      <port1 port="//@modules.0/@defs/@definitions.7/@def/@body/@structured/@component/@defs.0/@element/@port/@instances.0">
                        <component system="system"/>
                      </port1>
                      <port2 port="//@modules.0/@defs/@definitions.8/@def/@body/@structured/@component/@defs.3/@element/@port/@instances.0">
                        <component>
                          <ref>
                            <variable>
                              <ref>
                                <head target="//@modules.0/@defs/@definitions.6/@def/@body/@structured/@component/@defs.0/@element/@variable/@list/@variables.0"/>
                              </ref>
                            </variable>
                          </ref>
                        </component>
                      </port2>
                    </spec>
                  </map>
                </configuration>
              </statements>
              <statements>
                <configuration>
                  <map>
                    <spec>
                      <port1 port="//@modules.0/@defs/@definitions.7/@def/@body/@structured/@component/@defs.1/@element/@port/@instances.0">
                        <component system="system"/>
                      </port1>
                      <port2 port="//@modules.0/@defs/@definitions.8/@def/@body/@structured/@component/@defs.4/@element/@port/@instances.0">
                        <component>
                          <ref>
                            <variable>
                              <ref>
                                <head target="//@modules.0/@defs/@definitions.6/@def/@body/@structured/@component/@defs.0/@element/@variable/@list/@variables.0"/>
                              </ref>
                            </variable>
                          </ref>
                        </component>
                      </port2>
                    </spec>
                  </map>
                </configuration>
              </statements>
              <sc>;</sc>
              <sc>;</sc>
              <sc>;</sc>
            </stat>
          </statement>
        </def>
      </definitions>
      <definitions>
        <def xsi:type="tTCN3:TypeDef">
          <body>
            <structured>
              <component name="MTC_base">
                <defs sc=";">
                  <element>
                    <variable>
                      <listType>
                        <ref head="//@modules.0/@defs/@definitions.8/@def/@body/@structured/@component"/>
                      </listType>
                      <list>
                        <variables name="tester"/>
                      </list>
                    </variable>
                  </element>
                </defs>
              </component>
            </structured>
          </body>
        </def>
      </definitions>
      <definitions>
        <def xsi:type="tTCN3:TypeDef">
          <body>
            <structured>
              <component name="SYSTEM_base">
                <defs sc=";">
                  <element>
                    <port ref="//@modules.0/@defs/@definitions.9/@def/@body/@structured/@port">
                      <instances name="sut_node_interface1"/>
                    </port>
                  </element>
                </defs>
                <defs sc=";">
                  <element>
                    <port ref="//@modules.0/@defs/@definitions.9/@def/@body/@structured/@port">
                      <instances name="sut_node_interface2"/>
                    </port>
                  </element>
                </defs>
              </component>
            </structured>
          </body>
        </def>
      </definitions>
      <definitions>
        <def xsi:type="tTCN3:TypeDef">
          <body>
            <structured>
              <component name="node">
                <defs sc=";">
                  <element>
                    <timer>
                      <list>
                        <variables name="T_elapsedTimeOfComponent" ac=":=">
                          <expr xsi:type="tTCN3:Value">
                            <ref>
                              <head target="//@modules.0/@defs/@definitions.0/@def/@param/@list/@params.0"/>
                            </ref>
                          </expr>
                        </variables>
                      </list>
                    </timer>
                  </element>
                </defs>
                <defs sc=";">
                  <element>
                    <port ref="//@modules.0/@defs/@definitions.9/@def/@body/@structured/@port">
                      <instances name="interface1"/>
                    </port>
                  </element>
                </defs>
                <defs sc=";">
                  <element>
                    <port ref="//@modules.0/@defs/@definitions.9/@def/@body/@structured/@port">
                      <instances name="interface2"/>
                    </port>
                  </element>
                </defs>
                <defs sc=";">
                  <element>
                    <port ref="//@modules.0/@defs/@definitions.9/@def/@body/@structured/@port">
                      <instances name="interface1_to_sut_node_interface1"/>
                    </port>
                  </element>
                </defs>
                <defs sc=";">
                  <element>
                    <port ref="//@modules.0/@defs/@definitions.9/@def/@body/@structured/@port">
                      <instances name="interface1_to_sut_node_interface2"/>
                    </port>
                  </element>
                </defs>
                <defs sc=";">
                  <element>
                    <port ref="//@modules.0/@defs/@definitions.9/@def/@body/@structured/@port">
                      <instances name="interface3"/>
                    </port>
                  </element>
                </defs>
              </component>
            </structured>
          </body>
        </def>
      </definitions>
      <definitions>
        <def xsi:type="tTCN3:TypeDef">
          <body>
            <structured>
              <port name="http">
                <body>
                  <attribs>
                    <message>
                      <messages direction="inout">
                        <allOrTypeList>
                          <typeList>
                            <types>
                              <ref head="//@modules.0/@defs/@definitions.3/@def/@body/@sub"/>
                            </types>
                            <types>
                              <ref head="//@modules.0/@defs/@definitions.2/@def/@body/@sub"/>
                            </types>
                            <types pre="charstring"/>
                            <types pre="integer"/>
                          </typeList>
                        </allOrTypeList>
                      </messages>
                    </message>
                  </attribs>
                </body>
              </port>
            </structured>
          </body>
        </def>
      </definitions>
      <definitions>
        <def xsi:type="tTCN3:FunctionDef" name="example">
          <runsOn component="//@modules.0/@defs/@definitions.6/@def/@body/@structured/@component"/>
          <statement>
            <stat>
              <statements>
                <configuration>
                  <startTc>
                    <ref>
                      <variable>
                        <ref>
                          <head target="//@modules.0/@defs/@definitions.6/@def/@body/@structured/@component/@defs.0/@element/@variable/@list/@variables.0"/>
                        </ref>
                      </variable>
                    </ref>
                    <function ref="//@modules.0/@defs/@definitions.11/@def"/>
                  </startTc>
                </configuration>
              </statements>
              <sc>;</sc>
            </stat>
          </statement>
        </def>
      </definitions>
      <definitions>
        <def xsi:type="tTCN3:FunctionDef" name="example_tester_main">
          <runsOn component="//@modules.0/@defs/@definitions.8/@def/@body/@structured/@component"/>
          <statement>
            <stat>
              <statements>
                <communication>
                  <send port="//@modules.0/@defs/@definitions.8/@def/@body/@structured/@component/@defs.3/@element/@port/@instances.0">
                    <send>
                      <template>
                        <template>
                          <simple>
                            <expr xsi:type="tTCN3:Value">
                              <predef charString="&quot;hello&quot;"/>
                            </expr>
                          </simple>
                        </template>
                      </template>
                    </send>
                  </send>
                </communication>
              </statements>
              <sc>;</sc>
            </stat>
            <stat>
              <statements>
                <communication>
                  <send port="//@modules.0/@defs/@definitions.8/@def/@body/@structured/@component/@defs.3/@element/@port/@instances.0">
                    <send>
                      <template>
                        <template>
                          <simple>
                            <expr xsi:type="tTCN3:Value">
                              <predef integer="1"/>
                            </expr>
                          </simple>
                        </template>
                      </template>
                    </send>
                  </send>
                </communication>
              </statements>
              <sc>;</sc>
            </stat>
            <stat>
              <statements>
                <communication>
                  <send port="//@modules.0/@defs/@definitions.8/@def/@body/@structured/@component/@defs.3/@element/@port/@instances.0">
                    <send>
                      <template>
                        <template>
                          <simple>
                            <expr xsi:type="tTCN3:Value">
                              <predef integer="1"/>
                            </expr>
                          </simple>
                        </template>
                      </template>
                    </send>
                  </send>
                </communication>
              </statements>
              <sc>;</sc>
            </stat>
          </statement>
        </def>
      </definitions>
      <definitions>
        <def xsi:type="tTCN3:TestcaseDef" name="tc_example">
          <spec>
            <runsOn component="//@modules.0/@defs/@definitions.6/@def/@body/@structured/@component"/>
            <systemSpec component="//@modules.0/@defs/@definitions.7/@def/@body/@structured/@component"/>
          </spec>
          <statement>
            <stat>
              <statements>
                <behavior>
                  <function ref="//@modules.0/@defs/@definitions.5/@def"/>
                </behavior>
              </statements>
              <statements>
                <behavior>
                  <function ref="//@modules.0/@defs/@definitions.10/@def"/>
                </behavior>
              </statements>
              <statements>
                <configuration>
                  <done>
                    <component all="all"/>
                  </done>
                </configuration>
              </statements>
              <sc>;</sc>
              <sc>;</sc>
              <sc>;</sc>
            </stat>
          </statement>
        </def>
      </definitions>
      <definitions>
        <def xsi:type="tTCN3:FunctionDef" name="exampl">
          <runsOn component="//@modules.0/@defs/@definitions.6/@def/@body/@structured/@component"/>
          <statement>
            <stat>
              <statements>
                <configuration>
                  <startTc>
                    <ref>
                      <variable>
                        <ref>
                          <head target="//@modules.0/@defs/@definitions.6/@def/@body/@structured/@component/@defs.0/@element/@variable/@list/@variables.0"/>
                        </ref>
                      </variable>
                    </ref>
                    <function ref="//@modules.0/@defs/@definitions.14/@def"/>
                  </startTc>
                </configuration>
              </statements>
              <sc>;</sc>
            </stat>
          </statement>
        </def>
      </definitions>
      <definitions>
        <def xsi:type="tTCN3:FunctionDef" name="exampl_tester_main">
          <runsOn component="//@modules.0/@defs/@definitions.8/@def/@body/@structured/@component"/>
          <statement>
            <stat>
              <statements>
                <communication>
                  <send port="//@modules.0/@defs/@definitions.8/@def/@body/@structured/@component/@defs.3/@element/@port/@instances.0">
                    <send>
                      <template>
                        <template>
                          <simple>
                            <expr xsi:type="tTCN3:Value">
                              <predef charString="&quot;hello&quot;"/>
                            </expr>
                          </simple>
                        </template>
                      </template>
                    </send>
                  </send>
                </communication>
              </statements>
              <sc>;</sc>
            </stat>
            <stat>
              <statements>
                <communication>
                  <receive>
                    <any ref="//@modules.0/@defs/@definitions.8/@def/@body/@structured/@component/@defs.3/@element/@port/@instances.0"/>
                    <receive>
                      <template>
                        <template>
                          <simple>
                            <expr xsi:type="tTCN3:Value">
                              <predef charString="&quot;hello back&quot;"/>
                            </expr>
                          </simple>
                        </template>
                      </template>
                    </receive>
                  </receive>
                </communication>
              </statements>
              <sc>;</sc>
            </stat>
          </statement>
        </def>
      </definitions>
      <definitions>
        <def xsi:type="tTCN3:TestcaseDef" name="tc_exampl">
          <spec>
            <runsOn component="//@modules.0/@defs/@definitions.6/@def/@body/@structured/@component"/>
            <systemSpec component="//@modules.0/@defs/@definitions.7/@def/@body/@structured/@component"/>
          </spec>
          <statement>
            <stat>
              <statements>
                <behavior>
                  <function ref="//@modules.0/@defs/@definitions.5/@def"/>
                </behavior>
              </statements>
              <statements>
                <behavior>
                  <function ref="//@modules.0/@defs/@definitions.13/@def"/>
                </behavior>
              </statements>
              <statements>
                <configuration>
                  <done>
                    <component all="all"/>
                  </done>
                </configuration>
              </statements>
              <sc>;</sc>
              <sc>;</sc>
              <sc>;</sc>
            </stat>
          </statement>
        </def>
      </definitions>
      <definitions>
        <def xsi:type="tTCN3:FunctionDef" name="exampl2">
          <runsOn component="//@modules.0/@defs/@definitions.6/@def/@body/@structured/@component"/>
          <statement>
            <stat>
              <statements>
                <configuration>
                  <startTc>
                    <ref>
                      <variable>
                        <ref>
                          <head target="//@modules.0/@defs/@definitions.6/@def/@body/@structured/@component/@defs.0/@element/@variable/@list/@variables.0"/>
                        </ref>
                      </variable>
                    </ref>
                    <function ref="//@modules.0/@defs/@definitions.17/@def"/>
                  </startTc>
                </configuration>
              </statements>
              <sc>;</sc>
            </stat>
          </statement>
        </def>
      </definitions>
      <definitions>
        <def xsi:type="tTCN3:FunctionDef" name="exampl2_tester_main">
          <runsOn component="//@modules.0/@defs/@definitions.8/@def/@body/@structured/@component"/>
          <statement>
            <stat>
              <statements>
                <communication>
                  <send port="//@modules.0/@defs/@definitions.8/@def/@body/@structured/@component/@defs.3/@element/@port/@instances.0">
                    <send>
                      <template>
                        <template>
                          <simple>
                            <expr xsi:type="tTCN3:Value">
                              <predef charString="&quot;hello&quot;"/>
                            </expr>
                          </simple>
                        </template>
                      </template>
                    </send>
                  </send>
                </communication>
              </statements>
              <sc>;</sc>
            </stat>
            <stat>
              <statements>
                <communication>
                  <receive>
                    <any ref="//@modules.0/@defs/@definitions.8/@def/@body/@structured/@component/@defs.3/@element/@port/@instances.0"/>
                    <receive>
                      <template>
                        <template>
                          <simple>
                            <expr xsi:type="tTCN3:Value">
                              <predef charString="&quot;hello back&quot;"/>
                            </expr>
                          </simple>
                        </template>
                      </template>
                    </receive>
                  </receive>
                </communication>
              </statements>
              <sc>;</sc>
            </stat>
          </statement>
        </def>
      </definitions>
      <definitions>
        <def xsi:type="tTCN3:TestcaseDef" name="tc_exampl2">
          <spec>
            <runsOn component="//@modules.0/@defs/@definitions.6/@def/@body/@structured/@component"/>
            <systemSpec component="//@modules.0/@defs/@definitions.7/@def/@body/@structured/@component"/>
          </spec>
          <statement>
            <stat>
              <statements>
                <behavior>
                  <function ref="//@modules.0/@defs/@definitions.5/@def"/>
                </behavior>
              </statements>
              <statements>
                <behavior>
                  <function ref="//@modules.0/@defs/@definitions.16/@def"/>
                </behavior>
              </statements>
              <statements>
                <configuration>
                  <done>
                    <component all="all"/>
                  </done>
                </configuration>
              </statements>
              <sc>;</sc>
              <sc>;</sc>
              <sc>;</sc>
            </stat>
          </statement>
        </def>
      </definitions>
    </defs>
  </modules>
</tTCN3:TTCN3File>
