
#include "stdint.h"

#ifdef    GLOBALS_MEU_PROCESS
  #define   EXTERN_MEU_PROCESS

#else
  #define   EXTERN_MEU_PROCESS     extern
#endif

#ifndef   MEU_PROCESS_H_
#define   MEU_PROCESS_H_

#define   _MN_IDX_NULL	0xff
#define   _MN_IDX_NULL0	0x00
#define	  _MN_OPR_NULL	(void *)0

typedef enum
{
 //主界面 
 _MN_DSP_LEVEL1MENU_1       = 0,            //0
 _MN_DSP_LEVEL1MENU_2          ,            //1
 _MN_DSP_LEVEL1MENU_3          ,            //2
 _MN_DSP_LEVEL1MENU_4          ,            //3
 _MN_DSP_LEVEL1MENU_5          ,            //4
 _MN_DSP_LEVEL1MENU_6          ,            //5
 //_MN_DSP_LEVEL1MENU_7          ,            //6
 //一级菜单
 _MN_DSP_LEVEL2MENU_1          ,            //6
 _MN_DSP_LEVEL2MENU_2          ,            //7
 _MN_DSP_LEVEL2MENU_3          ,            //8
 _MN_DSP_LEVEL2MENU_4          ,            //9
 _MN_DSP_LEVEL2MENU_5          ,            //10
 _MN_DSP_LEVEL2MENU_6          ,            //11

 //二级菜单
_MN_DSP_LEVEL2_1_MENU_1       ,            //12
_MN_DSP_LEVEL2_1_MENU_2       ,            //13
_MN_DSP_LEVEL2_1_MENU_3       ,            //14
_MN_DSP_LEVEL2_1_MENU_4       ,            //15
_MN_DSP_LEVEL2_1_MENU_5       ,
 
_MN_DSP_LEVEL2_2_MENU_1       ,            //16
_MN_DSP_LEVEL2_2_MENU_2       ,            //17
_MN_DSP_LEVEL2_2_MENU_3       ,            //18
_MN_DSP_LEVEL2_2_MENU_4       ,            //19
_MN_DSP_LEVEL2_2_MENU_5       ,            //21
_MN_DSP_LEVEL2_2_MENU_6       ,            //20
_MN_DSP_LEVEL2_2_MENU_7       ,            //21
_MN_DSP_LEVEL2_2_MENU_8       ,            //22
_MN_DSP_LEVEL2_2_MENU_9       ,            //23

_MN_DSP_LEVEL2_3_MENU_1       ,            //24
_MN_DSP_LEVEL2_3_MENU_2       ,            //25
_MN_DSP_LEVEL2_3_MENU_3       ,            //26
_MN_DSP_LEVEL2_3_MENU_4       ,            //27
_MN_DSP_LEVEL2_3_MENU_5       ,            //30
_MN_DSP_LEVEL2_3_MENU_6       ,            //28
_MN_DSP_LEVEL2_3_MENU_7       ,            //29

_MN_DSP_LEVEL2_4_MENU_1       ,            //30
_MN_DSP_LEVEL2_4_MENU_2       ,            //31
_MN_DSP_LEVEL2_4_MENU_3       ,            //32
_MN_DSP_LEVEL2_4_MENU_4       ,            //33
_MN_DSP_LEVEL2_4_MENU_5       ,            //34
_MN_DSP_LEVEL2_4_MENU_6       ,            //35
_MN_DSP_LEVEL2_4_MENU_7       ,            //36
_MN_DSP_LEVEL2_4_MENU_8       ,            //37
_MN_DSP_LEVEL2_4_MENU_9       ,            //38
 
//三级菜单
_MN_DSP_LEVEL3_1_MENU_1       ,            //42
_MN_DSP_LEVEL3_1_MENU_2       ,            //43
_MN_DSP_LEVEL3_1_MENU_3       ,            //44
_MN_DSP_LEVEL3_1_MENU_4       ,            //45
_MN_DSP_LEVEL3_1_MENU_5       , 
                             
_MN_DSP_LEVEL3_2_MENU_1       ,            //39
_MN_DSP_LEVEL3_2_MENU_2       ,            //40
_MN_DSP_LEVEL3_2_MENU_3       ,            //41
_MN_DSP_LEVEL3_2_MENU_4       ,            //42
_MN_DSP_LEVEL3_2_MENU_5       ,            //50
_MN_DSP_LEVEL3_2_MENU_6       ,            //43
_MN_DSP_LEVEL3_2_MENU_7       ,            //44
_MN_DSP_LEVEL3_2_MENU_8       ,            //45
_MN_DSP_LEVEL3_2_MENU_9       ,            //46
                                            
_MN_DSP_LEVEL3_3_MENU_1       ,            //47
_MN_DSP_LEVEL3_3_MENU_2       ,            //48
_MN_DSP_LEVEL3_3_MENU_3       ,            //49
_MN_DSP_LEVEL3_3_MENU_4       ,            //50
_MN_DSP_LEVEL3_3_MENU_5       ,            //59
_MN_DSP_LEVEL3_3_MENU_6       ,            //51
_MN_DSP_LEVEL3_3_MENU_7       ,            //52
                             
_MN_DSP_LEVEL3_4_MENU_11      ,            //53
_MN_DSP_LEVEL3_4_MENU_12      ,            //54
_MN_DSP_LEVEL3_4_MENU_21      ,            //55
_MN_DSP_LEVEL3_4_MENU_22      ,            //56
_MN_DSP_LEVEL3_4_MENU_3       ,            //57
_MN_DSP_LEVEL3_4_MENU_41      ,            //58
_MN_DSP_LEVEL3_4_MENU_42      ,            //59
_MN_DSP_LEVEL3_4_MENU_43      ,            //60
_MN_DSP_LEVEL3_4_MENU_44      ,            //61
_MN_DSP_LEVEL3_4_MENU_45      ,            //62
_MN_DSP_LEVEL3_4_MENU_51      ,            //63
_MN_DSP_LEVEL3_4_MENU_52      ,            //64
_MN_DSP_LEVEL3_4_MENU_6       ,            //65
_MN_DSP_LEVEL3_4_MENU_7       ,            //66
_MN_DSP_LEVEL3_4_MENU_8       ,            //67
_MN_DSP_LEVEL3_4_MENU_9       ,            //68
 
 //四级菜单   
 _MN_DSP_LEVEL4_1_MENU_1       ,            //69
 _MN_DSP_LEVEL4_1_MENU_2       ,            //70
 _MN_DSP_LEVEL4_2_MENU_1       ,            //71
 _MN_DSP_LEVEL4_2_MENU_2       ,            //72                 
 _MN_DSP_LEVEL4_4_MENU_1       ,            //73
 _MN_DSP_LEVEL4_4_MENU_2       ,            //74
 _MN_DSP_LEVEL4_4_MENU_3       ,            //75
 _MN_DSP_LEVEL4_4_MENU_4       ,            //76
 _MN_DSP_LEVEL4_4_MENU_5       ,            //77
 _MN_DSP_LEVEL4_5_MENU_1       ,            //78
 _MN_DSP_LEVEL4_5_MENU_2       ,            //79
 /* 
 _MN_DSP_LEVEL5_4_MENU_1       , 
 _MN_DSP_LEVEL5_4_MENU_2       ,
 _MN_DSP_LEVEL5_4_MENU_3       ,
 _MN_DSP_LEVEL5_4_MENU_4       ,
 _MN_DSP_LEVEL5_4_MENU_5       ,
 */
 //_MN_DSP_HSAENTER_MENU         ,            //80
 _MN_DSP_ENTER_MENU            ,            //81
 _MN_DSP_RETURN_MENU           ,            //82
};
 


typedef   uint8_t        _MENU_IDX;
typedef struct
{
	_MENU_IDX	VK_IDX_ENTER;
	_MENU_IDX	VK_IDX_UP;
	_MENU_IDX	VK_IDX_DOWN;
	_MENU_IDX	VK_IDX_EXIT;

	void (*Enter)(void);
	void (*Do)(void);
	void (*Exit)(void);
} _MenuOptTab;

typedef union
{
  uint8_t Msg[8];
  struct
  {		
    uint8_t   Menu_Flag               :  8;   //主界面标记                       //7
    uint8_t   Menu_Time_Flag          :  8;   //从Enter界面确认退出记时          //50            
    uint8_t   Menu_Enter_Return       :  8;   //进入Enter之前界面                //91
    uint8_t   Menu_Return             :  8;   //ENTER_RETURN界面切换标记         //1
    uint8_t   Menu_Key_Time           :  8;   //按键长按时间记录                 //20
    //uint8_t   Menu_Key_Static         :  8;   //OFF档是否显示转速时间标记        //MenuFlag.Sig. Menu_Key_Static
       
    uint16_t  Key_Menu_Popup_time     :  15;  //上述状态持续时间    1：100ms     //601
    uint8_t   Key_Menu_Popup_Flag     :  1;   //报警界面menu按键长按             //1
    uint8_t                           :  8;
    
  } Sig;
  
} _MenuFlag;
EXTERN_MEU_PROCESS  _MenuFlag    MenuFlag   ;    

EXTERN_MEU_PROCESS   uint8_t     bMenuSwFlag;
EXTERN_MEU_PROCESS   uint8_t     g_ClearWin1;
EXTERN_MEU_PROCESS   uint8_t     bNextMenuIDX;	          //the next index of menu .
EXTERN_MEU_PROCESS   uint8_t     bCurMenuIDX;		          //the current index of menu.
EXTERN_MEU_PROCESS   uint8_t     bMainMenuIDX;		        //the current index of menu.
EXTERN_MEU_PROCESS   uint8_t     bOldMenuIDX;	    	      //the Old index of menu.

EXTERN_MEU_PROCESS   uint8_t     bMenuFlag;		            //
EXTERN_MEU_PROCESS   uint8_t     KeyTimes;

EXTERN_MEU_PROCESS   uint16_t    KeyRunTime;              //----hyq--20180526 按键运行时间统计
EXTERN_MEU_PROCESS   uint8_t     MenuExitFlag;            //----hyq--20180526 菜单退出标记位

EXTERN_MEU_PROCESS   uint8_t     State_GZM_OLD   ;    //故障码
EXTERN_MEU_PROCESS   uint8_t     State_WXTX_OLD  ;    //维修提醒
EXTERN_MEU_PROCESS   uint8_t     State_WXSD_OLD  ;    //维修设定
EXTERN_MEU_PROCESS   uint8_t     State_YHSD_OLD  ;    //用户设定
EXTERN_MEU_PROCESS   uint8_t     State_ECO_OLD   ;    //ECO
EXTERN_MEU_PROCESS   uint8_t     State_OLD       ;    //

EXTERN_MEU_PROCESS   const       _MenuOptTab	MenuOptTab[];           //add
EXTERN_MEU_PROCESS   void        NextMenu(_MENU_IDX idx);
EXTERN_MEU_PROCESS   void        MenuInit(void);
EXTERN_MEU_PROCESS   void        MenuManage(void);

EXTERN_MEU_PROCESS   void        Level1Menu_1Enter(void);
EXTERN_MEU_PROCESS   void        Level1Menu_1Do(void);
EXTERN_MEU_PROCESS   void        Level1Menu_1Exit(void);

EXTERN_MEU_PROCESS   void        Level1Menu_2Enter(void);
EXTERN_MEU_PROCESS   void        Level1Menu_2Do(void);
EXTERN_MEU_PROCESS   void        Level1Menu_2Exit(void);

EXTERN_MEU_PROCESS   void        Level1Menu_3Enter(void);
EXTERN_MEU_PROCESS   void        Level1Menu_3Do(void);
EXTERN_MEU_PROCESS   void        Level1Menu_3Exit(void);

EXTERN_MEU_PROCESS   void        Level1Menu_4Enter(void);
EXTERN_MEU_PROCESS   void        Level1Menu_4Do(void);
EXTERN_MEU_PROCESS   void        Level1Menu_4Exit(void);

EXTERN_MEU_PROCESS   void        Level1Menu_5Enter(void);
EXTERN_MEU_PROCESS   void        Level1Menu_5Do(void);
EXTERN_MEU_PROCESS   void        Level1Menu_5Exit(void);  

EXTERN_MEU_PROCESS   void        Level1Menu_6Enter(void);
EXTERN_MEU_PROCESS   void        Level1Menu_6Do(void);
EXTERN_MEU_PROCESS   void        Level1Menu_6Exit(void); 

EXTERN_MEU_PROCESS   void        Level1Menu_7Enter(void);
EXTERN_MEU_PROCESS   void        Level1Menu_7Do(void);
EXTERN_MEU_PROCESS   void        Level1Menu_7Exit(void);

EXTERN_MEU_PROCESS   void        Level2Menu_1Enter(void);
EXTERN_MEU_PROCESS   void        Level2Menu_1Do(void);
EXTERN_MEU_PROCESS   void        Level2Menu_1Exit(void);

EXTERN_MEU_PROCESS   void        Level2Menu_2Enter(void);
EXTERN_MEU_PROCESS   void        Level2Menu_2Do(void);
EXTERN_MEU_PROCESS   void        Level2Menu_2Exit(void);

EXTERN_MEU_PROCESS   void        Level2Menu_3Enter(void);
EXTERN_MEU_PROCESS   void        Level2Menu_3Do(void);
EXTERN_MEU_PROCESS   void        Level2Menu_3Exit(void);

EXTERN_MEU_PROCESS   void        Level2Menu_4Enter(void);
EXTERN_MEU_PROCESS   void        Level2Menu_4Do(void);
EXTERN_MEU_PROCESS   void        Level2Menu_4Exit(void);

EXTERN_MEU_PROCESS   void        Level2Menu_5Enter(void);
EXTERN_MEU_PROCESS   void        Level2Menu_5Do(void);
EXTERN_MEU_PROCESS   void        Level2Menu_5Exit(void);

EXTERN_MEU_PROCESS   void        Level2Menu_6Enter(void);
EXTERN_MEU_PROCESS   void        Level2Menu_6Do(void);
EXTERN_MEU_PROCESS   void        Level2Menu_6Exit(void);

EXTERN_MEU_PROCESS   void        Level2_1Menu_1Enter(void);
EXTERN_MEU_PROCESS   void        Level2_1Menu_1Do(void);
EXTERN_MEU_PROCESS   void        Level2_1Menu_1Exit(void);

EXTERN_MEU_PROCESS   void        Level2_1Menu_2Enter(void);
EXTERN_MEU_PROCESS   void        Level2_1Menu_2Do(void);
EXTERN_MEU_PROCESS   void        Level2_1Menu_2Exit(void);

EXTERN_MEU_PROCESS   void        Level2_1Menu_3Enter(void);
EXTERN_MEU_PROCESS   void        Level2_1Menu_3Do(void);
EXTERN_MEU_PROCESS   void        Level2_1Menu_3Exit(void);

EXTERN_MEU_PROCESS   void        Level2_1Menu_4Enter(void);
EXTERN_MEU_PROCESS   void        Level2_1Menu_4Do(void);
EXTERN_MEU_PROCESS   void        Level2_1Menu_4Exit(void);

EXTERN_MEU_PROCESS   void        Level2_1Menu_5Enter(void);
EXTERN_MEU_PROCESS   void        Level2_1Menu_5Do(void);
EXTERN_MEU_PROCESS   void        Level2_1Menu_5Exit(void);

//EXTERN_MEU_PROCESS   void        Level2_1Menu_6Enter(void);
//EXTERN_MEU_PROCESS   void        Level2_1Menu_6Do(void);
//EXTERN_MEU_PROCESS   void        Level2_1Menu_6Exit(void);

EXTERN_MEU_PROCESS   void        Level2_2Menu_1Enter(void);
EXTERN_MEU_PROCESS   void        Level2_2Menu_1Do(void);
EXTERN_MEU_PROCESS   void        Level2_2Menu_1Exit(void);

EXTERN_MEU_PROCESS   void        Level2_2Menu_2Enter(void);
EXTERN_MEU_PROCESS   void        Level2_2Menu_2Do(void);
EXTERN_MEU_PROCESS   void        Level2_2Menu_2Exit(void);

EXTERN_MEU_PROCESS   void        Level2_2Menu_3Enter(void);
EXTERN_MEU_PROCESS   void        Level2_2Menu_3Do(void);
EXTERN_MEU_PROCESS   void        Level2_2Menu_3Exit(void);

EXTERN_MEU_PROCESS   void        Level2_2Menu_4Enter(void);
EXTERN_MEU_PROCESS   void        Level2_2Menu_4Do(void);
EXTERN_MEU_PROCESS   void        Level2_2Menu_4Exit(void);

EXTERN_MEU_PROCESS   void        Level2_2Menu_5Enter(void);
EXTERN_MEU_PROCESS   void        Level2_2Menu_5Do(void);
EXTERN_MEU_PROCESS   void        Level2_2Menu_5Exit(void);

EXTERN_MEU_PROCESS   void        Level2_2Menu_6Enter(void);
EXTERN_MEU_PROCESS   void        Level2_2Menu_6Do(void);
EXTERN_MEU_PROCESS   void        Level2_2Menu_6Exit(void);

EXTERN_MEU_PROCESS   void        Level2_2Menu_7Enter(void);
EXTERN_MEU_PROCESS   void        Level2_2Menu_7Do(void);
EXTERN_MEU_PROCESS   void        Level2_2Menu_7Exit(void);

EXTERN_MEU_PROCESS   void        Level2_2Menu_8Enter(void);
EXTERN_MEU_PROCESS   void        Level2_2Menu_8Do(void);
EXTERN_MEU_PROCESS   void        Level2_2Menu_8Exit(void);

EXTERN_MEU_PROCESS   void        Level2_2Menu_9Enter(void);
EXTERN_MEU_PROCESS   void        Level2_2Menu_9Do(void);
EXTERN_MEU_PROCESS   void        Level2_2Menu_9Exit(void);


EXTERN_MEU_PROCESS   void        Level2_3Menu_1Enter(void);
EXTERN_MEU_PROCESS   void        Level2_3Menu_1Do(void);
EXTERN_MEU_PROCESS   void        Level2_3Menu_1Exit(void);

EXTERN_MEU_PROCESS   void        Level2_3Menu_2Enter(void);
EXTERN_MEU_PROCESS   void        Level2_3Menu_2Do(void);
EXTERN_MEU_PROCESS   void        Level2_3Menu_2Exit(void);

EXTERN_MEU_PROCESS   void        Level2_3Menu_3Enter(void);
EXTERN_MEU_PROCESS   void        Level2_3Menu_3Do(void);
EXTERN_MEU_PROCESS   void        Level2_3Menu_3Exit(void);

EXTERN_MEU_PROCESS   void        Level2_3Menu_4Enter(void);
EXTERN_MEU_PROCESS   void        Level2_3Menu_4Do(void);
EXTERN_MEU_PROCESS   void        Level2_3Menu_4Exit(void);

EXTERN_MEU_PROCESS   void        Level2_3Menu_5Enter(void);
EXTERN_MEU_PROCESS   void        Level2_3Menu_5Do(void);
EXTERN_MEU_PROCESS   void        Level2_3Menu_5Exit(void);

EXTERN_MEU_PROCESS   void        Level2_3Menu_6Enter(void);
EXTERN_MEU_PROCESS   void        Level2_3Menu_6Do(void);
EXTERN_MEU_PROCESS   void        Level2_3Menu_6Exit(void);

EXTERN_MEU_PROCESS   void        Level2_3Menu_7Enter(void);
EXTERN_MEU_PROCESS   void        Level2_3Menu_7Do(void);
EXTERN_MEU_PROCESS   void        Level2_3Menu_7Exit(void);


EXTERN_MEU_PROCESS   void        Level2_4Menu_1Enter(void);
EXTERN_MEU_PROCESS   void        Level2_4Menu_1Do(void);
EXTERN_MEU_PROCESS   void        Level2_4Menu_1Exit(void);

EXTERN_MEU_PROCESS   void        Level2_4Menu_2Enter(void);
EXTERN_MEU_PROCESS   void        Level2_4Menu_2Do(void);
EXTERN_MEU_PROCESS   void        Level2_4Menu_2Exit(void);

EXTERN_MEU_PROCESS   void        Level2_4Menu_3Enter(void);
EXTERN_MEU_PROCESS   void        Level2_4Menu_3Do(void);
EXTERN_MEU_PROCESS   void        Level2_4Menu_3Exit(void);

EXTERN_MEU_PROCESS   void        Level2_4Menu_4Enter(void);
EXTERN_MEU_PROCESS   void        Level2_4Menu_4Do(void);
EXTERN_MEU_PROCESS   void        Level2_4Menu_4Exit(void);

EXTERN_MEU_PROCESS   void        Level2_4Menu_5Enter(void);
EXTERN_MEU_PROCESS   void        Level2_4Menu_5Do(void);
EXTERN_MEU_PROCESS   void        Level2_4Menu_5Exit(void);

EXTERN_MEU_PROCESS   void        Level2_4Menu_6Enter(void);
EXTERN_MEU_PROCESS   void        Level2_4Menu_6Do(void);
EXTERN_MEU_PROCESS   void        Level2_4Menu_6Exit(void);

EXTERN_MEU_PROCESS   void        Level2_4Menu_7Enter(void);
EXTERN_MEU_PROCESS   void        Level2_4Menu_7Do(void);
EXTERN_MEU_PROCESS   void        Level2_4Menu_7Exit(void);

EXTERN_MEU_PROCESS   void        Level2_4Menu_8Enter(void);
EXTERN_MEU_PROCESS   void        Level2_4Menu_8Do(void);
EXTERN_MEU_PROCESS   void        Level2_4Menu_8Exit(void);

EXTERN_MEU_PROCESS   void        Level2_4Menu_9Enter(void);
EXTERN_MEU_PROCESS   void        Level2_4Menu_9Do(void);
EXTERN_MEU_PROCESS   void        Level2_4Menu_9Exit(void);

//EXTERN_MEU_PROCESS   void        Level3_1Menu_1Enter(void);
//EXTERN_MEU_PROCESS   void        Level3_1Menu_1Do(void);
//EXTERN_MEU_PROCESS   void        Level3_1Menu_1Exit(void);

//EXTERN_MEU_PROCESS   void        Level3_1Menu_2Enter(void);
//EXTERN_MEU_PROCESS   void        Level3_1Menu_2Do(void);
//EXTERN_MEU_PROCESS   void        Level3_1Menu_2Exit(void);

//EXTERN_MEU_PROCESS   void        Level3_1Menu_3Enter(void);
//EXTERN_MEU_PROCESS   void        Level3_1Menu_3Do(void);
//EXTERN_MEU_PROCESS   void        Level3_1Menu_3Exit(void);

//EXTERN_MEU_PROCESS   void        Level3_1Menu_4Enter(void);
//EXTERN_MEU_PROCESS   void        Level3_1Menu_4Do(void);
//EXTERN_MEU_PROCESS   void        Level3_1Menu_4Exit(void);

//EXTERN_MEU_PROCESS   void        Level3_1Menu_5Enter(void);
//EXTERN_MEU_PROCESS   void        Level3_1Menu_5Do(void);
//EXTERN_MEU_PROCESS   void        Level3_1Menu_5Exit(void);

//EXTERN_MEU_PROCESS   void        Level3_1Menu_6Enter(void);
//EXTERN_MEU_PROCESS   void        Level3_1Menu_6Do(void);
//EXTERN_MEU_PROCESS   void        Level3_1Menu_6Exit(void);

EXTERN_MEU_PROCESS   void        Level3_2Menu_1Enter(void);
EXTERN_MEU_PROCESS   void        Level3_2Menu_1Do(void);
EXTERN_MEU_PROCESS   void        Level3_2Menu_1Exit(void);

EXTERN_MEU_PROCESS   void        Level3_2Menu_2Enter(void);
EXTERN_MEU_PROCESS   void        Level3_2Menu_2Do(void);
EXTERN_MEU_PROCESS   void        Level3_2Menu_2Exit(void);

EXTERN_MEU_PROCESS   void        Level3_2Menu_3Enter(void);
EXTERN_MEU_PROCESS   void        Level3_2Menu_3Do(void);
EXTERN_MEU_PROCESS   void        Level3_2Menu_3Exit(void);

EXTERN_MEU_PROCESS   void        Level3_2Menu_4Enter(void);
EXTERN_MEU_PROCESS   void        Level3_2Menu_4Do(void);
EXTERN_MEU_PROCESS   void        Level3_2Menu_4Exit(void);

EXTERN_MEU_PROCESS   void        Level3_2Menu_5Enter(void);
EXTERN_MEU_PROCESS   void        Level3_2Menu_5Do(void);
EXTERN_MEU_PROCESS   void        Level3_2Menu_5Exit(void);

EXTERN_MEU_PROCESS   void        Level3_2Menu_6Enter(void);
EXTERN_MEU_PROCESS   void        Level3_2Menu_6Do(void);
EXTERN_MEU_PROCESS   void        Level3_2Menu_6Exit(void);

EXTERN_MEU_PROCESS   void        Level3_2Menu_7Enter(void);
EXTERN_MEU_PROCESS   void        Level3_2Menu_7Do(void);
EXTERN_MEU_PROCESS   void        Level3_2Menu_7Exit(void);

EXTERN_MEU_PROCESS   void        Level3_2Menu_8Enter(void);
EXTERN_MEU_PROCESS   void        Level3_2Menu_8Do(void);
EXTERN_MEU_PROCESS   void        Level3_2Menu_8Exit(void);

EXTERN_MEU_PROCESS   void        Level3_2Menu_9Enter(void);
EXTERN_MEU_PROCESS   void        Level3_2Menu_9Do(void);
EXTERN_MEU_PROCESS   void        Level3_2Menu_9Exit(void);


EXTERN_MEU_PROCESS   void        Level3_3Menu_1Enter(void);
EXTERN_MEU_PROCESS   void        Level3_3Menu_1Do(void);
EXTERN_MEU_PROCESS   void        Level3_3Menu_1Exit(void);

EXTERN_MEU_PROCESS   void        Level3_3Menu_2Enter(void);
EXTERN_MEU_PROCESS   void        Level3_3Menu_2Do(void);
EXTERN_MEU_PROCESS   void        Level3_3Menu_2Exit(void);

EXTERN_MEU_PROCESS   void        Level3_3Menu_3Enter(void);
EXTERN_MEU_PROCESS   void        Level3_3Menu_3Do(void);
EXTERN_MEU_PROCESS   void        Level3_3Menu_3Exit(void);

EXTERN_MEU_PROCESS   void        Level3_3Menu_4Enter(void);
EXTERN_MEU_PROCESS   void        Level3_3Menu_4Do(void);
EXTERN_MEU_PROCESS   void        Level3_3Menu_4Exit(void);

EXTERN_MEU_PROCESS   void        Level3_3Menu_5Enter(void);
EXTERN_MEU_PROCESS   void        Level3_3Menu_5Do(void);
EXTERN_MEU_PROCESS   void        Level3_3Menu_5Exit(void);

EXTERN_MEU_PROCESS   void        Level3_3Menu_6Enter(void);
EXTERN_MEU_PROCESS   void        Level3_3Menu_6Do(void);
EXTERN_MEU_PROCESS   void        Level3_3Menu_6Exit(void);

EXTERN_MEU_PROCESS   void        Level3_3Menu_7Enter(void);
EXTERN_MEU_PROCESS   void        Level3_3Menu_7Do(void);
EXTERN_MEU_PROCESS   void        Level3_3Menu_7Exit(void);


EXTERN_MEU_PROCESS   void        Level3_4Menu_1Enter_1(void);
EXTERN_MEU_PROCESS   void        Level3_4Menu_1Do_1(void);
EXTERN_MEU_PROCESS   void        Level3_4Menu_1Exit_1(void);

EXTERN_MEU_PROCESS   void        Level3_4Menu_1Enter_2(void);
EXTERN_MEU_PROCESS   void        Level3_4Menu_1Do_2(void);
EXTERN_MEU_PROCESS   void        Level3_4Menu_1Exit_2(void);

EXTERN_MEU_PROCESS   void        Level3_4Menu_2Enter_1(void);
EXTERN_MEU_PROCESS   void        Level3_4Menu_2Do_1(void);
EXTERN_MEU_PROCESS   void        Level3_4Menu_2Exit_1(void);

EXTERN_MEU_PROCESS   void        Level3_4Menu_2Enter_2(void);
EXTERN_MEU_PROCESS   void        Level3_4Menu_2Do_2(void);
EXTERN_MEU_PROCESS   void        Level3_4Menu_2Exit_2(void);

EXTERN_MEU_PROCESS   void        Level3_4Menu_3Enter(void);
EXTERN_MEU_PROCESS   void        Level3_4Menu_3Do(void);
EXTERN_MEU_PROCESS   void        Level3_4Menu_3Exit(void);

EXTERN_MEU_PROCESS   void        Level3_4Menu_4Enter_1(void);
EXTERN_MEU_PROCESS   void        Level3_4Menu_4Do_1(void);
EXTERN_MEU_PROCESS   void        Level3_4Menu_4Exit_1(void);

EXTERN_MEU_PROCESS   void        Level3_4Menu_4Enter_2(void);
EXTERN_MEU_PROCESS   void        Level3_4Menu_4Do_2(void);
EXTERN_MEU_PROCESS   void        Level3_4Menu_4Exit_2(void);

EXTERN_MEU_PROCESS   void        Level3_4Menu_4Enter_3(void);
EXTERN_MEU_PROCESS   void        Level3_4Menu_4Do_3(void);
EXTERN_MEU_PROCESS   void        Level3_4Menu_4Exit_3(void);

EXTERN_MEU_PROCESS   void        Level3_4Menu_4Enter_4(void);
EXTERN_MEU_PROCESS   void        Level3_4Menu_4Do_4(void);
EXTERN_MEU_PROCESS   void        Level3_4Menu_4Exit_4(void);

EXTERN_MEU_PROCESS   void        Level3_4Menu_4Enter_5(void);
EXTERN_MEU_PROCESS   void        Level3_4Menu_4Do_5(void);
EXTERN_MEU_PROCESS   void        Level3_4Menu_4Exit_5(void);

EXTERN_MEU_PROCESS   void        Level3_4Menu_5Enter_1(void);
EXTERN_MEU_PROCESS   void        Level3_4Menu_5Do_1(void);
EXTERN_MEU_PROCESS   void        Level3_4Menu_5Exit_1(void);

EXTERN_MEU_PROCESS   void        Level3_4Menu_5Enter_2(void);
EXTERN_MEU_PROCESS   void        Level3_4Menu_5Do_2(void);
EXTERN_MEU_PROCESS   void        Level3_4Menu_5Exit_2(void);

EXTERN_MEU_PROCESS   void        Level3_4Menu_6Enter(void);
EXTERN_MEU_PROCESS   void        Level3_4Menu_6Do(void);
EXTERN_MEU_PROCESS   void        Level3_4Menu_6Exit(void);

EXTERN_MEU_PROCESS   void        Level3_4Menu_7Enter(void);
EXTERN_MEU_PROCESS   void        Level3_4Menu_7Do(void);
EXTERN_MEU_PROCESS   void        Level3_4Menu_7Exit(void);

EXTERN_MEU_PROCESS   void        Level3_4Menu_8Enter(void);
EXTERN_MEU_PROCESS   void        Level3_4Menu_8Do(void);
EXTERN_MEU_PROCESS   void        Level3_4Menu_8Exit(void);

EXTERN_MEU_PROCESS   void        Level3_4Menu_9Enter(void);
EXTERN_MEU_PROCESS   void        Level3_4Menu_9Do(void);
EXTERN_MEU_PROCESS   void        Level3_4Menu_9Exit(void);

EXTERN_MEU_PROCESS   void        Level4_1Menu_1Enter(void);
EXTERN_MEU_PROCESS   void        Level4_1Menu_1Do(void);
EXTERN_MEU_PROCESS   void        Level4_1Menu_1Exit(void);

EXTERN_MEU_PROCESS   void        Level4_1Menu_2Enter(void);
EXTERN_MEU_PROCESS   void        Level4_1Menu_2Do(void);
EXTERN_MEU_PROCESS   void        Level4_1Menu_2Exit(void);

EXTERN_MEU_PROCESS   void        Level4_2Menu_1Enter(void);
EXTERN_MEU_PROCESS   void        Level4_2Menu_1Do(void);
EXTERN_MEU_PROCESS   void        Level4_2Menu_1Exit(void);

EXTERN_MEU_PROCESS   void        Level4_2Menu_2Enter(void);
EXTERN_MEU_PROCESS   void        Level4_2Menu_2Do(void);
EXTERN_MEU_PROCESS   void        Level4_2Menu_2Exit(void);

EXTERN_MEU_PROCESS   void        Level4_4Menu_1Enter(void);
EXTERN_MEU_PROCESS   void        Level4_4Menu_1Do(void);
EXTERN_MEU_PROCESS   void        Level4_4Menu_1Exit(void);

EXTERN_MEU_PROCESS   void        Level4_4Menu_2Enter(void);
EXTERN_MEU_PROCESS   void        Level4_4Menu_2Do(void);
EXTERN_MEU_PROCESS   void        Level4_4Menu_2Exit(void);

EXTERN_MEU_PROCESS   void        Level4_4Menu_3Enter(void);
EXTERN_MEU_PROCESS   void        Level4_4Menu_3Do(void);
EXTERN_MEU_PROCESS   void        Level4_4Menu_3Exit(void);

EXTERN_MEU_PROCESS   void        Level4_4Menu_4Enter(void);
EXTERN_MEU_PROCESS   void        Level4_4Menu_4Do(void);
EXTERN_MEU_PROCESS   void        Level4_4Menu_4Exit(void);

EXTERN_MEU_PROCESS   void        Level4_4Menu_5Enter(void);
EXTERN_MEU_PROCESS   void        Level4_4Menu_5Do(void);
EXTERN_MEU_PROCESS   void        Level4_4Menu_5Exit(void);

EXTERN_MEU_PROCESS   void        Level4_5Menu_1Enter(void);
EXTERN_MEU_PROCESS   void        Level4_5Menu_1Do(void);
EXTERN_MEU_PROCESS   void        Level4_5Menu_1Exit(void);

EXTERN_MEU_PROCESS   void        Level4_5Menu_2Enter(void);
EXTERN_MEU_PROCESS   void        Level4_5Menu_2Do(void);
EXTERN_MEU_PROCESS   void        Level4_5Menu_2Exit(void);

EXTERN_MEU_PROCESS   void        Level_Enter_HMenu_Enter(void);
EXTERN_MEU_PROCESS   void        Level_Enter_HMenu_Do(void);
EXTERN_MEU_PROCESS   void        Level_Enter_HMenu_Exit(void);

EXTERN_MEU_PROCESS   void        Level_Enter_Menu_Enter(void);
EXTERN_MEU_PROCESS   void        Level_Enter_Menu_Do(void);
EXTERN_MEU_PROCESS   void        Level_Enter_Menu_Exit(void);

EXTERN_MEU_PROCESS   void        Level_Return_Menu_Enter(void);
EXTERN_MEU_PROCESS   void        Level_Return_Menu_Do(void);
EXTERN_MEU_PROCESS   void        Level_Return_Menu_Exit(void);

void Menu_Status_Switch(void);

#endif 
