<?xml version="1.0" encoding="UTF-8"?>
<Mission xmlns="Tethys"
       xmlns:Control="Tethys/Control" 
       xmlns:Derivation="Tethys/Derivation" 
       xmlns:Guidance="Tethys/Guidance"
       xmlns:Science="Tethys/Science"
       xmlns:Sample="Tethys/Sample"
       xmlns:Units="Tethys/Units"
       xmlns:Universal="Tethys/Universal"
       xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
       xsi:schemaLocation="Tethys http://okeanids.mbari.org/tethys/Xml/Tethys.xsd
                           Tethys/Control http://okeanids.mbari.org/tethys/Xml/Control.xsd
                           Tethys/Derivation http://okeanids.mbari.org/tethys/Xml/Derivation.xsd
                           Tethys/Guidance http://okeanids.mbari.org/tethys/Xml/Guidance.xsd
                           Tethys/Sample http://okeanids.mbari.org/tethys/Xml/Sample.xsd
                           Tethys/Science http://okeanids.mbari.org/tethys/Xml/Science.xsd
                           Tethys/Units http://okeanids.mbari.org/tethys/Xml/Units.xsd
                           Tethys/Universal http://okeanids.mbari.org/tethys/Xml/Universal.xsd"
       Id="IsothermDepthCANON">

<!-- Almost every mission should start with an overall timeout and a NeedCommsTime. Drift Missions will have an acoustic timeout instead of a NeedCommsTime. -->

<!-- You probably need to change these. -->

    <DefineArg Name="NumSamplers"><Description>
        Total number of ESP cartridges (Maximum 60) or CANON samplers. Set to 0
        to disable sampling.
    </Description><Units:count/><Value>1</Value></DefineArg>

    <DefineArg Name="StartIndex"><Description>
        Start index in ESP settings. If re-running mission, can skip settings of
        already-completed samples. Default is 1 (no skipping).
    </Description><Units:count/><Value>1</Value></DefineArg>

    <DefineArg Name="MissionTimeout"><Description>
        Maximum duration of mission
    </Description><Units:hour/><Value>20</Value></DefineArg>

    <DefineArg Name="NeedCommsTimeInTransect"><Description>
        On yo-yo transects, how often to surface for commumications
    </Description><Units:minute/><Value>60</Value></DefineArg>

    <DefineArg Name="AcousticTrackingTimeout"><Description>
        If the vehicle does not receive an acoustic signal for more than this
        length of time, it will surface for communications. Set longer than
        MissionTimeout to effectively disable.
    </Description><Units:hour/><Value>21</Value></DefineArg>

    <DefineArg Name="MaxWaitNoFiring"><Description>
        If no firing after more than MaxWaitNoFiring, terminate mission.
    </Description><Units:hour/><Value>2</Value></DefineArg>

    <DefineArg Name="MaxWaitNotAchievingDepth"><Description>
        Maximum wait time the vehicle cannot reach the targeted depth.
    </Description><Units:hour/><Value>2</Value></DefineArg>

    <DefineArg Name="CommsAtEndOfTransit"><Description>
        Whether to go to surface for comms before the initial dive.
    </Description><False/></DefineArg>

    <DefineArg Name="SendESPStatusAndData"><Description>
        Whether to senddata.
    </Description><False/></DefineArg>

    <DefineArg Name="CylinderTimeout"><Description>
        Maximum duration of cylinder yoyo.
    </Description><Units:minute/><Value>30</Value></DefineArg>

    <DefineArg Name="FindHighChlLocation"><Description>
        Whether to search for the location of high chl.
    </Description><False/></DefineArg>

    <DefineArg Name="CylinderYoYo"><Description>
        Whether to yoyo on cylinder centered at the sampling location.
        Initialized to True.
    </Description><False/></DefineArg>

    <DefineArg Name="SampleAtPeakChl"><Description>
        Whether to sampling at peak-chl
    </Description><False/></DefineArg>

<!--debug    
    </Description><True/></DefineArg>
-->

    <DefineArg Name="InitialDiveDuration"><Description>
        On the first dive to the target depth, run at SpeedInitialDive for this
        duration (e.g., 1 m/s spiral to dive fast).
    </Description><Units:minute/><Value>5.0</Value></DefineArg>

    <DefineArg Name="SpeedTransit"><Description>
        Vehicle speed when transiting.
    </Description><Units:meter_per_second/><Value>1.0</Value></DefineArg>

    <DefineArg Name="SpeedInitialDive"><Description>
        Vehicle speed during initial dive. 0.0 for drift mode (prop off); 1.0
        for spiral mode (prop on). Initialized to 1 m/s.
    </Description><Units:meter_per_second/><Value>1.0</Value></DefineArg>

    <DefineArg Name="SpeedSampling"><Description>
        Vehicle speed during sampling: 0.0 for drift mode (prop off); 1.0 for
        donut mode (prop on). Initialized to 1 m/s.
    </Description><Units:meter_per_second/><Value>1.0</Value></DefineArg>

    <DefineArg Name="RudderAngleSpiralOrDonut"><Description>
        Rudder angle during spiral or donut.
    </Description><Units:degree/><Value>13</Value></DefineArg>

    <DefineArg Name="MaxDepth"><Description>
        Maximum depth for the entire mission.
    </Description><Units:meter/><Value>50</Value></DefineArg>

    <DefineArg Name="MinAltitude"><Description>
        Minimum altitude for the entire mission.
    </Description><Units:meter/><Value>7</Value></DefineArg>

    <DefineArg Name="MinOffshore"><Description>
        Minimum offshore distance for the entire mission.
    </Description><Units:kilometer/><Value>2</Value></DefineArg>

    <DefineArg Name="DeepBoundESP"><Description>
        Deep depth bound for ESP operation
    </Description><Units:meter/><Value>45</Value></DefineArg>

    <DefineArg Name="ShallowBoundChl"><Description>
        Shallow depth bound for chl-peak detection.
    </Description><Units:meter/><Value>4.5</Value></DefineArg>

    <DefineArg Name="DeepBoundChl"><Description>
        Deep depth bound for chl-peak detection.
    </Description><Units:meter/><Value>27</Value></DefineArg>

    <DefineArg Name="VertMargin"><Description>
        Shallow bound for vertical chl-peak finding maneuver = ShallowBoundChl -
        VertMargin. Deep bound for vertical chl-peak finding maneuver =
        DeepBoundChl + VertMargin.
    </Description><Units:meter/><Value>3</Value></DefineArg>

    <DefineArg Name="TransitYoYoMinDepth"><Description>
        Minimum depth while performing the YoYo behavior.
    </Description><Units:meter/><Value>4.5</Value></DefineArg>

    <DefineArg Name="TransitYoYoMaxDepth"><Description>
        Maximum depth while performing the YoYo behavior.
    </Description><Units:meter/><Value>27</Value></DefineArg>

    <DefineArg Name="YoYoMinAltitude"><Description>
        Minimum altitude while performing the YoYo behavior (for
        bottom-terminated YoYos).
    </Description><Units:meter/><Value>9</Value></DefineArg>

    <DefineArg Name="CylinderYoYoMinDep"><Description>
        Minimum depth while performing the YoYo behavior on cylinder centered at
        the sampling location.
    </Description><Units:meter/><Value>4.5</Value></DefineArg>

    <DefineArg Name="CylinderYoYoMaxDep"><Description>
        Maximum depth while performing the YoYo behavior on cylinder centered at
        the sampling location.
    </Description><Units:meter/><Value>27</Value></DefineArg>

    <DefineArg Name="CylinderRadius"><Description>
        Radius of cylinder centered at the sampling location.
    </Description><Units:meter/><Value>200</Value></DefineArg>

    <DefineArg Name="MaxCirclesOnCylinder"><Description>
        Maximum number of circles on cylinder.
    </Description><Units:count/><Value>1</Value></DefineArg>

    <DefineArg Name="RepeatTransects"><Description>
        Number of times the vehicle should try to cycle through waypoints..
    </Description><Units:count/><Value>1</Value></DefineArg>

    <DefineArg Name="Lat1"><Description>
        Latitude of waypoint 1. If nan, waypoint is skipped. If
        FindHighChlLocation is True, the search-for-hichl distance needs to be
        at least 4 yoyo profiles.
    </Description><Units:degree/><Value>NaN</Value></DefineArg>

    <DefineArg Name="Lon1"><Description>
        Longitude of waypoint 1. If nan, waypoint is skipped. If
        FindHighChlLocation is True, the search-for-hichl distance needs to be
        at least 4 yoyo profiles.
    </Description><Units:degree/><Value>NaN</Value></DefineArg>

    <DefineArg Name="Lat2"><Description>
        Latitude of waypoint 2. If nan, waypoint is skipped.
    </Description><Units:degree/><Value>NaN</Value></DefineArg>

    <DefineArg Name="Lon2"><Description>
        Longitude of waypoint 2. If nan, waypoint is skipped.
    </Description><Units:degree/><Value>NaN</Value></DefineArg>

    <DefineArg Name="Lat3"><Description>
        Latitude of waypoint 3. If nan, waypoint is skipped.
    </Description><Units:degree/><Value>NaN</Value></DefineArg>

    <DefineArg Name="Lon3"><Description>
        Longitude of waypoint 3. If nan, waypoint is skipped.
    </Description><Units:degree/><Value>NaN</Value></DefineArg>

    <DefineArg Name="Lat4"><Description>
        Latitude of waypoint 4. If nan, waypoint is skipped.
    </Description><Units:degree/><Value>NaN</Value></DefineArg>

    <DefineArg Name="Lon4"><Description>
        Longitude of waypoint 4. If nan, waypoint is skipped.
    </Description><Units:degree/><Value>NaN</Value></DefineArg>

    <DefineOutput Name="SampleESPOnly"><Description>
        Indicates only ESP will be used in sample.
    </Description><Units:count/><Value>0</Value></DefineOutput>

    <DefineOutput Name="SampleCANONSamplerOnly"><Description>
        Indicates only CANONSampler will be used in sample.
    </Description><Units:count/><Value>1</Value></DefineOutput>

    <DefineOutput Name="SampleAll"><Description>
        Indicates only all available samplers will be used in sample.
    </Description><Units:count/><Value>2</Value></DefineOutput>

    <DefineArg Name="SampleType1"><Description>
        Sample type: (0) ESP only, (1) CANON Sampler only, (2) All available
        samplers
    </Description><Units:count/><Value>0</Value></DefineArg>

    <DefineArg Name="SampleType2"><Description>
        Sample 2.
    </Description><Units:count/><Value>0</Value></DefineArg>

    <DefineArg Name="SampleType3"><Description>
        Sample 3.
    </Description><Units:count/><Value>0</Value></DefineArg>

    <DefineArg Name="SampleType4"><Description>
        Sample 4.
    </Description><Units:count/><Value>0</Value></DefineArg>

    <DefineArg Name="SampleType5"><Description>
        Sample 5.
    </Description><Units:count/><Value>0</Value></DefineArg>

    <DefineArg Name="SampleType6"><Description>
        Sample 6.
    </Description><Units:count/><Value>0</Value></DefineArg>

    <DefineArg Name="SampleType7"><Description>
        Sample 7.
    </Description><Units:count/><Value>0</Value></DefineArg>

    <DefineArg Name="SampleType8"><Description>
        Sample 8.
    </Description><Units:count/><Value>0</Value></DefineArg>

    <DefineArg Name="SampleType9"><Description>
        Sample 9.
    </Description><Units:count/><Value>0</Value></DefineArg>

    <DefineArg Name="SampleType10"><Description>
        Sample 10.
    </Description><Units:count/><Value>0</Value></DefineArg>

    <DefineArg Name="SampleType11"><Description>
        Sample 11.
    </Description><Units:count/><Value>0</Value></DefineArg>

    <DefineArg Name="SampleType12"><Description>
        Sample 12.
    </Description><Units:count/><Value>0</Value></DefineArg>

    <DefineArg Name="SampleType13"><Description>
        Sample 13.
    </Description><Units:count/><Value>0</Value></DefineArg>

    <DefineArg Name="SampleType14"><Description>
        Sample 14.
    </Description><Units:count/><Value>0</Value></DefineArg>

    <DefineArg Name="SampleType15"><Description>
        Sample 15.
    </Description><Units:count/><Value>0</Value></DefineArg>

    <DefineArg Name="SampleType16"><Description>
        Sample 16.
    </Description><Units:count/><Value>0</Value></DefineArg>

    <DefineArg Name="SampleType17"><Description>
        Sample 17.
    </Description><Units:count/><Value>0</Value></DefineArg>

    <DefineArg Name="SampleType18"><Description>
        Sample 18.
    </Description><Units:count/><Value>0</Value></DefineArg>

    <DefineArg Name="SampleType19"><Description>
        Sample 19.
    </Description><Units:count/><Value>0</Value></DefineArg>

    <DefineArg Name="SampleType20"><Description>
        Sample 20.
    </Description><Units:count/><Value>0</Value></DefineArg>

    <DefineArg Name="SampleType21"><Description>
        Sample 21.
    </Description><Units:count/><Value>0</Value></DefineArg>

    <DefineArg Name="SampleType22"><Description>
        Sample 22.
    </Description><Units:count/><Value>0</Value></DefineArg>

    <DefineArg Name="SampleType23"><Description>
        Sample 23.
    </Description><Units:count/><Value>0</Value></DefineArg>

    <DefineArg Name="SampleType24"><Description>
        Sample 24.
    </Description><Units:count/><Value>0</Value></DefineArg>

    <DefineArg Name="SampleType25"><Description>
        Sample 25.
    </Description><Units:count/><Value>0</Value></DefineArg>

    <DefineArg Name="SampleType26"><Description>
        Sample 26.
    </Description><Units:count/><Value>0</Value></DefineArg>

    <DefineArg Name="SampleType27"><Description>
        Sample 27.
    </Description><Units:count/><Value>0</Value></DefineArg>

    <DefineArg Name="SampleType28"><Description>
        Sample 28.
    </Description><Units:count/><Value>0</Value></DefineArg>

    <DefineArg Name="SampleType29"><Description>
        Sample 29.
    </Description><Units:count/><Value>0</Value></DefineArg>

    <DefineArg Name="SampleType30"><Description>
        Sample 30.
    </Description><Units:count/><Value>0</Value></DefineArg>

    <DefineArg Name="SampleType31"><Description>
        Sample 31.
    </Description><Units:count/><Value>0</Value></DefineArg>

    <DefineArg Name="SampleType32"><Description>
        Sample 32.
    </Description><Units:count/><Value>0</Value></DefineArg>

    <DefineArg Name="SampleType33"><Description>
        Sample 33.
    </Description><Units:count/><Value>0</Value></DefineArg>

    <DefineArg Name="SampleType34"><Description>
        Sample 34.
    </Description><Units:count/><Value>0</Value></DefineArg>

    <DefineArg Name="SampleType35"><Description>
        Sample 35.
    </Description><Units:count/><Value>0</Value></DefineArg>

    <DefineArg Name="SampleType36"><Description>
        Sample 36.
    </Description><Units:count/><Value>0</Value></DefineArg>

    <DefineArg Name="SampleType37"><Description>
        Sample 37.
    </Description><Units:count/><Value>0</Value></DefineArg>

    <DefineArg Name="SampleType38"><Description>
        Sample 38.
    </Description><Units:count/><Value>0</Value></DefineArg>

    <DefineArg Name="SampleType39"><Description>
        Sample 39.
    </Description><Units:count/><Value>0</Value></DefineArg>

    <DefineArg Name="SampleType40"><Description>
        Sample 40.
    </Description><Units:count/><Value>0</Value></DefineArg>

    <DefineArg Name="SampleType41"><Description>
        Sample 41.
    </Description><Units:count/><Value>0</Value></DefineArg>

    <DefineArg Name="SampleType42"><Description>
        Sample 42.
    </Description><Units:count/><Value>0</Value></DefineArg>

    <DefineArg Name="SampleType43"><Description>
        Sample 43.
    </Description><Units:count/><Value>0</Value></DefineArg>

    <DefineArg Name="SampleType44"><Description>
        Sample 44.
    </Description><Units:count/><Value>0</Value></DefineArg>

    <DefineArg Name="SampleType45"><Description>
        Sample 45.
    </Description><Units:count/><Value>0</Value></DefineArg>

    <DefineArg Name="SampleType46"><Description>
        Sample 46.
    </Description><Units:count/><Value>0</Value></DefineArg>

    <DefineArg Name="SampleType47"><Description>
        Sample 47.
    </Description><Units:count/><Value>0</Value></DefineArg>

    <DefineArg Name="SampleType48"><Description>
        Sample 48.
    </Description><Units:count/><Value>0</Value></DefineArg>

    <DefineArg Name="SampleType49"><Description>
        Sample 49.
    </Description><Units:count/><Value>0</Value></DefineArg>

    <DefineArg Name="SampleType50"><Description>
        Sample 50.
    </Description><Units:count/><Value>0</Value></DefineArg>

    <DefineArg Name="SampleType51"><Description>
        Sample 51.
    </Description><Units:count/><Value>0</Value></DefineArg>

    <DefineArg Name="SampleType52"><Description>
        Sample 52.
    </Description><Units:count/><Value>0</Value></DefineArg>

    <DefineArg Name="SampleType53"><Description>
        Sample 53.
    </Description><Units:count/><Value>0</Value></DefineArg>

    <DefineArg Name="SampleType54"><Description>
        Sample 54.
    </Description><Units:count/><Value>0</Value></DefineArg>

    <DefineArg Name="SampleType55"><Description>
        Sample 55.
    </Description><Units:count/><Value>0</Value></DefineArg>

    <DefineArg Name="SampleType56"><Description>
        Sample 56.
    </Description><Units:count/><Value>0</Value></DefineArg>

    <DefineArg Name="SampleType57"><Description>
        Sample 57.
    </Description><Units:count/><Value>0</Value></DefineArg>

    <DefineArg Name="SampleType58"><Description>
        Sample 58.
    </Description><Units:count/><Value>0</Value></DefineArg>

    <DefineArg Name="SampleType59"><Description>
        Sample 59.
    </Description><Units:count/><Value>0</Value></DefineArg>

    <DefineArg Name="SampleType60"><Description>
        Sample 60.
    </Description><Units:count/><Value>0</Value></DefineArg>

    <DefineArg Name="CartridgeTypeCommon"><Description>
        Value common to all samples unless set diffently: cartridge type.
    </Description><Units:count/><Value>-6</Value></DefineArg>

    <DefineArg Name="CartridgeType1"><Description>
        Sample 1. Cartridge type.
    </Description><Units:count/><Value>-6</Value></DefineArg>

    <DefineArg Name="CartridgeType2"><Description>
        Sample 2.
    </Description><Units:count/><Value>-6</Value></DefineArg>

    <DefineArg Name="CartridgeType3"><Description>
        Sample 3.
    </Description><Units:count/><Value>-6</Value></DefineArg>

    <DefineArg Name="CartridgeType4"><Description>
        Sample 4.
    </Description><Units:count/><Value>-6</Value></DefineArg>

    <DefineArg Name="CartridgeType5"><Description>
        Sample 5.
    </Description><Units:count/><Value>-6</Value></DefineArg>

    <DefineArg Name="CartridgeType6"><Description>
        Sample 6.
    </Description><Units:count/><Value>-6</Value></DefineArg>

    <DefineArg Name="CartridgeType7"><Description>
        Sample 7.
    </Description><Units:count/><Value>-6</Value></DefineArg>

    <DefineArg Name="CartridgeType8"><Description>
        Sample 8.
    </Description><Units:count/><Value>-6</Value></DefineArg>

    <DefineArg Name="CartridgeType9"><Description>
        Sample 9.
    </Description><Units:count/><Value>-6</Value></DefineArg>

    <DefineArg Name="CartridgeType10"><Description>
        Sample 10.
    </Description><Units:count/><Value>-6</Value></DefineArg>

    <DefineArg Name="CartridgeType11"><Description>
        Sample 11.
    </Description><Units:count/><Value>-6</Value></DefineArg>

    <DefineArg Name="CartridgeType12"><Description>
        Sample 12.
    </Description><Units:count/><Value>-6</Value></DefineArg>

    <DefineArg Name="CartridgeType13"><Description>
        Sample 13.
    </Description><Units:count/><Value>-6</Value></DefineArg>

    <DefineArg Name="CartridgeType14"><Description>
        Sample 14.
    </Description><Units:count/><Value>-6</Value></DefineArg>

    <DefineArg Name="CartridgeType15"><Description>
        Sample 15.
    </Description><Units:count/><Value>-6</Value></DefineArg>

    <DefineArg Name="CartridgeType16"><Description>
        Sample 16.
    </Description><Units:count/><Value>-6</Value></DefineArg>

    <DefineArg Name="CartridgeType17"><Description>
        Sample 17.
    </Description><Units:count/><Value>-6</Value></DefineArg>

    <DefineArg Name="CartridgeType18"><Description>
        Sample 18.
    </Description><Units:count/><Value>-6</Value></DefineArg>

    <DefineArg Name="CartridgeType19"><Description>
        Sample 19.
    </Description><Units:count/><Value>-6</Value></DefineArg>

    <DefineArg Name="CartridgeType20"><Description>
        Sample 20.
    </Description><Units:count/><Value>-6</Value></DefineArg>

    <DefineArg Name="CartridgeType21"><Description>
        Sample 21.
    </Description><Units:count/><Value>-6</Value></DefineArg>

    <DefineArg Name="CartridgeType22"><Description>
        Sample 22.
    </Description><Units:count/><Value>-6</Value></DefineArg>

    <DefineArg Name="CartridgeType23"><Description>
        Sample 23.
    </Description><Units:count/><Value>-6</Value></DefineArg>

    <DefineArg Name="CartridgeType24"><Description>
        Sample 24.
    </Description><Units:count/><Value>-6</Value></DefineArg>

    <DefineArg Name="CartridgeType25"><Description>
        Sample 25.
    </Description><Units:count/><Value>-6</Value></DefineArg>

    <DefineArg Name="CartridgeType26"><Description>
        Sample 26.
    </Description><Units:count/><Value>-6</Value></DefineArg>

    <DefineArg Name="CartridgeType27"><Description>
        Sample 27.
    </Description><Units:count/><Value>-6</Value></DefineArg>

    <DefineArg Name="CartridgeType28"><Description>
        Sample 28.
    </Description><Units:count/><Value>-6</Value></DefineArg>

    <DefineArg Name="CartridgeType29"><Description>
        Sample 29.
    </Description><Units:count/><Value>-6</Value></DefineArg>

    <DefineArg Name="CartridgeType30"><Description>
        Sample 30.
    </Description><Units:count/><Value>-6</Value></DefineArg>

    <DefineArg Name="CartridgeType31"><Description>
        Sample 31.
    </Description><Units:count/><Value>-6</Value></DefineArg>

    <DefineArg Name="CartridgeType32"><Description>
        Sample 32.
    </Description><Units:count/><Value>-6</Value></DefineArg>

    <DefineArg Name="CartridgeType33"><Description>
        Sample 33.
    </Description><Units:count/><Value>-6</Value></DefineArg>

    <DefineArg Name="CartridgeType34"><Description>
        Sample 34.
    </Description><Units:count/><Value>-6</Value></DefineArg>

    <DefineArg Name="CartridgeType35"><Description>
        Sample 35.
    </Description><Units:count/><Value>-6</Value></DefineArg>

    <DefineArg Name="CartridgeType36"><Description>
        Sample 36.
    </Description><Units:count/><Value>-6</Value></DefineArg>

    <DefineArg Name="CartridgeType37"><Description>
        Sample 37.
    </Description><Units:count/><Value>-6</Value></DefineArg>

    <DefineArg Name="CartridgeType38"><Description>
        Sample 38.
    </Description><Units:count/><Value>-6</Value></DefineArg>

    <DefineArg Name="CartridgeType39"><Description>
        Sample 39.
    </Description><Units:count/><Value>-6</Value></DefineArg>

    <DefineArg Name="CartridgeType40"><Description>
        Sample 40.
    </Description><Units:count/><Value>-6</Value></DefineArg>

    <DefineArg Name="CartridgeType41"><Description>
        Sample 41.
    </Description><Units:count/><Value>-6</Value></DefineArg>

    <DefineArg Name="CartridgeType42"><Description>
        Sample 42.
    </Description><Units:count/><Value>-6</Value></DefineArg>

    <DefineArg Name="CartridgeType43"><Description>
        Sample 43.
    </Description><Units:count/><Value>-6</Value></DefineArg>

    <DefineArg Name="CartridgeType44"><Description>
        Sample 44.
    </Description><Units:count/><Value>-6</Value></DefineArg>

    <DefineArg Name="CartridgeType45"><Description>
        Sample 45.
    </Description><Units:count/><Value>-6</Value></DefineArg>

    <DefineArg Name="CartridgeType46"><Description>
        Sample 46.
    </Description><Units:count/><Value>-6</Value></DefineArg>

    <DefineArg Name="CartridgeType47"><Description>
        Sample 47.
    </Description><Units:count/><Value>-6</Value></DefineArg>

    <DefineArg Name="CartridgeType48"><Description>
        Sample 48.
    </Description><Units:count/><Value>-6</Value></DefineArg>

    <DefineArg Name="CartridgeType49"><Description>
        Sample 49.
    </Description><Units:count/><Value>-6</Value></DefineArg>

    <DefineArg Name="CartridgeType50"><Description>
        Sample 50.
    </Description><Units:count/><Value>-6</Value></DefineArg>

    <DefineArg Name="CartridgeType51"><Description>
        Sample 51.
    </Description><Units:count/><Value>-6</Value></DefineArg>

    <DefineArg Name="CartridgeType52"><Description>
        Sample 52.
    </Description><Units:count/><Value>-6</Value></DefineArg>

    <DefineArg Name="CartridgeType53"><Description>
        Sample 53.
    </Description><Units:count/><Value>-6</Value></DefineArg>

    <DefineArg Name="CartridgeType54"><Description>
        Sample 54.
    </Description><Units:count/><Value>-6</Value></DefineArg>

    <DefineArg Name="CartridgeType55"><Description>
        Sample 55.
    </Description><Units:count/><Value>-6</Value></DefineArg>

    <DefineArg Name="CartridgeType56"><Description>
        Sample 56.
    </Description><Units:count/><Value>-6</Value></DefineArg>

    <DefineArg Name="CartridgeType57"><Description>
        Sample 57.
    </Description><Units:count/><Value>-6</Value></DefineArg>

    <DefineArg Name="CartridgeType58"><Description>
        Sample 58.
    </Description><Units:count/><Value>-6</Value></DefineArg>

    <DefineArg Name="CartridgeType59"><Description>
        Sample 59.
    </Description><Units:count/><Value>-6</Value></DefineArg>

    <DefineArg Name="CartridgeType60"><Description>
        Sample 60.
    </Description><Units:count/><Value>-6</Value></DefineArg>

    <DefineArg Name="TempDiffFromPeakChlCommon"><Description>
        Value common to all samples unless set diffently: target temperature
        difference from the peak-chl temperature.
    </Description><Units:kelvin/><Value>NaN</Value></DefineArg>

    <DefineArg Name="TempDiffFromPeakChl1"><Description>
        Sample 1. Target temperature difference from the peak-chl temperature.
    </Description><Units:kelvin/><Value>NaN</Value></DefineArg>

    <DefineArg Name="TempDiffFromPeakChl2"><Description>
        Sample 2.
    </Description><Units:kelvin/><Value>NaN</Value></DefineArg>

    <DefineArg Name="TempDiffFromPeakChl3"><Description>
        Sample 3.
    </Description><Units:kelvin/><Value>NaN</Value></DefineArg>

    <DefineArg Name="TempDiffFromPeakChl4"><Description>
        Sample 4.
    </Description><Units:kelvin/><Value>NaN</Value></DefineArg>

    <DefineArg Name="TempDiffFromPeakChl5"><Description>
        Sample 5.
    </Description><Units:kelvin/><Value>NaN</Value></DefineArg>

    <DefineArg Name="TempDiffFromPeakChl6"><Description>
        Sample 6.
    </Description><Units:kelvin/><Value>NaN</Value></DefineArg>

    <DefineArg Name="TempDiffFromPeakChl7"><Description>
        Sample 7.
    </Description><Units:kelvin/><Value>NaN</Value></DefineArg>

    <DefineArg Name="TempDiffFromPeakChl8"><Description>
        Sample 8.
    </Description><Units:kelvin/><Value>NaN</Value></DefineArg>

    <DefineArg Name="TempDiffFromPeakChl9"><Description>
        Sample 9.
    </Description><Units:kelvin/><Value>NaN</Value></DefineArg>

    <DefineArg Name="TempDiffFromPeakChl10"><Description>
        Sample 10.
    </Description><Units:kelvin/><Value>NaN</Value></DefineArg>

    <DefineArg Name="TempDiffFromPeakChl11"><Description>
        Sample 11.
    </Description><Units:kelvin/><Value>NaN</Value></DefineArg>

    <DefineArg Name="TempDiffFromPeakChl12"><Description>
        Sample 12.
    </Description><Units:kelvin/><Value>NaN</Value></DefineArg>

    <DefineArg Name="TempDiffFromPeakChl13"><Description>
        Sample 13.
    </Description><Units:kelvin/><Value>NaN</Value></DefineArg>

    <DefineArg Name="TempDiffFromPeakChl14"><Description>
        Sample 14.
    </Description><Units:kelvin/><Value>NaN</Value></DefineArg>

    <DefineArg Name="TempDiffFromPeakChl15"><Description>
        Sample 15.
    </Description><Units:kelvin/><Value>NaN</Value></DefineArg>

    <DefineArg Name="TempDiffFromPeakChl16"><Description>
        Sample 16.
    </Description><Units:kelvin/><Value>NaN</Value></DefineArg>

    <DefineArg Name="TempDiffFromPeakChl17"><Description>
        Sample 17.
    </Description><Units:kelvin/><Value>NaN</Value></DefineArg>

    <DefineArg Name="TempDiffFromPeakChl18"><Description>
        Sample 18.
    </Description><Units:kelvin/><Value>NaN</Value></DefineArg>

    <DefineArg Name="TempDiffFromPeakChl19"><Description>
        Sample 19.
    </Description><Units:kelvin/><Value>NaN</Value></DefineArg>

    <DefineArg Name="TempDiffFromPeakChl20"><Description>
        Sample 20.
    </Description><Units:kelvin/><Value>NaN</Value></DefineArg>

    <DefineArg Name="TempDiffFromPeakChl21"><Description>
        Sample 21.
    </Description><Units:kelvin/><Value>NaN</Value></DefineArg>

    <DefineArg Name="TempDiffFromPeakChl22"><Description>
        Sample 22.
    </Description><Units:kelvin/><Value>NaN</Value></DefineArg>

    <DefineArg Name="TempDiffFromPeakChl23"><Description>
        Sample 23.
    </Description><Units:kelvin/><Value>NaN</Value></DefineArg>

    <DefineArg Name="TempDiffFromPeakChl24"><Description>
        Sample 24.
    </Description><Units:kelvin/><Value>NaN</Value></DefineArg>

    <DefineArg Name="TempDiffFromPeakChl25"><Description>
        Sample 25.
    </Description><Units:kelvin/><Value>NaN</Value></DefineArg>

    <DefineArg Name="TempDiffFromPeakChl26"><Description>
        Sample 26.
    </Description><Units:kelvin/><Value>NaN</Value></DefineArg>

    <DefineArg Name="TempDiffFromPeakChl27"><Description>
        Sample 27.
    </Description><Units:kelvin/><Value>NaN</Value></DefineArg>

    <DefineArg Name="TempDiffFromPeakChl28"><Description>
        Sample 28.
    </Description><Units:kelvin/><Value>NaN</Value></DefineArg>

    <DefineArg Name="TempDiffFromPeakChl29"><Description>
        Sample 29.
    </Description><Units:kelvin/><Value>NaN</Value></DefineArg>

    <DefineArg Name="TempDiffFromPeakChl30"><Description>
        Sample 30.
    </Description><Units:kelvin/><Value>NaN</Value></DefineArg>

    <DefineArg Name="TempDiffFromPeakChl31"><Description>
        Sample 31.
    </Description><Units:kelvin/><Value>NaN</Value></DefineArg>

    <DefineArg Name="TempDiffFromPeakChl32"><Description>
        Sample 32.
    </Description><Units:kelvin/><Value>NaN</Value></DefineArg>

    <DefineArg Name="TempDiffFromPeakChl33"><Description>
        Sample 33.
    </Description><Units:kelvin/><Value>NaN</Value></DefineArg>

    <DefineArg Name="TempDiffFromPeakChl34"><Description>
        Sample 34.
    </Description><Units:kelvin/><Value>NaN</Value></DefineArg>

    <DefineArg Name="TempDiffFromPeakChl35"><Description>
        Sample 35.
    </Description><Units:kelvin/><Value>NaN</Value></DefineArg>

    <DefineArg Name="TempDiffFromPeakChl36"><Description>
        Sample 36.
    </Description><Units:kelvin/><Value>NaN</Value></DefineArg>

    <DefineArg Name="TempDiffFromPeakChl37"><Description>
        Sample 37.
    </Description><Units:kelvin/><Value>NaN</Value></DefineArg>

    <DefineArg Name="TempDiffFromPeakChl38"><Description>
        Sample 38.
    </Description><Units:kelvin/><Value>NaN</Value></DefineArg>

    <DefineArg Name="TempDiffFromPeakChl39"><Description>
        Sample 39.
    </Description><Units:kelvin/><Value>NaN</Value></DefineArg>

    <DefineArg Name="TempDiffFromPeakChl40"><Description>
        Sample 40.
    </Description><Units:kelvin/><Value>NaN</Value></DefineArg>

    <DefineArg Name="TempDiffFromPeakChl41"><Description>
        Sample 41.
    </Description><Units:kelvin/><Value>NaN</Value></DefineArg>

    <DefineArg Name="TempDiffFromPeakChl42"><Description>
        Sample 42.
    </Description><Units:kelvin/><Value>NaN</Value></DefineArg>

    <DefineArg Name="TempDiffFromPeakChl43"><Description>
        Sample 43.
    </Description><Units:kelvin/><Value>NaN</Value></DefineArg>

    <DefineArg Name="TempDiffFromPeakChl44"><Description>
        Sample 44.
    </Description><Units:kelvin/><Value>NaN</Value></DefineArg>

    <DefineArg Name="TempDiffFromPeakChl45"><Description>
        Sample 45.
    </Description><Units:kelvin/><Value>NaN</Value></DefineArg>

    <DefineArg Name="TempDiffFromPeakChl46"><Description>
        Sample 46.
    </Description><Units:kelvin/><Value>NaN</Value></DefineArg>

    <DefineArg Name="TempDiffFromPeakChl47"><Description>
        Sample 47.
    </Description><Units:kelvin/><Value>NaN</Value></DefineArg>

    <DefineArg Name="TempDiffFromPeakChl48"><Description>
        Sample 48.
    </Description><Units:kelvin/><Value>NaN</Value></DefineArg>

    <DefineArg Name="TempDiffFromPeakChl49"><Description>
        Sample 49.
    </Description><Units:kelvin/><Value>NaN</Value></DefineArg>

    <DefineArg Name="TempDiffFromPeakChl50"><Description>
        Sample 50.
    </Description><Units:kelvin/><Value>NaN</Value></DefineArg>

    <DefineArg Name="TempDiffFromPeakChl51"><Description>
        Sample 51.
    </Description><Units:kelvin/><Value>NaN</Value></DefineArg>

    <DefineArg Name="TempDiffFromPeakChl52"><Description>
        Sample 52.
    </Description><Units:kelvin/><Value>NaN</Value></DefineArg>

    <DefineArg Name="TempDiffFromPeakChl53"><Description>
        Sample 53.
    </Description><Units:kelvin/><Value>NaN</Value></DefineArg>

    <DefineArg Name="TempDiffFromPeakChl54"><Description>
        Sample 54.
    </Description><Units:kelvin/><Value>NaN</Value></DefineArg>

    <DefineArg Name="TempDiffFromPeakChl55"><Description>
        Sample 55.
    </Description><Units:kelvin/><Value>NaN</Value></DefineArg>

    <DefineArg Name="TempDiffFromPeakChl56"><Description>
        Sample 56.
    </Description><Units:kelvin/><Value>NaN</Value></DefineArg>

    <DefineArg Name="TempDiffFromPeakChl57"><Description>
        Sample 57.
    </Description><Units:kelvin/><Value>NaN</Value></DefineArg>

    <DefineArg Name="TempDiffFromPeakChl58"><Description>
        Sample 58.
    </Description><Units:kelvin/><Value>NaN</Value></DefineArg>

    <DefineArg Name="TempDiffFromPeakChl59"><Description>
        Sample 59.
    </Description><Units:kelvin/><Value>NaN</Value></DefineArg>

    <DefineArg Name="TempDiffFromPeakChl60"><Description>
        Sample 60.
    </Description><Units:kelvin/><Value>NaN</Value></DefineArg>

    <DefineArg Name="TempCommon"><Description>
        Value common to all samples unless set diffently: pre-designated
        temperature. If NaN, will use temp diff from chl-peak temp.
    </Description><Units:celsius/><Value>NaN</Value></DefineArg>

    <DefineArg Name="Temp1"><Description>
        Sample 1. Pre-designated temperature. If NaN, will use temp diff from
        chl-peak temp.
<!--debug	
    </Description><Units:celsius/><Value>12.5</Value></DefineArg>
-->
    </Description><Units:celsius/><Value>NaN</Value></DefineArg>

    <DefineArg Name="Temp2"><Description>
        Sample 2.
<!--debug
    </Description><Units:celsius/><Value>13.0</Value></DefineArg>
-->
    </Description><Units:celsius/><Value>NaN</Value></DefineArg>

    <DefineArg Name="Temp3"><Description>
        Sample 3.
<!--debug
    </Description><Units:celsius/><Value>15.0</Value></DefineArg>
-->
    </Description><Units:celsius/><Value>NaN</Value></DefineArg>

    <DefineArg Name="Temp4"><Description>
        Sample 4.
<!--debug
    </Description><Units:celsius/><Value>14.0</Value></DefineArg>
-->
    </Description><Units:celsius/><Value>NaN</Value></DefineArg>

    <DefineArg Name="Temp5"><Description>
        Sample 5.
    </Description><Units:celsius/><Value>NaN</Value></DefineArg>

    <DefineArg Name="Temp6"><Description>
        Sample 6.
    </Description><Units:celsius/><Value>NaN</Value></DefineArg>

    <DefineArg Name="Temp7"><Description>
        Sample 7.
    </Description><Units:celsius/><Value>NaN</Value></DefineArg>

    <DefineArg Name="Temp8"><Description>
        Sample 8.
    </Description><Units:celsius/><Value>NaN</Value></DefineArg>

    <DefineArg Name="Temp9"><Description>
        Sample 9.
    </Description><Units:celsius/><Value>NaN</Value></DefineArg>

    <DefineArg Name="Temp10"><Description>
        Sample 10.
    </Description><Units:celsius/><Value>NaN</Value></DefineArg>

    <DefineArg Name="Temp11"><Description>
        Sample 11.
    </Description><Units:celsius/><Value>NaN</Value></DefineArg>

    <DefineArg Name="Temp12"><Description>
        Sample 12.
    </Description><Units:celsius/><Value>NaN</Value></DefineArg>

    <DefineArg Name="Temp13"><Description>
        Sample 13.
    </Description><Units:celsius/><Value>NaN</Value></DefineArg>

    <DefineArg Name="Temp14"><Description>
        Sample 14.
    </Description><Units:celsius/><Value>NaN</Value></DefineArg>

    <DefineArg Name="Temp15"><Description>
        Sample 15.
    </Description><Units:celsius/><Value>NaN</Value></DefineArg>

    <DefineArg Name="Temp16"><Description>
        Sample 16.
    </Description><Units:celsius/><Value>NaN</Value></DefineArg>

    <DefineArg Name="Temp17"><Description>
        Sample 17.
    </Description><Units:celsius/><Value>NaN</Value></DefineArg>

    <DefineArg Name="Temp18"><Description>
        Sample 18.
    </Description><Units:celsius/><Value>NaN</Value></DefineArg>

    <DefineArg Name="Temp19"><Description>
        Sample 19.
    </Description><Units:celsius/><Value>NaN</Value></DefineArg>

    <DefineArg Name="Temp20"><Description>
        Sample 20.
    </Description><Units:celsius/><Value>NaN</Value></DefineArg>

    <DefineArg Name="Temp21"><Description>
        Sample 21.
    </Description><Units:celsius/><Value>NaN</Value></DefineArg>

    <DefineArg Name="Temp22"><Description>
        Sample 22.
    </Description><Units:celsius/><Value>NaN</Value></DefineArg>

    <DefineArg Name="Temp23"><Description>
        Sample 23.
    </Description><Units:celsius/><Value>NaN</Value></DefineArg>

    <DefineArg Name="Temp24"><Description>
        Sample 24.
    </Description><Units:celsius/><Value>NaN</Value></DefineArg>

    <DefineArg Name="Temp25"><Description>
        Sample 25.
    </Description><Units:celsius/><Value>NaN</Value></DefineArg>

    <DefineArg Name="Temp26"><Description>
        Sample 26.
    </Description><Units:celsius/><Value>NaN</Value></DefineArg>

    <DefineArg Name="Temp27"><Description>
        Sample 27.
    </Description><Units:celsius/><Value>NaN</Value></DefineArg>

    <DefineArg Name="Temp28"><Description>
        Sample 28.
    </Description><Units:celsius/><Value>NaN</Value></DefineArg>

    <DefineArg Name="Temp29"><Description>
        Sample 29.
    </Description><Units:celsius/><Value>NaN</Value></DefineArg>

    <DefineArg Name="Temp30"><Description>
        Sample 30.
    </Description><Units:celsius/><Value>NaN</Value></DefineArg>

    <DefineArg Name="Temp31"><Description>
        Sample 31.
    </Description><Units:celsius/><Value>NaN</Value></DefineArg>

    <DefineArg Name="Temp32"><Description>
        Sample 32.
    </Description><Units:celsius/><Value>NaN</Value></DefineArg>

    <DefineArg Name="Temp33"><Description>
        Sample 33.
    </Description><Units:celsius/><Value>NaN</Value></DefineArg>

    <DefineArg Name="Temp34"><Description>
        Sample 34.
    </Description><Units:celsius/><Value>NaN</Value></DefineArg>

    <DefineArg Name="Temp35"><Description>
        Sample 35.
    </Description><Units:celsius/><Value>NaN</Value></DefineArg>

    <DefineArg Name="Temp36"><Description>
        Sample 36.
    </Description><Units:celsius/><Value>NaN</Value></DefineArg>

    <DefineArg Name="Temp37"><Description>
        Sample 37.
    </Description><Units:celsius/><Value>NaN</Value></DefineArg>

    <DefineArg Name="Temp38"><Description>
        Sample 38.
    </Description><Units:celsius/><Value>NaN</Value></DefineArg>

    <DefineArg Name="Temp39"><Description>
        Sample 39.
    </Description><Units:celsius/><Value>NaN</Value></DefineArg>

    <DefineArg Name="Temp40"><Description>
        Sample 40.
    </Description><Units:celsius/><Value>NaN</Value></DefineArg>

    <DefineArg Name="Temp41"><Description>
        Sample 41.
    </Description><Units:celsius/><Value>NaN</Value></DefineArg>

    <DefineArg Name="Temp42"><Description>
        Sample 42.
    </Description><Units:celsius/><Value>NaN</Value></DefineArg>

    <DefineArg Name="Temp43"><Description>
        Sample 43.
    </Description><Units:celsius/><Value>NaN</Value></DefineArg>

    <DefineArg Name="Temp44"><Description>
        Sample 44.
    </Description><Units:celsius/><Value>NaN</Value></DefineArg>

    <DefineArg Name="Temp45"><Description>
        Sample 45.
    </Description><Units:celsius/><Value>NaN</Value></DefineArg>

    <DefineArg Name="Temp46"><Description>
        Sample 46.
    </Description><Units:celsius/><Value>NaN</Value></DefineArg>

    <DefineArg Name="Temp47"><Description>
        Sample 47.
    </Description><Units:celsius/><Value>NaN</Value></DefineArg>

    <DefineArg Name="Temp48"><Description>
        Sample 48.
    </Description><Units:celsius/><Value>NaN</Value></DefineArg>

    <DefineArg Name="Temp49"><Description>
        Sample 49.
    </Description><Units:celsius/><Value>NaN</Value></DefineArg>

    <DefineArg Name="Temp50"><Description>
        Sample 50.
    </Description><Units:celsius/><Value>NaN</Value></DefineArg>

    <DefineArg Name="Temp51"><Description>
        Sample 51.
    </Description><Units:celsius/><Value>NaN</Value></DefineArg>

    <DefineArg Name="Temp52"><Description>
        Sample 52.
    </Description><Units:celsius/><Value>NaN</Value></DefineArg>

    <DefineArg Name="Temp53"><Description>
        Sample 53.
    </Description><Units:celsius/><Value>NaN</Value></DefineArg>

    <DefineArg Name="Temp54"><Description>
        Sample 54.
    </Description><Units:celsius/><Value>NaN</Value></DefineArg>

    <DefineArg Name="Temp55"><Description>
        Sample 55.
    </Description><Units:celsius/><Value>NaN</Value></DefineArg>

    <DefineArg Name="Temp56"><Description>
        Sample 56.
    </Description><Units:celsius/><Value>NaN</Value></DefineArg>

    <DefineArg Name="Temp57"><Description>
        Sample 57.
    </Description><Units:celsius/><Value>NaN</Value></DefineArg>

    <DefineArg Name="Temp58"><Description>
        Sample 58.
    </Description><Units:celsius/><Value>NaN</Value></DefineArg>

    <DefineArg Name="Temp59"><Description>
        Sample 59.
    </Description><Units:celsius/><Value>NaN</Value></DefineArg>

    <DefineArg Name="Temp60"><Description>
        Sample 60.
    </Description><Units:celsius/><Value>NaN</Value></DefineArg>

    <DefineArg Name="DepDiffFromPeakChlCommon"><Description>
        Value common to all samples unless set diffently: Depth difference
        (positive: deeper; negative: shallower) from the peak-chl depth for
        taking comparison samples. Initialized to NaN.
    </Description><Units:meter/><Value>NaN</Value></DefineArg>

<!--debug
    </Description><Units:meter/><Value>0</Value></DefineArg>
-->

    <DefineArg Name="DepDiffFromPeakChl1"><Description>
        Sample 1. Depth difference (positive: deeper; negative: shallower) from
        the peak-chl depth for taking comparison samples. Initialized to NaN.
    </Description><Units:meter/><Value>NaN</Value></DefineArg>

<!--debug
    </Description><Units:meter/><Value>0</Value></DefineArg>
-->

    <DefineArg Name="DepDiffFromPeakChl2"><Description>
        Sample 2.
    </Description><Units:meter/><Value>NaN</Value></DefineArg>

<!--debug
    </Description><Units:meter/><Value>2.0</Value></DefineArg>
-->

    <DefineArg Name="DepDiffFromPeakChl3"><Description>
        Sample 3.
    </Description><Units:meter/><Value>NaN</Value></DefineArg>

    <DefineArg Name="DepDiffFromPeakChl4"><Description>
        Sample 4.
    </Description><Units:meter/><Value>NaN</Value></DefineArg>

    <DefineArg Name="DepDiffFromPeakChl5"><Description>
        Sample 5.
    </Description><Units:meter/><Value>NaN</Value></DefineArg>

    <DefineArg Name="DepDiffFromPeakChl6"><Description>
        Sample 6.
    </Description><Units:meter/><Value>NaN</Value></DefineArg>

    <DefineArg Name="DepDiffFromPeakChl7"><Description>
        Sample 7.
    </Description><Units:meter/><Value>NaN</Value></DefineArg>

    <DefineArg Name="DepDiffFromPeakChl8"><Description>
        Sample 8.
    </Description><Units:meter/><Value>NaN</Value></DefineArg>

    <DefineArg Name="DepDiffFromPeakChl9"><Description>
        Sample 9.
    </Description><Units:meter/><Value>NaN</Value></DefineArg>

    <DefineArg Name="DepDiffFromPeakChl10"><Description>
        Sample 10.
    </Description><Units:meter/><Value>NaN</Value></DefineArg>

    <DefineArg Name="DepDiffFromPeakChl11"><Description>
        Sample 11.
    </Description><Units:meter/><Value>NaN</Value></DefineArg>

    <DefineArg Name="DepDiffFromPeakChl12"><Description>
        Sample 12.
    </Description><Units:meter/><Value>NaN</Value></DefineArg>

    <DefineArg Name="DepDiffFromPeakChl13"><Description>
        Sample 13.
    </Description><Units:meter/><Value>NaN</Value></DefineArg>

    <DefineArg Name="DepDiffFromPeakChl14"><Description>
        Sample 14.
    </Description><Units:meter/><Value>NaN</Value></DefineArg>

    <DefineArg Name="DepDiffFromPeakChl15"><Description>
        Sample 15.
    </Description><Units:meter/><Value>NaN</Value></DefineArg>

    <DefineArg Name="DepDiffFromPeakChl16"><Description>
        Sample 16.
    </Description><Units:meter/><Value>NaN</Value></DefineArg>

    <DefineArg Name="DepDiffFromPeakChl17"><Description>
        Sample 17.
    </Description><Units:meter/><Value>NaN</Value></DefineArg>

    <DefineArg Name="DepDiffFromPeakChl18"><Description>
        Sample 18.
    </Description><Units:meter/><Value>NaN</Value></DefineArg>

    <DefineArg Name="DepDiffFromPeakChl19"><Description>
        Sample 19.
    </Description><Units:meter/><Value>NaN</Value></DefineArg>

    <DefineArg Name="DepDiffFromPeakChl20"><Description>
        Sample 20.
    </Description><Units:meter/><Value>NaN</Value></DefineArg>

    <DefineArg Name="DepDiffFromPeakChl21"><Description>
        Sample 21.
    </Description><Units:meter/><Value>NaN</Value></DefineArg>

    <DefineArg Name="DepDiffFromPeakChl22"><Description>
        Sample 22.
    </Description><Units:meter/><Value>NaN</Value></DefineArg>

    <DefineArg Name="DepDiffFromPeakChl23"><Description>
        Sample 23.
    </Description><Units:meter/><Value>NaN</Value></DefineArg>

    <DefineArg Name="DepDiffFromPeakChl24"><Description>
        Sample 24.
    </Description><Units:meter/><Value>NaN</Value></DefineArg>

    <DefineArg Name="DepDiffFromPeakChl25"><Description>
        Sample 25.
    </Description><Units:meter/><Value>NaN</Value></DefineArg>

    <DefineArg Name="DepDiffFromPeakChl26"><Description>
        Sample 26.
    </Description><Units:meter/><Value>NaN</Value></DefineArg>

    <DefineArg Name="DepDiffFromPeakChl27"><Description>
        Sample 27.
    </Description><Units:meter/><Value>NaN</Value></DefineArg>

    <DefineArg Name="DepDiffFromPeakChl28"><Description>
        Sample 28.
    </Description><Units:meter/><Value>NaN</Value></DefineArg>

    <DefineArg Name="DepDiffFromPeakChl29"><Description>
        Sample 29.
    </Description><Units:meter/><Value>NaN</Value></DefineArg>

    <DefineArg Name="DepDiffFromPeakChl30"><Description>
        Sample 30.
    </Description><Units:meter/><Value>NaN</Value></DefineArg>

    <DefineArg Name="DepDiffFromPeakChl31"><Description>
        Sample 31.
    </Description><Units:meter/><Value>NaN</Value></DefineArg>

    <DefineArg Name="DepDiffFromPeakChl32"><Description>
        Sample 32.
    </Description><Units:meter/><Value>NaN</Value></DefineArg>

    <DefineArg Name="DepDiffFromPeakChl33"><Description>
        Sample 33.
    </Description><Units:meter/><Value>NaN</Value></DefineArg>

    <DefineArg Name="DepDiffFromPeakChl34"><Description>
        Sample 34.
    </Description><Units:meter/><Value>NaN</Value></DefineArg>

    <DefineArg Name="DepDiffFromPeakChl35"><Description>
        Sample 35.
    </Description><Units:meter/><Value>NaN</Value></DefineArg>

    <DefineArg Name="DepDiffFromPeakChl36"><Description>
        Sample 36.
    </Description><Units:meter/><Value>NaN</Value></DefineArg>

    <DefineArg Name="DepDiffFromPeakChl37"><Description>
        Sample 37.
    </Description><Units:meter/><Value>NaN</Value></DefineArg>

    <DefineArg Name="DepDiffFromPeakChl38"><Description>
        Sample 38.
    </Description><Units:meter/><Value>NaN</Value></DefineArg>

    <DefineArg Name="DepDiffFromPeakChl39"><Description>
        Sample 39.
    </Description><Units:meter/><Value>NaN</Value></DefineArg>

    <DefineArg Name="DepDiffFromPeakChl40"><Description>
        Sample 40.
    </Description><Units:meter/><Value>NaN</Value></DefineArg>

    <DefineArg Name="DepDiffFromPeakChl41"><Description>
        Sample 41.
    </Description><Units:meter/><Value>NaN</Value></DefineArg>

    <DefineArg Name="DepDiffFromPeakChl42"><Description>
        Sample 42.
    </Description><Units:meter/><Value>NaN</Value></DefineArg>

    <DefineArg Name="DepDiffFromPeakChl43"><Description>
        Sample 43.
    </Description><Units:meter/><Value>NaN</Value></DefineArg>

    <DefineArg Name="DepDiffFromPeakChl44"><Description>
        Sample 44.
    </Description><Units:meter/><Value>NaN</Value></DefineArg>

    <DefineArg Name="DepDiffFromPeakChl45"><Description>
        Sample 45.
    </Description><Units:meter/><Value>NaN</Value></DefineArg>

    <DefineArg Name="DepDiffFromPeakChl46"><Description>
        Sample 46.
    </Description><Units:meter/><Value>NaN</Value></DefineArg>

    <DefineArg Name="DepDiffFromPeakChl47"><Description>
        Sample 47.
    </Description><Units:meter/><Value>NaN</Value></DefineArg>

    <DefineArg Name="DepDiffFromPeakChl48"><Description>
        Sample 48.
    </Description><Units:meter/><Value>NaN</Value></DefineArg>

    <DefineArg Name="DepDiffFromPeakChl49"><Description>
        Sample 49.
    </Description><Units:meter/><Value>NaN</Value></DefineArg>

    <DefineArg Name="DepDiffFromPeakChl50"><Description>
        Sample 50.
    </Description><Units:meter/><Value>NaN</Value></DefineArg>

    <DefineArg Name="DepDiffFromPeakChl51"><Description>
        Sample 51.
    </Description><Units:meter/><Value>NaN</Value></DefineArg>

    <DefineArg Name="DepDiffFromPeakChl52"><Description>
        Sample 52.
    </Description><Units:meter/><Value>NaN</Value></DefineArg>

    <DefineArg Name="DepDiffFromPeakChl53"><Description>
        Sample 53.
    </Description><Units:meter/><Value>NaN</Value></DefineArg>

    <DefineArg Name="DepDiffFromPeakChl54"><Description>
        Sample 54.
    </Description><Units:meter/><Value>NaN</Value></DefineArg>

    <DefineArg Name="DepDiffFromPeakChl55"><Description>
        Sample 55.
    </Description><Units:meter/><Value>NaN</Value></DefineArg>

    <DefineArg Name="DepDiffFromPeakChl56"><Description>
        Sample 56.
    </Description><Units:meter/><Value>NaN</Value></DefineArg>

    <DefineArg Name="DepDiffFromPeakChl57"><Description>
        Sample 57.
    </Description><Units:meter/><Value>NaN</Value></DefineArg>

    <DefineArg Name="DepDiffFromPeakChl58"><Description>
        Sample 58.
    </Description><Units:meter/><Value>NaN</Value></DefineArg>

    <DefineArg Name="DepDiffFromPeakChl59"><Description>
        Sample 59.
    </Description><Units:meter/><Value>NaN</Value></DefineArg>

    <DefineArg Name="DepDiffFromPeakChl60"><Description>
        Sample 60.
    </Description><Units:meter/><Value>NaN</Value></DefineArg>

    <DefineArg Name="DepCommon"><Description>
        Value common to all samples unless set diffently: Pre-designated depth.
        If NaN, will use vertical distance from chl-peak depth.
    </Description><Units:meter/><Value>NaN</Value></DefineArg>

    <DefineArg Name="Dep1"><Description>
        Sample 1. Pre-designated depth. If NaN, will use vertical distance from
        chl-peak depth.
    </Description><Units:meter/><Value>NaN</Value></DefineArg>

<!--debug
    </Description><Units:meter/><Value>10</Value></DefineArg>
-->

    <DefineArg Name="Dep2"><Description>
        Sample 2.
    </Description><Units:meter/><Value>NaN</Value></DefineArg>

<!--debug
    </Description><Units:meter/><Value>15.0</Value></DefineArg>
-->

    <DefineArg Name="Dep3"><Description>
        Sample 3.
    </Description><Units:meter/><Value>NaN</Value></DefineArg>

<!--debug
    </Description><Units:meter/><Value>25.0</Value></DefineArg>
-->

    <DefineArg Name="Dep4"><Description>
        Sample 4.
    </Description><Units:meter/><Value>NaN</Value></DefineArg>

    <DefineArg Name="Dep5"><Description>
        Sample 5.
    </Description><Units:meter/><Value>NaN</Value></DefineArg>

    <DefineArg Name="Dep6"><Description>
        Sample 6.
    </Description><Units:meter/><Value>NaN</Value></DefineArg>

    <DefineArg Name="Dep7"><Description>
        Sample 7.
    </Description><Units:meter/><Value>NaN</Value></DefineArg>

    <DefineArg Name="Dep8"><Description>
        Sample 8.
    </Description><Units:meter/><Value>NaN</Value></DefineArg>

    <DefineArg Name="Dep9"><Description>
        Sample 9.
    </Description><Units:meter/><Value>NaN</Value></DefineArg>

    <DefineArg Name="Dep10"><Description>
        Sample 10.
    </Description><Units:meter/><Value>NaN</Value></DefineArg>

    <DefineArg Name="Dep11"><Description>
        Sample 11.
    </Description><Units:meter/><Value>NaN</Value></DefineArg>

    <DefineArg Name="Dep12"><Description>
        Sample 12.
    </Description><Units:meter/><Value>NaN</Value></DefineArg>

    <DefineArg Name="Dep13"><Description>
        Sample 13.
    </Description><Units:meter/><Value>NaN</Value></DefineArg>

    <DefineArg Name="Dep14"><Description>
        Sample 14.
    </Description><Units:meter/><Value>NaN</Value></DefineArg>

    <DefineArg Name="Dep15"><Description>
        Sample 15.
    </Description><Units:meter/><Value>NaN</Value></DefineArg>

    <DefineArg Name="Dep16"><Description>
        Sample 16.
    </Description><Units:meter/><Value>NaN</Value></DefineArg>

    <DefineArg Name="Dep17"><Description>
        Sample 17.
    </Description><Units:meter/><Value>NaN</Value></DefineArg>

    <DefineArg Name="Dep18"><Description>
        Sample 18.
    </Description><Units:meter/><Value>NaN</Value></DefineArg>

    <DefineArg Name="Dep19"><Description>
        Sample 19.
    </Description><Units:meter/><Value>NaN</Value></DefineArg>

    <DefineArg Name="Dep20"><Description>
        Sample 20.
    </Description><Units:meter/><Value>NaN</Value></DefineArg>

    <DefineArg Name="Dep21"><Description>
        Sample 21.
    </Description><Units:meter/><Value>NaN</Value></DefineArg>

    <DefineArg Name="Dep22"><Description>
        Sample 22.
    </Description><Units:meter/><Value>NaN</Value></DefineArg>

    <DefineArg Name="Dep23"><Description>
        Sample 23.
    </Description><Units:meter/><Value>NaN</Value></DefineArg>

    <DefineArg Name="Dep24"><Description>
        Sample 24.
    </Description><Units:meter/><Value>NaN</Value></DefineArg>

    <DefineArg Name="Dep25"><Description>
        Sample 25.
    </Description><Units:meter/><Value>NaN</Value></DefineArg>

    <DefineArg Name="Dep26"><Description>
        Sample 26.
    </Description><Units:meter/><Value>NaN</Value></DefineArg>

    <DefineArg Name="Dep27"><Description>
        Sample 27.
    </Description><Units:meter/><Value>NaN</Value></DefineArg>

    <DefineArg Name="Dep28"><Description>
        Sample 28.
    </Description><Units:meter/><Value>NaN</Value></DefineArg>

    <DefineArg Name="Dep29"><Description>
        Sample 29.
    </Description><Units:meter/><Value>NaN</Value></DefineArg>

    <DefineArg Name="Dep30"><Description>
        Sample 30.
    </Description><Units:meter/><Value>NaN</Value></DefineArg>

    <DefineArg Name="Dep31"><Description>
        Sample 31.
    </Description><Units:meter/><Value>NaN</Value></DefineArg>

    <DefineArg Name="Dep32"><Description>
        Sample 32.
    </Description><Units:meter/><Value>NaN</Value></DefineArg>

    <DefineArg Name="Dep33"><Description>
        Sample 33.
    </Description><Units:meter/><Value>NaN</Value></DefineArg>

    <DefineArg Name="Dep34"><Description>
        Sample 34.
    </Description><Units:meter/><Value>NaN</Value></DefineArg>

    <DefineArg Name="Dep35"><Description>
        Sample 35.
    </Description><Units:meter/><Value>NaN</Value></DefineArg>

    <DefineArg Name="Dep36"><Description>
        Sample 36.
    </Description><Units:meter/><Value>NaN</Value></DefineArg>

    <DefineArg Name="Dep37"><Description>
        Sample 37.
    </Description><Units:meter/><Value>NaN</Value></DefineArg>

    <DefineArg Name="Dep38"><Description>
        Sample 38.
    </Description><Units:meter/><Value>NaN</Value></DefineArg>

    <DefineArg Name="Dep39"><Description>
        Sample 39.
    </Description><Units:meter/><Value>NaN</Value></DefineArg>

    <DefineArg Name="Dep40"><Description>
        Sample 40.
    </Description><Units:meter/><Value>NaN</Value></DefineArg>

    <DefineArg Name="Dep41"><Description>
        Sample 41.
    </Description><Units:meter/><Value>NaN</Value></DefineArg>

    <DefineArg Name="Dep42"><Description>
        Sample 42.
    </Description><Units:meter/><Value>NaN</Value></DefineArg>

    <DefineArg Name="Dep43"><Description>
        Sample 43.
    </Description><Units:meter/><Value>NaN</Value></DefineArg>

    <DefineArg Name="Dep44"><Description>
        Sample 44.
    </Description><Units:meter/><Value>NaN</Value></DefineArg>

    <DefineArg Name="Dep45"><Description>
        Sample 45.
    </Description><Units:meter/><Value>NaN</Value></DefineArg>

    <DefineArg Name="Dep46"><Description>
        Sample 46.
    </Description><Units:meter/><Value>NaN</Value></DefineArg>

    <DefineArg Name="Dep47"><Description>
        Sample 47.
    </Description><Units:meter/><Value>NaN</Value></DefineArg>

    <DefineArg Name="Dep48"><Description>
        Sample 48.
    </Description><Units:meter/><Value>NaN</Value></DefineArg>

    <DefineArg Name="Dep49"><Description>
        Sample 49.
    </Description><Units:meter/><Value>NaN</Value></DefineArg>

    <DefineArg Name="Dep50"><Description>
        Sample 50.
    </Description><Units:meter/><Value>NaN</Value></DefineArg>

    <DefineArg Name="Dep51"><Description>
        Sample 51.
    </Description><Units:meter/><Value>NaN</Value></DefineArg>

    <DefineArg Name="Dep52"><Description>
        Sample 52.
    </Description><Units:meter/><Value>NaN</Value></DefineArg>

    <DefineArg Name="Dep53"><Description>
        Sample 53.
    </Description><Units:meter/><Value>NaN</Value></DefineArg>

    <DefineArg Name="Dep54"><Description>
        Sample 54.
    </Description><Units:meter/><Value>NaN</Value></DefineArg>

    <DefineArg Name="Dep55"><Description>
        Sample 55.
    </Description><Units:meter/><Value>NaN</Value></DefineArg>

    <DefineArg Name="Dep56"><Description>
        Sample 56.
    </Description><Units:meter/><Value>NaN</Value></DefineArg>

    <DefineArg Name="Dep57"><Description>
        Sample 57.
    </Description><Units:meter/><Value>NaN</Value></DefineArg>

    <DefineArg Name="Dep58"><Description>
        Sample 58.
    </Description><Units:meter/><Value>NaN</Value></DefineArg>

    <DefineArg Name="Dep59"><Description>
        Sample 59.
    </Description><Units:meter/><Value>NaN</Value></DefineArg>

    <DefineArg Name="Dep60"><Description>
        Sample 60.
    </Description><Units:meter/><Value>NaN</Value></DefineArg>

    <DefineArg Name="WaitDepUndulationCommon"><Description>
        Value common to all samples unless set differently: Wait duration for
        the depth undulation to damp down.
    </Description><Units:minute/><Value>5.0</Value></DefineArg>

    <DefineArg Name="WaitDepUndulation1"><Description>
        Sample 1. Wait duration for the depth undulation to damp down.
    </Description><Units:minute/><Value>20.0</Value></DefineArg>

<!--debug
    </Description><Units:minute/><Value>NaN</Value></DefineArg>
-->

    <DefineArg Name="WaitDepUndulation2"><Description>
        Sample 2.
    </Description><Units:minute/><Value>10.0</Value></DefineArg>

    <DefineArg Name="WaitDepUndulation3"><Description>
        Sample 3.
    </Description><Units:minute/><Value>10.0</Value></DefineArg>

    <DefineArg Name="WaitDepUndulation4"><Description>
        Sample 4.
    </Description><Units:minute/><Value>10.0</Value></DefineArg>

    <DefineArg Name="WaitDepUndulation5"><Description>
        Sample 5.
    </Description><Units:minute/><Value>10.0</Value></DefineArg>

    <DefineArg Name="WaitDepUndulation6"><Description>
        Sample 6.
    </Description><Units:minute/><Value>10.0</Value></DefineArg>

    <DefineArg Name="WaitDepUndulation7"><Description>
        Sample 7.
    </Description><Units:minute/><Value>10.0</Value></DefineArg>

    <DefineArg Name="WaitDepUndulation8"><Description>
        Sample 8.
    </Description><Units:minute/><Value>10.0</Value></DefineArg>

    <DefineArg Name="WaitDepUndulation9"><Description>
        Sample 9.
    </Description><Units:minute/><Value>10.0</Value></DefineArg>

    <DefineArg Name="WaitDepUndulation10"><Description>
        Sample 10.
    </Description><Units:minute/><Value>10.0</Value></DefineArg>

    <DefineArg Name="WaitDepUndulation11"><Description>
        Sample 11.
    </Description><Units:minute/><Value>10.0</Value></DefineArg>

    <DefineArg Name="WaitDepUndulation12"><Description>
        Sample 12.
    </Description><Units:minute/><Value>10.0</Value></DefineArg>

    <DefineArg Name="WaitDepUndulation13"><Description>
        Sample 13.
    </Description><Units:minute/><Value>10.0</Value></DefineArg>

    <DefineArg Name="WaitDepUndulation14"><Description>
        Sample 14.
    </Description><Units:minute/><Value>10.0</Value></DefineArg>

    <DefineArg Name="WaitDepUndulation15"><Description>
        Sample 15.
    </Description><Units:minute/><Value>10.0</Value></DefineArg>

    <DefineArg Name="WaitDepUndulation16"><Description>
        Sample 16.
    </Description><Units:minute/><Value>10.0</Value></DefineArg>

    <DefineArg Name="WaitDepUndulation17"><Description>
        Sample 17.
    </Description><Units:minute/><Value>10.0</Value></DefineArg>

    <DefineArg Name="WaitDepUndulation18"><Description>
        Sample 18.
    </Description><Units:minute/><Value>10.0</Value></DefineArg>

    <DefineArg Name="WaitDepUndulation19"><Description>
        Sample 19.
    </Description><Units:minute/><Value>10.0</Value></DefineArg>

    <DefineArg Name="WaitDepUndulation20"><Description>
        Sample 20.
    </Description><Units:minute/><Value>10.0</Value></DefineArg>

    <DefineArg Name="WaitDepUndulation21"><Description>
        Sample 21.
    </Description><Units:minute/><Value>10.0</Value></DefineArg>

    <DefineArg Name="WaitDepUndulation22"><Description>
        Sample 22.
    </Description><Units:minute/><Value>10.0</Value></DefineArg>

    <DefineArg Name="WaitDepUndulation23"><Description>
        Sample 23.
    </Description><Units:minute/><Value>10.0</Value></DefineArg>

    <DefineArg Name="WaitDepUndulation24"><Description>
        Sample 24.
    </Description><Units:minute/><Value>10.0</Value></DefineArg>

    <DefineArg Name="WaitDepUndulation25"><Description>
        Sample 25.
    </Description><Units:minute/><Value>10.0</Value></DefineArg>

    <DefineArg Name="WaitDepUndulation26"><Description>
        Sample 26.
    </Description><Units:minute/><Value>10.0</Value></DefineArg>

    <DefineArg Name="WaitDepUndulation27"><Description>
        Sample 27.
    </Description><Units:minute/><Value>10.0</Value></DefineArg>

    <DefineArg Name="WaitDepUndulation28"><Description>
        Sample 28.
    </Description><Units:minute/><Value>10.0</Value></DefineArg>

    <DefineArg Name="WaitDepUndulation29"><Description>
        Sample 29.
    </Description><Units:minute/><Value>10.0</Value></DefineArg>

    <DefineArg Name="WaitDepUndulation30"><Description>
        Sample 30.
    </Description><Units:minute/><Value>10.0</Value></DefineArg>

    <DefineArg Name="WaitDepUndulation31"><Description>
        Sample 31.
    </Description><Units:minute/><Value>10.0</Value></DefineArg>

    <DefineArg Name="WaitDepUndulation32"><Description>
        Sample 32.
    </Description><Units:minute/><Value>10.0</Value></DefineArg>

    <DefineArg Name="WaitDepUndulation33"><Description>
        Sample 33.
    </Description><Units:minute/><Value>10.0</Value></DefineArg>

    <DefineArg Name="WaitDepUndulation34"><Description>
        Sample 34.
    </Description><Units:minute/><Value>10.0</Value></DefineArg>

    <DefineArg Name="WaitDepUndulation35"><Description>
        Sample 35.
    </Description><Units:minute/><Value>10.0</Value></DefineArg>

    <DefineArg Name="WaitDepUndulation36"><Description>
        Sample 36.
    </Description><Units:minute/><Value>10.0</Value></DefineArg>

    <DefineArg Name="WaitDepUndulation37"><Description>
        Sample 37.
    </Description><Units:minute/><Value>10.0</Value></DefineArg>

    <DefineArg Name="WaitDepUndulation38"><Description>
        Sample 38.
    </Description><Units:minute/><Value>10.0</Value></DefineArg>

    <DefineArg Name="WaitDepUndulation39"><Description>
        Sample 39.
    </Description><Units:minute/><Value>10.0</Value></DefineArg>

    <DefineArg Name="WaitDepUndulation40"><Description>
        Sample 40.
    </Description><Units:minute/><Value>10.0</Value></DefineArg>

    <DefineArg Name="WaitDepUndulation41"><Description>
        Sample 41.
    </Description><Units:minute/><Value>10.0</Value></DefineArg>

    <DefineArg Name="WaitDepUndulation42"><Description>
        Sample 42.
    </Description><Units:minute/><Value>10.0</Value></DefineArg>

    <DefineArg Name="WaitDepUndulation43"><Description>
        Sample 43.
    </Description><Units:minute/><Value>10.0</Value></DefineArg>

    <DefineArg Name="WaitDepUndulation44"><Description>
        Sample 44.
    </Description><Units:minute/><Value>10.0</Value></DefineArg>

    <DefineArg Name="WaitDepUndulation45"><Description>
        Sample 45.
    </Description><Units:minute/><Value>10.0</Value></DefineArg>

    <DefineArg Name="WaitDepUndulation46"><Description>
        Sample 46.
    </Description><Units:minute/><Value>10.0</Value></DefineArg>

    <DefineArg Name="WaitDepUndulation47"><Description>
        Sample 47.
    </Description><Units:minute/><Value>10.0</Value></DefineArg>

    <DefineArg Name="WaitDepUndulation48"><Description>
        Sample 48.
    </Description><Units:minute/><Value>10.0</Value></DefineArg>

    <DefineArg Name="WaitDepUndulation49"><Description>
        Sample 49.
    </Description><Units:minute/><Value>10.0</Value></DefineArg>

    <DefineArg Name="WaitDepUndulation50"><Description>
        Sample 50.
    </Description><Units:minute/><Value>10.0</Value></DefineArg>

    <DefineArg Name="WaitDepUndulation51"><Description>
        Sample 51.
    </Description><Units:minute/><Value>10.0</Value></DefineArg>

    <DefineArg Name="WaitDepUndulation52"><Description>
        Sample 52.
    </Description><Units:minute/><Value>10.0</Value></DefineArg>

    <DefineArg Name="WaitDepUndulation53"><Description>
        Sample 53.
    </Description><Units:minute/><Value>10.0</Value></DefineArg>

    <DefineArg Name="WaitDepUndulation54"><Description>
        Sample 54.
    </Description><Units:minute/><Value>10.0</Value></DefineArg>

    <DefineArg Name="WaitDepUndulation55"><Description>
        Sample 55.
    </Description><Units:minute/><Value>10.0</Value></DefineArg>

    <DefineArg Name="WaitDepUndulation56"><Description>
        Sample 56.
    </Description><Units:minute/><Value>10.0</Value></DefineArg>

    <DefineArg Name="WaitDepUndulation57"><Description>
        Sample 57.
    </Description><Units:minute/><Value>10.0</Value></DefineArg>

    <DefineArg Name="WaitDepUndulation58"><Description>
        Sample 58.
    </Description><Units:minute/><Value>10.0</Value></DefineArg>

    <DefineArg Name="WaitDepUndulation59"><Description>
        Sample 59.
    </Description><Units:minute/><Value>10.0</Value></DefineArg>

    <DefineArg Name="WaitDepUndulation60"><Description>
        Sample 60.
    </Description><Units:minute/><Value>10.0</Value></DefineArg>

<!-- Use caution when changing these. -->

    <DefineArg Name="UpRate"><Description>
        Go-up depth rate (Negative depth rate means going up).
    </Description><Units:meter_per_second/><Value>-0.04</Value></DefineArg>

    <DefineArg Name="DownRate"><Description>
        Go-down depth rate (Positive depth rate means going down).
    </Description><Units:meter_per_second/><Value>0.2</Value></DefineArg>

<!-- You probably do not need to change these. -->

    <DefineArg Name="SampleTimeout"><Description>
        Max duration allowed for sampling (both ESP and CANONSampler)
    </Description><Units:hour/><Value>3</Value></DefineArg>

    <DefineArg Name="CANONSamplerDelay"><Description>
        How long to delay a CANON Sampler sample after an ESP sample is
        intiated.
    </Description><Units:minute/><Value>10</Value></DefineArg>

    <DefineArg Name="VerticalPerturbation"><Description>
        Vertical perturbation (going up or down) for reacquiring the peak.
    </Description><Units:meter/><Value>6.0</Value></DefineArg>

    <DefineArg Name="RiseFromTurningDepth"><Description>
        Peak chl on a profile is registered at the beginning of the next yoyo
        profile. In this mission, the peak chl on the descending profile is
        saved when the vehicle has turned onto the next yoyo profile (ascending
        profile) and is at least "RiseFromDeepTurningPoint" away from the
        turning depth.
    </Description><Units:meter/><Value>1.5</Value></DefineArg>

    <DefineArg Name="CylinderCircleMaxError"><Description>
        If this distance away from the circle, drive straight towards (or away
        from the center). Otherwise, try to reduce distance from the ideal
        circle.
    </Description><Units:meter/><Value>100</Value></DefineArg>

    <DefineArg Name="CylinderCircleTurnToPort"><Description>
        If true, vehicle turns to the left around the center point. If false,
        vehicle turns to the right.
    </Description><False/></DefineArg>

    <DefineArg Name="KwpHeading"><Description>
        Used to relax waypoint cross-track error constant that is adjusted for
        docking. (You can override this setting by passing an argument.)
    </Description><Units:radian_per_meter/><Value>0.010</Value></DefineArg>

    <DefineArg Name="YoYoUpPitch"><Description>
        Vehicle up pitch while performing the YoYo behavior.
    </Description><Units:degree/><Value>20</Value></DefineArg>

    <DefineArg Name="YoYoDownPitch"><Description>
        Vehicle down pitch while performing the YoYo behavior.
    </Description><Units:degree/><Value>-20</Value></DefineArg>

    <DefineArg Name="NumberOfProfilesSlidingwindow"><Description>
        Length of horizontal sliding window. Picks the highest yoyo-wise chl
        peak (after low-pass filtering by a filter of length
        FilterWidthHorizontal) within this window. Ignore older highs because
        ocean is changing.
    </Description><Units:count/><Value>100</Value></DefineArg>

    <DefineArg Name="LPWindowLength"><Description>
        Low-pass window length (based on depth sensor sampling interval 0.4
        second) for low-pass filtering.
    </Description><Units:count/><Value>20</Value></DefineArg>

    <DefineArg Name="MedianFilterLength"><Description>
        Median filter length (only for chlorophyll fluorescence which tends to
        have spikes). The median-filtered signal enters the succeeding low-pass
        filter. If set to 1, then no median filtering, i.e., the raw
        fluorescence signal directly enters the low-pass filter.
    </Description><Units:count/><Value>5</Value></DefineArg>

<!--debug
    </Description><Units:count/><Value>1</Value></DefineArg>
-->

    <DefineArg Name="GainProportional"><Description>
        Proportional gain for temperature holding control loop.
    </Description><Units:none/><Value>1</Value></DefineArg>

<!--debug
    </Description><Units:none/><Value>2</Value></DefineArg>
-->

    <DefineArg Name="GainIntegral"><Description>
        Integral gain for temperature holding control loop.
    </Description><Units:none/><Value>0</Value></DefineArg>

<!--debug
    </Description><Units:none/><Value>0.75</Value></DefineArg>
-->

    <DefineArg Name="GainDerivative"><Description>
        Derivative gain for temperature holding control loop.
    </Description><Units:none/><Value>0</Value></DefineArg>

    <DefineArg Name="VariationPerMeter"><Description>
        Expected temperature change per meter.
<!--debug
    </Description><Units:reciprocal_meter/><Value>0.25</Value></DefineArg>
    </Description><Units:reciprocal_meter/><Value>0.01</Value></DefineArg>
-->
    </Description><Units:reciprocal_meter/><Value>0.2</Value></DefineArg>

    <DefineArg Name="BuoyDiveAccel"><Description>
        In buoyancy-only mode, maxBuoyDiveAccel needs to be set at least an
        order of magnitude higher than that in Control.cfg.
    </Description><Units:meter_per_second_squared/><Value>0.0025</Value></DefineArg>

    <DefineArg Name="SurfacePitch"><Description>
        Pitch to maintain while ascending
    </Description><Units:degree/><Value>20</Value></DefineArg>

    <DefineArg Name="SurfaceDepthRate"><Description>
        Depth rate to maintain while ascending. Set to NaN if using pitch
    </Description><Units:meter_per_second/><Value>NaN</Value></DefineArg>

    <DefineArg Name="BuoyancyNeutral"><Description>
        Buoyancy bladder position while performing the YoYo behavior. Defaults
        to buoyancyNeutral setting in the Config/Control.cfg file. Set to NaN cc
        for active buoyancy
    </Description><Control:VerticalControl.buoyancyNeutral/></DefineArg>

    <DefineArg Name="MassDefault"><Description>
        Static setting for mass during the mission. Set to NaN mm for active
        mass position
    </Description><Control:VerticalControl.massDefault/></DefineArg>

<!-- Internal variables that you should not change -->

    <DefineOutput Name="ElapsedSinceStartOrLastSample"><Description>
        The mission sets this variable to reset the sample timer.
    </Description><Units:hour/><Value>0</Value></DefineOutput>

    <DefineOutput Name="ElapsedTime"><Description>
        Only for syslog.
    </Description><Units:hour/><Value>0</Value></DefineOutput>

    <DefineOutput Name="SpeedApproachThenSample"><Description>
        Vehicle speed when approaching the target isotherm or depth and then
        sampling. Initialized to 1 m/s.
    </Description><Units:meter_per_second/><Value>1.0</Value></DefineOutput>

    <DefineOutput Name="YoYoMinDepth"><Description>
        Minimum depth while performing the YoYo behavior. Program will set to
        TransitYoYoMinDepth, and then CylinderYoYoMinDep.
    </Description><Units:meter/><Value>4.5</Value></DefineOutput>

    <DefineOutput Name="YoYoMaxDepth"><Description>
        Maximum depth while performing the YoYo behavior. Program will set to
        TransitYoYoMaxDepth, and then CylinderYoYoMaxDep.
    </Description><Units:meter/><Value>27</Value></DefineOutput>

    <DefineOutput Name="SampleTypeIndividual"><Description>
        Current sample type setting.
    </Description><Arg Name="SampleESPOnly"/></DefineOutput>

    <DefineOutput Name="CartridgeType"><Description>
        Cartridge type. Initialized to -6.
    </Description><Units:count/><Value>-6</Value></DefineOutput>

    <DefineOutput Name="CartridgeTypeIndividual"><Description>
        Initialized to -6.
    </Description><Units:count/><Value>-6</Value></DefineOutput>

    <DefineOutput Name="WaypointLat"><Description>
        Latitude of cylinder center if set to a waypoint. Initialized to NaN.
    </Description><Units:degree/><Value>NaN</Value></DefineOutput>

    <DefineOutput Name="WaypointLon"><Description>
        Longitude of cylinder center if set to a waypoint. Initialized to NaN.
    </Description><Units:degree/><Value>NaN</Value></DefineOutput>

    <DefineOutput Name="TempSet"><Description>
        Temperature for sampling. Initialized to NaN.
    </Description><Units:kelvin/><Value>NaN</Value></DefineOutput>

    <DefineOutput Name="TempDesignated"><Description>
        Temperature if pre-designated. Initialized to NaN.
    </Description><Units:kelvin/><Value>NaN</Value></DefineOutput>

    <DefineOutput Name="TempIndividual"><Description>
        Initialized to NaN.
    </Description><Units:kelvin/><Value>NaN</Value></DefineOutput>

    <DefineOutput Name="TempDiffFromPeakChl"><Description>
        Temp difference if setting relative to peak-chl temperature. Initialized
        to NaN.
    </Description><Units:kelvin/><Value>NaN</Value></DefineOutput>

    <DefineOutput Name="TempDiffFromPeakChlIndividual"><Description>
        Initialized to NaN.
    </Description><Units:kelvin/><Value>NaN</Value></DefineOutput>

    <DefineOutput Name="DepthSet"><Description>
        Depth for sampling. Initialized to 10 m.
    </Description><Units:meter/><Value>10.0</Value></DefineOutput>

    <DefineOutput Name="DepthDesignated"><Description>
        Depth if pre-designated. Initialized to NaN.
    </Description><Units:meter/><Value>NaN</Value></DefineOutput>

    <DefineOutput Name="DepIndividual"><Description>
        Initialized to NaN.
    </Description><Units:meter/><Value>NaN</Value></DefineOutput>

    <DefineOutput Name="DepDiffFromPeakChl"><Description>
        Depth difference (positive: deeper; negative: shallower) from the
        peak-chl depth for taking comparison samples. Initialized to NaN.
    </Description><Units:meter/><Value>NaN</Value></DefineOutput>

    <DefineOutput Name="DepDiffFromPeakChlIndividual"><Description>
        Depth difference (positive: deeper; negative: shallower) from the
        peak-chl depth for taking comparison samples. Initialized to NaN.
    </Description><Units:meter/><Value>NaN</Value></DefineOutput>

    <DefineOutput Name="WaitDepthUndulation"><Description>
        Wait duration for the depth undulation to damp down. Initialized to 10
        minutes.
    </Description><Units:minute/><Value>10.0</Value></DefineOutput>

    <DefineOutput Name="WaitDepUndulationIndividual"><Description>
        Wait duration for the depth undulation to damp down. Initialized to 10
        minutes.
    </Description><Units:minute/><Value>10.0</Value></DefineOutput>

    <DefineOutput Name="SampleCountIncreased"><Description>
        Sample count is increased.
    </Description><True/></DefineOutput>

    <DefineOutput Name="ReportAtSurface"><Description>
        When sampling is completed, go to surface to report. Initialized to
        false.
    </Description><False/></DefineOutput>

    <DefineOutput Name="ReportAtSurfaceDone"><Description>
        Have completed surface reporting. Initialized to False.
    </Description><False/></DefineOutput>

    <DefineOutput Name="ReportAtSurfaceToUse"><Description>
        For next sample. When sampling is completed, go to surface to report.
        Initialized to false.
    </Description><False/></DefineOutput>

    <DefineOutput Name="ReacquirePeak"><Description>
        Before sampling, maneuver vertically to reacquire chl peak. Initialized
        to false.
    </Description><False/></DefineOutput>

    <DefineOutput Name="SampleOptionsSet"><Description>
        Sample options (DepDiffFromPeakChl, ReportAtSurface, ReacquirePeak)
        already set. Initialized to false.
    </Description><False/></DefineOutput>

    <DefineOutput Name="SampleCompleted"><Description>
        Sampling completed. Initialized to false.
    </Description><False/></DefineOutput>

    <DefineOutput Name="StoppedForNoFiringForTooLong"><Description>
        Mission stopped because of no firing for too long. Initialized to false.
    </Description><False/></DefineOutput>

    <DefineOutput Name="DepthLogged"><Description></Description><Units:meter/><Value>0.0</Value></DefineOutput>

    <DefineOutput Name="TempLogged"><Description></Description><Units:celsius/><Value>0.0</Value></DefineOutput>

    <DefineOutput Name="ChlLogged"><Description></Description><Units:microgram_per_liter/><Value>0.0</Value></DefineOutput>

    <DefineOutput Name="MissionStartCommsCompleted"><Description>
        Initialized to false.
    </Description><False/></DefineOutput>

    <DefineOutput Name="TransitCompleted"><Description>
        Initialized to false.
    </Description><False/></DefineOutput>

    <DefineOutput Name="NoTransitCompleted"><Description>
        Initialized to false.
    </Description><False/></DefineOutput>

    <DefineOutput Name="Waypoint1Completed"><Description>
        Waypoint1 is completed (initialized to false).
    </Description><False/></DefineOutput>

    <DefineOutput Name="Waypoint2Completed"><Description>
        Waypoint2 is completed (initialized to false).
    </Description><False/></DefineOutput>

    <DefineOutput Name="Waypoint3Completed"><Description>
        Waypoint3 is completed (initialized to false).
    </Description><False/></DefineOutput>

    <DefineOutput Name="Waypoint4Completed"><Description>
        Waypoint4 is completed (initialized to false).
    </Description><False/></DefineOutput>

    <DefineOutput Name="StartVerticalManeuver"><Description>
        Start vertical maneuver and sampling (initialized to false).
    </Description><False/></DefineOutput>

    <DefineOutput Name="Surfacing"><Description>
        Surfacing for communications (set to true when going down. Initialized
        to false).
    </Description><False/></DefineOutput>

    <DefineOutput Name="FlagTempSet"><Description>
        Flag of target temperature having been set. Initialized to false.
    </Description><False/></DefineOutput>

    <DefineOutput Name="FlagTargetDepthSet"><Description>
        Flag of target depth having been set. Initialized to false.
    </Description><False/></DefineOutput>

    <DefineOutput Name="FlagGoUp"><Description>
        Go-up flag (set to true when going up. Initialized to false).
    </Description><False/></DefineOutput>

    <DefineOutput Name="FlagGoDown"><Description>
        Go-down flag (set to true when going down. Initialized to false).
    </Description><False/></DefineOutput>

    <DefineOutput Name="FlagInitialDiveSpeedSet"><Description>
        Flag of initial dive speed set. Initialized to false.
    </Description><False/></DefineOutput>

    <DefineOutput Name="FlagPeakChlDepthSet"><Description>
        Flag of peak-chl depth having been set (set to true when the chl-peak
        depth has been set. Initialized to false).
    </Description><False/></DefineOutput>

    <DefineOutput Name="FlagPeakChlTempSet"><Description>
        Flag of peak-chl temperature having been set (set to true when the
        chl-peak temperature has been set. Initialized to false).
    </Description><False/></DefineOutput>

    <DefineOutput Name="EnableSettingPeakDepth"><Description>
        Enables setting peak-chl depth. Initialized to true.
    </Description><True/></DefineOutput>

    <DefineOutput Name="FlagFirstDive"><Description>
        Flag of first dive to find the peak-chl (true only for the first dive;
        false afterwards).
    </Description><True/></DefineOutput>

    <DefineOutput Name="FlagSamplingOngoing"><Description>
        Flag of water sampling in process (initialized to false).
    </Description><False/></DefineOutput>

    <DefineOutput Name="PeakChlDepthSet"><Description>
        Peak-chl depth detected on a dive. Initialized to 10 meters.
    </Description><Units:meter/><Value>10.0</Value></DefineOutput>

    <DefineOutput Name="PeakChlTemperatureSet"><Description>
        Peak-chl temperature detected on a dive, and set for chl-peak holding.
        Initialized to NaN.
    </Description><Units:kelvin/><Value>NaN</Value></DefineOutput>

    <DefineOutput Name="PeakChlSet"><Description>
        Peak-chl value detected on a dive.
    </Description><Units:microgram_per_liter/><Value>0.0</Value></DefineOutput>

    <DefineOutput Name="SyslogGoUp"><Description>
        Flag of logging "GoUp" in syslog (initialized to false).
    </Description><False/></DefineOutput>

    <DefineOutput Name="SyslogGoDown"><Description>
        Flag of logging "GoDown" in syslog (initialized to false).
    </Description><False/></DefineOutput>

    <DefineOutput Name="SyslogHoldDepth"><Description>
        Flag of logging "HoldDepth" in syslog (initialized to false).
    </Description><False/></DefineOutput>

    <DefineOutput Name="CylinderLat"><Description>
        Latitude of cylinder center. Initialized to NaN.
    </Description><Units:degree/><Value>NaN</Value></DefineOutput>

    <DefineOutput Name="CylinderLon"><Description>
        Longitude of cylinder center. Initialized to NaN.
    </Description><Units:degree/><Value>NaN</Value></DefineOutput>

    <DefineOutput Name="CntSamples"><Description>
        Count of water samples (initilized to 1).
    </Description><Units:count/><Value>1</Value></DefineOutput>

    <DefineOutput Name="SendDataCntSamplesCompleted"><Description>
        Initialized to false.
    </Description><False/></DefineOutput>

    <DefineOutput Name="SendDataESPSampleNumberCompleted"><Description>
        Initialized to false.
    </Description><False/></DefineOutput>

    <DefineOutput Name="SendDataESPCartridgeTypeCompleted"><Description>
        Initialized to false.
    </Description><False/></DefineOutput>

    <DefineOutput Name="SendDataESPSampleVolumeCompleted"><Description>
        Initialized to false.
    </Description><False/></DefineOutput>

    <DefineOutput Name="SendDataESPSampleDepCompleted"><Description>
        Initialized to false.
    </Description><False/></DefineOutput>

    <DefineOutput Name="SendDataESPSampleTempCompleted"><Description>
        Initialized to false.
    </Description><False/></DefineOutput>

    <DefineOutput Name="SendDataESPSampleChlCompleted"><Description>
        Initialized to false.
    </Description><False/></DefineOutput>

    <DefineOutput Name="SendDataAllCompleted"><Description>
        Initialized to false.
    </Description><False/></DefineOutput>

    <DefineOutput Name="CallSendData"><Description>
        Initialized to true.
    </Description><True/></DefineOutput>

    <DefineOutput Name="TouchedDeepBoundESP"><Description>
        Initialized to false.
    </Description><False/></DefineOutput>

    <DefineOutput Name="TouchedDeepBoundESPFlagSet"><Description>
        Initialized to false.
    </Description><False/></DefineOutput>

    <DefineOutput Name="UseESP"><Description>
        Whether to use ESP to sample.
    </Description><Science:ESPComponent.loadAtStartup/></DefineOutput>

    <DefineOutput Name="UseCANONSampler"><Description>
        Whether to use CANON Sampler to sample.
    </Description><Science:CANONSampler.loadAtStartup/></DefineOutput>

<!-- Missions should almost always start with a timeout and a NeedComms aggregate. Drift missions will not use NeedComms. -->

    <Timeout Duration="MissionTimeout"/>

<!-- Missions should almost always start with standard safety envelopes -->

    <Sample:AbortSample>
        <Parallel/>
    </Sample:AbortSample>

    <Insert Filename="Insert/StandardEnvelopes.xml"/>

    <Assign><Sequence/><Arg Name="StandardEnvelopes:MinAltitude"/><Arg Name="MinAltitude"/></Assign>

    <Assign><Sequence/><Arg Name="StandardEnvelopes:MaxDepth"/><Arg Name="MaxDepth"/></Assign>

    <Assign><Sequence/><Arg Name="StandardEnvelopes:MinOffshore"/><Arg Name="MinOffshore"/></Assign>

    <Insert Filename="Insert/AbortDrift.xml">
        <RedefineArg Name="AcousticTimeout"><Arg Name="AcousticTrackingTimeout"/></RedefineArg>
    </Insert>

    <Insert Filename="Insert/Sample.xml">
        <RedefineArg Name="SampleTimeout"><Arg Name="SampleTimeout"/></RedefineArg>
    </Insert>

    <Insert Filename="Insert/NeedComms.xml" Id="NeedComms"/>

    <Assign><Parallel/><Control:VerticalControl.maxBuoyDiveAccel/><Arg Name="BuoyDiveAccel"/></Assign>

<!-- Many missions will keep mass position fixed at the default. This mission allows the buoyancy volume to change to track the chlorophyll peak while drifting. -->

    <Guidance:Pitch>
        <Parallel/>
        <Setting><Guidance:Pitch.massPosition/><Arg Name="MassDefault"/></Setting>
    </Guidance:Pitch>

    <Insert Filename="Insert/Science.xml">
        <RedefineArg Name="PeakDetectChlActive"><Arg Name="SampleAtPeakChl"/></RedefineArg>
        <RedefineArg Name="HighestChlPeakReportActive"><Arg Name="FindHighChlLocation"/></RedefineArg>
        <RedefineArg Name="LowPassWindowLength"><Arg Name="LPWindowLength"/></RedefineArg>
        <RedefineArg Name="MedianFilterLen"><Arg Name="MedianFilterLength"/></RedefineArg>
        <RedefineArg Name="NumProfilesSlidingwindow"><Arg Name="NumberOfProfilesSlidingwindow"/></RedefineArg>
        <RedefineArg Name="PeakShallowBound"><Arg Name="ShallowBoundChl"/></RedefineArg>
        <RedefineArg Name="PeakDeepBound"><Arg Name="DeepBoundChl"/></RedefineArg>
    </Insert>

    <Guidance:AltitudeEnvelope>
        <Description>
            Another altitude envelope for the YoYo behavior. This envelope
            should fall within the limits of the standard safety envelopes in
            Insert/StandardEnvelopes.xml in order to avoid commanding high pitch
            angles for bottom-terminated YoYos.
        </Description>
        <Parallel/>
        <Setting><Guidance:AltitudeEnvelope.minAltitude/><Arg Name="YoYoMinAltitude"/></Setting>
        <Setting><Guidance:AltitudeEnvelope.upPitch/><Arg Name="YoYoUpPitch"/></Setting>
    </Guidance:AltitudeEnvelope>

    <Aggregate Id="PeakReacquisition">

        <When>
            <Called/>
        </When>

        <Aggregate Id="ReacquireChlPeak">

            <Sequence/>

            <Assign><Sequence/><Arg Name="EnableSettingPeakDepth"/><False/></Assign>

            <Assign><Sequence/><Arg Name="FlagPeakChlDepthSet"/><False/></Assign>

            <Assign><Sequence/><Arg Name="FlagPeakChlTempSet"/><False/></Assign>

            <Assign><Sequence/><Arg Name="FlagGoUp"/><True/></Assign>

            <Assign><Sequence/><Arg Name="FlagGoDown"/><False/></Assign>

            <Assign><Sequence/><Arg Name="SyslogGoDown"/><False/></Assign>

            <Assign><Sequence/><Arg Name="SyslogHoldDepth"/><False/></Assign>

            <Assign><Sequence/><Arg Name="DepthLogged"/><Universal:depth/></Assign>

            <Assign><Sequence/><Arg Name="TempLogged"/><Universal:sea_water_temperature/></Assign>

            <Assign><Sequence/><Arg Name="ChlLogged"/><Universal:mass_concentration_of_chlorophyll_in_sea_water/></Assign>

            <Syslog Severity="Important">Set FlagGoUp to true to reacquire chl peak. DepthLogged, TempLogged, ChlLogged, PeakChlDepthSet, PeakChlTemperatureSet, PeakChlSet = <Arg Name="DepthLogged"/><Units:meter/>, <Arg Name="TempLogged"/><Units:celsius/>, <Arg Name="ChlLogged"/><Units:microgram_per_liter/>, <Arg Name="PeakChlDepthSet"/><Units:meter/>, <Arg Name="PeakChlTemperatureSet"/><Units:celsius/>, <Arg Name="PeakChlSet"/><Units:microgram_per_liter/>.</Syslog>

        </Aggregate>

    </Aggregate>

    <Aggregate Id="TriggerSampling">

        <When>
            <Called/>
        </When>

        <Assign><Sequence/><Arg Name="Sample:SampleESP"/><Arg Name="UseESP"/></Assign>

        <Assign><Sequence/><Arg Name="Sample:ESPCartridgeType"/><Arg Name="CartridgeType"/></Assign>

        <Assign><Sequence/><Arg Name="Sample:SampleCANONSampler"/><Arg Name="UseCANONSampler"/></Assign>

        <Assign><Sequence/><Arg Name="Sample:CANONSamplerDelay"/><Arg Name="CANONSamplerDelay"/></Assign>

        <Call Id="TriggerSample" RefId="Sample"/>

    </Aggregate>

    <Aggregate Id="TriggerSampleAtDepth">

        <When>
            <Called/>
        </When>

        <Aggregate Id="ApproachDepth">

            <Sequence/>

            <Syslog>Moving to <Arg Name="DepthSet"/><Units:meter/></Syslog>

            <Guidance:Pitch>
                <Sequence/>
                <Timeout Duration="MaxWaitNotAchievingDepth">
                    <Syslog Severity="Important">Timed out trying to reach the targeted depth. Stopping mission.</Syslog>
                    <Guidance:Execute>
                        <Sequence/>
                        <Setting><Guidance:Execute.command/><String>stop</String></Setting>
                    </Guidance:Execute>
                </Timeout>
                <Setting><Guidance:Pitch.depth/><Arg Name="DepthSet"/></Setting>
            </Guidance:Pitch>

        </Aggregate>

        <Aggregate Id="SampleWrapper">

            <Sequence/>

            <Guidance:Pitch>
                <Parallel/>
                <Setting><Guidance:Pitch.depth/><Arg Name="DepthSet"/></Setting>
            </Guidance:Pitch>

            <Syslog Severity="Important">At <Universal:depth/><Units:meter/>, settling for <Arg Name="WaitDepthUndulation"/><Units:minute/></Syslog>

            <Guidance:Wait>
                <Sequence/>
                <Setting><Guidance:Wait.duration/><Arg Name="WaitDepthUndulation"/></Setting>
            </Guidance:Wait>

            <Call Id="SampleAtTargetDepth" RefId="TriggerSampling"/>

        </Aggregate>

    </Aggregate>

    <Aggregate Id="DampDown">

        <When>
            <Called/>
        </When>

        <Syslog Severity="Important">Wait <Arg Name="WaitDepthUndulation"/><Units:minute/> for the depth undulation to damp down.</Syslog>

        <Guidance:Wait>
            <Sequence/>
            <Setting><Guidance:Wait.duration/><Arg Name="WaitDepthUndulation"/></Setting>
        </Guidance:Wait>

    </Aggregate>

    <Aggregate Id="SendData">

        <Sequence/>

        <When>
            <Called/>
        </When>

        <Aggregate Id="SendDataCntSamples">

            <Sequence/>

            <Break>
                <IsNaN>
                    <IsothermDepthSampling.CntSamples/>
                </IsNaN>
                <Or><Arg Name="SendDataCntSamplesCompleted"/></Or>
            </Break>

            <Syslog Severity="Important">IsothermDepthSampling.CntSamples = <IsothermDepthSampling.CntSamples/><Units:count/></Syslog>

            <SendData Service="Direct" Destination="modem:7:_.LRAUVcntSamples">
                <IsothermDepthSampling.CntSamples/><Units:count/>
            </SendData>

            <Assign><Sequence/><Arg Name="SendDataCntSamplesCompleted"/><True/></Assign>

        </Aggregate>

        <Aggregate Id="SendDataESPSampleNumber">

            <Sequence/>

            <Break>
                <IsNaN>
                    <Science:ESPComponent.sample_number/>
                </IsNaN>
                <Or><Arg Name="SendDataESPSampleNumberCompleted"/></Or>
            </Break>

            <Syslog Severity="Important">Science:ESPComponent.sample_number = <Science:ESPComponent.sample_number/><Units:count/></Syslog>

            <SendData Service="Direct" Destination="modem:7:_.ESPsampleNumber">
                <Science:ESPComponent.sample_number/><Units:count/>
            </SendData>

            <Assign><Sequence/><Arg Name="SendDataESPSampleNumberCompleted"/><True/></Assign>

        </Aggregate>

        <Aggregate Id="SendDataESPCartridgeType">

            <Sequence/>

            <Break>
                <IsNaN>
                    <Science:ESPComponent.cartridge/>
                </IsNaN>
                <Or><Arg Name="SendDataESPCartridgeTypeCompleted"/></Or>
            </Break>

            <Syslog Severity="Important">Science:ESPComponent.cartridge = <Science:ESPComponent.cartridge/><Units:count/></Syslog>

            <SendData Service="Direct" Destination="modem:7:_.ESPcartridgeType">
                <Science:ESPComponent.cartridge/><Units:count/>
            </SendData>

            <Assign><Sequence/><Arg Name="SendDataESPCartridgeTypeCompleted"/><True/></Assign>

        </Aggregate>

        <Aggregate Id="SendDataESPSampleVolume">

            <Sequence/>

            <Break>
                <IsNaN>
                    <Science:ESPComponent.sampleVolume/>
                </IsNaN>
                <Or><Arg Name="SendDataESPSampleVolumeCompleted"/></Or>
            </Break>

            <Syslog Severity="Important">Science:ESPComponent.sampleVolume = <Science:ESPComponent.sampleVolume/><Units:milliliter/></Syslog>

            <SendData Service="Direct" Destination="modem:7:_.ESPsampleVolume">
                <Science:ESPComponent.sampleVolume/><Units:milliliter/>
            </SendData>

            <Assign><Sequence/><Arg Name="SendDataESPSampleVolumeCompleted"/><True/></Assign>

        </Aggregate>

        <Aggregate Id="SendDataESPSampleDep">

            <Sequence/>

            <Break>
                <IsNaN>
                    <Universal:depth/>
                </IsNaN>
                <Or><Arg Name="SendDataESPSampleDepCompleted"/></Or>
            </Break>

            <Syslog Severity="Important">Universal:depth = <Universal:depth/><Units:meter/></Syslog>

            <SendData Service="Direct" Destination="modem:7:_.ESPsampleDepth">
                <Universal:depth/><Units:meter/>
            </SendData>

            <Assign><Sequence/><Arg Name="SendDataESPSampleDepCompleted"/><True/></Assign>

        </Aggregate>

        <Aggregate Id="SendDataESPSampleTemp">

            <Sequence/>

            <Break>
                <IsNaN>
                    <Universal:sea_water_temperature/>
                </IsNaN>
                <Or><Arg Name="SendDataESPSampleTempCompleted"/></Or>
            </Break>

            <Syslog Severity="Important">Universal:sea_water_temperature = <Universal:sea_water_temperature/><Units:celsius/></Syslog>

            <SendData Service="Direct" Destination="modem:7:_.sampleTemperature">
                <Universal:sea_water_temperature/><Units:celsius/>
            </SendData>

            <Assign><Sequence/><Arg Name="SendDataESPSampleTempCompleted"/><True/></Assign>

        </Aggregate>

        <Aggregate Id="SendDataESPSampleChl">

            <Sequence/>

            <Break>
                <IsNaN>
                    <Universal:mass_concentration_of_chlorophyll_in_sea_water/>
                </IsNaN>
                <Or><Arg Name="SendDataESPSampleChlCompleted"/></Or>
            </Break>

            <Syslog Severity="Important">Universal:mass_concentration_of_chlorophyll_in_sea_water = <Universal:mass_concentration_of_chlorophyll_in_sea_water/><Units:microgram_per_liter/></Syslog>

            <SendData Service="Direct" Destination="modem:7:_.sampleChlorophyll">
                <Universal:mass_concentration_of_chlorophyll_in_sea_water/><Units:microgram_per_liter/>
            </SendData>

            <Assign><Sequence/><Arg Name="SendDataESPSampleChlCompleted"/><True/></Assign>

        </Aggregate>

        <Assign><Sequence/><Arg Name="SendDataAllCompleted"/><True/></Assign>

    </Aggregate>

    <Aggregate Id="SetSampleOptions">

        <When>
            <Called/>
        </When>

        <Assign><Sequence/><Arg Name="UseESP"/><False/></Assign>

        <Assign><Sequence/><Arg Name="UseCANONSampler"/><False/></Assign>

        <Aggregate Id="SettingUseESP">

            <Sequence/>

            <Break>
                <Not><Science:ESPComponent.loadAtStartup/></Not>
                <Or><Arg Name="SampleTypeIndividual"/><Eq><Arg Name="SampleCANONSamplerOnly"/></Eq></Or>
            </Break>

            <Assign><Sequence/><Arg Name="UseESP"/><True/></Assign>

        </Aggregate>

        <Aggregate Id="SettingUseCANONSampler">

            <Sequence/>

            <Break>
                <Not><Science:CANONSampler.loadAtStartup/></Not>
                <Or><Arg Name="SampleTypeIndividual"/><Eq><Arg Name="SampleESPOnly"/></Eq></Or>
            </Break>

            <Assign><Sequence/><Arg Name="UseCANONSampler"/><True/></Assign>

        </Aggregate>

        <Aggregate Id="SettingCartridgeTypeIndividual">

            <Sequence/>

            <Break>
                <IsNaN><Arg Name="CartridgeTypeIndividual"/>
                </IsNaN>
                <Or><Not><Arg Name="UseESP"/></Not></Or>
            </Break>

            <Assign><Sequence/><Arg Name="CartridgeType"/><Arg Name="CartridgeTypeIndividual"/></Assign>

        </Aggregate>

        <Aggregate Id="SettingCartridgeTypeCommon">

            <Sequence/>

            <Break>
                <Not><IsNaN><Arg Name="CartridgeTypeIndividual"/>
                </IsNaN></Not>
                <Or><Not><Arg Name="UseESP"/></Not></Or>
            </Break>

            <Assign><Sequence/><Arg Name="CartridgeType"/><Arg Name="CartridgeTypeCommon"/></Assign>

        </Aggregate>

        <Aggregate Id="SettingTempDiffFromPeakChlIndividual">

            <Sequence/>

            <Break>
                <IsNaN><Arg Name="TempDiffFromPeakChlIndividual"/>
                </IsNaN>
            </Break>

            <Assign><Sequence/><Arg Name="TempDiffFromPeakChl"/><Arg Name="TempDiffFromPeakChlIndividual"/></Assign>

        </Aggregate>

        <Aggregate Id="SettingTempDiffFromPeakChlCommon">

            <Sequence/>

            <Break>
                <Not><IsNaN><Arg Name="TempDiffFromPeakChlIndividual"/>
                </IsNaN></Not>
            </Break>

            <Assign><Sequence/><Arg Name="TempDiffFromPeakChl"/><Arg Name="TempDiffFromPeakChlCommon"/></Assign>

        </Aggregate>

        <Aggregate Id="SettingDepDiffFromPeakChlIndividual">

            <Sequence/>

            <Break>
                <IsNaN><Arg Name="DepDiffFromPeakChlIndividual"/>
                </IsNaN>
            </Break>

            <Assign><Sequence/><Arg Name="DepDiffFromPeakChl"/><Arg Name="DepDiffFromPeakChlIndividual"/></Assign>

        </Aggregate>

        <Aggregate Id="SettingDepDiffFromPeakChlCommon">

            <Sequence/>

            <Break>
                <Not><IsNaN><Arg Name="DepDiffFromPeakChlIndividual"/>
                </IsNaN></Not>
            </Break>

            <Assign><Sequence/><Arg Name="DepDiffFromPeakChl"/><Arg Name="DepDiffFromPeakChlCommon"/></Assign>

        </Aggregate>

        <Aggregate Id="SettingDepIndividual">

            <Sequence/>

            <Break>
                <IsNaN><Arg Name="DepIndividual"/>
                </IsNaN>
            </Break>

            <Assign><Sequence/><Arg Name="DepthDesignated"/><Arg Name="DepIndividual"/></Assign>

        </Aggregate>

        <Aggregate Id="SettingDepCommon">

            <Sequence/>

            <Break>
                <Not><IsNaN><Arg Name="DepIndividual"/>
                </IsNaN></Not>
            </Break>

            <Assign><Sequence/><Arg Name="DepthDesignated"/><Arg Name="DepCommon"/></Assign>

        </Aggregate>

        <Aggregate Id="SettingTempIndividual">

            <Sequence/>

            <Break>
                <IsNaN><Arg Name="TempIndividual"/>
                </IsNaN>
            </Break>

            <Assign><Sequence/><Arg Name="TempDesignated"/><Arg Name="TempIndividual"/></Assign>

        </Aggregate>

        <Aggregate Id="SettingTempCommon">

            <Sequence/>

            <Break>
                <Not><IsNaN><Arg Name="TempIndividual"/>
                </IsNaN></Not>
            </Break>

            <Assign><Sequence/><Arg Name="TempDesignated"/><Arg Name="TempCommon"/></Assign>

        </Aggregate>

        <Aggregate Id="SettingWaitIndividual">

            <Sequence/>

            <Break>
                <IsNaN><Arg Name="WaitDepUndulationIndividual"/>
                </IsNaN>
            </Break>

            <Assign><Sequence/><Arg Name="WaitDepthUndulation"/><Arg Name="WaitDepUndulationIndividual"/></Assign>

        </Aggregate>

        <Aggregate Id="SettingWaitCommon">

            <Sequence/>

            <Break>
                <Not><IsNaN><Arg Name="WaitDepUndulationIndividual"/>
                </IsNaN></Not>
            </Break>

            <Assign><Sequence/><Arg Name="WaitDepthUndulation"/><Arg Name="WaitDepUndulationCommon"/></Assign>

        </Aggregate>

        <Syslog Severity="Important">Set CartridgeType (if ESP), TempDiffFromPeakChl, DepDiffFromPeakChl, TempDesignated, DepthDesignated, WaitDepthUndulation to <Arg Name="CartridgeType"/><Units:count/>, <Arg Name="TempDiffFromPeakChl"/><Units:kelvin/>, <Arg Name="DepDiffFromPeakChl"/><Units:meter/>, <Arg Name="TempDesignated"/><Units:celsius/>, <Arg Name="DepthDesignated"/><Units:meter/>, <Arg Name="WaitDepthUndulation"/><Units:minute/>.</Syslog>

    </Aggregate>

    <Aggregate Id="MissionStart">

        <Sequence/>

        <Call Id="MissionStartComms" RefId="NeedComms"/>

        <Assign><Sequence/><Arg Name="MissionStartCommsCompleted"/><True/></Assign>

        <Assign><Sequence/><Arg Name="ElapsedSinceStartOrLastSample"/><Units:hour/><Value>0</Value></Assign>

    </Aggregate>

    <Aggregate Id="TransitToSamplingLocationComms">

        <Sequence/>

        <When>
            <Not><IsNaN><Arg Name="Lat1"/>
            </IsNaN></Not>
            <And><Not><IsNaN><Arg Name="Lon1"/>
            </IsNaN></Not></And>
            <Or><Not><IsNaN><Arg Name="Lat2"/>
            </IsNaN></Not><And><Not><IsNaN><Arg Name="Lon2"/>
            </IsNaN></Not></And></Or>
            <Or><Not><IsNaN><Arg Name="Lat3"/>
            </IsNaN></Not><And><Not><IsNaN><Arg Name="Lon3"/>
            </IsNaN></Not></And></Or>
            <Or><Not><IsNaN><Arg Name="Lat4"/>
            </IsNaN></Not><And><Not><IsNaN><Arg Name="Lon4"/>
            </IsNaN></Not></And></Or>
            <And><Arg Name="MissionStartCommsCompleted"/></And>
            <And><Arg Name="CommsAtEndOfTransit"/></And>
            <And><Not><Arg Name="TransitCompleted"/></Not></And>
        </When>

        <Assign><Sequence/><Arg Name="NeedComms:DiveInterval"/><Arg Name="NeedCommsTimeInTransect"/></Assign>

        <Guidance:SetSpeed>
            <Parallel/>
            <Setting><Guidance:SetSpeed.speed/><Arg Name="SpeedTransit"/></Setting>
        </Guidance:SetSpeed>

        <Assign><Sequence/><Arg Name="YoYoMinDepth"/><Arg Name="TransitYoYoMinDepth"/></Assign>

        <Assign><Sequence/><Arg Name="YoYoMaxDepth"/><Arg Name="TransitYoYoMaxDepth"/></Assign>

        <Guidance:DepthEnvelope>
            <Parallel/>
            <Setting><Guidance:DepthEnvelope.minDepth/><Arg Name="YoYoMinDepth"/></Setting>
            <Setting><Guidance:DepthEnvelope.maxDepth/><Arg Name="YoYoMaxDepth"/></Setting>
            <Setting><Guidance:DepthEnvelope.downPitch/><Arg Name="YoYoDownPitch"/></Setting>
            <Setting><Guidance:DepthEnvelope.upPitch/><Arg Name="YoYoUpPitch"/></Setting>
        </Guidance:DepthEnvelope>

        <Guidance:YoYo>
            <Parallel/>
            <Setting><Guidance:YoYo.downPitch/><Arg Name="YoYoDownPitch"/></Setting>
            <Setting><Guidance:YoYo.upPitch/><Arg Name="YoYoUpPitch"/></Setting>
        </Guidance:YoYo>

        <Guidance:Buoyancy>
            <Parallel/>
            <Setting><Guidance:Buoyancy.position/><Arg Name="BuoyancyNeutral"/></Setting>
        </Guidance:Buoyancy>

        <Aggregate Id="Lap">

            <Sequence Repeat="RepeatTransects"/>

            <Aggregate Id="Wpt1">

                <Sequence/>

                <Break>
                    <IsNaN><Arg Name="Lat1"/>
                    </IsNaN>
                    <Or><IsNaN><Arg Name="Lon1"/>
                    </IsNaN></Or>
                </Break>

                <Guidance:Waypoint>
                    <Sequence/>
                    <Setting><Guidance:Waypoint.latitude/><Arg Name="Lat1"/></Setting>
                    <Setting><Guidance:Waypoint.longitude/><Arg Name="Lon1"/></Setting>
                </Guidance:Waypoint>

                <Assign><Sequence/><Arg Name="WaypointLat"/><Arg Name="Lat1"/></Assign>

                <Assign><Sequence/><Arg Name="WaypointLon"/><Arg Name="Lon1"/></Assign>

                <Assign><Sequence/><Arg Name="Waypoint1Completed"/><True/></Assign>

            </Aggregate>

            <Aggregate Id="Wpt2">

                <Sequence/>

                <Break>
                    <IsNaN><Arg Name="Lat2"/>
                    </IsNaN>
                    <Or><IsNaN><Arg Name="Lon2"/>
                    </IsNaN></Or>
                </Break>

                <Guidance:Waypoint>
                    <Sequence/>
                    <Setting><Guidance:Waypoint.latitude/><Arg Name="Lat2"/></Setting>
                    <Setting><Guidance:Waypoint.longitude/><Arg Name="Lon2"/></Setting>
                </Guidance:Waypoint>

                <Assign><Sequence/><Arg Name="WaypointLat"/><Arg Name="Lat2"/></Assign>

                <Assign><Sequence/><Arg Name="WaypointLon"/><Arg Name="Lon2"/></Assign>

                <Assign><Sequence/><Arg Name="Waypoint2Completed"/><True/></Assign>

            </Aggregate>

            <Aggregate Id="Wpt3">

                <Sequence/>

                <Break>
                    <IsNaN><Arg Name="Lat3"/>
                    </IsNaN>
                    <Or><IsNaN><Arg Name="Lon3"/>
                    </IsNaN></Or>
                </Break>

                <Guidance:Waypoint>
                    <Sequence/>
                    <Setting><Guidance:Waypoint.latitude/><Arg Name="Lat3"/></Setting>
                    <Setting><Guidance:Waypoint.longitude/><Arg Name="Lon3"/></Setting>
                </Guidance:Waypoint>

                <Assign><Sequence/><Arg Name="WaypointLat"/><Arg Name="Lat3"/></Assign>

                <Assign><Sequence/><Arg Name="WaypointLon"/><Arg Name="Lon3"/></Assign>

                <Assign><Sequence/><Arg Name="Waypoint3Completed"/><True/></Assign>

            </Aggregate>

            <Aggregate Id="Wpt4">

                <Sequence/>

                <Break>
                    <IsNaN><Arg Name="Lat4"/>
                    </IsNaN>
                    <Or><IsNaN><Arg Name="Lon4"/>
                    </IsNaN></Or>
                </Break>

                <Guidance:Waypoint>
                    <Sequence/>
                    <Setting><Guidance:Waypoint.latitude/><Arg Name="Lat4"/></Setting>
                    <Setting><Guidance:Waypoint.longitude/><Arg Name="Lon4"/></Setting>
                </Guidance:Waypoint>

                <Assign><Sequence/><Arg Name="WaypointLat"/><Arg Name="Lat4"/></Assign>

                <Assign><Sequence/><Arg Name="WaypointLon"/><Arg Name="Lon4"/></Assign>

                <Assign><Sequence/><Arg Name="Waypoint4Completed"/><True/></Assign>

            </Aggregate>

            <Aggregate Id="SetWaypointCompleted">

                <Sequence/>

                <Break>
                    <Not><IsNaN><Arg Name="Lat1"/>
                    </IsNaN></Not>
                    <And><Not><IsNaN><Arg Name="Lon1"/>
                    </IsNaN></Not></And>
                    <And><Not><Arg Name="Waypoint1Completed"/></Not></And>
                    <Or><Not><IsNaN><Arg Name="Lat2"/>
                    </IsNaN></Not><And><Not><IsNaN><Arg Name="Lon2"/>
                    </IsNaN></Not></And><And><Not><Arg Name="Waypoint2Completed"/></Not></And></Or>
                    <Or><Not><IsNaN><Arg Name="Lat3"/>
                    </IsNaN></Not><And><Not><IsNaN><Arg Name="Lon3"/>
                    </IsNaN></Not></And><And><Not><Arg Name="Waypoint3Completed"/></Not></And></Or>
                    <Or><Not><IsNaN><Arg Name="Lat4"/>
                    </IsNaN></Not><And><Not><IsNaN><Arg Name="Lon4"/>
                    </IsNaN></Not></And><And><Not><Arg Name="Waypoint4Completed"/></Not></And></Or>
                </Break>

                <Assign><Sequence/><Arg Name="ElapsedSinceStartOrLastSample"/><Units:hour/><Value>0</Value></Assign>

            </Aggregate>

        </Aggregate>

        <Aggregate Id="SetCylinderCenterToWaypoint">

            <Sequence/>

            <Break>
                <Not><Arg Name="CylinderYoYo"/></Not>
                <Or><Arg Name="FindHighChlLocation"/></Or>
                <Or><IsNaN><Arg Name="WaypointLat"/>
                </IsNaN></Or>
                <Or><IsNaN><Arg Name="WaypointLon"/>
                </IsNaN></Or>
            </Break>

            <Assign><Sequence/><Arg Name="CylinderLat"/><Arg Name="WaypointLat"/></Assign>

            <Assign><Sequence/><Arg Name="CylinderLon"/><Arg Name="WaypointLon"/></Assign>

            <Syslog Severity="Important">Set cylinder center to Waypoint <Arg Name="CylinderLat"/><Units:degree/>,<Arg Name="CylinderLon"/><Units:degree/>.</Syslog>

        </Aggregate>

        <Aggregate Id="SetCylinderCenterToHiChlLocation">

            <Sequence/>

            <Break>
                <Not><Arg Name="CylinderYoYo"/></Not>
                <Or><Not><Arg Name="FindHighChlLocation"/></Not></Or>
                <Or><IsNaN><Arg Name="Science:PatchChlLatitude"/>
                </IsNaN></Or>
                <Or><IsNaN><Arg Name="Science:PatchChlLongitude"/>
                </IsNaN></Or>
            </Break>

            <Assign><Sequence/><Arg Name="CylinderLat"/><Arg Name="Science:PatchChlLatitude"/></Assign>

            <Assign><Sequence/><Arg Name="CylinderLon"/><Arg Name="Science:PatchChlLongitude"/></Assign>

            <Syslog Severity="Important">Set cylinder center to hi-chl location <Arg Name="CylinderLat"/><Units:degree/>,<Arg Name="CylinderLon"/><Units:degree/>,<Arg Name="Science:PatchChl"/><Units:microgram_per_liter/>.</Syslog>

        </Aggregate>

        <Aggregate Id="CylinderYoYoAroundSamplingLocation">

            <Sequence/>

            <Timeout Duration="CylinderTimeout"/>

            <Aggregate Id="CylinderIfNonNaNLatLon">

                <Sequence/>

                <Break>
                    <Not><Arg Name="CylinderYoYo"/></Not>
                    <Or><IsNaN><Arg Name="CylinderLat"/>
                    </IsNaN></Or>
                    <Or><IsNaN><Arg Name="CylinderLon"/>
                    </IsNaN></Or>
                </Break>

                <Syslog Severity="Important">Yoyo profile on a cylinder around sampling location <Arg Name="CylinderLat"/><Units:degree/>,<Arg Name="CylinderLon"/><Units:degree/>, at radius = <Arg Name="CylinderRadius"/><Units:meter/></Syslog>

                <Assign><Sequence/><Arg Name="YoYoMinDepth"/><Arg Name="CylinderYoYoMinDep"/></Assign>

                <Assign><Sequence/><Arg Name="YoYoMaxDepth"/><Arg Name="CylinderYoYoMaxDep"/></Assign>

                <Aggregate Id="CylinderWrapper">

                    <Sequence Repeat="MaxCirclesOnCylinder"/>

                    <Assign><Parallel/><Control:HorizontalControl.kwpHeading/><Arg Name="KwpHeading"/></Assign>

                    <Guidance:Circle>
                        <Sequence/>
                        <Setting><Guidance:Circle.latitude/><Arg Name="CylinderLat"/></Setting>
                        <Setting><Guidance:Circle.longitude/><Arg Name="CylinderLon"/></Setting>
                        <Setting><Guidance:Circle.radius/><Arg Name="CylinderRadius"/></Setting>
                        <Setting><Guidance:Circle.maxError/><Arg Name="CylinderCircleMaxError"/></Setting>
                        <Setting><Guidance:Circle.turnToPort/><Arg Name="CylinderCircleTurnToPort"/></Setting>
                    </Guidance:Circle>

                </Aggregate>

            </Aggregate>

        </Aggregate>

        <Aggregate Id="GoToCylinderCenter">

            <Sequence/>

            <Break>
                <IsNaN><Arg Name="CylinderLat"/>
                </IsNaN>
                <Or><IsNaN><Arg Name="CylinderLon"/>
                </IsNaN></Or>
            </Break>

            <Syslog Severity="Important">Go to cylinder center (i.e., sampling location): <Arg Name="CylinderLat"/><Units:degree/>,<Arg Name="CylinderLon"/><Units:degree/></Syslog>

            <Guidance:Waypoint Id="ToCylinderCenter">
                <Sequence/>
                <Setting><Guidance:Waypoint.latitude/><Arg Name="CylinderLat"/></Setting>
                <Setting><Guidance:Waypoint.longitude/><Arg Name="CylinderLon"/></Setting>
            </Guidance:Waypoint>

        </Aggregate>

        <Call Id="GoToSurfaceBeforeDiving" RefId="NeedComms"/>

        <Assign><Sequence/><Arg Name="ElapsedSinceStartOrLastSample"/><Units:hour/><Value>0</Value></Assign>

        <Assign><Sequence/><Arg Name="NeedComms:DiveInterval"/><Arg Name="MissionTimeout"/></Assign>

        <Aggregate Id="TransitCommsSetFlagGoDown">

            <Sequence/>

            <Break>
                <Not><Arg Name="SampleAtPeakChl"/></Not>
                <Or><IsNaN><Arg Name="TempDiffFromPeakChl1"/>
                </IsNaN><And><IsNaN><Arg Name="TempDiffFromPeakChlCommon"/>
                </IsNaN></And><And><IsNaN><Arg Name="DepDiffFromPeakChl1"/>
                </IsNaN></And><And><IsNaN><Arg Name="DepDiffFromPeakChlCommon"/>
                </IsNaN></And></Or>
            </Break>

            <Assign><Sequence/><Arg Name="FlagGoDown"/><True/></Assign>

        </Aggregate>

        <Assign><Sequence/><Arg Name="StartVerticalManeuver"/><True/></Assign>

        <Assign><Sequence/><Arg Name="TransitCompleted"/><True/></Assign>

    </Aggregate>

    <Aggregate Id="NoTransit">

        <Sequence/>

        <When>
            <Not><Not><IsNaN><Arg Name="Lat1"/>
            </IsNaN></Not><And><Not><IsNaN><Arg Name="Lon1"/>
            </IsNaN></Not></And><Or><Not><IsNaN><Arg Name="Lat2"/>
            </IsNaN></Not><And><Not><IsNaN><Arg Name="Lon2"/>
            </IsNaN></Not></And></Or><Or><Not><IsNaN><Arg Name="Lat3"/>
            </IsNaN></Not><And><Not><IsNaN><Arg Name="Lon3"/>
            </IsNaN></Not></And></Or><Or><Not><IsNaN><Arg Name="Lat4"/>
            </IsNaN></Not><And><Not><IsNaN><Arg Name="Lon4"/>
            </IsNaN></Not></And></Or></Not>
            <And><Arg Name="MissionStartCommsCompleted"/></And>
            <And><Not><Arg Name="NoTransitCompleted"/></Not></And>
        </When>

        <Assign><Sequence/><Arg Name="ElapsedSinceStartOrLastSample"/><Units:hour/><Value>0</Value></Assign>

        <Assign><Sequence/><Arg Name="NeedComms:DiveInterval"/><Arg Name="MissionTimeout"/></Assign>

        <Aggregate Id="NoTransitSetFlagGoDown">

            <Sequence/>

            <Break>
                <Not><Arg Name="SampleAtPeakChl"/></Not>
                <Or><IsNaN><Arg Name="TempDiffFromPeakChl1"/>
                </IsNaN><And><IsNaN><Arg Name="TempDiffFromPeakChlCommon"/>
                </IsNaN></And><And><IsNaN><Arg Name="DepDiffFromPeakChl1"/>
                </IsNaN></And><And><IsNaN><Arg Name="DepDiffFromPeakChlCommon"/>
                </IsNaN></And></Or>
            </Break>

            <Assign><Sequence/><Arg Name="FlagGoDown"/><True/></Assign>

        </Aggregate>

        <Assign><Sequence/><Arg Name="StartVerticalManeuver"/><True/></Assign>

        <Assign><Sequence/><Arg Name="NoTransitCompleted"/><True/></Assign>

    </Aggregate>

    <Aggregate Id="TransitToSamplingLocationNoComms">

        <Sequence/>

        <When>
            <Not><IsNaN><Arg Name="Lat1"/>
            </IsNaN></Not>
            <And><Not><IsNaN><Arg Name="Lon1"/>
            </IsNaN></Not></And>
            <And><Arg Name="MissionStartCommsCompleted"/></And>
            <And><Not><Arg Name="CommsAtEndOfTransit"/></Not></And>
            <And><Not><Arg Name="TransitCompleted"/></Not></And>
        </When>

        <Guidance:SetSpeed>
            <Parallel/>
            <Setting><Guidance:SetSpeed.speed/><Arg Name="SpeedTransit"/></Setting>
        </Guidance:SetSpeed>

        <Assign><Sequence/><Arg Name="YoYoMinDepth"/><Arg Name="TransitYoYoMinDepth"/></Assign>

        <Assign><Sequence/><Arg Name="YoYoMaxDepth"/><Arg Name="TransitYoYoMaxDepth"/></Assign>

        <Guidance:Buoyancy>
            <Parallel/>
            <Setting><Guidance:Buoyancy.position/><Arg Name="BuoyancyNeutral"/></Setting>
        </Guidance:Buoyancy>

        <Aggregate Id="Wpt1NoComms">

            <Sequence/>

            <Break>
                <IsNaN><Arg Name="Lat1"/>
                </IsNaN>
                <Or><IsNaN><Arg Name="Lon1"/>
                </IsNaN></Or>
            </Break>

            <Guidance:DepthEnvelope>
                <Parallel/>
                <Setting><Guidance:DepthEnvelope.minDepth/><Arg Name="YoYoMinDepth"/></Setting>
                <Setting><Guidance:DepthEnvelope.maxDepth/><Arg Name="YoYoMaxDepth"/></Setting>
                <Setting><Guidance:DepthEnvelope.downPitch/><Arg Name="YoYoDownPitch"/></Setting>
                <Setting><Guidance:DepthEnvelope.upPitch/><Arg Name="YoYoUpPitch"/></Setting>
            </Guidance:DepthEnvelope>

            <Guidance:YoYo>
                <Parallel/>
                <Setting><Guidance:YoYo.downPitch/><Arg Name="YoYoDownPitch"/></Setting>
                <Setting><Guidance:YoYo.upPitch/><Arg Name="YoYoUpPitch"/></Setting>
            </Guidance:YoYo>

            <Guidance:Waypoint>
                <Sequence/>
                <Setting><Guidance:Waypoint.latitude/><Arg Name="Lat1"/></Setting>
                <Setting><Guidance:Waypoint.longitude/><Arg Name="Lon1"/></Setting>
            </Guidance:Waypoint>

        </Aggregate>

        <Assign><Sequence/><Arg Name="ElapsedSinceStartOrLastSample"/><Units:hour/><Value>0</Value></Assign>

        <Assign><Sequence/><Arg Name="NeedComms:DiveInterval"/><Arg Name="MissionTimeout"/></Assign>

        <Guidance:GoToSurface>
            <Sequence/>
            <Setting><Guidance:GoToSurface.pitch/><Arg Name="SurfacePitch"/></Setting>
            <Setting><Guidance:GoToSurface.depthRate/><Arg Name="SurfaceDepthRate"/></Setting>
            <Setting><Guidance:GoToSurface.speed/><Arg Name="SpeedTransit"/></Setting>
        </Guidance:GoToSurface>

        <Aggregate Id="TransitNoCommsSetFlagGoDown">

            <Sequence/>

            <Break>
                <Not><Arg Name="SampleAtPeakChl"/></Not>
                <Or><IsNaN><Arg Name="TempDiffFromPeakChl1"/>
                </IsNaN><And><IsNaN><Arg Name="TempDiffFromPeakChlCommon"/>
                </IsNaN></And><And><IsNaN><Arg Name="DepDiffFromPeakChl1"/>
                </IsNaN></And><And><IsNaN><Arg Name="DepDiffFromPeakChlCommon"/>
                </IsNaN></And></Or>
            </Break>

            <Assign><Sequence/><Arg Name="FlagGoDown"/><True/></Assign>

        </Aggregate>

        <Assign><Sequence/><Arg Name="StartVerticalManeuver"/><True/></Assign>

        <Assign><Sequence/><Arg Name="TransitCompleted"/><True/></Assign>

    </Aggregate>

    <Aggregate Id="SetSpeedInitialDive">

        <Sequence/>

        <When>
            <Arg Name="StartVerticalManeuver"/>
            <And><Arg Name="CntSamples"/><Eq><Units:count/><Value>1</Value></Eq></And>
            <And><Not><Arg Name="FlagInitialDiveSpeedSet"/></Not></And>
        </When>

        <Assign><Sequence/><Arg Name="SpeedApproachThenSample"/><Arg Name="SpeedInitialDive"/></Assign>

        <Guidance:Wait>
            <Sequence/>
            <Setting><Guidance:Wait.duration/><Arg Name="InitialDiveDuration"/></Setting>
        </Guidance:Wait>

        <Assign><Sequence/><Arg Name="SpeedApproachThenSample"/><Arg Name="SpeedSampling"/></Assign>

        <Assign><Sequence/><Arg Name="FlagInitialDiveSpeedSet"/><True/></Assign>

    </Aggregate>

    <Aggregate Id="FindPeakChlVertical">

        <Sequence/>

        <Break><Arg Name="CntSamples"/>
            <Gt><Arg Name="NumSamplers"/></Gt>
        </Break>

        <Aggregate Id="FindPeak">

            <While>
                <Arg Name="SampleAtPeakChl"/>
            </While>

            <Sequence/>

            <Aggregate Id="SetDepthRateGoDown">

                <While>
                    <Arg Name="FlagGoDown"/>
                    <And><Arg Name="StartVerticalManeuver"/></And>
                </While>

                <Guidance:Pitch>
                    <Parallel/>
                    <Setting><Guidance:Pitch.depthRate/><Arg Name="DownRate"/></Setting>
                </Guidance:Pitch>

            </Aggregate>

            <Aggregate Id="SetDepthRateGoUp">

                <While>
                    <Arg Name="FlagGoUp"/>
                    <And><Arg Name="StartVerticalManeuver"/></And>
                </While>

                <Guidance:Pitch>
                    <Parallel/>
                    <Setting><Guidance:Pitch.depthRate/><Arg Name="UpRate"/></Setting>
                </Guidance:Pitch>

            </Aggregate>

            <Aggregate Id="SetFlagGoDown">

                <When>
                    <Not><Arg Name="Surfacing"/></Not>
                    <And><IsNaN><Arg Name="TempDesignated"/>
                    </IsNaN></And>
                    <And><IsNaN><Arg Name="DepthDesignated"/>
                    </IsNaN></And>
                    <And><Not><Arg Name="FlagFirstDive"/></Not></And>
                    <And><Not><Arg Name="FlagPeakChlDepthSet"/></Not></And>
                    <And><Universal:depth/><Lt><Arg Name="PeakChlDepthSet"/><Sub><Arg Name="VerticalPerturbation"/></Sub></Lt></And>
                    <And><Not><Arg Name="FlagGoDown"/></Not></And>
                    <And><Arg Name="StartVerticalManeuver"/></And>
                </When>

                <Assign><Sequence/><Arg Name="FlagGoUp"/><False/></Assign>

                <Assign><Sequence/><Arg Name="FlagGoDown"/><True/></Assign>

                <Assign><Sequence/><Arg Name="SyslogGoUp"/><False/></Assign>

                <Assign><Sequence/><Arg Name="SyslogHoldDepth"/><False/></Assign>

                <Assign><Sequence/><Arg Name="EnableSettingPeakDepth"/><True/></Assign>

            </Aggregate>

            <Aggregate Id="LogGoDown">

                <When>
                    <Arg Name="FlagGoDown"/>
                    <And><Not><Arg Name="SyslogGoDown"/></Not></And>
                    <And><Arg Name="StartVerticalManeuver"/></And>
                </When>

                <Assign><Sequence/><Arg Name="DepthLogged"/><Universal:depth/></Assign>

                <Syslog Severity="Important">Go down from <Arg Name="DepthLogged"/><Units:meter/></Syslog>

                <Assign><Sequence/><Arg Name="SyslogGoDown"/><True/></Assign>

            </Aggregate>

            <Aggregate Id="SetFlagGoUp">

                <When>
                    <Not><Arg Name="Surfacing"/></Not>
                    <And><IsNaN><Arg Name="TempDesignated"/>
                    </IsNaN></And>
                    <And><IsNaN><Arg Name="DepthDesignated"/>
                    </IsNaN></And>
                    <And><Arg Name="SampleAtPeakChl"/></And>
                    <And><Arg Name="FlagFirstDive"/></And>
                    <And><Universal:depth/><Gt><Arg Name="DeepBoundChl"/><Add><Arg Name="VertMargin"/></Add></Gt></And>
                    <And><Not><Arg Name="FlagGoUp"/></Not></And>
                    <And><Arg Name="StartVerticalManeuver"/></And>
                    <Or><Not><Arg Name="Surfacing"/></Not><And><IsNaN><Arg Name="TempDesignated"/>
                    </IsNaN></And><And><IsNaN><Arg Name="DepthDesignated"/>
                    </IsNaN></And><And><Not><Arg Name="FlagFirstDive"/></Not></And><And><Arg Name="SampleAtPeakChl"/></And><And><Not><Arg Name="FlagPeakChlDepthSet"/></Not></And><And><Universal:depth/><Gt><Arg Name="PeakChlDepthSet"/><Add><Arg Name="VerticalPerturbation"/></Add></Gt></And><And><Not><Arg Name="FlagGoUp"/></Not></And><And><Arg Name="StartVerticalManeuver"/></And></Or>
                </When>

                <Assign><Sequence/><Arg Name="FlagGoUp"/><True/></Assign>

                <Assign><Sequence/><Arg Name="FlagGoDown"/><False/></Assign>

                <Assign><Sequence/><Arg Name="SyslogGoDown"/><False/></Assign>

                <Assign><Sequence/><Arg Name="SyslogHoldDepth"/><False/></Assign>

            </Aggregate>

            <Aggregate Id="LogGoUp">

                <When>
                    <Arg Name="FlagGoUp"/>
                    <And><Not><Arg Name="SyslogGoUp"/></Not></And>
                    <And><Arg Name="StartVerticalManeuver"/></And>
                </When>

                <Assign><Sequence/><Arg Name="DepthLogged"/><Universal:depth/></Assign>

                <Syslog Severity="Important">Go up from <Arg Name="DepthLogged"/><Units:meter/></Syslog>

                <Assign><Sequence/><Arg Name="SyslogGoUp"/><True/></Assign>

            </Aggregate>

            <Aggregate Id="SetChlPeakTempDepth">

                <When>
                    <Not><Arg Name="Surfacing"/></Not>
                    <And><Arg Name="FlagFirstDive"/></And>
                    <And><Arg Name="SampleAtPeakChl"/></And>
                    <And><Arg Name="EnableSettingPeakDepth"/></And>
                    <And><Not><Arg Name="FlagPeakChlDepthSet"/></Not></And>
                    <And><Arg Name="FlagGoUp"/></And>
                    <And><Universal:depth/><Lt><Arg Name="DeepBoundChl"/><Add><Arg Name="VertMargin"/></Add><Sub><Arg Name="RiseFromTurningDepth"/></Sub></Lt></And>
                    <And><Arg Name="Science:PeakChlDepth"/><Gt><Arg Name="ShallowBoundChl"/></Gt></And>
                    <And><Arg Name="StartVerticalManeuver"/></And>
                    <Or><Not><Arg Name="Surfacing"/></Not><And><Not><Arg Name="FlagFirstDive"/></Not></And><And><Arg Name="SampleAtPeakChl"/></And><And><Arg Name="EnableSettingPeakDepth"/></And><And><Not><Arg Name="FlagPeakChlDepthSet"/></Not></And><And><Arg Name="FlagGoUp"/></And><And><Universal:depth/><Lt><Arg Name="PeakChlDepthSet"/> <Add><Arg Name="VerticalPerturbation"/></Add> <Sub><Arg Name="RiseFromTurningDepth"/></Sub></Lt></And><And><Arg Name="StartVerticalManeuver"/></And></Or>
                </When>

                <Assign><Sequence/><Arg Name="PeakChlDepthSet"/><Arg Name="Science:PeakChlDepth"/></Assign>

                <Assign><Sequence/><Arg Name="PeakChlTemperatureSet"/><Arg Name="Science:PeakChlTemperature"/></Assign>

                <Assign><Sequence/><Arg Name="PeakChlSet"/><Arg Name="Science:PeakChl"/></Assign>

                <Assign><Sequence/><Arg Name="FlagFirstDive"/><False/></Assign>

                <Assign><Sequence/><Arg Name="FlagPeakChlDepthSet"/><True/></Assign>

                <Assign><Sequence/><Arg Name="DepthLogged"/><Universal:depth/></Assign>

                <Assign><Sequence/><Arg Name="ChlLogged"/><Universal:mass_concentration_of_chlorophyll_in_sea_water/></Assign>

                <Assign><Sequence/><Arg Name="FlagGoUp"/><False/></Assign>

                <Assign><Sequence/><Arg Name="FlagGoDown"/><False/></Assign>

                <Assign><Sequence/><Arg Name="SyslogGoUp"/><False/></Assign>

                <Assign><Sequence/><Arg Name="SyslogGoDown"/><False/></Assign>

                <Syslog Severity="Important">Set peak-chl depth and temp. DepthLogged, ChlLogged, PeakChlDepthSet, PeakChlTemperatureSet, PeakChlSet = <Arg Name="DepthLogged"/><Units:meter/>, <Arg Name="ChlLogged"/><Units:microgram_per_liter/>, <Arg Name="PeakChlDepthSet"/><Units:meter/>, <Arg Name="PeakChlTemperatureSet"/><Units:celsius/>, <Arg Name="PeakChlSet"/><Units:microgram_per_liter/></Syslog>

                <Assign><Sequence/><Arg Name="ReacquirePeak"/><False/></Assign>

                <Assign><Sequence/><Arg Name="FlagPeakChlTempSet"/><True/></Assign>

            </Aggregate>

        </Aggregate>

    </Aggregate>

    <Aggregate Id="IsothermHolding">

        <Parallel/>

        <Break><Arg Name="CntSamples"/>
            <Gt><Arg Name="NumSamplers"/></Gt>
        </Break>

        <Aggregate Id="HoldTemp">

            <Break><Arg Name="FlagTargetDepthSet"/>
            </Break>

            <While>
                <Arg Name="FlagTempSet"/>
                <And><Arg Name="StartVerticalManeuver"/></And>
                <And><Not><Arg Name="TouchedDeepBoundESP"/></Not></And>
                <And><Not><Arg Name="FlagGoUp"/></Not></And>
                <And><Not><Arg Name="FlagGoDown"/></Not></And>
            </While>

            <Guidance:DepthServo>
                <Parallel/>
                <Setting><Guidance:DepthServo.input/><Universal:sea_water_temperature/></Setting>
                <Setting><Guidance:DepthServo.holdValue/><Arg Name="TempSet"/></Setting>
                <Setting><Guidance:DepthServo.proportionalGain/><Arg Name="GainProportional"/></Setting>
                <Setting><Guidance:DepthServo.integralGain/><Arg Name="GainIntegral"/></Setting>
                <Setting><Guidance:DepthServo.derivativeGain/><Arg Name="GainDerivative"/></Setting>
                <Setting><Guidance:DepthServo.changePerMeter/><Arg Name="VariationPerMeter"/></Setting>
            </Guidance:DepthServo>

        </Aggregate>

    </Aggregate>

    <Aggregate Id="ClampDepthDuringIsothermHolding">

        <Parallel/>

        <Break><Arg Name="CntSamples"/>
            <Gt><Arg Name="NumSamplers"/></Gt>
        </Break>

        <Aggregate Id="ClampToDeepBoundESP">

            <While>
                <Arg Name="FlagTempSet"/>
                <And><Arg Name="StartVerticalManeuver"/></And>
                <And><Arg Name="TouchedDeepBoundESP"/></And>
            </While>

            <Guidance:Pitch>
                <Parallel/>
                <Setting><Guidance:Pitch.depth/><Arg Name="DeepBoundESP"/></Setting>
            </Guidance:Pitch>

        </Aggregate>

    </Aggregate>

    <Aggregate Id="SetFlagClampDepthDuringIsothermHolding">

        <Parallel/>

        <Break><Arg Name="CntSamples"/>
            <Gt><Arg Name="NumSamplers"/></Gt>
        </Break>

        <Aggregate Id="SetFlagDeepBoundESP">

            <When>
                <Arg Name="FlagTempSet"/>
                <And><Universal:depth/><Gt><Arg Name="DeepBoundESP"/></Gt></And>
                <And><Not><Arg Name="TouchedDeepBoundESPFlagSet"/></Not></And>
            </When>

            <Syslog Severity="Important">Clamp depth to DeepBoundESP = <Arg Name="DeepBoundESP"/><Units:meter/>, because attempted temp is deeper.</Syslog>

            <Assign><Sequence/><Arg Name="TouchedDeepBoundESP"/><True/></Assign>

            <Assign><Sequence/><Arg Name="TouchedDeepBoundESPFlagSet"/><True/></Assign>

        </Aggregate>

    </Aggregate>

    <Aggregate Id="TakeSamples">

        <Parallel/>

        <Break><Arg Name="CntSamples"/>
            <Gt><Arg Name="NumSamplers"/></Gt>
            <Or><Not><Arg Name="StartVerticalManeuver"/></Not></Or>
        </Break>

        <Aggregate Id="SetNeutralBuoyancyNonZeroRudderInSpiralOrDonutMode">

            <Parallel/>

            <While>
                <Arg Name="SpeedApproachThenSample"/>
                <Gt><Units:meter_per_second/><Value>0.0</Value></Gt>
            </While>

            <Guidance:SetSpeed>
                <Parallel/>
                <Setting><Guidance:SetSpeed.speed/><Arg Name="SpeedApproachThenSample"/></Setting>
            </Guidance:SetSpeed>

            <Guidance:Buoyancy>
                <Parallel/>
                <Setting><Guidance:Buoyancy.position/><Arg Name="BuoyancyNeutral"/></Setting>
            </Guidance:Buoyancy>

            <Guidance:Point>
                <Parallel/>
                <Setting><Guidance:Point.rudderAngle/><Arg Name="RudderAngleSpiralOrDonut"/></Setting>
            </Guidance:Point>

        </Aggregate>

        <Aggregate Id="SetZeroRudderInDriftMode">

            <Parallel/>

            <While>
                <Not><Arg Name="SpeedApproachThenSample"/><Gt><Units:meter_per_second/><Value>0.0</Value></Gt></Not>
            </While>

            <Guidance:SetSpeed>
                <Parallel/>
                <Setting><Guidance:SetSpeed.speed/><Arg Name="SpeedApproachThenSample"/></Setting>
            </Guidance:SetSpeed>

            <Guidance:Point>
                <Parallel/>
                <Setting><Guidance:Point.rudderAngle/><Units:degree/><Value>0.0</Value></Setting>
            </Guidance:Point>

        </Aggregate>

        <Aggregate Id="NoFiringForTooLong">

            <When>
                <Elapsed><Arg Name="ElapsedSinceStartOrLastSample"/></Elapsed>
                <Gt><Arg Name="MaxWaitNoFiring"/></Gt>
                <And><Not><Arg Name="FlagSamplingOngoing"/></Not></And>
                <And><Not><Arg Name="StoppedForNoFiringForTooLong"/></Not></And>
            </When>

            <Assign><Sequence/><Arg Name="ElapsedTime"/><Elapsed><Arg Name="ElapsedSinceStartOrLastSample"/></Elapsed></Assign>

            <Syslog Severity="Important">No firing for too long. Stopping mission. ElapsedTime, MaxWaitNoFiring = <Arg Name="ElapsedTime"/><Units:minute/>, <Arg Name="MaxWaitNoFiring"/><Units:minute/></Syslog>

            <Guidance:Execute>
                <Sequence/>
                <Setting><Guidance:Execute.command/><String>stop</String></Setting>
            </Guidance:Execute>

            <Assign><Sequence/><Arg Name="StoppedForNoFiringForTooLong"/><True/></Assign>

        </Aggregate>

        <Aggregate Id="SetOptionsOfSample1">

            <When>
                <Arg Name="CntSamples"/>
                <Add><Arg Name="StartIndex"/></Add>

                <Sub><Units:count/><Value>1</Value></Sub>

                <Eq><Units:count/><Value>1</Value></Eq>
                <And><Not><Arg Name="SampleOptionsSet"/></Not></And>
                <And><Arg Name="SampleCountIncreased"/></And>
            </When>

            <Assign><Sequence/><Arg Name="SampleTypeIndividual"/><Arg Name="SampleType1"/></Assign>

            <Assign><Sequence/><Arg Name="CartridgeTypeIndividual"/><Arg Name="CartridgeType1"/></Assign>

            <Assign><Sequence/><Arg Name="TempDiffFromPeakChlIndividual"/><Arg Name="TempDiffFromPeakChl1"/></Assign>

            <Assign><Sequence/><Arg Name="DepDiffFromPeakChlIndividual"/><Arg Name="DepDiffFromPeakChl1"/></Assign>

            <Assign><Sequence/><Arg Name="DepIndividual"/><Arg Name="Dep1"/></Assign>

            <Assign><Sequence/><Arg Name="TempIndividual"/><Arg Name="Temp1"/></Assign>

            <Assign><Sequence/><Arg Name="WaitDepUndulationIndividual"/><Arg Name="WaitDepUndulation1"/></Assign>

            <Call Id="SetOptionsForSample1" RefId="SetSampleOptions"/>

            <Assign><Sequence/><Arg Name="SampleOptionsSet"/><True/></Assign>

        </Aggregate>

        <Aggregate Id="SetOptionsOfSample2">

            <When>
                <Arg Name="CntSamples"/>
                <Add><Arg Name="StartIndex"/></Add>

                <Sub><Units:count/><Value>1</Value></Sub>

                <Eq><Units:count/><Value>2</Value></Eq>
                <And><Not><Arg Name="SampleOptionsSet"/></Not></And>
                <And><Arg Name="SampleCountIncreased"/></And>
            </When>

            <Assign><Sequence/><Arg Name="SampleTypeIndividual"/><Arg Name="SampleType2"/></Assign>

            <Assign><Sequence/><Arg Name="CartridgeTypeIndividual"/><Arg Name="CartridgeType2"/></Assign>

            <Assign><Sequence/><Arg Name="TempDiffFromPeakChlIndividual"/><Arg Name="TempDiffFromPeakChl2"/></Assign>

            <Assign><Sequence/><Arg Name="DepDiffFromPeakChlIndividual"/><Arg Name="DepDiffFromPeakChl2"/></Assign>

            <Assign><Sequence/><Arg Name="DepIndividual"/><Arg Name="Dep2"/></Assign>

            <Assign><Sequence/><Arg Name="TempIndividual"/><Arg Name="Temp2"/></Assign>

            <Assign><Sequence/><Arg Name="WaitDepUndulationIndividual"/><Arg Name="WaitDepUndulation2"/></Assign>

            <Call Id="SetOptionsForSample2" RefId="SetSampleOptions"/>

            <Assign><Sequence/><Arg Name="SampleOptionsSet"/><True/></Assign>

        </Aggregate>

        <Aggregate Id="SetOptionsOfSample3">

            <When>
                <Arg Name="CntSamples"/>
                <Add><Arg Name="StartIndex"/></Add>

                <Sub><Units:count/><Value>1</Value></Sub>

                <Eq><Units:count/><Value>3</Value></Eq>
                <And><Not><Arg Name="SampleOptionsSet"/></Not></And>
                <And><Arg Name="SampleCountIncreased"/></And>
            </When>

            <Assign><Sequence/><Arg Name="SampleTypeIndividual"/><Arg Name="SampleType3"/></Assign>

            <Assign><Sequence/><Arg Name="CartridgeTypeIndividual"/><Arg Name="CartridgeType3"/></Assign>

            <Assign><Sequence/><Arg Name="TempDiffFromPeakChlIndividual"/><Arg Name="TempDiffFromPeakChl3"/></Assign>

            <Assign><Sequence/><Arg Name="DepDiffFromPeakChlIndividual"/><Arg Name="DepDiffFromPeakChl3"/></Assign>

            <Assign><Sequence/><Arg Name="DepIndividual"/><Arg Name="Dep3"/></Assign>

            <Assign><Sequence/><Arg Name="TempIndividual"/><Arg Name="Temp3"/></Assign>

            <Assign><Sequence/><Arg Name="WaitDepUndulationIndividual"/><Arg Name="WaitDepUndulation3"/></Assign>

            <Call Id="SetOptionsForSample3" RefId="SetSampleOptions"/>

            <Assign><Sequence/><Arg Name="SampleOptionsSet"/><True/></Assign>

        </Aggregate>

        <Aggregate Id="SetOptionsOfSample4">

            <When>
                <Arg Name="CntSamples"/>
                <Add><Arg Name="StartIndex"/></Add>

                <Sub><Units:count/><Value>1</Value></Sub>

                <Eq><Units:count/><Value>4</Value></Eq>
                <And><Not><Arg Name="SampleOptionsSet"/></Not></And>
                <And><Arg Name="SampleCountIncreased"/></And>
            </When>

            <Assign><Sequence/><Arg Name="SampleTypeIndividual"/><Arg Name="SampleType4"/></Assign>

            <Assign><Sequence/><Arg Name="CartridgeTypeIndividual"/><Arg Name="CartridgeType4"/></Assign>

            <Assign><Sequence/><Arg Name="TempDiffFromPeakChlIndividual"/><Arg Name="TempDiffFromPeakChl4"/></Assign>

            <Assign><Sequence/><Arg Name="DepDiffFromPeakChlIndividual"/><Arg Name="DepDiffFromPeakChl4"/></Assign>

            <Assign><Sequence/><Arg Name="DepIndividual"/><Arg Name="Dep4"/></Assign>

            <Assign><Sequence/><Arg Name="TempIndividual"/><Arg Name="Temp4"/></Assign>

            <Assign><Sequence/><Arg Name="WaitDepUndulationIndividual"/><Arg Name="WaitDepUndulation4"/></Assign>

            <Call Id="SetOptionsForSample4" RefId="SetSampleOptions"/>

            <Assign><Sequence/><Arg Name="SampleOptionsSet"/><True/></Assign>

        </Aggregate>

        <Aggregate Id="SetOptionsOfSample5">

            <When>
                <Arg Name="CntSamples"/>
                <Add><Arg Name="StartIndex"/></Add>

                <Sub><Units:count/><Value>1</Value></Sub>

                <Eq><Units:count/><Value>5</Value></Eq>
                <And><Not><Arg Name="SampleOptionsSet"/></Not></And>
                <And><Arg Name="SampleCountIncreased"/></And>
            </When>

            <Assign><Sequence/><Arg Name="SampleTypeIndividual"/><Arg Name="SampleType5"/></Assign>

            <Assign><Sequence/><Arg Name="CartridgeTypeIndividual"/><Arg Name="CartridgeType5"/></Assign>

            <Assign><Sequence/><Arg Name="TempDiffFromPeakChlIndividual"/><Arg Name="TempDiffFromPeakChl5"/></Assign>

            <Assign><Sequence/><Arg Name="DepDiffFromPeakChlIndividual"/><Arg Name="DepDiffFromPeakChl5"/></Assign>

            <Assign><Sequence/><Arg Name="DepIndividual"/><Arg Name="Dep5"/></Assign>

            <Assign><Sequence/><Arg Name="TempIndividual"/><Arg Name="Temp5"/></Assign>

            <Assign><Sequence/><Arg Name="WaitDepUndulationIndividual"/><Arg Name="WaitDepUndulation5"/></Assign>

            <Call Id="SetOptionsForSample5" RefId="SetSampleOptions"/>

            <Assign><Sequence/><Arg Name="SampleOptionsSet"/><True/></Assign>

        </Aggregate>

        <Aggregate Id="SetOptionsOfSample6">

            <When>
                <Arg Name="CntSamples"/>
                <Add><Arg Name="StartIndex"/></Add>

                <Sub><Units:count/><Value>1</Value></Sub>

                <Eq><Units:count/><Value>6</Value></Eq>
                <And><Not><Arg Name="SampleOptionsSet"/></Not></And>
                <And><Arg Name="SampleCountIncreased"/></And>
            </When>

            <Assign><Sequence/><Arg Name="SampleTypeIndividual"/><Arg Name="SampleType6"/></Assign>

            <Assign><Sequence/><Arg Name="CartridgeTypeIndividual"/><Arg Name="CartridgeType6"/></Assign>

            <Assign><Sequence/><Arg Name="TempDiffFromPeakChlIndividual"/><Arg Name="TempDiffFromPeakChl6"/></Assign>

            <Assign><Sequence/><Arg Name="DepDiffFromPeakChlIndividual"/><Arg Name="DepDiffFromPeakChl6"/></Assign>

            <Assign><Sequence/><Arg Name="DepIndividual"/><Arg Name="Dep6"/></Assign>

            <Assign><Sequence/><Arg Name="TempIndividual"/><Arg Name="Temp6"/></Assign>

            <Assign><Sequence/><Arg Name="WaitDepUndulationIndividual"/><Arg Name="WaitDepUndulation6"/></Assign>

            <Call Id="SetOptionsForSample6" RefId="SetSampleOptions"/>

            <Assign><Sequence/><Arg Name="SampleOptionsSet"/><True/></Assign>

        </Aggregate>

        <Aggregate Id="SetOptionsOfSample7">

            <When>
                <Arg Name="CntSamples"/>
                <Add><Arg Name="StartIndex"/></Add>

                <Sub><Units:count/><Value>1</Value></Sub>

                <Eq><Units:count/><Value>7</Value></Eq>
                <And><Not><Arg Name="SampleOptionsSet"/></Not></And>
                <And><Arg Name="SampleCountIncreased"/></And>
            </When>

            <Assign><Sequence/><Arg Name="SampleTypeIndividual"/><Arg Name="SampleType7"/></Assign>

            <Assign><Sequence/><Arg Name="CartridgeTypeIndividual"/><Arg Name="CartridgeType7"/></Assign>

            <Assign><Sequence/><Arg Name="TempDiffFromPeakChlIndividual"/><Arg Name="TempDiffFromPeakChl7"/></Assign>

            <Assign><Sequence/><Arg Name="DepDiffFromPeakChlIndividual"/><Arg Name="DepDiffFromPeakChl7"/></Assign>

            <Assign><Sequence/><Arg Name="DepIndividual"/><Arg Name="Dep7"/></Assign>

            <Assign><Sequence/><Arg Name="TempIndividual"/><Arg Name="Temp7"/></Assign>

            <Assign><Sequence/><Arg Name="WaitDepUndulationIndividual"/><Arg Name="WaitDepUndulation7"/></Assign>

            <Call Id="SetOptionsForSample7" RefId="SetSampleOptions"/>

            <Assign><Sequence/><Arg Name="SampleOptionsSet"/><True/></Assign>

        </Aggregate>

        <Aggregate Id="SetOptionsOfSample8">

            <When>
                <Arg Name="CntSamples"/>
                <Add><Arg Name="StartIndex"/></Add>

                <Sub><Units:count/><Value>1</Value></Sub>

                <Eq><Units:count/><Value>8</Value></Eq>
                <And><Not><Arg Name="SampleOptionsSet"/></Not></And>
                <And><Arg Name="SampleCountIncreased"/></And>
            </When>

            <Assign><Sequence/><Arg Name="SampleTypeIndividual"/><Arg Name="SampleType8"/></Assign>

            <Assign><Sequence/><Arg Name="CartridgeTypeIndividual"/><Arg Name="CartridgeType8"/></Assign>

            <Assign><Sequence/><Arg Name="TempDiffFromPeakChlIndividual"/><Arg Name="TempDiffFromPeakChl8"/></Assign>

            <Assign><Sequence/><Arg Name="DepDiffFromPeakChlIndividual"/><Arg Name="DepDiffFromPeakChl8"/></Assign>

            <Assign><Sequence/><Arg Name="DepIndividual"/><Arg Name="Dep8"/></Assign>

            <Assign><Sequence/><Arg Name="TempIndividual"/><Arg Name="Temp8"/></Assign>

            <Assign><Sequence/><Arg Name="WaitDepUndulationIndividual"/><Arg Name="WaitDepUndulation8"/></Assign>

            <Call Id="SetOptionsForSample8" RefId="SetSampleOptions"/>

            <Assign><Sequence/><Arg Name="SampleOptionsSet"/><True/></Assign>

        </Aggregate>

        <Aggregate Id="SetOptionsOfSample9">

            <When>
                <Arg Name="CntSamples"/>
                <Add><Arg Name="StartIndex"/></Add>

                <Sub><Units:count/><Value>1</Value></Sub>

                <Eq><Units:count/><Value>9</Value></Eq>
                <And><Not><Arg Name="SampleOptionsSet"/></Not></And>
                <And><Arg Name="SampleCountIncreased"/></And>
            </When>

            <Assign><Sequence/><Arg Name="SampleTypeIndividual"/><Arg Name="SampleType9"/></Assign>

            <Assign><Sequence/><Arg Name="CartridgeTypeIndividual"/><Arg Name="CartridgeType9"/></Assign>

            <Assign><Sequence/><Arg Name="TempDiffFromPeakChlIndividual"/><Arg Name="TempDiffFromPeakChl9"/></Assign>

            <Assign><Sequence/><Arg Name="DepDiffFromPeakChlIndividual"/><Arg Name="DepDiffFromPeakChl9"/></Assign>

            <Assign><Sequence/><Arg Name="DepIndividual"/><Arg Name="Dep9"/></Assign>

            <Assign><Sequence/><Arg Name="TempIndividual"/><Arg Name="Temp9"/></Assign>

            <Assign><Sequence/><Arg Name="WaitDepUndulationIndividual"/><Arg Name="WaitDepUndulation9"/></Assign>

            <Call Id="SetOptionsForSample9" RefId="SetSampleOptions"/>

            <Assign><Sequence/><Arg Name="SampleOptionsSet"/><True/></Assign>

        </Aggregate>

        <Aggregate Id="SetOptionsOfSample10">

            <When>
                <Arg Name="CntSamples"/>
                <Add><Arg Name="StartIndex"/></Add>

                <Sub><Units:count/><Value>1</Value></Sub>

                <Eq><Units:count/><Value>10</Value></Eq>
                <And><Not><Arg Name="SampleOptionsSet"/></Not></And>
                <And><Arg Name="SampleCountIncreased"/></And>
            </When>

            <Assign><Sequence/><Arg Name="SampleTypeIndividual"/><Arg Name="SampleType10"/></Assign>

            <Assign><Sequence/><Arg Name="CartridgeTypeIndividual"/><Arg Name="CartridgeType10"/></Assign>

            <Assign><Sequence/><Arg Name="TempDiffFromPeakChlIndividual"/><Arg Name="TempDiffFromPeakChl10"/></Assign>

            <Assign><Sequence/><Arg Name="DepDiffFromPeakChlIndividual"/><Arg Name="DepDiffFromPeakChl10"/></Assign>

            <Assign><Sequence/><Arg Name="DepIndividual"/><Arg Name="Dep10"/></Assign>

            <Assign><Sequence/><Arg Name="TempIndividual"/><Arg Name="Temp10"/></Assign>

            <Assign><Sequence/><Arg Name="WaitDepUndulationIndividual"/><Arg Name="WaitDepUndulation10"/></Assign>

            <Call Id="SetOptionsForSample10" RefId="SetSampleOptions"/>

            <Assign><Sequence/><Arg Name="SampleOptionsSet"/><True/></Assign>

        </Aggregate>

        <Aggregate Id="SetOptionsOfSample11">

            <When>
                <Arg Name="CntSamples"/>
                <Add><Arg Name="StartIndex"/></Add>

                <Sub><Units:count/><Value>1</Value></Sub>

                <Eq><Units:count/><Value>11</Value></Eq>
                <And><Not><Arg Name="SampleOptionsSet"/></Not></And>
                <And><Arg Name="SampleCountIncreased"/></And>
            </When>

            <Assign><Sequence/><Arg Name="SampleTypeIndividual"/><Arg Name="SampleType11"/></Assign>

            <Assign><Sequence/><Arg Name="CartridgeTypeIndividual"/><Arg Name="CartridgeType11"/></Assign>

            <Assign><Sequence/><Arg Name="TempDiffFromPeakChlIndividual"/><Arg Name="TempDiffFromPeakChl11"/></Assign>

            <Assign><Sequence/><Arg Name="DepDiffFromPeakChlIndividual"/><Arg Name="DepDiffFromPeakChl11"/></Assign>

            <Assign><Sequence/><Arg Name="DepIndividual"/><Arg Name="Dep11"/></Assign>

            <Assign><Sequence/><Arg Name="TempIndividual"/><Arg Name="Temp11"/></Assign>

            <Assign><Sequence/><Arg Name="WaitDepUndulationIndividual"/><Arg Name="WaitDepUndulation11"/></Assign>

            <Call Id="SetOptionsForSample11" RefId="SetSampleOptions"/>

            <Assign><Sequence/><Arg Name="SampleOptionsSet"/><True/></Assign>

        </Aggregate>

        <Aggregate Id="SetOptionsOfSample12">

            <When>
                <Arg Name="CntSamples"/>
                <Add><Arg Name="StartIndex"/></Add>

                <Sub><Units:count/><Value>1</Value></Sub>

                <Eq><Units:count/><Value>12</Value></Eq>
                <And><Not><Arg Name="SampleOptionsSet"/></Not></And>
                <And><Arg Name="SampleCountIncreased"/></And>
            </When>

            <Assign><Sequence/><Arg Name="SampleTypeIndividual"/><Arg Name="SampleType12"/></Assign>

            <Assign><Sequence/><Arg Name="CartridgeTypeIndividual"/><Arg Name="CartridgeType12"/></Assign>

            <Assign><Sequence/><Arg Name="TempDiffFromPeakChlIndividual"/><Arg Name="TempDiffFromPeakChl12"/></Assign>

            <Assign><Sequence/><Arg Name="DepDiffFromPeakChlIndividual"/><Arg Name="DepDiffFromPeakChl12"/></Assign>

            <Assign><Sequence/><Arg Name="DepIndividual"/><Arg Name="Dep12"/></Assign>

            <Assign><Sequence/><Arg Name="TempIndividual"/><Arg Name="Temp12"/></Assign>

            <Assign><Sequence/><Arg Name="WaitDepUndulationIndividual"/><Arg Name="WaitDepUndulation12"/></Assign>

            <Call Id="SetOptionsForSample12" RefId="SetSampleOptions"/>

            <Assign><Sequence/><Arg Name="SampleOptionsSet"/><True/></Assign>

        </Aggregate>

        <Aggregate Id="SetOptionsOfSample13">

            <When>
                <Arg Name="CntSamples"/>
                <Add><Arg Name="StartIndex"/></Add>

                <Sub><Units:count/><Value>1</Value></Sub>

                <Eq><Units:count/><Value>13</Value></Eq>
                <And><Not><Arg Name="SampleOptionsSet"/></Not></And>
                <And><Arg Name="SampleCountIncreased"/></And>
            </When>

            <Assign><Sequence/><Arg Name="SampleTypeIndividual"/><Arg Name="SampleType13"/></Assign>

            <Assign><Sequence/><Arg Name="CartridgeTypeIndividual"/><Arg Name="CartridgeType13"/></Assign>

            <Assign><Sequence/><Arg Name="TempDiffFromPeakChlIndividual"/><Arg Name="TempDiffFromPeakChl13"/></Assign>

            <Assign><Sequence/><Arg Name="DepDiffFromPeakChlIndividual"/><Arg Name="DepDiffFromPeakChl13"/></Assign>

            <Assign><Sequence/><Arg Name="DepIndividual"/><Arg Name="Dep13"/></Assign>

            <Assign><Sequence/><Arg Name="TempIndividual"/><Arg Name="Temp13"/></Assign>

            <Assign><Sequence/><Arg Name="WaitDepUndulationIndividual"/><Arg Name="WaitDepUndulation13"/></Assign>

            <Call Id="SetOptionsForSample13" RefId="SetSampleOptions"/>

            <Assign><Sequence/><Arg Name="SampleOptionsSet"/><True/></Assign>

        </Aggregate>

        <Aggregate Id="SetOptionsOfSample14">

            <When>
                <Arg Name="CntSamples"/>
                <Add><Arg Name="StartIndex"/></Add>

                <Sub><Units:count/><Value>1</Value></Sub>

                <Eq><Units:count/><Value>14</Value></Eq>
                <And><Not><Arg Name="SampleOptionsSet"/></Not></And>
                <And><Arg Name="SampleCountIncreased"/></And>
            </When>

            <Assign><Sequence/><Arg Name="SampleTypeIndividual"/><Arg Name="SampleType14"/></Assign>

            <Assign><Sequence/><Arg Name="CartridgeTypeIndividual"/><Arg Name="CartridgeType14"/></Assign>

            <Assign><Sequence/><Arg Name="TempDiffFromPeakChlIndividual"/><Arg Name="TempDiffFromPeakChl14"/></Assign>

            <Assign><Sequence/><Arg Name="DepDiffFromPeakChlIndividual"/><Arg Name="DepDiffFromPeakChl14"/></Assign>

            <Assign><Sequence/><Arg Name="DepIndividual"/><Arg Name="Dep14"/></Assign>

            <Assign><Sequence/><Arg Name="TempIndividual"/><Arg Name="Temp14"/></Assign>

            <Assign><Sequence/><Arg Name="WaitDepUndulationIndividual"/><Arg Name="WaitDepUndulation14"/></Assign>

            <Call Id="SetOptionsForSample14" RefId="SetSampleOptions"/>

            <Assign><Sequence/><Arg Name="SampleOptionsSet"/><True/></Assign>

        </Aggregate>

        <Aggregate Id="SetOptionsOfSample15">

            <When>
                <Arg Name="CntSamples"/>
                <Add><Arg Name="StartIndex"/></Add>

                <Sub><Units:count/><Value>1</Value></Sub>

                <Eq><Units:count/><Value>15</Value></Eq>
                <And><Not><Arg Name="SampleOptionsSet"/></Not></And>
                <And><Arg Name="SampleCountIncreased"/></And>
            </When>

            <Assign><Sequence/><Arg Name="SampleTypeIndividual"/><Arg Name="SampleType15"/></Assign>

            <Assign><Sequence/><Arg Name="CartridgeTypeIndividual"/><Arg Name="CartridgeType15"/></Assign>

            <Assign><Sequence/><Arg Name="TempDiffFromPeakChlIndividual"/><Arg Name="TempDiffFromPeakChl15"/></Assign>

            <Assign><Sequence/><Arg Name="DepDiffFromPeakChlIndividual"/><Arg Name="DepDiffFromPeakChl15"/></Assign>

            <Assign><Sequence/><Arg Name="DepIndividual"/><Arg Name="Dep15"/></Assign>

            <Assign><Sequence/><Arg Name="TempIndividual"/><Arg Name="Temp15"/></Assign>

            <Assign><Sequence/><Arg Name="WaitDepUndulationIndividual"/><Arg Name="WaitDepUndulation15"/></Assign>

            <Call Id="SetOptionsForSample15" RefId="SetSampleOptions"/>

            <Assign><Sequence/><Arg Name="SampleOptionsSet"/><True/></Assign>

        </Aggregate>

        <Aggregate Id="SetOptionsOfSample16">

            <When>
                <Arg Name="CntSamples"/>
                <Add><Arg Name="StartIndex"/></Add>

                <Sub><Units:count/><Value>1</Value></Sub>

                <Eq><Units:count/><Value>16</Value></Eq>
                <And><Not><Arg Name="SampleOptionsSet"/></Not></And>
                <And><Arg Name="SampleCountIncreased"/></And>
            </When>

            <Assign><Sequence/><Arg Name="SampleTypeIndividual"/><Arg Name="SampleType16"/></Assign>

            <Assign><Sequence/><Arg Name="CartridgeTypeIndividual"/><Arg Name="CartridgeType16"/></Assign>

            <Assign><Sequence/><Arg Name="TempDiffFromPeakChlIndividual"/><Arg Name="TempDiffFromPeakChl16"/></Assign>

            <Assign><Sequence/><Arg Name="DepDiffFromPeakChlIndividual"/><Arg Name="DepDiffFromPeakChl16"/></Assign>

            <Assign><Sequence/><Arg Name="DepIndividual"/><Arg Name="Dep16"/></Assign>

            <Assign><Sequence/><Arg Name="TempIndividual"/><Arg Name="Temp16"/></Assign>

            <Assign><Sequence/><Arg Name="WaitDepUndulationIndividual"/><Arg Name="WaitDepUndulation16"/></Assign>

            <Call Id="SetOptionsForSample16" RefId="SetSampleOptions"/>

            <Assign><Sequence/><Arg Name="SampleOptionsSet"/><True/></Assign>

        </Aggregate>

        <Aggregate Id="SetOptionsOfSample17">

            <When>
                <Arg Name="CntSamples"/>
                <Add><Arg Name="StartIndex"/></Add>

                <Sub><Units:count/><Value>1</Value></Sub>

                <Eq><Units:count/><Value>17</Value></Eq>
                <And><Not><Arg Name="SampleOptionsSet"/></Not></And>
                <And><Arg Name="SampleCountIncreased"/></And>
            </When>

            <Assign><Sequence/><Arg Name="SampleTypeIndividual"/><Arg Name="SampleType17"/></Assign>

            <Assign><Sequence/><Arg Name="CartridgeTypeIndividual"/><Arg Name="CartridgeType17"/></Assign>

            <Assign><Sequence/><Arg Name="TempDiffFromPeakChlIndividual"/><Arg Name="TempDiffFromPeakChl17"/></Assign>

            <Assign><Sequence/><Arg Name="DepDiffFromPeakChlIndividual"/><Arg Name="DepDiffFromPeakChl17"/></Assign>

            <Assign><Sequence/><Arg Name="DepIndividual"/><Arg Name="Dep17"/></Assign>

            <Assign><Sequence/><Arg Name="TempIndividual"/><Arg Name="Temp17"/></Assign>

            <Assign><Sequence/><Arg Name="WaitDepUndulationIndividual"/><Arg Name="WaitDepUndulation17"/></Assign>

            <Call Id="SetOptionsForSample17" RefId="SetSampleOptions"/>

            <Assign><Sequence/><Arg Name="SampleOptionsSet"/><True/></Assign>

        </Aggregate>

        <Aggregate Id="SetOptionsOfSample18">

            <When>
                <Arg Name="CntSamples"/>
                <Add><Arg Name="StartIndex"/></Add>

                <Sub><Units:count/><Value>1</Value></Sub>

                <Eq><Units:count/><Value>18</Value></Eq>
                <And><Not><Arg Name="SampleOptionsSet"/></Not></And>
                <And><Arg Name="SampleCountIncreased"/></And>
            </When>

            <Assign><Sequence/><Arg Name="SampleTypeIndividual"/><Arg Name="SampleType18"/></Assign>

            <Assign><Sequence/><Arg Name="CartridgeTypeIndividual"/><Arg Name="CartridgeType18"/></Assign>

            <Assign><Sequence/><Arg Name="TempDiffFromPeakChlIndividual"/><Arg Name="TempDiffFromPeakChl18"/></Assign>

            <Assign><Sequence/><Arg Name="DepDiffFromPeakChlIndividual"/><Arg Name="DepDiffFromPeakChl18"/></Assign>

            <Assign><Sequence/><Arg Name="DepIndividual"/><Arg Name="Dep18"/></Assign>

            <Assign><Sequence/><Arg Name="TempIndividual"/><Arg Name="Temp18"/></Assign>

            <Assign><Sequence/><Arg Name="WaitDepUndulationIndividual"/><Arg Name="WaitDepUndulation18"/></Assign>

            <Call Id="SetOptionsForSample18" RefId="SetSampleOptions"/>

            <Assign><Sequence/><Arg Name="SampleOptionsSet"/><True/></Assign>

        </Aggregate>

        <Aggregate Id="SetOptionsOfSample19">

            <When>
                <Arg Name="CntSamples"/>
                <Add><Arg Name="StartIndex"/></Add>

                <Sub><Units:count/><Value>1</Value></Sub>

                <Eq><Units:count/><Value>19</Value></Eq>
                <And><Not><Arg Name="SampleOptionsSet"/></Not></And>
                <And><Arg Name="SampleCountIncreased"/></And>
            </When>

            <Assign><Sequence/><Arg Name="SampleTypeIndividual"/><Arg Name="SampleType19"/></Assign>

            <Assign><Sequence/><Arg Name="CartridgeTypeIndividual"/><Arg Name="CartridgeType19"/></Assign>

            <Assign><Sequence/><Arg Name="TempDiffFromPeakChlIndividual"/><Arg Name="TempDiffFromPeakChl19"/></Assign>

            <Assign><Sequence/><Arg Name="DepDiffFromPeakChlIndividual"/><Arg Name="DepDiffFromPeakChl19"/></Assign>

            <Assign><Sequence/><Arg Name="DepIndividual"/><Arg Name="Dep19"/></Assign>

            <Assign><Sequence/><Arg Name="TempIndividual"/><Arg Name="Temp19"/></Assign>

            <Assign><Sequence/><Arg Name="WaitDepUndulationIndividual"/><Arg Name="WaitDepUndulation19"/></Assign>

            <Call Id="SetOptionsForSample19" RefId="SetSampleOptions"/>

            <Assign><Sequence/><Arg Name="SampleOptionsSet"/><True/></Assign>

        </Aggregate>

        <Aggregate Id="SetOptionsOfSample20">

            <When>
                <Arg Name="CntSamples"/>
                <Add><Arg Name="StartIndex"/></Add>

                <Sub><Units:count/><Value>1</Value></Sub>

                <Eq><Units:count/><Value>20</Value></Eq>
                <And><Not><Arg Name="SampleOptionsSet"/></Not></And>
                <And><Arg Name="SampleCountIncreased"/></And>
            </When>

            <Assign><Sequence/><Arg Name="SampleTypeIndividual"/><Arg Name="SampleType20"/></Assign>

            <Assign><Sequence/><Arg Name="CartridgeTypeIndividual"/><Arg Name="CartridgeType20"/></Assign>

            <Assign><Sequence/><Arg Name="TempDiffFromPeakChlIndividual"/><Arg Name="TempDiffFromPeakChl20"/></Assign>

            <Assign><Sequence/><Arg Name="DepDiffFromPeakChlIndividual"/><Arg Name="DepDiffFromPeakChl20"/></Assign>

            <Assign><Sequence/><Arg Name="DepIndividual"/><Arg Name="Dep20"/></Assign>

            <Assign><Sequence/><Arg Name="TempIndividual"/><Arg Name="Temp20"/></Assign>

            <Assign><Sequence/><Arg Name="WaitDepUndulationIndividual"/><Arg Name="WaitDepUndulation20"/></Assign>

            <Call Id="SetOptionsForSample20" RefId="SetSampleOptions"/>

            <Assign><Sequence/><Arg Name="SampleOptionsSet"/><True/></Assign>

        </Aggregate>

        <Aggregate Id="SetOptionsOfSample21">

            <When>
                <Arg Name="CntSamples"/>
                <Add><Arg Name="StartIndex"/></Add>

                <Sub><Units:count/><Value>1</Value></Sub>

                <Eq><Units:count/><Value>21</Value></Eq>
                <And><Not><Arg Name="SampleOptionsSet"/></Not></And>
                <And><Arg Name="SampleCountIncreased"/></And>
            </When>

            <Assign><Sequence/><Arg Name="SampleTypeIndividual"/><Arg Name="SampleType21"/></Assign>

            <Assign><Sequence/><Arg Name="CartridgeTypeIndividual"/><Arg Name="CartridgeType21"/></Assign>

            <Assign><Sequence/><Arg Name="TempDiffFromPeakChlIndividual"/><Arg Name="TempDiffFromPeakChl21"/></Assign>

            <Assign><Sequence/><Arg Name="DepDiffFromPeakChlIndividual"/><Arg Name="DepDiffFromPeakChl21"/></Assign>

            <Assign><Sequence/><Arg Name="DepIndividual"/><Arg Name="Dep21"/></Assign>

            <Assign><Sequence/><Arg Name="TempIndividual"/><Arg Name="Temp21"/></Assign>

            <Assign><Sequence/><Arg Name="WaitDepUndulationIndividual"/><Arg Name="WaitDepUndulation21"/></Assign>

            <Call Id="SetOptionsForSample21" RefId="SetSampleOptions"/>

            <Assign><Sequence/><Arg Name="SampleOptionsSet"/><True/></Assign>

        </Aggregate>

        <Aggregate Id="SetOptionsOfSample22">

            <When>
                <Arg Name="CntSamples"/>
                <Add><Arg Name="StartIndex"/></Add>

                <Sub><Units:count/><Value>1</Value></Sub>

                <Eq><Units:count/><Value>22</Value></Eq>
                <And><Not><Arg Name="SampleOptionsSet"/></Not></And>
                <And><Arg Name="SampleCountIncreased"/></And>
            </When>

            <Assign><Sequence/><Arg Name="SampleTypeIndividual"/><Arg Name="SampleType22"/></Assign>

            <Assign><Sequence/><Arg Name="CartridgeTypeIndividual"/><Arg Name="CartridgeType22"/></Assign>

            <Assign><Sequence/><Arg Name="TempDiffFromPeakChlIndividual"/><Arg Name="TempDiffFromPeakChl22"/></Assign>

            <Assign><Sequence/><Arg Name="DepDiffFromPeakChlIndividual"/><Arg Name="DepDiffFromPeakChl22"/></Assign>

            <Assign><Sequence/><Arg Name="DepIndividual"/><Arg Name="Dep22"/></Assign>

            <Assign><Sequence/><Arg Name="TempIndividual"/><Arg Name="Temp22"/></Assign>

            <Assign><Sequence/><Arg Name="WaitDepUndulationIndividual"/><Arg Name="WaitDepUndulation22"/></Assign>

            <Call Id="SetOptionsForSample22" RefId="SetSampleOptions"/>

            <Assign><Sequence/><Arg Name="SampleOptionsSet"/><True/></Assign>

        </Aggregate>

        <Aggregate Id="SetOptionsOfSample23">

            <When>
                <Arg Name="CntSamples"/>
                <Add><Arg Name="StartIndex"/></Add>

                <Sub><Units:count/><Value>1</Value></Sub>

                <Eq><Units:count/><Value>23</Value></Eq>
                <And><Not><Arg Name="SampleOptionsSet"/></Not></And>
                <And><Arg Name="SampleCountIncreased"/></And>
            </When>

            <Assign><Sequence/><Arg Name="SampleTypeIndividual"/><Arg Name="SampleType23"/></Assign>

            <Assign><Sequence/><Arg Name="CartridgeTypeIndividual"/><Arg Name="CartridgeType23"/></Assign>

            <Assign><Sequence/><Arg Name="TempDiffFromPeakChlIndividual"/><Arg Name="TempDiffFromPeakChl23"/></Assign>

            <Assign><Sequence/><Arg Name="DepDiffFromPeakChlIndividual"/><Arg Name="DepDiffFromPeakChl23"/></Assign>

            <Assign><Sequence/><Arg Name="DepIndividual"/><Arg Name="Dep23"/></Assign>

            <Assign><Sequence/><Arg Name="TempIndividual"/><Arg Name="Temp23"/></Assign>

            <Assign><Sequence/><Arg Name="WaitDepUndulationIndividual"/><Arg Name="WaitDepUndulation23"/></Assign>

            <Call Id="SetOptionsForSample23" RefId="SetSampleOptions"/>

            <Assign><Sequence/><Arg Name="SampleOptionsSet"/><True/></Assign>

        </Aggregate>

        <Aggregate Id="SetOptionsOfSample24">

            <When>
                <Arg Name="CntSamples"/>
                <Add><Arg Name="StartIndex"/></Add>

                <Sub><Units:count/><Value>1</Value></Sub>

                <Eq><Units:count/><Value>24</Value></Eq>
                <And><Not><Arg Name="SampleOptionsSet"/></Not></And>
                <And><Arg Name="SampleCountIncreased"/></And>
            </When>

            <Assign><Sequence/><Arg Name="SampleTypeIndividual"/><Arg Name="SampleType24"/></Assign>

            <Assign><Sequence/><Arg Name="CartridgeTypeIndividual"/><Arg Name="CartridgeType24"/></Assign>

            <Assign><Sequence/><Arg Name="TempDiffFromPeakChlIndividual"/><Arg Name="TempDiffFromPeakChl24"/></Assign>

            <Assign><Sequence/><Arg Name="DepDiffFromPeakChlIndividual"/><Arg Name="DepDiffFromPeakChl24"/></Assign>

            <Assign><Sequence/><Arg Name="DepIndividual"/><Arg Name="Dep24"/></Assign>

            <Assign><Sequence/><Arg Name="TempIndividual"/><Arg Name="Temp24"/></Assign>

            <Assign><Sequence/><Arg Name="WaitDepUndulationIndividual"/><Arg Name="WaitDepUndulation24"/></Assign>

            <Call Id="SetOptionsForSample24" RefId="SetSampleOptions"/>

            <Assign><Sequence/><Arg Name="SampleOptionsSet"/><True/></Assign>

        </Aggregate>

        <Aggregate Id="SetOptionsOfSample25">

            <When>
                <Arg Name="CntSamples"/>
                <Add><Arg Name="StartIndex"/></Add>

                <Sub><Units:count/><Value>1</Value></Sub>

                <Eq><Units:count/><Value>25</Value></Eq>
                <And><Not><Arg Name="SampleOptionsSet"/></Not></And>
                <And><Arg Name="SampleCountIncreased"/></And>
            </When>

            <Assign><Sequence/><Arg Name="SampleTypeIndividual"/><Arg Name="SampleType25"/></Assign>

            <Assign><Sequence/><Arg Name="CartridgeTypeIndividual"/><Arg Name="CartridgeType25"/></Assign>

            <Assign><Sequence/><Arg Name="TempDiffFromPeakChlIndividual"/><Arg Name="TempDiffFromPeakChl25"/></Assign>

            <Assign><Sequence/><Arg Name="DepDiffFromPeakChlIndividual"/><Arg Name="DepDiffFromPeakChl25"/></Assign>

            <Assign><Sequence/><Arg Name="DepIndividual"/><Arg Name="Dep25"/></Assign>

            <Assign><Sequence/><Arg Name="TempIndividual"/><Arg Name="Temp25"/></Assign>

            <Assign><Sequence/><Arg Name="WaitDepUndulationIndividual"/><Arg Name="WaitDepUndulation25"/></Assign>

            <Call Id="SetOptionsForSample25" RefId="SetSampleOptions"/>

            <Assign><Sequence/><Arg Name="SampleOptionsSet"/><True/></Assign>

        </Aggregate>

        <Aggregate Id="SetOptionsOfSample26">

            <When>
                <Arg Name="CntSamples"/>
                <Add><Arg Name="StartIndex"/></Add>

                <Sub><Units:count/><Value>1</Value></Sub>

                <Eq><Units:count/><Value>26</Value></Eq>
                <And><Not><Arg Name="SampleOptionsSet"/></Not></And>
                <And><Arg Name="SampleCountIncreased"/></And>
            </When>

            <Assign><Sequence/><Arg Name="SampleTypeIndividual"/><Arg Name="SampleType26"/></Assign>

            <Assign><Sequence/><Arg Name="CartridgeTypeIndividual"/><Arg Name="CartridgeType26"/></Assign>

            <Assign><Sequence/><Arg Name="TempDiffFromPeakChlIndividual"/><Arg Name="TempDiffFromPeakChl26"/></Assign>

            <Assign><Sequence/><Arg Name="DepDiffFromPeakChlIndividual"/><Arg Name="DepDiffFromPeakChl26"/></Assign>

            <Assign><Sequence/><Arg Name="DepIndividual"/><Arg Name="Dep26"/></Assign>

            <Assign><Sequence/><Arg Name="TempIndividual"/><Arg Name="Temp26"/></Assign>

            <Assign><Sequence/><Arg Name="WaitDepUndulationIndividual"/><Arg Name="WaitDepUndulation26"/></Assign>

            <Call Id="SetOptionsForSample26" RefId="SetSampleOptions"/>

            <Assign><Sequence/><Arg Name="SampleOptionsSet"/><True/></Assign>

        </Aggregate>

        <Aggregate Id="SetOptionsOfSample27">

            <When>
                <Arg Name="CntSamples"/>
                <Add><Arg Name="StartIndex"/></Add>

                <Sub><Units:count/><Value>1</Value></Sub>

                <Eq><Units:count/><Value>27</Value></Eq>
                <And><Not><Arg Name="SampleOptionsSet"/></Not></And>
                <And><Arg Name="SampleCountIncreased"/></And>
            </When>

            <Assign><Sequence/><Arg Name="SampleTypeIndividual"/><Arg Name="SampleType27"/></Assign>

            <Assign><Sequence/><Arg Name="CartridgeTypeIndividual"/><Arg Name="CartridgeType27"/></Assign>

            <Assign><Sequence/><Arg Name="TempDiffFromPeakChlIndividual"/><Arg Name="TempDiffFromPeakChl27"/></Assign>

            <Assign><Sequence/><Arg Name="DepDiffFromPeakChlIndividual"/><Arg Name="DepDiffFromPeakChl27"/></Assign>

            <Assign><Sequence/><Arg Name="DepIndividual"/><Arg Name="Dep27"/></Assign>

            <Assign><Sequence/><Arg Name="TempIndividual"/><Arg Name="Temp27"/></Assign>

            <Assign><Sequence/><Arg Name="WaitDepUndulationIndividual"/><Arg Name="WaitDepUndulation27"/></Assign>

            <Call Id="SetOptionsForSample27" RefId="SetSampleOptions"/>

            <Assign><Sequence/><Arg Name="SampleOptionsSet"/><True/></Assign>

        </Aggregate>

        <Aggregate Id="SetOptionsOfSample28">

            <When>
                <Arg Name="CntSamples"/>
                <Add><Arg Name="StartIndex"/></Add>

                <Sub><Units:count/><Value>1</Value></Sub>

                <Eq><Units:count/><Value>28</Value></Eq>
                <And><Not><Arg Name="SampleOptionsSet"/></Not></And>
                <And><Arg Name="SampleCountIncreased"/></And>
            </When>

            <Assign><Sequence/><Arg Name="SampleTypeIndividual"/><Arg Name="SampleType28"/></Assign>

            <Assign><Sequence/><Arg Name="CartridgeTypeIndividual"/><Arg Name="CartridgeType28"/></Assign>

            <Assign><Sequence/><Arg Name="TempDiffFromPeakChlIndividual"/><Arg Name="TempDiffFromPeakChl28"/></Assign>

            <Assign><Sequence/><Arg Name="DepDiffFromPeakChlIndividual"/><Arg Name="DepDiffFromPeakChl28"/></Assign>

            <Assign><Sequence/><Arg Name="DepIndividual"/><Arg Name="Dep28"/></Assign>

            <Assign><Sequence/><Arg Name="TempIndividual"/><Arg Name="Temp28"/></Assign>

            <Assign><Sequence/><Arg Name="WaitDepUndulationIndividual"/><Arg Name="WaitDepUndulation28"/></Assign>

            <Call Id="SetOptionsForSample28" RefId="SetSampleOptions"/>

            <Assign><Sequence/><Arg Name="SampleOptionsSet"/><True/></Assign>

        </Aggregate>

        <Aggregate Id="SetOptionsOfSample29">

            <When>
                <Arg Name="CntSamples"/>
                <Add><Arg Name="StartIndex"/></Add>

                <Sub><Units:count/><Value>1</Value></Sub>

                <Eq><Units:count/><Value>29</Value></Eq>
                <And><Not><Arg Name="SampleOptionsSet"/></Not></And>
                <And><Arg Name="SampleCountIncreased"/></And>
            </When>

            <Assign><Sequence/><Arg Name="SampleTypeIndividual"/><Arg Name="SampleType29"/></Assign>

            <Assign><Sequence/><Arg Name="CartridgeTypeIndividual"/><Arg Name="CartridgeType29"/></Assign>

            <Assign><Sequence/><Arg Name="TempDiffFromPeakChlIndividual"/><Arg Name="TempDiffFromPeakChl29"/></Assign>

            <Assign><Sequence/><Arg Name="DepDiffFromPeakChlIndividual"/><Arg Name="DepDiffFromPeakChl29"/></Assign>

            <Assign><Sequence/><Arg Name="DepIndividual"/><Arg Name="Dep29"/></Assign>

            <Assign><Sequence/><Arg Name="TempIndividual"/><Arg Name="Temp29"/></Assign>

            <Assign><Sequence/><Arg Name="WaitDepUndulationIndividual"/><Arg Name="WaitDepUndulation29"/></Assign>

            <Call Id="SetOptionsForSample29" RefId="SetSampleOptions"/>

            <Assign><Sequence/><Arg Name="SampleOptionsSet"/><True/></Assign>

        </Aggregate>

        <Aggregate Id="SetOptionsOfSample30">

            <When>
                <Arg Name="CntSamples"/>
                <Add><Arg Name="StartIndex"/></Add>

                <Sub><Units:count/><Value>1</Value></Sub>

                <Eq><Units:count/><Value>30</Value></Eq>
                <And><Not><Arg Name="SampleOptionsSet"/></Not></And>
                <And><Arg Name="SampleCountIncreased"/></And>
            </When>

            <Assign><Sequence/><Arg Name="SampleTypeIndividual"/><Arg Name="SampleType30"/></Assign>

            <Assign><Sequence/><Arg Name="CartridgeTypeIndividual"/><Arg Name="CartridgeType30"/></Assign>

            <Assign><Sequence/><Arg Name="TempDiffFromPeakChlIndividual"/><Arg Name="TempDiffFromPeakChl30"/></Assign>

            <Assign><Sequence/><Arg Name="DepDiffFromPeakChlIndividual"/><Arg Name="DepDiffFromPeakChl30"/></Assign>

            <Assign><Sequence/><Arg Name="DepIndividual"/><Arg Name="Dep30"/></Assign>

            <Assign><Sequence/><Arg Name="TempIndividual"/><Arg Name="Temp30"/></Assign>

            <Assign><Sequence/><Arg Name="WaitDepUndulationIndividual"/><Arg Name="WaitDepUndulation30"/></Assign>

            <Call Id="SetOptionsForSample30" RefId="SetSampleOptions"/>

            <Assign><Sequence/><Arg Name="SampleOptionsSet"/><True/></Assign>

        </Aggregate>

        <Aggregate Id="SetOptionsOfSample31">

            <When>
                <Arg Name="CntSamples"/>
                <Add><Arg Name="StartIndex"/></Add>

                <Sub><Units:count/><Value>1</Value></Sub>

                <Eq><Units:count/><Value>31</Value></Eq>
                <And><Not><Arg Name="SampleOptionsSet"/></Not></And>
                <And><Arg Name="SampleCountIncreased"/></And>
            </When>

            <Assign><Sequence/><Arg Name="SampleTypeIndividual"/><Arg Name="SampleType31"/></Assign>

            <Assign><Sequence/><Arg Name="CartridgeTypeIndividual"/><Arg Name="CartridgeType31"/></Assign>

            <Assign><Sequence/><Arg Name="TempDiffFromPeakChlIndividual"/><Arg Name="TempDiffFromPeakChl31"/></Assign>

            <Assign><Sequence/><Arg Name="DepDiffFromPeakChlIndividual"/><Arg Name="DepDiffFromPeakChl31"/></Assign>

            <Assign><Sequence/><Arg Name="DepIndividual"/><Arg Name="Dep31"/></Assign>

            <Assign><Sequence/><Arg Name="TempIndividual"/><Arg Name="Temp31"/></Assign>

            <Assign><Sequence/><Arg Name="WaitDepUndulationIndividual"/><Arg Name="WaitDepUndulation31"/></Assign>

            <Call Id="SetOptionsForSample31" RefId="SetSampleOptions"/>

            <Assign><Sequence/><Arg Name="SampleOptionsSet"/><True/></Assign>

        </Aggregate>

        <Aggregate Id="SetOptionsOfSample32">

            <When>
                <Arg Name="CntSamples"/>
                <Add><Arg Name="StartIndex"/></Add>

                <Sub><Units:count/><Value>1</Value></Sub>

                <Eq><Units:count/><Value>32</Value></Eq>
                <And><Not><Arg Name="SampleOptionsSet"/></Not></And>
                <And><Arg Name="SampleCountIncreased"/></And>
            </When>

            <Assign><Sequence/><Arg Name="SampleTypeIndividual"/><Arg Name="SampleType32"/></Assign>

            <Assign><Sequence/><Arg Name="CartridgeTypeIndividual"/><Arg Name="CartridgeType32"/></Assign>

            <Assign><Sequence/><Arg Name="TempDiffFromPeakChlIndividual"/><Arg Name="TempDiffFromPeakChl32"/></Assign>

            <Assign><Sequence/><Arg Name="DepDiffFromPeakChlIndividual"/><Arg Name="DepDiffFromPeakChl32"/></Assign>

            <Assign><Sequence/><Arg Name="DepIndividual"/><Arg Name="Dep32"/></Assign>

            <Assign><Sequence/><Arg Name="TempIndividual"/><Arg Name="Temp32"/></Assign>

            <Assign><Sequence/><Arg Name="WaitDepUndulationIndividual"/><Arg Name="WaitDepUndulation32"/></Assign>

            <Call Id="SetOptionsForSample32" RefId="SetSampleOptions"/>

            <Assign><Sequence/><Arg Name="SampleOptionsSet"/><True/></Assign>

        </Aggregate>

        <Aggregate Id="SetOptionsOfSample33">

            <When>
                <Arg Name="CntSamples"/>
                <Add><Arg Name="StartIndex"/></Add>

                <Sub><Units:count/><Value>1</Value></Sub>

                <Eq><Units:count/><Value>33</Value></Eq>
                <And><Not><Arg Name="SampleOptionsSet"/></Not></And>
                <And><Arg Name="SampleCountIncreased"/></And>
            </When>

            <Assign><Sequence/><Arg Name="SampleTypeIndividual"/><Arg Name="SampleType33"/></Assign>

            <Assign><Sequence/><Arg Name="CartridgeTypeIndividual"/><Arg Name="CartridgeType33"/></Assign>

            <Assign><Sequence/><Arg Name="TempDiffFromPeakChlIndividual"/><Arg Name="TempDiffFromPeakChl33"/></Assign>

            <Assign><Sequence/><Arg Name="DepDiffFromPeakChlIndividual"/><Arg Name="DepDiffFromPeakChl33"/></Assign>

            <Assign><Sequence/><Arg Name="DepIndividual"/><Arg Name="Dep33"/></Assign>

            <Assign><Sequence/><Arg Name="TempIndividual"/><Arg Name="Temp33"/></Assign>

            <Assign><Sequence/><Arg Name="WaitDepUndulationIndividual"/><Arg Name="WaitDepUndulation33"/></Assign>

            <Call Id="SetOptionsForSample33" RefId="SetSampleOptions"/>

            <Assign><Sequence/><Arg Name="SampleOptionsSet"/><True/></Assign>

        </Aggregate>

        <Aggregate Id="SetOptionsOfSample34">

            <When>
                <Arg Name="CntSamples"/>
                <Add><Arg Name="StartIndex"/></Add>

                <Sub><Units:count/><Value>1</Value></Sub>

                <Eq><Units:count/><Value>34</Value></Eq>
                <And><Not><Arg Name="SampleOptionsSet"/></Not></And>
                <And><Arg Name="SampleCountIncreased"/></And>
            </When>

            <Assign><Sequence/><Arg Name="SampleTypeIndividual"/><Arg Name="SampleType34"/></Assign>

            <Assign><Sequence/><Arg Name="CartridgeTypeIndividual"/><Arg Name="CartridgeType34"/></Assign>

            <Assign><Sequence/><Arg Name="TempDiffFromPeakChlIndividual"/><Arg Name="TempDiffFromPeakChl34"/></Assign>

            <Assign><Sequence/><Arg Name="DepDiffFromPeakChlIndividual"/><Arg Name="DepDiffFromPeakChl34"/></Assign>

            <Assign><Sequence/><Arg Name="DepIndividual"/><Arg Name="Dep34"/></Assign>

            <Assign><Sequence/><Arg Name="TempIndividual"/><Arg Name="Temp34"/></Assign>

            <Assign><Sequence/><Arg Name="WaitDepUndulationIndividual"/><Arg Name="WaitDepUndulation34"/></Assign>

            <Call Id="SetOptionsForSample34" RefId="SetSampleOptions"/>

            <Assign><Sequence/><Arg Name="SampleOptionsSet"/><True/></Assign>

        </Aggregate>

        <Aggregate Id="SetOptionsOfSample35">

            <When>
                <Arg Name="CntSamples"/>
                <Add><Arg Name="StartIndex"/></Add>

                <Sub><Units:count/><Value>1</Value></Sub>

                <Eq><Units:count/><Value>35</Value></Eq>
                <And><Not><Arg Name="SampleOptionsSet"/></Not></And>
                <And><Arg Name="SampleCountIncreased"/></And>
            </When>

            <Assign><Sequence/><Arg Name="SampleTypeIndividual"/><Arg Name="SampleType35"/></Assign>

            <Assign><Sequence/><Arg Name="CartridgeTypeIndividual"/><Arg Name="CartridgeType35"/></Assign>

            <Assign><Sequence/><Arg Name="TempDiffFromPeakChlIndividual"/><Arg Name="TempDiffFromPeakChl35"/></Assign>

            <Assign><Sequence/><Arg Name="DepDiffFromPeakChlIndividual"/><Arg Name="DepDiffFromPeakChl35"/></Assign>

            <Assign><Sequence/><Arg Name="DepIndividual"/><Arg Name="Dep35"/></Assign>

            <Assign><Sequence/><Arg Name="TempIndividual"/><Arg Name="Temp35"/></Assign>

            <Assign><Sequence/><Arg Name="WaitDepUndulationIndividual"/><Arg Name="WaitDepUndulation35"/></Assign>

            <Call Id="SetOptionsForSample35" RefId="SetSampleOptions"/>

            <Assign><Sequence/><Arg Name="SampleOptionsSet"/><True/></Assign>

        </Aggregate>

        <Aggregate Id="SetOptionsOfSample36">

            <When>
                <Arg Name="CntSamples"/>
                <Add><Arg Name="StartIndex"/></Add>

                <Sub><Units:count/><Value>1</Value></Sub>

                <Eq><Units:count/><Value>36</Value></Eq>
                <And><Not><Arg Name="SampleOptionsSet"/></Not></And>
                <And><Arg Name="SampleCountIncreased"/></And>
            </When>

            <Assign><Sequence/><Arg Name="SampleTypeIndividual"/><Arg Name="SampleType36"/></Assign>

            <Assign><Sequence/><Arg Name="CartridgeTypeIndividual"/><Arg Name="CartridgeType36"/></Assign>

            <Assign><Sequence/><Arg Name="TempDiffFromPeakChlIndividual"/><Arg Name="TempDiffFromPeakChl36"/></Assign>

            <Assign><Sequence/><Arg Name="DepDiffFromPeakChlIndividual"/><Arg Name="DepDiffFromPeakChl36"/></Assign>

            <Assign><Sequence/><Arg Name="DepIndividual"/><Arg Name="Dep36"/></Assign>

            <Assign><Sequence/><Arg Name="TempIndividual"/><Arg Name="Temp36"/></Assign>

            <Assign><Sequence/><Arg Name="WaitDepUndulationIndividual"/><Arg Name="WaitDepUndulation36"/></Assign>

            <Call Id="SetOptionsForSample36" RefId="SetSampleOptions"/>

            <Assign><Sequence/><Arg Name="SampleOptionsSet"/><True/></Assign>

        </Aggregate>

        <Aggregate Id="SetOptionsOfSample37">

            <When>
                <Arg Name="CntSamples"/>
                <Add><Arg Name="StartIndex"/></Add>

                <Sub><Units:count/><Value>1</Value></Sub>

                <Eq><Units:count/><Value>37</Value></Eq>
                <And><Not><Arg Name="SampleOptionsSet"/></Not></And>
                <And><Arg Name="SampleCountIncreased"/></And>
            </When>

            <Assign><Sequence/><Arg Name="SampleTypeIndividual"/><Arg Name="SampleType37"/></Assign>

            <Assign><Sequence/><Arg Name="CartridgeTypeIndividual"/><Arg Name="CartridgeType37"/></Assign>

            <Assign><Sequence/><Arg Name="TempDiffFromPeakChlIndividual"/><Arg Name="TempDiffFromPeakChl37"/></Assign>

            <Assign><Sequence/><Arg Name="DepDiffFromPeakChlIndividual"/><Arg Name="DepDiffFromPeakChl37"/></Assign>

            <Assign><Sequence/><Arg Name="DepIndividual"/><Arg Name="Dep37"/></Assign>

            <Assign><Sequence/><Arg Name="TempIndividual"/><Arg Name="Temp37"/></Assign>

            <Assign><Sequence/><Arg Name="WaitDepUndulationIndividual"/><Arg Name="WaitDepUndulation37"/></Assign>

            <Call Id="SetOptionsForSample37" RefId="SetSampleOptions"/>

            <Assign><Sequence/><Arg Name="SampleOptionsSet"/><True/></Assign>

        </Aggregate>

        <Aggregate Id="SetOptionsOfSample38">

            <When>
                <Arg Name="CntSamples"/>
                <Add><Arg Name="StartIndex"/></Add>

                <Sub><Units:count/><Value>1</Value></Sub>

                <Eq><Units:count/><Value>38</Value></Eq>
                <And><Not><Arg Name="SampleOptionsSet"/></Not></And>
                <And><Arg Name="SampleCountIncreased"/></And>
            </When>

            <Assign><Sequence/><Arg Name="SampleTypeIndividual"/><Arg Name="SampleType38"/></Assign>

            <Assign><Sequence/><Arg Name="CartridgeTypeIndividual"/><Arg Name="CartridgeType38"/></Assign>

            <Assign><Sequence/><Arg Name="TempDiffFromPeakChlIndividual"/><Arg Name="TempDiffFromPeakChl38"/></Assign>

            <Assign><Sequence/><Arg Name="DepDiffFromPeakChlIndividual"/><Arg Name="DepDiffFromPeakChl38"/></Assign>

            <Assign><Sequence/><Arg Name="DepIndividual"/><Arg Name="Dep38"/></Assign>

            <Assign><Sequence/><Arg Name="TempIndividual"/><Arg Name="Temp38"/></Assign>

            <Assign><Sequence/><Arg Name="WaitDepUndulationIndividual"/><Arg Name="WaitDepUndulation38"/></Assign>

            <Call Id="SetOptionsForSample38" RefId="SetSampleOptions"/>

            <Assign><Sequence/><Arg Name="SampleOptionsSet"/><True/></Assign>

        </Aggregate>

        <Aggregate Id="SetOptionsOfSample39">

            <When>
                <Arg Name="CntSamples"/>
                <Add><Arg Name="StartIndex"/></Add>

                <Sub><Units:count/><Value>1</Value></Sub>

                <Eq><Units:count/><Value>39</Value></Eq>
                <And><Not><Arg Name="SampleOptionsSet"/></Not></And>
                <And><Arg Name="SampleCountIncreased"/></And>
            </When>

            <Assign><Sequence/><Arg Name="SampleTypeIndividual"/><Arg Name="SampleType39"/></Assign>

            <Assign><Sequence/><Arg Name="CartridgeTypeIndividual"/><Arg Name="CartridgeType39"/></Assign>

            <Assign><Sequence/><Arg Name="TempDiffFromPeakChlIndividual"/><Arg Name="TempDiffFromPeakChl39"/></Assign>

            <Assign><Sequence/><Arg Name="DepDiffFromPeakChlIndividual"/><Arg Name="DepDiffFromPeakChl39"/></Assign>

            <Assign><Sequence/><Arg Name="DepIndividual"/><Arg Name="Dep39"/></Assign>

            <Assign><Sequence/><Arg Name="TempIndividual"/><Arg Name="Temp39"/></Assign>

            <Assign><Sequence/><Arg Name="WaitDepUndulationIndividual"/><Arg Name="WaitDepUndulation39"/></Assign>

            <Call Id="SetOptionsForSample39" RefId="SetSampleOptions"/>

            <Assign><Sequence/><Arg Name="SampleOptionsSet"/><True/></Assign>

        </Aggregate>

        <Aggregate Id="SetOptionsOfSample40">

            <When>
                <Arg Name="CntSamples"/>
                <Add><Arg Name="StartIndex"/></Add>

                <Sub><Units:count/><Value>1</Value></Sub>

                <Eq><Units:count/><Value>40</Value></Eq>
                <And><Not><Arg Name="SampleOptionsSet"/></Not></And>
                <And><Arg Name="SampleCountIncreased"/></And>
            </When>

            <Assign><Sequence/><Arg Name="SampleTypeIndividual"/><Arg Name="SampleType40"/></Assign>

            <Assign><Sequence/><Arg Name="CartridgeTypeIndividual"/><Arg Name="CartridgeType40"/></Assign>

            <Assign><Sequence/><Arg Name="TempDiffFromPeakChlIndividual"/><Arg Name="TempDiffFromPeakChl40"/></Assign>

            <Assign><Sequence/><Arg Name="DepDiffFromPeakChlIndividual"/><Arg Name="DepDiffFromPeakChl40"/></Assign>

            <Assign><Sequence/><Arg Name="DepIndividual"/><Arg Name="Dep40"/></Assign>

            <Assign><Sequence/><Arg Name="TempIndividual"/><Arg Name="Temp40"/></Assign>

            <Assign><Sequence/><Arg Name="WaitDepUndulationIndividual"/><Arg Name="WaitDepUndulation40"/></Assign>

            <Call Id="SetOptionsForSample40" RefId="SetSampleOptions"/>

            <Assign><Sequence/><Arg Name="SampleOptionsSet"/><True/></Assign>

        </Aggregate>

        <Aggregate Id="SetOptionsOfSample41">

            <When>
                <Arg Name="CntSamples"/>
                <Add><Arg Name="StartIndex"/></Add>

                <Sub><Units:count/><Value>1</Value></Sub>

                <Eq><Units:count/><Value>41</Value></Eq>
                <And><Not><Arg Name="SampleOptionsSet"/></Not></And>
                <And><Arg Name="SampleCountIncreased"/></And>
            </When>

            <Assign><Sequence/><Arg Name="SampleTypeIndividual"/><Arg Name="SampleType41"/></Assign>

            <Assign><Sequence/><Arg Name="CartridgeTypeIndividual"/><Arg Name="CartridgeType41"/></Assign>

            <Assign><Sequence/><Arg Name="TempDiffFromPeakChlIndividual"/><Arg Name="TempDiffFromPeakChl41"/></Assign>

            <Assign><Sequence/><Arg Name="DepDiffFromPeakChlIndividual"/><Arg Name="DepDiffFromPeakChl41"/></Assign>

            <Assign><Sequence/><Arg Name="DepIndividual"/><Arg Name="Dep41"/></Assign>

            <Assign><Sequence/><Arg Name="TempIndividual"/><Arg Name="Temp41"/></Assign>

            <Assign><Sequence/><Arg Name="WaitDepUndulationIndividual"/><Arg Name="WaitDepUndulation41"/></Assign>

            <Call Id="SetOptionsForSample41" RefId="SetSampleOptions"/>

            <Assign><Sequence/><Arg Name="SampleOptionsSet"/><True/></Assign>

        </Aggregate>

        <Aggregate Id="SetOptionsOfSample42">

            <When>
                <Arg Name="CntSamples"/>
                <Add><Arg Name="StartIndex"/></Add>

                <Sub><Units:count/><Value>1</Value></Sub>

                <Eq><Units:count/><Value>42</Value></Eq>
                <And><Not><Arg Name="SampleOptionsSet"/></Not></And>
                <And><Arg Name="SampleCountIncreased"/></And>
            </When>

            <Assign><Sequence/><Arg Name="SampleTypeIndividual"/><Arg Name="SampleType42"/></Assign>

            <Assign><Sequence/><Arg Name="CartridgeTypeIndividual"/><Arg Name="CartridgeType42"/></Assign>

            <Assign><Sequence/><Arg Name="TempDiffFromPeakChlIndividual"/><Arg Name="TempDiffFromPeakChl42"/></Assign>

            <Assign><Sequence/><Arg Name="DepDiffFromPeakChlIndividual"/><Arg Name="DepDiffFromPeakChl42"/></Assign>

            <Assign><Sequence/><Arg Name="DepIndividual"/><Arg Name="Dep42"/></Assign>

            <Assign><Sequence/><Arg Name="TempIndividual"/><Arg Name="Temp42"/></Assign>

            <Assign><Sequence/><Arg Name="WaitDepUndulationIndividual"/><Arg Name="WaitDepUndulation42"/></Assign>

            <Call Id="SetOptionsForSample42" RefId="SetSampleOptions"/>

            <Assign><Sequence/><Arg Name="SampleOptionsSet"/><True/></Assign>

        </Aggregate>

        <Aggregate Id="SetOptionsOfSample43">

            <When>
                <Arg Name="CntSamples"/>
                <Add><Arg Name="StartIndex"/></Add>

                <Sub><Units:count/><Value>1</Value></Sub>

                <Eq><Units:count/><Value>43</Value></Eq>
                <And><Not><Arg Name="SampleOptionsSet"/></Not></And>
                <And><Arg Name="SampleCountIncreased"/></And>
            </When>

            <Assign><Sequence/><Arg Name="SampleTypeIndividual"/><Arg Name="SampleType43"/></Assign>

            <Assign><Sequence/><Arg Name="CartridgeTypeIndividual"/><Arg Name="CartridgeType43"/></Assign>

            <Assign><Sequence/><Arg Name="TempDiffFromPeakChlIndividual"/><Arg Name="TempDiffFromPeakChl43"/></Assign>

            <Assign><Sequence/><Arg Name="DepDiffFromPeakChlIndividual"/><Arg Name="DepDiffFromPeakChl43"/></Assign>

            <Assign><Sequence/><Arg Name="DepIndividual"/><Arg Name="Dep43"/></Assign>

            <Assign><Sequence/><Arg Name="TempIndividual"/><Arg Name="Temp43"/></Assign>

            <Assign><Sequence/><Arg Name="WaitDepUndulationIndividual"/><Arg Name="WaitDepUndulation43"/></Assign>

            <Call Id="SetOptionsForSample43" RefId="SetSampleOptions"/>

            <Assign><Sequence/><Arg Name="SampleOptionsSet"/><True/></Assign>

        </Aggregate>

        <Aggregate Id="SetOptionsOfSample44">

            <When>
                <Arg Name="CntSamples"/>
                <Add><Arg Name="StartIndex"/></Add>

                <Sub><Units:count/><Value>1</Value></Sub>

                <Eq><Units:count/><Value>44</Value></Eq>
                <And><Not><Arg Name="SampleOptionsSet"/></Not></And>
                <And><Arg Name="SampleCountIncreased"/></And>
            </When>

            <Assign><Sequence/><Arg Name="SampleTypeIndividual"/><Arg Name="SampleType44"/></Assign>

            <Assign><Sequence/><Arg Name="CartridgeTypeIndividual"/><Arg Name="CartridgeType44"/></Assign>

            <Assign><Sequence/><Arg Name="TempDiffFromPeakChlIndividual"/><Arg Name="TempDiffFromPeakChl44"/></Assign>

            <Assign><Sequence/><Arg Name="DepDiffFromPeakChlIndividual"/><Arg Name="DepDiffFromPeakChl44"/></Assign>

            <Assign><Sequence/><Arg Name="DepIndividual"/><Arg Name="Dep44"/></Assign>

            <Assign><Sequence/><Arg Name="TempIndividual"/><Arg Name="Temp44"/></Assign>

            <Assign><Sequence/><Arg Name="WaitDepUndulationIndividual"/><Arg Name="WaitDepUndulation44"/></Assign>

            <Call Id="SetOptionsForSample44" RefId="SetSampleOptions"/>

            <Assign><Sequence/><Arg Name="SampleOptionsSet"/><True/></Assign>

        </Aggregate>

        <Aggregate Id="SetOptionsOfSample45">

            <When>
                <Arg Name="CntSamples"/>
                <Add><Arg Name="StartIndex"/></Add>

                <Sub><Units:count/><Value>1</Value></Sub>

                <Eq><Units:count/><Value>45</Value></Eq>
                <And><Not><Arg Name="SampleOptionsSet"/></Not></And>
                <And><Arg Name="SampleCountIncreased"/></And>
            </When>

            <Assign><Sequence/><Arg Name="SampleTypeIndividual"/><Arg Name="SampleType45"/></Assign>

            <Assign><Sequence/><Arg Name="CartridgeTypeIndividual"/><Arg Name="CartridgeType45"/></Assign>

            <Assign><Sequence/><Arg Name="TempDiffFromPeakChlIndividual"/><Arg Name="TempDiffFromPeakChl45"/></Assign>

            <Assign><Sequence/><Arg Name="DepDiffFromPeakChlIndividual"/><Arg Name="DepDiffFromPeakChl45"/></Assign>

            <Assign><Sequence/><Arg Name="DepIndividual"/><Arg Name="Dep45"/></Assign>

            <Assign><Sequence/><Arg Name="TempIndividual"/><Arg Name="Temp45"/></Assign>

            <Assign><Sequence/><Arg Name="WaitDepUndulationIndividual"/><Arg Name="WaitDepUndulation45"/></Assign>

            <Call Id="SetOptionsForSample45" RefId="SetSampleOptions"/>

            <Assign><Sequence/><Arg Name="SampleOptionsSet"/><True/></Assign>

        </Aggregate>

        <Aggregate Id="SetOptionsOfSample46">

            <When>
                <Arg Name="CntSamples"/>
                <Add><Arg Name="StartIndex"/></Add>

                <Sub><Units:count/><Value>1</Value></Sub>

                <Eq><Units:count/><Value>46</Value></Eq>
                <And><Not><Arg Name="SampleOptionsSet"/></Not></And>
                <And><Arg Name="SampleCountIncreased"/></And>
            </When>

            <Assign><Sequence/><Arg Name="SampleTypeIndividual"/><Arg Name="SampleType46"/></Assign>

            <Assign><Sequence/><Arg Name="CartridgeTypeIndividual"/><Arg Name="CartridgeType46"/></Assign>

            <Assign><Sequence/><Arg Name="TempDiffFromPeakChlIndividual"/><Arg Name="TempDiffFromPeakChl46"/></Assign>

            <Assign><Sequence/><Arg Name="DepDiffFromPeakChlIndividual"/><Arg Name="DepDiffFromPeakChl46"/></Assign>

            <Assign><Sequence/><Arg Name="DepIndividual"/><Arg Name="Dep46"/></Assign>

            <Assign><Sequence/><Arg Name="TempIndividual"/><Arg Name="Temp46"/></Assign>

            <Assign><Sequence/><Arg Name="WaitDepUndulationIndividual"/><Arg Name="WaitDepUndulation46"/></Assign>

            <Call Id="SetOptionsForSample46" RefId="SetSampleOptions"/>

            <Assign><Sequence/><Arg Name="SampleOptionsSet"/><True/></Assign>

        </Aggregate>

        <Aggregate Id="SetOptionsOfSample47">

            <When>
                <Arg Name="CntSamples"/>
                <Add><Arg Name="StartIndex"/></Add>

                <Sub><Units:count/><Value>1</Value></Sub>

                <Eq><Units:count/><Value>47</Value></Eq>
                <And><Not><Arg Name="SampleOptionsSet"/></Not></And>
                <And><Arg Name="SampleCountIncreased"/></And>
            </When>

            <Assign><Sequence/><Arg Name="SampleTypeIndividual"/><Arg Name="SampleType47"/></Assign>

            <Assign><Sequence/><Arg Name="CartridgeTypeIndividual"/><Arg Name="CartridgeType47"/></Assign>

            <Assign><Sequence/><Arg Name="TempDiffFromPeakChlIndividual"/><Arg Name="TempDiffFromPeakChl47"/></Assign>

            <Assign><Sequence/><Arg Name="DepDiffFromPeakChlIndividual"/><Arg Name="DepDiffFromPeakChl47"/></Assign>

            <Assign><Sequence/><Arg Name="DepIndividual"/><Arg Name="Dep47"/></Assign>

            <Assign><Sequence/><Arg Name="TempIndividual"/><Arg Name="Temp47"/></Assign>

            <Assign><Sequence/><Arg Name="WaitDepUndulationIndividual"/><Arg Name="WaitDepUndulation47"/></Assign>

            <Call Id="SetOptionsForSample47" RefId="SetSampleOptions"/>

            <Assign><Sequence/><Arg Name="SampleOptionsSet"/><True/></Assign>

        </Aggregate>

        <Aggregate Id="SetOptionsOfSample48">

            <When>
                <Arg Name="CntSamples"/>
                <Add><Arg Name="StartIndex"/></Add>

                <Sub><Units:count/><Value>1</Value></Sub>

                <Eq><Units:count/><Value>48</Value></Eq>
                <And><Not><Arg Name="SampleOptionsSet"/></Not></And>
                <And><Arg Name="SampleCountIncreased"/></And>
            </When>

            <Assign><Sequence/><Arg Name="SampleTypeIndividual"/><Arg Name="SampleType48"/></Assign>

            <Assign><Sequence/><Arg Name="CartridgeTypeIndividual"/><Arg Name="CartridgeType48"/></Assign>

            <Assign><Sequence/><Arg Name="TempDiffFromPeakChlIndividual"/><Arg Name="TempDiffFromPeakChl48"/></Assign>

            <Assign><Sequence/><Arg Name="DepDiffFromPeakChlIndividual"/><Arg Name="DepDiffFromPeakChl48"/></Assign>

            <Assign><Sequence/><Arg Name="DepIndividual"/><Arg Name="Dep48"/></Assign>

            <Assign><Sequence/><Arg Name="TempIndividual"/><Arg Name="Temp48"/></Assign>

            <Assign><Sequence/><Arg Name="WaitDepUndulationIndividual"/><Arg Name="WaitDepUndulation48"/></Assign>

            <Call Id="SetOptionsForSample48" RefId="SetSampleOptions"/>

            <Assign><Sequence/><Arg Name="SampleOptionsSet"/><True/></Assign>

        </Aggregate>

        <Aggregate Id="SetOptionsOfSample49">

            <When>
                <Arg Name="CntSamples"/>
                <Add><Arg Name="StartIndex"/></Add>

                <Sub><Units:count/><Value>1</Value></Sub>

                <Eq><Units:count/><Value>49</Value></Eq>
                <And><Not><Arg Name="SampleOptionsSet"/></Not></And>
                <And><Arg Name="SampleCountIncreased"/></And>
            </When>

            <Assign><Sequence/><Arg Name="SampleTypeIndividual"/><Arg Name="SampleType49"/></Assign>

            <Assign><Sequence/><Arg Name="CartridgeTypeIndividual"/><Arg Name="CartridgeType49"/></Assign>

            <Assign><Sequence/><Arg Name="TempDiffFromPeakChlIndividual"/><Arg Name="TempDiffFromPeakChl49"/></Assign>

            <Assign><Sequence/><Arg Name="DepDiffFromPeakChlIndividual"/><Arg Name="DepDiffFromPeakChl49"/></Assign>

            <Assign><Sequence/><Arg Name="DepIndividual"/><Arg Name="Dep49"/></Assign>

            <Assign><Sequence/><Arg Name="TempIndividual"/><Arg Name="Temp49"/></Assign>

            <Assign><Sequence/><Arg Name="WaitDepUndulationIndividual"/><Arg Name="WaitDepUndulation49"/></Assign>

            <Call Id="SetOptionsForSample49" RefId="SetSampleOptions"/>

            <Assign><Sequence/><Arg Name="SampleOptionsSet"/><True/></Assign>

        </Aggregate>

        <Aggregate Id="SetOptionsOfSample50">

            <When>
                <Arg Name="CntSamples"/>
                <Add><Arg Name="StartIndex"/></Add>

                <Sub><Units:count/><Value>1</Value></Sub>

                <Eq><Units:count/><Value>50</Value></Eq>
                <And><Not><Arg Name="SampleOptionsSet"/></Not></And>
                <And><Arg Name="SampleCountIncreased"/></And>
            </When>

            <Assign><Sequence/><Arg Name="SampleTypeIndividual"/><Arg Name="SampleType50"/></Assign>

            <Assign><Sequence/><Arg Name="CartridgeTypeIndividual"/><Arg Name="CartridgeType50"/></Assign>

            <Assign><Sequence/><Arg Name="TempDiffFromPeakChlIndividual"/><Arg Name="TempDiffFromPeakChl50"/></Assign>

            <Assign><Sequence/><Arg Name="DepDiffFromPeakChlIndividual"/><Arg Name="DepDiffFromPeakChl50"/></Assign>

            <Assign><Sequence/><Arg Name="DepIndividual"/><Arg Name="Dep50"/></Assign>

            <Assign><Sequence/><Arg Name="TempIndividual"/><Arg Name="Temp50"/></Assign>

            <Assign><Sequence/><Arg Name="WaitDepUndulationIndividual"/><Arg Name="WaitDepUndulation50"/></Assign>

            <Call Id="SetOptionsForSample50" RefId="SetSampleOptions"/>

            <Assign><Sequence/><Arg Name="SampleOptionsSet"/><True/></Assign>

        </Aggregate>

        <Aggregate Id="SetOptionsOfSample51">

            <When>
                <Arg Name="CntSamples"/>
                <Add><Arg Name="StartIndex"/></Add>

                <Sub><Units:count/><Value>1</Value></Sub>

                <Eq><Units:count/><Value>51</Value></Eq>
                <And><Not><Arg Name="SampleOptionsSet"/></Not></And>
                <And><Arg Name="SampleCountIncreased"/></And>
            </When>

            <Assign><Sequence/><Arg Name="SampleTypeIndividual"/><Arg Name="SampleType51"/></Assign>

            <Assign><Sequence/><Arg Name="CartridgeTypeIndividual"/><Arg Name="CartridgeType51"/></Assign>

            <Assign><Sequence/><Arg Name="TempDiffFromPeakChlIndividual"/><Arg Name="TempDiffFromPeakChl51"/></Assign>

            <Assign><Sequence/><Arg Name="DepDiffFromPeakChlIndividual"/><Arg Name="DepDiffFromPeakChl51"/></Assign>

            <Assign><Sequence/><Arg Name="DepIndividual"/><Arg Name="Dep51"/></Assign>

            <Assign><Sequence/><Arg Name="TempIndividual"/><Arg Name="Temp51"/></Assign>

            <Assign><Sequence/><Arg Name="WaitDepUndulationIndividual"/><Arg Name="WaitDepUndulation51"/></Assign>

            <Call Id="SetOptionsForSample51" RefId="SetSampleOptions"/>

            <Assign><Sequence/><Arg Name="SampleOptionsSet"/><True/></Assign>

        </Aggregate>

        <Aggregate Id="SetOptionsOfSample52">

            <When>
                <Arg Name="CntSamples"/>
                <Add><Arg Name="StartIndex"/></Add>

                <Sub><Units:count/><Value>1</Value></Sub>

                <Eq><Units:count/><Value>52</Value></Eq>
                <And><Not><Arg Name="SampleOptionsSet"/></Not></And>
                <And><Arg Name="SampleCountIncreased"/></And>
            </When>

            <Assign><Sequence/><Arg Name="SampleTypeIndividual"/><Arg Name="SampleType52"/></Assign>

            <Assign><Sequence/><Arg Name="CartridgeTypeIndividual"/><Arg Name="CartridgeType52"/></Assign>

            <Assign><Sequence/><Arg Name="TempDiffFromPeakChlIndividual"/><Arg Name="TempDiffFromPeakChl52"/></Assign>

            <Assign><Sequence/><Arg Name="DepDiffFromPeakChlIndividual"/><Arg Name="DepDiffFromPeakChl52"/></Assign>

            <Assign><Sequence/><Arg Name="DepIndividual"/><Arg Name="Dep52"/></Assign>

            <Assign><Sequence/><Arg Name="TempIndividual"/><Arg Name="Temp52"/></Assign>

            <Assign><Sequence/><Arg Name="WaitDepUndulationIndividual"/><Arg Name="WaitDepUndulation52"/></Assign>

            <Call Id="SetOptionsForSample52" RefId="SetSampleOptions"/>

            <Assign><Sequence/><Arg Name="SampleOptionsSet"/><True/></Assign>

        </Aggregate>

        <Aggregate Id="SetOptionsOfSample53">

            <When>
                <Arg Name="CntSamples"/>
                <Add><Arg Name="StartIndex"/></Add>

                <Sub><Units:count/><Value>1</Value></Sub>

                <Eq><Units:count/><Value>53</Value></Eq>
                <And><Not><Arg Name="SampleOptionsSet"/></Not></And>
                <And><Arg Name="SampleCountIncreased"/></And>
            </When>

            <Assign><Sequence/><Arg Name="SampleTypeIndividual"/><Arg Name="SampleType53"/></Assign>

            <Assign><Sequence/><Arg Name="CartridgeTypeIndividual"/><Arg Name="CartridgeType53"/></Assign>

            <Assign><Sequence/><Arg Name="TempDiffFromPeakChlIndividual"/><Arg Name="TempDiffFromPeakChl53"/></Assign>

            <Assign><Sequence/><Arg Name="DepDiffFromPeakChlIndividual"/><Arg Name="DepDiffFromPeakChl53"/></Assign>

            <Assign><Sequence/><Arg Name="DepIndividual"/><Arg Name="Dep53"/></Assign>

            <Assign><Sequence/><Arg Name="TempIndividual"/><Arg Name="Temp53"/></Assign>

            <Assign><Sequence/><Arg Name="WaitDepUndulationIndividual"/><Arg Name="WaitDepUndulation53"/></Assign>

            <Call Id="SetOptionsForSample53" RefId="SetSampleOptions"/>

            <Assign><Sequence/><Arg Name="SampleOptionsSet"/><True/></Assign>

        </Aggregate>

        <Aggregate Id="SetOptionsOfSample54">

            <When>
                <Arg Name="CntSamples"/>
                <Add><Arg Name="StartIndex"/></Add>

                <Sub><Units:count/><Value>1</Value></Sub>

                <Eq><Units:count/><Value>54</Value></Eq>
                <And><Not><Arg Name="SampleOptionsSet"/></Not></And>
                <And><Arg Name="SampleCountIncreased"/></And>
            </When>

            <Assign><Sequence/><Arg Name="SampleTypeIndividual"/><Arg Name="SampleType54"/></Assign>

            <Assign><Sequence/><Arg Name="CartridgeTypeIndividual"/><Arg Name="CartridgeType54"/></Assign>

            <Assign><Sequence/><Arg Name="TempDiffFromPeakChlIndividual"/><Arg Name="TempDiffFromPeakChl54"/></Assign>

            <Assign><Sequence/><Arg Name="DepDiffFromPeakChlIndividual"/><Arg Name="DepDiffFromPeakChl54"/></Assign>

            <Assign><Sequence/><Arg Name="DepIndividual"/><Arg Name="Dep54"/></Assign>

            <Assign><Sequence/><Arg Name="TempIndividual"/><Arg Name="Temp54"/></Assign>

            <Assign><Sequence/><Arg Name="WaitDepUndulationIndividual"/><Arg Name="WaitDepUndulation54"/></Assign>

            <Call Id="SetOptionsForSample54" RefId="SetSampleOptions"/>

            <Assign><Sequence/><Arg Name="SampleOptionsSet"/><True/></Assign>

        </Aggregate>

        <Aggregate Id="SetOptionsOfSample55">

            <When>
                <Arg Name="CntSamples"/>
                <Add><Arg Name="StartIndex"/></Add>

                <Sub><Units:count/><Value>1</Value></Sub>

                <Eq><Units:count/><Value>55</Value></Eq>
                <And><Not><Arg Name="SampleOptionsSet"/></Not></And>
                <And><Arg Name="SampleCountIncreased"/></And>
            </When>

            <Assign><Sequence/><Arg Name="SampleTypeIndividual"/><Arg Name="SampleType55"/></Assign>

            <Assign><Sequence/><Arg Name="CartridgeTypeIndividual"/><Arg Name="CartridgeType55"/></Assign>

            <Assign><Sequence/><Arg Name="TempDiffFromPeakChlIndividual"/><Arg Name="TempDiffFromPeakChl55"/></Assign>

            <Assign><Sequence/><Arg Name="DepDiffFromPeakChlIndividual"/><Arg Name="DepDiffFromPeakChl55"/></Assign>

            <Assign><Sequence/><Arg Name="DepIndividual"/><Arg Name="Dep55"/></Assign>

            <Assign><Sequence/><Arg Name="TempIndividual"/><Arg Name="Temp55"/></Assign>

            <Assign><Sequence/><Arg Name="WaitDepUndulationIndividual"/><Arg Name="WaitDepUndulation55"/></Assign>

            <Call Id="SetOptionsForSample55" RefId="SetSampleOptions"/>

            <Assign><Sequence/><Arg Name="SampleOptionsSet"/><True/></Assign>

        </Aggregate>

        <Aggregate Id="SetOptionsOfSample56">

            <When>
                <Arg Name="CntSamples"/>
                <Add><Arg Name="StartIndex"/></Add>

                <Sub><Units:count/><Value>1</Value></Sub>

                <Eq><Units:count/><Value>56</Value></Eq>
                <And><Not><Arg Name="SampleOptionsSet"/></Not></And>
                <And><Arg Name="SampleCountIncreased"/></And>
            </When>

            <Assign><Sequence/><Arg Name="SampleTypeIndividual"/><Arg Name="SampleType56"/></Assign>

            <Assign><Sequence/><Arg Name="CartridgeTypeIndividual"/><Arg Name="CartridgeType56"/></Assign>

            <Assign><Sequence/><Arg Name="TempDiffFromPeakChlIndividual"/><Arg Name="TempDiffFromPeakChl56"/></Assign>

            <Assign><Sequence/><Arg Name="DepDiffFromPeakChlIndividual"/><Arg Name="DepDiffFromPeakChl56"/></Assign>

            <Assign><Sequence/><Arg Name="DepIndividual"/><Arg Name="Dep56"/></Assign>

            <Assign><Sequence/><Arg Name="TempIndividual"/><Arg Name="Temp56"/></Assign>

            <Assign><Sequence/><Arg Name="WaitDepUndulationIndividual"/><Arg Name="WaitDepUndulation56"/></Assign>

            <Call Id="SetOptionsForSample56" RefId="SetSampleOptions"/>

            <Assign><Sequence/><Arg Name="SampleOptionsSet"/><True/></Assign>

        </Aggregate>

        <Aggregate Id="SetOptionsOfSample57">

            <When>
                <Arg Name="CntSamples"/>
                <Add><Arg Name="StartIndex"/></Add>

                <Sub><Units:count/><Value>1</Value></Sub>

                <Eq><Units:count/><Value>57</Value></Eq>
                <And><Not><Arg Name="SampleOptionsSet"/></Not></And>
                <And><Arg Name="SampleCountIncreased"/></And>
            </When>

            <Assign><Sequence/><Arg Name="SampleTypeIndividual"/><Arg Name="SampleType57"/></Assign>

            <Assign><Sequence/><Arg Name="CartridgeTypeIndividual"/><Arg Name="CartridgeType57"/></Assign>

            <Assign><Sequence/><Arg Name="TempDiffFromPeakChlIndividual"/><Arg Name="TempDiffFromPeakChl57"/></Assign>

            <Assign><Sequence/><Arg Name="DepDiffFromPeakChlIndividual"/><Arg Name="DepDiffFromPeakChl57"/></Assign>

            <Assign><Sequence/><Arg Name="DepIndividual"/><Arg Name="Dep57"/></Assign>

            <Assign><Sequence/><Arg Name="TempIndividual"/><Arg Name="Temp57"/></Assign>

            <Assign><Sequence/><Arg Name="WaitDepUndulationIndividual"/><Arg Name="WaitDepUndulation57"/></Assign>

            <Call Id="SetOptionsForSample57" RefId="SetSampleOptions"/>

            <Assign><Sequence/><Arg Name="SampleOptionsSet"/><True/></Assign>

        </Aggregate>

        <Aggregate Id="SetOptionsOfSample58">

            <When>
                <Arg Name="CntSamples"/>
                <Add><Arg Name="StartIndex"/></Add>

                <Sub><Units:count/><Value>1</Value></Sub>

                <Eq><Units:count/><Value>58</Value></Eq>
                <And><Not><Arg Name="SampleOptionsSet"/></Not></And>
                <And><Arg Name="SampleCountIncreased"/></And>
            </When>

            <Assign><Sequence/><Arg Name="SampleTypeIndividual"/><Arg Name="SampleType58"/></Assign>

            <Assign><Sequence/><Arg Name="CartridgeTypeIndividual"/><Arg Name="CartridgeType58"/></Assign>

            <Assign><Sequence/><Arg Name="TempDiffFromPeakChlIndividual"/><Arg Name="TempDiffFromPeakChl58"/></Assign>

            <Assign><Sequence/><Arg Name="DepDiffFromPeakChlIndividual"/><Arg Name="DepDiffFromPeakChl58"/></Assign>

            <Assign><Sequence/><Arg Name="DepIndividual"/><Arg Name="Dep58"/></Assign>

            <Assign><Sequence/><Arg Name="TempIndividual"/><Arg Name="Temp58"/></Assign>

            <Assign><Sequence/><Arg Name="WaitDepUndulationIndividual"/><Arg Name="WaitDepUndulation58"/></Assign>

            <Call Id="SetOptionsForSample58" RefId="SetSampleOptions"/>

            <Assign><Sequence/><Arg Name="SampleOptionsSet"/><True/></Assign>

        </Aggregate>

        <Aggregate Id="SetOptionsOfSample59">

            <When>
                <Arg Name="CntSamples"/>
                <Add><Arg Name="StartIndex"/></Add>

                <Sub><Units:count/><Value>1</Value></Sub>

                <Eq><Units:count/><Value>59</Value></Eq>
                <And><Not><Arg Name="SampleOptionsSet"/></Not></And>
                <And><Arg Name="SampleCountIncreased"/></And>
            </When>

            <Assign><Sequence/><Arg Name="SampleTypeIndividual"/><Arg Name="SampleType59"/></Assign>

            <Assign><Sequence/><Arg Name="CartridgeTypeIndividual"/><Arg Name="CartridgeType59"/></Assign>

            <Assign><Sequence/><Arg Name="TempDiffFromPeakChlIndividual"/><Arg Name="TempDiffFromPeakChl59"/></Assign>

            <Assign><Sequence/><Arg Name="DepDiffFromPeakChlIndividual"/><Arg Name="DepDiffFromPeakChl59"/></Assign>

            <Assign><Sequence/><Arg Name="DepIndividual"/><Arg Name="Dep59"/></Assign>

            <Assign><Sequence/><Arg Name="TempIndividual"/><Arg Name="Temp59"/></Assign>

            <Assign><Sequence/><Arg Name="WaitDepUndulationIndividual"/><Arg Name="WaitDepUndulation59"/></Assign>

            <Call Id="SetOptionsForSample59" RefId="SetSampleOptions"/>

            <Assign><Sequence/><Arg Name="SampleOptionsSet"/><True/></Assign>

        </Aggregate>

        <Aggregate Id="SetOptionsOfSample60">

            <When>
                <Arg Name="CntSamples"/>
                <Add><Arg Name="StartIndex"/></Add>

                <Sub><Units:count/><Value>1</Value></Sub>

                <Eq><Units:count/><Value>60</Value></Eq>
                <And><Not><Arg Name="SampleOptionsSet"/></Not></And>
                <And><Arg Name="SampleCountIncreased"/></And>
            </When>

            <Assign><Sequence/><Arg Name="SampleTypeIndividual"/><Arg Name="SampleType60"/></Assign>

            <Assign><Sequence/><Arg Name="CartridgeTypeIndividual"/><Arg Name="CartridgeType60"/></Assign>

            <Assign><Sequence/><Arg Name="TempDiffFromPeakChlIndividual"/><Arg Name="TempDiffFromPeakChl60"/></Assign>

            <Assign><Sequence/><Arg Name="DepDiffFromPeakChlIndividual"/><Arg Name="DepDiffFromPeakChl60"/></Assign>

            <Assign><Sequence/><Arg Name="DepIndividual"/><Arg Name="Dep60"/></Assign>

            <Assign><Sequence/><Arg Name="TempIndividual"/><Arg Name="Temp60"/></Assign>

            <Assign><Sequence/><Arg Name="WaitDepUndulationIndividual"/><Arg Name="WaitDepUndulation60"/></Assign>

            <Call Id="SetOptionsForSample60" RefId="SetSampleOptions"/>

            <Assign><Sequence/><Arg Name="SampleOptionsSet"/><True/></Assign>

        </Aggregate>

        <Aggregate Id="ReacquireChlPeak">

            <When>
                <Arg Name="FlagPeakChlTempSet"/>
                <And><Not><Arg Name="FlagGoUp"/></Not></And>
                <And><Not><Arg Name="FlagGoDown"/></Not></And>
                <And><Not><Arg Name="FlagSamplingOngoing"/></Not></And>
                <And><Arg Name="CntSamples"/><Le><Arg Name="NumSamplers"/></Le></And>
                <And><Arg Name="SampleOptionsSet"/></And>
                <And><Arg Name="ReacquirePeak"/></And>
            </When>

            <Call RefId="PeakReacquisition"/>

        </Aggregate>

        <Aggregate Id="SetFiringTempRelativeToChlPeak">

            <When>
                <Arg Name="StartVerticalManeuver"/>
                <And><Not><Arg Name="Surfacing"/></Not></And>
                <And><Arg Name="SampleOptionsSet"/></And>
                <And><Not><IsNaN><Arg Name="TempDiffFromPeakChl"/>
                </IsNaN></Not></And>
                <And><Arg Name="FlagPeakChlTempSet"/></And>
                <And><Not><Arg Name="FlagTempSet"/></Not></And>
                <And><Not><Arg Name="ReacquirePeak"/></Not></And>
                <And><Arg Name="ReportAtSurface"/></And>
                <And><Arg Name="ReportAtSurfaceDone"/></And>
                <Or><Arg Name="StartVerticalManeuver"/><And><Not><Arg Name="Surfacing"/></Not></And><And><Arg Name="SampleOptionsSet"/></And><And><Not><IsNaN><Arg Name="TempDiffFromPeakChl"/>
                </IsNaN></Not></And><And><Arg Name="FlagPeakChlTempSet"/></And><And><Not><Arg Name="FlagTempSet"/></Not></And><And><Not><Arg Name="ReacquirePeak"/></Not></And><And><Not><Arg Name="ReportAtSurface"/></Not></And><And><Not><Arg Name="ReportAtSurfaceDone"/></Not></And></Or>
            </When>

            <Assign><Sequence/><Arg Name="TempSet"/><Arg Name="PeakChlTemperatureSet"/><Add><Arg Name="TempDiffFromPeakChl"/></Add></Assign>

            <Assign><Sequence/><Arg Name="FlagTempSet"/><True/></Assign>

            <Assign><Sequence/><Arg Name="ReportAtSurface"/><Arg Name="ReportAtSurfaceToUse"/></Assign>

        </Aggregate>

        <Aggregate Id="SetFiringTempAbsolute">

            <When>
                <Arg Name="StartVerticalManeuver"/>
                <And><Not><Arg Name="Surfacing"/></Not></And>
                <And><Arg Name="SampleOptionsSet"/></And>
                <And><Not><IsNaN><Arg Name="TempDesignated"/>
                </IsNaN></Not></And>
                <And><Not><Arg Name="FlagTempSet"/></Not></And>
                <And><Arg Name="ReportAtSurface"/></And>
                <And><Arg Name="ReportAtSurfaceDone"/></And>
                <Or><Arg Name="StartVerticalManeuver"/><And><Not><Arg Name="Surfacing"/></Not></And><And><Arg Name="SampleOptionsSet"/></And><And><Not><IsNaN><Arg Name="TempDesignated"/>
                </IsNaN></Not></And><And><Not><Arg Name="FlagTempSet"/></Not></And><And><Not><Arg Name="ReportAtSurface"/></Not></And><And><Not><Arg Name="ReportAtSurfaceDone"/></Not></And></Or>
            </When>

            <Assign><Sequence/><Arg Name="TempSet"/><Arg Name="TempDesignated"/></Assign>

            <Assign><Sequence/><Arg Name="FlagTempSet"/><True/></Assign>

            <Assign><Sequence/><Arg Name="ReportAtSurface"/><Arg Name="ReportAtSurfaceToUse"/></Assign>

            <Assign><Sequence/><Arg Name="FlagGoDown"/><False/></Assign>

        </Aggregate>

        <Aggregate Id="SetFiringDepthRelativeToChlPeakNormal">

            <When>
                <Arg Name="SampleOptionsSet"/>
                <And><Arg Name="FlagPeakChlDepthSet"/></And>
                <And><Not><IsNaN><Arg Name="DepDiffFromPeakChl"/>
                </IsNaN></Not></And>
                <And><Not><Arg Name="FlagTargetDepthSet"/></Not></And>
                <And><Arg Name="PeakChlDepthSet"/><Add><Arg Name="DepDiffFromPeakChl"/></Add><Ge><Arg Name="ShallowBoundChl"/></Ge></And>
                <And><Arg Name="PeakChlDepthSet"/><Add><Arg Name="DepDiffFromPeakChl"/></Add><Le><Arg Name="DeepBoundChl"/></Le></And>
                <And><Not><Arg Name="ReacquirePeak"/></Not></And>
                <And><Arg Name="ReportAtSurface"/></And>
                <And><Arg Name="ReportAtSurfaceDone"/></And>
                <Or><Arg Name="SampleOptionsSet"/><And><Arg Name="FlagPeakChlDepthSet"/></And><And><Not><IsNaN><Arg Name="DepDiffFromPeakChl"/>
                </IsNaN></Not></And><And><Not><Arg Name="FlagTargetDepthSet"/></Not></And><And><Arg Name="PeakChlDepthSet"/><Add><Arg Name="DepDiffFromPeakChl"/></Add><Ge><Arg Name="ShallowBoundChl"/></Ge></And><And><Arg Name="PeakChlDepthSet"/><Add><Arg Name="DepDiffFromPeakChl"/></Add><Le><Arg Name="DeepBoundChl"/></Le></And><And><Not><Arg Name="ReacquirePeak"/></Not></And><And><Not><Arg Name="ReportAtSurface"/></Not></And><And><Not><Arg Name="ReportAtSurfaceDone"/></Not></And></Or>
            </When>

            <Assign><Sequence/><Arg Name="DepthSet"/><Arg Name="PeakChlDepthSet"/><Add><Arg Name="DepDiffFromPeakChl"/></Add></Assign>

            <Assign><Sequence/><Arg Name="FlagTargetDepthSet"/><True/></Assign>

            <Assign><Sequence/><Arg Name="ReportAtSurface"/><Arg Name="ReportAtSurfaceToUse"/></Assign>

        </Aggregate>

        <Aggregate Id="SetFiringDepthRelativeToChlPeakClampedToShallowest">

            <When>
                <Arg Name="SampleOptionsSet"/>
                <And><Arg Name="FlagPeakChlDepthSet"/></And>
                <And><Not><IsNaN><Arg Name="DepDiffFromPeakChl"/>
                </IsNaN></Not></And>
                <And><Not><Arg Name="FlagTargetDepthSet"/></Not></And>
                <And><Arg Name="PeakChlDepthSet"/><Add><Arg Name="DepDiffFromPeakChl"/></Add><Lt><Arg Name="ShallowBoundChl"/></Lt></And>
                <And><Not><Arg Name="ReacquirePeak"/></Not></And>
                <And><Arg Name="ReportAtSurface"/></And>
                <And><Arg Name="ReportAtSurfaceDone"/></And>
                <Or><Arg Name="SampleOptionsSet"/><And><Arg Name="FlagPeakChlDepthSet"/></And><And><Not><IsNaN><Arg Name="DepDiffFromPeakChl"/>
                </IsNaN></Not></And><And><Not><Arg Name="FlagTargetDepthSet"/></Not></And><And><Arg Name="PeakChlDepthSet"/><Add><Arg Name="DepDiffFromPeakChl"/></Add><Lt><Arg Name="ShallowBoundChl"/></Lt></And><And><Not><Arg Name="ReacquirePeak"/></Not></And><And><Not><Arg Name="ReportAtSurface"/></Not></And><And><Not><Arg Name="ReportAtSurfaceDone"/></Not></And></Or>
            </When>

            <Assign><Sequence/><Arg Name="DepthSet"/><Arg Name="ShallowBoundChl"/></Assign>

            <Assign><Sequence/><Arg Name="FlagTargetDepthSet"/><True/></Assign>

            <Assign><Sequence/><Arg Name="ReportAtSurface"/><Arg Name="ReportAtSurfaceToUse"/></Assign>

        </Aggregate>

        <Aggregate Id="SetFiringDepthRelativeToChlPeakClampedToDeepest">

            <When>
                <Arg Name="SampleOptionsSet"/>
                <And><Arg Name="FlagPeakChlDepthSet"/></And>
                <And><Not><IsNaN><Arg Name="DepDiffFromPeakChl"/>
                </IsNaN></Not></And>
                <And><Not><Arg Name="FlagTargetDepthSet"/></Not></And>
                <And><Arg Name="PeakChlDepthSet"/><Add><Arg Name="DepDiffFromPeakChl"/></Add><Gt><Arg Name="DeepBoundChl"/></Gt></And>
                <And><Not><Arg Name="ReacquirePeak"/></Not></And>
                <And><Arg Name="ReportAtSurface"/></And>
                <And><Arg Name="ReportAtSurfaceDone"/></And>
                <Or><Arg Name="SampleOptionsSet"/><And><Arg Name="FlagPeakChlDepthSet"/></And><And><Not><IsNaN><Arg Name="DepDiffFromPeakChl"/>
                </IsNaN></Not></And><And><Not><Arg Name="FlagTargetDepthSet"/></Not></And><And><Arg Name="PeakChlDepthSet"/><Add><Arg Name="DepDiffFromPeakChl"/></Add><Gt><Arg Name="DeepBoundChl"/></Gt></And><And><Not><Arg Name="ReacquirePeak"/></Not></And><And><Not><Arg Name="ReportAtSurface"/></Not></And><And><Not><Arg Name="ReportAtSurfaceDone"/></Not></And></Or>
            </When>

            <Assign><Sequence/><Arg Name="DepthSet"/><Arg Name="DeepBoundChl"/></Assign>

            <Assign><Sequence/><Arg Name="FlagTargetDepthSet"/><True/></Assign>

            <Assign><Sequence/><Arg Name="ReportAtSurface"/><Arg Name="ReportAtSurfaceToUse"/></Assign>

        </Aggregate>

        <Aggregate Id="SetFiringDepthAbsolute">

            <When>
                <Arg Name="SampleOptionsSet"/>
                <And><Not><IsNaN><Arg Name="DepthDesignated"/>
                </IsNaN></Not></And>
                <And><Not><Arg Name="FlagTargetDepthSet"/></Not></And>
                <And><Arg Name="ReportAtSurface"/></And>
                <And><Arg Name="ReportAtSurfaceDone"/></And>
                <Or><Arg Name="SampleOptionsSet"/><And><Not><IsNaN><Arg Name="DepthDesignated"/>
                </IsNaN></Not></And><And><Not><Arg Name="FlagTargetDepthSet"/></Not></And><And><Not><Arg Name="ReportAtSurface"/></Not></And><And><Not><Arg Name="ReportAtSurfaceDone"/></Not></And></Or>
            </When>

            <Assign><Sequence/><Arg Name="DepthSet"/><Arg Name="DepthDesignated"/></Assign>

            <Assign><Sequence/><Arg Name="FlagTargetDepthSet"/><True/></Assign>

            <Assign><Sequence/><Arg Name="ReportAtSurface"/><Arg Name="ReportAtSurfaceToUse"/></Assign>

            <Assign><Sequence/><Arg Name="FlagGoDown"/><False/></Assign>

        </Aggregate>

        <Aggregate Id="FiringOnTemp">

            <When>
                <Arg Name="MissionStartCommsCompleted"/>
                <And><Arg Name="StartVerticalManeuver"/></And>
                <And><Arg Name="FlagTempSet"/></And>
                <And><Not><Arg Name="Surfacing"/></Not></And>
                <And><Not><Arg Name="FlagSamplingOngoing"/></Not></And>
                <And><Arg Name="CntSamples"/><Le><Arg Name="NumSamplers"/></Le></And>
                <And><Arg Name="SampleOptionsSet"/></And>
                <And><Not><Arg Name="SampleCompleted"/></Not></And>
            </When>

            <Assign><Sequence/><Arg Name="FlagSamplingOngoing"/><True/></Assign>

            <Assign><Sequence/><Arg Name="SampleCountIncreased"/><False/></Assign>

            <Syslog Severity="Important">Taking sample No.<Arg Name="CntSamples"/><Units:count/>. Target temp = <Arg Name="TempSet"/><Units:celsius/>.</Syslog>

            <Assign><Sequence/><Arg Name="ElapsedSinceStartOrLastSample"/><Units:hour/><Value>0</Value></Assign>

            <Aggregate Id="TriggerOnTemp">

                <Sequence/>

                <Call Id="WaitForDepthDampingDown" RefId="DampDown"/>

                <Call Id="Sampling" RefId="TriggerSampling"/>

                <Syslog Severity="Important">Sample No.<Arg Name="CntSamples"/><Units:count/> completed.</Syslog>

                <Assign><Sequence/><Arg Name="ElapsedSinceStartOrLastSample"/><Units:hour/><Value>0</Value></Assign>

                <Assign><Sequence/><Arg Name="FlagSamplingOngoing"/><False/></Assign>

                <Assign><Sequence/><Arg Name="SampleCompleted"/><True/></Assign>

<!-- Don't move the following line -->

                <Assign><Sequence/><Arg Name="SampleOptionsSet"/><False/></Assign>

                <Assign><Sequence/><Arg Name="ReportAtSurfaceDone"/><False/></Assign>

                <Assign><Sequence/><Arg Name="FlagTempSet"/><False/></Assign>

            </Aggregate>

            <Aggregate Id="FireOnTempSendData">

                <Sequence/>

                <When>
                    <Not><IsNaN><Arg Name="CartridgeType"/>
                    </IsNaN></Not>
                    <And><Arg Name="SampleCompleted"/></And>
                    <And><Arg Name="SendESPStatusAndData"/></And>
                    <And><Arg Name="CallSendData"/></And>
                </When>

                <Call Id="SendDataFireOnTemp" RefId="SendData"/>

                <Assign><Sequence/><Arg Name="CallSendData"/><False/></Assign>

            </Aggregate>

        </Aggregate>

        <Aggregate Id="FiringOnDepth">

            <When>
                <Arg Name="MissionStartCommsCompleted"/>
                <And><Arg Name="StartVerticalManeuver"/></And>
                <And><Arg Name="FlagTargetDepthSet"/></And>
                <And><Not><Arg Name="FlagGoUp"/></Not></And>
                <And><Not><Arg Name="FlagGoDown"/></Not></And>
                <And><Not><Arg Name="FlagSamplingOngoing"/></Not></And>
                <And><Arg Name="CntSamples"/><Le><Arg Name="NumSamplers"/></Le></And>
                <And><Arg Name="SampleOptionsSet"/></And>
                <And><Not><Arg Name="SampleCompleted"/></Not></And>
            </When>

            <Assign><Sequence/><Arg Name="FlagSamplingOngoing"/><True/></Assign>

            <Assign><Sequence/><Arg Name="SampleCountIncreased"/><False/></Assign>

            <Syslog Severity="Important">Taking sample No.<Arg Name="CntSamples"/><Units:count/>. Target depth = <Arg Name="DepthSet"/><Units:meter/>.</Syslog>

            <Assign><Sequence/><Arg Name="ElapsedSinceStartOrLastSample"/><Units:hour/><Value>0</Value></Assign>

            <Aggregate Id="TriggerOnDepth">

                <Call Id="Sampling" RefId="TriggerSampleAtDepth"/>

                <Syslog Severity="Important">Sample No.<Arg Name="CntSamples"/><Units:count/> completed.</Syslog>

                <Assign><Sequence/><Arg Name="ElapsedSinceStartOrLastSample"/><Units:hour/><Value>0</Value></Assign>

                <Assign><Sequence/><Arg Name="FlagSamplingOngoing"/><False/></Assign>

                <Assign><Sequence/><Arg Name="SampleCompleted"/><True/></Assign>

<!-- Don't move the following line -->

                <Assign><Sequence/><Arg Name="SampleOptionsSet"/><False/></Assign>

                <Assign><Sequence/><Arg Name="ReportAtSurfaceDone"/><False/></Assign>

                <Assign><Sequence/><Arg Name="FlagTargetDepthSet"/><False/></Assign>

            </Aggregate>

            <Aggregate Id="FireOnDepSendData">

                <Sequence/>

                <When>
                    <Not><IsNaN><Arg Name="CartridgeType"/>
                    </IsNaN></Not>
                    <And><Arg Name="SampleCompleted"/></And>
                    <And><Arg Name="SendESPStatusAndData"/></And>
                    <And><Arg Name="CallSendData"/></And>
                </When>

                <Call Id="SendDataFireOnDep" RefId="SendData"/>

                <Assign><Sequence/><Arg Name="CallSendData"/><False/></Assign>

            </Aggregate>

        </Aggregate>

        <Aggregate Id="ReportAtSurface">

            <When>
                <Not><Arg Name="FlagGoUp"/></Not>
                <And><Not><Arg Name="FlagGoDown"/></Not></And>
                <And><Not><Arg Name="FlagSamplingOngoing"/></Not></And>
                <And><Arg Name="CntSamples"/><Le><Arg Name="NumSamplers"/></Le></And>
                <And><Arg Name="SampleCompleted"/></And>
                <And><Arg Name="ReportAtSurface"/></And>
            </When>

            <Assign><Sequence/><Arg Name="Surfacing"/><True/></Assign>

<!-- Don't move the following lines -->

            <Assign><Sequence/><Arg Name="EnableSettingPeakDepth"/><True/></Assign>

            <Assign><Sequence/><Arg Name="FlagPeakChlDepthSet"/><False/></Assign>

            <Assign><Sequence/><Arg Name="FlagPeakChlTempSet"/><False/></Assign>

            <Syslog Severity="Important">Surfacing to report sampling results to shore.</Syslog>

            <Call Id="SurfaceToReport" RefId="NeedComms"/>

            <Assign><Sequence/><Arg Name="Surfacing"/><False/></Assign>

            <Assign><Sequence/><Arg Name="ReportAtSurfaceDone"/><True/></Assign>

            <Aggregate Id="SetFlagGoDownIfFindingPeakChlVertical_2">

                <Sequence/>

                <Break>
                    <Not><Arg Name="SampleAtPeakChl"/></Not>
                </Break>

                <Assign><Sequence/><Arg Name="FlagGoDown"/><True/></Assign>

                <Aggregate Id="SetDiveSpeedAfterReporting">

                    <Assign><Sequence/><Arg Name="SpeedApproachThenSample"/><Arg Name="SpeedInitialDive"/></Assign>

                    <Guidance:Wait>
                        <Sequence/>
                        <Setting><Guidance:Wait.duration/><Arg Name="InitialDiveDuration"/></Setting>
                    </Guidance:Wait>

                    <Assign><Sequence/><Arg Name="SpeedApproachThenSample"/><Arg Name="SpeedSampling"/></Assign>

                    <Assign><Sequence/><Arg Name="FlagInitialDiveSpeedSet"/><True/></Assign>

                </Aggregate>

            </Aggregate>

        </Aggregate>

        <Aggregate Id="IncreaseSampleCount">

            <When>
                <Arg Name="SampleCompleted"/>
                <And><Not><Arg Name="SendESPStatusAndData"/></Not></And>
                <Or><Arg Name="SampleCompleted"/><And><Arg Name="SendESPStatusAndData"/></And><And><Arg Name="SendDataAllCompleted"/></And></Or>
            </When>

            <Assign><Sequence/><Arg Name="CntSamples"/><Arg Name="CntSamples"/><Add><Units:count/> <Value>1</Value></Add></Assign>

            <Assign><Sequence/><Arg Name="SendDataCntSamplesCompleted"/><False/></Assign>

            <Assign><Sequence/><Arg Name="SendDataESPSampleNumberCompleted"/><False/></Assign>

            <Assign><Sequence/><Arg Name="SendDataESPCartridgeTypeCompleted"/><False/></Assign>

            <Assign><Sequence/><Arg Name="SendDataESPSampleVolumeCompleted"/><False/></Assign>

            <Assign><Sequence/><Arg Name="SendDataESPSampleDepCompleted"/><False/></Assign>

            <Assign><Sequence/><Arg Name="SendDataESPSampleTempCompleted"/><False/></Assign>

            <Assign><Sequence/><Arg Name="SendDataESPSampleChlCompleted"/><False/></Assign>

            <Assign><Sequence/><Arg Name="SendDataAllCompleted"/><False/></Assign>

            <Assign><Sequence/><Arg Name="CallSendData"/><True/></Assign>

            <Assign><Sequence/><Arg Name="TouchedDeepBoundESP"/><False/></Assign>

            <Assign><Sequence/><Arg Name="TouchedDeepBoundESPFlagSet"/><False/></Assign>

            <Assign><Sequence/><Arg Name="SampleCompleted"/><False/></Assign>

            <Assign><Sequence/><Arg Name="SampleCountIncreased"/><True/></Assign>

        </Aggregate>

    </Aggregate>

</Mission>
