<?xml version="1.0" encoding="UTF-8"?>
<messages language="en-US">
  <alarms category="vms" version="2018.0">
    <alarm majorcode="1" minorcode="6" message="VMSServer Connected {devicename}">
    </alarm>
    <alarm majorcode="1" minorcode="15" message="Cow Trapped. {devicename}">
    </alarm>
    <alarm majorcode="1" minorcode="105" message="VMSServer Disconnected {devicename}">
    </alarm>
    <alarm majorcode="1" minorcode="106" message="Invalid Configuration {devicename}">
    </alarm>
    <alarm majorcode="1" minorcode="110" message="Unknown Cow With Transponder {SupportingData1}. {devicename}">
    </alarm>
    <alarm majorcode="1" minorcode="111" message="Cow Not Identified. {devicename}">
    </alarm>
    <alarm majorcode="1" minorcode="123" message="Cow Escaped from Milking Station. {devicename}">
    </alarm>
    <alarm majorcode="1" minorcode="200" message="External Alarm to Milking Station {devicename} {SupportingData6}">
    </alarm>
    <alarm majorcode="1" minorcode="203" message="Milking Station Program Unexpectedly Terminated {devicename}">
    </alarm>
    <alarm majorcode="1" minorcode="204" message="Milking Station Program Restarted {devicename}">
    </alarm>
    <alarm majorcode="1" minorcode="205" message="Milking Station Power Failure {devicename}">
    </alarm>
    <alarm majorcode="1" minorcode="210" message="Self-test success: {SupportingData1}.{SupportingData2} {devicename}">
    </alarm>
    <alarm majorcode="1" minorcode="211" message="Self-test failure: {SupportingData1}.{SupportingData2} {devicename}">
    </alarm>
    <alarm majorcode="1" minorcode="212" message="Many self tests are performed in a short time">
    </alarm>
    <alarm majorcode="1" minorcode="303" message="Scheduled cleaning NOT started {devicename}">
    </alarm>
    <alarm majorcode="1" minorcode="312" message="Unexpected High Yield for Cup {SupportingData1}. Expected {SupportingData2}, got {SupportingData3} {devicename}">
      <property id="SupportingData2" unit="yield"/>
      <property id="SupportingData3" unit="yield"/>
    </alarm>
    <alarm majorcode="1" minorcode="315" message="Unexpected Low Yield for Cup {SupportingData1}. Expected {SupportingData2}, got {SupportingData3} {devicename}">
      <property id="SupportingData2" unit="yield"/>
      <property id="SupportingData3" unit="yield"/>
    </alarm>
    <alarm majorcode="1" minorcode="316" message="TCA cleaning hasn't finished. {devicename}">
    </alarm>
    <alarm majorcode="1" minorcode="317" message="Configuration changes requires the milking station to be rebooted">
    </alarm>
    <alarm majorcode="1" minorcode="318" message="Idle stall cleaning NOT started {devicename}">
    </alarm>
    <alarm majorcode="1" minorcode="319" message="Milk truck cleaning NOT started {devicename}">
    </alarm>
    <alarm majorcode="1" minorcode="320" message="Cow preset cleaning NOT started {devicename}">
    </alarm>
    <alarm majorcode="1" minorcode="321" message="Divert cleaning NOT started {devicename}">
    </alarm>
    <alarm majorcode="1" minorcode="322" message="External cleaning NOT started {devicename}">
    </alarm>
    <alarm majorcode="1" minorcode="323" message="Manual cleaning NOT started {devicename}">
    </alarm>
    <alarm majorcode="1" minorcode="329" message="Divert Mode ended by tank cow. The cow is milked">
    </alarm>
    <alarm majorcode="1" minorcode="330" message="Divert Mode ended by tank cow. The cow is not milked.">
    </alarm>
    <alarm majorcode="1" minorcode="331" message="Divert Mode ended by scheduled cleaning">
    </alarm>
    <alarm majorcode="1" minorcode="332" message="Divert Mode ended by idle stall cleaning">
    </alarm>
    <alarm majorcode="1" minorcode="333" message="Divert Mode ended by milk truck cleaning">
    </alarm>
    <alarm majorcode="1" minorcode="334" message="Divert Mode ended by external cleaning">
    </alarm>
    <alarm majorcode="1" minorcode="335" message="Divert Mode ended by hardware error">
    </alarm>
    <alarm majorcode="1" minorcode="339" message="Cleaning failed. Divert Mode ended.">
    </alarm>
    <alarm majorcode="1" minorcode="340" message="Cleaning failed">
    </alarm>
    <alarm majorcode="1" minorcode="341" message="Cleaning aborted by user">
    </alarm>
    <alarm majorcode="2" minorcode="57" message="Teat not found for cleaning {devicename}">
    </alarm>
    <alarm majorcode="2" minorcode="102" message="Endpoint Calibration Failed {devicename}">
    </alarm>
    <alarm majorcode="2" minorcode="113" message="Camera is Not Responding {devicename}">
    </alarm>
    <alarm majorcode="2" minorcode="132" message="IO system hardware not properly connected. {devicename}">
    </alarm>
    <alarm majorcode="2" minorcode="136" message="Internal Axis Controller Error">
    </alarm>
    <alarm majorcode="2" minorcode="140" message="Hydraulic Pump – Oil Temp Too High {devicename}">
    </alarm>
    <alarm majorcode="2" minorcode="141" message="Hydraulic Pump - Oil Level Low {devicename}">
    </alarm>
    <alarm majorcode="2" minorcode="142" message="Hydraulic Pump – Oil Pressure Too High {devicename}">
    </alarm>
    <alarm majorcode="2" minorcode="143" message="Hydraulic Pump – Oil Pressure Low {devicename}">
    </alarm>
    <alarm majorcode="2" minorcode="146" message="Hydraulic Pump – Oil Temp Too Low {devicename}">
    </alarm>
    <alarm majorcode="2" minorcode="204" message="AxisController Not Connected {devicename}">
    </alarm>
    <alarm majorcode="2" minorcode="208" message="Invalid Teat Cup Positions. Not calibrated? {devicename}">
    </alarm>
    <alarm majorcode="2" minorcode="209" message="Invalid Teat Cleaner Cup Position. Not calibrated? {devicename}">
    </alarm>
    <alarm majorcode="2" minorcode="308" message="Dead Band Calibration Failed {devicename}">
    </alarm>
    <alarm majorcode="2" minorcode="400" message="Camera Cleaning Failed {devicename}">
    </alarm>
    <alarm majorcode="2" minorcode="401" message="Hydraulic Pump – Cannot reach target pressure {devicename}">
    </alarm>
    <alarm majorcode="2" minorcode="402" message="Failed Fetching Teat Cup {SupportingData1} {devicename}">
    </alarm>
    <alarm majorcode="2" minorcode="403" message="Failed Fetching Teat Cleaner {devicename}">
    </alarm>
    <alarm majorcode="2" minorcode="404" message="Not All Teats Disinfected {devicename}">
    </alarm>
    <alarm majorcode="2" minorcode="405" message="Failed Attaching Teat Cup {SupportingData1} {devicename}">
    </alarm>
    <alarm majorcode="2" minorcode="406" message="Cow Position Sensor Disabled {devicename}">
    </alarm>
    <alarm majorcode="2" minorcode="409" message="Teat {SupportingData1} outside of permitted robot movement area {devicename}">
      <property id="SupportingData1" unit="MSTeatMaskString"/>
    </alarm>
    <alarm majorcode="2" minorcode="410" message="Safety switch active. Robot arm is blocked. {devicename}">
    </alarm>
    <alarm majorcode="2" minorcode="411" message="Robot arm not operational {devicename}">
    </alarm>
    <alarm majorcode="2" minorcode="412" message="Cow position sensor not calibrated {devicename}">
    </alarm>
    <alarm majorcode="2" minorcode="413" message="NECA board lost communication with the CPU or MIO cards {devicename}">
    </alarm>
    <alarm majorcode="2" minorcode="414" message="Bad io configuration {devicename}">
    </alarm>
    <alarm majorcode="2" minorcode="415" message="ioman io system error {devicename}">
    </alarm>
    <alarm majorcode="2" minorcode="416" message="No movement detected when expected, joint: {SupportingData1} {devicename}">
    </alarm>
    <alarm majorcode="2" minorcode="417" message="Axis moves in wrong direction, joint: {SupportingData1} {devicename}">
    </alarm>
    <alarm majorcode="2" minorcode="418" message="Hardware suspended {devicename}">
    </alarm>
    <alarm majorcode="2" minorcode="419" message="Failed changing yaw {devicename}">
    </alarm>
    <alarm majorcode="2" minorcode="420" message="Robot arm needs endpoint calibration {devicename}">
    </alarm>
    <alarm majorcode="2" minorcode="421" message="Robot arm needs deadband calibration {devicename}">
    </alarm>
    <alarm majorcode="2" minorcode="422" message="Unexpected signal from gripper sensor {devicename}">
    </alarm>
    <alarm majorcode="2" minorcode="423" message="Unusual dead zone calibration values, joint: {SupportingData1} {devicename}">
    </alarm>
    <alarm majorcode="2" minorcode="424" message="Encoder pulses lost, joint: {SupportingData1} {devicename}">
    </alarm>
    <alarm majorcode="2" minorcode="425" message="Mixed attach: Cup {SupportingData1} will be used for {SupportingData2}. {devicename}">
      <property id="SupportingData2" unit="MSTeatMaskString"/>
    </alarm>
    <alarm majorcode="3" minorcode="100" message="Kick off (Exp Yield {SupportingData1}, Yield {SupportingData2}) {devicename}">
      <property id="SupportingData1" unit="yield"/>
      <property id="SupportingData2" unit="yield"/>
    </alarm>
    <alarm majorcode="3" minorcode="105" message="Flow Too High {SupportingData1} from Cup {SupportingData2} {devicename}">
    </alarm>
    <alarm majorcode="3" minorcode="106" message="Yield Too High {SupportingData1} from Cup {SupportingData2} {devicename}">
      <property id="SupportingData1" unit="yield"/>
    </alarm>
    <alarm majorcode="3" minorcode="114" message="Milk Meter {SupportingData1} Conductivity ({SupportingData2}) Out of Range ({SupportingData3} - {SupportingData4}) {devicename}">
    </alarm>
    <alarm majorcode="3" minorcode="115" message="Conductivity differs ({SupportingData1}) too much ({SupportingData2}) between meters {devicename}">
    </alarm>
    <alarm majorcode="3" minorcode="118" message="Milk Meter {SupportingData1} is having problems measuring blood {devicename}">
    </alarm>
    <alarm majorcode="3" minorcode="119" message="Too many milkings with high blood value {devicename}">
    </alarm>
    <alarm majorcode="3" minorcode="200" message="Kick off cup {SupportingData1} (Exp Yield {SupportingData2}, Yield {SupportingData3}) {devicename}">
      <property id="SupportingData2" unit="yield"/>
      <property id="SupportingData3" unit="yield"/>
    </alarm>
    <alarm majorcode="3" minorcode="202" message="No Yield from Cup {SupportingData1} {devicename}">
    </alarm>
    <alarm majorcode="4" minorcode="1" message="Cow Departed Stall. {devicename}">
    </alarm>
    <alarm majorcode="4" minorcode="100" message="Failed to Close Gate. {devicename}">
    </alarm>
    <alarm majorcode="4" minorcode="105" message="Failed to Release Cow. Cow in Stall. {devicename}">
    </alarm>
    <alarm majorcode="4" minorcode="106" message="Failed to Close Gate. Cow in Stall. {devicename}">
    </alarm>
    <alarm majorcode="4" minorcode="109" message="Failed to close Floor Flush Valve. {devicename}">
    </alarm>
    <alarm majorcode="4" minorcode="118" message="Unknown Cow with Transponder {SupportingData6}. {devicename}">
    </alarm>
    <alarm majorcode="4" minorcode="119" message="Cow in Area Too Long {SupportingData6}">
    </alarm>
    <alarm majorcode="4" minorcode="120" message="Cow has Arrived in Area {SupportingData6}">
    </alarm>
    <alarm majorcode="4" minorcode="121" message="Cow has Locked Area {SupportingData6}">
    </alarm>
    <alarm majorcode="4" minorcode="122" message="Cow has Unlocked Area {SupportingData6}">
    </alarm>
    <alarm majorcode="4" minorcode="125" message="Gate changed to Manual Mode. Gate: {SupportingData6}">
    </alarm>
    <alarm majorcode="4" minorcode="126" message="Gate has been in Manual for more than {SupportingData1} minutes. Gate: {SupportingData6}">
    </alarm>
    <alarm majorcode="4" minorcode="127" message="Gate has been Idle for more than {SupportingData1} minutes. Gate: {SupportingData6}">
    </alarm>
    <alarm majorcode="4" minorcode="128" message="Too Many Animals in Area '{SupportingData6}'. Animals: {SupportingData1}, Max.: {SupportingData2}">
    </alarm>
    <alarm majorcode="4" minorcode="300" message="The entry gate did not become fully open within {SupportingData1} seconds according to the sensor. {devicename}">
    </alarm>
    <alarm majorcode="5" minorcode="13" message="Tank can Accept Milk {devicename}">
    </alarm>
    <alarm majorcode="5" minorcode="14" message="Filter Change Requested {devicename}">
    </alarm>
    <alarm majorcode="5" minorcode="15" message="Filter Change Granted {devicename}">
    </alarm>
    <alarm majorcode="5" minorcode="16" message="Filter Change Denied {devicename}">
    </alarm>
    <alarm majorcode="5" minorcode="17" message="Filter Change Completed {devicename}">
    </alarm>
    <alarm majorcode="5" minorcode="102" message="Tank Valve in Wrong Position. {devicename}">
    </alarm>
    <alarm majorcode="5" minorcode="103" message="Cleaning Not Completed {devicename}">
    </alarm>
    <alarm majorcode="5" minorcode="104" message="Cannot Accept Milk to Tank {devicename}">
    </alarm>
    <alarm majorcode="5" minorcode="106" message="Timeout for Milk Truck to Leave. {devicename}">
    </alarm>
    <alarm majorcode="5" minorcode="107" message="Timeout for Tank Cleaning. {devicename}">
    </alarm>
    <alarm majorcode="5" minorcode="109" message="Good milk valve in wrong position">
    </alarm>
    <alarm majorcode="5" minorcode="110" message="Divert milk valve in wrong position">
    </alarm>
    <alarm majorcode="5" minorcode="113" message="Timeout Emptying Receiver. {devicename}">
    </alarm>
    <alarm majorcode="5" minorcode="128" message="Timeout Changing Milk Filter {devicename}">
    </alarm>
    <alarm majorcode="5" minorcode="134" message="Tank Valve Error. Sensor C{SupportingData1} is {SupportingData2}, should be {SupportingData3} {devicename}">
    </alarm>
    <alarm majorcode="5" minorcode="135" message="System Cleaning Required {devicename}">
    </alarm>
    <alarm majorcode="5" minorcode="207" message="BBB Valve ({SupportingData1}) in Wrong Position {devicename}">
    </alarm>
    <alarm majorcode="5" minorcode="208" message="Good Milk Bleed Valve Opened Unexpectedly {devicename}">
    </alarm>
    <alarm majorcode="5" minorcode="250" message="No Water in Steam Pre-Tank {devicename}">
    </alarm>
    <alarm majorcode="5" minorcode="253" message="Timeout Filling Water in Steam Boiler {devicename}">
    </alarm>
    <alarm majorcode="5" minorcode="254" message="No Steam Pressure within time {devicename}">
    </alarm>
    <alarm majorcode="5" minorcode="501" message="TankMilk valve slow to open {devicename}">
    </alarm>
    <alarm majorcode="5" minorcode="502" message="TankClean valve slow to open {devicename}">
    </alarm>
    <alarm majorcode="5" minorcode="503" message="TankMilk valve slow to close {devicename}">
    </alarm>
    <alarm majorcode="5" minorcode="504" message="TankClean valve slow to close {devicename}">
    </alarm>
    <alarm majorcode="5" minorcode="511" message="TankMilk valve failed to open {devicename}">
    </alarm>
    <alarm majorcode="5" minorcode="512" message="TankClean valve failed to open {devicename}">
    </alarm>
    <alarm majorcode="5" minorcode="513" message="TankMilk valve failed to close {devicename}">
    </alarm>
    <alarm majorcode="5" minorcode="514" message="TankClean valve failed to close {devicename}">
    </alarm>
    <alarm majorcode="5" minorcode="521" message="TankMilk is open but should be closed {devicename}">
    </alarm>
    <alarm majorcode="5" minorcode="522" message="TankClean is open but should be closed {devicename}">
    </alarm>
    <alarm majorcode="5" minorcode="523" message="TankMilk is closed but should be open {devicename}">
    </alarm>
    <alarm majorcode="5" minorcode="524" message="TankClean is closed but should be open {devicename}">
    </alarm>
    <alarm majorcode="6" minorcode="0" message="OK">
    </alarm>
    <alarm majorcode="6" minorcode="1" message="AlcomIO Board Reset Node {SupportingData1} Bus {SupportingData2}">
    </alarm>
    <alarm majorcode="6" minorcode="2" message="Vmsioman init done">
    </alarm>
    <alarm majorcode="6" minorcode="100" message="Short Circuit on alcomio Node {SupportingData1}">
    </alarm>
    <alarm majorcode="6" minorcode="101" message="Alcom Error {SupportingData1} Node {SupportingData2}:{SupportingData3} Bus {SupportingData4}">
    </alarm>
    <alarm majorcode="6" minorcode="102" message="Alcom Message Invalid Node {SupportingData1}">
    </alarm>
    <alarm majorcode="6" minorcode="103" message="Bad format on Alcom Message">
    </alarm>
    <alarm majorcode="6" minorcode="104" message="Vmsio Interrupt ({SupportingData1})">
    </alarm>
    <alarm majorcode="6" minorcode="105" message="Invalid Alcom Bus Number {SupportingData1}">
    </alarm>
    <alarm majorcode="6" minorcode="106" message="Lost Token on Alcomio Node {SupportingData1}">
    </alarm>
    <alarm majorcode="6" minorcode="107" message="VmsIo board generated reset">
    </alarm>
    <alarm majorcode="6" minorcode="108" message="VmsIo pic has wrong version">
    </alarm>
    <alarm majorcode="6" minorcode="109" message="VmsIo board wrong version is {SupportingData1}">
    </alarm>
    <alarm majorcode="6" minorcode="110" message="Unexpected Sensor Status Node {SupportingData1} Sub {SupportingData2}">
    </alarm>
    <alarm majorcode="6" minorcode="111" message="I/O Blocked">
    </alarm>
    <alarm majorcode="6" minorcode="112" message="Short Circuit on Valve Axis X={SupportingData1} Y={SupportingData2} Z={SupportingData3}">
    </alarm>
    <alarm majorcode="6" minorcode="201" message="Failed to Synchronize Milking Station with DelPro Gateway">
    </alarm>
    <alarm majorcode="6" minorcode="202" message="Failed to Synchronize Animal with DelPro Gateway">
    </alarm>
    <alarm majorcode="9" minorcode="6" message="Milking Station Idle for {SupportingData1} minutes">
    </alarm>
    <alarm majorcode="9" minorcode="11" message="Milk Diverted due to Elevated Conductivity">
    </alarm>
    <alarm majorcode="9" minorcode="12" message="Milk Diverted due to High Blood Level">
    </alarm>
    <alarm majorcode="9" minorcode="15" message="Blood level in milk is over {SupportingData1} ppm">
    </alarm>
    <alarm majorcode="9" minorcode="16" message="Cannot Connect to Milking Station">
    </alarm>
    <alarm majorcode="9" minorcode="17" message="OCC value is above {SupportingData1}">
    </alarm>
    <alarm majorcode="9" minorcode="18" message="Milk Diverted Due to MDi Level">
    </alarm>
    <alarm majorcode="9" minorcode="19" message="MDi level in milk is over {SupportingData1}">
    </alarm>
    <alarm majorcode="9" minorcode="22" message="Cannot Connect to Gate Controller">
    </alarm>
    <alarm majorcode="9" minorcode="23" message="Cannot Connect to IO Config Coordinator">
    </alarm>
    <alarm majorcode="9" minorcode="26" message="Cannot connect to loop cleaning device">
    </alarm>
    <alarm majorcode="12" minorcode="0" message="Cooling Recovered OK">
    </alarm>
    <alarm majorcode="12" minorcode="1" message="BCC Low Cleaning Water Temperature">
    </alarm>
    <alarm majorcode="12" minorcode="2" message="BCC Detergent Tank Empty">
    </alarm>
    <alarm majorcode="12" minorcode="3" message="BCC Drain Fail. Cannot Empty Buffer Tank">
    </alarm>
    <alarm majorcode="12" minorcode="4" message="BCC No Water Supply During Cleaning">
    </alarm>
    <alarm majorcode="12" minorcode="5" message="BCC Checksum Error in Parameter Memory">
    </alarm>
    <alarm majorcode="12" minorcode="6" message="BCC Checksum Error in Program Memory">
    </alarm>
    <alarm majorcode="12" minorcode="7" message="BCC Tank Filled Completely; Alarm Level Reached">
    </alarm>
    <alarm majorcode="12" minorcode="8" message="BCC Too Much Time Without A Cleaning">
    </alarm>
    <alarm majorcode="12" minorcode="9" message="BCC Valve in Wrong Position">
    </alarm>
    <alarm majorcode="12" minorcode="10" message="BCC CPU Watchdog Reset">
    </alarm>
    <alarm majorcode="12" minorcode="11" message="BCC Milk Temperature Too High">
    </alarm>
    <alarm majorcode="12" minorcode="12" message="BCC Milk in Buffer Tank Too Long">
    </alarm>
    <alarm majorcode="12" minorcode="13" message="BCC Power Failure">
    </alarm>
    <alarm majorcode="12" minorcode="14" message="BCC Milk Temperature Too Low">
    </alarm>
    <alarm majorcode="12" minorcode="15" message="ICS Tank Alarm from Non-FCC Tank">
    </alarm>
    <alarm majorcode="12" minorcode="16" message="BCC Temperature Sensor Failed">
    </alarm>
    <alarm majorcode="12" minorcode="17" message="BCC Cooling Not Started On Time">
    </alarm>
    <alarm majorcode="12" minorcode="18" message="ICS BBB valves in Wrong Position">
    </alarm>
    <alarm majorcode="12" minorcode="19" message="BCC Short Circuit in Detergent Dosing Device">
    </alarm>
    <alarm majorcode="12" minorcode="20" message="ICS Cleaning Stopped Because Tank BBB Not In Position">
    </alarm>
    <alarm majorcode="12" minorcode="21" message="FCC Low Cleaning Water Temperature">
    </alarm>
    <alarm majorcode="12" minorcode="22" message="FCC Detergent Tank Empty">
    </alarm>
    <alarm majorcode="12" minorcode="23" message="FCC Short Circuit in Detergent Detection">
    </alarm>
    <alarm majorcode="12" minorcode="24" message="FCC Water Filling Timeout">
    </alarm>
    <alarm majorcode="12" minorcode="25" message="FCC Checksum Error in Parameter Memory">
    </alarm>
    <alarm majorcode="12" minorcode="26" message="FCC Checksum Error in Program Memory">
    </alarm>
    <alarm majorcode="12" minorcode="27" message="FCC Tank Not Empty After Cleaning">
    </alarm>
    <alarm majorcode="12" minorcode="28" message="FCC Possible Mixing of Detergents">
    </alarm>
    <alarm majorcode="12" minorcode="29" message="FCC Power Failure During Cleaning">
    </alarm>
    <alarm majorcode="12" minorcode="30" message="FCC Outlet Valve Closed During Cleaning">
    </alarm>
    <alarm majorcode="12" minorcode="31" message="FCC CPU Watchdog Reset">
    </alarm>
    <alarm majorcode="12" minorcode="32" message="FCC Timeout During Cleaning, Pump Not Running">
    </alarm>
    <alarm majorcode="12" minorcode="33" message="FCC Milk Temperature Too Low">
    </alarm>
    <alarm majorcode="12" minorcode="34" message="FCC Cooling Time Too Long">
    </alarm>
    <alarm majorcode="12" minorcode="35" message="FCC Power Failure During Cooling">
    </alarm>
    <alarm majorcode="12" minorcode="36" message="FCC Temperature Sensor Failed">
    </alarm>
    <alarm majorcode="12" minorcode="37" message="FCC Cooling Not Started On Time">
    </alarm>
    <alarm majorcode="12" minorcode="38" message="FCC Agitator Not Running When Expected">
    </alarm>
    <alarm majorcode="12" minorcode="39" message="FCC Too Much Time Without A Cleaning">
    </alarm>
    <alarm majorcode="12" minorcode="40" message="FCC Pickup Alarm. Milk Suspect. Milk Must Be Checked Before Pickup">
    </alarm>
    <alarm majorcode="12" minorcode="41" message="FCC Cleaning Water Too Hot">
    </alarm>
    <alarm majorcode="12" minorcode="42" message="FCC Dosing Pump Feedback Failure">
    </alarm>
    <alarm majorcode="12" minorcode="43" message="FCC Low Level Sensor Failure">
    </alarm>
    <alarm majorcode="12" minorcode="44" message="FCC High Level Sensor Failure">
    </alarm>
    <alarm majorcode="12" minorcode="45" message="FCC Heating Timeout During Cleaning">
    </alarm>
    <alarm majorcode="12" minorcode="46" message="FCC BBB Valve Failure">
    </alarm>
    <alarm majorcode="12" minorcode="47" message="High level of milk in the tank! Make sure that milk will be collected soon otherwise the tank can overflow">
    </alarm>
    <alarm majorcode="12" minorcode="48" message="GSM configuration error">
    </alarm>
    <alarm majorcode="12" minorcode="49" message="No CANIO connection">
    </alarm>
    <alarm majorcode="12" minorcode="70" message="Major Alarm on Milk Tank">
    </alarm>
    <alarm majorcode="12" minorcode="71" message="Alarm on Milk Tank">
    </alarm>
    <alarm majorcode="12" minorcode="72" message="Electrical Fault on Milk Room Controller">
    </alarm>
    <alarm majorcode="12" minorcode="73" message="Outlet Valve Stuck in Open Position">
    </alarm>
    <alarm majorcode="12" minorcode="74" message="Power Supply Problem in Milk Room">
    </alarm>
    <alarm majorcode="12" minorcode="75" message="Alarm on Milk Room Controller">
    </alarm>
    <alarm majorcode="12" minorcode="76" message="Major Alarm on Milk Room Controller">
    </alarm>
    <alarm majorcode="12" minorcode="77" message="Outlet Valve on Buffer Tank Not Closed">
    </alarm>
    <alarm majorcode="12" minorcode="78" message="Alarm on Buffer Tank">
    </alarm>
    <alarm majorcode="12" minorcode="79" message="Buffer Tank Almost Full">
    </alarm>
    <alarm majorcode="12" minorcode="80" message="Buffer Tank Full">
    </alarm>
    <alarm majorcode="12" minorcode="81" message="Receive All Notifications">
    </alarm>
    <alarm majorcode="12" minorcode="82" message="Receive All Alarms">
    </alarm>
    <alarm majorcode="12" minorcode="83" message="Warning! - Tank Almost Full">
    </alarm>
    <alarm majorcode="12" minorcode="84" message="Error! – Tank Full">
    </alarm>
    <alarm majorcode="12" minorcode="85" message="Please Move Hose to Cleaning Position">
    </alarm>
    <alarm majorcode="12" minorcode="86" message="Please Move Hose to Milking Position">
    </alarm>
    <alarm majorcode="12" minorcode="87" message="No Communication from MRC to Tank">
    </alarm>
    <alarm majorcode="12" minorcode="88" message="No Communication from MRC to Second Tank">
    </alarm>
    <alarm majorcode="12" minorcode="89" message="No Communication from MRC to Master VMS">
    </alarm>
    <alarm majorcode="12" minorcode="90" message="Air Pressure Too Low in Milk Room">
    </alarm>
    <alarm majorcode="12" minorcode="91" message="Milk Temperature Too Low in Milk Room">
    </alarm>
    <alarm majorcode="12" minorcode="92" message="Milk Temperature Too High in Milk Room">
    </alarm>
    <alarm majorcode="12" minorcode="93" message="Milk Room Cleaner Alarm">
    </alarm>
    <alarm majorcode="12" minorcode="94" message="BBB Failure">
    </alarm>
    <alarm majorcode="12" minorcode="95" message="Loop Cleaner Alarm">
    </alarm>
    <alarm majorcode="12" minorcode="96" message="Warning! Filter Change Taking Too Long - Forgot to Release?">
    </alarm>
    <alarm majorcode="12" minorcode="97" message="Warning: hose change has taken too long - check switch">
    </alarm>
    <alarm majorcode="12" minorcode="98" message="Cannot detect Milk in buffer tank">
    </alarm>
    <alarm majorcode="12" minorcode="99" message="PumpOver motor current sensor is broken">
    </alarm>
    <alarm majorcode="12" minorcode="100" message="Buffer tank should be empty but failing to detect it">
    </alarm>
    <alarm majorcode="12" minorcode="101" message="Truckdriver probably forgot to start a cleaning">
    </alarm>
    <alarm majorcode="12" minorcode="102" message="You have an alarm on the primary tank">
    </alarm>
    <alarm majorcode="12" minorcode="103" message="You have an alarm on the secondary tank/BVV">
    </alarm>
    <alarm majorcode="12" minorcode="255" message="Communication Lost With Tank">
    </alarm>
    <alarm majorcode="13" minorcode="100" message="VP Overheat">
    </alarm>
    <alarm majorcode="13" minorcode="105" message="VP Temperature Sensor Failure">
    </alarm>
    <alarm majorcode="13" minorcode="106" message="VP-B temperature sensor loss">
    </alarm>
    <alarm majorcode="13" minorcode="107" message="VP-C temperature sensor loss">
    </alarm>
    <alarm majorcode="13" minorcode="110" message="VP Pump Seal Temp High (clogged pump)">
    </alarm>
    <alarm majorcode="13" minorcode="115" message="VP Max Number of Failed Cleanings Exceeded">
    </alarm>
    <alarm majorcode="13" minorcode="125" message="VP Out of Oil">
    </alarm>
    <alarm majorcode="13" minorcode="126" message="VP-B out of oil">
    </alarm>
    <alarm majorcode="13" minorcode="127" message="VP-C out of oil">
    </alarm>
    <alarm majorcode="13" minorcode="150" message="VP General Alarm">
    </alarm>
    <alarm majorcode="13" minorcode="200" message="VP Pump Seal at High Temp Warning Level">
    </alarm>
    <alarm majorcode="13" minorcode="205" message="VP Vacuum Over Setpoint">
    </alarm>
    <alarm majorcode="13" minorcode="210" message="VP MVR or System Leakage Fault">
    </alarm>
    <alarm majorcode="13" minorcode="215" message="VP No Cleaning">
    </alarm>
    <alarm majorcode="13" minorcode="220" message="VP Cleaning Temp Problem">
    </alarm>
    <alarm majorcode="13" minorcode="225" message="VP No Cooling">
    </alarm>
    <alarm majorcode="13" minorcode="230" message="VP Cooling Temperature Problem">
    </alarm>
    <alarm majorcode="13" minorcode="235" message="VP Cooling Too Often">
    </alarm>
    <alarm majorcode="13" minorcode="236" message="CheckPumpA">
    </alarm>
    <alarm majorcode="13" minorcode="237" message="CheckPumpB">
    </alarm>
    <alarm majorcode="13" minorcode="238" message="CheckPumpC">
    </alarm>
    <alarm majorcode="13" minorcode="239" message="Vacuum Sensor Signal Out of Range">
    </alarm>
    <alarm majorcode="13" minorcode="240" message="VP No Vacuum on High Speed">
    </alarm>
    <alarm majorcode="13" minorcode="245" message="VP Low Oil Level">
    </alarm>
    <alarm majorcode="13" minorcode="246" message="VP-B low oil level">
    </alarm>
    <alarm majorcode="13" minorcode="247" message="VP-C low oil level">
    </alarm>
    <alarm majorcode="13" minorcode="250" message="VP Time for Major Service">
    </alarm>
    <alarm majorcode="13" minorcode="251" message="VP Time for Minor Service">
    </alarm>
    <alarm majorcode="15" minorcode="302" message="No detergent pumps are configured in the VC. {devicename}">
    </alarm>
    <alarm majorcode="15" minorcode="307" message="Water is not available for teat cleaning. {devicename}">
    </alarm>
    <alarm majorcode="15" minorcode="309" message="Failed to prepare cleaning. {devicename}">
    </alarm>
    <alarm majorcode="15" minorcode="310" message="Cleaning Failed. {devicename}">
    </alarm>
    <alarm majorcode="15" minorcode="311" message="Cupflush Failed. {devicename}">
    </alarm>
    <alarm majorcode="15" minorcode="313" message="Teat Cleaner Waste Tank Drain Failed. {devicename}">
    </alarm>
    <alarm majorcode="15" minorcode="317" message="Teat Cleaner Waste Tank Full. {devicename}">
    </alarm>
    <alarm majorcode="15" minorcode="318" message="Too low teat cleaning temperature: {SupportingData1} ({SupportingData2}-{SupportingData3}). {devicename}">
    </alarm>
    <alarm majorcode="15" minorcode="321" message="Too high teat cleaning temperature: {SupportingData1} ({SupportingData2}-{SupportingData3}). {devicename}">
    </alarm>
    <alarm majorcode="15" minorcode="322" message="Possible hardware error during backflush. Do NOT continue milking until a successful backflush has been performed!. {devicename}">
    </alarm>
    <alarm majorcode="15" minorcode="401" message="Vacuum Not Sensed at Start of Cleaning. {devicename}">
    </alarm>
    <alarm majorcode="15" minorcode="402" message="Teat Cup {SupportingData1} not on Jetter. {devicename}">
    </alarm>
    <alarm majorcode="15" minorcode="403" message="Impossible to get water from Trough. Cleaning Cycle {SupportingData1}. {devicename}">
    </alarm>
    <alarm majorcode="15" minorcode="404" message="Cannot Empty Trough. {devicename}">
    </alarm>
    <alarm majorcode="15" minorcode="405" message="Cannot Empty Receiver. Cleaning Cycle {SupportingData1}. {devicename}">
    </alarm>
    <alarm majorcode="15" minorcode="406" message="Cannot Empty Receiver. {devicename}">
    </alarm>
    <alarm majorcode="15" minorcode="407" message="No Water Entering Trough. {devicename}">
    </alarm>
    <alarm majorcode="15" minorcode="408" message="No Water Entering Receiver. Cleaning Cycle {SupportingData1}, cause # {SupportingData2}. {devicename}">
    </alarm>
    <alarm majorcode="15" minorcode="409" message="Program was aborted by incident {SupportingData1}. {devicename}">
    </alarm>
    <alarm majorcode="15" minorcode="410" message="Teat prep cleaning circuit not rinsed, washtrough not filled. {devicename}">
    </alarm>
    <alarm majorcode="15" minorcode="412" message="Milk valves: V{SupportingData1} in wrong position. Valve was set to {SupportingData2}, sensor returned: {SupportingData3}. {devicename}">
    </alarm>
    <alarm majorcode="15" minorcode="413" message="Circulation Start Temperature Incorrect. {devicename}">
    </alarm>
    <alarm majorcode="15" minorcode="414" message="Circulation Final Return Temperature {SupportingData1} Too Low. {devicename}">
      <property id="SupportingData1" unit="celsius"/>
    </alarm>
    <alarm majorcode="15" minorcode="415" message="Water Not Leaving Trough. {devicename}">
    </alarm>
    <alarm majorcode="15" minorcode="416" message="Pre-Rinse Final Temperature {SupportingData1} Too High. {devicename}">
      <property id="SupportingData1" unit="celsius"/>
    </alarm>
    <alarm majorcode="15" minorcode="417" message="Circulation Not Started. Minimum Water Volume Not Reached. {devicename}">
    </alarm>
    <alarm majorcode="15" minorcode="418" message="Block or Bleed valve V{SupportingData1} Sensor Not Working. {devicename}">
    </alarm>
    <alarm majorcode="15" minorcode="419" message="Teat Cup {SupportingData1} not on Jetter. {devicename}">
    </alarm>
    <alarm majorcode="15" minorcode="420" message="Teat Cup {SupportingData1} not on Jetter. {devicename}">
    </alarm>
    <alarm majorcode="15" minorcode="421" message="No Vacuum Sensed to Start Cleaning. {devicename}">
    </alarm>
    <alarm majorcode="15" minorcode="422" message="Cleaning Valve V{SupportingData1} Sensor value is: {SupportingData2} should be: {SupportingData3}. {devicename}">
    </alarm>
    <alarm majorcode="15" minorcode="423" message="No Water Entering Trough. Cleaning Cycle {SupportingData1}. {devicename}">
    </alarm>
    <alarm majorcode="15" minorcode="424" message="Receiver Sprayer Flow Not Sensed. Cleaning Cycle {SupportingData1}. {devicename}">
    </alarm>
    <alarm majorcode="15" minorcode="425" message="Start Temperature {SupportingData1} Too Low. Cleaning Cycle {SupportingData2}. {devicename}">
      <property id="SupportingData1" unit="celsius"/>
    </alarm>
    <alarm majorcode="15" minorcode="426" message="Leakage on Teat Cleaner Wash Circuit. {devicename}">
    </alarm>
    <alarm majorcode="15" minorcode="427" message="Large Leak on Teat Cleaner Wash Circuit. {devicename}">
    </alarm>
    <alarm majorcode="15" minorcode="428" message="The cleaning quality figure: {SupportingData1}. {devicename}">
    </alarm>
    <alarm majorcode="15" minorcode="429" message="Water Flow Rate {SupportingData1} l/min is too low. Check water supply. {devicename}">
    </alarm>
    <alarm majorcode="15" minorcode="430" message="Air Inlet Valve (V1544) is not opened. Test vacuum level is: {SupportingData1}. {devicename}">
      <property id="SupportingData1" unit="kPa"/>
    </alarm>
    <alarm majorcode="15" minorcode="431" message="Acid Detergent Dosing Not Calibrated. {devicename}">
    </alarm>
    <alarm majorcode="15" minorcode="432" message="Alkali Detergent Dosing Not Calibrated. {devicename}">
    </alarm>
    <alarm majorcode="15" minorcode="433" message="Chlorine Dosing Not Calibrated. {devicename}">
    </alarm>
    <alarm majorcode="15" minorcode="434" message="Enzyme Detergent Dosing Not Calibrated. {devicename}">
    </alarm>
    <alarm majorcode="15" minorcode="435" message="Sanitizer Dosing Not Calibrated. {devicename}">
    </alarm>
    <alarm majorcode="15" minorcode="441" message="Out of Acid Detergent. {devicename}">
    </alarm>
    <alarm majorcode="15" minorcode="442" message="Out of Alkali Detergent. {devicename}">
    </alarm>
    <alarm majorcode="15" minorcode="443" message="Out of Chlorine. {devicename}">
    </alarm>
    <alarm majorcode="15" minorcode="444" message="Out of Enzyme Detergent. {devicename}">
    </alarm>
    <alarm majorcode="15" minorcode="445" message="Out of Sanitizer. {devicename}">
    </alarm>
    <alarm majorcode="15" minorcode="461" message="Not Enough Acid Detergent Dispensed. {devicename}">
    </alarm>
    <alarm majorcode="15" minorcode="462" message="Not Enough Alkali Detergent Dispensed. {devicename}">
    </alarm>
    <alarm majorcode="15" minorcode="463" message="Not Enough Chlorine Dispensed. {devicename}">
    </alarm>
    <alarm majorcode="15" minorcode="464" message="Not Enough Enzyme Detergent Dispensed. {devicename}">
    </alarm>
    <alarm majorcode="15" minorcode="465" message="Not Enough Sanitizer Dispensed. {devicename}">
    </alarm>
    <alarm majorcode="15" minorcode="471" message="Acid Detergent Not Assigned to a Detergent Pump. {devicename}">
    </alarm>
    <alarm majorcode="15" minorcode="472" message="Alkali Detergent Not Assigned to a Detergent Pump. {devicename}">
    </alarm>
    <alarm majorcode="15" minorcode="473" message="Chlorine Not Assigned to a Detergent Pump. {devicename}">
    </alarm>
    <alarm majorcode="15" minorcode="474" message="Enzyme Detergent Not Assigned to a Detergent Pump. {devicename}">
    </alarm>
    <alarm majorcode="15" minorcode="475" message="Sanitizer Not Assigned to a Detergent Pump. {devicename}">
    </alarm>
    <alarm majorcode="15" minorcode="481" message="Detergent Sensor Error. No Detergents Dosed. {devicename}">
    </alarm>
    <alarm majorcode="15" minorcode="482" message="Detergent Sensor Disabled - But Sensor Reports Flow. {devicename}">
    </alarm>
    <alarm majorcode="15" minorcode="483" message="Detergent valves are closed, but sensor reports flow. Stop milking! The leakage can harm the teats of the cows. Contact your service technician.. {devicename}">
    </alarm>
    <alarm majorcode="15" minorcode="484" message="Only One Detergent Per Cleaning Program Block Supported. {devicename}">
    </alarm>
    <alarm majorcode="15" minorcode="485" message="Detergent dosing not requested. No detergent dosed.. {devicename}">
    </alarm>
    <alarm majorcode="15" minorcode="486" message="Reminder. Detergent sensor is disabled.. {devicename}">
    </alarm>
    <alarm majorcode="15" minorcode="490" message="TC Circulation Pump Not Working. Cleaning Cycle {SupportingData1}. {devicename}">
    </alarm>
    <alarm majorcode="15" minorcode="491" message="Air Inlet During Cleaning Not Working Properly. Cleaning Cycle {SupportingData1}. {devicename}">
    </alarm>
    <alarm majorcode="15" minorcode="492" message="Teat Prep Circuit Did Not Get Water Filled Signal. {devicename}">
    </alarm>
    <alarm majorcode="15" minorcode="493" message="Teat Prep Circuit Did Not Get Water Filled Signal. {devicename}">
    </alarm>
    <alarm majorcode="15" minorcode="494" message="TC Waste Tank Not Sensed Empty. {devicename}">
    </alarm>
    <alarm majorcode="15" minorcode="495" message="TC Waste Tank Not Sensed Empty. {devicename}">
    </alarm>
    <alarm majorcode="15" minorcode="496" message="Divert Rack Went to Bucket Position. {devicename}">
    </alarm>
    <alarm majorcode="15" minorcode="497" message="Start Temperature Cleaning Cycle {SupportingData1}: {SupportingData2}. {devicename}">
      <property id="SupportingData2" unit="celsius"/>
    </alarm>
    <alarm majorcode="15" minorcode="498" message="Return Temperature Cleaning Cycle {SupportingData1} Too Low: {SupportingData2} due to low start temperature: {SupportingData3}. {devicename}">
      <property id="SupportingData2" unit="celsius"/>
      <property id="SupportingData3" unit="celsius"/>
    </alarm>
    <alarm majorcode="15" minorcode="499" message="Detergent valve unit is not rinsed between detergent types; cause = {SupportingData1}, cycle nr: {SupportingData2}. {devicename}">
    </alarm>
    <alarm majorcode="15" minorcode="500" message="Tank Valve Error. MRC answer is {SupportingData1} should be {SupportingData2}. {devicename}">
    </alarm>
    <alarm majorcode="15" minorcode="501" message="Receiver Level Sensor Shows Negative Value: {SupportingData1} cm. {devicename}">
    </alarm>
    <alarm majorcode="15" minorcode="502" message="Drain Failed. Water Remains in Milking Equipment. {devicename}">
    </alarm>
    <alarm majorcode="15" minorcode="503" message="Vacuum Too Low Before Teat Cleaning. {devicename}">
    </alarm>
    <alarm majorcode="15" minorcode="504" message="Leakage in Teat Cleaner Wash Circuit. {devicename}">
    </alarm>
    <alarm majorcode="15" minorcode="506" message="Cleaning was good, quality figure: {SupportingData1}. {devicename}">
    </alarm>
    <alarm majorcode="15" minorcode="507" message="Teat prep cleaning circuit not rinsed, waste water tank not filled. {devicename}">
    </alarm>
    <alarm majorcode="15" minorcode="508" message="Milk-valve does not react on cleaning command. {devicename}">
    </alarm>
    <alarm majorcode="15" minorcode="509" message="Tank valve was suddenly closed. {devicename}">
    </alarm>
    <alarm majorcode="16" minorcode="108" message="XMS: Invalid Milk Sampler Parameters. {devicename}">
    </alarm>
    <alarm majorcode="16" minorcode="120" message="OCC: Pressure Too High. {devicename}">
    </alarm>
    <alarm majorcode="16" minorcode="121" message="OCC: Pressure Too Low. {devicename}">
    </alarm>
    <alarm majorcode="16" minorcode="122" message="OCC: Timeout Due to Bus Communication Problem. {devicename}">
    </alarm>
    <alarm majorcode="16" minorcode="123" message="OCC: Temperature Too Low. {devicename}">
    </alarm>
    <alarm majorcode="16" minorcode="124" message="OCC: Liquid Leak in Cabinet. {devicename}">
    </alarm>
    <alarm majorcode="16" minorcode="125" message="OCC: Waste Container Full. {devicename}">
    </alarm>
    <alarm majorcode="16" minorcode="126" message="OCC: Pressure Sensor Failed or Leakage/Blockage in Hoses. {devicename}">
    </alarm>
    <alarm majorcode="16" minorcode="127" message="OCC: Cuvette is Dirty. {devicename}">
    </alarm>
    <alarm majorcode="16" minorcode="128" message="OCC: Out of Reagent, or Leakage/Blockage in Hoses, or Valve Failure. {devicename}">
    </alarm>
    <alarm majorcode="16" minorcode="129" message="OCC: Out of Hypochlorite, or Leakage/Blockage in Hoses, or Valve Failure. {devicename}">
    </alarm>
    <alarm majorcode="16" minorcode="130" message="OCC: No Water in Funnel, or Leakage/Blockage in Hoses, or Valve Failure. {devicename}">
    </alarm>
    <alarm majorcode="16" minorcode="131" message="OCC: No Milk in Funnel, or Leakage/Blockage in Hoses, or Valve Failure. {devicename}">
    </alarm>
    <alarm majorcode="16" minorcode="132" message="OCC: No Communication From OCC. {devicename}">
    </alarm>
    <alarm majorcode="16" minorcode="133" message="OCC: OCC Cannot Count Cells: Check Parameter Settings. {devicename}">
    </alarm>
    <alarm majorcode="16" minorcode="134" message="OCC: Cannot Clean Cuvette. {devicename}">
    </alarm>
    <alarm majorcode="16" minorcode="135" message="OCC: Reset Failed; Service Needed. {devicename}">
    </alarm>
    <alarm majorcode="16" minorcode="136" message="OCC: No Milk In Funnel. {devicename}">
    </alarm>
    <alarm majorcode="16" minorcode="138" message="OCC: Funnel Not Empty. {devicename}">
    </alarm>
    <alarm majorcode="16" minorcode="139" message="OCC: Error Writing to Flash. {devicename}">
    </alarm>
    <alarm majorcode="16" minorcode="140" message="OCC: Error Reading from Flash. {devicename}">
    </alarm>
    <alarm majorcode="16" minorcode="141" message="OCC: Funnel Clogged. {devicename}">
    </alarm>
    <alarm majorcode="16" minorcode="142" message="OCC: Several Missing Answers. {devicename}">
    </alarm>
    <alarm majorcode="16" minorcode="143" message="OCC: Pressure Sensor Failed. {devicename}">
    </alarm>
    <alarm majorcode="16" minorcode="144" message="OCC: Syringe Leakage at Overpressure. {devicename}">
    </alarm>
    <alarm majorcode="16" minorcode="145" message="OCC: Syringe Leakage at Underpressure. {devicename}">
    </alarm>
    <alarm majorcode="16" minorcode="146" message="OCC: Pressure in Hypochlorite Tube Too Low. {devicename}">
    </alarm>
    <alarm majorcode="16" minorcode="147" message="OCC: Pressure in Air Tube Too Low. {devicename}">
    </alarm>
    <alarm majorcode="16" minorcode="148" message="OCC: Pressure in Milk Tube Too Low. {devicename}">
    </alarm>
    <alarm majorcode="16" minorcode="149" message="OCC: Pressure in Reagents Tube Too Low. {devicename}">
    </alarm>
    <alarm majorcode="16" minorcode="150" message="OCC: Pressure in Cuvette Tube to Drain Too High. {devicename}">
    </alarm>
    <alarm majorcode="16" minorcode="151" message="OCC: Pressure in the Cuvette Tube to Waste Container Too High. {devicename}">
    </alarm>
    <alarm majorcode="16" minorcode="152" message="OCC: Pressure in Milk Tube Too High. {devicename}">
    </alarm>
    <alarm majorcode="16" minorcode="153" message="OCC: Pressure in Hypochlorite Tube Too High. {devicename}">
    </alarm>
    <alarm majorcode="16" minorcode="154" message="OCC: The waste container is almost full. {devicename}">
    </alarm>
    <alarm majorcode="16" minorcode="200" message="MSD: BBB Valve ({SupportingData1}) in Wrong Position. {devicename}">
    </alarm>
    <alarm majorcode="16" minorcode="201" message="MSD: BBB valve ({SupportingData1}) in wrong position after MSD-BBB self-test. {devicename}">
    </alarm>
    <alarm majorcode="17" minorcode="100" message="System Vacuum Level is not properly configured. Using default: {SupportingData1}. {devicename}">
      <property id="SupportingData1" unit="kPa"/>
    </alarm>
    <alarm majorcode="17" minorcode="101" message="Very High Vacuum During Milking. Highest: {SupportingData1}, limit: {SupportingData2}. {devicename}">
      <property id="SupportingData1" unit="kPa"/>
      <property id="SupportingData2" unit="kPa"/>
    </alarm>
    <alarm majorcode="17" minorcode="102" message="Very Low Vacuum During Milking. Lowest: {SupportingData1}, limit: {SupportingData2}. {devicename}">
      <property id="SupportingData1" unit="kPa"/>
      <property id="SupportingData2" unit="kPa"/>
    </alarm>
    <alarm majorcode="17" minorcode="103" message="High Vacuum During Milking. Limit: {SupportingData1}. {devicename}">
      <property id="SupportingData1" unit="kPa"/>
    </alarm>
    <alarm majorcode="17" minorcode="104" message="Low Vacuum During Milking. Limit: {SupportingData1}. {devicename}">
      <property id="SupportingData1" unit="kPa"/>
    </alarm>
    <alarm majorcode="17" minorcode="105" message="Vacuum Drifted Too High. System Vacuum Level: {SupportingData1}. {devicename}">
      <property id="SupportingData1" unit="kPa"/>
    </alarm>
    <alarm majorcode="17" minorcode="106" message="Vacuum Drifted Too Low. System Vacuum Level: {SupportingData1}. {devicename}">
      <property id="SupportingData1" unit="kPa"/>
    </alarm>
    <alarm majorcode="17" minorcode="107" message="High vacuum level. Current: {SupportingData1}, limit: {SupportingData2} {devicename}">
      <property id="SupportingData1" unit="kPa"/>
      <property id="SupportingData2" unit="kPa"/>
    </alarm>
    <alarm majorcode="17" minorcode="108" message="Low vacuum level. Current: {SupportingData1}, limit: {SupportingData2} {devicename}">
      <property id="SupportingData1" unit="kPa"/>
      <property id="SupportingData2" unit="kPa"/>
    </alarm>
    <alarm majorcode="17" minorcode="109" message="Too low teat cleaning vacuum {devicename}">
    </alarm>
    <alarm majorcode="17" minorcode="110" message="Too high vacuum in teat cup {SupportingData1} during milking {devicename}">
    </alarm>
    <alarm majorcode="17" minorcode="111" message="Too low vacuum in teat cup {SupportingData1} during milking {devicename}">
    </alarm>
    <alarm majorcode="17" minorcode="113" message="Teat cleaner tank vacuum sensor not calibrated {devicename}">
    </alarm>
    <alarm majorcode="17" minorcode="114" message="Teat cleaner tank vacuum too high during teat cleaning {devicename}">
    </alarm>
    <alarm majorcode="17" minorcode="115" message="Teat cleaner tank vacuum too low during teat cleaning {devicename}">
    </alarm>
    <alarm majorcode="17" minorcode="116" message="No vacuum in teat cleaner tank detected {devicename}">
    </alarm>
    <alarm majorcode="17" minorcode="117" message="Too high vacuum control output signal. Cup {SupportingData1} {devicename}">
    </alarm>
    <alarm majorcode="17" minorcode="118" message="Bad io status on teat cleaning tank vacuum sensor {SupportingData1} {devicename}">
    </alarm>
    <alarm majorcode="17" minorcode="119" message="Bad io status on teat cleaning tank vacuum actuator {SupportingData1} {devicename}">
    </alarm>
    <alarm majorcode="17" minorcode="120" message="Too high vacuum response during air inlet check. Cup {SupportingData1} {devicename}">
    </alarm>
    <alarm majorcode="17" minorcode="121" message="Bad teat cup {SupportingData1} vacuum sensor {devicename}">
    </alarm>
    <alarm majorcode="17" minorcode="122" message="Teat cup {SupportingData1} vacuum sensor not calibrated {devicename}">
    </alarm>
    <alarm majorcode="17" minorcode="125" message="Foreign object stuck in milk meter or shut-off valve cup {SupportingData1} blocking vacuum {devicename}">
    </alarm>
    <alarm majorcode="17" minorcode="126" message="Foreign object stuck in shut-off valve cup {SupportingData1} preventing the valve from closing {devicename}">
    </alarm>
    <alarm majorcode="17" minorcode="127" message="The air inlet calibration is not OK {devicename}">
    </alarm>
    <alarm majorcode="17" minorcode="128" message="Too low vacuum response during air inlet check. Cup {SupportingData1} {devicename}">
    </alarm>
    <alarm majorcode="17" minorcode="701" message="I/O {SupportingData1} error status {SupportingData2} ({SupportingData3}). {devicename}">
    </alarm>
    <alarm majorcode="17" minorcode="1801" message="Problem with water supply. No teat cleaning or backflush will be performed.. {devicename}">
    </alarm>
    <alarm majorcode="17" minorcode="1802" message="Water taps has been on too long. {devicename}">
    </alarm>
    <alarm majorcode="17" minorcode="1804" message="Trough level is unknown. {devicename}">
    </alarm>
    <alarm majorcode="17" minorcode="1805" message="Could not drain trough. {devicename}">
    </alarm>
    <alarm majorcode="17" minorcode="1806" message="Failed to prime water. {devicename}">
    </alarm>
    <alarm majorcode="17" minorcode="1807" message="Unexpected water flow detected. {devicename}">
    </alarm>
    <alarm majorcode="18" minorcode="101" message="Unused spare field: A{SupportingData1}">
    </alarm>
    <alarm majorcode="18" minorcode="102" message="Unused spare A{SupportingData1} bit {SupportingData2}">
    </alarm>
    <alarm majorcode="18" minorcode="103" message="Unused spare A{SupportingData1} bits {SupportingData2}-{SupportingData3}">
    </alarm>
    <alarm majorcode="18" minorcode="104" message="Unused spare field B{SupportingData1}">
    </alarm>
    <alarm majorcode="18" minorcode="105" message="Unused spare field C{SupportingData1}">
    </alarm>
    <alarm majorcode="48" minorcode="1" message="An unforeseen software issue has occurred and a Stop alarm has been generated for safety. Error code:{SupportingData1}. {devicename}">
    </alarm>
    <alarm majorcode="48" minorcode="3" message="No scheduled cleaning will be performed. {devicename}">
    </alarm>
    <alarm majorcode="48" minorcode="4" message="A scheduled cleaning was not performed. {devicename}">
    </alarm>
    <alarm majorcode="48" minorcode="10" message="The program found an error. Error code:{SupportingData1}. {devicename}">
    </alarm>
    <alarm majorcode="48" minorcode="101" message="The block valve (V4514) is out of position. {devicename}">
    </alarm>
    <alarm majorcode="48" minorcode="102" message="Filter valves (V4101 or V4102) are closed. {devicename}">
    </alarm>
    <alarm majorcode="48" minorcode="103" message="The bleed valve (V4516) is out of position. {devicename}">
    </alarm>
    <alarm majorcode="48" minorcode="104" message="Motor Circuit Protection Cut Power. {devicename}">
    </alarm>
    <alarm majorcode="48" minorcode="105" message="There seems to be not enough water dosed for cycle: {SupportingData1}. {devicename}">
    </alarm>
    <alarm majorcode="48" minorcode="106" message="Too-low detergent dosing capacity. Pump pulse is: {SupportingData1} ms, compared 2 ltr (0.5 gal) water: {SupportingData2} ms, for pump #{SupportingData3} Risk of high bacterial counts. {devicename}">
    </alarm>
    <alarm majorcode="48" minorcode="107" message="Too Much Cleaning Water Consumed . {devicename}">
    </alarm>
    <alarm majorcode="48" minorcode="108" message="No Water Flow Detected. {devicename}">
    </alarm>
    <alarm majorcode="48" minorcode="109" message="Water level error. {devicename}">
    </alarm>
    <alarm majorcode="48" minorcode="110" message="CIP Pump not working, flow {SupportingData1} l/min. {devicename}">
    </alarm>
    <alarm majorcode="48" minorcode="111" message="The trough is not draining. {devicename}">
    </alarm>
    <alarm majorcode="48" minorcode="112" message="Water residue; {SupportingData1} mm. {devicename}">
    </alarm>
    <alarm majorcode="48" minorcode="113" message="Water residue in trough; {SupportingData1} mm. Check level sensor. {devicename}">
    </alarm>
    <alarm majorcode="48" minorcode="114" message="Detergent Dosing Module Error for Pump #{SupportingData1} in Cycle #{SupportingData2}. {devicename}">
    </alarm>
    <alarm majorcode="48" minorcode="115" message="Failed milking transport. {devicename}">
    </alarm>
    <alarm majorcode="48" minorcode="116" message="Cleaning Failed . {devicename}">
    </alarm>
    <alarm majorcode="48" minorcode="117" message="Cleaning Program Not Completed. {devicename}">
    </alarm>
    <alarm majorcode="48" minorcode="122" message="Waiting for Reset Cleaning Signal. {devicename}">
    </alarm>
    <alarm majorcode="48" minorcode="124" message="Milk Transport Cleaner Application Stopped. {devicename}">
    </alarm>
    <alarm majorcode="48" minorcode="125" message="Water flow too low; check water pressure. {devicename}">
    </alarm>
    <alarm majorcode="48" minorcode="126" message="Operator Wants To Stop Process. {devicename}">
    </alarm>
    <alarm majorcode="48" minorcode="127" message="Water Temp Did Not Reach {SupportingData1} in time. Current Temp is {SupportingData2}. {devicename}">
      <property id="SupportingData1" unit="celsius"/>
      <property id="SupportingData2" unit="celsius"/>
    </alarm>
    <alarm majorcode="48" minorcode="128" message="The diverter valve (V4625) is left open in drain position. {devicename}">
    </alarm>
    <alarm majorcode="48" minorcode="129" message="Return Temp Too Low: {SupportingData1}. {devicename}">
      <property id="SupportingData1" unit="celsius"/>
    </alarm>
    <alarm majorcode="48" minorcode="130" message="Pump #{SupportingData1} Did Not Make Full Stroke. {devicename}">
    </alarm>
    <alarm majorcode="48" minorcode="131" message="Milk Transport System Does Not Accept Milk.. {devicename}">
    </alarm>
    <alarm majorcode="48" minorcode="132" message="Too much time since last cleaning. {devicename}">
    </alarm>
    <alarm majorcode="48" minorcode="133" message="Pre-rinse Temp Too Low {SupportingData1} temperature {SupportingData2}. {devicename}">
      <property id="SupportingData2" unit="celsius"/>
    </alarm>
    <alarm majorcode="48" minorcode="134" message="The interloop milk valve (V4519) is out of position. {devicename}">
    </alarm>
    <alarm majorcode="48" minorcode="135" message="The interloop clean valve (V4521) is out of position. {devicename}">
    </alarm>
    <alarm majorcode="48" minorcode="136" message="The remote cleaning valve (V4551) is out of position. {devicename}">
    </alarm>
    <alarm majorcode="48" minorcode="137" message="The low point drain valve (V4537) is out of position sensor C{SupportingData1}. {devicename}">
    </alarm>
    <alarm majorcode="48" minorcode="138" message="Tank valve not in required position: {SupportingData1}, answered with: {SupportingData2}. {devicename}">
    </alarm>
    <alarm majorcode="48" minorcode="139" message="Pre-rinse Temp Too High {SupportingData1} temperature {SupportingData2}. {devicename}">
      <property id="SupportingData2" unit="celsius"/>
    </alarm>
    <alarm majorcode="48" minorcode="140" message="Post-rinse Temp Too High {SupportingData1} temperature {SupportingData2}. {devicename}">
      <property id="SupportingData2" unit="celsius"/>
    </alarm>
    <alarm majorcode="48" minorcode="141" message="Motor Circuit Protection Cut Power. {devicename}">
    </alarm>
    <alarm majorcode="48" minorcode="142" message="Milk to tank {SupportingData1}. {devicename}">
    </alarm>
    <alarm majorcode="48" minorcode="143" message="Transport Loop is Cleaning. {devicename}">
    </alarm>
    <alarm majorcode="48" minorcode="144" message="Request for Service. {devicename}">
    </alarm>
    <alarm majorcode="48" minorcode="145" message="Paused for service. {devicename}">
    </alarm>
    <alarm majorcode="48" minorcode="146" message="Service Complete. {devicename}">
    </alarm>
    <alarm majorcode="48" minorcode="147" message="Service Skipped. {devicename}">
    </alarm>
    <alarm majorcode="48" minorcode="148" message="Diverter valve (V4625) did not switch to circulation. {devicename}">
    </alarm>
    <alarm majorcode="48" minorcode="149" message="Purge Did Not Remove Cleaning Water. {devicename}">
    </alarm>
    <alarm majorcode="48" minorcode="150" message="Water flow is out of sensor range. Too-high or too-low value. {devicename}">
    </alarm>
    <alarm majorcode="48" minorcode="152" message="Alkaline low or empty. {devicename}">
    </alarm>
    <alarm majorcode="48" minorcode="153" message="Acid low or empty. {devicename}">
    </alarm>
    <alarm majorcode="48" minorcode="154" message="Disinfectant low or empty. {devicename}">
    </alarm>
    <alarm majorcode="48" minorcode="155" message="Pre-rinse {SupportingData1} water: was too hot: {SupportingData2}.. {devicename}">
      <property id="SupportingData2" unit="celsius"/>
    </alarm>
    <alarm majorcode="48" minorcode="156" message="Pause Switch or Signal Still On. {devicename}">
    </alarm>
    <alarm majorcode="48" minorcode="157" message="Diverter valve (V4625) is out of position. {devicename}">
    </alarm>
    <alarm majorcode="48" minorcode="158" message="Detergent Valve #{SupportingData1} is out of position. {devicename}">
    </alarm>
    <alarm majorcode="48" minorcode="159" message="Purge Block Valve Out of Position. {devicename}">
    </alarm>
    <alarm majorcode="48" minorcode="160" message="Cold water valve (V4617) is out of position. {devicename}">
    </alarm>
    <alarm majorcode="48" minorcode="161" message="Hot water valve (V4618) is out of position. {devicename}">
    </alarm>
    <alarm majorcode="48" minorcode="163" message="Missed stroke, detergent pump #{SupportingData1}. {devicename}">
    </alarm>
    <alarm majorcode="48" minorcode="164" message="No Water Entering Trough. {devicename}">
    </alarm>
    <alarm majorcode="48" minorcode="165" message="Cleaning Can Be Started. {devicename}">
    </alarm>
    <alarm majorcode="48" minorcode="166" message="Cleaning is Ready. {devicename}">
    </alarm>
    <alarm majorcode="48" minorcode="167" message="Tank Connection Pipe in Wrong Position. {devicename}">
    </alarm>
    <alarm majorcode="48" minorcode="168" message="Stop Milk Transport Valve Out of Position. {devicename}">
    </alarm>
    <alarm majorcode="48" minorcode="169" message="The water volume in cycle {SupportingData1} is estimated to {SupportingData2} l. {devicename}">
    </alarm>
    <alarm majorcode="48" minorcode="170" message="Loop does not send keep alive. {devicename}">
    </alarm>
    <alarm majorcode="48" minorcode="172" message="CIP pump may cavitate, flow {SupportingData1} l/min (gal/min). {devicename}">
    </alarm>
    <alarm majorcode="48" minorcode="173" message="The level sensor senses a too-high increase: {SupportingData1} mm/sec (in/sec). {devicename}">
    </alarm>
    <alarm majorcode="48" minorcode="174" message="Level sensor shows negative value: {SupportingData1} mm. {devicename}">
    </alarm>
    <alarm majorcode="48" minorcode="175" message="Problem with both flow and level sensor. {devicename}">
    </alarm>
    <alarm majorcode="48" minorcode="176" message="A remote low point drain valve is out of position: at valve group {SupportingData1} sensor C{SupportingData2}. {devicename}">
    </alarm>
    <alarm majorcode="48" minorcode="177" message="Several valves give out of position alarm. {devicename}">
    </alarm>
    <alarm majorcode="48" minorcode="178" message="The cleaning return valve (V4526) is out of position. {devicename}">
    </alarm>
    <alarm majorcode="48" minorcode="179" message="The temperature sensor S{SupportingData1} is out of range, it reads {SupportingData2}. {devicename}">
      <property id="SupportingData2" unit="celsius"/>
    </alarm>
    <alarm majorcode="48" minorcode="180" message="The tank valve bleed/drain (S4245) is in wrong position. {devicename}">
    </alarm>
    <alarm majorcode="48" minorcode="181" message="The loop is forced to release the cleaner. {devicename}">
    </alarm>
    <alarm majorcode="48" minorcode="182" message="Push the QLoop ({SupportingData1}) Acknowledge button. {devicename}">
    </alarm>
    <alarm majorcode="48" minorcode="183" message="Rinse failed. Next rinse will only purge. WARNING! Risk of milk contamination in the tank. Please contact a service technician. {devicename}">
    </alarm>
    <alarm majorcode="48" minorcode="184" message="The QCleaner drain valve (V4627) is out of position. {devicename}">
    </alarm>
    <alarm majorcode="48" minorcode="185" message="The water-flow has a bias {SupportingData1}%, during cycle {SupportingData2}. {devicename}">
    </alarm>
    <alarm majorcode="48" minorcode="186" message="The Detergent pump pick-up gave an unexpected signal. {devicename}">
    </alarm>
    <alarm majorcode="48" minorcode="187" message="The circulation cleaning is stopped due to too much water loss, leak flow rate: {SupportingData1} l/min (gal/sec). {devicename}">
    </alarm>
    <alarm majorcode="48" minorcode="188" message="Cleaning connection valves not closed on previous cleaned QLoop ({SupportingData1}). {devicename}">
    </alarm>
    <alarm majorcode="48" minorcode="189" message="Milking stations are not prepared for cleaning. {devicename}">
    </alarm>
    <alarm majorcode="48" minorcode="190" message="Started milk transport when not all milking stations have finished cleaning. {devicename}">
    </alarm>
    <alarm majorcode="48" minorcode="191" message="Valve V{SupportingData1} opened uncontrolled possible due to water hammer. {devicename}">
    </alarm>
    <alarm majorcode="48" minorcode="192" message="The tank valve drain valve sensor (S4245) is not answering. {devicename}">
    </alarm>
    <alarm majorcode="48" minorcode="193" message="Purge valve (V4518) is out of position. {devicename}">
    </alarm>
    <alarm majorcode="48" minorcode="199" message="Manual cleaning did not start because the cleaner unit is busy. {devicename}">
    </alarm>
    <alarm majorcode="48" minorcode="200" message="Manual cleaning did not start due to an error. {devicename}">
    </alarm>
    <alarm majorcode="48" minorcode="201" message="Failed to send milk yield report. {devicename}">
    </alarm>
    <alarm majorcode="48" minorcode="202" message="Yield Report Missing from {SupportingData6}. {devicename}">
    </alarm>
    <alarm majorcode="48" minorcode="203" message="No Contact with MRC. {devicename}">
    </alarm>
    <alarm majorcode="48" minorcode="300" message="Spare field #{SupportingData1} has an unsupported value: {SupportingData2}. Please set it to an acceptable value. {devicename}">
    </alarm>
    <alarm majorcode="1" minorcode="0" message="OK">
    </alarm>
    <alarm majorcode="1" minorcode="1" message="Robot connected">
    </alarm>
    <alarm majorcode="1" minorcode="2" message="Milking connected">
    </alarm>
    <alarm majorcode="1" minorcode="3" message="Cowtraffic connected">
    </alarm>
    <alarm majorcode="1" minorcode="4" message="Milktransport connected">
    </alarm>
    <alarm majorcode="1" minorcode="5" message="Vmsioman connected">
    </alarm>
    <alarm majorcode="1" minorcode="7" message="Time for rinse">
    </alarm>
    <alarm majorcode="1" minorcode="8" message="Time for scheduled wash">
    </alarm>
    <alarm majorcode="1" minorcode="9" message="Recovery done OK">
    </alarm>
    <alarm majorcode="1" minorcode="10" message="Gate ctrl connected">
    </alarm>
    <alarm majorcode="1" minorcode="11" message="Got configuration">
    </alarm>
    <alarm majorcode="1" minorcode="12" message="Parking cups">
    </alarm>
    <alarm majorcode="1" minorcode="13" message="Activating cups">
    </alarm>
    <alarm majorcode="1" minorcode="14" message="Diagnose connected">
    </alarm>
    <alarm majorcode="1" minorcode="16" message="Autocalibration done OK">
    </alarm>
    <alarm majorcode="1" minorcode="17" message="Feed station alarm cleared">
    </alarm>
    <alarm majorcode="1" minorcode="100" message="Robot disconnected">
    </alarm>
    <alarm majorcode="1" minorcode="101" message="Milking disconnected">
    </alarm>
    <alarm majorcode="1" minorcode="102" message="Cowtraffic disconnected">
    </alarm>
    <alarm majorcode="1" minorcode="103" message="Milktransport disconnected">
    </alarm>
    <alarm majorcode="1" minorcode="104" message="Vmsioman disconnected">
    </alarm>
    <alarm majorcode="1" minorcode="107" message="Several milkings failed">
    </alarm>
    <alarm majorcode="1" minorcode="108" message="Cow too long in stall. {devicename}">
    </alarm>
    <alarm majorcode="1" minorcode="109" message="Gate ctrl disconnected">
    </alarm>
    <alarm majorcode="1" minorcode="112" message="Unexpected high yield. {devicename}">
    </alarm>
    <alarm majorcode="1" minorcode="113" message="Test send alarm or error">
    </alarm>
    <alarm majorcode="1" minorcode="114" message="Mumgr disconnected">
    </alarm>
    <alarm majorcode="1" minorcode="115" message="Unexpected low yield. {devicename}">
    </alarm>
    <alarm majorcode="1" minorcode="116" message="Invalid server IP address {SupportingData1}.{SupportingData2}.{SupportingData3}.{SupportingData4}">
    </alarm>
    <alarm majorcode="1" minorcode="117" message="High MS temperature ({SupportingData1})">
      <property id="SupportingData1" unit="celsius"/>
    </alarm>
    <alarm majorcode="1" minorcode="118" message="Diagnose disconnected">
    </alarm>
    <alarm majorcode="1" minorcode="119" message="Not cleaned after divert">
    </alarm>
    <alarm majorcode="1" minorcode="120" message="Autocalibration failed status {SupportingData1}">
    </alarm>
    <alarm majorcode="1" minorcode="121" message="Guardmaster block MS">
    </alarm>
    <alarm majorcode="1" minorcode="122" message="Guardmaster allow MS">
    </alarm>
    <alarm majorcode="1" minorcode="201" message="Feed station alarm">
    </alarm>
    <alarm majorcode="1" minorcode="202" message="No response from robot cmd {SupportingData1}">
    </alarm>
    <alarm majorcode="1" minorcode="301" message="'V300' Mech Not Supported.">
    </alarm>
    <alarm majorcode="1" minorcode="302" message="Run Test Wizard in ServiceTool-Cleaning-Detergents">
    </alarm>
    <alarm majorcode="2" minorcode="0" message="OK">
    </alarm>
    <alarm majorcode="2" minorcode="11" message="Cup attached to teat">
    </alarm>
    <alarm majorcode="2" minorcode="12" message="Cup reattached to teat">
    </alarm>
    <alarm majorcode="2" minorcode="13" message="Mixed and corrected: Cup attached to teat">
    </alarm>
    <alarm majorcode="2" minorcode="14" message="Teat cleaned and premilked">
    </alarm>
    <alarm majorcode="2" minorcode="15" message="Sensors: Tilt:{SupportingData1} Grip:{SupportingData2} Rotate:{SupportingData3} Item:{SupportingData4}">
    </alarm>
    <alarm majorcode="2" minorcode="16" message="Robot vacuum ref: {SupportingData1} {SupportingData2} {SupportingData3} {SupportingData4}">
    </alarm>
    <alarm majorcode="2" minorcode="17" message="Robot performance: {SupportingData1}">
    </alarm>
    <alarm majorcode="2" minorcode="18" message="Auto-teach done">
    </alarm>
    <alarm majorcode="2" minorcode="31" message="Camera calibration initialised!">
    </alarm>
    <alarm majorcode="2" minorcode="32" message="Camera calibration DONE!">
    </alarm>
    <alarm majorcode="2" minorcode="33" message="Camera ADC setup done! ADCupper={SupportingData1}">
    </alarm>
    <alarm majorcode="2" minorcode="34" message="{SupportingData1} mm DONE!">
    </alarm>
    <alarm majorcode="2" minorcode="35" message="Camera number: {SupportingData1}">
    </alarm>
    <alarm majorcode="2" minorcode="41" message="Please set X_CentreLaser={SupportingData1} Y_CentreLaser={SupportingData2}">
    </alarm>
    <alarm majorcode="2" minorcode="42" message="Tune cup centre done! (Updating database)">
    </alarm>
    <alarm majorcode="2" minorcode="51" message="Teat not found for milking. {devicename}">
    </alarm>
    <alarm majorcode="2" minorcode="52" message="Teat not found at re-attach">
    </alarm>
    <alarm majorcode="2" minorcode="53" message="Teat position not working (too low)">
    </alarm>
    <alarm majorcode="2" minorcode="54" message="Camera frame timeout">
    </alarm>
    <alarm majorcode="2" minorcode="55" message="No camera objects seen during attempt to find teat">
    </alarm>
    <alarm majorcode="2" minorcode="56" message="Robot encoder lost pulses, axes (X:{SupportingData1} Y:{SupportingData2} Z:{SupportingData3})">
    </alarm>
    <alarm majorcode="2" minorcode="58" message="Auto-teach unsuccessful">
    </alarm>
    <alarm majorcode="2" minorcode="81" message="Robot operation aborted">
    </alarm>
    <alarm majorcode="2" minorcode="82" message="Unknown robot test number">
    </alarm>
    <alarm majorcode="2" minorcode="83" message="No teats to milk">
    </alarm>
    <alarm majorcode="2" minorcode="84" message="No cups available for re-attach">
    </alarm>
    <alarm majorcode="2" minorcode="85" message="Cannot milk a non-existant teat">
    </alarm>
    <alarm majorcode="2" minorcode="86" message="Warning: Robot safety functions disabled!">
    </alarm>
    <alarm majorcode="2" minorcode="87" message="Warning: Robot encoder safety disabled!">
    </alarm>
    <alarm majorcode="2" minorcode="88" message="Warning: Robot pressure observer safety disabled! axes (X:{SupportingData1} Y:{SupportingData2} Z:{SupportingData3})">
    </alarm>
    <alarm majorcode="2" minorcode="91" message="No centre object or object narrower than 5mm">
    </alarm>
    <alarm majorcode="2" minorcode="92" message="More than one centre object">
    </alarm>
    <alarm majorcode="2" minorcode="101" message="Axis end point calibration needed">
    </alarm>
    <alarm majorcode="2" minorcode="103" message="Robot failed to start, axes (X:{SupportingData1} Y:{SupportingData2} Z:{SupportingData3})">
    </alarm>
    <alarm majorcode="2" minorcode="104" message="Cannot reach position, axes (X:{SupportingData1} Y:{SupportingData2} Z:{SupportingData3})">
    </alarm>
    <alarm majorcode="2" minorcode="105" message="Robot moved too fast, axes (X:{SupportingData1} Y:{SupportingData2} Z:{SupportingData3})">
    </alarm>
    <alarm majorcode="2" minorcode="106" message="Safety function triggered, axes (X:{SupportingData1} Y:{SupportingData2} Z:{SupportingData3})">
    </alarm>
    <alarm majorcode="2" minorcode="107" message="Air button was pressed">
    </alarm>
    <alarm majorcode="2" minorcode="108" message="Air to robot not detected">
    </alarm>
    <alarm majorcode="2" minorcode="109" message="Air to robot was on when trying to start">
    </alarm>
    <alarm majorcode="2" minorcode="110" message="Too high air pressure to robot">
    </alarm>
    <alarm majorcode="2" minorcode="111" message="Demanded position is beyond limit, axes (X:{SupportingData1} Y:{SupportingData2} Z:{SupportingData3})">
    </alarm>
    <alarm majorcode="2" minorcode="112" message="Robot hit an obstacle, axes (X:{SupportingData1} Y:{SupportingData2} Z:{SupportingData3})">
    </alarm>
    <alarm majorcode="2" minorcode="114" message="Joystick is not working">
    </alarm>
    <alarm majorcode="2" minorcode="115" message="Teatcup {SupportingData1} not detected in gripper. {devicename}">
    </alarm>
    <alarm majorcode="2" minorcode="116" message="Gripper is not empty">
    </alarm>
    <alarm majorcode="2" minorcode="117" message="Rotate to SEEK pos failed">
    </alarm>
    <alarm majorcode="2" minorcode="118" message="Rotate to FETCH pos failed">
    </alarm>
    <alarm majorcode="2" minorcode="119" message="Gripper CLOSE failed">
    </alarm>
    <alarm majorcode="2" minorcode="120" message="Gripper OPEN failed">
    </alarm>
    <alarm majorcode="2" minorcode="121" message="Tilt OUT failed">
    </alarm>
    <alarm majorcode="2" minorcode="122" message="Tilt IN failed">
    </alarm>
    <alarm majorcode="2" minorcode="123" message="Robot needs air connection to stall">
    </alarm>
    <alarm majorcode="2" minorcode="124" message="Vacuum not detected in cup">
    </alarm>
    <alarm majorcode="2" minorcode="125" message="Vacuum sensor failure or bad reference">
    </alarm>
    <alarm majorcode="2" minorcode="126" message="Rear sensor failure ({SupportingData1} mm)">
    </alarm>
    <alarm majorcode="2" minorcode="127" message="No robot motion when expected, axes (X:{SupportingData1} Y:{SupportingData2} Z:{SupportingData3})">
    </alarm>
    <alarm majorcode="2" minorcode="128" message="Robot diff.pressure sensor failure, axes (X:{SupportingData1} Y:{SupportingData2} Z:{SupportingData3})">
    </alarm>
    <alarm majorcode="2" minorcode="129" message="Robot valve error, axes (X:{SupportingData1} Y:{SupportingData2} Z:{SupportingData3})">
    </alarm>
    <alarm majorcode="2" minorcode="130" message="Cup attach not detected">
    </alarm>
    <alarm majorcode="2" minorcode="131" message="Robot fatal error 16, axes (X:{SupportingData1} Y:{SupportingData2} Z:{SupportingData3}). Axis endpoint calibration is needed">
    </alarm>
    <alarm majorcode="2" minorcode="133" message="Axis Endpoint Calibration failed, axes (X:{SupportingData1} Y:{SupportingData2} Z:{SupportingData3})">
    </alarm>
    <alarm majorcode="2" minorcode="134" message="Abnormal Encoder Change, Axis (X:{SupportingData1} Y:{SupportingData2} Z:{SupportingData3}). Is something loose?">
    </alarm>
    <alarm majorcode="2" minorcode="135" message="Axis Endpoint Calibration failed, probably because of wrong HW-version parameter">
    </alarm>
    <alarm majorcode="2" minorcode="137" message="Teat cleaner not detected in gripper">
    </alarm>
    <alarm majorcode="2" minorcode="138" message="Disinfection device not detected in gripper">
    </alarm>
    <alarm majorcode="2" minorcode="139" message="Cannot reach position - Hydraulic box indicates error">
    </alarm>
    <alarm majorcode="2" minorcode="144" message="Hydraulic pump - temperature sensor failure">
    </alarm>
    <alarm majorcode="2" minorcode="145" message="Hydraulic pump - pressure sensor failure">
    </alarm>
    <alarm majorcode="2" minorcode="147" message="Hydraulic pump - too long time in idle load">
    </alarm>
    <alarm majorcode="2" minorcode="148" message="Hydraulic pump - too low pressure in boost mode">
    </alarm>
    <alarm majorcode="2" minorcode="149" message="Hydraulic pump - SW internal error">
    </alarm>
    <alarm majorcode="2" minorcode="150" message="Hydraulic pump - both pressure and temp sensor disabled">
    </alarm>
    <alarm majorcode="2" minorcode="151" message="Hydraulic pump - too long time in manual mode without doing any manual work">
    </alarm>
    <alarm majorcode="2" minorcode="201" message="Wrong size of message to robot">
    </alarm>
    <alarm majorcode="2" minorcode="202" message="Unknown message to robot">
    </alarm>
    <alarm majorcode="2" minorcode="203" message="Robot is busy, command ignored">
    </alarm>
    <alarm majorcode="2" minorcode="205" message="AxisController is not properly configured">
    </alarm>
    <alarm majorcode="2" minorcode="206" message="Robot is not properly configured. {devicename}">
    </alarm>
    <alarm majorcode="2" minorcode="207" message="Invalid teat positions, not taught?">
    </alarm>
    <alarm majorcode="2" minorcode="210" message="Invalid hold milktubes position">
    </alarm>
    <alarm majorcode="2" minorcode="211" message="Robot has no vacuum references">
    </alarm>
    <alarm majorcode="2" minorcode="212" message="AxisController error {SupportingData1}">
    </alarm>
    <alarm majorcode="2" minorcode="213" message="Robot self test failed. {devicename}">
    </alarm>
    <alarm majorcode="2" minorcode="301" message="Robot balance points calibration failed">
    </alarm>
    <alarm majorcode="2" minorcode="302" message="Robot home position calibration failed">
    </alarm>
    <alarm majorcode="2" minorcode="303" message="Robot PRBS measurement failed">
    </alarm>
    <alarm majorcode="2" minorcode="304" message="Robot coordinates calibration failed">
    </alarm>
    <alarm majorcode="2" minorcode="305" message="Robot axis performance test failed">
    </alarm>
    <alarm majorcode="2" minorcode="306" message="Robot axis production test failed">
    </alarm>
    <alarm majorcode="2" minorcode="307" message="Failed to read or write axis config file">
    </alarm>
    <alarm majorcode="2" minorcode="309" message="Robot auto tuning failed">
    </alarm>
    <alarm majorcode="2" minorcode="321" message="Camera calibration not initialised. *FAILED*">
    </alarm>
    <alarm majorcode="2" minorcode="322" message="Camera calibration *FAILED*">
    </alarm>
    <alarm majorcode="2" minorcode="323" message="{SupportingData1} mm *FAILED*">
    </alarm>
    <alarm majorcode="2" minorcode="324" message="Do {SupportingData1} mm first. *FAILED*">
    </alarm>
    <alarm majorcode="2" minorcode="325" message="Too few objects seen (&lt;{SupportingData1}). *FAILED*">
    </alarm>
    <alarm majorcode="2" minorcode="326" message="Too many objects seen (&gt;{SupportingData1}). *FAILED*">
    </alarm>
    <alarm majorcode="2" minorcode="327" message="Center object not found. *FAILED*">
    </alarm>
    <alarm majorcode="2" minorcode="328" message="All ranges not complete. *FAILED*">
    </alarm>
    <alarm majorcode="2" minorcode="329" message="Internal error in camera calibration. *FAILED*">
    </alarm>
    <alarm majorcode="2" minorcode="330" message="Camera number unknown (0). *FAILED*">
    </alarm>
    <alarm majorcode="2" minorcode="331" message="ADC too low ({SupportingData1}). *FAILED*">
    </alarm>
    <alarm majorcode="2" minorcode="332" message="ADC too high ({SupportingData1}). *FAILED*">
    </alarm>
    <alarm majorcode="2" minorcode="333" message="ADC setup *FAILED*">
    </alarm>
    <alarm majorcode="2" minorcode="407" message="Robot Arm Needs Calibration">
    </alarm>
    <alarm majorcode="3" minorcode="0" message="OK">
    </alarm>
    <alarm majorcode="3" minorcode="1" message="Vacuum ref cup {SupportingData1} = {SupportingData2}">
    </alarm>
    <alarm majorcode="3" minorcode="2" message="Min yield = {SupportingData1} only got {SupportingData2}">
      <property id="SupportingData1" unit="yield"/>
      <property id="SupportingData2" unit="yield"/>
    </alarm>
    <alarm majorcode="3" minorcode="3" message="Yield correction">
    </alarm>
    <alarm majorcode="3" minorcode="101" message="No yield from flomaster MM15">
    </alarm>
    <alarm majorcode="3" minorcode="102" message="No yield from MM25 {SupportingData1}">
    </alarm>
    <alarm majorcode="3" minorcode="103" message="Bad vacuum ref cup {SupportingData1} = {SupportingData2}">
    </alarm>
    <alarm majorcode="3" minorcode="104" message="Big diff MM25 - Flomaster MM15">
    </alarm>
    <alarm majorcode="3" minorcode="107" message="Air inlet blocked">
    </alarm>
    <alarm majorcode="3" minorcode="108" message="Invalid Milksampler config">
    </alarm>
    <alarm majorcode="3" minorcode="116" message="Milkmeter {SupportingData1} conductivity ({SupportingData2}) different ({SupportingData3}) from other meters">
    </alarm>
    <alarm majorcode="3" minorcode="117" message="Milking self test failed">
    </alarm>
    <alarm majorcode="3" minorcode="120" message="OCC: Too high pressure. {devicename}">
    </alarm>
    <alarm majorcode="3" minorcode="121" message="OCC: Too low pressure. {devicename}">
    </alarm>
    <alarm majorcode="3" minorcode="122" message="OCC: Time out due to Alcom communication problem. {devicename}">
    </alarm>
    <alarm majorcode="3" minorcode="123" message="OCC: Too low temperature. {devicename}">
    </alarm>
    <alarm majorcode="3" minorcode="124" message="OCC: Liquid leakage in cabinet. {devicename}">
    </alarm>
    <alarm majorcode="3" minorcode="125" message="OCC: The waste container is full. {devicename}">
    </alarm>
    <alarm majorcode="3" minorcode="126" message="OCC: Pressure sensor broken or leakage/blockage in some hoses. {devicename}">
    </alarm>
    <alarm majorcode="3" minorcode="127" message="OCC: The cuvette is dirty. {devicename}">
    </alarm>
    <alarm majorcode="3" minorcode="128" message="OCC: Out of reagent or leakage/blockage in hoses or valve failure. {devicename}">
    </alarm>
    <alarm majorcode="3" minorcode="129" message="OCC: Out of hypochlorite or leakage/blockage in hose or valve failure. {devicename}">
    </alarm>
    <alarm majorcode="3" minorcode="130" message="OCC: No water in funnel or leakage/blockage in hose or valve failure. {devicename}">
    </alarm>
    <alarm majorcode="3" minorcode="131" message="OCC: No milk in funnel or leakage/blockage in hose or valve failure. {devicename}">
    </alarm>
    <alarm majorcode="3" minorcode="132" message="OCC: No answer from the OCC. {devicename}">
    </alarm>
    <alarm majorcode="3" minorcode="133" message="OCC: The OCC can't count the cells, a parameter setting is wrong. {devicename}">
    </alarm>
    <alarm majorcode="3" minorcode="134" message="OCC: Can't clean the cuvette, it's too dirty. {devicename}">
    </alarm>
    <alarm majorcode="3" minorcode="135" message="OCC: Can't recover, service needed!. {devicename}">
    </alarm>
    <alarm majorcode="3" minorcode="136" message="OCC: Can't get milk into the funnel. {devicename}">
    </alarm>
    <alarm majorcode="3" minorcode="137" message="OCC: Cellcount value might not be representative. {devicename}">
    </alarm>
    <alarm majorcode="3" minorcode="138" message="OCC: The funnel is not empty. {devicename}">
    </alarm>
    <alarm majorcode="3" minorcode="139" message="OCC: Error write to flash. {devicename}">
    </alarm>
    <alarm majorcode="3" minorcode="140" message="OCC: Error read from flash. {devicename}">
    </alarm>
    <alarm majorcode="3" minorcode="141" message="OCC: The funnel is clogged. {devicename}">
    </alarm>
    <alarm majorcode="3" minorcode="142" message="OCC: Several missing answers. {devicename}">
    </alarm>
    <alarm majorcode="3" minorcode="143" message="OCC: Pressure sensor broken. {devicename}">
    </alarm>
    <alarm majorcode="3" minorcode="144" message="OCC: Syringe leakage at over pressure. {devicename}">
    </alarm>
    <alarm majorcode="3" minorcode="145" message="OCC: Syringe leakage at under pressure. {devicename}">
    </alarm>
    <alarm majorcode="3" minorcode="146" message="OCC: Too low pressure in the hypochlorite tube. {devicename}">
    </alarm>
    <alarm majorcode="3" minorcode="147" message="OCC: Too low pressure in the air tube. {devicename}">
    </alarm>
    <alarm majorcode="3" minorcode="148" message="OCC: Too low pressure in the milk tube. {devicename}">
    </alarm>
    <alarm majorcode="3" minorcode="149" message="OCC: Too low pressure in the reagents tube. {devicename}">
    </alarm>
    <alarm majorcode="3" minorcode="150" message="OCC: Too high pressure in the cuvette tube to drain. {devicename}">
    </alarm>
    <alarm majorcode="3" minorcode="151" message="OCC: Too high pressure in the cuvette tube to waste container. {devicename}">
    </alarm>
    <alarm majorcode="3" minorcode="152" message="OCC: Too high pressure in the milk tube. {devicename}">
    </alarm>
    <alarm majorcode="3" minorcode="153" message="OCC: Too high pressure in the hypochlorite tube. {devicename}">
    </alarm>
    <alarm majorcode="4" minorcode="0" message="OK">
    </alarm>
    <alarm majorcode="4" minorcode="101" message="Failed to accept cow. {devicename}">
    </alarm>
    <alarm majorcode="4" minorcode="102" message="Failed to close gate after releasing cow. {devicename}">
    </alarm>
    <alarm majorcode="4" minorcode="103" message="Gate controller general error">
    </alarm>
    <alarm majorcode="4" minorcode="104" message="Error {SupportingData1} on gate {SupportingData2}">
    </alarm>
    <alarm majorcode="4" minorcode="107" message="Selection gate {sourcename}: Failed to close gate. Gate put into manual mode">
    </alarm>
    <alarm majorcode="4" minorcode="108" message="Separation gate {sourcename}: Failed to reach designated direction. Gate still in automatic mode.">
    </alarm>
    <alarm majorcode="4" minorcode="110" message="Cow released due to failure to accept this cow. {devicename}">
    </alarm>
    <alarm majorcode="4" minorcode="111" message="Cow accepted successfully. {devicename}">
    </alarm>
    <alarm majorcode="4" minorcode="112" message="Gate {sourcename} entrance photocell has been blocked for {SupportingData2} hours.">
    </alarm>
    <alarm majorcode="4" minorcode="113" message="Gate {sourcename} exit photocell probably detects the gate instead of cows.">
    </alarm>
    <alarm majorcode="4" minorcode="115" message="Gate {sourcename}. Cow train detected. Transponder 1: {SupportingData2}. Transponder 2: {SupportingData3}">
    </alarm>
    <alarm majorcode="4" minorcode="116" message="Gate {sourcename}. Cow train maybe detected. Transponder 1: {SupportingData2}. Transponder 2: {SupportingData3}">
    </alarm>
    <alarm majorcode="4" minorcode="117" message="Gate {sourcename}. Cow train prevented. Transponder 1: {SupportingData2}. Transponder 2: {SupportingData3}">
    </alarm>
    <alarm majorcode="4" minorcode="123" message="Cow has left area {SupportingData6}">
    </alarm>
    <alarm majorcode="4" minorcode="124" message="Communication failure on gate {SupportingData1}">
    </alarm>
    <alarm majorcode="4" minorcode="129" message="Cow won’t leave gate {SupportingData6}">
    </alarm>
    <alarm majorcode="4" minorcode="200" message="Transponder ID unexpectedly changed">
    </alarm>
    <alarm majorcode="5" minorcode="0" message="OK">
    </alarm>
    <alarm majorcode="5" minorcode="1" message="Washing step {SupportingData1}.{SupportingData2}">
    </alarm>
    <alarm majorcode="5" minorcode="2" message="Starting milk pump">
    </alarm>
    <alarm majorcode="5" minorcode="3" message="Stopping milk pump">
    </alarm>
    <alarm majorcode="5" minorcode="4" message="Milktp busy ({SupportingData1}). Ignored request ({SupportingData2})">
    </alarm>
    <alarm majorcode="5" minorcode="5" message="Tank state Idle">
    </alarm>
    <alarm majorcode="5" minorcode="6" message="Tank state wait to empty">
    </alarm>
    <alarm majorcode="5" minorcode="7" message="Tank state Cleaning">
    </alarm>
    <alarm majorcode="5" minorcode="8" message="Tank state Purging">
    </alarm>
    <alarm majorcode="5" minorcode="9" message="Tank state Emptying">
    </alarm>
    <alarm majorcode="5" minorcode="10" message="Milk truck has arrived">
    </alarm>
    <alarm majorcode="5" minorcode="11" message="Milk tank is empty">
    </alarm>
    <alarm majorcode="5" minorcode="12" message="Milktank is clean">
    </alarm>
    <alarm majorcode="5" minorcode="101" message="End unit not empty">
    </alarm>
    <alarm majorcode="5" minorcode="105" message="Cooling alarm">
    </alarm>
    <alarm majorcode="5" minorcode="108" message="Poor system vacuum {SupportingData1} ref {SupportingData2}">
      <property id="SupportingData1" unit="kPa"/>
      <property id="SupportingData2" unit="kPa"/>
    </alarm>
    <alarm majorcode="5" minorcode="112" message="End unit indicates emptying error. {devicename}">
    </alarm>
    <alarm majorcode="5" minorcode="114" message="Teatcleaner waste tank full">
    </alarm>
    <alarm majorcode="5" minorcode="115" message="Milk diverted, dest {SupportingData1}">
      <property id="SupportingData1" unit="MSMilkDestination"/>
    </alarm>
    <alarm majorcode="5" minorcode="116" message="Cleaning aborted">
    </alarm>
    <alarm majorcode="5" minorcode="117" message="Temperature teat cleaner {SupportingData1}">
      <property id="SupportingData1" unit="celsius"/>
    </alarm>
    <alarm majorcode="5" minorcode="118" message="Teatcleaner water too hot {SupportingData1}">
      <property id="SupportingData1" unit="celsius"/>
    </alarm>
    <alarm majorcode="5" minorcode="119" message="Teatcleaner temp sensor malfunction">
    </alarm>
    <alarm majorcode="5" minorcode="120" message="Scheduled Cleaning Not Done">
    </alarm>
    <alarm majorcode="5" minorcode="121" message="Communication lost with milkroom controller">
    </alarm>
    <alarm majorcode="5" minorcode="122" message="Teatcup {SupportingData1} not tight to jetter">
    </alarm>
    <alarm majorcode="5" minorcode="123" message="Milk Diverted due to Blood, dest {SupportingData1}. {devicename}">
      <property id="SupportingData1" unit="MSMilkDestination"/>
    </alarm>
    <alarm majorcode="5" minorcode="124" message="Milk Diverted due to Conductivity, dest {SupportingData1}. {devicename}">
      <property id="SupportingData1" unit="MSMilkDestination"/>
    </alarm>
    <alarm majorcode="5" minorcode="125" message="Milk Diverted due to User Setting, dest {SupportingData1}. {devicename}">
      <property id="SupportingData1" unit="MSMilkDestination"/>
    </alarm>
    <alarm majorcode="5" minorcode="126" message="Did not get water from RA-unit within {SupportingData1} minutes">
    </alarm>
    <alarm majorcode="5" minorcode="127" message="Error: low and high sensors in receiver both active">
    </alarm>
    <alarm majorcode="5" minorcode="129" message="Milk diverted due to MDi, dest {SupportingData1}. {devicename}">
      <property id="SupportingData1" unit="MSMilkDestination"/>
    </alarm>
    <alarm majorcode="5" minorcode="130" message="No milk destination set. Please set!">
    </alarm>
    <alarm majorcode="5" minorcode="131" message="SenseReceiverCleaningValve indicate error">
    </alarm>
    <alarm majorcode="5" minorcode="132" message="SenseReceiverSafetyValve indicate error">
    </alarm>
    <alarm majorcode="5" minorcode="133" message="Low vacuum level at start of wash">
    </alarm>
    <alarm majorcode="5" minorcode="200" message="Timeout filling detergent number {SupportingData1}">
    </alarm>
    <alarm majorcode="5" minorcode="201" message="Timeout filling water number {SupportingData1}">
    </alarm>
    <alarm majorcode="5" minorcode="202" message="Timeout emptying water in step {SupportingData1}, substep {SupportingData2}">
    </alarm>
    <alarm majorcode="5" minorcode="203" message="Too low temp during filling {SupportingData1} min {SupportingData2}">
      <property id="SupportingData1" unit="celsius"/>
      <property id="SupportingData2" unit="celsius"/>
    </alarm>
    <alarm majorcode="5" minorcode="204" message="Too low temp after circulation {SupportingData1} min {SupportingData2}">
      <property id="SupportingData1" unit="celsius"/>
      <property id="SupportingData2" unit="celsius"/>
    </alarm>
    <alarm majorcode="5" minorcode="205" message="Invalid cleaner config ix {SupportingData1} prog {SupportingData2} module {SupportingData3} vol {SupportingData4}">
    </alarm>
    <alarm majorcode="5" minorcode="206" message="Did not get MAY_CLEAN signal within {SupportingData1} minutes">
    </alarm>
    <alarm majorcode="5" minorcode="220" message="High Vacuum Level. Current: {SupportingData1}, limit: {SupportingData2}">
      <property id="SupportingData1" unit="kPa"/>
      <property id="SupportingData2" unit="kPa"/>
    </alarm>
    <alarm majorcode="5" minorcode="221" message="Low Vacuum Level. Current: {SupportingData1}, limit: {SupportingData2}">
      <property id="SupportingData1" unit="kPa"/>
      <property id="SupportingData2" unit="kPa"/>
    </alarm>
    <alarm majorcode="5" minorcode="251" message="Steam boiler overheated">
    </alarm>
    <alarm majorcode="5" minorcode="252" message="Steam not released">
    </alarm>
    <alarm majorcode="5" minorcode="300" message="Milk Valves in Wrong Position">
    </alarm>
    <alarm majorcode="6" minorcode="401" message="Too low teat cleaning vacuum">
    </alarm>
    <alarm majorcode="7" minorcode="0" message="OK">
    </alarm>
    <alarm majorcode="7" minorcode="1" message="Hygenius Low water return temperature">
    </alarm>
    <alarm majorcode="7" minorcode="2" message="Hygenius Detergent dosing fault">
    </alarm>
    <alarm majorcode="7" minorcode="3" message="Hygenius Overheat">
    </alarm>
    <alarm majorcode="7" minorcode="4" message="Hygenius Time out water filling, emptying or heating">
    </alarm>
    <alarm majorcode="7" minorcode="5" message="Hygenius Checksum error in parameter memory">
    </alarm>
    <alarm majorcode="7" minorcode="6" message="Hygenius Checksum error in program memory">
    </alarm>
    <alarm majorcode="7" minorcode="7" message="Hygenius Temperature sensor not factory calibrated">
    </alarm>
    <alarm majorcode="7" minorcode="8" message="Hygenius Possible mixing of detergents">
    </alarm>
    <alarm majorcode="7" minorcode="9" message="Hygenius Power failure during cleaning">
    </alarm>
    <alarm majorcode="7" minorcode="11" message="Hygenius CPU Watch-dog reset">
    </alarm>
    <alarm majorcode="7" minorcode="13" message="Hygenius Low level sensor failure, no cleaning performed!!">
    </alarm>
    <alarm majorcode="7" minorcode="14" message="Hygenius time-out during water filling">
    </alarm>
    <alarm majorcode="7" minorcode="15" message="Hygenius time-out during heating">
    </alarm>
    <alarm majorcode="7" minorcode="16" message="Hygenius time-out during emptying">
    </alarm>
    <alarm majorcode="7" minorcode="20" message="Hygenius Valve fault during milking">
    </alarm>
    <alarm majorcode="7" minorcode="21" message="Hygenius Valve fault during cleaning">
    </alarm>
    <alarm majorcode="7" minorcode="22" message="Hygenius Major valve fault">
    </alarm>
    <alarm majorcode="7" minorcode="23" message="Hygenius No air pressure">
    </alarm>
    <alarm majorcode="7" minorcode="255" message="Communication lost with Hygenius">
    </alarm>
    <alarm majorcode="9" minorcode="0" message="OK">
    </alarm>
    <alarm majorcode="9" minorcode="1" message="AMD - Check Cow !">
    </alarm>
    <alarm majorcode="9" minorcode="2" message="Milking station is disconnected">
    </alarm>
    <alarm majorcode="9" minorcode="3" message="AMS server is disconnected">
    </alarm>
    <alarm majorcode="9" minorcode="4" message="AMS server is stopped">
    </alarm>
    <alarm majorcode="9" minorcode="5" message="AMS is still working">
    </alarm>
    <alarm majorcode="9" minorcode="7" message="Milking station is stopped">
    </alarm>
    <alarm majorcode="9" minorcode="8" message="MS and Server have Different Versions, {SupportingData1} and {SupportingData2}">
    </alarm>
    <alarm majorcode="9" minorcode="9" message="Error in AMS Database, please repair it">
    </alarm>
    <alarm majorcode="9" minorcode="10" message="Error in AlproWindows Database, please repair it">
    </alarm>
    <alarm majorcode="9" minorcode="13" message="Milk is diverted automatically, due to high SCC level">
    </alarm>
    <alarm majorcode="9" minorcode="14" message="Cannot send out alarms. Check communication equipment!">
    </alarm>
    <alarm majorcode="9" minorcode="20" message="Redundant VMSServer is Down">
    </alarm>
    <alarm majorcode="9" minorcode="21" message="Redundant VMSServer is up">
    </alarm>
    <alarm majorcode="9" minorcode="24" message="The DeLaval Software and Online Service Terms of Use, which are governed by Swedish law and are available for download and printing at http://www.delaval.com/legal/ (it is recommended to print copies for future reference), shall exclusively govern the rights to, use of and liability for each DeLaval software and DeLaval online service (including, without limitation, each software and online service provided as part of or in connection with any DeLaval product) and all documentation and data made available or generated through or in connection with such software or service (unless other terms are provided with the software or online service, in which case such terms will apply). Each DeLaval software and DeLaval online service may transfer data to DeLaval International AB (and any other entity in the DeLaval Group) for use and further processing as set out and for the purposes described in the DeLaval Software and Online Service Data and Privacy Statement, which is available for download and printing at http://www.delaval.com/legal/.">
    </alarm>
    <alarm majorcode="9" minorcode="25" message="Service Hosted in VMSServer is Malfunctioning: {SupportingData6}">
    </alarm>
    <alarm majorcode="13" minorcode="0" message="OK">
    </alarm>
    <alarm majorcode="14" minorcode="1" message="WashInfo:">
    </alarm>
    <alarm majorcode="15" minorcode="303" message="Trough Level Unknown. {devicename}">
    </alarm>
    <alarm majorcode="15" minorcode="304" message="Water Taps On Too Long. {devicename}">
    </alarm>
    <alarm majorcode="15" minorcode="305" message="Water Too Hot. {devicename}">
    </alarm>
    <alarm majorcode="15" minorcode="306" message="Clean Water Not Available for Cupflush. {devicename}">
    </alarm>
    <alarm majorcode="15" minorcode="312" message="Teat Cleaning Failed. {devicename}">
    </alarm>
    <alarm majorcode="15" minorcode="314" message="Water Prime Failed. {devicename}">
    </alarm>
    <alarm majorcode="15" minorcode="315" message="No Water for Water Prime. {devicename}">
    </alarm>
    <alarm majorcode="15" minorcode="316" message="Water Supply or Flow Sensor Issues. {devicename}">
    </alarm>
    <alarm majorcode="15" minorcode="319" message="Could not Drain Trough. {devicename}">
    </alarm>
    <alarm majorcode="15" minorcode="320" message="Too high teat cleaning temperature: {SupportingData1} ({SupportingData2}-{SupportingData3}). {devicename}">
    </alarm>
    <alarm majorcode="15" minorcode="411" message="Teat Cleaning Vacuum Too Low. {devicename}">
    </alarm>
    <alarm majorcode="15" minorcode="451" message="Acid Detergent Pump Maintenance Required. {devicename}">
    </alarm>
    <alarm majorcode="15" minorcode="452" message="Alkali Detergent Pump Maintenance Required. {devicename}">
    </alarm>
    <alarm majorcode="15" minorcode="453" message="Chlorine Pump Maintenance Required. {devicename}">
    </alarm>
    <alarm majorcode="15" minorcode="454" message="Enzyme Detergent Pump Maintenance Required. {devicename}">
    </alarm>
    <alarm majorcode="15" minorcode="455" message="Sanitizer Pump Maintenance Required. {devicename}">
    </alarm>
    <alarm majorcode="17" minorcode="123" message="No vacuum in receiver. {devicename}">
    </alarm>
    <alarm majorcode="17" minorcode="124" message="Teat cup {SupportingData1} lost from milk tube. {devicename}">
    </alarm>
    <alarm majorcode="17" minorcode="1803" message="Failed to refill trough. {devicename}">
    </alarm>
    <alarm majorcode="205" minorcode="11" message="Local rinse">
    </alarm>
    <alarm majorcode="205" minorcode="12" message="System rinse">
    </alarm>
    <alarm majorcode="205" minorcode="13" message="Local cleaning">
    </alarm>
    <alarm majorcode="205" minorcode="14" message="System cleaning">
    </alarm>
    <alarm majorcode="205" minorcode="20" message="Acid">
    </alarm>
    <alarm majorcode="205" minorcode="21" message="Alkaline">
    </alarm>
    <alarm majorcode="205" minorcode="22" message="Chlorine">
    </alarm>
    <alarm majorcode="48" minorcode="2" message="Valve: {SupportingData1} Out of Position. {devicename}">
    </alarm>
    <alarm majorcode="48" minorcode="118" message="Cleaning Flag Manually Reset. {devicename}">
    </alarm>
    <alarm majorcode="48" minorcode="119" message="Test Alcom IO Card Value: {SupportingData1}. {devicename}">
    </alarm>
    <alarm majorcode="48" minorcode="120" message="Alcom IO Card Test Failed. {devicename}">
    </alarm>
    <alarm majorcode="48" minorcode="121" message="Lost IOMan Connection During Cleaning. {devicename}">
    </alarm>
    <alarm majorcode="48" minorcode="123" message="IOMan Disconnected. {devicename}">
    </alarm>
    <alarm majorcode="48" minorcode="151" message="Sensor {SupportingData1} is Simulated. {devicename}">
    </alarm>
    <alarm majorcode="48" minorcode="162" message="Remote Purge Valve Out of Position. {devicename}">
    </alarm>
    <alarm majorcode="48" minorcode="171" message="Cleaner is not responding cleaning request. {devicename}">
    </alarm>
  </alarms>
</messages>
