// SAL_VERSION=5.0.1 XML_VERSION=6.2.1
module Environment {
struct airPressure_d78bf2b4 {  // @Metadata=(Description="")
	  long	EnvironmentID;	//private // @Metadata=(Description="Index number for CSC with multiple instances")
	  string<8>	private_revCode; //private // @Metadata=(Units="unitless",Description="Revision code of topic")
	  double	private_sndStamp;    //private // @Metadata=(Units="second",Description="TAI at sender")
	  double	private_rcvStamp;    //private // @Metadata=(Units="second",Description="TAI at receiver")
	  long	private_seqNum;    //private // @Metadata=(Units="unitless",Description="Sequence number")
	  string<128>	private_identity;    //private // @Metadata=(Units="unitless",Description="Identity of originator")
	  long	private_origin;    //private // @Metadata=(Units="unitless",Description="PID code of sender")
	  long	private_host;    //private // @Metadata=(Units="unitless",Description="IP of sender")
	  double	paAvg1M; // @Metadata=(Units="pa",Description="1 minute average value")
	  double	patrValue3H; // @Metadata=(Units="pa",Description="Value for the last 3 hours for Air Pressure trend")
	  double	pateValue3H; // @Metadata=(Units="pa",Description="Value for the last 3 hours for Air Pressure Tendency")
	  string	sensorName; // @Metadata=(Units="unitless",Description="Sensor model used to measure this parameters")
	};
#pragma keylist airPressure_d78bf2b4 EnvironmentID
struct airTemperature_563cd1f7 {  // @Metadata=(Description="")
	  long	EnvironmentID;	//private // @Metadata=(Description="Index number for CSC with multiple instances")
	  string<8>	private_revCode; //private // @Metadata=(Units="unitless",Description="Revision code of topic")
	  double	private_sndStamp;    //private // @Metadata=(Units="second",Description="TAI at sender")
	  double	private_rcvStamp;    //private // @Metadata=(Units="second",Description="TAI at receiver")
	  long	private_seqNum;    //private // @Metadata=(Units="unitless",Description="Sequence number")
	  string<128>	private_identity;    //private // @Metadata=(Units="unitless",Description="Identity of originator")
	  long	private_origin;    //private // @Metadata=(Units="unitless",Description="PID code of sender")
	  long	private_host;    //private // @Metadata=(Units="unitless",Description="IP of sender")
	  double	avg24H; // @Metadata=(Units="degree",Description="24 hours average")
	  double	avg1M; // @Metadata=(Units="degree",Description="1 minute average value")
	  double	max24H; // @Metadata=(Units="degree",Description="Maximum value during the last 24 hours")
	  double	min24H; // @Metadata=(Units="degree",Description="Minimum value during the last 24 hours")
	  string	sensorName; // @Metadata=(Units="unitless",Description="Sensor model used to measure this parameters")
	};
#pragma keylist airTemperature_563cd1f7 EnvironmentID
struct command_abort_ba9574d1 {  // @Metadata=(Description="")
	  long	EnvironmentID;	//private // @Metadata=(Description="Index number for CSC with multiple instances")
	  string<8>	private_revCode; //private // @Metadata=(Units="unitless",Description="Revision code of topic")
	  double	private_sndStamp;    //private // @Metadata=(Units="second",Description="TAI at sender")
	  double	private_rcvStamp;    //private // @Metadata=(Units="second",Description="TAI at receiver")
	  long	private_seqNum;    //private // @Metadata=(Units="unitless",Description="Sequence number")
	  string<128>	private_identity;    //private // @Metadata=(Units="unitless",Description="Identity of originator")
	  long	private_origin;    //private // @Metadata=(Units="unitless",Description="PID code of sender")
	  long	private_host;    //private // @Metadata=(Units="unitless",Description="IP of sender")
	  boolean	value; // @Metadata=(Units="unitless",Description="Not used")
	};
#pragma keylist command_abort_ba9574d1 EnvironmentID
struct command_disable_af6df785 {  // @Metadata=(Description="")
	  long	EnvironmentID;	//private // @Metadata=(Description="Index number for CSC with multiple instances")
	  string<8>	private_revCode; //private // @Metadata=(Units="unitless",Description="Revision code of topic")
	  double	private_sndStamp;    //private // @Metadata=(Units="second",Description="TAI at sender")
	  double	private_rcvStamp;    //private // @Metadata=(Units="second",Description="TAI at receiver")
	  long	private_seqNum;    //private // @Metadata=(Units="unitless",Description="Sequence number")
	  string<128>	private_identity;    //private // @Metadata=(Units="unitless",Description="Identity of originator")
	  long	private_origin;    //private // @Metadata=(Units="unitless",Description="PID code of sender")
	  long	private_host;    //private // @Metadata=(Units="unitless",Description="IP of sender")
	  boolean	value; // @Metadata=(Units="unitless",Description="Not used")
	};
#pragma keylist command_disable_af6df785 EnvironmentID
struct command_enable_2b59f4a3 {  // @Metadata=(Description="")
	  long	EnvironmentID;	//private // @Metadata=(Description="Index number for CSC with multiple instances")
	  string<8>	private_revCode; //private // @Metadata=(Units="unitless",Description="Revision code of topic")
	  double	private_sndStamp;    //private // @Metadata=(Units="second",Description="TAI at sender")
	  double	private_rcvStamp;    //private // @Metadata=(Units="second",Description="TAI at receiver")
	  long	private_seqNum;    //private // @Metadata=(Units="unitless",Description="Sequence number")
	  string<128>	private_identity;    //private // @Metadata=(Units="unitless",Description="Identity of originator")
	  long	private_origin;    //private // @Metadata=(Units="unitless",Description="PID code of sender")
	  long	private_host;    //private // @Metadata=(Units="unitless",Description="IP of sender")
	  boolean	value; // @Metadata=(Units="unitless",Description="Not used")
	};
#pragma keylist command_enable_2b59f4a3 EnvironmentID
struct command_enterControl_c57900ce {  // @Metadata=(Description="")
	  long	EnvironmentID;	//private // @Metadata=(Description="Index number for CSC with multiple instances")
	  string<8>	private_revCode; //private // @Metadata=(Units="unitless",Description="Revision code of topic")
	  double	private_sndStamp;    //private // @Metadata=(Units="second",Description="TAI at sender")
	  double	private_rcvStamp;    //private // @Metadata=(Units="second",Description="TAI at receiver")
	  long	private_seqNum;    //private // @Metadata=(Units="unitless",Description="Sequence number")
	  string<128>	private_identity;    //private // @Metadata=(Units="unitless",Description="Identity of originator")
	  long	private_origin;    //private // @Metadata=(Units="unitless",Description="PID code of sender")
	  long	private_host;    //private // @Metadata=(Units="unitless",Description="IP of sender")
	  boolean	value; // @Metadata=(Units="unitless",Description="Not used")
	};
#pragma keylist command_enterControl_c57900ce EnvironmentID
struct command_exitControl_67b92e1e {  // @Metadata=(Description="")
	  long	EnvironmentID;	//private // @Metadata=(Description="Index number for CSC with multiple instances")
	  string<8>	private_revCode; //private // @Metadata=(Units="unitless",Description="Revision code of topic")
	  double	private_sndStamp;    //private // @Metadata=(Units="second",Description="TAI at sender")
	  double	private_rcvStamp;    //private // @Metadata=(Units="second",Description="TAI at receiver")
	  long	private_seqNum;    //private // @Metadata=(Units="unitless",Description="Sequence number")
	  string<128>	private_identity;    //private // @Metadata=(Units="unitless",Description="Identity of originator")
	  long	private_origin;    //private // @Metadata=(Units="unitless",Description="PID code of sender")
	  long	private_host;    //private // @Metadata=(Units="unitless",Description="IP of sender")
	  boolean	value; // @Metadata=(Units="unitless",Description="Not used")
	};
#pragma keylist command_exitControl_67b92e1e EnvironmentID
struct command_setAuthList_c53bcd80 {  // @Metadata=(Description="")
	  long	EnvironmentID;	//private // @Metadata=(Description="Index number for CSC with multiple instances")
	  string<8>	private_revCode; //private // @Metadata=(Units="unitless",Description="Revision code of topic")
	  double	private_sndStamp;    //private // @Metadata=(Units="second",Description="TAI at sender")
	  double	private_rcvStamp;    //private // @Metadata=(Units="second",Description="TAI at receiver")
	  long	private_seqNum;    //private // @Metadata=(Units="unitless",Description="Sequence number")
	  string<128>	private_identity;    //private // @Metadata=(Units="unitless",Description="Identity of originator")
	  long	private_origin;    //private // @Metadata=(Units="unitless",Description="PID code of sender")
	  long	private_host;    //private // @Metadata=(Units="unitless",Description="IP of sender")
	  string	authorizedUsers; // @Metadata=(Units="unitless",Description="Comma seperated list of authorized users currently allowed to command this CSC;")
	  string	nonAuthorizedCSCs; // @Metadata=(Units="unitless",Description="Comma seperated list of CSC's not currently allowed to command this CSC;")
	};
#pragma keylist command_setAuthList_c53bcd80 EnvironmentID
struct command_setLogLevel_89e2ec14 {  // @Metadata=(Description="")
	  long	EnvironmentID;	//private // @Metadata=(Description="Index number for CSC with multiple instances")
	  string<8>	private_revCode; //private // @Metadata=(Units="unitless",Description="Revision code of topic")
	  double	private_sndStamp;    //private // @Metadata=(Units="second",Description="TAI at sender")
	  double	private_rcvStamp;    //private // @Metadata=(Units="second",Description="TAI at receiver")
	  long	private_seqNum;    //private // @Metadata=(Units="unitless",Description="Sequence number")
	  string<128>	private_identity;    //private // @Metadata=(Units="unitless",Description="Identity of originator")
	  long	private_origin;    //private // @Metadata=(Units="unitless",Description="PID code of sender")
	  long	private_host;    //private // @Metadata=(Units="unitless",Description="IP of sender")
	  long	level; // @Metadata=(Units="unitless",Description="Logging level; as a Python logging level: error=40; warning=30; info=20; debug=10.")
	};
#pragma keylist command_setLogLevel_89e2ec14 EnvironmentID
struct command_setValue_7023b014 {  // @Metadata=(Description="")
	  long	EnvironmentID;	//private // @Metadata=(Description="Index number for CSC with multiple instances")
	  string<8>	private_revCode; //private // @Metadata=(Units="unitless",Description="Revision code of topic")
	  double	private_sndStamp;    //private // @Metadata=(Units="second",Description="TAI at sender")
	  double	private_rcvStamp;    //private // @Metadata=(Units="second",Description="TAI at receiver")
	  long	private_seqNum;    //private // @Metadata=(Units="unitless",Description="Sequence number")
	  string<128>	private_identity;    //private // @Metadata=(Units="unitless",Description="Identity of originator")
	  long	private_origin;    //private // @Metadata=(Units="unitless",Description="PID code of sender")
	  long	private_host;    //private // @Metadata=(Units="unitless",Description="IP of sender")
	  string<256>	parametersAndValues; // @Metadata=(Units="unitless",Description="List of parameters and their values as a Json string")
	};
#pragma keylist command_setValue_7023b014 EnvironmentID
struct command_standby_6634eeec {  // @Metadata=(Description="")
	  long	EnvironmentID;	//private // @Metadata=(Description="Index number for CSC with multiple instances")
	  string<8>	private_revCode; //private // @Metadata=(Units="unitless",Description="Revision code of topic")
	  double	private_sndStamp;    //private // @Metadata=(Units="second",Description="TAI at sender")
	  double	private_rcvStamp;    //private // @Metadata=(Units="second",Description="TAI at receiver")
	  long	private_seqNum;    //private // @Metadata=(Units="unitless",Description="Sequence number")
	  string<128>	private_identity;    //private // @Metadata=(Units="unitless",Description="Identity of originator")
	  long	private_origin;    //private // @Metadata=(Units="unitless",Description="PID code of sender")
	  long	private_host;    //private // @Metadata=(Units="unitless",Description="IP of sender")
	  boolean	value; // @Metadata=(Units="unitless",Description="Not used")
	};
#pragma keylist command_standby_6634eeec EnvironmentID
struct command_start_afe39802 {  // @Metadata=(Description="")
	  long	EnvironmentID;	//private // @Metadata=(Description="Index number for CSC with multiple instances")
	  string<8>	private_revCode; //private // @Metadata=(Units="unitless",Description="Revision code of topic")
	  double	private_sndStamp;    //private // @Metadata=(Units="second",Description="TAI at sender")
	  double	private_rcvStamp;    //private // @Metadata=(Units="second",Description="TAI at receiver")
	  long	private_seqNum;    //private // @Metadata=(Units="unitless",Description="Sequence number")
	  string<128>	private_identity;    //private // @Metadata=(Units="unitless",Description="Identity of originator")
	  long	private_origin;    //private // @Metadata=(Units="unitless",Description="PID code of sender")
	  long	private_host;    //private // @Metadata=(Units="unitless",Description="IP of sender")
	  string<256>	settingsToApply; // @Metadata=(Units="unitless",Description="Name of the selected settings set")
	};
#pragma keylist command_start_afe39802 EnvironmentID
struct dewPoint_73377915 {  // @Metadata=(Description="")
	  long	EnvironmentID;	//private // @Metadata=(Description="Index number for CSC with multiple instances")
	  string<8>	private_revCode; //private // @Metadata=(Units="unitless",Description="Revision code of topic")
	  double	private_sndStamp;    //private // @Metadata=(Units="second",Description="TAI at sender")
	  double	private_rcvStamp;    //private // @Metadata=(Units="second",Description="TAI at receiver")
	  long	private_seqNum;    //private // @Metadata=(Units="unitless",Description="Sequence number")
	  string<128>	private_identity;    //private // @Metadata=(Units="unitless",Description="Identity of originator")
	  long	private_origin;    //private // @Metadata=(Units="unitless",Description="PID code of sender")
	  long	private_host;    //private // @Metadata=(Units="unitless",Description="IP of sender")
	  double	avg1M; // @Metadata=(Units="unitless",Description="1 minute average value")
	  string	sensorName; // @Metadata=(Units="unitless",Description="Sensor model used to measure this parameters")
	};
#pragma keylist dewPoint_73377915 EnvironmentID
struct logevent_appliedSettingsMatchStart_b51c574b {  // @Metadata=(Description="")
	  long	EnvironmentID;	//private // @Metadata=(Description="Index number for CSC with multiple instances")
	  string<8>	private_revCode; //private // @Metadata=(Units="unitless",Description="Revision code of topic")
	  double	private_sndStamp;    //private // @Metadata=(Units="second",Description="TAI at sender")
	  double	private_rcvStamp;    //private // @Metadata=(Units="second",Description="TAI at receiver")
	  long	private_seqNum;    //private // @Metadata=(Units="unitless",Description="Sequence number")
	  string<128>	private_identity;    //private // @Metadata=(Units="unitless",Description="Identity of originator")
	  long	private_origin;    //private // @Metadata=(Units="unitless",Description="PID code of sender")
	  long	private_host;    //private // @Metadata=(Units="unitless",Description="IP of sender")
	  boolean	appliedSettingsMatchStartIsTrue; // @Metadata=(Units="unitless",Description="True when the configuration matches the start conditions")
	  long	priority; // @Metadata=(Units="unitless",Description="Priority code")
	};
#pragma keylist logevent_appliedSettingsMatchStart_b51c574b EnvironmentID
struct logevent_authList_6220fadf {  // @Metadata=(Description="")
	  long	EnvironmentID;	//private // @Metadata=(Description="Index number for CSC with multiple instances")
	  string<8>	private_revCode; //private // @Metadata=(Units="unitless",Description="Revision code of topic")
	  double	private_sndStamp;    //private // @Metadata=(Units="second",Description="TAI at sender")
	  double	private_rcvStamp;    //private // @Metadata=(Units="second",Description="TAI at receiver")
	  long	private_seqNum;    //private // @Metadata=(Units="unitless",Description="Sequence number")
	  string<128>	private_identity;    //private // @Metadata=(Units="unitless",Description="Identity of originator")
	  long	private_origin;    //private // @Metadata=(Units="unitless",Description="PID code of sender")
	  long	private_host;    //private // @Metadata=(Units="unitless",Description="IP of sender")
	  string	authorizedUsers; // @Metadata=(Units="unitless",Description="Comma seperated list of authorized users currently allowed to command this CSC.")
	  string	nonAuthorizedCSCs; // @Metadata=(Units="unitless",Description="Comma seperated list of CSC's not currently allowed to command this CSC.")
	  long	priority; // @Metadata=(Units="unitless",Description="Priority code")
	};
#pragma keylist logevent_authList_6220fadf EnvironmentID
struct logevent_errorCode_3e1c1eb6 {  // @Metadata=(Description="")
	  long	EnvironmentID;	//private // @Metadata=(Description="Index number for CSC with multiple instances")
	  string<8>	private_revCode; //private // @Metadata=(Units="unitless",Description="Revision code of topic")
	  double	private_sndStamp;    //private // @Metadata=(Units="second",Description="TAI at sender")
	  double	private_rcvStamp;    //private // @Metadata=(Units="second",Description="TAI at receiver")
	  long	private_seqNum;    //private // @Metadata=(Units="unitless",Description="Sequence number")
	  string<128>	private_identity;    //private // @Metadata=(Units="unitless",Description="Identity of originator")
	  long	private_origin;    //private // @Metadata=(Units="unitless",Description="PID code of sender")
	  long	private_host;    //private // @Metadata=(Units="unitless",Description="IP of sender")
	  long	errorCode; // @Metadata=(Units="unitless",Description="A numeric error code")
	  string	errorReport; // @Metadata=(Units="unitless",Description="An string providing detailed information about the error")
	  string	traceback; // @Metadata=(Units="unitless",Description="An optional stack trace of the error condition")
	  long	priority; // @Metadata=(Units="unitless",Description="Priority code")
	};
#pragma keylist logevent_errorCode_3e1c1eb6 EnvironmentID
struct logevent_heartbeat_953dc710 {  // @Metadata=(Description="")
	  long	EnvironmentID;	//private // @Metadata=(Description="Index number for CSC with multiple instances")
	  string<8>	private_revCode; //private // @Metadata=(Units="unitless",Description="Revision code of topic")
	  double	private_sndStamp;    //private // @Metadata=(Units="second",Description="TAI at sender")
	  double	private_rcvStamp;    //private // @Metadata=(Units="second",Description="TAI at receiver")
	  long	private_seqNum;    //private // @Metadata=(Units="unitless",Description="Sequence number")
	  string<128>	private_identity;    //private // @Metadata=(Units="unitless",Description="Identity of originator")
	  long	private_origin;    //private // @Metadata=(Units="unitless",Description="PID code of sender")
	  long	private_host;    //private // @Metadata=(Units="unitless",Description="IP of sender")
	  boolean	heartbeat; // @Metadata=(Units="unitless",Description="Beats the drum.")
	  long	priority; // @Metadata=(Units="unitless",Description="Priority code")
	};
#pragma keylist logevent_heartbeat_953dc710 EnvironmentID
struct logevent_logLevel_65da9b6d {  // @Metadata=(Description="")
	  long	EnvironmentID;	//private // @Metadata=(Description="Index number for CSC with multiple instances")
	  string<8>	private_revCode; //private // @Metadata=(Units="unitless",Description="Revision code of topic")
	  double	private_sndStamp;    //private // @Metadata=(Units="second",Description="TAI at sender")
	  double	private_rcvStamp;    //private // @Metadata=(Units="second",Description="TAI at receiver")
	  long	private_seqNum;    //private // @Metadata=(Units="unitless",Description="Sequence number")
	  string<128>	private_identity;    //private // @Metadata=(Units="unitless",Description="Identity of originator")
	  long	private_origin;    //private // @Metadata=(Units="unitless",Description="PID code of sender")
	  long	private_host;    //private // @Metadata=(Units="unitless",Description="IP of sender")
	  long	level; // @Metadata=(Units="unitless",Description="Current logging level; a Python logging level: error=40; warning=30; info=20; debug=10.")
	  long	priority; // @Metadata=(Units="unitless",Description="Priority code")
	};
#pragma keylist logevent_logLevel_65da9b6d EnvironmentID
struct logevent_logMessage_b536e827 {  // @Metadata=(Description="")
	  long	EnvironmentID;	//private // @Metadata=(Description="Index number for CSC with multiple instances")
	  string<8>	private_revCode; //private // @Metadata=(Units="unitless",Description="Revision code of topic")
	  double	private_sndStamp;    //private // @Metadata=(Units="second",Description="TAI at sender")
	  double	private_rcvStamp;    //private // @Metadata=(Units="second",Description="TAI at receiver")
	  long	private_seqNum;    //private // @Metadata=(Units="unitless",Description="Sequence number")
	  string<128>	private_identity;    //private // @Metadata=(Units="unitless",Description="Identity of originator")
	  long	private_origin;    //private // @Metadata=(Units="unitless",Description="PID code of sender")
	  long	private_host;    //private // @Metadata=(Units="unitless",Description="IP of sender")
	  string	name; // @Metadata=(Units="unitless",Description="Log name.")
	  long	level; // @Metadata=(Units="unitless",Description="Message level; a Python logging level: error=40; warning=30; info=20; debug=10.")
	  string	message; // @Metadata=(Units="unitless",Description="Log message.")
	  string	traceback; // @Metadata=(Units="unitless",Description="Exception traceback; "" if not an exception.")
	  string	filePath; // @Metadata=(Units="unitless",Description="Path to source file.")
	  string	functionName; // @Metadata=(Units="unitless",Description="Function or method name.")
	  long	lineNumber; // @Metadata=(Units="unitless",Description="Line number in the file specified by filePath.")
	  long	process; // @Metadata=(Units="unitless",Description="Process ID.")
	  long	priority; // @Metadata=(Units="unitless",Description="Priority code")
	};
#pragma keylist logevent_logMessage_b536e827 EnvironmentID
struct logevent_settingVersions_1f7938b6 {  // @Metadata=(Description="")
	  long	EnvironmentID;	//private // @Metadata=(Description="Index number for CSC with multiple instances")
	  string<8>	private_revCode; //private // @Metadata=(Units="unitless",Description="Revision code of topic")
	  double	private_sndStamp;    //private // @Metadata=(Units="second",Description="TAI at sender")
	  double	private_rcvStamp;    //private // @Metadata=(Units="second",Description="TAI at receiver")
	  long	private_seqNum;    //private // @Metadata=(Units="unitless",Description="Sequence number")
	  string<128>	private_identity;    //private // @Metadata=(Units="unitless",Description="Identity of originator")
	  long	private_origin;    //private // @Metadata=(Units="unitless",Description="PID code of sender")
	  long	private_host;    //private // @Metadata=(Units="unitless",Description="IP of sender")
	  string	recommendedSettingsVersion; // @Metadata=(Units="unitless",Description="List of comma seperated recomended versions of settings sets")
	  string	recommendedSettingsLabels; // @Metadata=(Units="unitless",Description="List of comma seperated names of settings sets")
	  string	settingsUrl; // @Metadata=(Units="unitless",Description="The URL where the settings sets definitions can be found")
	  long	priority; // @Metadata=(Units="unitless",Description="Priority code")
	};
#pragma keylist logevent_settingVersions_1f7938b6 EnvironmentID
struct logevent_settingsApplied_95106c45 {  // @Metadata=(Description="")
	  long	EnvironmentID;	//private // @Metadata=(Description="Index number for CSC with multiple instances")
	  string<8>	private_revCode; //private // @Metadata=(Units="unitless",Description="Revision code of topic")
	  double	private_sndStamp;    //private // @Metadata=(Units="second",Description="TAI at sender")
	  double	private_rcvStamp;    //private // @Metadata=(Units="second",Description="TAI at receiver")
	  long	private_seqNum;    //private // @Metadata=(Units="unitless",Description="Sequence number")
	  string<128>	private_identity;    //private // @Metadata=(Units="unitless",Description="Identity of originator")
	  long	private_origin;    //private // @Metadata=(Units="unitless",Description="PID code of sender")
	  long	private_host;    //private // @Metadata=(Units="unitless",Description="IP of sender")
	  string<256>	settingsVersion; // @Metadata=(Units="unitless",Description="The SHA or name corresponding to the published configuration")
	  string	otherSettingsEvents; // @Metadata=(Units="unitless",Description="A comma delimited list of other specific CSC configuration events. This may be blank if no other CSC specific events are necessary")
	  long	priority; // @Metadata=(Units="unitless",Description="Priority code")
	};
#pragma keylist logevent_settingsApplied_95106c45 EnvironmentID
struct logevent_simulationMode_856111cc {  // @Metadata=(Description="")
	  long	EnvironmentID;	//private // @Metadata=(Description="Index number for CSC with multiple instances")
	  string<8>	private_revCode; //private // @Metadata=(Units="unitless",Description="Revision code of topic")
	  double	private_sndStamp;    //private // @Metadata=(Units="second",Description="TAI at sender")
	  double	private_rcvStamp;    //private // @Metadata=(Units="second",Description="TAI at receiver")
	  long	private_seqNum;    //private // @Metadata=(Units="unitless",Description="Sequence number")
	  string<128>	private_identity;    //private // @Metadata=(Units="unitless",Description="Identity of originator")
	  long	private_origin;    //private // @Metadata=(Units="unitless",Description="PID code of sender")
	  long	private_host;    //private // @Metadata=(Units="unitless",Description="IP of sender")
	  long	mode; // @Metadata=(Units="unitless",Description="Current simulation mode; 0 for normal operation (no simulation); other supported values are specific to each CSC.")
	  long	priority; // @Metadata=(Units="unitless",Description="Priority code")
	};
#pragma keylist logevent_simulationMode_856111cc EnvironmentID
struct logevent_softwareVersions_ac563b17 {  // @Metadata=(Description="")
	  long	EnvironmentID;	//private // @Metadata=(Description="Index number for CSC with multiple instances")
	  string<8>	private_revCode; //private // @Metadata=(Units="unitless",Description="Revision code of topic")
	  double	private_sndStamp;    //private // @Metadata=(Units="second",Description="TAI at sender")
	  double	private_rcvStamp;    //private // @Metadata=(Units="second",Description="TAI at receiver")
	  long	private_seqNum;    //private // @Metadata=(Units="unitless",Description="Sequence number")
	  string<128>	private_identity;    //private // @Metadata=(Units="unitless",Description="Identity of originator")
	  long	private_origin;    //private // @Metadata=(Units="unitless",Description="PID code of sender")
	  long	private_host;    //private // @Metadata=(Units="unitless",Description="IP of sender")
	  string<256>	salVersion; // @Metadata=(Units="unitless",Description="This is the current version of SAL generation")
	  string<256>	xmlVersion; // @Metadata=(Units="unitless",Description="This is the current version of CSC XML")
	  string<256>	openSpliceVersion; // @Metadata=(Units="unitless",Description="This is the current version of OpenSplice")
	  string<256>	cscVersion; // @Metadata=(Units="unitless",Description="This is the top-level version of the CSC")
	  string	subsystemVersions; // @Metadata=(Units="unitless",Description="A comma delimited list of key=value pairs relating subsystem name (key) to its version number (value). This may be left blank if there are no subsystems within a CSC")
	  long	priority; // @Metadata=(Units="unitless",Description="Priority code")
	};
#pragma keylist logevent_softwareVersions_ac563b17 EnvironmentID
struct logevent_summaryState_91de157d {  // @Metadata=(Description="")
	  long	EnvironmentID;	//private // @Metadata=(Description="Index number for CSC with multiple instances")
	  string<8>	private_revCode; //private // @Metadata=(Units="unitless",Description="Revision code of topic")
	  double	private_sndStamp;    //private // @Metadata=(Units="second",Description="TAI at sender")
	  double	private_rcvStamp;    //private // @Metadata=(Units="second",Description="TAI at receiver")
	  long	private_seqNum;    //private // @Metadata=(Units="unitless",Description="Sequence number")
	  string<128>	private_identity;    //private // @Metadata=(Units="unitless",Description="Identity of originator")
	  long	private_origin;    //private // @Metadata=(Units="unitless",Description="PID code of sender")
	  long	private_host;    //private // @Metadata=(Units="unitless",Description="IP of sender")
	  long	summaryState; // @Metadata=(Units="unitless",Description="High level state machine state identifier")
	  long	priority; // @Metadata=(Units="unitless",Description="Priority code")
	};
#pragma keylist logevent_summaryState_91de157d EnvironmentID
struct precipitation_8b0c5e11 {  // @Metadata=(Description="")
	  long	EnvironmentID;	//private // @Metadata=(Description="Index number for CSC with multiple instances")
	  string<8>	private_revCode; //private // @Metadata=(Units="unitless",Description="Revision code of topic")
	  double	private_sndStamp;    //private // @Metadata=(Units="second",Description="TAI at sender")
	  double	private_rcvStamp;    //private // @Metadata=(Units="second",Description="TAI at receiver")
	  long	private_seqNum;    //private // @Metadata=(Units="unitless",Description="Sequence number")
	  string<128>	private_identity;    //private // @Metadata=(Units="unitless",Description="Identity of originator")
	  long	private_origin;    //private // @Metadata=(Units="unitless",Description="PID code of sender")
	  long	private_host;    //private // @Metadata=(Units="unitless",Description="IP of sender")
	  double	prSum1M; // @Metadata=(Units="unitless",Description="1 minute sum value")
	  double	prSum1H; // @Metadata=(Units="unitless",Description="1 hour sum value")
	  double	prfSum1M; // @Metadata=(Units="unitless",Description="1 minute sum value for precipitation intensity")
	  string	sensorName; // @Metadata=(Units="unitless",Description="Sensor model used to measure this parameters")
	};
#pragma keylist precipitation_8b0c5e11 EnvironmentID
struct relativeHumidity_107bb1ae {  // @Metadata=(Description="")
	  long	EnvironmentID;	//private // @Metadata=(Description="Index number for CSC with multiple instances")
	  string<8>	private_revCode; //private // @Metadata=(Units="unitless",Description="Revision code of topic")
	  double	private_sndStamp;    //private // @Metadata=(Units="second",Description="TAI at sender")
	  double	private_rcvStamp;    //private // @Metadata=(Units="second",Description="TAI at receiver")
	  long	private_seqNum;    //private // @Metadata=(Units="unitless",Description="Sequence number")
	  string<128>	private_identity;    //private // @Metadata=(Units="unitless",Description="Identity of originator")
	  long	private_origin;    //private // @Metadata=(Units="unitless",Description="PID code of sender")
	  long	private_host;    //private // @Metadata=(Units="unitless",Description="IP of sender")
	  double	avg24H; // @Metadata=(Units="unitless",Description="24 hours average")
	  double	avg1M; // @Metadata=(Units="unitless",Description="1 minute average value")
	  double	max24H; // @Metadata=(Units="unitless",Description="Maximum value during the last 24 hours")
	  double	min24H; // @Metadata=(Units="unitless",Description="Minimum value during the last 24 hours")
	  string	sensorName; // @Metadata=(Units="unitless",Description="Sensor model used to measure this parameters")
	};
#pragma keylist relativeHumidity_107bb1ae EnvironmentID
struct snowDepth_49725792 {  // @Metadata=(Description="")
	  long	EnvironmentID;	//private // @Metadata=(Description="Index number for CSC with multiple instances")
	  string<8>	private_revCode; //private // @Metadata=(Units="unitless",Description="Revision code of topic")
	  double	private_sndStamp;    //private // @Metadata=(Units="second",Description="TAI at sender")
	  double	private_rcvStamp;    //private // @Metadata=(Units="second",Description="TAI at receiver")
	  long	private_seqNum;    //private // @Metadata=(Units="unitless",Description="Sequence number")
	  string<128>	private_identity;    //private // @Metadata=(Units="unitless",Description="Identity of originator")
	  long	private_origin;    //private // @Metadata=(Units="unitless",Description="PID code of sender")
	  long	private_host;    //private // @Metadata=(Units="unitless",Description="IP of sender")
	  double	avg1M; // @Metadata=(Units="unitless",Description="1 minute average value")
	  double	max24H; // @Metadata=(Units="unitless",Description="Maximum value during the last 24 hours")
	  double	min24H; // @Metadata=(Units="unitless",Description="Minimum value during the last 24 hours")
	  double	avg24H; // @Metadata=(Units="unitless",Description="24 hours average")
	  string	sensorName; // @Metadata=(Units="unitless",Description="Sensor model used to measure this parameters")
	};
#pragma keylist snowDepth_49725792 EnvironmentID
struct soilTemperature_92f0c814 {  // @Metadata=(Description="")
	  long	EnvironmentID;	//private // @Metadata=(Description="Index number for CSC with multiple instances")
	  string<8>	private_revCode; //private // @Metadata=(Units="unitless",Description="Revision code of topic")
	  double	private_sndStamp;    //private // @Metadata=(Units="second",Description="TAI at sender")
	  double	private_rcvStamp;    //private // @Metadata=(Units="second",Description="TAI at receiver")
	  long	private_seqNum;    //private // @Metadata=(Units="unitless",Description="Sequence number")
	  string<128>	private_identity;    //private // @Metadata=(Units="unitless",Description="Identity of originator")
	  long	private_origin;    //private // @Metadata=(Units="unitless",Description="PID code of sender")
	  long	private_host;    //private // @Metadata=(Units="unitless",Description="IP of sender")
	  double	avg24H; // @Metadata=(Units="degree",Description="24 hours average")
	  double	avg1M; // @Metadata=(Units="degree",Description="1 minute average value")
	  double	max24H; // @Metadata=(Units="degree",Description="Maximum value during the last 24 hours")
	  double	min24H; // @Metadata=(Units="degree",Description="Minimum value during the last 24 hours")
	  string	sensorName; // @Metadata=(Units="unitless",Description="Sensor model used to measure this parameters")
	};
#pragma keylist soilTemperature_92f0c814 EnvironmentID
	 const long indexEnumeration_any=1;
struct solarNetRadiation_9194b39b {  // @Metadata=(Description="")
	  long	EnvironmentID;	//private // @Metadata=(Description="Index number for CSC with multiple instances")
	  string<8>	private_revCode; //private // @Metadata=(Units="unitless",Description="Revision code of topic")
	  double	private_sndStamp;    //private // @Metadata=(Units="second",Description="TAI at sender")
	  double	private_rcvStamp;    //private // @Metadata=(Units="second",Description="TAI at receiver")
	  long	private_seqNum;    //private // @Metadata=(Units="unitless",Description="Sequence number")
	  string<128>	private_identity;    //private // @Metadata=(Units="unitless",Description="Identity of originator")
	  long	private_origin;    //private // @Metadata=(Units="unitless",Description="PID code of sender")
	  long	private_host;    //private // @Metadata=(Units="unitless",Description="IP of sender")
	  double	avg1M; // @Metadata=(Units="unitless",Description="1 minute average value")
	  double	max24H; // @Metadata=(Units="unitless",Description="Maximum value during the last 24 hours")
	  double	min24H; // @Metadata=(Units="unitless",Description="Minimum value during the last 24 hours")
	  double	avg24H; // @Metadata=(Units="unitless",Description="24 hours average")
	  string	sensorName; // @Metadata=(Units="unitless",Description="Sensor model used to measure this parameters")
	};
#pragma keylist solarNetRadiation_9194b39b EnvironmentID
struct weather_b1c0231f {  // @Metadata=(Description="")
	  long	EnvironmentID;	//private // @Metadata=(Description="Index number for CSC with multiple instances")
	  string<8>	private_revCode; //private // @Metadata=(Units="unitless",Description="Revision code of topic")
	  double	private_sndStamp;    //private // @Metadata=(Units="second",Description="TAI at sender")
	  double	private_rcvStamp;    //private // @Metadata=(Units="second",Description="TAI at receiver")
	  long	private_seqNum;    //private // @Metadata=(Units="unitless",Description="Sequence number")
	  string<128>	private_identity;    //private // @Metadata=(Units="unitless",Description="Identity of originator")
	  long	private_origin;    //private // @Metadata=(Units="unitless",Description="PID code of sender")
	  long	private_host;    //private // @Metadata=(Units="unitless",Description="IP of sender")
	  double	ambient_temp; // @Metadata=(Units="degree",Description="The ambient temperature.")
	  double	humidity; // @Metadata=(Units="unitless",Description="The humidity.")
	  double	pressure; // @Metadata=(Units="unitless",Description="The pressure outside.")
	};
#pragma keylist weather_b1c0231f EnvironmentID
struct windDirection_518722ee {  // @Metadata=(Description="")
	  long	EnvironmentID;	//private // @Metadata=(Description="Index number for CSC with multiple instances")
	  string<8>	private_revCode; //private // @Metadata=(Units="unitless",Description="Revision code of topic")
	  double	private_sndStamp;    //private // @Metadata=(Units="second",Description="TAI at sender")
	  double	private_rcvStamp;    //private // @Metadata=(Units="second",Description="TAI at receiver")
	  long	private_seqNum;    //private // @Metadata=(Units="unitless",Description="Sequence number")
	  string<128>	private_identity;    //private // @Metadata=(Units="unitless",Description="Identity of originator")
	  long	private_origin;    //private // @Metadata=(Units="unitless",Description="PID code of sender")
	  long	private_host;    //private // @Metadata=(Units="unitless",Description="IP of sender")
	  double	value; // @Metadata=(Units="unitless",Description="Instantaneous value")
	  double	avg2M; // @Metadata=(Units="unitless",Description="2 minutes average value")
	  double	max2M; // @Metadata=(Units="unitless",Description="Maximum value during the last 2 minutes")
	  double	min2M; // @Metadata=(Units="unitless",Description="Minimum value during the last 2 minutes")
	  double	avg10M; // @Metadata=(Units="unitless",Description="10 minutes average value")
	  double	max10M; // @Metadata=(Units="unitless",Description="Maximum value during the last 10 minutes")
	  string	sensorName; // @Metadata=(Units="unitless",Description="Sensor model used to measure this parameters")
	};
#pragma keylist windDirection_518722ee EnvironmentID
struct windGustDirection_f008c5d6 {  // @Metadata=(Description="")
	  long	EnvironmentID;	//private // @Metadata=(Description="Index number for CSC with multiple instances")
	  string<8>	private_revCode; //private // @Metadata=(Units="unitless",Description="Revision code of topic")
	  double	private_sndStamp;    //private // @Metadata=(Units="second",Description="TAI at sender")
	  double	private_rcvStamp;    //private // @Metadata=(Units="second",Description="TAI at receiver")
	  long	private_seqNum;    //private // @Metadata=(Units="unitless",Description="Sequence number")
	  string<128>	private_identity;    //private // @Metadata=(Units="unitless",Description="Identity of originator")
	  long	private_origin;    //private // @Metadata=(Units="unitless",Description="PID code of sender")
	  long	private_host;    //private // @Metadata=(Units="unitless",Description="IP of sender")
	  double	value10M; // @Metadata=(Units="unitless",Description="value for the last 10 minutes ")
	  string	sensorName; // @Metadata=(Units="unitless",Description="Sensor model used to measure this parameters")
	};
#pragma keylist windGustDirection_f008c5d6 EnvironmentID
struct windSpeed_35876299 {  // @Metadata=(Description="")
	  long	EnvironmentID;	//private // @Metadata=(Description="Index number for CSC with multiple instances")
	  string<8>	private_revCode; //private // @Metadata=(Units="unitless",Description="Revision code of topic")
	  double	private_sndStamp;    //private // @Metadata=(Units="second",Description="TAI at sender")
	  double	private_rcvStamp;    //private // @Metadata=(Units="second",Description="TAI at receiver")
	  long	private_seqNum;    //private // @Metadata=(Units="unitless",Description="Sequence number")
	  string<128>	private_identity;    //private // @Metadata=(Units="unitless",Description="Identity of originator")
	  long	private_origin;    //private // @Metadata=(Units="unitless",Description="PID code of sender")
	  long	private_host;    //private // @Metadata=(Units="unitless",Description="IP of sender")
	  double	value; // @Metadata=(Units="unitless",Description="Instantaneous value")
	  double	avg2M; // @Metadata=(Units="unitless",Description="2 minutes average value")
	  double	max2M; // @Metadata=(Units="unitless",Description="Maximum value during the last 2 minutes")
	  double	min2M; // @Metadata=(Units="unitless",Description="Minimum value during the last 2 minutes")
	  double	avg10M; // @Metadata=(Units="unitless",Description="10 minutes average value")
	  double	max10M; // @Metadata=(Units="unitless",Description="Maximum value during the last 10 minutes")
	  string	sensorName; // @Metadata=(Units="unitless",Description="Sensor model used to measure this parameters")
	};
#pragma keylist windSpeed_35876299 EnvironmentID
struct ackcmd_82a800b4 {  // @Metadata=(Description="")
  string<8>	private_revCode; //private
  double	private_sndStamp;    //private
  double	private_rcvStamp;    //private
  long	private_seqNum;    //private
  string<128>	private_identity;    //private
  long	private_origin;    //private
  long	private_host;    //private
	  long	EnvironmentID; // @Metadata=(Description="Index number for CSC with multiple instances")
	  long	ack;
	  long	error;
	  string<256>	result;
	  string	identity;
	  long	host;
	  long	origin;
	  long	cmdtype;
	  double	timeout;
	};
#pragma keylist ackcmd_82a800b4 EnvironmentID
};

