
/*
 * Generator version: 5.14.0
 * AUTOSAR version:   4.0.3
 */

#include "Dem.h"
#include "CalibrationData.h"
#if (DEM_USE_NVM == STD_ON)
//#include "NvM.h"
#endif

#if defined(USE_RTE)
#include "Rte_Dem.h"
#endif

//#include "CalibrationData.h"
/* Included header files containing callback declarations */	
//#include "Dem_Callbacks.h"

// #########################################  INFO  #########################################
// The following data read callbacks should be declared in the included header files:

// Std_ReturnType Get_Mlx_Die1_Val(uint8 *Data);
// Std_ReturnType Get_TCU_GearPos_Info(uint8 *Data);
// Std_ReturnType Get_Actuator_Pos_Info(uint8 *Data);
// Std_ReturnType Get_GSM_GearPos_Info(uint8 *Data);
// Std_ReturnType Get_Mlx_Die2_Val(uint8 *Data);
// Std_ReturnType Get_Internal_ADC_Info(uint8 *Data);
// Std_ReturnType Get_Battery_Status(uint8 *Data);
// Std_ReturnType Get_Break_Status(uint8 *Data);
// Std_ReturnType Get_Ignition_Status(uint8 *Data);
// Std_ReturnType Get_LMC_MechPos_Info(uint8 *Data);
// Std_ReturnType Get_ShieldOpDr_AutoP_Status(uint8 *Data);
// Std_ReturnType Get_Pbutton_Status(uint8 *Data);
// Std_ReturnType Get_PowerSupply(uint8 *Data);
// ##########################################################################################
// Rte functions

#define DEM_PIDANDDID_LIST_EOL_INDEX 	12u
#define DEM_FF_LIST_EOL_INDEX 			1u

#define DEM_PID_LIST_EOL_INDEX			0u
#define DEM_DID_LIST_EOL_INDEX			12u

#if (DEM_MAX_NUMBER_EVENT_PRI_MEM < 16) && (DEM_EVENT_DISPLACEMENT_SUPPORT == STD_OFF)
#warning Dem: The number of events with event destination primary memory is greater than the configured maximum \
number of events which can be stored in primary memory (Dem Max Number Event Entry Primary)! \
If changing Dem Max Number Event Entry Primary also make sure that the Fee block is big enough (if Fee used).
#endif

#if (DEM_MAX_NUMBER_EVENT_SEC_MEM < 0) && (DEM_EVENT_DISPLACEMENT_SUPPORT == STD_OFF)
#warning Dem: The number of events with event destination secondary memory is greater than the configured maximum \
number of events which can be stored in seconday memory (Dem Max Number Event Entry Secondary)! \
If changing Dem Max Number Event Entry Secondary also make sure that the Fee block is big enough (if Fee used).
#endif

#define Dem_START_SEC_CALIB_UNSPECIFIED
//#include "Dem_MemMap.h" /*lint !e9019 suppressed due to Dem_MemMap.h include is required */
/**
 * @a2l_characteristic P123312_PButton2NotOK_DTC
 * @desc calib param for DTC P123312_PButton2NotOK
 * @struct_size 3
 * @field_name UDSDTC
 * @min 1
 * @max 16777214
 * @type uint32
 * @field_name OBDDTC
 * @min 1
 * @max 65535
 * @type uint32
 * @field_name DTCUsed
 * @min 0
 * @max 1
 * @type uint8
 */
#if !defined(HOST_TEST)
//ARC_DECLARE_CALIB(const Arc_Dem_DTC, P123312_PButton2NotOK_DTC) = {
#else
//Arc_Dem_DTC P123312_PButton2NotOK_DTC = {
#endif /* HOST_TEST */
//	.UDSDTC = 1192722,
//	.OBDDTC = DEM_NO_DTC,
//	.DTCUsed = TRUE,
//};
#define Dem_STOP_SEC_CALIB_UNSPECIFIED
//#include "Dem_MemMap.h" /*lint !e9019 suppressed due to Dem_MemMap.h include is required */
#define Dem_START_SEC_CALIB_UNSPECIFIED
//#include "Dem_MemMap.h" /*lint !e9019 suppressed due to Dem_MemMap.h include is required */
/**
 * @a2l_characteristic U010100_TCULost_DTC
 * @desc calib param for DTC U010100_TCULost
 * @struct_size 3
 * @field_name UDSDTC
 * @min 1
 * @max 16777214
 * @type uint32
 * @field_name OBDDTC
 * @min 1
 * @max 65535
 * @type uint32
 * @field_name DTCUsed
 * @min 0
 * @max 1
 * @type uint8
 */
/*
#if !defined(HOST_TEST)
ARC_DECLARE_CALIB(const Arc_Dem_DTC, U010100_TCULost_DTC) = {
#else
Arc_Dem_DTC U010100_TCULost_DTC = {
#endif
	.UDSDTC = 12648704,
	.OBDDTC = DEM_NO_DTC,
	.DTCUsed = TRUE,
};
*/
#define Dem_STOP_SEC_CALIB_UNSPECIFIED
//#include "Dem_MemMap.h" /*lint !e9019 suppressed due to Dem_MemMap.h include is required */
#define Dem_START_SEC_CALIB_UNSPECIFIED
//#include "Dem_MemMap.h" /*lint !e9019 suppressed due to Dem_MemMap.h include is required */
/**
 * @a2l_characteristic C07300_BusOff_DTC
 * @desc calib param for DTC C07300_BusOff
 * @struct_size 3
 * @field_name UDSDTC
 * @min 1
 * @max 16777214
 * @type uint32
 * @field_name OBDDTC
 * @min 1
 * @max 65535
 * @type uint32
 * @field_name DTCUsed
 * @min 0
 * @max 1
 * @type uint8
 */
#if !defined(HOST_TEST)
ARC_DECLARE_CALIB(const Arc_Dem_DTC, C07300_BusOff_DTC) = {
#else
Arc_Dem_DTC C07300_BusOff_DTC = {
#endif /* HOST_TEST */
	.UDSDTC = 12612352,
	.OBDDTC = DEM_NO_DTC,
	.DTCUsed = TRUE,
};
#define Dem_STOP_SEC_CALIB_UNSPECIFIED
//#include "Dem_MemMap.h" /*lint !e9019 suppressed due to Dem_MemMap.h include is required */
#define Dem_START_SEC_CALIB_UNSPECIFIED
//#include "Dem_MemMap.h" /*lint !e9019 suppressed due to Dem_MemMap.h include is required */
/**
 * @a2l_characteristic A06800_MorErr_DTC
 * @desc calib param for DTC A06800_MorErr
 * @struct_size 3
 * @field_name UDSDTC
 * @min 1
 * @max 16777214
 * @type uint32
 * @field_name OBDDTC
 * @min 1
 * @max 65535
 * @type uint32
 * @field_name DTCUsed
 * @min 0
 * @max 1
 * @type uint8
 */
#if !defined(HOST_TEST)
ARC_DECLARE_CALIB(const Arc_Dem_DTC, A06800_MorErr_DTC) = {
#else
Arc_Dem_DTC A06800_MorErr_DTC = {
#endif /* HOST_TEST */
	.UDSDTC = 10512384,
	.OBDDTC = DEM_NO_DTC,
	.DTCUsed = TRUE,
};
#define Dem_STOP_SEC_CALIB_UNSPECIFIED
//#include "Dem_MemMap.h" /*lint !e9019 suppressed due to Dem_MemMap.h include is required */
#define Dem_START_SEC_CALIB_UNSPECIFIED
//#include "Dem_MemMap.h" /*lint !e9019 suppressed due to Dem_MemMap.h include is required */
/**
 * @a2l_characteristic A06700_PressErr_DTC
 * @desc calib param for DTC A06700_PressErr
 * @struct_size 3
 * @field_name UDSDTC
 * @min 1
 * @max 16777214
 * @type uint32
 * @field_name OBDDTC
 * @min 1
 * @max 65535
 * @type uint32
 * @field_name DTCUsed
 * @min 0
 * @max 1
 * @type uint8
 */
#if !defined(HOST_TEST)
ARC_DECLARE_CALIB(const Arc_Dem_DTC, A06700_PressErr_DTC) = {
#else
Arc_Dem_DTC A06700_PressErr_DTC = {
#endif /* HOST_TEST */
	.UDSDTC = 10512128,
	.OBDDTC = DEM_NO_DTC,
	.DTCUsed = TRUE,
};
#define Dem_STOP_SEC_CALIB_UNSPECIFIED
//#include "Dem_MemMap.h" /*lint !e9019 suppressed due to Dem_MemMap.h include is required */
#define Dem_START_SEC_CALIB_UNSPECIFIED
//#include "Dem_MemMap.h" /*lint !e9019 suppressed due to Dem_MemMap.h include is required */
/**
 * @a2l_characteristic F00616_LowVoltage_DTC
 * @desc calib param for DTC F00616_LowVoltage
 * @struct_size 3
 * @field_name UDSDTC
 * @min 1
 * @max 16777214
 * @type uint32
 * @field_name OBDDTC
 * @min 1
 * @max 65535
 * @type uint32
 * @field_name DTCUsed
 * @min 0
 * @max 1
 * @type uint8
 */
#if !defined(HOST_TEST)
ARC_DECLARE_CALIB(const Arc_Dem_DTC, F00616_LowVoltage_DTC) = {
#else
Arc_Dem_DTC F00616_LowVoltage_DTC = {
#endif /* HOST_TEST */
	.UDSDTC = 15730198,
	.OBDDTC = DEM_NO_DTC,
	.DTCUsed = TRUE,
};
#define Dem_STOP_SEC_CALIB_UNSPECIFIED
//#include "Dem_MemMap.h" /*lint !e9019 suppressed due to Dem_MemMap.h include is required */
#define Dem_START_SEC_CALIB_UNSPECIFIED
//#include "Dem_MemMap.h" /*lint !e9019 suppressed due to Dem_MemMap.h include is required */
/**
 * @a2l_characteristic F00617_HighVoltage_DTC
 * @desc calib param for DTC F00617_HighVoltage
 * @struct_size 3
 * @field_name UDSDTC
 * @min 1
 * @max 16777214
 * @type uint32
 * @field_name OBDDTC
 * @min 1
 * @max 65535
 * @type uint32
 * @field_name DTCUsed
 * @min 0
 * @max 1
 * @type uint8
 */
#if !defined(HOST_TEST)
ARC_DECLARE_CALIB(const Arc_Dem_DTC, F00617_HighVoltage_DTC) = {
#else
Arc_Dem_DTC F00617_HighVoltage_DTC = {
#endif /* HOST_TEST */
	.UDSDTC = 15730199,
	.OBDDTC = DEM_NO_DTC,
	.DTCUsed = TRUE,
};
#define Dem_STOP_SEC_CALIB_UNSPECIFIED
//#include "Dem_MemMap.h" /*lint !e9019 suppressed due to Dem_MemMap.h include is required */
#define Dem_START_SEC_CALIB_UNSPECIFIED
//#include "Dem_MemMap.h" /*lint !e9019 suppressed due to Dem_MemMap.h include is required */
/**
 * @a2l_characteristic A06600_TouErr_DTC
 * @desc calib param for DTC A06600_TouErr
 * @struct_size 3
 * @field_name UDSDTC
 * @min 1
 * @max 16777214
 * @type uint32
 * @field_name OBDDTC
 * @min 1
 * @max 65535
 * @type uint32
 * @field_name DTCUsed
 * @min 0
 * @max 1
 * @type uint8
 */
#if !defined(HOST_TEST)
ARC_DECLARE_CALIB(const Arc_Dem_DTC, A06600_TouErr_DTC) = {
#else
Arc_Dem_DTC A06600_TouErr_DTC = {
#endif /* HOST_TEST */
	.UDSDTC = 10511872,
	.OBDDTC = DEM_NO_DTC,
	.DTCUsed = TRUE,
};
#define Dem_STOP_SEC_CALIB_UNSPECIFIED
//#include "Dem_MemMap.h" /*lint !e9019 suppressed due to Dem_MemMap.h include is required */
#define Dem_START_SEC_CALIB_UNSPECIFIED
//#include "Dem_MemMap.h" /*lint !e9019 suppressed due to Dem_MemMap.h include is required */
/**
 * @a2l_characteristic U014600_GWBCMLost_DTC
 * @desc calib param for DTC U014600_GWBCMLost
 * @struct_size 3
 * @field_name UDSDTC
 * @min 1
 * @max 16777214
 * @type uint32
 * @field_name OBDDTC
 * @min 1
 * @max 65535
 * @type uint32
 * @field_name DTCUsed
 * @min 0
 * @max 1
 * @type uint8
 */
 /*
#if !defined(HOST_TEST)
ARC_DECLARE_CALIB(const Arc_Dem_DTC, U014600_GWBCMLost_DTC) = {
#else
Arc_Dem_DTC U014600_GWBCMLost_DTC = {
#endif 
	.UDSDTC = 12666368,
	.OBDDTC = DEM_NO_DTC,
	.DTCUsed = TRUE,
};
*/
#define Dem_STOP_SEC_CALIB_UNSPECIFIED
//#include "Dem_MemMap.h" /*lint !e9019 suppressed due to Dem_MemMap.h include is required */
#define Dem_START_SEC_CALIB_UNSPECIFIED
//#include "Dem_MemMap.h" /*lint !e9019 suppressed due to Dem_MemMap.h include is required */
/**
 * @a2l_characteristic P123311_PButton1NotOK_DTC
 * @desc calib param for DTC P123311_PButton1NotOK
 * @struct_size 3
 * @field_name UDSDTC
 * @min 1
 * @max 16777214
 * @type uint32
 * @field_name OBDDTC
 * @min 1
 * @max 65535
 * @type uint32
 * @field_name DTCUsed
 * @min 0
 * @max 1
 * @type uint8
 */
/*
#if !defined(HOST_TEST)
ARC_DECLARE_CALIB(const Arc_Dem_DTC, P123311_PButton1NotOK_DTC) = {
#else
Arc_Dem_DTC P123311_PButton1NotOK_DTC = {
#endif 
	.UDSDTC = 1192721,
	.OBDDTC = DEM_NO_DTC,
	.DTCUsed = TRUE,
};
*/
#define Dem_STOP_SEC_CALIB_UNSPECIFIED
//#include "Dem_MemMap.h" /*lint !e9019 suppressed due to Dem_MemMap.h include is required */
#define Dem_START_SEC_CALIB_UNSPECIFIED
//#include "Dem_MemMap.h" /*lint !e9019 suppressed due to Dem_MemMap.h include is required */
/**
 * @a2l_characteristic P123313_PButton3NotOK_DTC
 * @desc calib param for DTC P123313_PButton3NotOK
 * @struct_size 3
 * @field_name UDSDTC
 * @min 1
 * @max 16777214
 * @type uint32
 * @field_name OBDDTC
 * @min 1
 * @max 65535
 * @type uint32
 * @field_name DTCUsed
 * @min 0
 * @max 1
 * @type uint8
 */
 /*
#if !defined(HOST_TEST)
ARC_DECLARE_CALIB(const Arc_Dem_DTC, P123313_PButton3NotOK_DTC) = {
#else
Arc_Dem_DTC P123313_PButton3NotOK_DTC = {
#endif 
	.UDSDTC = 1192723,
	.OBDDTC = DEM_NO_DTC,
	.DTCUsed = TRUE,
};
*/
#define Dem_STOP_SEC_CALIB_UNSPECIFIED
//#include "Dem_MemMap.h" /*lint !e9019 suppressed due to Dem_MemMap.h include is required */
#define Dem_START_SEC_CALIB_UNSPECIFIED
//#include "Dem_MemMap.h" /*lint !e9019 suppressed due to Dem_MemMap.h include is required */
/**
 * @a2l_characteristic P271F54_CalibrationFault_DTC
 * @desc calib param for DTC P271F54_CalibrationFault
 * @struct_size 3
 * @field_name UDSDTC
 * @min 1
 * @max 16777214
 * @type uint32
 * @field_name OBDDTC
 * @min 1
 * @max 65535
 * @type uint32
 * @field_name DTCUsed
 * @min 0
 * @max 1
 * @type uint8
 */
 /*
#if !defined(HOST_TEST)
ARC_DECLARE_CALIB(const Arc_Dem_DTC, P271F54_CalibrationFault_DTC) = {
#else
Arc_Dem_DTC P271F54_CalibrationFault_DTC = {
#endif 
	.UDSDTC = 2563924,
	.OBDDTC = DEM_NO_DTC,
	.DTCUsed = TRUE,
};
*/
#define Dem_STOP_SEC_CALIB_UNSPECIFIED
//#include "Dem_MemMap.h" /*lint !e9019 suppressed due to Dem_MemMap.h include is required */
#define Dem_START_SEC_CALIB_UNSPECIFIED
//#include "Dem_MemMap.h" /*lint !e9019 suppressed due to Dem_MemMap.h include is required */
/**
 * @a2l_characteristic P123411_LButton1NotOK_DTC
 * @desc calib param for DTC P123411_LButton1NotOK
 * @struct_size 3
 * @field_name UDSDTC
 * @min 1
 * @max 16777214
 * @type uint32
 * @field_name OBDDTC
 * @min 1
 * @max 65535
 * @type uint32
 * @field_name DTCUsed
 * @min 0
 * @max 1
 * @type uint8
 */
 /*
#if !defined(HOST_TEST)
ARC_DECLARE_CALIB(const Arc_Dem_DTC, P123411_LButton1NotOK_DTC) = {
#else
Arc_Dem_DTC P123411_LButton1NotOK_DTC = {
#endif 
	.UDSDTC = 1192977,
	.OBDDTC = DEM_NO_DTC,
	.DTCUsed = TRUE,
};
*/
#define Dem_STOP_SEC_CALIB_UNSPECIFIED
//#include "Dem_MemMap.h" /*lint !e9019 suppressed due to Dem_MemMap.h include is required */
#define Dem_START_SEC_CALIB_UNSPECIFIED
//#include "Dem_MemMap.h" /*lint !e9019 suppressed due to Dem_MemMap.h include is required */
/**
 * @a2l_characteristic P123412_LButton2NotOK_DTC
 * @desc calib param for DTC P123412_LButton2NotOK
 * @struct_size 3
 * @field_name UDSDTC
 * @min 1
 * @max 16777214
 * @type uint32
 * @field_name OBDDTC
 * @min 1
 * @max 65535
 * @type uint32
 * @field_name DTCUsed
 * @min 0
 * @max 1
 * @type uint8
 */
 /*
#if !defined(HOST_TEST)
ARC_DECLARE_CALIB(const Arc_Dem_DTC, P123412_LButton2NotOK_DTC) = {
#else
Arc_Dem_DTC P123412_LButton2NotOK_DTC = {
#endif 
	.UDSDTC = 1192978,
	.OBDDTC = DEM_NO_DTC,
	.DTCUsed = TRUE,
};
*/
#define Dem_STOP_SEC_CALIB_UNSPECIFIED
//#include "Dem_MemMap.h" /*lint !e9019 suppressed due to Dem_MemMap.h include is required */
#define Dem_START_SEC_CALIB_UNSPECIFIED
//#include "Dem_MemMap.h" /*lint !e9019 suppressed due to Dem_MemMap.h include is required */
/**
 * @a2l_characteristic P123511_LButton1Stucl_DTC
 * @desc calib param for DTC P123511_LButton1Stucl
 * @struct_size 3
 * @field_name UDSDTC
 * @min 1
 * @max 16777214
 * @type uint32
 * @field_name OBDDTC
 * @min 1
 * @max 65535
 * @type uint32
 * @field_name DTCUsed
 * @min 0
 * @max 1
 * @type uint8
 */
 /*
#if !defined(HOST_TEST)
ARC_DECLARE_CALIB(const Arc_Dem_DTC, P123511_LButton1Stucl_DTC) = {
#else
Arc_Dem_DTC P123511_LButton1Stucl_DTC = {
#endif 
	.UDSDTC = 1193233,
	.OBDDTC = DEM_NO_DTC,
	.DTCUsed = TRUE,
};
*/
#define Dem_STOP_SEC_CALIB_UNSPECIFIED
//#include "Dem_MemMap.h" /*lint !e9019 suppressed due to Dem_MemMap.h include is required */
#define Dem_START_SEC_CALIB_UNSPECIFIED
//#include "Dem_MemMap.h" /*lint !e9019 suppressed due to Dem_MemMap.h include is required */
/**
 * @a2l_characteristic P123512_LButton2Stuck_DTC
 * @desc calib param for DTC P123512_LButton2Stuck
 * @struct_size 3
 * @field_name UDSDTC
 * @min 1
 * @max 16777214
 * @type uint32
 * @field_name OBDDTC
 * @min 1
 * @max 65535
 * @type uint32
 * @field_name DTCUsed
 * @min 0
 * @max 1
 * @type uint8
 */
 /*
#if !defined(HOST_TEST)
ARC_DECLARE_CALIB(const Arc_Dem_DTC, P123512_LButton2Stuck_DTC) = {
#else
Arc_Dem_DTC P123512_LButton2Stuck_DTC = {
#endif 
	.UDSDTC = 1193234,
	.OBDDTC = DEM_NO_DTC,
	.DTCUsed = TRUE,
};
*/
#define Dem_STOP_SEC_CALIB_UNSPECIFIED
//#include "Dem_MemMap.h" /*lint !e9019 suppressed due to Dem_MemMap.h include is required */

/*
const Dem_EventIdType DTC_P123312_PButton2NotOK_Events[] = {
	DemConf_DemEventParameter_P123312_P_BUTTON2_NOT_OK
};

const Dem_EventIdType DTC_U010100_TCULost_Events[] = {
	DemConf_DemEventParameter_U010100_TCU_LOST
};
*/

const Dem_EventIdType DTC_C07300_BusOff_Events[] = {
	DemConf_DemEventParameter_C07300_BUS_OFF
};

const Dem_EventIdType DTC_A06800_MorErr_Events[] = {
	DemConf_DemEventParameter_A06800_MorErr
};

const Dem_EventIdType DTC_A06700_PressErr_Events[] = {
	DemConf_DemEventParameter_A06700_PressErr
};

const Dem_EventIdType DTC_F00616_LowVoltage_Events[] = {
	DemConf_DemEventParameter_F00616_LOW_VOLTAGE
};

const Dem_EventIdType DTC_F00617_HighVoltage_Events[] = {
	DemConf_DemEventParameter_F00617_HIGH_VOLTAGE
};

const Dem_EventIdType DTC_A06600_TouErr_Events[] = {
	DemConf_DemEventParameter_A06600_TouErr
};

/*
const Dem_EventIdType DTC_U014600_GWBCMLost_Events[] = {
	DemConf_DemEventParameter_U014600_GW_BCM_LOST
};

const Dem_EventIdType DTC_P123311_PButton1NotOK_Events[] = {
	DemConf_DemEventParameter_P123311_P_BUTTON1_NOT_OK
};

const Dem_EventIdType DTC_P123313_PButton3NotOK_Events[] = {
	DemConf_DemEventParameter_P123313_P_BUTTON3_NOT_OK
};

const Dem_EventIdType DTC_P271F54_CalibrationFault_Events[] = {
	DemConf_DemEventParameter_P271F54_Calibration_Fault
};

const Dem_EventIdType DTC_P123411_LButton1NotOK_Events[] = {
	DemConf_DemEventParameter_P123411_L_BUTTON1_NOT_OK
};

const Dem_EventIdType DTC_P123412_LButton2NotOK_Events[] = {
	DemConf_DemEventParameter_P123412_L_BUTTON2_NOT_OK
};

const Dem_EventIdType DTC_P123511_LButton1Stucl_Events[] = {
	DemConf_DemEventParameter_P123511_L_BUTTON1_STUCK
};

const Dem_EventIdType DTC_P123512_LButton2Stuck_Events[] = {
	DemConf_DemEventParameter_P123512_L_BUTTON2_STUCK
};
*/

const Dem_DTCClassType DtcClassList[] = {
	/*
	{	//P123312_PButton2NotOK
		.DTCRef = &P123312_PButton2NotOK_DTC,
		.DTCIndex = 0u,
		.Events = DTC_P123312_PButton2NotOK_Events,
		.NofEvents = 1u,
		.DTCKind = DEM_DTC_KIND_ALL_DTCS,
		.DTCSeverity = DEM_SEVERITY_CHECK_IMMEDIATELY,
		.Arc_EOL = FALSE
	},
	{	//U010100_TCULost
		.DTCRef = &U010100_TCULost_DTC,
		.DTCIndex = 1u,
		.Events = DTC_U010100_TCULost_Events,
		.NofEvents = 1u,
		.DTCKind = DEM_DTC_KIND_ALL_DTCS,
		.DTCSeverity = DEM_SEVERITY_CHECK_IMMEDIATELY,
		.Arc_EOL = FALSE
	},
	*/
	{	//C07300_BusOff
		.DTCRef = &C07300_BusOff_DTC,
		.DTCIndex = 2u,
		.Events = DTC_C07300_BusOff_Events,
		.NofEvents = 1u,
		.DTCKind = DEM_DTC_KIND_ALL_DTCS,
		.DTCSeverity = DEM_SEVERITY_CHECK_IMMEDIATELY,
		.Arc_EOL = FALSE
	},
	{	//A06800_MorErr
		.DTCRef = &A06800_MorErr_DTC,
		.DTCIndex = 3u,
		.Events = DTC_A06800_MorErr_Events,
		.NofEvents = 1u,
		.DTCKind = DEM_DTC_KIND_ALL_DTCS,
		.DTCSeverity = DEM_SEVERITY_CHECK_IMMEDIATELY,
		.Arc_EOL = FALSE
	},
	{	//A06700_PressErr
		.DTCRef = &A06700_PressErr_DTC,
		.DTCIndex = 4u,
		.Events = DTC_A06700_PressErr_Events,
		.NofEvents = 1u,
		.DTCKind = DEM_DTC_KIND_ALL_DTCS,
		.DTCSeverity = DEM_SEVERITY_CHECK_IMMEDIATELY,
		.Arc_EOL = FALSE
	},
	{	//F00616_LowVoltage
		.DTCRef = &F00616_LowVoltage_DTC,
		.DTCIndex = 5u,
		.Events = DTC_F00616_LowVoltage_Events,
		.NofEvents = 1u,
		.DTCKind = DEM_DTC_KIND_ALL_DTCS,
		.DTCSeverity = DEM_SEVERITY_CHECK_IMMEDIATELY,
		.Arc_EOL = FALSE
	},
	{	//F00617_HighVoltage
		.DTCRef = &F00617_HighVoltage_DTC,
		.DTCIndex = 6u,
		.Events = DTC_F00617_HighVoltage_Events,
		.NofEvents = 1u,
		.DTCKind = DEM_DTC_KIND_ALL_DTCS,
		.DTCSeverity = DEM_SEVERITY_CHECK_IMMEDIATELY,
		.Arc_EOL = FALSE
	},
	{	//A06600_TouErr
		.DTCRef = &A06600_TouErr_DTC,
		.DTCIndex = 7u,
		.Events = DTC_A06600_TouErr_Events,
		.NofEvents = 1u,
		.DTCKind = DEM_DTC_KIND_ALL_DTCS,
		.DTCSeverity = DEM_SEVERITY_CHECK_IMMEDIATELY,
		.Arc_EOL = FALSE
	},
	/*
	{	//U014600_GWBCMLost
		.DTCRef = &U014600_GWBCMLost_DTC,
		.DTCIndex = 8u,
		.Events = DTC_U014600_GWBCMLost_Events,
		.NofEvents = 1u,
		.DTCKind = DEM_DTC_KIND_ALL_DTCS,
		.DTCSeverity = DEM_SEVERITY_CHECK_IMMEDIATELY,
		.Arc_EOL = FALSE
	},
	{	//P123311_PButton1NotOK
		.DTCRef = &P123311_PButton1NotOK_DTC,
		.DTCIndex = 9u,
		.Events = DTC_P123311_PButton1NotOK_Events,
		.NofEvents = 1u,
		.DTCKind = DEM_DTC_KIND_ALL_DTCS,
		.DTCSeverity = DEM_SEVERITY_CHECK_IMMEDIATELY,
		.Arc_EOL = FALSE
	},
	{	//P123313_PButton3NotOK
		.DTCRef = &P123313_PButton3NotOK_DTC,
		.DTCIndex = 10u,
		.Events = DTC_P123313_PButton3NotOK_Events,
		.NofEvents = 1u,
		.DTCKind = DEM_DTC_KIND_ALL_DTCS,
		.DTCSeverity = DEM_SEVERITY_CHECK_IMMEDIATELY,
		.Arc_EOL = FALSE
	},
	{	//P271F54_CalibrationFault
		.DTCRef = &P271F54_CalibrationFault_DTC,
		.DTCIndex = 11u,
		.Events = DTC_P271F54_CalibrationFault_Events,
		.NofEvents = 1u,
		.DTCKind = DEM_DTC_KIND_ALL_DTCS,
		.DTCSeverity = DEM_SEVERITY_CHECK_IMMEDIATELY,
		.Arc_EOL = FALSE
	},
	{	//P123411_LButton1NotOK
		.DTCRef = &P123411_LButton1NotOK_DTC,
		.DTCIndex = 12u,
		.Events = DTC_P123411_LButton1NotOK_Events,
		.NofEvents = 1u,
		.DTCKind = DEM_DTC_KIND_ALL_DTCS,
		.DTCSeverity = DEM_SEVERITY_CHECK_IMMEDIATELY,
		.Arc_EOL = FALSE
	},
	{	//P123412_LButton2NotOK
		.DTCRef = &P123412_LButton2NotOK_DTC,
		.DTCIndex = 13u,
		.Events = DTC_P123412_LButton2NotOK_Events,
		.NofEvents = 1u,
		.DTCKind = DEM_DTC_KIND_ALL_DTCS,
		.DTCSeverity = DEM_SEVERITY_CHECK_IMMEDIATELY,
		.Arc_EOL = FALSE
	},
	{	//P123511_LButton1Stucl
		.DTCRef = &P123511_LButton1Stucl_DTC,
		.DTCIndex = 14u,
		.Events = DTC_P123511_LButton1Stucl_Events,
		.NofEvents = 1u,
		.DTCKind = DEM_DTC_KIND_ALL_DTCS,
		.DTCSeverity = DEM_SEVERITY_CHECK_IMMEDIATELY,
		.Arc_EOL = FALSE
	},
	{	//P123512_LButton2Stuck
		.DTCRef = &P123512_LButton2Stuck_DTC,
		.DTCIndex = 15u,
		.Events = DTC_P123512_LButton2Stuck_Events,
		.NofEvents = 1u,
		.DTCKind = DEM_DTC_KIND_ALL_DTCS,
		.DTCSeverity = DEM_SEVERITY_CHECK_IMMEDIATELY,
		.Arc_EOL = FALSE
	},
	*/
	{
		.Arc_EOL = TRUE
	}
};



const Dem_ExtendedDataRecordClassType ExtendedDataRecordClassList[] = {
	{	//FaultDetectionsNumber_Class
		.RecordNumber = 4u,
		.DataSize = 1u,
		.UpdateRule = DEM_UPDATE_RECORD_YES,
		.CallbackGetExtDataRecord = NULL,
		.InternalDataElement = DEM_CONFIRMATIONCNTR,
	},
	{	//AgeingCounter_Class
		.RecordNumber = 5u,
		.DataSize = 1u,
		.UpdateRule = DEM_UPDATE_RECORD_YES,
		.CallbackGetExtDataRecord = NULL,
		.InternalDataElement = DEM_AGINGCTR,
	},
	{	//FaultDetectionCounter_Class
		.RecordNumber = 2u,
		.DataSize = 1u,
		.UpdateRule = DEM_UPDATE_RECORD_YES,
		.CallbackGetExtDataRecord = NULL,
		.InternalDataElement = DEM_FAULTDETCTR,
	},
	{	//UncompledTestCNT_class
		.RecordNumber = 3u,
		.DataSize = 1u,
		.UpdateRule = DEM_UPDATE_RECORD_YES,
		.CallbackGetExtDataRecord = NULL,
		.InternalDataElement = DEM_OCCCTR,
	},
	{	//DTC_OccurrenceCounter_Class
		.RecordNumber = 1u,
		.DataSize = 1u,
		.UpdateRule = DEM_UPDATE_RECORD_YES,
		.CallbackGetExtDataRecord = NULL,
		.InternalDataElement = DEM_OCCCTR,
	},
};



const Dem_ExtendedDataClassType DemExtendedDataClass = {
	.ExtendedDataRecordClassRef = {
		&ExtendedDataRecordClassList[DEM_EXT_DATA_REC_CLASS_AgeingCounter_Class_INDEX],		
		&ExtendedDataRecordClassList[DEM_EXT_DATA_REC_CLASS_FaultDetectionsNumber_Class_INDEX],		
		&ExtendedDataRecordClassList[DEM_EXT_DATA_REC_CLASS_FaultDetectionCounter_Class_INDEX],		
		&ExtendedDataRecordClassList[DEM_EXT_DATA_REC_CLASS_UncompledTestCNT_class_INDEX],		
		&ExtendedDataRecordClassList[DEM_EXT_DATA_REC_CLASS_DTC_OccurrenceCounter_Class_INDEX],		
		NULL,
	}
};

/* Counter based predebounce */
#define Dem_START_SEC_CALIB_UNSPECIFIED
//#include "Dem_MemMap.h" /*lint !e9019 suppressed due to Dem_MemMap.h include is required */
/**
 * @a2l_characteristic DemPreDebounceCounterBased_F00617_HIGH_VOLTAGE
 * @desc calib param for predebounce counter for event F00617_HIGH_VOLTAGE (DTC: U3003A3_HighVoltage)
 * @struct_size 8
 * @field_name JumpUp
 * @min 0
 * @max 1
 * @type uint8
 * @field_name JumpDown
 * @min 0
 * @max 1
 * @type uint8
 * @field_name IncrementStepSize
 * @min 0
 * @max 32767
 * @type uint16
 * @field_name DecrementStepSize
 * @min 0
 * @max 32768
 * @type uint16
 * @field_name JumpDownValue
 * @min -32768
 * @max 32767
 * @type sint16
 * @field_name JumpUpValue
 * @min -32768
 * @max 32767
 * @type sint16
 * @field_name FailedThreshold
 * @min 0
 * @max 32767
 * @type sint16
 * @field_name PassedThreshold
 * @min -32768
 * @max 0
 * @type sint16
 */
ARC_DECLARE_CALIB(const Dem_PreDebounceCounterBasedType, DemPreDebounceCounterBased_F00617_HIGH_VOLTAGE) = {
	.IncrementStepSize = 1,
	.DecrementStepSize = 1,
	.JumpDown = FALSE,
	.JumpUp = FALSE,
	.JumpDownValue = 0,
	.JumpUpValue = 0,
	.FailedThreshold = 127,
	.PassedThreshold = -128,
};
#define Dem_STOP_SEC_CALIB_UNSPECIFIED
//#include "Dem_MemMap.h" /*lint !e9019 suppressed due to Dem_MemMap.h include is required */
#define Dem_START_SEC_CALIB_UNSPECIFIED
//#include "Dem_MemMap.h" /*lint !e9019 suppressed due to Dem_MemMap.h include is required */
/**
 * @a2l_characteristic DemPreDebounceCounterBased_F00616_LOW_VOLTAGE
 * @desc calib param for predebounce counter for event F00616_LOW_VOLTAGE (DTC: U3003A2_LowVoltage)
 * @struct_size 8
 * @field_name JumpUp
 * @min 0
 * @max 1
 * @type uint8
 * @field_name JumpDown
 * @min 0
 * @max 1
 * @type uint8
 * @field_name IncrementStepSize
 * @min 0
 * @max 32767
 * @type uint16
 * @field_name DecrementStepSize
 * @min 0
 * @max 32768
 * @type uint16
 * @field_name JumpDownValue
 * @min -32768
 * @max 32767
 * @type sint16
 * @field_name JumpUpValue
 * @min -32768
 * @max 32767
 * @type sint16
 * @field_name FailedThreshold
 * @min 0
 * @max 32767
 * @type sint16
 * @field_name PassedThreshold
 * @min -32768
 * @max 0
 * @type sint16
 */
ARC_DECLARE_CALIB(const Dem_PreDebounceCounterBasedType, DemPreDebounceCounterBased_F00616_LOW_VOLTAGE) = {
	.IncrementStepSize = 1,
	.DecrementStepSize = 1,
	.JumpDown = FALSE,
	.JumpUp = FALSE,
	.JumpDownValue = 0,
	.JumpUpValue = 0,
	.FailedThreshold = 127,
	.PassedThreshold = -128,
};
#define Dem_STOP_SEC_CALIB_UNSPECIFIED
//#include "Dem_MemMap.h" /*lint !e9019 suppressed due to Dem_MemMap.h include is required */
#define Dem_START_SEC_CALIB_UNSPECIFIED
//#include "Dem_MemMap.h" /*lint !e9019 suppressed due to Dem_MemMap.h include is required */
/**
 * @a2l_characteristic DemPreDebounceCounterBased_A06600_TouErr
 * @desc calib param for predebounce counter for event A06600_TouErr (DTC: P121061_Lever1Error)
 * @struct_size 8
 * @field_name JumpUp
 * @min 0
 * @max 1
 * @type uint8
 * @field_name JumpDown
 * @min 0
 * @max 1
 * @type uint8
 * @field_name IncrementStepSize
 * @min 0
 * @max 32767
 * @type uint16
 * @field_name DecrementStepSize
 * @min 0
 * @max 32768
 * @type uint16
 * @field_name JumpDownValue
 * @min -32768
 * @max 32767
 * @type sint16
 * @field_name JumpUpValue
 * @min -32768
 * @max 32767
 * @type sint16
 * @field_name FailedThreshold
 * @min 0
 * @max 32767
 * @type sint16
 * @field_name PassedThreshold
 * @min -32768
 * @max 0
 * @type sint16
 */
ARC_DECLARE_CALIB(const Dem_PreDebounceCounterBasedType, DemPreDebounceCounterBased_A06600_TouErr) = {
	.IncrementStepSize = 1,
	.DecrementStepSize = 1,
	.JumpDown = FALSE,
	.JumpUp = FALSE,
	.JumpDownValue = 0,
	.JumpUpValue = 0,
	.FailedThreshold = 127,
	.PassedThreshold = -128,
};
#define Dem_STOP_SEC_CALIB_UNSPECIFIED
//#include "Dem_MemMap.h" /*lint !e9019 suppressed due to Dem_MemMap.h include is required */
#define Dem_START_SEC_CALIB_UNSPECIFIED
//#include "Dem_MemMap.h" /*lint !e9019 suppressed due to Dem_MemMap.h include is required */
/**
 * @a2l_characteristic DemPreDebounceCounterBased_P123312_P_BUTTON2_NOT_OK
 * @desc calib param for predebounce counter for event P123312_P_BUTTON2_NOT_OK (DTC: P123312_PButton2NotOK)
 * @struct_size 8
 * @field_name JumpUp
 * @min 0
 * @max 1
 * @type uint8
 * @field_name JumpDown
 * @min 0
 * @max 1
 * @type uint8
 * @field_name IncrementStepSize
 * @min 0
 * @max 32767
 * @type uint16
 * @field_name DecrementStepSize
 * @min 0
 * @max 32768
 * @type uint16
 * @field_name JumpDownValue
 * @min -32768
 * @max 32767
 * @type sint16
 * @field_name JumpUpValue
 * @min -32768
 * @max 32767
 * @type sint16
 * @field_name FailedThreshold
 * @min 0
 * @max 32767
 * @type sint16
 * @field_name PassedThreshold
 * @min -32768
 * @max 0
 * @type sint16
 */
 /*
ARC_DECLARE_CALIB(const Dem_PreDebounceCounterBasedType, DemPreDebounceCounterBased_P123312_P_BUTTON2_NOT_OK) = {
	.IncrementStepSize = 1,
	.DecrementStepSize = 1,
	.JumpDown = FALSE,
	.JumpUp = FALSE,
	.JumpDownValue = 0,
	.JumpUpValue = 0,
	.FailedThreshold = 127,
	.PassedThreshold = -128,
};
*/
#define Dem_STOP_SEC_CALIB_UNSPECIFIED
//#include "Dem_MemMap.h" /*lint !e9019 suppressed due to Dem_MemMap.h include is required */
#define Dem_START_SEC_CALIB_UNSPECIFIED
//#include "Dem_MemMap.h" /*lint !e9019 suppressed due to Dem_MemMap.h include is required */
/**
 * @a2l_characteristic DemPreDebounceCounterBased_P123311_P_BUTTON1_NOT_OK
 * @desc calib param for predebounce counter for event P123311_P_BUTTON1_NOT_OK (DTC: P123311_PButton1NotOK)
 * @struct_size 8
 * @field_name JumpUp
 * @min 0
 * @max 1
 * @type uint8
 * @field_name JumpDown
 * @min 0
 * @max 1
 * @type uint8
 * @field_name IncrementStepSize
 * @min 0
 * @max 32767
 * @type uint16
 * @field_name DecrementStepSize
 * @min 0
 * @max 32768
 * @type uint16
 * @field_name JumpDownValue
 * @min -32768
 * @max 32767
 * @type sint16
 * @field_name JumpUpValue
 * @min -32768
 * @max 32767
 * @type sint16
 * @field_name FailedThreshold
 * @min 0
 * @max 32767
 * @type sint16
 * @field_name PassedThreshold
 * @min -32768
 * @max 0
 * @type sint16
 */
 /*
ARC_DECLARE_CALIB(const Dem_PreDebounceCounterBasedType, DemPreDebounceCounterBased_P123311_P_BUTTON1_NOT_OK) = {
	.IncrementStepSize = 1,
	.DecrementStepSize = 1,
	.JumpDown = FALSE,
	.JumpUp = FALSE,
	.JumpDownValue = 0,
	.JumpUpValue = 0,
	.FailedThreshold = 127,
	.PassedThreshold = -128,
};
*/
#define Dem_STOP_SEC_CALIB_UNSPECIFIED
//#include "Dem_MemMap.h" /*lint !e9019 suppressed due to Dem_MemMap.h include is required */
#define Dem_START_SEC_CALIB_UNSPECIFIED
//#include "Dem_MemMap.h" /*lint !e9019 suppressed due to Dem_MemMap.h include is required */
/**
 * @a2l_characteristic DemPreDebounceCounterBased_P123313_P_BUTTON3_NOT_OK
 * @desc calib param for predebounce counter for event P123313_P_BUTTON3_NOT_OK (DTC: P123313_PButton3NotOK)
 * @struct_size 8
 * @field_name JumpUp
 * @min 0
 * @max 1
 * @type uint8
 * @field_name JumpDown
 * @min 0
 * @max 1
 * @type uint8
 * @field_name IncrementStepSize
 * @min 0
 * @max 32767
 * @type uint16
 * @field_name DecrementStepSize
 * @min 0
 * @max 32768
 * @type uint16
 * @field_name JumpDownValue
 * @min -32768
 * @max 32767
 * @type sint16
 * @field_name JumpUpValue
 * @min -32768
 * @max 32767
 * @type sint16
 * @field_name FailedThreshold
 * @min 0
 * @max 32767
 * @type sint16
 * @field_name PassedThreshold
 * @min -32768
 * @max 0
 * @type sint16
 */
 /*
ARC_DECLARE_CALIB(const Dem_PreDebounceCounterBasedType, DemPreDebounceCounterBased_P123313_P_BUTTON3_NOT_OK) = {
	.IncrementStepSize = 1,
	.DecrementStepSize = 1,
	.JumpDown = FALSE,
	.JumpUp = FALSE,
	.JumpDownValue = 0,
	.JumpUpValue = 0,
	.FailedThreshold = 127,
	.PassedThreshold = -128,
};
*/
#define Dem_STOP_SEC_CALIB_UNSPECIFIED
//#include "Dem_MemMap.h" /*lint !e9019 suppressed due to Dem_MemMap.h include is required */
#define Dem_START_SEC_CALIB_UNSPECIFIED
//#include "Dem_MemMap.h" /*lint !e9019 suppressed due to Dem_MemMap.h include is required */
/**
 * @a2l_characteristic DemPreDebounceCounterBased_U014600_GW_BCM_LOST
 * @desc calib param for predebounce counter for event U014600_GW_BCM_LOST (DTC: U014600_GWBCMLost)
 * @struct_size 8
 * @field_name JumpUp
 * @min 0
 * @max 1
 * @type uint8
 * @field_name JumpDown
 * @min 0
 * @max 1
 * @type uint8
 * @field_name IncrementStepSize
 * @min 0
 * @max 32767
 * @type uint16
 * @field_name DecrementStepSize
 * @min 0
 * @max 32768
 * @type uint16
 * @field_name JumpDownValue
 * @min -32768
 * @max 32767
 * @type sint16
 * @field_name JumpUpValue
 * @min -32768
 * @max 32767
 * @type sint16
 * @field_name FailedThreshold
 * @min 0
 * @max 32767
 * @type sint16
 * @field_name PassedThreshold
 * @min -32768
 * @max 0
 * @type sint16
 */
 /*
ARC_DECLARE_CALIB(const Dem_PreDebounceCounterBasedType, DemPreDebounceCounterBased_U014600_GW_BCM_LOST) = {
	.IncrementStepSize = 1,
	.DecrementStepSize = 1,
	.JumpDown = FALSE,
	.JumpUp = FALSE,
	.JumpDownValue = 0,
	.JumpUpValue = 0,
	.FailedThreshold = 127,
	.PassedThreshold = -128,
};
*/
#define Dem_STOP_SEC_CALIB_UNSPECIFIED
//#include "Dem_MemMap.h" /*lint !e9019 suppressed due to Dem_MemMap.h include is required */
#define Dem_START_SEC_CALIB_UNSPECIFIED
//#include "Dem_MemMap.h" /*lint !e9019 suppressed due to Dem_MemMap.h include is required */
/**
 * @a2l_characteristic DemPreDebounceCounterBased_A06800_MorErr
 * @desc calib param for predebounce counter for event A06800_MorErr (DTC: A06800_MorErr)
 * @struct_size 8
 * @field_name JumpUp
 * @min 0
 * @max 1
 * @type uint8
 * @field_name JumpDown
 * @min 0
 * @max 1
 * @type uint8
 * @field_name IncrementStepSize
 * @min 0
 * @max 32767
 * @type uint16
 * @field_name DecrementStepSize
 * @min 0
 * @max 32768
 * @type uint16
 * @field_name JumpDownValue
 * @min -32768
 * @max 32767
 * @type sint16
 * @field_name JumpUpValue
 * @min -32768
 * @max 32767
 * @type sint16
 * @field_name FailedThreshold
 * @min 0
 * @max 32767
 * @type sint16
 * @field_name PassedThreshold
 * @min -32768
 * @max 0
 * @type sint16
 */
ARC_DECLARE_CALIB(const Dem_PreDebounceCounterBasedType, DemPreDebounceCounterBased_A06800_MorErr) = {
	.IncrementStepSize = 1,
	.DecrementStepSize = 1,
	.JumpDown = FALSE,
	.JumpUp = FALSE,
	.JumpDownValue = 0,
	.JumpUpValue = 0,
	.FailedThreshold = 127,
	.PassedThreshold = -128,
};
#define Dem_STOP_SEC_CALIB_UNSPECIFIED
//#include "Dem_MemMap.h" /*lint !e9019 suppressed due to Dem_MemMap.h include is required */
#define Dem_START_SEC_CALIB_UNSPECIFIED
//#include "Dem_MemMap.h" /*lint !e9019 suppressed due to Dem_MemMap.h include is required */
/**
 * @a2l_characteristic DemPreDebounceCounterBased_A06700_PressErr
 * @desc calib param for predebounce counter for event A06700_PressErr (DTC: P121161_Lever2Error)
 * @struct_size 8
 * @field_name JumpUp
 * @min 0
 * @max 1
 * @type uint8
 * @field_name JumpDown
 * @min 0
 * @max 1
 * @type uint8
 * @field_name IncrementStepSize
 * @min 0
 * @max 32767
 * @type uint16
 * @field_name DecrementStepSize
 * @min 0
 * @max 32768
 * @type uint16
 * @field_name JumpDownValue
 * @min -32768
 * @max 32767
 * @type sint16
 * @field_name JumpUpValue
 * @min -32768
 * @max 32767
 * @type sint16
 * @field_name FailedThreshold
 * @min 0
 * @max 32767
 * @type sint16
 * @field_name PassedThreshold
 * @min -32768
 * @max 0
 * @type sint16
 */
ARC_DECLARE_CALIB(const Dem_PreDebounceCounterBasedType, DemPreDebounceCounterBased_A06700_PressErr) = {
	.IncrementStepSize = 1,
	.DecrementStepSize = 1,
	.JumpDown = FALSE,
	.JumpUp = FALSE,
	.JumpDownValue = 0,
	.JumpUpValue = 0,
	.FailedThreshold = 127,
	.PassedThreshold = -128,
};
#define Dem_STOP_SEC_CALIB_UNSPECIFIED
//#include "Dem_MemMap.h" /*lint !e9019 suppressed due to Dem_MemMap.h include is required */
#define Dem_START_SEC_CALIB_UNSPECIFIED
//#include "Dem_MemMap.h" /*lint !e9019 suppressed due to Dem_MemMap.h include is required */
/**
 * @a2l_characteristic DemPreDebounceCounterBased_U010100_TCU_LOST
 * @desc calib param for predebounce counter for event U010100_TCU_LOST (DTC: U010100_TCULost)
 * @struct_size 8
 * @field_name JumpUp
 * @min 0
 * @max 1
 * @type uint8
 * @field_name JumpDown
 * @min 0
 * @max 1
 * @type uint8
 * @field_name IncrementStepSize
 * @min 0
 * @max 32767
 * @type uint16
 * @field_name DecrementStepSize
 * @min 0
 * @max 32768
 * @type uint16
 * @field_name JumpDownValue
 * @min -32768
 * @max 32767
 * @type sint16
 * @field_name JumpUpValue
 * @min -32768
 * @max 32767
 * @type sint16
 * @field_name FailedThreshold
 * @min 0
 * @max 32767
 * @type sint16
 * @field_name PassedThreshold
 * @min -32768
 * @max 0
 * @type sint16
 */
 /*
ARC_DECLARE_CALIB(const Dem_PreDebounceCounterBasedType, DemPreDebounceCounterBased_U010100_TCU_LOST) = {
	.IncrementStepSize = 1,
	.DecrementStepSize = 1,
	.JumpDown = FALSE,
	.JumpUp = FALSE,
	.JumpDownValue = 0,
	.JumpUpValue = 0,
	.FailedThreshold = 127,
	.PassedThreshold = -128,
};
*/
#define Dem_STOP_SEC_CALIB_UNSPECIFIED
//#include "Dem_MemMap.h" /*lint !e9019 suppressed due to Dem_MemMap.h include is required */
#define Dem_START_SEC_CALIB_UNSPECIFIED
//#include "Dem_MemMap.h" /*lint !e9019 suppressed due to Dem_MemMap.h include is required */
/**
 * @a2l_characteristic DemPreDebounceCounterBased_C07300_BUS_OFF
 * @desc calib param for predebounce counter for event C07300_BUS_OFF (DTC: U002888_BusOff)
 * @struct_size 8
 * @field_name JumpUp
 * @min 0
 * @max 1
 * @type uint8
 * @field_name JumpDown
 * @min 0
 * @max 1
 * @type uint8
 * @field_name IncrementStepSize
 * @min 0
 * @max 32767
 * @type uint16
 * @field_name DecrementStepSize
 * @min 0
 * @max 32768
 * @type uint16
 * @field_name JumpDownValue
 * @min -32768
 * @max 32767
 * @type sint16
 * @field_name JumpUpValue
 * @min -32768
 * @max 32767
 * @type sint16
 * @field_name FailedThreshold
 * @min 0
 * @max 32767
 * @type sint16
 * @field_name PassedThreshold
 * @min -32768
 * @max 0
 * @type sint16
 */
ARC_DECLARE_CALIB(const Dem_PreDebounceCounterBasedType, DemPreDebounceCounterBased_C07300_BUS_OFF) = {
	.IncrementStepSize = 1,
	.DecrementStepSize = 1,
	.JumpDown = FALSE,
	.JumpUp = FALSE,
	.JumpDownValue = 0,
	.JumpUpValue = 0,
	.FailedThreshold = 127,
	.PassedThreshold = -128,
};
#define Dem_STOP_SEC_CALIB_UNSPECIFIED
//#include "Dem_MemMap.h" /*lint !e9019 suppressed due to Dem_MemMap.h include is required */
#define Dem_START_SEC_CALIB_UNSPECIFIED
//#include "Dem_MemMap.h" /*lint !e9019 suppressed due to Dem_MemMap.h include is required */
/**
 * @a2l_characteristic DemPreDebounceCounterBased_P271F54_Calibration_Fault
 * @desc calib param for predebounce counter for event P271F54_Calibration_Fault (DTC: P271F54_CalibrationFault)
 * @struct_size 8
 * @field_name JumpUp
 * @min 0
 * @max 1
 * @type uint8
 * @field_name JumpDown
 * @min 0
 * @max 1
 * @type uint8
 * @field_name IncrementStepSize
 * @min 0
 * @max 32767
 * @type uint16
 * @field_name DecrementStepSize
 * @min 0
 * @max 32768
 * @type uint16
 * @field_name JumpDownValue
 * @min -32768
 * @max 32767
 * @type sint16
 * @field_name JumpUpValue
 * @min -32768
 * @max 32767
 * @type sint16
 * @field_name FailedThreshold
 * @min 0
 * @max 32767
 * @type sint16
 * @field_name PassedThreshold
 * @min -32768
 * @max 0
 * @type sint16
 */
 /*
ARC_DECLARE_CALIB(const Dem_PreDebounceCounterBasedType, DemPreDebounceCounterBased_P271F54_Calibration_Fault) = {
	.IncrementStepSize = 1,
	.DecrementStepSize = 1,
	.JumpDown = FALSE,
	.JumpUp = FALSE,
	.JumpDownValue = 0,
	.JumpUpValue = 0,
	.FailedThreshold = 127,
	.PassedThreshold = -128,
};
*/

#define Dem_STOP_SEC_CALIB_UNSPECIFIED
//#include "Dem_MemMap.h" /*lint !e9019 suppressed due to Dem_MemMap.h include is required */
#define Dem_START_SEC_CALIB_UNSPECIFIED
//#include "Dem_MemMap.h" /*lint !e9019 suppressed due to Dem_MemMap.h include is required */
/**
 * @a2l_characteristic DemPreDebounceCounterBased_P123411_L_BUTTON1_NOT_OK
 * @desc calib param for predebounce counter for event P123411_L_BUTTON1_NOT_OK (DTC: P123411_LButton1NotOK)
 * @struct_size 8
 * @field_name JumpUp
 * @min 0
 * @max 1
 * @type uint8
 * @field_name JumpDown
 * @min 0
 * @max 1
 * @type uint8
 * @field_name IncrementStepSize
 * @min 0
 * @max 32767
 * @type uint16
 * @field_name DecrementStepSize
 * @min 0
 * @max 32768
 * @type uint16
 * @field_name JumpDownValue
 * @min -32768
 * @max 32767
 * @type sint16
 * @field_name JumpUpValue
 * @min -32768
 * @max 32767
 * @type sint16
 * @field_name FailedThreshold
 * @min 0
 * @max 32767
 * @type sint16
 * @field_name PassedThreshold
 * @min -32768
 * @max 0
 * @type sint16
 */
 /*
ARC_DECLARE_CALIB(const Dem_PreDebounceCounterBasedType, DemPreDebounceCounterBased_P123411_L_BUTTON1_NOT_OK) = {
	.IncrementStepSize = 1,
	.DecrementStepSize = 1,
	.JumpDown = FALSE,
	.JumpUp = FALSE,
	.JumpDownValue = 0,
	.JumpUpValue = 0,
	.FailedThreshold = 127,
	.PassedThreshold = -128,
};
*/
#define Dem_STOP_SEC_CALIB_UNSPECIFIED
//#include "Dem_MemMap.h" /*lint !e9019 suppressed due to Dem_MemMap.h include is required */
#define Dem_START_SEC_CALIB_UNSPECIFIED
//#include "Dem_MemMap.h" /*lint !e9019 suppressed due to Dem_MemMap.h include is required */
/**
 * @a2l_characteristic DemPreDebounceCounterBased_P123412_L_BUTTON2_NOT_OK
 * @desc calib param for predebounce counter for event P123412_L_BUTTON2_NOT_OK (DTC: P123412_LButton2NotOK)
 * @struct_size 8
 * @field_name JumpUp
 * @min 0
 * @max 1
 * @type uint8
 * @field_name JumpDown
 * @min 0
 * @max 1
 * @type uint8
 * @field_name IncrementStepSize
 * @min 0
 * @max 32767
 * @type uint16
 * @field_name DecrementStepSize
 * @min 0
 * @max 32768
 * @type uint16
 * @field_name JumpDownValue
 * @min -32768
 * @max 32767
 * @type sint16
 * @field_name JumpUpValue
 * @min -32768
 * @max 32767
 * @type sint16
 * @field_name FailedThreshold
 * @min 0
 * @max 32767
 * @type sint16
 * @field_name PassedThreshold
 * @min -32768
 * @max 0
 * @type sint16
 */
 /*
ARC_DECLARE_CALIB(const Dem_PreDebounceCounterBasedType, DemPreDebounceCounterBased_P123412_L_BUTTON2_NOT_OK) = {
	.IncrementStepSize = 1,
	.DecrementStepSize = 1,
	.JumpDown = FALSE,
	.JumpUp = FALSE,
	.JumpDownValue = 0,
	.JumpUpValue = 0,
	.FailedThreshold = 127,
	.PassedThreshold = -128,
};
*/
#define Dem_STOP_SEC_CALIB_UNSPECIFIED
//#include "Dem_MemMap.h" /*lint !e9019 suppressed due to Dem_MemMap.h include is required */
#define Dem_START_SEC_CALIB_UNSPECIFIED
//#include "Dem_MemMap.h" /*lint !e9019 suppressed due to Dem_MemMap.h include is required */
/**
 * @a2l_characteristic DemPreDebounceCounterBased_P123511_L_BUTTON1_STUCK
 * @desc calib param for predebounce counter for event P123511_L_BUTTON1_STUCK (DTC: P123511_LButton1Stucl)
 * @struct_size 8
 * @field_name JumpUp
 * @min 0
 * @max 1
 * @type uint8
 * @field_name JumpDown
 * @min 0
 * @max 1
 * @type uint8
 * @field_name IncrementStepSize
 * @min 0
 * @max 32767
 * @type uint16
 * @field_name DecrementStepSize
 * @min 0
 * @max 32768
 * @type uint16
 * @field_name JumpDownValue
 * @min -32768
 * @max 32767
 * @type sint16
 * @field_name JumpUpValue
 * @min -32768
 * @max 32767
 * @type sint16
 * @field_name FailedThreshold
 * @min 0
 * @max 32767
 * @type sint16
 * @field_name PassedThreshold
 * @min -32768
 * @max 0
 * @type sint16
 */
 /*
ARC_DECLARE_CALIB(const Dem_PreDebounceCounterBasedType, DemPreDebounceCounterBased_P123511_L_BUTTON1_STUCK) = {
	.IncrementStepSize = 1,
	.DecrementStepSize = 1,
	.JumpDown = FALSE,
	.JumpUp = FALSE,
	.JumpDownValue = 0,
	.JumpUpValue = 0,
	.FailedThreshold = 127,
	.PassedThreshold = -128,
};
*/
#define Dem_STOP_SEC_CALIB_UNSPECIFIED
//#include "Dem_MemMap.h" /*lint !e9019 suppressed due to Dem_MemMap.h include is required */
#define Dem_START_SEC_CALIB_UNSPECIFIED
//#include "Dem_MemMap.h" /*lint !e9019 suppressed due to Dem_MemMap.h include is required */
/**
 * @a2l_characteristic DemPreDebounceCounterBased_P123512_L_BUTTON2_STUCK
 * @desc calib param for predebounce counter for event P123512_L_BUTTON2_STUCK (DTC: P123512_LButton2Stuck)
 * @struct_size 8
 * @field_name JumpUp
 * @min 0
 * @max 1
 * @type uint8
 * @field_name JumpDown
 * @min 0
 * @max 1
 * @type uint8
 * @field_name IncrementStepSize
 * @min 0
 * @max 32767
 * @type uint16
 * @field_name DecrementStepSize
 * @min 0
 * @max 32768
 * @type uint16
 * @field_name JumpDownValue
 * @min -32768
 * @max 32767
 * @type sint16
 * @field_name JumpUpValue
 * @min -32768
 * @max 32767
 * @type sint16
 * @field_name FailedThreshold
 * @min 0
 * @max 32767
 * @type sint16
 * @field_name PassedThreshold
 * @min -32768
 * @max 0
 * @type sint16
 */
 /*
ARC_DECLARE_CALIB(const Dem_PreDebounceCounterBasedType, DemPreDebounceCounterBased_P123512_L_BUTTON2_STUCK) = {
	.IncrementStepSize = 1,
	.DecrementStepSize = 1,
	.JumpDown = FALSE,
	.JumpUp = FALSE,
	.JumpDownValue = 0,
	.JumpUpValue = 0,
	.FailedThreshold = 127,
	.PassedThreshold = -128,
};
*/
#define Dem_STOP_SEC_CALIB_UNSPECIFIED
//#include "Dem_MemMap.h" /*lint !e9019 suppressed due to Dem_MemMap.h include is required */

/* Internal monitor */


const Dem_PreDebounceAlgorithmClassType  AlgoClass_F00617_HIGH_VOLTAGE = {
	.PreDebounceName = DEM_PRE_DEBOUNCE_COUNTER_BASED,
	.PreDebounceAlgorithm = {
		.PreDebounceCounterBased = &DemPreDebounceCounterBased_F00617_HIGH_VOLTAGE 
	}
};
const Dem_PreDebounceAlgorithmClassType  AlgoClass_F00616_LOW_VOLTAGE = {
	.PreDebounceName = DEM_PRE_DEBOUNCE_COUNTER_BASED,
	.PreDebounceAlgorithm = {
		.PreDebounceCounterBased = &DemPreDebounceCounterBased_F00616_LOW_VOLTAGE 
	}
};
const Dem_PreDebounceAlgorithmClassType  AlgoClass_A06600_TouErr = {
	.PreDebounceName = DEM_PRE_DEBOUNCE_COUNTER_BASED,
	.PreDebounceAlgorithm = {
		.PreDebounceCounterBased = &DemPreDebounceCounterBased_A06600_TouErr 
	}
};
/*
const Dem_PreDebounceAlgorithmClassType  AlgoClass_P123312_P_BUTTON2_NOT_OK = {
	.PreDebounceName = DEM_PRE_DEBOUNCE_COUNTER_BASED,
	.PreDebounceAlgorithm = {
		.PreDebounceCounterBased = &DemPreDebounceCounterBased_P123312_P_BUTTON2_NOT_OK 
	}
};
const Dem_PreDebounceAlgorithmClassType  AlgoClass_P123311_P_BUTTON1_NOT_OK = {
	.PreDebounceName = DEM_PRE_DEBOUNCE_COUNTER_BASED,
	.PreDebounceAlgorithm = {
		.PreDebounceCounterBased = &DemPreDebounceCounterBased_P123311_P_BUTTON1_NOT_OK 
	}
};
const Dem_PreDebounceAlgorithmClassType  AlgoClass_P123313_P_BUTTON3_NOT_OK = {
	.PreDebounceName = DEM_PRE_DEBOUNCE_COUNTER_BASED,
	.PreDebounceAlgorithm = {
		.PreDebounceCounterBased = &DemPreDebounceCounterBased_P123313_P_BUTTON3_NOT_OK 
	}
};
const Dem_PreDebounceAlgorithmClassType  AlgoClass_U014600_GW_BCM_LOST = {
	.PreDebounceName = DEM_PRE_DEBOUNCE_COUNTER_BASED,
	.PreDebounceAlgorithm = {
		.PreDebounceCounterBased = &DemPreDebounceCounterBased_U014600_GW_BCM_LOST 
	}
};
*/
const Dem_PreDebounceAlgorithmClassType  AlgoClass_A06800_MorErr = {
	.PreDebounceName = DEM_PRE_DEBOUNCE_COUNTER_BASED,
	.PreDebounceAlgorithm = {
		.PreDebounceCounterBased = &DemPreDebounceCounterBased_A06800_MorErr 
	}
};
const Dem_PreDebounceAlgorithmClassType  AlgoClass_A06700_PressErr = {
	.PreDebounceName = DEM_PRE_DEBOUNCE_COUNTER_BASED,
	.PreDebounceAlgorithm = {
		.PreDebounceCounterBased = &DemPreDebounceCounterBased_A06700_PressErr 
	}
};
/*
const Dem_PreDebounceAlgorithmClassType  AlgoClass_U010100_TCU_LOST = {
	.PreDebounceName = DEM_PRE_DEBOUNCE_COUNTER_BASED,
	.PreDebounceAlgorithm = {
		.PreDebounceCounterBased = &DemPreDebounceCounterBased_U010100_TCU_LOST 
	}
};
*/
const Dem_PreDebounceAlgorithmClassType  AlgoClass_C07300_BUS_OFF = {
	.PreDebounceName = DEM_PRE_DEBOUNCE_COUNTER_BASED,
	.PreDebounceAlgorithm = {
		.PreDebounceCounterBased = &DemPreDebounceCounterBased_C07300_BUS_OFF 
	}
};
/*
const Dem_PreDebounceAlgorithmClassType  AlgoClass_P271F54_Calibration_Fault = {
	.PreDebounceName = DEM_PRE_DEBOUNCE_COUNTER_BASED,
	.PreDebounceAlgorithm = {
		.PreDebounceCounterBased = &DemPreDebounceCounterBased_P271F54_Calibration_Fault 
	}
};
const Dem_PreDebounceAlgorithmClassType  AlgoClass_P123411_L_BUTTON1_NOT_OK = {
	.PreDebounceName = DEM_PRE_DEBOUNCE_COUNTER_BASED,
	.PreDebounceAlgorithm = {
		.PreDebounceCounterBased = &DemPreDebounceCounterBased_P123411_L_BUTTON1_NOT_OK 
	}
};
const Dem_PreDebounceAlgorithmClassType  AlgoClass_P123412_L_BUTTON2_NOT_OK = {
	.PreDebounceName = DEM_PRE_DEBOUNCE_COUNTER_BASED,
	.PreDebounceAlgorithm = {
		.PreDebounceCounterBased = &DemPreDebounceCounterBased_P123412_L_BUTTON2_NOT_OK 
	}
};
const Dem_PreDebounceAlgorithmClassType  AlgoClass_P123511_L_BUTTON1_STUCK = {
	.PreDebounceName = DEM_PRE_DEBOUNCE_COUNTER_BASED,
	.PreDebounceAlgorithm = {
		.PreDebounceCounterBased = &DemPreDebounceCounterBased_P123511_L_BUTTON1_STUCK 
	}
};
const Dem_PreDebounceAlgorithmClassType  AlgoClass_P123512_L_BUTTON2_STUCK = {
	.PreDebounceName = DEM_PRE_DEBOUNCE_COUNTER_BASED,
	.PreDebounceAlgorithm = {
		.PreDebounceCounterBased = &DemPreDebounceCounterBased_P123512_L_BUTTON2_STUCK 
	}
};
*/

const Dem_PidOrDidType DemDidList[] = {
	/*
	{
		.PidOrDidSize = 18,
		.DidIdentifier = 4099u,
		.DidReadFnc = Get_Internal_ADC_Info,
		.Arc_EOL = FALSE
	},
	{
		.PidOrDidSize = 1,
		.DidIdentifier = 8451u,
		.DidReadFnc = Get_Actuator_Pos_Info,
		.Arc_EOL = FALSE
	},
	{
		.PidOrDidSize = 1,
		.DidIdentifier = 1281u,
		.DidReadFnc = Get_Break_Status,
		.Arc_EOL = FALSE
	},
	{
		.PidOrDidSize = 1,
		.DidIdentifier = 4610u,
		.DidReadFnc = Get_Ignition_Status,
		.Arc_EOL = FALSE
	},
	{
		.PidOrDidSize = 2,
		.DidIdentifier = 45062u,
		.DidReadFnc = Get_Mlx_Die2_Val,
		.Arc_EOL = FALSE
	},
	{
		.PidOrDidSize = 1,
		.DidIdentifier = 8448u,
		.DidReadFnc = Get_GSM_GearPos_Info,
		.Arc_EOL = FALSE
	},
	{
		.PidOrDidSize = 1,
		.DidIdentifier = 8450u,
		.DidReadFnc = Get_TCU_GearPos_Info,
		.Arc_EOL = FALSE
	},
	{
		.PidOrDidSize = 2,
		.DidIdentifier = 45061u,
		.DidReadFnc = Get_Mlx_Die1_Val,
		.Arc_EOL = FALSE
	},
	{
		.PidOrDidSize = 1,
		.DidIdentifier = 45059u,
		.DidReadFnc = Get_LMC_MechPos_Info,
		.Arc_EOL = FALSE
	},
	{
		.PidOrDidSize = 1,
		.DidIdentifier = 45060u,
		.DidReadFnc = Get_Pbutton_Status,
		.Arc_EOL = FALSE
	},
	{
		.PidOrDidSize = 1,
		.DidIdentifier = 1536u,
		.DidReadFnc = Get_ShieldOpDr_AutoP_Status,
		.Arc_EOL = FALSE
	},
	{
		.PidOrDidSize = 2,
		.DidIdentifier = 45057u,
		.DidReadFnc = Get_PowerSupply,
		.Arc_EOL = FALSE
	},
	{
		.Arc_EOL = TRUE
	}
	*/	
};

const Dem_PidOrDidType DemPidList[] = {
	{
		.Arc_EOL = TRUE
	}
};

const Dem_PidOrDidType * const DemFreezeFrameClass_didRefList[] = {
		&DemDidList[DEM_DID_DID_PowerSupply_INDEX],
		&DemDidList[DEM_DID_DID_ShiftMechPosInformation_INDEX],
		&DemDidList[DEM_DID_DID_PbuttonStatus_INDEX],
		&DemDidList[DEM_DID_DID_Mlx_Die1_Val_INDEX],
		&DemDidList[DEM_DID_DID_Mlx_Die2_Val_INDEX],
		&DemDidList[DEM_DID_LIST_EOL_INDEX]
};

const Dem_PidOrDidType * const OBDFreezeFrame_pidRefList[] = {
		&DemPidList[DEM_PID_LIST_EOL_INDEX]
};


const Dem_FreezeFrameClassType FreezeFrameClassList[] = {
	{	//DemFreezeFrameClass
		.FFKind = DEM_FREEZE_FRAME_NON_OBD,
		.FFIdClassRef = DemFreezeFrameClass_didRefList
	},
};



#define Dem_START_SEC_CALIB_UNSPECIFIED
//#include "Dem_MemMap.h" /*lint !e9019 suppressed due to Dem_MemMap.h include is required */
/**
 * TODO: This is actually a structure but it only contains an array
 * @a2l_characteristic DemFreezeFrameRecNumClass_FreezeFrameRecNumClass
 * @desc freeze frame record numbers for record number class DemFreezeFrameRecNumClass (DTC: [F00617_HighVoltage, F00616_LowVoltage, A06600_TouErr, P123312_PButton2NotOK, P123311_PButton1NotOK, P123313_PButton3NotOK, U014600_GWBCMLost, A06800_MorErr, A06700_PressErr, U010100_TCULost, C07300_BusOff, P271F54_CalibrationFault, P123411_LButton1NotOK, P123412_LButton2NotOK, P123511_LButton1Stucl, P123512_LButton2Stuck] )
 * @scaling 1 
 * @elements 2
 * @min 1
 * @max 255
 * @type uint8
 */
 /* @req DEM583 */
ARC_DECLARE_CALIB(const Dem_FreezeFrameRecNumClass, DemFreezeFrameRecNumClass_FreezeFrameRecNumClass) = {
	.FreezeFrameRecordNumber = {
		0x1u,
		0x2u,
		DEM_FREEZEFRAME_RECORD_NUMBER_EOL
	}
};
#define Dem_STOP_SEC_CALIB_UNSPECIFIED
//#include "Dem_MemMap.h" /*lint !e9019 suppressed due to Dem_MemMap.h include is required */

const Arc_FailureCycleCounterThreshold NoFailure_FailureCycleCounter = {
	.Threshold = 0u,
};

#define Dem_START_SEC_CALIB_UNSPECIFIED
//#include "Dem_MemMap.h" /*lint !e9019 suppressed due to Dem_MemMap.h include is required */
/**
 * @a2l_characteristic F00617_HIGH_VOLTAGE_FailureCycleCounter
 * @desc failure cycle threshold for event F00617_HIGH_VOLTAGE  (DTC: F00617_HighVoltage)
 * @scaling 1 
 * @struct_size 1
 * @field_name DemEventFailureCycleCounterThreshold
 * @min 0
 * @max 255
 * @type uint8
 */
ARC_DECLARE_CALIB(const Arc_FailureCycleCounterThreshold, F00617_HIGH_VOLTAGE_FailureCycleCounter) = {
	.Threshold = 1u,
};

/**
 * @a2l_characteristic F00617_HIGH_VOLTAGE_EventAvailable
 * @desc Determines if event is available or not
 * @scaling 1 
 * @min 0
 * @max 1
 * @type uint8
 */
 #if !defined(HOST_TEST)
ARC_DECLARE_CALIB(const boolean, F00617_HIGH_VOLTAGE_EventAvailable) = TRUE;
#else
boolean F00617_HIGH_VOLTAGE_EventAvailable = TRUE; /*lint -esym(843,F00617_HIGH_VOLTAGE_EventAvailable) not declared as const for HOST_TEST only */
#endif
#define Dem_STOP_SEC_CALIB_UNSPECIFIED
//#include "Dem_MemMap.h" /*lint !e9019 suppressed due to Dem_MemMap.h include is required */

const Dem_EventClassType F00617_HIGH_VOLTAGE_DemEventClass = {
	.EventAvailableByCalibration = &F00617_HIGH_VOLTAGE_EventAvailable,
	.ConsiderPtoStatus = FALSE,
	.EventDestination = DEM_DTC_ORIGIN_PRIMARY_MEMORY,
	.IndicatorAttribute = NULL,
	.EventPriority = 1u,
	.FFPrestorageSupported = FALSE, /* Value is not configurable */
	.OperationCycleRef = DEM_ACTIVE,
	.PreDebounceAlgorithmClass = &AlgoClass_F00617_HIGH_VOLTAGE,
	.AgingAllowed = TRUE,
	.AgingCycleCounterThreshold = 40u,
	.AgingCycleRef = DEM_ACTIVE,
	.FailureCycleRef = DEM_ACTIVE,
	.FailureCycleCounterThresholdRef = &F00617_HIGH_VOLTAGE_FailureCycleCounter,
	.EnableConditionGroupRef = NULL
};
#define Dem_START_SEC_CALIB_UNSPECIFIED
//#include "Dem_MemMap.h" /*lint !e9019 suppressed due to Dem_MemMap.h include is required */
/**
 * @a2l_characteristic F00616_LOW_VOLTAGE_FailureCycleCounter
 * @desc failure cycle threshold for event F00616_LOW_VOLTAGE  (DTC: U3003A2_LowVoltage)
 * @scaling 1 
 * @struct_size 1
 * @field_name DemEventFailureCycleCounterThreshold
 * @min 0
 * @max 255
 * @type uint8
 */
ARC_DECLARE_CALIB(const Arc_FailureCycleCounterThreshold, F00616_LOW_VOLTAGE_FailureCycleCounter) = {
	.Threshold = 1u,
};

/**
 * @a2l_characteristic F00616_LOW_VOLTAGE_EventAvailable
 * @desc Determines if event is available or not
 * @scaling 1 
 * @min 0
 * @max 1
 * @type uint8
 */
 #if !defined(HOST_TEST)
ARC_DECLARE_CALIB(const boolean, F00616_LOW_VOLTAGE_EventAvailable) = TRUE;
#else
boolean F00616_LOW_VOLTAGE_EventAvailable = TRUE; /*lint -esym(843,F00616_LOW_VOLTAGE_EventAvailable) not declared as const for HOST_TEST only */
#endif
#define Dem_STOP_SEC_CALIB_UNSPECIFIED
//#include "Dem_MemMap.h" /*lint !e9019 suppressed due to Dem_MemMap.h include is required */

const Dem_EventClassType F00616_LOW_VOLTAGE_DemEventClass = {
	.EventAvailableByCalibration = &F00616_LOW_VOLTAGE_EventAvailable,
	.ConsiderPtoStatus = FALSE,
	.EventDestination = DEM_DTC_ORIGIN_PRIMARY_MEMORY,
	.IndicatorAttribute = NULL,
	.EventPriority = 1u,
	.FFPrestorageSupported = FALSE, /* Value is not configurable */
	.OperationCycleRef = DEM_ACTIVE,
	.PreDebounceAlgorithmClass = &AlgoClass_F00616_LOW_VOLTAGE,
	.AgingAllowed = TRUE,
	.AgingCycleCounterThreshold = 40u,
	.AgingCycleRef = DEM_ACTIVE,
	.FailureCycleRef = DEM_ACTIVE,
	.FailureCycleCounterThresholdRef = &F00616_LOW_VOLTAGE_FailureCycleCounter,
	.EnableConditionGroupRef = NULL
};
#define Dem_START_SEC_CALIB_UNSPECIFIED
//#include "Dem_MemMap.h" /*lint !e9019 suppressed due to Dem_MemMap.h include is required */
/**
 * @a2l_characteristic A06600_TouErr_FailureCycleCounter
 * @desc failure cycle threshold for event A06600_TouErr  (DTC: A06600_TouErr)
 * @scaling 1 
 * @struct_size 1
 * @field_name DemEventFailureCycleCounterThreshold
 * @min 0
 * @max 255
 * @type uint8
 */
ARC_DECLARE_CALIB(const Arc_FailureCycleCounterThreshold, A06600_TouErr_FailureCycleCounter) = {
	.Threshold = 1u,
};

/**
 * @a2l_characteristic A06600_TouErr_EventAvailable
 * @desc Determines if event is available or not
 * @scaling 1 
 * @min 0
 * @max 1
 * @type uint8
 */
 #if !defined(HOST_TEST)
ARC_DECLARE_CALIB(const boolean, A06600_TouErr_EventAvailable) = TRUE;
#else
boolean A06600_TouErr_EventAvailable = TRUE; /*lint -esym(843,A06600_TouErr_EventAvailable) not declared as const for HOST_TEST only */
#endif
#define Dem_STOP_SEC_CALIB_UNSPECIFIED
//#include "Dem_MemMap.h" /*lint !e9019 suppressed due to Dem_MemMap.h include is required */

const Dem_EventClassType A06600_TouErr_DemEventClass = {
	.EventAvailableByCalibration = &A06600_TouErr_EventAvailable,
	.ConsiderPtoStatus = FALSE,
	.EventDestination = DEM_DTC_ORIGIN_PRIMARY_MEMORY,
	.IndicatorAttribute = NULL,
	.EventPriority = 1u,
	.FFPrestorageSupported = FALSE, /* Value is not configurable */
	.OperationCycleRef = DEM_ACTIVE,
	.PreDebounceAlgorithmClass = &AlgoClass_A06600_TouErr,
	.AgingAllowed = TRUE,
	.AgingCycleCounterThreshold = 40u,
	.AgingCycleRef = DEM_ACTIVE,
	.FailureCycleRef = DEM_ACTIVE,
	.FailureCycleCounterThresholdRef = &A06600_TouErr_FailureCycleCounter,
	.EnableConditionGroupRef = NULL
};
#define Dem_START_SEC_CALIB_UNSPECIFIED
//#include "Dem_MemMap.h" /*lint !e9019 suppressed due to Dem_MemMap.h include is required */

/**
 * @a2l_characteristic DemEventParameter0_EventAvailable
 * @desc Determines if event is available or not
 * @scaling 1 
 * @min 0
 * @max 1
 * @type uint8
 */
 #if !defined(HOST_TEST)
ARC_DECLARE_CALIB(const boolean, DemEventParameter0_EventAvailable) = TRUE;
#else
boolean DemEventParameter0_EventAvailable = TRUE; /*lint -esym(843,DemEventParameter0_EventAvailable) not declared as const for HOST_TEST only */
#endif
#define Dem_STOP_SEC_CALIB_UNSPECIFIED
//#include "Dem_MemMap.h" /*lint !e9019 suppressed due to Dem_MemMap.h include is required */

const Dem_EventClassType DemEventParameter0_DemEventClass = {
	.EventAvailableByCalibration = &DemEventParameter0_EventAvailable,
	.ConsiderPtoStatus = FALSE,
	.EventDestination = DEM_DTC_ORIGIN_NOT_USED,
	.IndicatorAttribute = NULL,
	.EventPriority = 1u,
	.FFPrestorageSupported = FALSE, /* Value is not configurable */
	.OperationCycleRef = DEM_ACTIVE,
	.PreDebounceAlgorithmClass = NULL,
	.AgingAllowed = FALSE,
	.AgingCycleCounterThreshold = 0u,
	.AgingCycleRef = DEM_ACTIVE, /* Not used */
	.FailureCycleRef= DEM_OPERATION_CYCLE_ID_ENDMARK,
	.FailureCycleCounterThresholdRef = &NoFailure_FailureCycleCounter,
	.EnableConditionGroupRef = NULL
};
#define Dem_START_SEC_CALIB_UNSPECIFIED
//#include "Dem_MemMap.h" /*lint !e9019 suppressed due to Dem_MemMap.h include is required */

/**
 * @a2l_characteristic DemEventParameter1_EventAvailable
 * @desc Determines if event is available or not
 * @scaling 1 
 * @min 0
 * @max 1
 * @type uint8
 */
 #if !defined(HOST_TEST)
ARC_DECLARE_CALIB(const boolean, DemEventParameter1_EventAvailable) = TRUE;
#else
boolean DemEventParameter1_EventAvailable = TRUE; /*lint -esym(843,DemEventParameter1_EventAvailable) not declared as const for HOST_TEST only */
#endif
#define Dem_STOP_SEC_CALIB_UNSPECIFIED
//#include "Dem_MemMap.h" /*lint !e9019 suppressed due to Dem_MemMap.h include is required */

const Dem_EventClassType DemEventParameter1_DemEventClass = {
	.EventAvailableByCalibration = &DemEventParameter1_EventAvailable,
	.ConsiderPtoStatus = FALSE,
	.EventDestination = DEM_DTC_ORIGIN_NOT_USED,
	.IndicatorAttribute = NULL,
	.EventPriority = 1u,
	.FFPrestorageSupported = FALSE, /* Value is not configurable */
	.OperationCycleRef = DEM_ACTIVE,
	.PreDebounceAlgorithmClass = NULL,
	.AgingAllowed = FALSE,
	.AgingCycleCounterThreshold = 0u,
	.AgingCycleRef = DEM_ACTIVE, /* Not used */
	.FailureCycleRef= DEM_OPERATION_CYCLE_ID_ENDMARK,
	.FailureCycleCounterThresholdRef = &NoFailure_FailureCycleCounter,
	.EnableConditionGroupRef = NULL
};
#define Dem_START_SEC_CALIB_UNSPECIFIED
//#include "Dem_MemMap.h" /*lint !e9019 suppressed due to Dem_MemMap.h include is required */

/**
 * @a2l_characteristic DemEventParameter2_EventAvailable
 * @desc Determines if event is available or not
 * @scaling 1 
 * @min 0
 * @max 1
 * @type uint8
 */
 #if !defined(HOST_TEST)
ARC_DECLARE_CALIB(const boolean, DemEventParameter2_EventAvailable) = TRUE;
#else
boolean DemEventParameter2_EventAvailable = TRUE; /*lint -esym(843,DemEventParameter2_EventAvailable) not declared as const for HOST_TEST only */
#endif
#define Dem_STOP_SEC_CALIB_UNSPECIFIED
//#include "Dem_MemMap.h" /*lint !e9019 suppressed due to Dem_MemMap.h include is required */

const Dem_EventClassType DemEventParameter2_DemEventClass = {
	.EventAvailableByCalibration = &DemEventParameter2_EventAvailable,
	.ConsiderPtoStatus = FALSE,
	.EventDestination = DEM_DTC_ORIGIN_NOT_USED,
	.IndicatorAttribute = NULL,
	.EventPriority = 1u,
	.FFPrestorageSupported = FALSE, /* Value is not configurable */
	.OperationCycleRef = DEM_ACTIVE,
	.PreDebounceAlgorithmClass = NULL,
	.AgingAllowed = FALSE,
	.AgingCycleCounterThreshold = 0u,
	.AgingCycleRef = DEM_ACTIVE, /* Not used */
	.FailureCycleRef= DEM_OPERATION_CYCLE_ID_ENDMARK,
	.FailureCycleCounterThresholdRef = &NoFailure_FailureCycleCounter,
	.EnableConditionGroupRef = NULL
};
#define Dem_START_SEC_CALIB_UNSPECIFIED
//#include "Dem_MemMap.h" /*lint !e9019 suppressed due to Dem_MemMap.h include is required */

/**
 * @a2l_characteristic DemEventParameter3_EventAvailable
 * @desc Determines if event is available or not
 * @scaling 1 
 * @min 0
 * @max 1
 * @type uint8
 */
 #if !defined(HOST_TEST)
ARC_DECLARE_CALIB(const boolean, DemEventParameter3_EventAvailable) = TRUE;
#else
boolean DemEventParameter3_EventAvailable = TRUE; /*lint -esym(843,DemEventParameter3_EventAvailable) not declared as const for HOST_TEST only */
#endif
#define Dem_STOP_SEC_CALIB_UNSPECIFIED
//#include "Dem_MemMap.h" /*lint !e9019 suppressed due to Dem_MemMap.h include is required */

const Dem_EventClassType DemEventParameter3_DemEventClass = {
	.EventAvailableByCalibration = &DemEventParameter3_EventAvailable,
	.ConsiderPtoStatus = FALSE,
	.EventDestination = DEM_DTC_ORIGIN_NOT_USED,
	.IndicatorAttribute = NULL,
	.EventPriority = 1u,
	.FFPrestorageSupported = FALSE, /* Value is not configurable */
	.OperationCycleRef = DEM_ACTIVE,
	.PreDebounceAlgorithmClass = NULL,
	.AgingAllowed = FALSE,
	.AgingCycleCounterThreshold = 0u,
	.AgingCycleRef = DEM_ACTIVE, /* Not used */
	.FailureCycleRef= DEM_OPERATION_CYCLE_ID_ENDMARK,
	.FailureCycleCounterThresholdRef = &NoFailure_FailureCycleCounter,
	.EnableConditionGroupRef = NULL
};
#define Dem_START_SEC_CALIB_UNSPECIFIED
//#include "Dem_MemMap.h" /*lint !e9019 suppressed due to Dem_MemMap.h include is required */

/**
 * @a2l_characteristic DemEventParameter4_EventAvailable
 * @desc Determines if event is available or not
 * @scaling 1 
 * @min 0
 * @max 1
 * @type uint8
 */
 #if !defined(HOST_TEST)
ARC_DECLARE_CALIB(const boolean, DemEventParameter4_EventAvailable) = TRUE;
#else
boolean DemEventParameter4_EventAvailable = TRUE; /*lint -esym(843,DemEventParameter4_EventAvailable) not declared as const for HOST_TEST only */
#endif
#define Dem_STOP_SEC_CALIB_UNSPECIFIED
//#include "Dem_MemMap.h" /*lint !e9019 suppressed due to Dem_MemMap.h include is required */

const Dem_EventClassType DemEventParameter4_DemEventClass = {
	.EventAvailableByCalibration = &DemEventParameter4_EventAvailable,
	.ConsiderPtoStatus = FALSE,
	.EventDestination = DEM_DTC_ORIGIN_NOT_USED,
	.IndicatorAttribute = NULL,
	.EventPriority = 1u,
	.FFPrestorageSupported = FALSE, /* Value is not configurable */
	.OperationCycleRef = DEM_ACTIVE,
	.PreDebounceAlgorithmClass = NULL,
	.AgingAllowed = FALSE,
	.AgingCycleCounterThreshold = 0u,
	.AgingCycleRef = DEM_ACTIVE, /* Not used */
	.FailureCycleRef= DEM_OPERATION_CYCLE_ID_ENDMARK,
	.FailureCycleCounterThresholdRef = &NoFailure_FailureCycleCounter,
	.EnableConditionGroupRef = NULL
};
#define Dem_START_SEC_CALIB_UNSPECIFIED
//#include "Dem_MemMap.h" /*lint !e9019 suppressed due to Dem_MemMap.h include is required */

/**
 * @a2l_characteristic DemEventParameter5_EventAvailable
 * @desc Determines if event is available or not
 * @scaling 1 
 * @min 0
 * @max 1
 * @type uint8
 */
 #if !defined(HOST_TEST)
ARC_DECLARE_CALIB(const boolean, DemEventParameter5_EventAvailable) = TRUE;
#else
boolean DemEventParameter5_EventAvailable = TRUE; /*lint -esym(843,DemEventParameter5_EventAvailable) not declared as const for HOST_TEST only */
#endif
#define Dem_STOP_SEC_CALIB_UNSPECIFIED
//#include "Dem_MemMap.h" /*lint !e9019 suppressed due to Dem_MemMap.h include is required */

const Dem_EventClassType DemEventParameter5_DemEventClass = {
	.EventAvailableByCalibration = &DemEventParameter5_EventAvailable,
	.ConsiderPtoStatus = FALSE,
	.EventDestination = DEM_DTC_ORIGIN_NOT_USED,
	.IndicatorAttribute = NULL,
	.EventPriority = 1u,
	.FFPrestorageSupported = FALSE, /* Value is not configurable */
	.OperationCycleRef = DEM_ACTIVE,
	.PreDebounceAlgorithmClass = NULL,
	.AgingAllowed = FALSE,
	.AgingCycleCounterThreshold = 0u,
	.AgingCycleRef = DEM_ACTIVE, /* Not used */
	.FailureCycleRef= DEM_OPERATION_CYCLE_ID_ENDMARK,
	.FailureCycleCounterThresholdRef = &NoFailure_FailureCycleCounter,
	.EnableConditionGroupRef = NULL
};
#define Dem_START_SEC_CALIB_UNSPECIFIED
//#include "Dem_MemMap.h" /*lint !e9019 suppressed due to Dem_MemMap.h include is required */
/**
 * @a2l_characteristic P123312_P_BUTTON2_NOT_OK_FailureCycleCounter
 * @desc failure cycle threshold for event P123312_P_BUTTON2_NOT_OK  (DTC: P123312_PButton2NotOK)
 * @scaling 1 
 * @struct_size 1
 * @field_name DemEventFailureCycleCounterThreshold
 * @min 0
 * @max 255
 * @type uint8
 */
 /*
ARC_DECLARE_CALIB(const Arc_FailureCycleCounterThreshold, P123312_P_BUTTON2_NOT_OK_FailureCycleCounter) = {
	.Threshold = 1u,
};
*/
/**
 * @a2l_characteristic P123312_P_BUTTON2_NOT_OK_EventAvailable
 * @desc Determines if event is available or not
 * @scaling 1 
 * @min 0
 * @max 1
 * @type uint8
 */
 #if !defined(HOST_TEST)
//ARC_DECLARE_CALIB(const boolean, P123312_P_BUTTON2_NOT_OK_EventAvailable) = TRUE;
#else
//boolean P123312_P_BUTTON2_NOT_OK_EventAvailable = TRUE; /*lint -esym(843,P123312_P_BUTTON2_NOT_OK_EventAvailable) not declared as const for HOST_TEST only */
#endif
#define Dem_STOP_SEC_CALIB_UNSPECIFIED
//#include "Dem_MemMap.h" /*lint !e9019 suppressed due to Dem_MemMap.h include is required */
/*
const Dem_EventClassType P123312_P_BUTTON2_NOT_OK_DemEventClass = {
	.EventAvailableByCalibration = &P123312_P_BUTTON2_NOT_OK_EventAvailable,
	.ConsiderPtoStatus = FALSE,
	.EventDestination = DEM_DTC_ORIGIN_PRIMARY_MEMORY,
	.IndicatorAttribute = NULL,
	.EventPriority = 1u,
	.FFPrestorageSupported = FALSE, 
	.OperationCycleRef = DEM_ACTIVE,
	.PreDebounceAlgorithmClass = &AlgoClass_P123312_P_BUTTON2_NOT_OK,
	.AgingAllowed = TRUE,
	.AgingCycleCounterThreshold = 40u,
	.AgingCycleRef = DEM_ACTIVE,
	.FailureCycleRef = DEM_ACTIVE,
	.FailureCycleCounterThresholdRef = &P123312_P_BUTTON2_NOT_OK_FailureCycleCounter,
	.EnableConditionGroupRef = NULL
};
*/
#define Dem_START_SEC_CALIB_UNSPECIFIED
//#include "Dem_MemMap.h" /*lint !e9019 suppressed due to Dem_MemMap.h include is required */
/**
 * @a2l_characteristic P123311_P_BUTTON1_NOT_OK_FailureCycleCounter
 * @desc failure cycle threshold for event P123311_P_BUTTON1_NOT_OK  (DTC: P123311_PButton1NotOK)
 * @scaling 1 
 * @struct_size 1
 * @field_name DemEventFailureCycleCounterThreshold
 * @min 0
 * @max 255
 * @type uint8
 */
//ARC_DECLARE_CALIB(const Arc_FailureCycleCounterThreshold, P123311_P_BUTTON1_NOT_OK_FailureCycleCounter) = {
	//.Threshold = 1u,
//};

/**
 * @a2l_characteristic P123311_P_BUTTON1_NOT_OK_EventAvailable
 * @desc Determines if event is available or not
 * @scaling 1 
 * @min 0
 * @max 1
 * @type uint8
 */
 #if !defined(HOST_TEST)
//ARC_DECLARE_CALIB(const boolean, P123311_P_BUTTON1_NOT_OK_EventAvailable) = TRUE;
#else
//boolean P123311_P_BUTTON1_NOT_OK_EventAvailable = TRUE; /*lint -esym(843,P123311_P_BUTTON1_NOT_OK_EventAvailable) not declared as const for HOST_TEST only */
#endif
#define Dem_STOP_SEC_CALIB_UNSPECIFIED
//#include "Dem_MemMap.h" /*lint !e9019 suppressed due to Dem_MemMap.h include is required */
/*
const Dem_EventClassType P123311_P_BUTTON1_NOT_OK_DemEventClass = {
	.EventAvailableByCalibration = &P123311_P_BUTTON1_NOT_OK_EventAvailable,
	.ConsiderPtoStatus = FALSE,
	.EventDestination = DEM_DTC_ORIGIN_PRIMARY_MEMORY,
	.IndicatorAttribute = NULL,
	.EventPriority = 1u,
	.FFPrestorageSupported = FALSE, 
	.OperationCycleRef = DEM_ACTIVE,
	.PreDebounceAlgorithmClass = &AlgoClass_P123311_P_BUTTON1_NOT_OK,
	.AgingAllowed = TRUE,
	.AgingCycleCounterThreshold = 40u,
	.AgingCycleRef = DEM_ACTIVE,
	.FailureCycleRef = DEM_ACTIVE,
	.FailureCycleCounterThresholdRef = &P123311_P_BUTTON1_NOT_OK_FailureCycleCounter,
	.EnableConditionGroupRef = NULL
};
*/
#define Dem_START_SEC_CALIB_UNSPECIFIED
//#include "Dem_MemMap.h" /*lint !e9019 suppressed due to Dem_MemMap.h include is required */
/**
 * @a2l_characteristic P123313_P_BUTTON3_NOT_OK_FailureCycleCounter
 * @desc failure cycle threshold for event P123313_P_BUTTON3_NOT_OK  (DTC: P123313_PButton3NotOK)
 * @scaling 1 
 * @struct_size 1
 * @field_name DemEventFailureCycleCounterThreshold
 * @min 0
 * @max 255
 * @type uint8
 */
//ARC_DECLARE_CALIB(const Arc_FailureCycleCounterThreshold, P123313_P_BUTTON3_NOT_OK_FailureCycleCounter) = {
	//.Threshold = 1u,
//};

/**
 * @a2l_characteristic P123313_P_BUTTON3_NOT_OK_EventAvailable
 * @desc Determines if event is available or not
 * @scaling 1 
 * @min 0
 * @max 1
 * @type uint8
 */
 #if !defined(HOST_TEST)
//ARC_DECLARE_CALIB(const boolean, P123313_P_BUTTON3_NOT_OK_EventAvailable) = TRUE;
#else
//boolean P123313_P_BUTTON3_NOT_OK_EventAvailable = TRUE; /*lint -esym(843,P123313_P_BUTTON3_NOT_OK_EventAvailable) not declared as const for HOST_TEST only */
#endif
#define Dem_STOP_SEC_CALIB_UNSPECIFIED
//#include "Dem_MemMap.h" /*lint !e9019 suppressed due to Dem_MemMap.h include is required */
/*
const Dem_EventClassType P123313_P_BUTTON3_NOT_OK_DemEventClass = {
	.EventAvailableByCalibration = &P123313_P_BUTTON3_NOT_OK_EventAvailable,
	.ConsiderPtoStatus = FALSE,
	.EventDestination = DEM_DTC_ORIGIN_PRIMARY_MEMORY,
	.IndicatorAttribute = NULL,
	.EventPriority = 1u,
	.FFPrestorageSupported = FALSE, 
	.OperationCycleRef = DEM_ACTIVE,
	.PreDebounceAlgorithmClass = &AlgoClass_P123313_P_BUTTON3_NOT_OK,
	.AgingAllowed = TRUE,
	.AgingCycleCounterThreshold = 40u,
	.AgingCycleRef = DEM_ACTIVE,
	.FailureCycleRef = DEM_ACTIVE,
	.FailureCycleCounterThresholdRef = &P123313_P_BUTTON3_NOT_OK_FailureCycleCounter,
	.EnableConditionGroupRef = NULL
};
*/
#define Dem_START_SEC_CALIB_UNSPECIFIED
//#include "Dem_MemMap.h" /*lint !e9019 suppressed due to Dem_MemMap.h include is required */
/**
 * @a2l_characteristic U014600_GW_BCM_LOST_FailureCycleCounter
 * @desc failure cycle threshold for event U014600_GW_BCM_LOST  (DTC: U014600_GWBCMLost)
 * @scaling 1 
 * @struct_size 1
 * @field_name DemEventFailureCycleCounterThreshold
 * @min 0
 * @max 255
 * @type uint8
 */
//ARC_DECLARE_CALIB(const Arc_FailureCycleCounterThreshold, U014600_GW_BCM_LOST_FailureCycleCounter) = {
//	.Threshold = 1u,
//};

/**
 * @a2l_characteristic U014600_GW_BCM_LOST_EventAvailable
 * @desc Determines if event is available or not
 * @scaling 1 
 * @min 0
 * @max 1
 * @type uint8
 */
 #if !defined(HOST_TEST)
//ARC_DECLARE_CALIB(const boolean, U014600_GW_BCM_LOST_EventAvailable) = TRUE;
#else
//boolean U014600_GW_BCM_LOST_EventAvailable = TRUE; /*lint -esym(843,U014600_GW_BCM_LOST_EventAvailable) not declared as const for HOST_TEST only */
#endif
#define Dem_STOP_SEC_CALIB_UNSPECIFIED
//#include "Dem_MemMap.h" /*lint !e9019 suppressed due to Dem_MemMap.h include is required */
/*
const Dem_EventClassType U014600_GW_BCM_LOST_DemEventClass = {
	.EventAvailableByCalibration = &U014600_GW_BCM_LOST_EventAvailable,
	.ConsiderPtoStatus = FALSE,
	.EventDestination = DEM_DTC_ORIGIN_PRIMARY_MEMORY,
	.IndicatorAttribute = NULL,
	.EventPriority = 1u,
	.FFPrestorageSupported = FALSE, 
	.OperationCycleRef = DEM_ACTIVE,
	.PreDebounceAlgorithmClass = &AlgoClass_U014600_GW_BCM_LOST,
	.AgingAllowed = TRUE,
	.AgingCycleCounterThreshold = 40u,
	.AgingCycleRef = DEM_ACTIVE,
	.FailureCycleRef = DEM_ACTIVE,
	.FailureCycleCounterThresholdRef = &U014600_GW_BCM_LOST_FailureCycleCounter,
	.EnableConditionGroupRef = NULL
};
*/
#define Dem_START_SEC_CALIB_UNSPECIFIED
//#include "Dem_MemMap.h" /*lint !e9019 suppressed due to Dem_MemMap.h include is required */
/**
 * @a2l_characteristic A06800_MorErr_FailureCycleCounter
 * @desc failure cycle threshold for event A06800_MorErr  (DTC: P121261_LeverAllError)
 * @scaling 1 
 * @struct_size 1
 * @field_name DemEventFailureCycleCounterThreshold
 * @min 0
 * @max 255
 * @type uint8
 */
ARC_DECLARE_CALIB(const Arc_FailureCycleCounterThreshold, A06800_MorErr_FailureCycleCounter) = {
	.Threshold = 1u,
};

/**
 * @a2l_characteristic A06800_MorErr_EventAvailable
 * @desc Determines if event is available or not
 * @scaling 1 
 * @min 0
 * @max 1
 * @type uint8
 */
 #if !defined(HOST_TEST)
ARC_DECLARE_CALIB(const boolean, A06800_MorErr_EventAvailable) = TRUE;
#else
boolean A06800_MorErr_EventAvailable = TRUE; /*lint -esym(843,A06800_MorErr_EventAvailable) not declared as const for HOST_TEST only */
#endif
#define Dem_STOP_SEC_CALIB_UNSPECIFIED
//#include "Dem_MemMap.h" /*lint !e9019 suppressed due to Dem_MemMap.h include is required */

const Dem_EventClassType A06800_MorErr_DemEventClass = {
	.EventAvailableByCalibration = &A06800_MorErr_EventAvailable,
	.ConsiderPtoStatus = FALSE,
	.EventDestination = DEM_DTC_ORIGIN_PRIMARY_MEMORY,
	.IndicatorAttribute = NULL,
	.EventPriority = 1u,
	.FFPrestorageSupported = FALSE, 
	.OperationCycleRef = DEM_ACTIVE,
	.PreDebounceAlgorithmClass = &AlgoClass_A06800_MorErr,
	.AgingAllowed = TRUE,
	.AgingCycleCounterThreshold = 40u,
	.AgingCycleRef = DEM_ACTIVE,
	.FailureCycleRef = DEM_ACTIVE,
	.FailureCycleCounterThresholdRef = &A06800_MorErr_FailureCycleCounter,
	.EnableConditionGroupRef = NULL
};

#define Dem_START_SEC_CALIB_UNSPECIFIED
//#include "Dem_MemMap.h" /*lint !e9019 suppressed due to Dem_MemMap.h include is required */
/**
 * @a2l_characteristic A06700_PressErr_FailureCycleCounter
 * @desc failure cycle threshold for event A06700_PressErr  (DTC: A06700_PressErr)
 * @scaling 1 
 * @struct_size 1
 * @field_name DemEventFailureCycleCounterThreshold
 * @min 0
 * @max 255
 * @type uint8
 */
ARC_DECLARE_CALIB(const Arc_FailureCycleCounterThreshold, A06700_PressErr_FailureCycleCounter) = {
	.Threshold = 1u,
};

/**
 * @a2l_characteristic A06700_PressErr_EventAvailable
 * @desc Determines if event is available or not
 * @scaling 1 
 * @min 0
 * @max 1
 * @type uint8
 */
 #if !defined(HOST_TEST)
ARC_DECLARE_CALIB(const boolean, A06700_PressErr_EventAvailable) = TRUE;
#else
boolean A06700_PressErr_EventAvailable = TRUE; /*lint -esym(843,P121161_LEVER2_ERROR_EventAvailable) not declared as const for HOST_TEST only */
#endif
#define Dem_STOP_SEC_CALIB_UNSPECIFIED
//#include "Dem_MemMap.h" /*lint !e9019 suppressed due to Dem_MemMap.h include is required */

const Dem_EventClassType A06700_PressErr_DemEventClass = {
	.EventAvailableByCalibration = &A06700_PressErr_EventAvailable,
	.ConsiderPtoStatus = FALSE,
	.EventDestination = DEM_DTC_ORIGIN_PRIMARY_MEMORY,
	.IndicatorAttribute = NULL,
	.EventPriority = 1u,
	.FFPrestorageSupported = FALSE, /* Value is not configurable */
	.OperationCycleRef = DEM_ACTIVE,
	.PreDebounceAlgorithmClass = &AlgoClass_A06700_PressErr,
	.AgingAllowed = TRUE,
	.AgingCycleCounterThreshold = 40u,
	.AgingCycleRef = DEM_ACTIVE,
	.FailureCycleRef = DEM_ACTIVE,
	.FailureCycleCounterThresholdRef = &A06700_PressErr_FailureCycleCounter,
	.EnableConditionGroupRef = NULL
};
#define Dem_START_SEC_CALIB_UNSPECIFIED
//#include "Dem_MemMap.h" /*lint !e9019 suppressed due to Dem_MemMap.h include is required */
/**
 * @a2l_characteristic U010100_TCU_LOST_FailureCycleCounter
 * @desc failure cycle threshold for event U010100_TCU_LOST  (DTC: U010100_TCULost)
 * @scaling 1 
 * @struct_size 1
 * @field_name DemEventFailureCycleCounterThreshold
 * @min 0
 * @max 255
 * @type uint8
 */
//ARC_DECLARE_CALIB(const Arc_FailureCycleCounterThreshold, U010100_TCU_LOST_FailureCycleCounter) = {
//	.Threshold = 1u,
//};

/**
 * @a2l_characteristic U010100_TCU_LOST_EventAvailable
 * @desc Determines if event is available or not
 * @scaling 1 
 * @min 0
 * @max 1
 * @type uint8
 */
 #if !defined(HOST_TEST)
//ARC_DECLARE_CALIB(const boolean, U010100_TCU_LOST_EventAvailable) = TRUE;
#else
//boolean U010100_TCU_LOST_EventAvailable = TRUE; /*lint -esym(843,U010100_TCU_LOST_EventAvailable) not declared as const for HOST_TEST only */
#endif
#define Dem_STOP_SEC_CALIB_UNSPECIFIED
//#include "Dem_MemMap.h" /*lint !e9019 suppressed due to Dem_MemMap.h include is required */
/*
const Dem_EventClassType U010100_TCU_LOST_DemEventClass = {
	.EventAvailableByCalibration = &U010100_TCU_LOST_EventAvailable,
	.ConsiderPtoStatus = FALSE,
	.EventDestination = DEM_DTC_ORIGIN_PRIMARY_MEMORY,
	.IndicatorAttribute = NULL,
	.EventPriority = 1u,
	.FFPrestorageSupported = FALSE, 
	.OperationCycleRef = DEM_ACTIVE,
	.PreDebounceAlgorithmClass = &AlgoClass_U010100_TCU_LOST,
	.AgingAllowed = TRUE,
	.AgingCycleCounterThreshold = 40u,
	.AgingCycleRef = DEM_ACTIVE,
	.FailureCycleRef = DEM_ACTIVE,
	.FailureCycleCounterThresholdRef = &U010100_TCU_LOST_FailureCycleCounter,
	.EnableConditionGroupRef = NULL
};
*/
#define Dem_START_SEC_CALIB_UNSPECIFIED
//#include "Dem_MemMap.h" /*lint !e9019 suppressed due to Dem_MemMap.h include is required */
/**
 * @a2l_characteristic C07300_BUS_OFF_FailureCycleCounter
 * @desc failure cycle threshold for event C07300_BUS_OFF  (DTC: U002888_BusOff)
 * @scaling 1 
 * @struct_size 1
 * @field_name DemEventFailureCycleCounterThreshold
 * @min 0
 * @max 255
 * @type uint8
 */
ARC_DECLARE_CALIB(const Arc_FailureCycleCounterThreshold, C07300_BUS_OFF_FailureCycleCounter) = {
	.Threshold = 1u,
};

/**
 * @a2l_characteristic C07300_BUS_OFF_EventAvailable
 * @desc Determines if event is available or not
 * @scaling 1 
 * @min 0
 * @max 1
 * @type uint8
 */
 #if !defined(HOST_TEST)
ARC_DECLARE_CALIB(const boolean, C07300_BUS_OFF_EventAvailable) = TRUE;
#else
boolean C07300_BUS_OFF_EventAvailable = TRUE; /*lint -esym(843,C07300_BUS_OFF_EventAvailable) not declared as const for HOST_TEST only */
#endif
#define Dem_STOP_SEC_CALIB_UNSPECIFIED
//#include "Dem_MemMap.h" /*lint !e9019 suppressed due to Dem_MemMap.h include is required */

const Dem_EventClassType C07300_BUS_OFF_DemEventClass = {
	.EventAvailableByCalibration = &C07300_BUS_OFF_EventAvailable,
	.ConsiderPtoStatus = FALSE,
	.EventDestination = DEM_DTC_ORIGIN_PRIMARY_MEMORY,
	.IndicatorAttribute = NULL,
	.EventPriority = 1u,
	.FFPrestorageSupported = FALSE, /* Value is not configurable */
	.OperationCycleRef = DEM_ACTIVE,
	.PreDebounceAlgorithmClass = &AlgoClass_C07300_BUS_OFF,
	.AgingAllowed = TRUE,
	.AgingCycleCounterThreshold = 40u,
	.AgingCycleRef = DEM_ACTIVE,
	.FailureCycleRef = DEM_ACTIVE,
	.FailureCycleCounterThresholdRef = &C07300_BUS_OFF_FailureCycleCounter,
	.EnableConditionGroupRef = NULL
};
#define Dem_START_SEC_CALIB_UNSPECIFIED
//#include "Dem_MemMap.h" /*lint !e9019 suppressed due to Dem_MemMap.h include is required */
/**
 * @a2l_characteristic P271F54_Calibration_Fault_FailureCycleCounter
 * @desc failure cycle threshold for event P271F54_Calibration_Fault  (DTC: P271F54_CalibrationFault)
 * @scaling 1 
 * @struct_size 1
 * @field_name DemEventFailureCycleCounterThreshold
 * @min 0
 * @max 255
 * @type uint8
 */
//ARC_DECLARE_CALIB(const Arc_FailureCycleCounterThreshold, P271F54_Calibration_Fault_FailureCycleCounter) = {
	//.Threshold = 1u,
//};

/**
 * @a2l_characteristic P271F54_Calibration_Fault_EventAvailable
 * @desc Determines if event is available or not
 * @scaling 1 
 * @min 0
 * @max 1
 * @type uint8
 */
 #if !defined(HOST_TEST)
//ARC_DECLARE_CALIB(const boolean, P271F54_Calibration_Fault_EventAvailable) = TRUE;
#else
//boolean P271F54_Calibration_Fault_EventAvailable = TRUE; /*lint -esym(843,P271F54_Calibration_Fault_EventAvailable) not declared as const for HOST_TEST only */
#endif
#define Dem_STOP_SEC_CALIB_UNSPECIFIED
//#include "Dem_MemMap.h" /*lint !e9019 suppressed due to Dem_MemMap.h include is required */
/*
const Dem_EventClassType P271F54_Calibration_Fault_DemEventClass = {
	.EventAvailableByCalibration = &P271F54_Calibration_Fault_EventAvailable,
	.ConsiderPtoStatus = FALSE,
	.EventDestination = DEM_DTC_ORIGIN_PRIMARY_MEMORY,
	.IndicatorAttribute = NULL,
	.EventPriority = 1u,
	.FFPrestorageSupported = FALSE, 
	.OperationCycleRef = DEM_ACTIVE,
	.PreDebounceAlgorithmClass = &AlgoClass_P271F54_Calibration_Fault,
	.AgingAllowed = TRUE,
	.AgingCycleCounterThreshold = 40u,
	.AgingCycleRef = DEM_ACTIVE,
	.FailureCycleRef = DEM_ACTIVE,
	.FailureCycleCounterThresholdRef = &P271F54_Calibration_Fault_FailureCycleCounter,
	.EnableConditionGroupRef = NULL
};
*/
#define Dem_START_SEC_CALIB_UNSPECIFIED
//#include "Dem_MemMap.h" /*lint !e9019 suppressed due to Dem_MemMap.h include is required */
/**
 * @a2l_characteristic P123411_L_BUTTON1_NOT_OK_FailureCycleCounter
 * @desc failure cycle threshold for event P123411_L_BUTTON1_NOT_OK  (DTC: P123411_LButton1NotOK)
 * @scaling 1 
 * @struct_size 1
 * @field_name DemEventFailureCycleCounterThreshold
 * @min 0
 * @max 255
 * @type uint8
 */
//ARC_DECLARE_CALIB(const Arc_FailureCycleCounterThreshold, P123411_L_BUTTON1_NOT_OK_FailureCycleCounter) = {
//	.Threshold = 1u,
//};

/**
 * @a2l_characteristic P123411_L_BUTTON1_NOT_OK_EventAvailable
 * @desc Determines if event is available or not
 * @scaling 1 
 * @min 0
 * @max 1
 * @type uint8
 */
 #if !defined(HOST_TEST)
//ARC_DECLARE_CALIB(const boolean, P123411_L_BUTTON1_NOT_OK_EventAvailable) = TRUE;
#else
//boolean P123411_L_BUTTON1_NOT_OK_EventAvailable = TRUE; /*lint -esym(843,P123411_L_BUTTON1_NOT_OK_EventAvailable) not declared as const for HOST_TEST only */
#endif
#define Dem_STOP_SEC_CALIB_UNSPECIFIED
//#include "Dem_MemMap.h" /*lint !e9019 suppressed due to Dem_MemMap.h include is required */
/*
const Dem_EventClassType P123411_L_BUTTON1_NOT_OK_DemEventClass = {
	.EventAvailableByCalibration = &P123411_L_BUTTON1_NOT_OK_EventAvailable,
	.ConsiderPtoStatus = FALSE,
	.EventDestination = DEM_DTC_ORIGIN_PRIMARY_MEMORY,
	.IndicatorAttribute = NULL,
	.EventPriority = 1u,
	.FFPrestorageSupported = FALSE, 
	.OperationCycleRef = DEM_ACTIVE,
	.PreDebounceAlgorithmClass = &AlgoClass_P123411_L_BUTTON1_NOT_OK,
	.AgingAllowed = TRUE,
	.AgingCycleCounterThreshold = 40u,
	.AgingCycleRef = DEM_ACTIVE,
	.FailureCycleRef = DEM_ACTIVE,
	.FailureCycleCounterThresholdRef = &P123411_L_BUTTON1_NOT_OK_FailureCycleCounter,
	.EnableConditionGroupRef = NULL
};
*/
#define Dem_START_SEC_CALIB_UNSPECIFIED
//#include "Dem_MemMap.h" /*lint !e9019 suppressed due to Dem_MemMap.h include is required */
/**
 * @a2l_characteristic P123412_L_BUTTON2_NOT_OK_FailureCycleCounter
 * @desc failure cycle threshold for event P123412_L_BUTTON2_NOT_OK  (DTC: P123412_LButton2NotOK)
 * @scaling 1 
 * @struct_size 1
 * @field_name DemEventFailureCycleCounterThreshold
 * @min 0
 * @max 255
 * @type uint8
 */
//ARC_DECLARE_CALIB(const Arc_FailureCycleCounterThreshold, P123412_L_BUTTON2_NOT_OK_FailureCycleCounter) = {
	//.Threshold = 1u,
//};

/**
 * @a2l_characteristic P123412_L_BUTTON2_NOT_OK_EventAvailable
 * @desc Determines if event is available or not
 * @scaling 1 
 * @min 0
 * @max 1
 * @type uint8
 */
 #if !defined(HOST_TEST)
//ARC_DECLARE_CALIB(const boolean, P123412_L_BUTTON2_NOT_OK_EventAvailable) = TRUE;
#else
//boolean P123412_L_BUTTON2_NOT_OK_EventAvailable = TRUE; /*lint -esym(843,P123412_L_BUTTON2_NOT_OK_EventAvailable) not declared as const for HOST_TEST only */
#endif
#define Dem_STOP_SEC_CALIB_UNSPECIFIED
//#include "Dem_MemMap.h" /*lint !e9019 suppressed due to Dem_MemMap.h include is required */
/*
const Dem_EventClassType P123412_L_BUTTON2_NOT_OK_DemEventClass = {
	//.EventAvailableByCalibration = &P123412_L_BUTTON2_NOT_OK_EventAvailable,
	.ConsiderPtoStatus = FALSE,
	.EventDestination = DEM_DTC_ORIGIN_PRIMARY_MEMORY,
	.IndicatorAttribute = NULL,
	.EventPriority = 1u,
	.FFPrestorageSupported = FALSE, 
	.OperationCycleRef = DEM_ACTIVE,
	.PreDebounceAlgorithmClass = &AlgoClass_P123412_L_BUTTON2_NOT_OK,
	.AgingAllowed = TRUE,
	.AgingCycleCounterThreshold = 40u,
	.AgingCycleRef = DEM_ACTIVE,
	.FailureCycleRef = DEM_ACTIVE,
	//.FailureCycleCounterThresholdRef = &P123412_L_BUTTON2_NOT_OK_FailureCycleCounter,
	.EnableConditionGroupRef = NULL
};
*/
#define Dem_START_SEC_CALIB_UNSPECIFIED
//#include "Dem_MemMap.h" /*lint !e9019 suppressed due to Dem_MemMap.h include is required */
/**
 * @a2l_characteristic P123511_L_BUTTON1_STUCK_FailureCycleCounter
 * @desc failure cycle threshold for event P123511_L_BUTTON1_STUCK  (DTC: P123511_LButton1Stucl)
 * @scaling 1 
 * @struct_size 1
 * @field_name DemEventFailureCycleCounterThreshold
 * @min 0
 * @max 255
 * @type uint8
 */
//ARC_DECLARE_CALIB(const Arc_FailureCycleCounterThreshold, P123511_L_BUTTON1_STUCK_FailureCycleCounter) = {
//	.Threshold = 1u,
//};

/**
 * @a2l_characteristic P123511_L_BUTTON1_STUCK_EventAvailable
 * @desc Determines if event is available or not
 * @scaling 1 
 * @min 0
 * @max 1
 * @type uint8
 */
 #if !defined(HOST_TEST)
//ARC_DECLARE_CALIB(const boolean, P123511_L_BUTTON1_STUCK_EventAvailable) = TRUE;
#else
//boolean P123511_L_BUTTON1_STUCK_EventAvailable = TRUE; /*lint -esym(843,P123511_L_BUTTON1_STUCK_EventAvailable) not declared as const for HOST_TEST only */
#endif
#define Dem_STOP_SEC_CALIB_UNSPECIFIED
//#include "Dem_MemMap.h" /*lint !e9019 suppressed due to Dem_MemMap.h include is required */
/*
const Dem_EventClassType P123511_L_BUTTON1_STUCK_DemEventClass = {
	.EventAvailableByCalibration = &P123511_L_BUTTON1_STUCK_EventAvailable,
	.ConsiderPtoStatus = FALSE,
	.EventDestination = DEM_DTC_ORIGIN_PRIMARY_MEMORY,
	.IndicatorAttribute = NULL,
	.EventPriority = 1u,
	.FFPrestorageSupported = FALSE, 
	.OperationCycleRef = DEM_ACTIVE,
	.PreDebounceAlgorithmClass = &AlgoClass_P123511_L_BUTTON1_STUCK,
	.AgingAllowed = TRUE,
	.AgingCycleCounterThreshold = 40u,
	.AgingCycleRef = DEM_ACTIVE,
	.FailureCycleRef = DEM_ACTIVE,
	//.FailureCycleCounterThresholdRef = &P123511_L_BUTTON1_STUCK_FailureCycleCounter,
	.EnableConditionGroupRef = NULL
};
*/
#define Dem_START_SEC_CALIB_UNSPECIFIED
//#include "Dem_MemMap.h" /*lint !e9019 suppressed due to Dem_MemMap.h include is required */
/**
 * @a2l_characteristic P123512_L_BUTTON2_STUCK_FailureCycleCounter
 * @desc failure cycle threshold for event P123512_L_BUTTON2_STUCK  (DTC: P123512_LButton2Stuck)
 * @scaling 1 
 * @struct_size 1
 * @field_name DemEventFailureCycleCounterThreshold
 * @min 0
 * @max 255
 * @type uint8
 */
//ARC_DECLARE_CALIB(const Arc_FailureCycleCounterThreshold, P123512_L_BUTTON2_STUCK_FailureCycleCounter) = {
	//.Threshold = 1u,
//};

/**
 * @a2l_characteristic P123512_L_BUTTON2_STUCK_EventAvailable
 * @desc Determines if event is available or not
 * @scaling 1 
 * @min 0
 * @max 1
 * @type uint8
 */
 #if !defined(HOST_TEST)
//ARC_DECLARE_CALIB(const boolean, P123512_L_BUTTON2_STUCK_EventAvailable) = TRUE;
#else
//boolean P123512_L_BUTTON2_STUCK_EventAvailable = TRUE; /*lint -esym(843,P123512_L_BUTTON2_STUCK_EventAvailable) not declared as const for HOST_TEST only */
#endif
#define Dem_STOP_SEC_CALIB_UNSPECIFIED
//#include "Dem_MemMap.h" /*lint !e9019 suppressed due to Dem_MemMap.h include is required */
/*
const Dem_EventClassType P123512_L_BUTTON2_STUCK_DemEventClass = {
	.EventAvailableByCalibration = &P123512_L_BUTTON2_STUCK_EventAvailable,
	.ConsiderPtoStatus = FALSE,
	.EventDestination = DEM_DTC_ORIGIN_PRIMARY_MEMORY,
	.IndicatorAttribute = NULL,
	.EventPriority = 1u,
	.FFPrestorageSupported = FALSE, 
	.OperationCycleRef = DEM_ACTIVE,
	.PreDebounceAlgorithmClass = &AlgoClass_P123512_L_BUTTON2_STUCK,
	.AgingAllowed = TRUE,
	.AgingCycleCounterThreshold = 40u,
	.AgingCycleRef = DEM_ACTIVE,
	.FailureCycleRef = DEM_ACTIVE,
	.FailureCycleCounterThresholdRef = &P123512_L_BUTTON2_STUCK_FailureCycleCounter,
	.EnableConditionGroupRef = NULL
};
*/

const Dem_EventParameterType EventParameterList[] = {
	{
		//.EventID = DemConf_DemEventParameter_DemEventParameter0,
		.EventKind = DEM_EVENT_KIND_BSW,
		.EventClass = &DemEventParameter0_DemEventClass,
		.ExtendedDataClassRef = NULL,
		.FreezeFrameClassRef = NULL,
		.MaxNumberFreezeFrameRecords = 0u,
		.FreezeFrameRecNumClassRef = NULL,
		.CallbackInitMforE = NULL,
		.CallbackEventStatusChanged = NULL,
		.CallbackClearEventAllowed = NULL,
		.CallbackEventDataChanged = NULL,
		.DTCClassRef = NULL,
		.Arc_EOL = FALSE
	},
	{
		//.EventID = DemConf_DemEventParameter_DemEventParameter1,
		.EventKind = DEM_EVENT_KIND_BSW,
		.EventClass = &DemEventParameter1_DemEventClass,
		.ExtendedDataClassRef = NULL,
		.FreezeFrameClassRef = NULL,
		.MaxNumberFreezeFrameRecords = 0u,
		.FreezeFrameRecNumClassRef = NULL,
		.CallbackInitMforE = NULL,
		.CallbackEventStatusChanged = NULL,
		.CallbackClearEventAllowed = NULL,
		.CallbackEventDataChanged = NULL,
		.DTCClassRef = NULL,
		.Arc_EOL = FALSE
	},
	{
		//.EventID = DemConf_DemEventParameter_DemEventParameter2,
		.EventKind = DEM_EVENT_KIND_BSW,
		.EventClass = &DemEventParameter2_DemEventClass,
		.ExtendedDataClassRef = NULL,
		.FreezeFrameClassRef = NULL,
		.MaxNumberFreezeFrameRecords = 0u,
		.FreezeFrameRecNumClassRef = NULL,
		.CallbackInitMforE = NULL,
		.CallbackEventStatusChanged = NULL,
		.CallbackClearEventAllowed = NULL,
		.CallbackEventDataChanged = NULL,
		.DTCClassRef = NULL,
		.Arc_EOL = FALSE
	},
	{
		//.EventID = DemConf_DemEventParameter_DemEventParameter3,
		.EventKind = DEM_EVENT_KIND_BSW,
		.EventClass = &DemEventParameter3_DemEventClass,
		.ExtendedDataClassRef = NULL,
		.FreezeFrameClassRef = NULL,
		.MaxNumberFreezeFrameRecords = 0u,
		.FreezeFrameRecNumClassRef = NULL,
		.CallbackInitMforE = NULL,
		.CallbackEventStatusChanged = NULL,
		.CallbackClearEventAllowed = NULL,
		.CallbackEventDataChanged = NULL,
		.DTCClassRef = NULL,
		.Arc_EOL = FALSE
	},
	{
		//.EventID = DemConf_DemEventParameter_DemEventParameter4,
		.EventKind = DEM_EVENT_KIND_BSW,
		.EventClass = &DemEventParameter4_DemEventClass,
		.ExtendedDataClassRef = NULL,
		.FreezeFrameClassRef = NULL,
		.MaxNumberFreezeFrameRecords = 0u,
		.FreezeFrameRecNumClassRef = NULL,
		.CallbackInitMforE = NULL,
		.CallbackEventStatusChanged = NULL,
		.CallbackClearEventAllowed = NULL,
		.CallbackEventDataChanged = NULL,
		.DTCClassRef = NULL,
		.Arc_EOL = FALSE
	},
	{
		//.EventID = DemConf_DemEventParameter_DemEventParameter5,
		.EventKind = DEM_EVENT_KIND_BSW,
		.EventClass = &DemEventParameter5_DemEventClass,
		.ExtendedDataClassRef = NULL,
		.FreezeFrameClassRef = NULL,
		.MaxNumberFreezeFrameRecords = 0u,
		.FreezeFrameRecNumClassRef = NULL,
		.CallbackInitMforE = NULL,
		.CallbackEventStatusChanged = NULL,
		.CallbackClearEventAllowed = NULL,
		.CallbackEventDataChanged = NULL,
		.DTCClassRef = NULL,
		.Arc_EOL = FALSE
	},
	{
		.EventID = DemConf_DemEventParameter_F00617_HIGH_VOLTAGE,
		.EventKind = DEM_EVENT_KIND_SWC,
		.EventClass = &F00617_HIGH_VOLTAGE_DemEventClass,
		.ExtendedDataClassRef = &DemExtendedDataClass,
		.MaxNumberFreezeFrameRecords = 2,
		.FreezeFrameClassRef = &FreezeFrameClassList[DEM_FF_DemFreezeFrameClass_INDEX],
		//.FreezeFrameRecNumClassRef = &DemFreezeFrameRecNumClass_FreezeFrameRecNumClass,
		.CallbackInitMforE = NULL,
		.CallbackEventStatusChanged = NULL,
		.CallbackClearEventAllowed = NULL,
		.CallbackEventDataChanged = NULL,
		.DTCClassRef = &DtcClassList[DEM_DTC_F00617_HighVoltage_INDEX],
		.Arc_EOL = FALSE
	},
	{
		.EventID = DemConf_DemEventParameter_F00616_LOW_VOLTAGE,
		.EventKind = DEM_EVENT_KIND_SWC,
		.EventClass = &F00616_LOW_VOLTAGE_DemEventClass,
		.ExtendedDataClassRef = &DemExtendedDataClass,
		.MaxNumberFreezeFrameRecords = 2,
		.FreezeFrameClassRef = &FreezeFrameClassList[DEM_FF_DemFreezeFrameClass_INDEX],
		//.FreezeFrameRecNumClassRef = &DemFreezeFrameRecNumClass_FreezeFrameRecNumClass,
		.CallbackInitMforE = NULL,
		.CallbackEventStatusChanged = NULL,
		.CallbackClearEventAllowed = NULL,
		.CallbackEventDataChanged = NULL,
		.DTCClassRef = &DtcClassList[DEM_DTC_F00616_LowVoltage_INDEX],
		.Arc_EOL = FALSE
	},
	{
		.EventID = DemConf_DemEventParameter_A06600_TouErr,
		.EventKind = DEM_EVENT_KIND_SWC,
		.EventClass = &A06600_TouErr_DemEventClass,
		.ExtendedDataClassRef = &DemExtendedDataClass,
		.MaxNumberFreezeFrameRecords = 2,
		.FreezeFrameClassRef = &FreezeFrameClassList[DEM_FF_DemFreezeFrameClass_INDEX],
		//.FreezeFrameRecNumClassRef = &DemFreezeFrameRecNumClass_FreezeFrameRecNumClass,
		.CallbackInitMforE = NULL,
		.CallbackEventStatusChanged = NULL,
		.CallbackClearEventAllowed = NULL,
		.CallbackEventDataChanged = NULL,
		.DTCClassRef = &DtcClassList[DEM_DTC_A06600_TouErr_INDEX],
		.Arc_EOL = FALSE
	},
	/*
	{
		.EventID = DemConf_DemEventParameter_P123312_P_BUTTON2_NOT_OK,
		.EventKind = DEM_EVENT_KIND_SWC,
		.EventClass = &P123312_P_BUTTON2_NOT_OK_DemEventClass,
		.ExtendedDataClassRef = &DemExtendedDataClass,
		.MaxNumberFreezeFrameRecords = 2,
		.FreezeFrameClassRef = &FreezeFrameClassList[DEM_FF_DemFreezeFrameClass_INDEX],
		//.FreezeFrameRecNumClassRef = &DemFreezeFrameRecNumClass_FreezeFrameRecNumClass,
		.CallbackInitMforE = NULL,
		.CallbackEventStatusChanged = NULL,
		.CallbackClearEventAllowed = NULL,
		.CallbackEventDataChanged = NULL,
		.DTCClassRef = &DtcClassList[DEM_DTC_P123312_PButton2NotOK_INDEX],
		.Arc_EOL = FALSE
	},
	{
		.EventID = DemConf_DemEventParameter_P123311_P_BUTTON1_NOT_OK,
		.EventKind = DEM_EVENT_KIND_SWC,
		.EventClass = &P123311_P_BUTTON1_NOT_OK_DemEventClass,
		.ExtendedDataClassRef = &DemExtendedDataClass,
		.MaxNumberFreezeFrameRecords = 2,
		.FreezeFrameClassRef = &FreezeFrameClassList[DEM_FF_DemFreezeFrameClass_INDEX],
		//.FreezeFrameRecNumClassRef = &DemFreezeFrameRecNumClass_FreezeFrameRecNumClass,
		.CallbackInitMforE = NULL,
		.CallbackEventStatusChanged = NULL,
		.CallbackClearEventAllowed = NULL,
		.CallbackEventDataChanged = NULL,
		.DTCClassRef = &DtcClassList[DEM_DTC_P123311_PButton1NotOK_INDEX],
		.Arc_EOL = FALSE
	},
	{
		.EventID = DemConf_DemEventParameter_P123313_P_BUTTON3_NOT_OK,
		.EventKind = DEM_EVENT_KIND_SWC,
		.EventClass = &P123313_P_BUTTON3_NOT_OK_DemEventClass,
		.ExtendedDataClassRef = &DemExtendedDataClass,
		.MaxNumberFreezeFrameRecords = 2,
		.FreezeFrameClassRef = &FreezeFrameClassList[DEM_FF_DemFreezeFrameClass_INDEX],
		//.FreezeFrameRecNumClassRef = &DemFreezeFrameRecNumClass_FreezeFrameRecNumClass,
		.CallbackInitMforE = NULL,
		.CallbackEventStatusChanged = NULL,
		.CallbackClearEventAllowed = NULL,
		.CallbackEventDataChanged = NULL,
		.DTCClassRef = &DtcClassList[DEM_DTC_P123313_PButton3NotOK_INDEX],
		.Arc_EOL = FALSE
	},
	{
		.EventID = DemConf_DemEventParameter_U014600_GW_BCM_LOST,
		.EventKind = DEM_EVENT_KIND_SWC,
		.EventClass = &U014600_GW_BCM_LOST_DemEventClass,
		.ExtendedDataClassRef = &DemExtendedDataClass,
		.MaxNumberFreezeFrameRecords = 2,
		.FreezeFrameClassRef = &FreezeFrameClassList[DEM_FF_DemFreezeFrameClass_INDEX],
		//.FreezeFrameRecNumClassRef = &DemFreezeFrameRecNumClass_FreezeFrameRecNumClass,
		.CallbackInitMforE = NULL,
		.CallbackEventStatusChanged = NULL,
		.CallbackClearEventAllowed = NULL,
		.CallbackEventDataChanged = NULL,
		.DTCClassRef = &DtcClassList[DEM_DTC_U014600_GWBCMLost_INDEX],
		.Arc_EOL = FALSE
	},
	*/
	
	{
		.EventID = DemConf_DemEventParameter_A06800_MorErr,
		.EventKind = DEM_EVENT_KIND_SWC,
		.EventClass = &A06800_MorErr_DemEventClass,
		.ExtendedDataClassRef = &DemExtendedDataClass,
		.MaxNumberFreezeFrameRecords = 2,
		.FreezeFrameClassRef = &FreezeFrameClassList[DEM_FF_DemFreezeFrameClass_INDEX],
		//.FreezeFrameRecNumClassRef = &DemFreezeFrameRecNumClass_FreezeFrameRecNumClass,
		.CallbackInitMforE = NULL,
		.CallbackEventStatusChanged = NULL,
		.CallbackClearEventAllowed = NULL,
		.CallbackEventDataChanged = NULL,
		.DTCClassRef = &DtcClassList[DEM_DTC_A06800_MorErr_INDEX],
		.Arc_EOL = FALSE
	},
	
	{
		.EventID = DemConf_DemEventParameter_A06700_PressErr,
		.EventKind = DEM_EVENT_KIND_SWC,
		.EventClass = &A06700_PressErr_DemEventClass,
		.ExtendedDataClassRef = &DemExtendedDataClass,
		.MaxNumberFreezeFrameRecords = 2,
		.FreezeFrameClassRef = &FreezeFrameClassList[DEM_FF_DemFreezeFrameClass_INDEX],
		//.FreezeFrameRecNumClassRef = &DemFreezeFrameRecNumClass_FreezeFrameRecNumClass,
		.CallbackInitMforE = NULL,
		.CallbackEventStatusChanged = NULL,
		.CallbackClearEventAllowed = NULL,
		.CallbackEventDataChanged = NULL,
		.DTCClassRef = &DtcClassList[DEM_DTC_A06700_PressErr_INDEX],
		.Arc_EOL = FALSE
	},
	/*
	{
		.EventID = DemConf_DemEventParameter_U010100_TCU_LOST,
		.EventKind = DEM_EVENT_KIND_SWC,
		.EventClass = &U010100_TCU_LOST_DemEventClass,
		.ExtendedDataClassRef = &DemExtendedDataClass,
		.MaxNumberFreezeFrameRecords = 2,
		.FreezeFrameClassRef = &FreezeFrameClassList[DEM_FF_DemFreezeFrameClass_INDEX],
		//.FreezeFrameRecNumClassRef = &DemFreezeFrameRecNumClass_FreezeFrameRecNumClass,
		.CallbackInitMforE = NULL,
		.CallbackEventStatusChanged = NULL,
		.CallbackClearEventAllowed = NULL,
		.CallbackEventDataChanged = NULL,
		.DTCClassRef = &DtcClassList[DEM_DTC_U010100_TCULost_INDEX],
		.Arc_EOL = FALSE
	},
	*/
	{
		.EventID = DemConf_DemEventParameter_C07300_BUS_OFF,
		.EventKind = DEM_EVENT_KIND_SWC,
		.EventClass = &C07300_BUS_OFF_DemEventClass,
		.ExtendedDataClassRef = &DemExtendedDataClass,
		.MaxNumberFreezeFrameRecords = 2,
		.FreezeFrameClassRef = &FreezeFrameClassList[DEM_FF_DemFreezeFrameClass_INDEX],
		//.FreezeFrameRecNumClassRef = &DemFreezeFrameRecNumClass_FreezeFrameRecNumClass,
		.CallbackInitMforE = NULL,
		.CallbackEventStatusChanged = NULL,
		.CallbackClearEventAllowed = NULL,
		.CallbackEventDataChanged = NULL,
		.DTCClassRef = &DtcClassList[DEM_DTC_C07300_BusOff_INDEX],
		.Arc_EOL = FALSE
	},
	/*
	{
		.EventID = DemConf_DemEventParameter_P271F54_Calibration_Fault,
		.EventKind = DEM_EVENT_KIND_SWC,
		.EventClass = &P271F54_Calibration_Fault_DemEventClass,
		.ExtendedDataClassRef = &DemExtendedDataClass,
		.MaxNumberFreezeFrameRecords = 2,
		.FreezeFrameClassRef = &FreezeFrameClassList[DEM_FF_DemFreezeFrameClass_INDEX],
		//.FreezeFrameRecNumClassRef = &DemFreezeFrameRecNumClass_FreezeFrameRecNumClass,
		.CallbackInitMforE = NULL,
		.CallbackEventStatusChanged = NULL,
		.CallbackClearEventAllowed = NULL,
		.CallbackEventDataChanged = NULL,
		.DTCClassRef = &DtcClassList[DEM_DTC_P271F54_CalibrationFault_INDEX],
		.Arc_EOL = FALSE
	},
	
	{
		.EventID = DemConf_DemEventParameter_P123411_L_BUTTON1_NOT_OK,
		.EventKind = DEM_EVENT_KIND_SWC,
		.EventClass = &P123411_L_BUTTON1_NOT_OK_DemEventClass,
		.ExtendedDataClassRef = &DemExtendedDataClass,
		.MaxNumberFreezeFrameRecords = 2,
		.FreezeFrameClassRef = &FreezeFrameClassList[DEM_FF_DemFreezeFrameClass_INDEX],
		//.FreezeFrameRecNumClassRef = &DemFreezeFrameRecNumClass_FreezeFrameRecNumClass,
		.CallbackInitMforE = NULL,
		.CallbackEventStatusChanged = NULL,
		.CallbackClearEventAllowed = NULL,
		.CallbackEventDataChanged = NULL,
		.DTCClassRef = &DtcClassList[DEM_DTC_P123411_LButton1NotOK_INDEX],
		.Arc_EOL = FALSE
	},
	{
		.EventID = DemConf_DemEventParameter_P123412_L_BUTTON2_NOT_OK,
		.EventKind = DEM_EVENT_KIND_SWC,
		.EventClass = &P123412_L_BUTTON2_NOT_OK_DemEventClass,
		.ExtendedDataClassRef = &DemExtendedDataClass,
		.MaxNumberFreezeFrameRecords = 2,
		.FreezeFrameClassRef = &FreezeFrameClassList[DEM_FF_DemFreezeFrameClass_INDEX],
		//.FreezeFrameRecNumClassRef = &DemFreezeFrameRecNumClass_FreezeFrameRecNumClass,
		.CallbackInitMforE = NULL,
		.CallbackEventStatusChanged = NULL,
		.CallbackClearEventAllowed = NULL,
		.CallbackEventDataChanged = NULL,
		.DTCClassRef = &DtcClassList[DEM_DTC_P123412_LButton2NotOK_INDEX],
		.Arc_EOL = FALSE
	},
	{
		.EventID = DemConf_DemEventParameter_P123511_L_BUTTON1_STUCK,
		.EventKind = DEM_EVENT_KIND_SWC,
		.EventClass = &P123511_L_BUTTON1_STUCK_DemEventClass,
		.ExtendedDataClassRef = &DemExtendedDataClass,
		.MaxNumberFreezeFrameRecords = 2,
		.FreezeFrameClassRef = &FreezeFrameClassList[DEM_FF_DemFreezeFrameClass_INDEX],
		//.FreezeFrameRecNumClassRef = &DemFreezeFrameRecNumClass_FreezeFrameRecNumClass,
		.CallbackInitMforE = NULL,
		.CallbackEventStatusChanged = NULL,
		.CallbackClearEventAllowed = NULL,
		.CallbackEventDataChanged = NULL,
		.DTCClassRef = &DtcClassList[DEM_DTC_P123511_LButton1Stucl_INDEX],
		.Arc_EOL = FALSE
	},
	{
		.EventID = DemConf_DemEventParameter_P123512_L_BUTTON2_STUCK,
		.EventKind = DEM_EVENT_KIND_SWC,
		.EventClass = &P123512_L_BUTTON2_STUCK_DemEventClass,
		.ExtendedDataClassRef = &DemExtendedDataClass,
		.MaxNumberFreezeFrameRecords = 2,
		.FreezeFrameClassRef = &FreezeFrameClassList[DEM_FF_DemFreezeFrameClass_INDEX],
		//.FreezeFrameRecNumClassRef = &DemFreezeFrameRecNumClass_FreezeFrameRecNumClass,
		.CallbackInitMforE = NULL,
		.CallbackEventStatusChanged = NULL,
		.CallbackClearEventAllowed = NULL,
		.CallbackEventDataChanged = NULL,
		.DTCClassRef = &DtcClassList[DEM_DTC_P123512_LButton2Stuck_INDEX],
		.Arc_EOL = FALSE
	},
	*/
	{
		.Arc_EOL = TRUE
	}
};


const Dem_GroupOfDtcType DemDtcGroups[] = {
	{
		.DemGroupDTCs = 0x0UL,
		.Arc_EOL = FALSE
	},
	{
		.DemGroupDTCs = 0xFFFFFFUL,
		.Arc_EOL = TRUE
	}
};

const Dem_ConfigSetType DEM_ConfigSet = {
		.EventParameter = EventParameterList,
		.DTCClass = DtcClassList,
		.GlobalOBDFreezeFrameClassRef = NULL,
		.Indicators = NULL,
#if (DEM_ENABLE_CONDITION_SUPPORT == STD_ON)
		.EnableCondition = DemEnableConditionList,
#endif
		.GroupOfDtc = DemDtcGroups
};


const Dem_ConfigType DEM_Config = {
	.ConfigSet = &DEM_ConfigSet,
};

