FUNCTION_BLOCK BS_Schedule
VAR_EXTERNAL

END_VAR

VAR_INPUT
W1SCH_str 		  :STRING;
W2SCH_str 		  :STRING;
W3SCH_str 		  :STRING;
W4SCH_str 		  :STRING;
W5SCH_str 		  :STRING;
W6SCH_str 		  :STRING;
W7SCH_str 		  :STRING;
W1SCH    		  :ARRAY[1..4] OF TimeConfig;
W2SCH    		  :ARRAY[1..4] OF TimeConfig;
W3SCH    		  :ARRAY[1..4] OF TimeConfig;
W4SCH    		  :ARRAY[1..4] OF TimeConfig;
W5SCH    		  :ARRAY[1..4] OF TimeConfig;
W6SCH    		  :ARRAY[1..4] OF TimeConfig;
W7SCH    		  :ARRAY[1..4] OF TimeConfig;
EnableNum		  :INT;
Enable			  :BOOL;
Delay			  :INT;
Mode			  :INT;
InputMode		  :INT;

END_VAR

VAR_OUTPUT
TimeSw1  :BOOL;
TimeSw2  :BOOL;
TimeSw3  :BOOL;
TimeSw4  :BOOL;
OUT_Z    :BOOL;
END_VAR

VAR
BS_Schedule_Str_W	 :STRING;
BS_Schedule_Str_R    :ARRAY[0..60] OF BYTE;

WXSCH      :ARRAY[1..4] OF TimeConfig;

Enable1th  :BOOL;
Enable2th  :BOOL;
Enable3th  :BOOL;
Enable4th  :BOOL;

OnH1th     :INT:=0;
OnM1th     :INT:=0;
OffH1th    :INT:=0;
OffM1th    :INT:=0;

OnH2th     :INT:=0;
OnM2th     :INT:=0;
OffH2th    :INT:=0;
OffM2th    :INT:=0;

OnH3th     :INT:=0;
OnM3th     :INT:=0;
OffH3th    :INT:=0;
OffM3th    :INT:=0;

OnH4th     :INT:=0;
OnM4th     :INT:=0;
OffH4th    :INT:=0;
OffM4th    :INT:=0;


    HOUR  	:byte;
	YEAR  	:word;
	MON   	:byte;
	DAY   	:byte;
	MI    	:byte;
	SEC   	:byte;
	WEEK  	:byte;
WD_HOUR  	:INT;
WD_MI    	:INT;

SetCompare1th 			:BOOL;    (*开启设定时间大于关闭设定时间为1,反之为0*)
TrueSetCloseCompare1th 	:BOOL;    (*关闭设定时间大于实际时间为1,反之为0*)
TrueSetOpenCompare1th 	:BOOL;    (*开启设定时间大于实际时间为1,反之为0*)

SetCompare2th 			:BOOL;    (*开启设定时间大于关闭设定时间为1,反之为0*)
TrueSetCloseCompare2th 	:BOOL;    (*关闭设定时间大于实际时间为1,反之为0*)
TrueSetOpenCompare2th 	:BOOL;    (*开启设定时间大于实际时间为1,反之为0*)

SetCompare3th 			:BOOL;    (*开启设定时间大于关闭设定时间为1,反之为0*)
TrueSetCloseCompare3th 	:BOOL;    (*关闭设定时间大于实际时间为1,反之为0*)
TrueSetOpenCompare3th 	:BOOL;    (*开启设定时间大于实际时间为1,反之为0*)

SetCompare4th 			:BOOL;    (*开启设定时间大于关闭设定时间为1,反之为0*)
TrueSetCloseCompare4th 	:BOOL;    (*关闭设定时间大于实际时间为1,反之为0*)
TrueSetOpenCompare4th 	:BOOL;    (*开启设定时间大于实际时间为1,反之为0*)

ini   : BOOL;
str_ini :STRING;

(* C2版本
v2m1 :AdvVarToMem;
m2v1 :AdvMemToVar;
Clock : AdvGetDateTime;
*)

(* C4版本 *)
Clock   				: NW_DateTimeGet;
p1,p2   				: pointer;
v2v 					: NW_MemCopy;

END_VAR

(*Automatically declared*)
VAR_EXTERNAL
END_VAR
(** {*  **)
(**  **)
(** ʱ  �䣺20201028 **)
(** ��  ����1.5 **)
(** ��  �ߣ�Ҧ�� **)
(** ��  �ƣ���ʱ���ų̹��ܿ� **)
(** ˵  ����1.1 ֧�����7��4��ʽʱ�俪�ؿ��ƣ�ʹ��ʱ��ؽ���ʱ�䡢����У׼ **)
(** 		1.2 �Ż�����ʽ������C4�汾CPU���Ż����ܿ�ռ���ڴ� **)
(** 		1.3 �ϲ��ܣ��ڼ��գ���ģʽ **)
(** 		1.4 ����ʱ���������Ϊ�����ķ�ʽ **)
(** 		1.5 ʱ���������Ϊ�����ķ�ʽbug�޸� **)
(** 		 **)
(** 		����������������ʱ������4· **)
(** 		1 Ӫҵ׼�� **)
(** 		2 Ӫҵ�����죩 **)
(** 		3 Ӫҵ�����ϣ� **)
(** 		4 �յ�׼�� **)
(** 		 **)
(** ��  ע�� **)
(** �����飺BS_ASCII2INT **)
(**  **)
(**  **)
(** *} **)
(**  **)
(** {*  **)
(** 	Input_Type: ����	WXSCH_str   X=1~7,ʱ����������룬4��ʱ�䣬00000000 00000000 00000000 00000000	 **)
(** 						WXSCH		X=1~7,ʱ������������飬4��ʱ��ֱ�Ϊ **)
(** 														WXSCH[1].OnH,WXSCH[1].OnM,WXSCH[1].OffH,WXSCH[1].OffM **)
(** 														WXSCH[2].OnH,WXSCH[2].OnM,WXSCH[2].OffH,WXSCH[2].OffM **)
(** 														WXSCH[3].OnH,WXSCH[3].OnM,WXSCH[3].OffH,WXSCH[3].OffM **)
(** 														WXSCH[4].OnH,WXSCH[4].OnM,WXSCH[4].OffH,WXSCH[4].OffM **)
(** 						EnableNum   �ų��������� **)
(** 						Enable		�ų����� **)
(** 						Delay	    ��ʱ���� **)
(** 						Mode		ģʽ0 ��ģʽ 		W1SCH_str~W7SCH_str ��Ӧ��һ~����ʱ������ **)
(** 									ģʽ1 �ڼ���ģʽ 	W1SCH_str ��Ӧ������ W2SCH_str ��Ӧ�ڼ���ʱ������ **)
(** 									ģʽ2 ��ģʽ		W1SCH_str ��Ӧÿ��ʱ������ **)
(** 						InputMode	ģʽ0 �ַ������� **)
(** 									ģʽ1 �������� **)
(** 					   **)
(** 	Output_Type: ��� 	TimeSw1     �ų�1��� **)
(** 						TimeSw2  	�ų�2��� **)
(** 						TimeSw3  	�ų�3��� **)
(** 						TimeSw4  	�ų�4��� **)
(** 						OUT_Z       �������     **)
(** 	 **)
(**  *} **)
(**  **)
(**  **)
(** {* ʱ���ȡ *} **)
(** Clock( EN:=1 , B_TWELVE_HOUR:=0 |  YEAR:= W_YEAR, MON:= BY_MONTH, DAY:= BY_DAY, HOUR:= BY_HOUR,MI := BY_MIN, SEC:= BY_SEC,WEEK := BY_WDAY ); **)
	(* call - Stmt *)
	CAL Clock (
		EN := 1,
		B_TWELVE_HOUR := 0
		|
		YEAR := W_YEAR,
		MON := BY_MONTH,
		DAY := BY_DAY,
		HOUR := BY_HOUR,
		MI := BY_MIN,
		SEC := BY_SEC,
		WEEK := BY_WDAY
	)

(**  **)
(** WD_HOUR:=BYTE_TO_int(HOUR); **)
	(* assign - Stmt *)
	LD HOUR
	BYTE_TO_int 
	ST WD_HOUR

(** WD_MI:=BYTE_TO_int(MI); **)
	(* assign - Stmt *)
	LD MI
	BYTE_TO_int 
	ST WD_MI

(**  **)
(** {*��ģʽ��������һ������*} **)
(** {************************************** �ַ�������ģʽ*********************************************} **)
(** if InputMode=0 then **)
	(* if - Cond *)
	LD InputMode
	EQ 0
	JMPCN ODK_SKIP_000000000000001_000000000000001

		(* then - Stmts *)

(** 	if Mode=0 then **)
		(* if - Cond *)
		LD Mode
		EQ 0
		JMPCN ODK_SKIP_000000000000002_000000000000001

			(* then - Stmts *)

(** 	{* �趨ʱ���ȡ *} **)
(**  **)
(** 		if WEEK=1 then **)
			(* if - Cond *)
			LD WEEK
			EQ 1
			JMPCN ODK_SKIP_000000000000003_000000000000001

				(* then - Stmts *)

(** 			if W1SCH_str<>'' then **)
				(* if - Cond *)
				LD W1SCH_str
				NE ''
				JMPCN ODK_SKIP_000000000000004_000000000000001

					(* then - Stmts *)

(** 				BS_Schedule_Str_W  :=W1SCH_str; **)
					(* assign - Stmt *)
					LD W1SCH_str
					ST BS_Schedule_Str_W

					JMP ODK_END_IF_000000000000004

(** 			end_if; **)
				(* if - End *) 
				ODK_SKIP_000000000000004_000000000000001:
				ODK_END_IF_000000000000004:

				JMP ODK_END_IF_000000000000003

(** 		end_if;		 **)
			(* if - End *) 
			ODK_SKIP_000000000000003_000000000000001:
			ODK_END_IF_000000000000003:

(**  **)
(** 		if WEEK=2 then **)
			(* if - Cond *)
			LD WEEK
			EQ 2
			JMPCN ODK_SKIP_000000000000005_000000000000001

				(* then - Stmts *)

(** 			if W2SCH_str<>'' then **)
				(* if - Cond *)
				LD W2SCH_str
				NE ''
				JMPCN ODK_SKIP_000000000000006_000000000000001

					(* then - Stmts *)

(** 				BS_Schedule_Str_W  :=W2SCH_str; **)
					(* assign - Stmt *)
					LD W2SCH_str
					ST BS_Schedule_Str_W

					JMP ODK_END_IF_000000000000006

(** 			end_if; **)
				(* if - End *) 
				ODK_SKIP_000000000000006_000000000000001:
				ODK_END_IF_000000000000006:

				JMP ODK_END_IF_000000000000005

(** 		end_if;	 **)
			(* if - End *) 
			ODK_SKIP_000000000000005_000000000000001:
			ODK_END_IF_000000000000005:

(**  **)
(** 		if WEEK=3 then **)
			(* if - Cond *)
			LD WEEK
			EQ 3
			JMPCN ODK_SKIP_000000000000007_000000000000001

				(* then - Stmts *)

(** 			if W3SCH_str<>'' then **)
				(* if - Cond *)
				LD W3SCH_str
				NE ''
				JMPCN ODK_SKIP_000000000000008_000000000000001

					(* then - Stmts *)

(** 				BS_Schedule_Str_W  :=W3SCH_str; **)
					(* assign - Stmt *)
					LD W3SCH_str
					ST BS_Schedule_Str_W

					JMP ODK_END_IF_000000000000008

(** 			end_if; **)
				(* if - End *) 
				ODK_SKIP_000000000000008_000000000000001:
				ODK_END_IF_000000000000008:

				JMP ODK_END_IF_000000000000007

(** 		end_if;	 **)
			(* if - End *) 
			ODK_SKIP_000000000000007_000000000000001:
			ODK_END_IF_000000000000007:

(**  **)
(** 		if WEEK=4 then **)
			(* if - Cond *)
			LD WEEK
			EQ 4
			JMPCN ODK_SKIP_000000000000009_000000000000001

				(* then - Stmts *)

(** 			if W4SCH_str<>'' then **)
				(* if - Cond *)
				LD W4SCH_str
				NE ''
				JMPCN ODK_SKIP_00000000000000A_000000000000001

					(* then - Stmts *)

(** 				BS_Schedule_Str_W  :=W4SCH_str; **)
					(* assign - Stmt *)
					LD W4SCH_str
					ST BS_Schedule_Str_W

					JMP ODK_END_IF_00000000000000A

(** 			end_if; **)
				(* if - End *) 
				ODK_SKIP_00000000000000A_000000000000001:
				ODK_END_IF_00000000000000A:

				JMP ODK_END_IF_000000000000009

(** 		end_if;	 **)
			(* if - End *) 
			ODK_SKIP_000000000000009_000000000000001:
			ODK_END_IF_000000000000009:

(**  **)
(** 		if WEEK=5 then **)
			(* if - Cond *)
			LD WEEK
			EQ 5
			JMPCN ODK_SKIP_00000000000000B_000000000000001

				(* then - Stmts *)

(** 			if W5SCH_str<>'' then **)
				(* if - Cond *)
				LD W5SCH_str
				NE ''
				JMPCN ODK_SKIP_00000000000000C_000000000000001

					(* then - Stmts *)

(** 				BS_Schedule_Str_W  :=W5SCH_str; **)
					(* assign - Stmt *)
					LD W5SCH_str
					ST BS_Schedule_Str_W

					JMP ODK_END_IF_00000000000000C

(** 			end_if; **)
				(* if - End *) 
				ODK_SKIP_00000000000000C_000000000000001:
				ODK_END_IF_00000000000000C:

				JMP ODK_END_IF_00000000000000B

(** 		end_if;	 **)
			(* if - End *) 
			ODK_SKIP_00000000000000B_000000000000001:
			ODK_END_IF_00000000000000B:

(**  **)
(** 		if WEEK=6 then **)
			(* if - Cond *)
			LD WEEK
			EQ 6
			JMPCN ODK_SKIP_00000000000000D_000000000000001

				(* then - Stmts *)

(** 			if W6SCH_str<>'' then **)
				(* if - Cond *)
				LD W6SCH_str
				NE ''
				JMPCN ODK_SKIP_00000000000000E_000000000000001

					(* then - Stmts *)

(** 				BS_Schedule_Str_W  :=W6SCH_str; **)
					(* assign - Stmt *)
					LD W6SCH_str
					ST BS_Schedule_Str_W

					JMP ODK_END_IF_00000000000000E

(** 			end_if; **)
				(* if - End *) 
				ODK_SKIP_00000000000000E_000000000000001:
				ODK_END_IF_00000000000000E:

				JMP ODK_END_IF_00000000000000D

(** 		end_if;	 **)
			(* if - End *) 
			ODK_SKIP_00000000000000D_000000000000001:
			ODK_END_IF_00000000000000D:

(**  **)
(** 		if WEEK=7 then **)
			(* if - Cond *)
			LD WEEK
			EQ 7
			JMPCN ODK_SKIP_00000000000000F_000000000000001

				(* then - Stmts *)

(** 			if W7SCH_str<>'' then **)
				(* if - Cond *)
				LD W7SCH_str
				NE ''
				JMPCN ODK_SKIP_00000000000000G_000000000000001

					(* then - Stmts *)

(** 				BS_Schedule_Str_W  :=W7SCH_str; **)
					(* assign - Stmt *)
					LD W7SCH_str
					ST BS_Schedule_Str_W

					JMP ODK_END_IF_00000000000000G

(** 			end_if; **)
				(* if - End *) 
				ODK_SKIP_00000000000000G_000000000000001:
				ODK_END_IF_00000000000000G:

				JMP ODK_END_IF_00000000000000F

(** 		end_if;	 **)
			(* if - End *) 
			ODK_SKIP_00000000000000F_000000000000001:
			ODK_END_IF_00000000000000F:

			JMP ODK_END_IF_000000000000002

(** 	end_if; **)
		(* if - End *) 
		ODK_SKIP_000000000000002_000000000000001:
		ODK_END_IF_000000000000002:

(** 	{*�ڼ���ģʽ�����ֹ����սڼ���,Ĭ������1~4��7Ϊ�����գ�����5��6Ϊ�ڼ���*} **)
(** 	if Mode=1 then **)
		(* if - Cond *)
		LD Mode
		EQ 1
		JMPCN ODK_SKIP_00000000000000H_000000000000001

			(* then - Stmts *)

(** 		if WEEK=7 or WEEK<=4 then **)
			(* if - Cond *)
			LD WEEK
			EQ 7
			OR ( WEEK
				LE 4
			)
			JMPCN ODK_SKIP_00000000000000I_000000000000001

				(* then - Stmts *)

(** 			if W1SCH_str<>'' then **)
				(* if - Cond *)
				LD W1SCH_str
				NE ''
				JMPCN ODK_SKIP_00000000000000J_000000000000001

					(* then - Stmts *)

(** 				BS_Schedule_Str_W  :=W1SCH_str; **)
					(* assign - Stmt *)
					LD W1SCH_str
					ST BS_Schedule_Str_W

					JMP ODK_END_IF_00000000000000J

(** 			end_if; **)
				(* if - End *) 
				ODK_SKIP_00000000000000J_000000000000001:
				ODK_END_IF_00000000000000J:

				JMP ODK_END_IF_00000000000000I

(** 		end_if;		 **)
			(* if - End *) 
			ODK_SKIP_00000000000000I_000000000000001:
			ODK_END_IF_00000000000000I:

(**  **)
(** 		if WEEK>=5 and WEEK<=6 then **)
			(* if - Cond *)
			LD WEEK
			GE 5
			AND ( WEEK
				LE 6
			)
			JMPCN ODK_SKIP_00000000000000K_000000000000001

				(* then - Stmts *)

(** 			if W2SCH_str<>'' then **)
				(* if - Cond *)
				LD W2SCH_str
				NE ''
				JMPCN ODK_SKIP_00000000000000L_000000000000001

					(* then - Stmts *)

(** 				BS_Schedule_Str_W  :=W2SCH_str; **)
					(* assign - Stmt *)
					LD W2SCH_str
					ST BS_Schedule_Str_W

					JMP ODK_END_IF_00000000000000L

(** 			end_if; **)
				(* if - End *) 
				ODK_SKIP_00000000000000L_000000000000001:
				ODK_END_IF_00000000000000L:

				JMP ODK_END_IF_00000000000000K

(** 		end_if;	 **)
			(* if - End *) 
			ODK_SKIP_00000000000000K_000000000000001:
			ODK_END_IF_00000000000000K:

			JMP ODK_END_IF_00000000000000H

(** 	end_if; **)
		(* if - End *) 
		ODK_SKIP_00000000000000H_000000000000001:
		ODK_END_IF_00000000000000H:

(**  **)
(** 	{*����ģʽ������������*} **)
(** 	if Mode=2 then **)
		(* if - Cond *)
		LD Mode
		EQ 2
		JMPCN ODK_SKIP_00000000000000M_000000000000001

			(* then - Stmts *)

(** 		if W1SCH_str<>'' then **)
			(* if - Cond *)
			LD W1SCH_str
			NE ''
			JMPCN ODK_SKIP_00000000000000N_000000000000001

				(* then - Stmts *)

(** 			BS_Schedule_Str_W  :=W1SCH_str; **)
				(* assign - Stmt *)
				LD W1SCH_str
				ST BS_Schedule_Str_W

				JMP ODK_END_IF_00000000000000N

(** 		end_if; **)
			(* if - End *) 
			ODK_SKIP_00000000000000N_000000000000001:
			ODK_END_IF_00000000000000N:

			JMP ODK_END_IF_00000000000000M

(** 	end_if; **)
		(* if - End *) 
		ODK_SKIP_00000000000000M_000000000000001:
		ODK_END_IF_00000000000000M:

(** 	 **)
(** 	{*��ʱʱ��ָ�봦��*} **)
(** 	{* C2�汾 **)
(** 	v2m1(EN :=1 , DW_MEM_ADDR :=7000 , W_MAXNUM  :=32 , STR_FILENAME :='VAR_str' , STR_VARNAME :='BS_Schedule_Str_W'  ); **)
(** 	m2v1(EN :=1 , DW_MEM_ADDR :=7000 , W_MEM_LEN :=32 , STR_FILENAME :='VAR_str' , STR_VARNAME :='BS_Schedule_Str_R'  ); **)
(** 	*} **)
(** 	{* C4�汾 *} **)
(** 	  p1:=&BS_Schedule_Str_W; **)
		(* assign - Stmt *)
		LD &BS_Schedule_Str_W
		ST p1

(** 	  p2:=&BS_Schedule_Str_R; **)
		(* assign - Stmt *)
		LD &BS_Schedule_Str_R
		ST p2

(** 	  v2v(DEST :=p2 , SRC :=p1 , LENGTH :=32 , IQM :=0 ); **)
		(* call - Stmt *)
		CAL v2v (
			DEST := p2,
			SRC := p1,
			LENGTH := 32,
			IQM := 0
		)

(** 		 **)
(** 		 **)
(** 	{*ʱ�����ݸ�ֵ����ֵ����*} **)
(** 	if BS_ASCII2INT(BS_Schedule_Str_R[ 0],BS_Schedule_Str_R[ 1])<0 then  OnH1th:=0; elsif BS_ASCII2INT(BS_Schedule_Str_R[ 0],BS_Schedule_Str_R[ 1])      >23 then  OnH1th:=23; else  OnH1th:=BS_ASCII2INT(BS_Schedule_Str_R[ 0],BS_Schedule_Str_R[ 1])      ; end_if;  **)
		(* if - Cond *)
		LD BS_Schedule_Str_R[0]
		BS_ASCII2INT BS_Schedule_Str_R[1]
		LT 0
		JMPCN ODK_SKIP_00000000000000O_000000000000001

			(* then - Stmts *)

			(* assign - Stmt *)
			LD 0
			ST OnH1th

			JMP ODK_END_IF_00000000000000O

		(* elseif - Cond *) 
		ODK_SKIP_00000000000000O_000000000000001:
		LD BS_Schedule_Str_R[0]
		BS_ASCII2INT BS_Schedule_Str_R[1]
		GT 23
		JMPCN ODK_SKIP_00000000000000O_000000000000002

			(* elsif - Stmts *)

			(* assign - Stmt *)
			LD 23
			ST OnH1th

			JMP ODK_END_IF_00000000000000O

		(* else *) 
		ODK_SKIP_00000000000000O_000000000000002:

			(* else - Stmts *)

			(* assign - Stmt *)
			LD BS_Schedule_Str_R[0]
			BS_ASCII2INT BS_Schedule_Str_R[1]
			ST OnH1th

		(* if - End *) 
		ODK_END_IF_00000000000000O:

(** 	if BS_ASCII2INT(BS_Schedule_Str_R[ 2],BS_Schedule_Str_R[ 3])<0 then  OnM1th:=0; elsif BS_ASCII2INT(BS_Schedule_Str_R[ 2],BS_Schedule_Str_R[ 3])+Delay>59 then  OnM1th:=59; else  OnM1th:=BS_ASCII2INT(BS_Schedule_Str_R[ 2],BS_Schedule_Str_R[ 3])+Delay; end_if;  **)
		(* if - Cond *)
		LD BS_Schedule_Str_R[2]
		BS_ASCII2INT BS_Schedule_Str_R[3]
		LT 0
		JMPCN ODK_SKIP_00000000000000P_000000000000001

			(* then - Stmts *)

			(* assign - Stmt *)
			LD 0
			ST OnM1th

			JMP ODK_END_IF_00000000000000P

		(* elseif - Cond *) 
		ODK_SKIP_00000000000000P_000000000000001:
		LD BS_Schedule_Str_R[2]
		BS_ASCII2INT BS_Schedule_Str_R[3]
		ADD Delay
		GT 59
		JMPCN ODK_SKIP_00000000000000P_000000000000002

			(* elsif - Stmts *)

			(* assign - Stmt *)
			LD 59
			ST OnM1th

			JMP ODK_END_IF_00000000000000P

		(* else *) 
		ODK_SKIP_00000000000000P_000000000000002:

			(* else - Stmts *)

			(* assign - Stmt *)
			LD BS_Schedule_Str_R[2]
			BS_ASCII2INT BS_Schedule_Str_R[3]
			ADD Delay
			ST OnM1th

		(* if - End *) 
		ODK_END_IF_00000000000000P:

(** 	if BS_ASCII2INT(BS_Schedule_Str_R[ 4],BS_Schedule_Str_R[ 5])<0 then OffH1th:=0; elsif BS_ASCII2INT(BS_Schedule_Str_R[ 4],BS_Schedule_Str_R[ 5])      >23 then OffH1th:=23; else OffH1th:=BS_ASCII2INT(BS_Schedule_Str_R[ 4],BS_Schedule_Str_R[ 5])      ; end_if;  **)
		(* if - Cond *)
		LD BS_Schedule_Str_R[4]
		BS_ASCII2INT BS_Schedule_Str_R[5]
		LT 0
		JMPCN ODK_SKIP_00000000000000Q_000000000000001

			(* then - Stmts *)

			(* assign - Stmt *)
			LD 0
			ST OffH1th

			JMP ODK_END_IF_00000000000000Q

		(* elseif - Cond *) 
		ODK_SKIP_00000000000000Q_000000000000001:
		LD BS_Schedule_Str_R[4]
		BS_ASCII2INT BS_Schedule_Str_R[5]
		GT 23
		JMPCN ODK_SKIP_00000000000000Q_000000000000002

			(* elsif - Stmts *)

			(* assign - Stmt *)
			LD 23
			ST OffH1th

			JMP ODK_END_IF_00000000000000Q

		(* else *) 
		ODK_SKIP_00000000000000Q_000000000000002:

			(* else - Stmts *)

			(* assign - Stmt *)
			LD BS_Schedule_Str_R[4]
			BS_ASCII2INT BS_Schedule_Str_R[5]
			ST OffH1th

		(* if - End *) 
		ODK_END_IF_00000000000000Q:

(** 	if BS_ASCII2INT(BS_Schedule_Str_R[ 6],BS_Schedule_Str_R[ 7])<0 then OffM1th:=0; elsif BS_ASCII2INT(BS_Schedule_Str_R[ 6],BS_Schedule_Str_R[ 7])+Delay>59 then OffM1th:=59; else OffM1th:=BS_ASCII2INT(BS_Schedule_Str_R[ 6],BS_Schedule_Str_R[ 7])+Delay; end_if;  **)
		(* if - Cond *)
		LD BS_Schedule_Str_R[6]
		BS_ASCII2INT BS_Schedule_Str_R[7]
		LT 0
		JMPCN ODK_SKIP_00000000000000R_000000000000001

			(* then - Stmts *)

			(* assign - Stmt *)
			LD 0
			ST OffM1th

			JMP ODK_END_IF_00000000000000R

		(* elseif - Cond *) 
		ODK_SKIP_00000000000000R_000000000000001:
		LD BS_Schedule_Str_R[6]
		BS_ASCII2INT BS_Schedule_Str_R[7]
		ADD Delay
		GT 59
		JMPCN ODK_SKIP_00000000000000R_000000000000002

			(* elsif - Stmts *)

			(* assign - Stmt *)
			LD 59
			ST OffM1th

			JMP ODK_END_IF_00000000000000R

		(* else *) 
		ODK_SKIP_00000000000000R_000000000000002:

			(* else - Stmts *)

			(* assign - Stmt *)
			LD BS_Schedule_Str_R[6]
			BS_ASCII2INT BS_Schedule_Str_R[7]
			ADD Delay
			ST OffM1th

		(* if - End *) 
		ODK_END_IF_00000000000000R:

(**  **)
(** 	if BS_ASCII2INT(BS_Schedule_Str_R[ 8],BS_Schedule_Str_R[ 9])<0 then  OnH2th:=0; elsif BS_ASCII2INT(BS_Schedule_Str_R[ 8],BS_Schedule_Str_R[ 9])      >23 then  OnH2th:=23; else  OnH2th:=BS_ASCII2INT(BS_Schedule_Str_R[ 8],BS_Schedule_Str_R[ 9])      ; end_if;  **)
		(* if - Cond *)
		LD BS_Schedule_Str_R[8]
		BS_ASCII2INT BS_Schedule_Str_R[9]
		LT 0
		JMPCN ODK_SKIP_00000000000000S_000000000000001

			(* then - Stmts *)

			(* assign - Stmt *)
			LD 0
			ST OnH2th

			JMP ODK_END_IF_00000000000000S

		(* elseif - Cond *) 
		ODK_SKIP_00000000000000S_000000000000001:
		LD BS_Schedule_Str_R[8]
		BS_ASCII2INT BS_Schedule_Str_R[9]
		GT 23
		JMPCN ODK_SKIP_00000000000000S_000000000000002

			(* elsif - Stmts *)

			(* assign - Stmt *)
			LD 23
			ST OnH2th

			JMP ODK_END_IF_00000000000000S

		(* else *) 
		ODK_SKIP_00000000000000S_000000000000002:

			(* else - Stmts *)

			(* assign - Stmt *)
			LD BS_Schedule_Str_R[8]
			BS_ASCII2INT BS_Schedule_Str_R[9]
			ST OnH2th

		(* if - End *) 
		ODK_END_IF_00000000000000S:

(** 	if BS_ASCII2INT(BS_Schedule_Str_R[10],BS_Schedule_Str_R[11])<0 then  OnM2th:=0; elsif BS_ASCII2INT(BS_Schedule_Str_R[10],BS_Schedule_Str_R[11])+Delay>59 then  OnM2th:=59; else  OnM2th:=BS_ASCII2INT(BS_Schedule_Str_R[10],BS_Schedule_Str_R[11])+Delay; end_if;  **)
		(* if - Cond *)
		LD BS_Schedule_Str_R[10]
		BS_ASCII2INT BS_Schedule_Str_R[11]
		LT 0
		JMPCN ODK_SKIP_00000000000000T_000000000000001

			(* then - Stmts *)

			(* assign - Stmt *)
			LD 0
			ST OnM2th

			JMP ODK_END_IF_00000000000000T

		(* elseif - Cond *) 
		ODK_SKIP_00000000000000T_000000000000001:
		LD BS_Schedule_Str_R[10]
		BS_ASCII2INT BS_Schedule_Str_R[11]
		ADD Delay
		GT 59
		JMPCN ODK_SKIP_00000000000000T_000000000000002

			(* elsif - Stmts *)

			(* assign - Stmt *)
			LD 59
			ST OnM2th

			JMP ODK_END_IF_00000000000000T

		(* else *) 
		ODK_SKIP_00000000000000T_000000000000002:

			(* else - Stmts *)

			(* assign - Stmt *)
			LD BS_Schedule_Str_R[10]
			BS_ASCII2INT BS_Schedule_Str_R[11]
			ADD Delay
			ST OnM2th

		(* if - End *) 
		ODK_END_IF_00000000000000T:

(** 	if BS_ASCII2INT(BS_Schedule_Str_R[12],BS_Schedule_Str_R[13])<0 then OffH2th:=0; elsif BS_ASCII2INT(BS_Schedule_Str_R[12],BS_Schedule_Str_R[13])      >23 then OffH2th:=23; else OffH2th:=BS_ASCII2INT(BS_Schedule_Str_R[12],BS_Schedule_Str_R[13])      ; end_if;  **)
		(* if - Cond *)
		LD BS_Schedule_Str_R[12]
		BS_ASCII2INT BS_Schedule_Str_R[13]
		LT 0
		JMPCN ODK_SKIP_00000000000000U_000000000000001

			(* then - Stmts *)

			(* assign - Stmt *)
			LD 0
			ST OffH2th

			JMP ODK_END_IF_00000000000000U

		(* elseif - Cond *) 
		ODK_SKIP_00000000000000U_000000000000001:
		LD BS_Schedule_Str_R[12]
		BS_ASCII2INT BS_Schedule_Str_R[13]
		GT 23
		JMPCN ODK_SKIP_00000000000000U_000000000000002

			(* elsif - Stmts *)

			(* assign - Stmt *)
			LD 23
			ST OffH2th

			JMP ODK_END_IF_00000000000000U

		(* else *) 
		ODK_SKIP_00000000000000U_000000000000002:

			(* else - Stmts *)

			(* assign - Stmt *)
			LD BS_Schedule_Str_R[12]
			BS_ASCII2INT BS_Schedule_Str_R[13]
			ST OffH2th

		(* if - End *) 
		ODK_END_IF_00000000000000U:

(** 	if BS_ASCII2INT(BS_Schedule_Str_R[14],BS_Schedule_Str_R[15])<0 then OffM2th:=0; elsif BS_ASCII2INT(BS_Schedule_Str_R[14],BS_Schedule_Str_R[15])+Delay>59 then OffM2th:=59; else OffM2th:=BS_ASCII2INT(BS_Schedule_Str_R[14],BS_Schedule_Str_R[15])+Delay; end_if;  **)
		(* if - Cond *)
		LD BS_Schedule_Str_R[14]
		BS_ASCII2INT BS_Schedule_Str_R[15]
		LT 0
		JMPCN ODK_SKIP_00000000000000V_000000000000001

			(* then - Stmts *)

			(* assign - Stmt *)
			LD 0
			ST OffM2th

			JMP ODK_END_IF_00000000000000V

		(* elseif - Cond *) 
		ODK_SKIP_00000000000000V_000000000000001:
		LD BS_Schedule_Str_R[14]
		BS_ASCII2INT BS_Schedule_Str_R[15]
		ADD Delay
		GT 59
		JMPCN ODK_SKIP_00000000000000V_000000000000002

			(* elsif - Stmts *)

			(* assign - Stmt *)
			LD 59
			ST OffM2th

			JMP ODK_END_IF_00000000000000V

		(* else *) 
		ODK_SKIP_00000000000000V_000000000000002:

			(* else - Stmts *)

			(* assign - Stmt *)
			LD BS_Schedule_Str_R[14]
			BS_ASCII2INT BS_Schedule_Str_R[15]
			ADD Delay
			ST OffM2th

		(* if - End *) 
		ODK_END_IF_00000000000000V:

(**  **)
(** 	if BS_ASCII2INT(BS_Schedule_Str_R[16],BS_Schedule_Str_R[17])<0 then  OnH3th:=0; elsif BS_ASCII2INT(BS_Schedule_Str_R[16],BS_Schedule_Str_R[17])      >23 then  OnH3th:=23; else  OnH3th:=BS_ASCII2INT(BS_Schedule_Str_R[16],BS_Schedule_Str_R[17])      ; end_if;  **)
		(* if - Cond *)
		LD BS_Schedule_Str_R[16]
		BS_ASCII2INT BS_Schedule_Str_R[17]
		LT 0
		JMPCN ODK_SKIP_00000000000000W_000000000000001

			(* then - Stmts *)

			(* assign - Stmt *)
			LD 0
			ST OnH3th

			JMP ODK_END_IF_00000000000000W

		(* elseif - Cond *) 
		ODK_SKIP_00000000000000W_000000000000001:
		LD BS_Schedule_Str_R[16]
		BS_ASCII2INT BS_Schedule_Str_R[17]
		GT 23
		JMPCN ODK_SKIP_00000000000000W_000000000000002

			(* elsif - Stmts *)

			(* assign - Stmt *)
			LD 23
			ST OnH3th

			JMP ODK_END_IF_00000000000000W

		(* else *) 
		ODK_SKIP_00000000000000W_000000000000002:

			(* else - Stmts *)

			(* assign - Stmt *)
			LD BS_Schedule_Str_R[16]
			BS_ASCII2INT BS_Schedule_Str_R[17]
			ST OnH3th

		(* if - End *) 
		ODK_END_IF_00000000000000W:

(** 	if BS_ASCII2INT(BS_Schedule_Str_R[18],BS_Schedule_Str_R[19])<0 then  OnM3th:=0; elsif BS_ASCII2INT(BS_Schedule_Str_R[18],BS_Schedule_Str_R[19])+Delay>59 then  OnM3th:=59; else  OnM3th:=BS_ASCII2INT(BS_Schedule_Str_R[18],BS_Schedule_Str_R[19])+Delay; end_if;  **)
		(* if - Cond *)
		LD BS_Schedule_Str_R[18]
		BS_ASCII2INT BS_Schedule_Str_R[19]
		LT 0
		JMPCN ODK_SKIP_00000000000000X_000000000000001

			(* then - Stmts *)

			(* assign - Stmt *)
			LD 0
			ST OnM3th

			JMP ODK_END_IF_00000000000000X

		(* elseif - Cond *) 
		ODK_SKIP_00000000000000X_000000000000001:
		LD BS_Schedule_Str_R[18]
		BS_ASCII2INT BS_Schedule_Str_R[19]
		ADD Delay
		GT 59
		JMPCN ODK_SKIP_00000000000000X_000000000000002

			(* elsif - Stmts *)

			(* assign - Stmt *)
			LD 59
			ST OnM3th

			JMP ODK_END_IF_00000000000000X

		(* else *) 
		ODK_SKIP_00000000000000X_000000000000002:

			(* else - Stmts *)

			(* assign - Stmt *)
			LD BS_Schedule_Str_R[18]
			BS_ASCII2INT BS_Schedule_Str_R[19]
			ADD Delay
			ST OnM3th

		(* if - End *) 
		ODK_END_IF_00000000000000X:

(** 	if BS_ASCII2INT(BS_Schedule_Str_R[20],BS_Schedule_Str_R[21])<0 then OffH3th:=0; elsif BS_ASCII2INT(BS_Schedule_Str_R[20],BS_Schedule_Str_R[21])      >23 then OffH3th:=23; else OffH3th:=BS_ASCII2INT(BS_Schedule_Str_R[20],BS_Schedule_Str_R[21])      ; end_if;  **)
		(* if - Cond *)
		LD BS_Schedule_Str_R[20]
		BS_ASCII2INT BS_Schedule_Str_R[21]
		LT 0
		JMPCN ODK_SKIP_00000000000000Y_000000000000001

			(* then - Stmts *)

			(* assign - Stmt *)
			LD 0
			ST OffH3th

			JMP ODK_END_IF_00000000000000Y

		(* elseif - Cond *) 
		ODK_SKIP_00000000000000Y_000000000000001:
		LD BS_Schedule_Str_R[20]
		BS_ASCII2INT BS_Schedule_Str_R[21]
		GT 23
		JMPCN ODK_SKIP_00000000000000Y_000000000000002

			(* elsif - Stmts *)

			(* assign - Stmt *)
			LD 23
			ST OffH3th

			JMP ODK_END_IF_00000000000000Y

		(* else *) 
		ODK_SKIP_00000000000000Y_000000000000002:

			(* else - Stmts *)

			(* assign - Stmt *)
			LD BS_Schedule_Str_R[20]
			BS_ASCII2INT BS_Schedule_Str_R[21]
			ST OffH3th

		(* if - End *) 
		ODK_END_IF_00000000000000Y:

(** 	if BS_ASCII2INT(BS_Schedule_Str_R[22],BS_Schedule_Str_R[23])<0 then OffM3th:=0; elsif BS_ASCII2INT(BS_Schedule_Str_R[22],BS_Schedule_Str_R[23])+Delay>59 then OffM3th:=59; else OffM3th:=BS_ASCII2INT(BS_Schedule_Str_R[22],BS_Schedule_Str_R[23])+Delay; end_if;  **)
		(* if - Cond *)
		LD BS_Schedule_Str_R[22]
		BS_ASCII2INT BS_Schedule_Str_R[23]
		LT 0
		JMPCN ODK_SKIP_00000000000000Z_000000000000001

			(* then - Stmts *)

			(* assign - Stmt *)
			LD 0
			ST OffM3th

			JMP ODK_END_IF_00000000000000Z

		(* elseif - Cond *) 
		ODK_SKIP_00000000000000Z_000000000000001:
		LD BS_Schedule_Str_R[22]
		BS_ASCII2INT BS_Schedule_Str_R[23]
		ADD Delay
		GT 59
		JMPCN ODK_SKIP_00000000000000Z_000000000000002

			(* elsif - Stmts *)

			(* assign - Stmt *)
			LD 59
			ST OffM3th

			JMP ODK_END_IF_00000000000000Z

		(* else *) 
		ODK_SKIP_00000000000000Z_000000000000002:

			(* else - Stmts *)

			(* assign - Stmt *)
			LD BS_Schedule_Str_R[22]
			BS_ASCII2INT BS_Schedule_Str_R[23]
			ADD Delay
			ST OffM3th

		(* if - End *) 
		ODK_END_IF_00000000000000Z:

(**  **)
(** 	if BS_ASCII2INT(BS_Schedule_Str_R[24],BS_Schedule_Str_R[25])<0 then  OnH4th:=0; elsif BS_ASCII2INT(BS_Schedule_Str_R[24],BS_Schedule_Str_R[25])      >23 then  OnH4th:=23; else  OnH4th:=BS_ASCII2INT(BS_Schedule_Str_R[24],BS_Schedule_Str_R[25])      ; end_if;  **)
		(* if - Cond *)
		LD BS_Schedule_Str_R[24]
		BS_ASCII2INT BS_Schedule_Str_R[25]
		LT 0
		JMPCN ODK_SKIP_000000000000010_000000000000001

			(* then - Stmts *)

			(* assign - Stmt *)
			LD 0
			ST OnH4th

			JMP ODK_END_IF_000000000000010

		(* elseif - Cond *) 
		ODK_SKIP_000000000000010_000000000000001:
		LD BS_Schedule_Str_R[24]
		BS_ASCII2INT BS_Schedule_Str_R[25]
		GT 23
		JMPCN ODK_SKIP_000000000000010_000000000000002

			(* elsif - Stmts *)

			(* assign - Stmt *)
			LD 23
			ST OnH4th

			JMP ODK_END_IF_000000000000010

		(* else *) 
		ODK_SKIP_000000000000010_000000000000002:

			(* else - Stmts *)

			(* assign - Stmt *)
			LD BS_Schedule_Str_R[24]
			BS_ASCII2INT BS_Schedule_Str_R[25]
			ST OnH4th

		(* if - End *) 
		ODK_END_IF_000000000000010:

(** 	if BS_ASCII2INT(BS_Schedule_Str_R[26],BS_Schedule_Str_R[27])<0 then  OnM4th:=0; elsif BS_ASCII2INT(BS_Schedule_Str_R[26],BS_Schedule_Str_R[27])+Delay>59 then  OnM4th:=59; else  OnM4th:=BS_ASCII2INT(BS_Schedule_Str_R[26],BS_Schedule_Str_R[27])+Delay; end_if;  **)
		(* if - Cond *)
		LD BS_Schedule_Str_R[26]
		BS_ASCII2INT BS_Schedule_Str_R[27]
		LT 0
		JMPCN ODK_SKIP_000000000000011_000000000000001

			(* then - Stmts *)

			(* assign - Stmt *)
			LD 0
			ST OnM4th

			JMP ODK_END_IF_000000000000011

		(* elseif - Cond *) 
		ODK_SKIP_000000000000011_000000000000001:
		LD BS_Schedule_Str_R[26]
		BS_ASCII2INT BS_Schedule_Str_R[27]
		ADD Delay
		GT 59
		JMPCN ODK_SKIP_000000000000011_000000000000002

			(* elsif - Stmts *)

			(* assign - Stmt *)
			LD 59
			ST OnM4th

			JMP ODK_END_IF_000000000000011

		(* else *) 
		ODK_SKIP_000000000000011_000000000000002:

			(* else - Stmts *)

			(* assign - Stmt *)
			LD BS_Schedule_Str_R[26]
			BS_ASCII2INT BS_Schedule_Str_R[27]
			ADD Delay
			ST OnM4th

		(* if - End *) 
		ODK_END_IF_000000000000011:

(** 	if BS_ASCII2INT(BS_Schedule_Str_R[28],BS_Schedule_Str_R[29])<0 then OffH4th:=0; elsif BS_ASCII2INT(BS_Schedule_Str_R[28],BS_Schedule_Str_R[29])      >23 then OffH4th:=23; else OffH4th:=BS_ASCII2INT(BS_Schedule_Str_R[28],BS_Schedule_Str_R[29])      ; end_if;  **)
		(* if - Cond *)
		LD BS_Schedule_Str_R[28]
		BS_ASCII2INT BS_Schedule_Str_R[29]
		LT 0
		JMPCN ODK_SKIP_000000000000012_000000000000001

			(* then - Stmts *)

			(* assign - Stmt *)
			LD 0
			ST OffH4th

			JMP ODK_END_IF_000000000000012

		(* elseif - Cond *) 
		ODK_SKIP_000000000000012_000000000000001:
		LD BS_Schedule_Str_R[28]
		BS_ASCII2INT BS_Schedule_Str_R[29]
		GT 23
		JMPCN ODK_SKIP_000000000000012_000000000000002

			(* elsif - Stmts *)

			(* assign - Stmt *)
			LD 23
			ST OffH4th

			JMP ODK_END_IF_000000000000012

		(* else *) 
		ODK_SKIP_000000000000012_000000000000002:

			(* else - Stmts *)

			(* assign - Stmt *)
			LD BS_Schedule_Str_R[28]
			BS_ASCII2INT BS_Schedule_Str_R[29]
			ST OffH4th

		(* if - End *) 
		ODK_END_IF_000000000000012:

(** 	if BS_ASCII2INT(BS_Schedule_Str_R[30],BS_Schedule_Str_R[31])<0 then OffM4th:=0; elsif BS_ASCII2INT(BS_Schedule_Str_R[30],BS_Schedule_Str_R[31])+Delay>59 then OffM4th:=59; else OffM4th:=BS_ASCII2INT(BS_Schedule_Str_R[30],BS_Schedule_Str_R[31])+Delay; end_if;  **)
		(* if - Cond *)
		LD BS_Schedule_Str_R[30]
		BS_ASCII2INT BS_Schedule_Str_R[31]
		LT 0
		JMPCN ODK_SKIP_000000000000013_000000000000001

			(* then - Stmts *)

			(* assign - Stmt *)
			LD 0
			ST OffM4th

			JMP ODK_END_IF_000000000000013

		(* elseif - Cond *) 
		ODK_SKIP_000000000000013_000000000000001:
		LD BS_Schedule_Str_R[30]
		BS_ASCII2INT BS_Schedule_Str_R[31]
		ADD Delay
		GT 59
		JMPCN ODK_SKIP_000000000000013_000000000000002

			(* elsif - Stmts *)

			(* assign - Stmt *)
			LD 59
			ST OffM4th

			JMP ODK_END_IF_000000000000013

		(* else *) 
		ODK_SKIP_000000000000013_000000000000002:

			(* else - Stmts *)

			(* assign - Stmt *)
			LD BS_Schedule_Str_R[30]
			BS_ASCII2INT BS_Schedule_Str_R[31]
			ADD Delay
			ST OffM4th

		(* if - End *) 
		ODK_END_IF_000000000000013:

		JMP ODK_END_IF_000000000000001

(**  **)
(** end_if;	 **)
	(* if - End *) 
	ODK_SKIP_000000000000001_000000000000001:
	ODK_END_IF_000000000000001:

(**  **)
(** {************************************** ��������ģʽ *********************************************} **)
(**  **)
(** if InputMode=1 then **)
	(* if - Cond *)
	LD InputMode
	EQ 1
	JMPCN ODK_SKIP_000000000000014_000000000000001

		(* then - Stmts *)

(**  **)
(** 	if Mode=0 then **)
		(* if - Cond *)
		LD Mode
		EQ 0
		JMPCN ODK_SKIP_000000000000015_000000000000001

			(* then - Stmts *)

(** 		if WEEK=1 then **)
			(* if - Cond *)
			LD WEEK
			EQ 1
			JMPCN ODK_SKIP_000000000000016_000000000000001

				(* then - Stmts *)

(** 		 **)
(** 		  WXSCH[1].OnH :=W1SCH[1].OnH; **)
				(* assign - Stmt *)
				LD W1SCH[1].OnH
				ST WXSCH[1].OnH

(** 		  WXSCH[1].OnM :=W1SCH[1].OnM; **)
				(* assign - Stmt *)
				LD W1SCH[1].OnM
				ST WXSCH[1].OnM

(** 		  WXSCH[1].OffH:=W1SCH[1].OffH; **)
				(* assign - Stmt *)
				LD W1SCH[1].OffH
				ST WXSCH[1].OffH

(** 		  WXSCH[1].OffM:=W1SCH[1].OffM; **)
				(* assign - Stmt *)
				LD W1SCH[1].OffM
				ST WXSCH[1].OffM

(** 		  WXSCH[2].OnH :=W1SCH[2].OnH; **)
				(* assign - Stmt *)
				LD W1SCH[2].OnH
				ST WXSCH[2].OnH

(** 		  WXSCH[2].OnM :=W1SCH[2].OnM; **)
				(* assign - Stmt *)
				LD W1SCH[2].OnM
				ST WXSCH[2].OnM

(** 		  WXSCH[2].OffH:=W1SCH[2].OffH; **)
				(* assign - Stmt *)
				LD W1SCH[2].OffH
				ST WXSCH[2].OffH

(** 		  WXSCH[2].OffM:=W1SCH[2].OffM; **)
				(* assign - Stmt *)
				LD W1SCH[2].OffM
				ST WXSCH[2].OffM

(** 		  WXSCH[3].OnH :=W1SCH[3].OnH; **)
				(* assign - Stmt *)
				LD W1SCH[3].OnH
				ST WXSCH[3].OnH

(** 		  WXSCH[3].OnM :=W1SCH[3].OnM; **)
				(* assign - Stmt *)
				LD W1SCH[3].OnM
				ST WXSCH[3].OnM

(** 		  WXSCH[3].OffH:=W1SCH[3].OffH; **)
				(* assign - Stmt *)
				LD W1SCH[3].OffH
				ST WXSCH[3].OffH

(** 		  WXSCH[3].OffM:=W1SCH[3].OffM; **)
				(* assign - Stmt *)
				LD W1SCH[3].OffM
				ST WXSCH[3].OffM

(** 		  WXSCH[4].OnH :=W1SCH[4].OnH; **)
				(* assign - Stmt *)
				LD W1SCH[4].OnH
				ST WXSCH[4].OnH

(** 		  WXSCH[4].OnM :=W1SCH[4].OnM; **)
				(* assign - Stmt *)
				LD W1SCH[4].OnM
				ST WXSCH[4].OnM

(** 		  WXSCH[4].OffH:=W1SCH[4].OffH; **)
				(* assign - Stmt *)
				LD W1SCH[4].OffH
				ST WXSCH[4].OffH

(** 		  WXSCH[4].OffM:=W1SCH[4].OffM; **)
				(* assign - Stmt *)
				LD W1SCH[4].OffM
				ST WXSCH[4].OffM

				JMP ODK_END_IF_000000000000016

(** 	 **)
(** 		end_if;	 **)
			(* if - End *) 
			ODK_SKIP_000000000000016_000000000000001:
			ODK_END_IF_000000000000016:

(** 		if WEEK=2 then **)
			(* if - Cond *)
			LD WEEK
			EQ 2
			JMPCN ODK_SKIP_000000000000017_000000000000001

				(* then - Stmts *)

(**  **)
(** 		  WXSCH[1].OnH :=W2SCH[1].OnH; **)
				(* assign - Stmt *)
				LD W2SCH[1].OnH
				ST WXSCH[1].OnH

(** 		  WXSCH[1].OnM :=W2SCH[1].OnM; **)
				(* assign - Stmt *)
				LD W2SCH[1].OnM
				ST WXSCH[1].OnM

(** 		  WXSCH[1].OffH:=W2SCH[1].OffH; **)
				(* assign - Stmt *)
				LD W2SCH[1].OffH
				ST WXSCH[1].OffH

(** 		  WXSCH[1].OffM:=W2SCH[1].OffM; **)
				(* assign - Stmt *)
				LD W2SCH[1].OffM
				ST WXSCH[1].OffM

(** 		  WXSCH[2].OnH :=W2SCH[2].OnH; **)
				(* assign - Stmt *)
				LD W2SCH[2].OnH
				ST WXSCH[2].OnH

(** 		  WXSCH[2].OnM :=W2SCH[2].OnM; **)
				(* assign - Stmt *)
				LD W2SCH[2].OnM
				ST WXSCH[2].OnM

(** 		  WXSCH[2].OffH:=W2SCH[2].OffH; **)
				(* assign - Stmt *)
				LD W2SCH[2].OffH
				ST WXSCH[2].OffH

(** 		  WXSCH[2].OffM:=W2SCH[2].OffM; **)
				(* assign - Stmt *)
				LD W2SCH[2].OffM
				ST WXSCH[2].OffM

(** 		  WXSCH[3].OnH :=W2SCH[3].OnH; **)
				(* assign - Stmt *)
				LD W2SCH[3].OnH
				ST WXSCH[3].OnH

(** 		  WXSCH[3].OnM :=W2SCH[3].OnM; **)
				(* assign - Stmt *)
				LD W2SCH[3].OnM
				ST WXSCH[3].OnM

(** 		  WXSCH[3].OffH:=W2SCH[3].OffH; **)
				(* assign - Stmt *)
				LD W2SCH[3].OffH
				ST WXSCH[3].OffH

(** 		  WXSCH[3].OffM:=W2SCH[3].OffM; **)
				(* assign - Stmt *)
				LD W2SCH[3].OffM
				ST WXSCH[3].OffM

(** 		  WXSCH[4].OnH :=W2SCH[4].OnH; **)
				(* assign - Stmt *)
				LD W2SCH[4].OnH
				ST WXSCH[4].OnH

(** 		  WXSCH[4].OnM :=W2SCH[4].OnM; **)
				(* assign - Stmt *)
				LD W2SCH[4].OnM
				ST WXSCH[4].OnM

(** 		  WXSCH[4].OffH:=W2SCH[4].OffH; **)
				(* assign - Stmt *)
				LD W2SCH[4].OffH
				ST WXSCH[4].OffH

(** 		  WXSCH[4].OffM:=W2SCH[4].OffM; **)
				(* assign - Stmt *)
				LD W2SCH[4].OffM
				ST WXSCH[4].OffM

				JMP ODK_END_IF_000000000000017

(**  **)
(** 		end_if;	 **)
			(* if - End *) 
			ODK_SKIP_000000000000017_000000000000001:
			ODK_END_IF_000000000000017:

(** 		if WEEK=3 then **)
			(* if - Cond *)
			LD WEEK
			EQ 3
			JMPCN ODK_SKIP_000000000000018_000000000000001

				(* then - Stmts *)

(**  **)
(** 		  WXSCH[1].OnH :=W3SCH[1].OnH; **)
				(* assign - Stmt *)
				LD W3SCH[1].OnH
				ST WXSCH[1].OnH

(** 		  WXSCH[1].OnM :=W3SCH[1].OnM; **)
				(* assign - Stmt *)
				LD W3SCH[1].OnM
				ST WXSCH[1].OnM

(** 		  WXSCH[1].OffH:=W3SCH[1].OffH; **)
				(* assign - Stmt *)
				LD W3SCH[1].OffH
				ST WXSCH[1].OffH

(** 		  WXSCH[1].OffM:=W3SCH[1].OffM; **)
				(* assign - Stmt *)
				LD W3SCH[1].OffM
				ST WXSCH[1].OffM

(** 		  WXSCH[2].OnH :=W3SCH[2].OnH; **)
				(* assign - Stmt *)
				LD W3SCH[2].OnH
				ST WXSCH[2].OnH

(** 		  WXSCH[2].OnM :=W3SCH[2].OnM; **)
				(* assign - Stmt *)
				LD W3SCH[2].OnM
				ST WXSCH[2].OnM

(** 		  WXSCH[2].OffH:=W3SCH[2].OffH; **)
				(* assign - Stmt *)
				LD W3SCH[2].OffH
				ST WXSCH[2].OffH

(** 		  WXSCH[2].OffM:=W3SCH[2].OffM; **)
				(* assign - Stmt *)
				LD W3SCH[2].OffM
				ST WXSCH[2].OffM

(** 		  WXSCH[3].OnH :=W3SCH[3].OnH; **)
				(* assign - Stmt *)
				LD W3SCH[3].OnH
				ST WXSCH[3].OnH

(** 		  WXSCH[3].OnM :=W3SCH[3].OnM; **)
				(* assign - Stmt *)
				LD W3SCH[3].OnM
				ST WXSCH[3].OnM

(** 		  WXSCH[3].OffH:=W3SCH[3].OffH; **)
				(* assign - Stmt *)
				LD W3SCH[3].OffH
				ST WXSCH[3].OffH

(** 		  WXSCH[3].OffM:=W3SCH[3].OffM; **)
				(* assign - Stmt *)
				LD W3SCH[3].OffM
				ST WXSCH[3].OffM

(** 		  WXSCH[4].OnH :=W3SCH[4].OnH; **)
				(* assign - Stmt *)
				LD W3SCH[4].OnH
				ST WXSCH[4].OnH

(** 		  WXSCH[4].OnM :=W3SCH[4].OnM; **)
				(* assign - Stmt *)
				LD W3SCH[4].OnM
				ST WXSCH[4].OnM

(** 		  WXSCH[4].OffH:=W3SCH[4].OffH; **)
				(* assign - Stmt *)
				LD W3SCH[4].OffH
				ST WXSCH[4].OffH

(** 		  WXSCH[4].OffM:=W3SCH[4].OffM; **)
				(* assign - Stmt *)
				LD W3SCH[4].OffM
				ST WXSCH[4].OffM

				JMP ODK_END_IF_000000000000018

(**  **)
(** 		end_if;	 **)
			(* if - End *) 
			ODK_SKIP_000000000000018_000000000000001:
			ODK_END_IF_000000000000018:

(** 		if WEEK=4 then **)
			(* if - Cond *)
			LD WEEK
			EQ 4
			JMPCN ODK_SKIP_000000000000019_000000000000001

				(* then - Stmts *)

(**  **)
(** 		  WXSCH[1].OnH :=W4SCH[1].OnH; **)
				(* assign - Stmt *)
				LD W4SCH[1].OnH
				ST WXSCH[1].OnH

(** 		  WXSCH[1].OnM :=W4SCH[1].OnM; **)
				(* assign - Stmt *)
				LD W4SCH[1].OnM
				ST WXSCH[1].OnM

(** 		  WXSCH[1].OffH:=W4SCH[1].OffH; **)
				(* assign - Stmt *)
				LD W4SCH[1].OffH
				ST WXSCH[1].OffH

(** 		  WXSCH[1].OffM:=W4SCH[1].OffM; **)
				(* assign - Stmt *)
				LD W4SCH[1].OffM
				ST WXSCH[1].OffM

(** 		  WXSCH[2].OnH :=W4SCH[2].OnH; **)
				(* assign - Stmt *)
				LD W4SCH[2].OnH
				ST WXSCH[2].OnH

(** 		  WXSCH[2].OnM :=W4SCH[2].OnM; **)
				(* assign - Stmt *)
				LD W4SCH[2].OnM
				ST WXSCH[2].OnM

(** 		  WXSCH[2].OffH:=W4SCH[2].OffH; **)
				(* assign - Stmt *)
				LD W4SCH[2].OffH
				ST WXSCH[2].OffH

(** 		  WXSCH[2].OffM:=W4SCH[2].OffM; **)
				(* assign - Stmt *)
				LD W4SCH[2].OffM
				ST WXSCH[2].OffM

(** 		  WXSCH[3].OnH :=W4SCH[3].OnH; **)
				(* assign - Stmt *)
				LD W4SCH[3].OnH
				ST WXSCH[3].OnH

(** 		  WXSCH[3].OnM :=W4SCH[3].OnM; **)
				(* assign - Stmt *)
				LD W4SCH[3].OnM
				ST WXSCH[3].OnM

(** 		  WXSCH[3].OffH:=W4SCH[3].OffH; **)
				(* assign - Stmt *)
				LD W4SCH[3].OffH
				ST WXSCH[3].OffH

(** 		  WXSCH[3].OffM:=W4SCH[3].OffM; **)
				(* assign - Stmt *)
				LD W4SCH[3].OffM
				ST WXSCH[3].OffM

(** 		  WXSCH[4].OnH :=W4SCH[4].OnH; **)
				(* assign - Stmt *)
				LD W4SCH[4].OnH
				ST WXSCH[4].OnH

(** 		  WXSCH[4].OnM :=W4SCH[4].OnM; **)
				(* assign - Stmt *)
				LD W4SCH[4].OnM
				ST WXSCH[4].OnM

(** 		  WXSCH[4].OffH:=W4SCH[4].OffH; **)
				(* assign - Stmt *)
				LD W4SCH[4].OffH
				ST WXSCH[4].OffH

(** 		  WXSCH[4].OffM:=W4SCH[4].OffM; **)
				(* assign - Stmt *)
				LD W4SCH[4].OffM
				ST WXSCH[4].OffM

				JMP ODK_END_IF_000000000000019

(** 		   **)
(** 		end_if;	 **)
			(* if - End *) 
			ODK_SKIP_000000000000019_000000000000001:
			ODK_END_IF_000000000000019:

(** 		if WEEK=5 then **)
			(* if - Cond *)
			LD WEEK
			EQ 5
			JMPCN ODK_SKIP_00000000000001A_000000000000001

				(* then - Stmts *)

(**  **)
(** 		  WXSCH[1].OnH :=W5SCH[1].OnH; **)
				(* assign - Stmt *)
				LD W5SCH[1].OnH
				ST WXSCH[1].OnH

(** 		  WXSCH[1].OnM :=W5SCH[1].OnM; **)
				(* assign - Stmt *)
				LD W5SCH[1].OnM
				ST WXSCH[1].OnM

(** 		  WXSCH[1].OffH:=W5SCH[1].OffH; **)
				(* assign - Stmt *)
				LD W5SCH[1].OffH
				ST WXSCH[1].OffH

(** 		  WXSCH[1].OffM:=W5SCH[1].OffM; **)
				(* assign - Stmt *)
				LD W5SCH[1].OffM
				ST WXSCH[1].OffM

(** 		  WXSCH[2].OnH :=W5SCH[2].OnH; **)
				(* assign - Stmt *)
				LD W5SCH[2].OnH
				ST WXSCH[2].OnH

(** 		  WXSCH[2].OnM :=W5SCH[2].OnM; **)
				(* assign - Stmt *)
				LD W5SCH[2].OnM
				ST WXSCH[2].OnM

(** 		  WXSCH[2].OffH:=W5SCH[2].OffH; **)
				(* assign - Stmt *)
				LD W5SCH[2].OffH
				ST WXSCH[2].OffH

(** 		  WXSCH[2].OffM:=W5SCH[2].OffM; **)
				(* assign - Stmt *)
				LD W5SCH[2].OffM
				ST WXSCH[2].OffM

(** 		  WXSCH[3].OnH :=W5SCH[3].OnH; **)
				(* assign - Stmt *)
				LD W5SCH[3].OnH
				ST WXSCH[3].OnH

(** 		  WXSCH[3].OnM :=W5SCH[3].OnM; **)
				(* assign - Stmt *)
				LD W5SCH[3].OnM
				ST WXSCH[3].OnM

(** 		  WXSCH[3].OffH:=W5SCH[3].OffH; **)
				(* assign - Stmt *)
				LD W5SCH[3].OffH
				ST WXSCH[3].OffH

(** 		  WXSCH[3].OffM:=W5SCH[3].OffM; **)
				(* assign - Stmt *)
				LD W5SCH[3].OffM
				ST WXSCH[3].OffM

(** 		  WXSCH[4].OnH :=W5SCH[4].OnH; **)
				(* assign - Stmt *)
				LD W5SCH[4].OnH
				ST WXSCH[4].OnH

(** 		  WXSCH[4].OnM :=W5SCH[4].OnM; **)
				(* assign - Stmt *)
				LD W5SCH[4].OnM
				ST WXSCH[4].OnM

(** 		  WXSCH[4].OffH:=W5SCH[4].OffH; **)
				(* assign - Stmt *)
				LD W5SCH[4].OffH
				ST WXSCH[4].OffH

(** 		  WXSCH[4].OffM:=W5SCH[4].OffM; **)
				(* assign - Stmt *)
				LD W5SCH[4].OffM
				ST WXSCH[4].OffM

				JMP ODK_END_IF_00000000000001A

(** 		   **)
(** 		end_if;	 **)
			(* if - End *) 
			ODK_SKIP_00000000000001A_000000000000001:
			ODK_END_IF_00000000000001A:

(** 		if WEEK=6 then **)
			(* if - Cond *)
			LD WEEK
			EQ 6
			JMPCN ODK_SKIP_00000000000001B_000000000000001

				(* then - Stmts *)

(**  **)
(** 		  WXSCH[1].OnH :=W6SCH[1].OnH; **)
				(* assign - Stmt *)
				LD W6SCH[1].OnH
				ST WXSCH[1].OnH

(** 		  WXSCH[1].OnM :=W6SCH[1].OnM; **)
				(* assign - Stmt *)
				LD W6SCH[1].OnM
				ST WXSCH[1].OnM

(** 		  WXSCH[1].OffH:=W6SCH[1].OffH; **)
				(* assign - Stmt *)
				LD W6SCH[1].OffH
				ST WXSCH[1].OffH

(** 		  WXSCH[1].OffM:=W6SCH[1].OffM; **)
				(* assign - Stmt *)
				LD W6SCH[1].OffM
				ST WXSCH[1].OffM

(** 		  WXSCH[2].OnH :=W6SCH[2].OnH; **)
				(* assign - Stmt *)
				LD W6SCH[2].OnH
				ST WXSCH[2].OnH

(** 		  WXSCH[2].OnM :=W6SCH[2].OnM; **)
				(* assign - Stmt *)
				LD W6SCH[2].OnM
				ST WXSCH[2].OnM

(** 		  WXSCH[2].OffH:=W6SCH[2].OffH; **)
				(* assign - Stmt *)
				LD W6SCH[2].OffH
				ST WXSCH[2].OffH

(** 		  WXSCH[2].OffM:=W6SCH[2].OffM; **)
				(* assign - Stmt *)
				LD W6SCH[2].OffM
				ST WXSCH[2].OffM

(** 		  WXSCH[3].OnH :=W6SCH[3].OnH; **)
				(* assign - Stmt *)
				LD W6SCH[3].OnH
				ST WXSCH[3].OnH

(** 		  WXSCH[3].OnM :=W6SCH[3].OnM; **)
				(* assign - Stmt *)
				LD W6SCH[3].OnM
				ST WXSCH[3].OnM

(** 		  WXSCH[3].OffH:=W6SCH[3].OffH; **)
				(* assign - Stmt *)
				LD W6SCH[3].OffH
				ST WXSCH[3].OffH

(** 		  WXSCH[3].OffM:=W6SCH[3].OffM; **)
				(* assign - Stmt *)
				LD W6SCH[3].OffM
				ST WXSCH[3].OffM

(** 		  WXSCH[4].OnH :=W6SCH[4].OnH; **)
				(* assign - Stmt *)
				LD W6SCH[4].OnH
				ST WXSCH[4].OnH

(** 		  WXSCH[4].OnM :=W6SCH[4].OnM; **)
				(* assign - Stmt *)
				LD W6SCH[4].OnM
				ST WXSCH[4].OnM

(** 		  WXSCH[4].OffH:=W6SCH[4].OffH; **)
				(* assign - Stmt *)
				LD W6SCH[4].OffH
				ST WXSCH[4].OffH

(** 		  WXSCH[4].OffM:=W6SCH[4].OffM; **)
				(* assign - Stmt *)
				LD W6SCH[4].OffM
				ST WXSCH[4].OffM

				JMP ODK_END_IF_00000000000001B

(** 		   **)
(** 		end_if;	 **)
			(* if - End *) 
			ODK_SKIP_00000000000001B_000000000000001:
			ODK_END_IF_00000000000001B:

(** 		if WEEK=7 then **)
			(* if - Cond *)
			LD WEEK
			EQ 7
			JMPCN ODK_SKIP_00000000000001C_000000000000001

				(* then - Stmts *)

(**  **)
(** 		  WXSCH[1].OnH :=W7SCH[1].OnH; **)
				(* assign - Stmt *)
				LD W7SCH[1].OnH
				ST WXSCH[1].OnH

(** 		  WXSCH[1].OnM :=W7SCH[1].OnM; **)
				(* assign - Stmt *)
				LD W7SCH[1].OnM
				ST WXSCH[1].OnM

(** 		  WXSCH[1].OffH:=W7SCH[1].OffH; **)
				(* assign - Stmt *)
				LD W7SCH[1].OffH
				ST WXSCH[1].OffH

(** 		  WXSCH[1].OffM:=W7SCH[1].OffM; **)
				(* assign - Stmt *)
				LD W7SCH[1].OffM
				ST WXSCH[1].OffM

(** 		  WXSCH[2].OnH :=W7SCH[2].OnH; **)
				(* assign - Stmt *)
				LD W7SCH[2].OnH
				ST WXSCH[2].OnH

(** 		  WXSCH[2].OnM :=W7SCH[2].OnM; **)
				(* assign - Stmt *)
				LD W7SCH[2].OnM
				ST WXSCH[2].OnM

(** 		  WXSCH[2].OffH:=W7SCH[2].OffH; **)
				(* assign - Stmt *)
				LD W7SCH[2].OffH
				ST WXSCH[2].OffH

(** 		  WXSCH[2].OffM:=W7SCH[2].OffM; **)
				(* assign - Stmt *)
				LD W7SCH[2].OffM
				ST WXSCH[2].OffM

(** 		  WXSCH[3].OnH :=W7SCH[3].OnH; **)
				(* assign - Stmt *)
				LD W7SCH[3].OnH
				ST WXSCH[3].OnH

(** 		  WXSCH[3].OnM :=W7SCH[3].OnM; **)
				(* assign - Stmt *)
				LD W7SCH[3].OnM
				ST WXSCH[3].OnM

(** 		  WXSCH[3].OffH:=W7SCH[3].OffH; **)
				(* assign - Stmt *)
				LD W7SCH[3].OffH
				ST WXSCH[3].OffH

(** 		  WXSCH[3].OffM:=W7SCH[3].OffM; **)
				(* assign - Stmt *)
				LD W7SCH[3].OffM
				ST WXSCH[3].OffM

(** 		  WXSCH[4].OnH :=W7SCH[4].OnH; **)
				(* assign - Stmt *)
				LD W7SCH[4].OnH
				ST WXSCH[4].OnH

(** 		  WXSCH[4].OnM :=W7SCH[4].OnM; **)
				(* assign - Stmt *)
				LD W7SCH[4].OnM
				ST WXSCH[4].OnM

(** 		  WXSCH[4].OffH:=W7SCH[4].OffH; **)
				(* assign - Stmt *)
				LD W7SCH[4].OffH
				ST WXSCH[4].OffH

(** 		  WXSCH[4].OffM:=W7SCH[4].OffM; **)
				(* assign - Stmt *)
				LD W7SCH[4].OffM
				ST WXSCH[4].OffM

				JMP ODK_END_IF_00000000000001C

(** 		   **)
(** 		end_if;				 **)
			(* if - End *) 
			ODK_SKIP_00000000000001C_000000000000001:
			ODK_END_IF_00000000000001C:

			JMP ODK_END_IF_000000000000015

(** 	end_if; **)
		(* if - End *) 
		ODK_SKIP_000000000000015_000000000000001:
		ODK_END_IF_000000000000015:

(** 	 **)
(** 	if Mode=1 then **)
		(* if - Cond *)
		LD Mode
		EQ 1
		JMPCN ODK_SKIP_00000000000001D_000000000000001

			(* then - Stmts *)

(** 	 **)
(** 		if WEEK=7 or WEEK<=4 then **)
			(* if - Cond *)
			LD WEEK
			EQ 7
			OR ( WEEK
				LE 4
			)
			JMPCN ODK_SKIP_00000000000001E_000000000000001

				(* then - Stmts *)

(** 		 **)
(** 		  WXSCH[1].OnH :=W1SCH[1].OnH; **)
				(* assign - Stmt *)
				LD W1SCH[1].OnH
				ST WXSCH[1].OnH

(** 		  WXSCH[1].OnM :=W1SCH[1].OnM; **)
				(* assign - Stmt *)
				LD W1SCH[1].OnM
				ST WXSCH[1].OnM

(** 		  WXSCH[1].OffH:=W1SCH[1].OffH; **)
				(* assign - Stmt *)
				LD W1SCH[1].OffH
				ST WXSCH[1].OffH

(** 		  WXSCH[1].OffM:=W1SCH[1].OffM; **)
				(* assign - Stmt *)
				LD W1SCH[1].OffM
				ST WXSCH[1].OffM

(** 		  WXSCH[2].OnH :=W1SCH[2].OnH; **)
				(* assign - Stmt *)
				LD W1SCH[2].OnH
				ST WXSCH[2].OnH

(** 		  WXSCH[2].OnM :=W1SCH[2].OnM; **)
				(* assign - Stmt *)
				LD W1SCH[2].OnM
				ST WXSCH[2].OnM

(** 		  WXSCH[2].OffH:=W1SCH[2].OffH; **)
				(* assign - Stmt *)
				LD W1SCH[2].OffH
				ST WXSCH[2].OffH

(** 		  WXSCH[2].OffM:=W1SCH[2].OffM; **)
				(* assign - Stmt *)
				LD W1SCH[2].OffM
				ST WXSCH[2].OffM

(** 		  WXSCH[3].OnH :=W1SCH[3].OnH; **)
				(* assign - Stmt *)
				LD W1SCH[3].OnH
				ST WXSCH[3].OnH

(** 		  WXSCH[3].OnM :=W1SCH[3].OnM; **)
				(* assign - Stmt *)
				LD W1SCH[3].OnM
				ST WXSCH[3].OnM

(** 		  WXSCH[3].OffH:=W1SCH[3].OffH; **)
				(* assign - Stmt *)
				LD W1SCH[3].OffH
				ST WXSCH[3].OffH

(** 		  WXSCH[3].OffM:=W1SCH[3].OffM; **)
				(* assign - Stmt *)
				LD W1SCH[3].OffM
				ST WXSCH[3].OffM

(** 		  WXSCH[4].OnH :=W1SCH[4].OnH; **)
				(* assign - Stmt *)
				LD W1SCH[4].OnH
				ST WXSCH[4].OnH

(** 		  WXSCH[4].OnM :=W1SCH[4].OnM; **)
				(* assign - Stmt *)
				LD W1SCH[4].OnM
				ST WXSCH[4].OnM

(** 		  WXSCH[4].OffH:=W1SCH[4].OffH; **)
				(* assign - Stmt *)
				LD W1SCH[4].OffH
				ST WXSCH[4].OffH

(** 		  WXSCH[4].OffM:=W1SCH[4].OffM; **)
				(* assign - Stmt *)
				LD W1SCH[4].OffM
				ST WXSCH[4].OffM

				JMP ODK_END_IF_00000000000001E

(** 		   **)
(** 		end_if;		 **)
			(* if - End *) 
			ODK_SKIP_00000000000001E_000000000000001:
			ODK_END_IF_00000000000001E:

(**  **)
(** 		if WEEK>=5 and WEEK<=6 then **)
			(* if - Cond *)
			LD WEEK
			GE 5
			AND ( WEEK
				LE 6
			)
			JMPCN ODK_SKIP_00000000000001F_000000000000001

				(* then - Stmts *)

(**  **)
(** 		  WXSCH[1].OnH :=W2SCH[1].OnH; **)
				(* assign - Stmt *)
				LD W2SCH[1].OnH
				ST WXSCH[1].OnH

(** 		  WXSCH[1].OnM :=W2SCH[1].OnM; **)
				(* assign - Stmt *)
				LD W2SCH[1].OnM
				ST WXSCH[1].OnM

(** 		  WXSCH[1].OffH:=W2SCH[1].OffH; **)
				(* assign - Stmt *)
				LD W2SCH[1].OffH
				ST WXSCH[1].OffH

(** 		  WXSCH[1].OffM:=W2SCH[1].OffM; **)
				(* assign - Stmt *)
				LD W2SCH[1].OffM
				ST WXSCH[1].OffM

(** 		  WXSCH[2].OnH :=W2SCH[2].OnH; **)
				(* assign - Stmt *)
				LD W2SCH[2].OnH
				ST WXSCH[2].OnH

(** 		  WXSCH[2].OnM :=W2SCH[2].OnM; **)
				(* assign - Stmt *)
				LD W2SCH[2].OnM
				ST WXSCH[2].OnM

(** 		  WXSCH[2].OffH:=W2SCH[2].OffH; **)
				(* assign - Stmt *)
				LD W2SCH[2].OffH
				ST WXSCH[2].OffH

(** 		  WXSCH[2].OffM:=W2SCH[2].OffM; **)
				(* assign - Stmt *)
				LD W2SCH[2].OffM
				ST WXSCH[2].OffM

(** 		  WXSCH[3].OnH :=W2SCH[3].OnH; **)
				(* assign - Stmt *)
				LD W2SCH[3].OnH
				ST WXSCH[3].OnH

(** 		  WXSCH[3].OnM :=W2SCH[3].OnM; **)
				(* assign - Stmt *)
				LD W2SCH[3].OnM
				ST WXSCH[3].OnM

(** 		  WXSCH[3].OffH:=W2SCH[3].OffH; **)
				(* assign - Stmt *)
				LD W2SCH[3].OffH
				ST WXSCH[3].OffH

(** 		  WXSCH[3].OffM:=W2SCH[3].OffM; **)
				(* assign - Stmt *)
				LD W2SCH[3].OffM
				ST WXSCH[3].OffM

(** 		  WXSCH[4].OnH :=W2SCH[4].OnH; **)
				(* assign - Stmt *)
				LD W2SCH[4].OnH
				ST WXSCH[4].OnH

(** 		  WXSCH[4].OnM :=W2SCH[4].OnM; **)
				(* assign - Stmt *)
				LD W2SCH[4].OnM
				ST WXSCH[4].OnM

(** 		  WXSCH[4].OffH:=W2SCH[4].OffH; **)
				(* assign - Stmt *)
				LD W2SCH[4].OffH
				ST WXSCH[4].OffH

(** 		  WXSCH[4].OffM:=W2SCH[4].OffM; **)
				(* assign - Stmt *)
				LD W2SCH[4].OffM
				ST WXSCH[4].OffM

				JMP ODK_END_IF_00000000000001F

(**  **)
(** 		end_if;	 **)
			(* if - End *) 
			ODK_SKIP_00000000000001F_000000000000001:
			ODK_END_IF_00000000000001F:

			JMP ODK_END_IF_00000000000001D

(** 		 **)
(** 	end_if; **)
		(* if - End *) 
		ODK_SKIP_00000000000001D_000000000000001:
		ODK_END_IF_00000000000001D:

(** 	 **)
(** 	if Mode=2 then **)
		(* if - Cond *)
		LD Mode
		EQ 2
		JMPCN ODK_SKIP_00000000000001G_000000000000001

			(* then - Stmts *)

(** 		 **)
(** 		  WXSCH[1].OnH :=W1SCH[1].OnH; **)
			(* assign - Stmt *)
			LD W1SCH[1].OnH
			ST WXSCH[1].OnH

(** 		  WXSCH[1].OnM :=W1SCH[1].OnM; **)
			(* assign - Stmt *)
			LD W1SCH[1].OnM
			ST WXSCH[1].OnM

(** 		  WXSCH[1].OffH:=W1SCH[1].OffH; **)
			(* assign - Stmt *)
			LD W1SCH[1].OffH
			ST WXSCH[1].OffH

(** 		  WXSCH[1].OffM:=W1SCH[1].OffM; **)
			(* assign - Stmt *)
			LD W1SCH[1].OffM
			ST WXSCH[1].OffM

(** 		  WXSCH[2].OnH :=W1SCH[2].OnH; **)
			(* assign - Stmt *)
			LD W1SCH[2].OnH
			ST WXSCH[2].OnH

(** 		  WXSCH[2].OnM :=W1SCH[2].OnM; **)
			(* assign - Stmt *)
			LD W1SCH[2].OnM
			ST WXSCH[2].OnM

(** 		  WXSCH[2].OffH:=W1SCH[2].OffH; **)
			(* assign - Stmt *)
			LD W1SCH[2].OffH
			ST WXSCH[2].OffH

(** 		  WXSCH[2].OffM:=W1SCH[2].OffM; **)
			(* assign - Stmt *)
			LD W1SCH[2].OffM
			ST WXSCH[2].OffM

(** 		  WXSCH[3].OnH :=W1SCH[3].OnH; **)
			(* assign - Stmt *)
			LD W1SCH[3].OnH
			ST WXSCH[3].OnH

(** 		  WXSCH[3].OnM :=W1SCH[3].OnM; **)
			(* assign - Stmt *)
			LD W1SCH[3].OnM
			ST WXSCH[3].OnM

(** 		  WXSCH[3].OffH:=W1SCH[3].OffH; **)
			(* assign - Stmt *)
			LD W1SCH[3].OffH
			ST WXSCH[3].OffH

(** 		  WXSCH[3].OffM:=W1SCH[3].OffM; **)
			(* assign - Stmt *)
			LD W1SCH[3].OffM
			ST WXSCH[3].OffM

(** 		  WXSCH[4].OnH :=W1SCH[4].OnH; **)
			(* assign - Stmt *)
			LD W1SCH[4].OnH
			ST WXSCH[4].OnH

(** 		  WXSCH[4].OnM :=W1SCH[4].OnM; **)
			(* assign - Stmt *)
			LD W1SCH[4].OnM
			ST WXSCH[4].OnM

(** 		  WXSCH[4].OffH:=W1SCH[4].OffH; **)
			(* assign - Stmt *)
			LD W1SCH[4].OffH
			ST WXSCH[4].OffH

(** 		  WXSCH[4].OffM:=W1SCH[4].OffM; **)
			(* assign - Stmt *)
			LD W1SCH[4].OffM
			ST WXSCH[4].OffM

			JMP ODK_END_IF_00000000000001G

(** 		   **)
(** 	end_if; **)
		(* if - End *) 
		ODK_SKIP_00000000000001G_000000000000001:
		ODK_END_IF_00000000000001G:

(** 	 **)
(** 	if WXSCH[1].OnH <0 then  OnH1th:=0; elsif WXSCH[1].OnH       >23 then  OnH1th:=23; else  OnH1th:=WXSCH[1].OnH       ; end_if;  **)
		(* if - Cond *)
		LD WXSCH[1].OnH
		LT 0
		JMPCN ODK_SKIP_00000000000001H_000000000000001

			(* then - Stmts *)

			(* assign - Stmt *)
			LD 0
			ST OnH1th

			JMP ODK_END_IF_00000000000001H

		(* elseif - Cond *) 
		ODK_SKIP_00000000000001H_000000000000001:
		LD WXSCH[1].OnH
		GT 23
		JMPCN ODK_SKIP_00000000000001H_000000000000002

			(* elsif - Stmts *)

			(* assign - Stmt *)
			LD 23
			ST OnH1th

			JMP ODK_END_IF_00000000000001H

		(* else *) 
		ODK_SKIP_00000000000001H_000000000000002:

			(* else - Stmts *)

			(* assign - Stmt *)
			LD WXSCH[1].OnH
			ST OnH1th

		(* if - End *) 
		ODK_END_IF_00000000000001H:

(** 	if WXSCH[1].OnM <0 then  OnM1th:=0; elsif WXSCH[1].OnM +Delay>59 then  OnM1th:=59; else  OnM1th:=WXSCH[1].OnM +Delay; end_if;  **)
		(* if - Cond *)
		LD WXSCH[1].OnM
		LT 0
		JMPCN ODK_SKIP_00000000000001I_000000000000001

			(* then - Stmts *)

			(* assign - Stmt *)
			LD 0
			ST OnM1th

			JMP ODK_END_IF_00000000000001I

		(* elseif - Cond *) 
		ODK_SKIP_00000000000001I_000000000000001:
		LD WXSCH[1].OnM
		ADD Delay
		GT 59
		JMPCN ODK_SKIP_00000000000001I_000000000000002

			(* elsif - Stmts *)

			(* assign - Stmt *)
			LD 59
			ST OnM1th

			JMP ODK_END_IF_00000000000001I

		(* else *) 
		ODK_SKIP_00000000000001I_000000000000002:

			(* else - Stmts *)

			(* assign - Stmt *)
			LD WXSCH[1].OnM
			ADD Delay
			ST OnM1th

		(* if - End *) 
		ODK_END_IF_00000000000001I:

(** 	if WXSCH[1].OffH<0 then OffH1th:=0; elsif WXSCH[1].OffH      >23 then OffH1th:=23; else OffH1th:=WXSCH[1].OffH      ; end_if;  **)
		(* if - Cond *)
		LD WXSCH[1].OffH
		LT 0
		JMPCN ODK_SKIP_00000000000001J_000000000000001

			(* then - Stmts *)

			(* assign - Stmt *)
			LD 0
			ST OffH1th

			JMP ODK_END_IF_00000000000001J

		(* elseif - Cond *) 
		ODK_SKIP_00000000000001J_000000000000001:
		LD WXSCH[1].OffH
		GT 23
		JMPCN ODK_SKIP_00000000000001J_000000000000002

			(* elsif - Stmts *)

			(* assign - Stmt *)
			LD 23
			ST OffH1th

			JMP ODK_END_IF_00000000000001J

		(* else *) 
		ODK_SKIP_00000000000001J_000000000000002:

			(* else - Stmts *)

			(* assign - Stmt *)
			LD WXSCH[1].OffH
			ST OffH1th

		(* if - End *) 
		ODK_END_IF_00000000000001J:

(** 	if WXSCH[1].OffM<0 then OffM1th:=0; elsif WXSCH[1].OffM+Delay>59 then OffM1th:=59; else OffM1th:=WXSCH[1].OffM+Delay; end_if;  **)
		(* if - Cond *)
		LD WXSCH[1].OffM
		LT 0
		JMPCN ODK_SKIP_00000000000001K_000000000000001

			(* then - Stmts *)

			(* assign - Stmt *)
			LD 0
			ST OffM1th

			JMP ODK_END_IF_00000000000001K

		(* elseif - Cond *) 
		ODK_SKIP_00000000000001K_000000000000001:
		LD WXSCH[1].OffM
		ADD Delay
		GT 59
		JMPCN ODK_SKIP_00000000000001K_000000000000002

			(* elsif - Stmts *)

			(* assign - Stmt *)
			LD 59
			ST OffM1th

			JMP ODK_END_IF_00000000000001K

		(* else *) 
		ODK_SKIP_00000000000001K_000000000000002:

			(* else - Stmts *)

			(* assign - Stmt *)
			LD WXSCH[1].OffM
			ADD Delay
			ST OffM1th

		(* if - End *) 
		ODK_END_IF_00000000000001K:

(**  **)
(** 	if WXSCH[2].OnH <0 then  OnH2th:=0; elsif WXSCH[2].OnH       >23 then  OnH2th:=23; else  OnH2th:=WXSCH[2].OnH       ; end_if;  **)
		(* if - Cond *)
		LD WXSCH[2].OnH
		LT 0
		JMPCN ODK_SKIP_00000000000001L_000000000000001

			(* then - Stmts *)

			(* assign - Stmt *)
			LD 0
			ST OnH2th

			JMP ODK_END_IF_00000000000001L

		(* elseif - Cond *) 
		ODK_SKIP_00000000000001L_000000000000001:
		LD WXSCH[2].OnH
		GT 23
		JMPCN ODK_SKIP_00000000000001L_000000000000002

			(* elsif - Stmts *)

			(* assign - Stmt *)
			LD 23
			ST OnH2th

			JMP ODK_END_IF_00000000000001L

		(* else *) 
		ODK_SKIP_00000000000001L_000000000000002:

			(* else - Stmts *)

			(* assign - Stmt *)
			LD WXSCH[2].OnH
			ST OnH2th

		(* if - End *) 
		ODK_END_IF_00000000000001L:

(** 	if WXSCH[2].OnM <0 then  OnM2th:=0; elsif WXSCH[2].OnM +Delay>59 then  OnM2th:=59; else  OnM2th:=WXSCH[2].OnM +Delay; end_if;  **)
		(* if - Cond *)
		LD WXSCH[2].OnM
		LT 0
		JMPCN ODK_SKIP_00000000000001M_000000000000001

			(* then - Stmts *)

			(* assign - Stmt *)
			LD 0
			ST OnM2th

			JMP ODK_END_IF_00000000000001M

		(* elseif - Cond *) 
		ODK_SKIP_00000000000001M_000000000000001:
		LD WXSCH[2].OnM
		ADD Delay
		GT 59
		JMPCN ODK_SKIP_00000000000001M_000000000000002

			(* elsif - Stmts *)

			(* assign - Stmt *)
			LD 59
			ST OnM2th

			JMP ODK_END_IF_00000000000001M

		(* else *) 
		ODK_SKIP_00000000000001M_000000000000002:

			(* else - Stmts *)

			(* assign - Stmt *)
			LD WXSCH[2].OnM
			ADD Delay
			ST OnM2th

		(* if - End *) 
		ODK_END_IF_00000000000001M:

(** 	if WXSCH[2].OffH<0 then OffH2th:=0; elsif WXSCH[2].OffH      >23 then OffH2th:=23; else OffH2th:=WXSCH[2].OffH      ; end_if;  **)
		(* if - Cond *)
		LD WXSCH[2].OffH
		LT 0
		JMPCN ODK_SKIP_00000000000001N_000000000000001

			(* then - Stmts *)

			(* assign - Stmt *)
			LD 0
			ST OffH2th

			JMP ODK_END_IF_00000000000001N

		(* elseif - Cond *) 
		ODK_SKIP_00000000000001N_000000000000001:
		LD WXSCH[2].OffH
		GT 23
		JMPCN ODK_SKIP_00000000000001N_000000000000002

			(* elsif - Stmts *)

			(* assign - Stmt *)
			LD 23
			ST OffH2th

			JMP ODK_END_IF_00000000000001N

		(* else *) 
		ODK_SKIP_00000000000001N_000000000000002:

			(* else - Stmts *)

			(* assign - Stmt *)
			LD WXSCH[2].OffH
			ST OffH2th

		(* if - End *) 
		ODK_END_IF_00000000000001N:

(** 	if WXSCH[2].OffM<0 then OffM2th:=0; elsif WXSCH[2].OffM+Delay>59 then OffM2th:=59; else OffM2th:=WXSCH[2].OffM+Delay; end_if;  **)
		(* if - Cond *)
		LD WXSCH[2].OffM
		LT 0
		JMPCN ODK_SKIP_00000000000001O_000000000000001

			(* then - Stmts *)

			(* assign - Stmt *)
			LD 0
			ST OffM2th

			JMP ODK_END_IF_00000000000001O

		(* elseif - Cond *) 
		ODK_SKIP_00000000000001O_000000000000001:
		LD WXSCH[2].OffM
		ADD Delay
		GT 59
		JMPCN ODK_SKIP_00000000000001O_000000000000002

			(* elsif - Stmts *)

			(* assign - Stmt *)
			LD 59
			ST OffM2th

			JMP ODK_END_IF_00000000000001O

		(* else *) 
		ODK_SKIP_00000000000001O_000000000000002:

			(* else - Stmts *)

			(* assign - Stmt *)
			LD WXSCH[2].OffM
			ADD Delay
			ST OffM2th

		(* if - End *) 
		ODK_END_IF_00000000000001O:

(**  **)
(** 	if WXSCH[3].OnH <0 then  OnH3th:=0; elsif WXSCH[3].OnH       >23 then  OnH3th:=23; else  OnH3th:=WXSCH[3].OnH       ; end_if;  **)
		(* if - Cond *)
		LD WXSCH[3].OnH
		LT 0
		JMPCN ODK_SKIP_00000000000001P_000000000000001

			(* then - Stmts *)

			(* assign - Stmt *)
			LD 0
			ST OnH3th

			JMP ODK_END_IF_00000000000001P

		(* elseif - Cond *) 
		ODK_SKIP_00000000000001P_000000000000001:
		LD WXSCH[3].OnH
		GT 23
		JMPCN ODK_SKIP_00000000000001P_000000000000002

			(* elsif - Stmts *)

			(* assign - Stmt *)
			LD 23
			ST OnH3th

			JMP ODK_END_IF_00000000000001P

		(* else *) 
		ODK_SKIP_00000000000001P_000000000000002:

			(* else - Stmts *)

			(* assign - Stmt *)
			LD WXSCH[3].OnH
			ST OnH3th

		(* if - End *) 
		ODK_END_IF_00000000000001P:

(** 	if WXSCH[3].OnM <0 then  OnM3th:=0; elsif WXSCH[3].OnM +Delay>59 then  OnM3th:=59; else  OnM3th:=WXSCH[3].OnM +Delay; end_if;  **)
		(* if - Cond *)
		LD WXSCH[3].OnM
		LT 0
		JMPCN ODK_SKIP_00000000000001Q_000000000000001

			(* then - Stmts *)

			(* assign - Stmt *)
			LD 0
			ST OnM3th

			JMP ODK_END_IF_00000000000001Q

		(* elseif - Cond *) 
		ODK_SKIP_00000000000001Q_000000000000001:
		LD WXSCH[3].OnM
		ADD Delay
		GT 59
		JMPCN ODK_SKIP_00000000000001Q_000000000000002

			(* elsif - Stmts *)

			(* assign - Stmt *)
			LD 59
			ST OnM3th

			JMP ODK_END_IF_00000000000001Q

		(* else *) 
		ODK_SKIP_00000000000001Q_000000000000002:

			(* else - Stmts *)

			(* assign - Stmt *)
			LD WXSCH[3].OnM
			ADD Delay
			ST OnM3th

		(* if - End *) 
		ODK_END_IF_00000000000001Q:

(** 	if WXSCH[3].OffH<0 then OffH3th:=0; elsif WXSCH[3].OffH      >23 then OffH3th:=23; else OffH3th:=WXSCH[3].OffH      ; end_if;  **)
		(* if - Cond *)
		LD WXSCH[3].OffH
		LT 0
		JMPCN ODK_SKIP_00000000000001R_000000000000001

			(* then - Stmts *)

			(* assign - Stmt *)
			LD 0
			ST OffH3th

			JMP ODK_END_IF_00000000000001R

		(* elseif - Cond *) 
		ODK_SKIP_00000000000001R_000000000000001:
		LD WXSCH[3].OffH
		GT 23
		JMPCN ODK_SKIP_00000000000001R_000000000000002

			(* elsif - Stmts *)

			(* assign - Stmt *)
			LD 23
			ST OffH3th

			JMP ODK_END_IF_00000000000001R

		(* else *) 
		ODK_SKIP_00000000000001R_000000000000002:

			(* else - Stmts *)

			(* assign - Stmt *)
			LD WXSCH[3].OffH
			ST OffH3th

		(* if - End *) 
		ODK_END_IF_00000000000001R:

(** 	if WXSCH[3].OffM<0 then OffM3th:=0; elsif WXSCH[3].OffM+Delay>59 then OffM3th:=59; else OffM3th:=WXSCH[3].OffM+Delay; end_if;  **)
		(* if - Cond *)
		LD WXSCH[3].OffM
		LT 0
		JMPCN ODK_SKIP_00000000000001S_000000000000001

			(* then - Stmts *)

			(* assign - Stmt *)
			LD 0
			ST OffM3th

			JMP ODK_END_IF_00000000000001S

		(* elseif - Cond *) 
		ODK_SKIP_00000000000001S_000000000000001:
		LD WXSCH[3].OffM
		ADD Delay
		GT 59
		JMPCN ODK_SKIP_00000000000001S_000000000000002

			(* elsif - Stmts *)

			(* assign - Stmt *)
			LD 59
			ST OffM3th

			JMP ODK_END_IF_00000000000001S

		(* else *) 
		ODK_SKIP_00000000000001S_000000000000002:

			(* else - Stmts *)

			(* assign - Stmt *)
			LD WXSCH[3].OffM
			ADD Delay
			ST OffM3th

		(* if - End *) 
		ODK_END_IF_00000000000001S:

(**  **)
(** 	if WXSCH[4].OnH <0 then  OnH4th:=0; elsif WXSCH[4].OnH       >23 then  OnH4th:=23; else  OnH4th:=WXSCH[4].OnH       ; end_if;  **)
		(* if - Cond *)
		LD WXSCH[4].OnH
		LT 0
		JMPCN ODK_SKIP_00000000000001T_000000000000001

			(* then - Stmts *)

			(* assign - Stmt *)
			LD 0
			ST OnH4th

			JMP ODK_END_IF_00000000000001T

		(* elseif - Cond *) 
		ODK_SKIP_00000000000001T_000000000000001:
		LD WXSCH[4].OnH
		GT 23
		JMPCN ODK_SKIP_00000000000001T_000000000000002

			(* elsif - Stmts *)

			(* assign - Stmt *)
			LD 23
			ST OnH4th

			JMP ODK_END_IF_00000000000001T

		(* else *) 
		ODK_SKIP_00000000000001T_000000000000002:

			(* else - Stmts *)

			(* assign - Stmt *)
			LD WXSCH[4].OnH
			ST OnH4th

		(* if - End *) 
		ODK_END_IF_00000000000001T:

(** 	if WXSCH[4].OnM <0 then  OnM4th:=0; elsif WXSCH[4].OnM +Delay>59 then  OnM4th:=59; else  OnM4th:=WXSCH[4].OnM +Delay; end_if;  **)
		(* if - Cond *)
		LD WXSCH[4].OnM
		LT 0
		JMPCN ODK_SKIP_00000000000001U_000000000000001

			(* then - Stmts *)

			(* assign - Stmt *)
			LD 0
			ST OnM4th

			JMP ODK_END_IF_00000000000001U

		(* elseif - Cond *) 
		ODK_SKIP_00000000000001U_000000000000001:
		LD WXSCH[4].OnM
		ADD Delay
		GT 59
		JMPCN ODK_SKIP_00000000000001U_000000000000002

			(* elsif - Stmts *)

			(* assign - Stmt *)
			LD 59
			ST OnM4th

			JMP ODK_END_IF_00000000000001U

		(* else *) 
		ODK_SKIP_00000000000001U_000000000000002:

			(* else - Stmts *)

			(* assign - Stmt *)
			LD WXSCH[4].OnM
			ADD Delay
			ST OnM4th

		(* if - End *) 
		ODK_END_IF_00000000000001U:

(** 	if WXSCH[4].OffH<0 then OffH4th:=0; elsif WXSCH[4].OffH      >23 then OffH4th:=23; else OffH4th:=WXSCH[4].OffH      ; end_if;  **)
		(* if - Cond *)
		LD WXSCH[4].OffH
		LT 0
		JMPCN ODK_SKIP_00000000000001V_000000000000001

			(* then - Stmts *)

			(* assign - Stmt *)
			LD 0
			ST OffH4th

			JMP ODK_END_IF_00000000000001V

		(* elseif - Cond *) 
		ODK_SKIP_00000000000001V_000000000000001:
		LD WXSCH[4].OffH
		GT 23
		JMPCN ODK_SKIP_00000000000001V_000000000000002

			(* elsif - Stmts *)

			(* assign - Stmt *)
			LD 23
			ST OffH4th

			JMP ODK_END_IF_00000000000001V

		(* else *) 
		ODK_SKIP_00000000000001V_000000000000002:

			(* else - Stmts *)

			(* assign - Stmt *)
			LD WXSCH[4].OffH
			ST OffH4th

		(* if - End *) 
		ODK_END_IF_00000000000001V:

(** 	if WXSCH[4].OffM<0 then OffM4th:=0; elsif WXSCH[4].OffM+Delay>59 then OffM4th:=59; else OffM4th:=WXSCH[4].OffM+Delay; end_if;  **)
		(* if - Cond *)
		LD WXSCH[4].OffM
		LT 0
		JMPCN ODK_SKIP_00000000000001W_000000000000001

			(* then - Stmts *)

			(* assign - Stmt *)
			LD 0
			ST OffM4th

			JMP ODK_END_IF_00000000000001W

		(* elseif - Cond *) 
		ODK_SKIP_00000000000001W_000000000000001:
		LD WXSCH[4].OffM
		ADD Delay
		GT 59
		JMPCN ODK_SKIP_00000000000001W_000000000000002

			(* elsif - Stmts *)

			(* assign - Stmt *)
			LD 59
			ST OffM4th

			JMP ODK_END_IF_00000000000001W

		(* else *) 
		ODK_SKIP_00000000000001W_000000000000002:

			(* else - Stmts *)

			(* assign - Stmt *)
			LD WXSCH[4].OffM
			ADD Delay
			ST OffM4th

		(* if - End *) 
		ODK_END_IF_00000000000001W:

		JMP ODK_END_IF_000000000000014

(** 	 **)
(** end_if; **)
	(* if - End *) 
	ODK_SKIP_000000000000014_000000000000001:
	ODK_END_IF_000000000000014:

(** 	 **)
(** if EnableNum =1 then Enable1th :=1; Enable2th :=0; Enable3th :=0; Enable4th :=0; end_if; **)
	(* if - Cond *)
	LD EnableNum
	EQ 1
	JMPCN ODK_SKIP_00000000000001X_000000000000001

		(* then - Stmts *)

		(* assign - Stmt *)
		LD 1
		ST Enable1th

		(* assign - Stmt *)
		LD 0
		ST Enable2th

		(* assign - Stmt *)
		LD 0
		ST Enable3th

		(* assign - Stmt *)
		LD 0
		ST Enable4th

		JMP ODK_END_IF_00000000000001X

	(* if - End *) 
	ODK_SKIP_00000000000001X_000000000000001:
	ODK_END_IF_00000000000001X:

(** if EnableNum =2 then Enable1th :=1; Enable2th :=1; Enable3th :=0; Enable4th :=0; end_if; **)
	(* if - Cond *)
	LD EnableNum
	EQ 2
	JMPCN ODK_SKIP_00000000000001Y_000000000000001

		(* then - Stmts *)

		(* assign - Stmt *)
		LD 1
		ST Enable1th

		(* assign - Stmt *)
		LD 1
		ST Enable2th

		(* assign - Stmt *)
		LD 0
		ST Enable3th

		(* assign - Stmt *)
		LD 0
		ST Enable4th

		JMP ODK_END_IF_00000000000001Y

	(* if - End *) 
	ODK_SKIP_00000000000001Y_000000000000001:
	ODK_END_IF_00000000000001Y:

(** if EnableNum =3 then Enable1th :=1; Enable2th :=1; Enable3th :=1; Enable4th :=0; end_if; **)
	(* if - Cond *)
	LD EnableNum
	EQ 3
	JMPCN ODK_SKIP_00000000000001Z_000000000000001

		(* then - Stmts *)

		(* assign - Stmt *)
		LD 1
		ST Enable1th

		(* assign - Stmt *)
		LD 1
		ST Enable2th

		(* assign - Stmt *)
		LD 1
		ST Enable3th

		(* assign - Stmt *)
		LD 0
		ST Enable4th

		JMP ODK_END_IF_00000000000001Z

	(* if - End *) 
	ODK_SKIP_00000000000001Z_000000000000001:
	ODK_END_IF_00000000000001Z:

(** if EnableNum =4 then Enable1th :=1; Enable2th :=1; Enable3th :=1; Enable4th :=1; end_if; **)
	(* if - Cond *)
	LD EnableNum
	EQ 4
	JMPCN ODK_SKIP_000000000000020_000000000000001

		(* then - Stmts *)

		(* assign - Stmt *)
		LD 1
		ST Enable1th

		(* assign - Stmt *)
		LD 1
		ST Enable2th

		(* assign - Stmt *)
		LD 1
		ST Enable3th

		(* assign - Stmt *)
		LD 1
		ST Enable4th

		JMP ODK_END_IF_000000000000020

	(* if - End *) 
	ODK_SKIP_000000000000020_000000000000001:
	ODK_END_IF_000000000000020:

(**  **)
(** {*4�ζ�ʱ����*} **)
(** if Enable=1 then **)
	(* if - Cond *)
	LD Enable
	EQ 1
	JMPCN ODK_SKIP_000000000000021_000000000000001

		(* then - Stmts *)

(** 	{*��ʱ���������� 4���ų�*} **)
(**  **)
(** 	if Enable1th=TRUE and (not(OnH1th=OffH1th and OnM1th=OffM1th)) then{*����ʱ��һ������Ч*} **)
		(* if - Cond *)
		LD Enable1th
		EQ TRUE
		AND ( OnH1th
			EQ OffH1th
			AND ( OnM1th
				EQ OffM1th
			)
			NOT
		)
		JMPCN ODK_SKIP_000000000000022_000000000000001

			(* then - Stmts *)

(** 	  {*1�жϿ����趨ʱ��֮��Ĵ�С*} **)
(** 	  if OnH1th>OffH1th then **)
			(* if - Cond *)
			LD OnH1th
			GT OffH1th
			JMPCN ODK_SKIP_000000000000023_000000000000001

				(* then - Stmts *)

(** 	    SetCompare1th := 1; **)
				(* assign - Stmt *)
				LD 1
				ST SetCompare1th

				JMP ODK_END_IF_000000000000023

(** 	  end_if; **)
			(* if - End *) 
			ODK_SKIP_000000000000023_000000000000001:
			ODK_END_IF_000000000000023:

(** 	  if OnH1th<OffH1th then **)
			(* if - Cond *)
			LD OnH1th
			LT OffH1th
			JMPCN ODK_SKIP_000000000000024_000000000000001

				(* then - Stmts *)

(** 	    SetCompare1th := 0; **)
				(* assign - Stmt *)
				LD 0
				ST SetCompare1th

				JMP ODK_END_IF_000000000000024

(** 	  end_if; **)
			(* if - End *) 
			ODK_SKIP_000000000000024_000000000000001:
			ODK_END_IF_000000000000024:

(** 	  if OnH1th=OffH1th then **)
			(* if - Cond *)
			LD OnH1th
			EQ OffH1th
			JMPCN ODK_SKIP_000000000000025_000000000000001

				(* then - Stmts *)

(** 	  	if OnM1th>OffM1th then **)
				(* if - Cond *)
				LD OnM1th
				GT OffM1th
				JMPCN ODK_SKIP_000000000000026_000000000000001

					(* then - Stmts *)

(** 		  SetCompare1th := 1; **)
					(* assign - Stmt *)
					LD 1
					ST SetCompare1th

					JMP ODK_END_IF_000000000000026

(** 		else **)
				(* else *) 
				ODK_SKIP_000000000000026_000000000000001:

					(* else - Stmts *)

(** 		  SetCompare1th := 0; **)
					(* assign - Stmt *)
					LD 0
					ST SetCompare1th

(** 		end_if; **)
				(* if - End *) 
				ODK_END_IF_000000000000026:

				JMP ODK_END_IF_000000000000025

(** 	  end_if; **)
			(* if - End *) 
			ODK_SKIP_000000000000025_000000000000001:
			ODK_END_IF_000000000000025:

(**  **)
(** 	{*1�жϿ��趨ʱ����ʵ��ʱ��֮��Ĵ�С*} **)
(** 	  if OnH1th>WD_HOUR then **)
			(* if - Cond *)
			LD OnH1th
			GT WD_HOUR
			JMPCN ODK_SKIP_000000000000027_000000000000001

				(* then - Stmts *)

(** 	    TrueSetOpenCompare1th := 1; **)
				(* assign - Stmt *)
				LD 1
				ST TrueSetOpenCompare1th

				JMP ODK_END_IF_000000000000027

(** 	  end_if; **)
			(* if - End *) 
			ODK_SKIP_000000000000027_000000000000001:
			ODK_END_IF_000000000000027:

(** 	  if OnH1th<WD_HOUR then **)
			(* if - Cond *)
			LD OnH1th
			LT WD_HOUR
			JMPCN ODK_SKIP_000000000000028_000000000000001

				(* then - Stmts *)

(** 	    TrueSetOpenCompare1th := 0; **)
				(* assign - Stmt *)
				LD 0
				ST TrueSetOpenCompare1th

				JMP ODK_END_IF_000000000000028

(** 	  end_if; **)
			(* if - End *) 
			ODK_SKIP_000000000000028_000000000000001:
			ODK_END_IF_000000000000028:

(** 	  if OnH1th=WD_HOUR then **)
			(* if - Cond *)
			LD OnH1th
			EQ WD_HOUR
			JMPCN ODK_SKIP_000000000000029_000000000000001

				(* then - Stmts *)

(** 	  	if OnM1th>=WD_MI then **)
				(* if - Cond *)
				LD OnM1th
				GE WD_MI
				JMPCN ODK_SKIP_00000000000002A_000000000000001

					(* then - Stmts *)

(** 		  TrueSetOpenCompare1th := 1; **)
					(* assign - Stmt *)
					LD 1
					ST TrueSetOpenCompare1th

					JMP ODK_END_IF_00000000000002A

(** 		else **)
				(* else *) 
				ODK_SKIP_00000000000002A_000000000000001:

					(* else - Stmts *)

(** 		  TrueSetOpenCompare1th := 0; **)
					(* assign - Stmt *)
					LD 0
					ST TrueSetOpenCompare1th

(** 		end_if; **)
				(* if - End *) 
				ODK_END_IF_00000000000002A:

				JMP ODK_END_IF_000000000000029

(** 	  end_if;  **)
			(* if - End *) 
			ODK_SKIP_000000000000029_000000000000001:
			ODK_END_IF_000000000000029:

(**  **)
(** 	 {*1�жϹ��趨ʱ����ʵ��ʱ��֮��Ĵ�С*} **)
(** 	  if OffH1th>WD_HOUR then **)
			(* if - Cond *)
			LD OffH1th
			GT WD_HOUR
			JMPCN ODK_SKIP_00000000000002B_000000000000001

				(* then - Stmts *)

(** 	    TrueSetCloseCompare1th := 1; **)
				(* assign - Stmt *)
				LD 1
				ST TrueSetCloseCompare1th

				JMP ODK_END_IF_00000000000002B

(** 	  end_if; **)
			(* if - End *) 
			ODK_SKIP_00000000000002B_000000000000001:
			ODK_END_IF_00000000000002B:

(** 	  if OffH1th<WD_HOUR then **)
			(* if - Cond *)
			LD OffH1th
			LT WD_HOUR
			JMPCN ODK_SKIP_00000000000002C_000000000000001

				(* then - Stmts *)

(** 	    TrueSetCloseCompare1th := 0; **)
				(* assign - Stmt *)
				LD 0
				ST TrueSetCloseCompare1th

				JMP ODK_END_IF_00000000000002C

(** 	  end_if; **)
			(* if - End *) 
			ODK_SKIP_00000000000002C_000000000000001:
			ODK_END_IF_00000000000002C:

(** 	  if OffH1th=WD_HOUR then **)
			(* if - Cond *)
			LD OffH1th
			EQ WD_HOUR
			JMPCN ODK_SKIP_00000000000002D_000000000000001

				(* then - Stmts *)

(** 	  	if OffM1th>=WD_MI then **)
				(* if - Cond *)
				LD OffM1th
				GE WD_MI
				JMPCN ODK_SKIP_00000000000002E_000000000000001

					(* then - Stmts *)

(** 		  TrueSetCloseCompare1th := 1; **)
					(* assign - Stmt *)
					LD 1
					ST TrueSetCloseCompare1th

					JMP ODK_END_IF_00000000000002E

(** 		else **)
				(* else *) 
				ODK_SKIP_00000000000002E_000000000000001:

					(* else - Stmts *)

(** 		  TrueSetCloseCompare1th := 0; **)
					(* assign - Stmt *)
					LD 0
					ST TrueSetCloseCompare1th

(** 		end_if; **)
				(* if - End *) 
				ODK_END_IF_00000000000002E:

				JMP ODK_END_IF_00000000000002D

(** 	  end_if;  **)
			(* if - End *) 
			ODK_SKIP_00000000000002D_000000000000001:
			ODK_END_IF_00000000000002D:

(**  **)
(** 	{*1�������*} **)
(** 	  if SetCompare1th then{*�����趨ʱ����ڹر��趨ʱ��Ϊ1*} **)
			(* if - Cond *)
			LD SetCompare1th
			JMPCN ODK_SKIP_00000000000002F_000000000000001

				(* then - Stmts *)

(** 	  	if TrueSetOpenCompare1th and not (TrueSetCloseCompare1th) then **)
				(* if - Cond *)
				LD TrueSetOpenCompare1th
				AND ( TrueSetCloseCompare1th
					NOT
				)
				JMPCN ODK_SKIP_00000000000002G_000000000000001

					(* then - Stmts *)

(** 			TimeSw1:=0; **)
					(* assign - Stmt *)
					LD 0
					ST TimeSw1

					JMP ODK_END_IF_00000000000002G

(** 		else **)
				(* else *) 
				ODK_SKIP_00000000000002G_000000000000001:

					(* else - Stmts *)

(** 			TimeSw1:=1; **)
					(* assign - Stmt *)
					LD 1
					ST TimeSw1

(** 		end_if; **)
				(* if - End *) 
				ODK_END_IF_00000000000002G:

				JMP ODK_END_IF_00000000000002F

(** 	  else **)
			(* else *) 
			ODK_SKIP_00000000000002F_000000000000001:

				(* else - Stmts *)

(**  **)
(** 	    if TrueSetCloseCompare1th and not (TrueSetOpenCompare1th) then **)
				(* if - Cond *)
				LD TrueSetCloseCompare1th
				AND ( TrueSetOpenCompare1th
					NOT
				)
				JMPCN ODK_SKIP_00000000000002H_000000000000001

					(* then - Stmts *)

(** 			TimeSw1:=1; **)
					(* assign - Stmt *)
					LD 1
					ST TimeSw1

					JMP ODK_END_IF_00000000000002H

(** 		else **)
				(* else *) 
				ODK_SKIP_00000000000002H_000000000000001:

					(* else - Stmts *)

(** 			TimeSw1:=0; **)
					(* assign - Stmt *)
					LD 0
					ST TimeSw1

(** 		end_if; **)
				(* if - End *) 
				ODK_END_IF_00000000000002H:

(** 	  end_if; **)
			(* if - End *) 
			ODK_END_IF_00000000000002F:

			JMP ODK_END_IF_000000000000022

(**  **)
(** 	 else **)
		(* else *) 
		ODK_SKIP_000000000000022_000000000000001:

			(* else - Stmts *)

(** 	  TimeSw1:=0; **)
			(* assign - Stmt *)
			LD 0
			ST TimeSw1

(** 	end_if; **)
		(* if - End *) 
		ODK_END_IF_000000000000022:

(**  **)
(**  **)
(** 	if Enable2th=TRUE and (not(OnH2th=OffH2th and OnM2th=OffM2th)) then{*����ʱ��һ������Ч*} **)
		(* if - Cond *)
		LD Enable2th
		EQ TRUE
		AND ( OnH2th
			EQ OffH2th
			AND ( OnM2th
				EQ OffM2th
			)
			NOT
		)
		JMPCN ODK_SKIP_00000000000002I_000000000000001

			(* then - Stmts *)

(** 	  {*2�жϿ����趨ʱ��֮��Ĵ�С*} **)
(** 	  if OnH2th>OffH2th then **)
			(* if - Cond *)
			LD OnH2th
			GT OffH2th
			JMPCN ODK_SKIP_00000000000002J_000000000000001

				(* then - Stmts *)

(** 	    SetCompare2th := 1; **)
				(* assign - Stmt *)
				LD 1
				ST SetCompare2th

				JMP ODK_END_IF_00000000000002J

(** 	  end_if; **)
			(* if - End *) 
			ODK_SKIP_00000000000002J_000000000000001:
			ODK_END_IF_00000000000002J:

(** 	  if OnH2th<OffH2th then **)
			(* if - Cond *)
			LD OnH2th
			LT OffH2th
			JMPCN ODK_SKIP_00000000000002K_000000000000001

				(* then - Stmts *)

(** 	    SetCompare2th := 0; **)
				(* assign - Stmt *)
				LD 0
				ST SetCompare2th

				JMP ODK_END_IF_00000000000002K

(** 	  end_if; **)
			(* if - End *) 
			ODK_SKIP_00000000000002K_000000000000001:
			ODK_END_IF_00000000000002K:

(** 	  if OnH2th=OffH2th then **)
			(* if - Cond *)
			LD OnH2th
			EQ OffH2th
			JMPCN ODK_SKIP_00000000000002L_000000000000001

				(* then - Stmts *)

(** 	  	if OnM2th>OffM2th then **)
				(* if - Cond *)
				LD OnM2th
				GT OffM2th
				JMPCN ODK_SKIP_00000000000002M_000000000000001

					(* then - Stmts *)

(** 		  SetCompare2th := 1; **)
					(* assign - Stmt *)
					LD 1
					ST SetCompare2th

					JMP ODK_END_IF_00000000000002M

(** 		else **)
				(* else *) 
				ODK_SKIP_00000000000002M_000000000000001:

					(* else - Stmts *)

(** 		  SetCompare2th := 0; **)
					(* assign - Stmt *)
					LD 0
					ST SetCompare2th

(** 		end_if; **)
				(* if - End *) 
				ODK_END_IF_00000000000002M:

				JMP ODK_END_IF_00000000000002L

(** 	  end_if; **)
			(* if - End *) 
			ODK_SKIP_00000000000002L_000000000000001:
			ODK_END_IF_00000000000002L:

(**  **)
(** 	{*2�жϿ��趨ʱ����ʵ��ʱ��֮��Ĵ�С*} **)
(** 	  if OnH2th>WD_HOUR then **)
			(* if - Cond *)
			LD OnH2th
			GT WD_HOUR
			JMPCN ODK_SKIP_00000000000002N_000000000000001

				(* then - Stmts *)

(** 	    TrueSetOpenCompare2th := 1; **)
				(* assign - Stmt *)
				LD 1
				ST TrueSetOpenCompare2th

				JMP ODK_END_IF_00000000000002N

(** 	  end_if; **)
			(* if - End *) 
			ODK_SKIP_00000000000002N_000000000000001:
			ODK_END_IF_00000000000002N:

(** 	  if OnH2th<WD_HOUR then **)
			(* if - Cond *)
			LD OnH2th
			LT WD_HOUR
			JMPCN ODK_SKIP_00000000000002O_000000000000001

				(* then - Stmts *)

(** 	    TrueSetOpenCompare2th := 0; **)
				(* assign - Stmt *)
				LD 0
				ST TrueSetOpenCompare2th

				JMP ODK_END_IF_00000000000002O

(** 	  end_if; **)
			(* if - End *) 
			ODK_SKIP_00000000000002O_000000000000001:
			ODK_END_IF_00000000000002O:

(** 	  if OnH2th=WD_HOUR then **)
			(* if - Cond *)
			LD OnH2th
			EQ WD_HOUR
			JMPCN ODK_SKIP_00000000000002P_000000000000001

				(* then - Stmts *)

(** 	  	if OnM2th>=WD_MI then **)
				(* if - Cond *)
				LD OnM2th
				GE WD_MI
				JMPCN ODK_SKIP_00000000000002Q_000000000000001

					(* then - Stmts *)

(** 		  TrueSetOpenCompare2th := 1; **)
					(* assign - Stmt *)
					LD 1
					ST TrueSetOpenCompare2th

					JMP ODK_END_IF_00000000000002Q

(** 		else **)
				(* else *) 
				ODK_SKIP_00000000000002Q_000000000000001:

					(* else - Stmts *)

(** 		  TrueSetOpenCompare2th := 0; **)
					(* assign - Stmt *)
					LD 0
					ST TrueSetOpenCompare2th

(** 		end_if; **)
				(* if - End *) 
				ODK_END_IF_00000000000002Q:

				JMP ODK_END_IF_00000000000002P

(** 	  end_if;  **)
			(* if - End *) 
			ODK_SKIP_00000000000002P_000000000000001:
			ODK_END_IF_00000000000002P:

(**  **)
(** 	 {*2�жϹ��趨ʱ����ʵ��ʱ��֮��Ĵ�С*} **)
(** 	  if OffH2th>WD_HOUR then **)
			(* if - Cond *)
			LD OffH2th
			GT WD_HOUR
			JMPCN ODK_SKIP_00000000000002R_000000000000001

				(* then - Stmts *)

(** 	    TrueSetCloseCompare2th := 1; **)
				(* assign - Stmt *)
				LD 1
				ST TrueSetCloseCompare2th

				JMP ODK_END_IF_00000000000002R

(** 	  end_if; **)
			(* if - End *) 
			ODK_SKIP_00000000000002R_000000000000001:
			ODK_END_IF_00000000000002R:

(** 	  if OffH2th<WD_HOUR then **)
			(* if - Cond *)
			LD OffH2th
			LT WD_HOUR
			JMPCN ODK_SKIP_00000000000002S_000000000000001

				(* then - Stmts *)

(** 	    TrueSetCloseCompare2th := 0; **)
				(* assign - Stmt *)
				LD 0
				ST TrueSetCloseCompare2th

				JMP ODK_END_IF_00000000000002S

(** 	  end_if; **)
			(* if - End *) 
			ODK_SKIP_00000000000002S_000000000000001:
			ODK_END_IF_00000000000002S:

(** 	  if OffH2th=WD_HOUR then **)
			(* if - Cond *)
			LD OffH2th
			EQ WD_HOUR
			JMPCN ODK_SKIP_00000000000002T_000000000000001

				(* then - Stmts *)

(** 	  	if OffM2th>=WD_MI then **)
				(* if - Cond *)
				LD OffM2th
				GE WD_MI
				JMPCN ODK_SKIP_00000000000002U_000000000000001

					(* then - Stmts *)

(** 		  TrueSetCloseCompare2th := 1; **)
					(* assign - Stmt *)
					LD 1
					ST TrueSetCloseCompare2th

					JMP ODK_END_IF_00000000000002U

(** 		else **)
				(* else *) 
				ODK_SKIP_00000000000002U_000000000000001:

					(* else - Stmts *)

(** 		  TrueSetCloseCompare2th := 0; **)
					(* assign - Stmt *)
					LD 0
					ST TrueSetCloseCompare2th

(** 		end_if; **)
				(* if - End *) 
				ODK_END_IF_00000000000002U:

				JMP ODK_END_IF_00000000000002T

(** 	  end_if;  **)
			(* if - End *) 
			ODK_SKIP_00000000000002T_000000000000001:
			ODK_END_IF_00000000000002T:

(**  **)
(** 	{*2�������*} **)
(** 	  if SetCompare2th then{*�����趨ʱ����ڹر��趨ʱ��Ϊ1*} **)
			(* if - Cond *)
			LD SetCompare2th
			JMPCN ODK_SKIP_00000000000002V_000000000000001

				(* then - Stmts *)

(** 	  	if TrueSetOpenCompare2th and not (TrueSetCloseCompare2th) then **)
				(* if - Cond *)
				LD TrueSetOpenCompare2th
				AND ( TrueSetCloseCompare2th
					NOT
				)
				JMPCN ODK_SKIP_00000000000002W_000000000000001

					(* then - Stmts *)

(** 			TimeSw2:=0; **)
					(* assign - Stmt *)
					LD 0
					ST TimeSw2

					JMP ODK_END_IF_00000000000002W

(** 		else **)
				(* else *) 
				ODK_SKIP_00000000000002W_000000000000001:

					(* else - Stmts *)

(** 			TimeSw2:=1; **)
					(* assign - Stmt *)
					LD 1
					ST TimeSw2

(** 		end_if; **)
				(* if - End *) 
				ODK_END_IF_00000000000002W:

				JMP ODK_END_IF_00000000000002V

(** 	  else **)
			(* else *) 
			ODK_SKIP_00000000000002V_000000000000001:

				(* else - Stmts *)

(**  **)
(** 	    if TrueSetCloseCompare2th and not (TrueSetOpenCompare2th) then **)
				(* if - Cond *)
				LD TrueSetCloseCompare2th
				AND ( TrueSetOpenCompare2th
					NOT
				)
				JMPCN ODK_SKIP_00000000000002X_000000000000001

					(* then - Stmts *)

(** 			TimeSw2:=1; **)
					(* assign - Stmt *)
					LD 1
					ST TimeSw2

					JMP ODK_END_IF_00000000000002X

(** 		else **)
				(* else *) 
				ODK_SKIP_00000000000002X_000000000000001:

					(* else - Stmts *)

(** 			TimeSw2:=0; **)
					(* assign - Stmt *)
					LD 0
					ST TimeSw2

(** 		end_if; **)
				(* if - End *) 
				ODK_END_IF_00000000000002X:

(** 	  end_if; **)
			(* if - End *) 
			ODK_END_IF_00000000000002V:

			JMP ODK_END_IF_00000000000002I

(**  **)
(** 	 else **)
		(* else *) 
		ODK_SKIP_00000000000002I_000000000000001:

			(* else - Stmts *)

(** 	  TimeSw2:=0; **)
			(* assign - Stmt *)
			LD 0
			ST TimeSw2

(** 	end_if; **)
		(* if - End *) 
		ODK_END_IF_00000000000002I:

(**  **)
(**  **)
(**  **)
(** 	if Enable3th=TRUE and (not(OnH3th=OffH3th and OnM3th=OffM3th)) then{*����ʱ��һ������Ч*} **)
		(* if - Cond *)
		LD Enable3th
		EQ TRUE
		AND ( OnH3th
			EQ OffH3th
			AND ( OnM3th
				EQ OffM3th
			)
			NOT
		)
		JMPCN ODK_SKIP_00000000000002Y_000000000000001

			(* then - Stmts *)

(** 	  {*3�жϿ����趨ʱ��֮��Ĵ�С*} **)
(** 	  if OnH3th>OffH3th then **)
			(* if - Cond *)
			LD OnH3th
			GT OffH3th
			JMPCN ODK_SKIP_00000000000002Z_000000000000001

				(* then - Stmts *)

(** 	    SetCompare3th := 1; **)
				(* assign - Stmt *)
				LD 1
				ST SetCompare3th

				JMP ODK_END_IF_00000000000002Z

(** 	  end_if; **)
			(* if - End *) 
			ODK_SKIP_00000000000002Z_000000000000001:
			ODK_END_IF_00000000000002Z:

(** 	  if OnH3th<OffH3th then **)
			(* if - Cond *)
			LD OnH3th
			LT OffH3th
			JMPCN ODK_SKIP_000000000000030_000000000000001

				(* then - Stmts *)

(** 	    SetCompare3th := 0; **)
				(* assign - Stmt *)
				LD 0
				ST SetCompare3th

				JMP ODK_END_IF_000000000000030

(** 	  end_if; **)
			(* if - End *) 
			ODK_SKIP_000000000000030_000000000000001:
			ODK_END_IF_000000000000030:

(** 	  if OnH3th=OffH3th then **)
			(* if - Cond *)
			LD OnH3th
			EQ OffH3th
			JMPCN ODK_SKIP_000000000000031_000000000000001

				(* then - Stmts *)

(** 	  	if OnM3th>OffM3th then **)
				(* if - Cond *)
				LD OnM3th
				GT OffM3th
				JMPCN ODK_SKIP_000000000000032_000000000000001

					(* then - Stmts *)

(** 		  SetCompare3th := 1; **)
					(* assign - Stmt *)
					LD 1
					ST SetCompare3th

					JMP ODK_END_IF_000000000000032

(** 		else **)
				(* else *) 
				ODK_SKIP_000000000000032_000000000000001:

					(* else - Stmts *)

(** 		  SetCompare3th := 0; **)
					(* assign - Stmt *)
					LD 0
					ST SetCompare3th

(** 		end_if; **)
				(* if - End *) 
				ODK_END_IF_000000000000032:

				JMP ODK_END_IF_000000000000031

(** 	  end_if; **)
			(* if - End *) 
			ODK_SKIP_000000000000031_000000000000001:
			ODK_END_IF_000000000000031:

(**  **)
(** 	{*3�жϿ��趨ʱ����ʵ��ʱ��֮��Ĵ�С*} **)
(** 	  if OnH3th>WD_HOUR then **)
			(* if - Cond *)
			LD OnH3th
			GT WD_HOUR
			JMPCN ODK_SKIP_000000000000033_000000000000001

				(* then - Stmts *)

(** 	    TrueSetOpenCompare3th := 1; **)
				(* assign - Stmt *)
				LD 1
				ST TrueSetOpenCompare3th

				JMP ODK_END_IF_000000000000033

(** 	  end_if; **)
			(* if - End *) 
			ODK_SKIP_000000000000033_000000000000001:
			ODK_END_IF_000000000000033:

(** 	  if OnH3th<WD_HOUR then **)
			(* if - Cond *)
			LD OnH3th
			LT WD_HOUR
			JMPCN ODK_SKIP_000000000000034_000000000000001

				(* then - Stmts *)

(** 	    TrueSetOpenCompare3th := 0; **)
				(* assign - Stmt *)
				LD 0
				ST TrueSetOpenCompare3th

				JMP ODK_END_IF_000000000000034

(** 	  end_if; **)
			(* if - End *) 
			ODK_SKIP_000000000000034_000000000000001:
			ODK_END_IF_000000000000034:

(** 	  if OnH3th=WD_HOUR then **)
			(* if - Cond *)
			LD OnH3th
			EQ WD_HOUR
			JMPCN ODK_SKIP_000000000000035_000000000000001

				(* then - Stmts *)

(** 	  	if OnM3th>=WD_MI then **)
				(* if - Cond *)
				LD OnM3th
				GE WD_MI
				JMPCN ODK_SKIP_000000000000036_000000000000001

					(* then - Stmts *)

(** 		  TrueSetOpenCompare3th := 1; **)
					(* assign - Stmt *)
					LD 1
					ST TrueSetOpenCompare3th

					JMP ODK_END_IF_000000000000036

(** 		else **)
				(* else *) 
				ODK_SKIP_000000000000036_000000000000001:

					(* else - Stmts *)

(** 		  TrueSetOpenCompare3th := 0; **)
					(* assign - Stmt *)
					LD 0
					ST TrueSetOpenCompare3th

(** 		end_if; **)
				(* if - End *) 
				ODK_END_IF_000000000000036:

				JMP ODK_END_IF_000000000000035

(** 	  end_if;  **)
			(* if - End *) 
			ODK_SKIP_000000000000035_000000000000001:
			ODK_END_IF_000000000000035:

(**  **)
(** 	 {*3�жϹ��趨ʱ����ʵ��ʱ��֮��Ĵ�С*} **)
(** 	  if OffH3th>WD_HOUR then **)
			(* if - Cond *)
			LD OffH3th
			GT WD_HOUR
			JMPCN ODK_SKIP_000000000000037_000000000000001

				(* then - Stmts *)

(** 	    TrueSetCloseCompare3th := 1; **)
				(* assign - Stmt *)
				LD 1
				ST TrueSetCloseCompare3th

				JMP ODK_END_IF_000000000000037

(** 	  end_if; **)
			(* if - End *) 
			ODK_SKIP_000000000000037_000000000000001:
			ODK_END_IF_000000000000037:

(** 	  if OffH3th<WD_HOUR then **)
			(* if - Cond *)
			LD OffH3th
			LT WD_HOUR
			JMPCN ODK_SKIP_000000000000038_000000000000001

				(* then - Stmts *)

(** 	    TrueSetCloseCompare3th := 0; **)
				(* assign - Stmt *)
				LD 0
				ST TrueSetCloseCompare3th

				JMP ODK_END_IF_000000000000038

(** 	  end_if; **)
			(* if - End *) 
			ODK_SKIP_000000000000038_000000000000001:
			ODK_END_IF_000000000000038:

(** 	  if OffH3th=WD_HOUR then **)
			(* if - Cond *)
			LD OffH3th
			EQ WD_HOUR
			JMPCN ODK_SKIP_000000000000039_000000000000001

				(* then - Stmts *)

(** 	  	if OffM3th>=WD_MI then **)
				(* if - Cond *)
				LD OffM3th
				GE WD_MI
				JMPCN ODK_SKIP_00000000000003A_000000000000001

					(* then - Stmts *)

(** 		  TrueSetCloseCompare3th := 1; **)
					(* assign - Stmt *)
					LD 1
					ST TrueSetCloseCompare3th

					JMP ODK_END_IF_00000000000003A

(** 		else **)
				(* else *) 
				ODK_SKIP_00000000000003A_000000000000001:

					(* else - Stmts *)

(** 		  TrueSetCloseCompare3th := 0; **)
					(* assign - Stmt *)
					LD 0
					ST TrueSetCloseCompare3th

(** 		end_if; **)
				(* if - End *) 
				ODK_END_IF_00000000000003A:

				JMP ODK_END_IF_000000000000039

(** 	  end_if;  **)
			(* if - End *) 
			ODK_SKIP_000000000000039_000000000000001:
			ODK_END_IF_000000000000039:

(**  **)
(** 	{*3�������*} **)
(** 	  if SetCompare3th then{*�����趨ʱ����ڹر��趨ʱ��Ϊ1*} **)
			(* if - Cond *)
			LD SetCompare3th
			JMPCN ODK_SKIP_00000000000003B_000000000000001

				(* then - Stmts *)

(** 	  	if TrueSetOpenCompare3th and not (TrueSetCloseCompare3th) then **)
				(* if - Cond *)
				LD TrueSetOpenCompare3th
				AND ( TrueSetCloseCompare3th
					NOT
				)
				JMPCN ODK_SKIP_00000000000003C_000000000000001

					(* then - Stmts *)

(** 			TimeSw3:=0; **)
					(* assign - Stmt *)
					LD 0
					ST TimeSw3

					JMP ODK_END_IF_00000000000003C

(** 		else **)
				(* else *) 
				ODK_SKIP_00000000000003C_000000000000001:

					(* else - Stmts *)

(** 			TimeSw3:=1; **)
					(* assign - Stmt *)
					LD 1
					ST TimeSw3

(** 		end_if; **)
				(* if - End *) 
				ODK_END_IF_00000000000003C:

				JMP ODK_END_IF_00000000000003B

(** 	  else **)
			(* else *) 
			ODK_SKIP_00000000000003B_000000000000001:

				(* else - Stmts *)

(**  **)
(** 	    if TrueSetCloseCompare3th and not (TrueSetOpenCompare3th) then **)
				(* if - Cond *)
				LD TrueSetCloseCompare3th
				AND ( TrueSetOpenCompare3th
					NOT
				)
				JMPCN ODK_SKIP_00000000000003D_000000000000001

					(* then - Stmts *)

(** 			TimeSw3:=1; **)
					(* assign - Stmt *)
					LD 1
					ST TimeSw3

					JMP ODK_END_IF_00000000000003D

(** 		else **)
				(* else *) 
				ODK_SKIP_00000000000003D_000000000000001:

					(* else - Stmts *)

(** 			TimeSw3:=0; **)
					(* assign - Stmt *)
					LD 0
					ST TimeSw3

(** 		end_if; **)
				(* if - End *) 
				ODK_END_IF_00000000000003D:

(** 	  end_if; **)
			(* if - End *) 
			ODK_END_IF_00000000000003B:

			JMP ODK_END_IF_00000000000002Y

(**  **)
(** 	 else **)
		(* else *) 
		ODK_SKIP_00000000000002Y_000000000000001:

			(* else - Stmts *)

(** 	  TimeSw3:=0; **)
			(* assign - Stmt *)
			LD 0
			ST TimeSw3

(** 	end_if; **)
		(* if - End *) 
		ODK_END_IF_00000000000002Y:

(**  **)
(**  **)
(**  **)
(** 	if Enable4th=TRUE and (not(OnH4th=OffH4th and OnM4th=OffM4th)) then{*����ʱ��һ������Ч*} **)
		(* if - Cond *)
		LD Enable4th
		EQ TRUE
		AND ( OnH4th
			EQ OffH4th
			AND ( OnM4th
				EQ OffM4th
			)
			NOT
		)
		JMPCN ODK_SKIP_00000000000003E_000000000000001

			(* then - Stmts *)

(** 	  {*4�жϿ����趨ʱ��֮��Ĵ�С*} **)
(** 	  if OnH4th>OffH4th then **)
			(* if - Cond *)
			LD OnH4th
			GT OffH4th
			JMPCN ODK_SKIP_00000000000003F_000000000000001

				(* then - Stmts *)

(** 	    SetCompare4th := 1; **)
				(* assign - Stmt *)
				LD 1
				ST SetCompare4th

				JMP ODK_END_IF_00000000000003F

(** 	  end_if; **)
			(* if - End *) 
			ODK_SKIP_00000000000003F_000000000000001:
			ODK_END_IF_00000000000003F:

(** 	  if OnH4th<OffH4th then **)
			(* if - Cond *)
			LD OnH4th
			LT OffH4th
			JMPCN ODK_SKIP_00000000000003G_000000000000001

				(* then - Stmts *)

(** 	    SetCompare4th := 0; **)
				(* assign - Stmt *)
				LD 0
				ST SetCompare4th

				JMP ODK_END_IF_00000000000003G

(** 	  end_if; **)
			(* if - End *) 
			ODK_SKIP_00000000000003G_000000000000001:
			ODK_END_IF_00000000000003G:

(** 	  if OnH4th=OffH4th then **)
			(* if - Cond *)
			LD OnH4th
			EQ OffH4th
			JMPCN ODK_SKIP_00000000000003H_000000000000001

				(* then - Stmts *)

(** 	  	if OnM4th>OffM4th then **)
				(* if - Cond *)
				LD OnM4th
				GT OffM4th
				JMPCN ODK_SKIP_00000000000003I_000000000000001

					(* then - Stmts *)

(** 		  SetCompare4th := 1; **)
					(* assign - Stmt *)
					LD 1
					ST SetCompare4th

					JMP ODK_END_IF_00000000000003I

(** 		else **)
				(* else *) 
				ODK_SKIP_00000000000003I_000000000000001:

					(* else - Stmts *)

(** 		  SetCompare4th := 0; **)
					(* assign - Stmt *)
					LD 0
					ST SetCompare4th

(** 		end_if; **)
				(* if - End *) 
				ODK_END_IF_00000000000003I:

				JMP ODK_END_IF_00000000000003H

(** 	  end_if; **)
			(* if - End *) 
			ODK_SKIP_00000000000003H_000000000000001:
			ODK_END_IF_00000000000003H:

(**  **)
(** 	{*4�жϿ��趨ʱ����ʵ��ʱ��֮��Ĵ�С*} **)
(** 	  if OnH4th>WD_HOUR then **)
			(* if - Cond *)
			LD OnH4th
			GT WD_HOUR
			JMPCN ODK_SKIP_00000000000003J_000000000000001

				(* then - Stmts *)

(** 	    TrueSetOpenCompare4th := 1; **)
				(* assign - Stmt *)
				LD 1
				ST TrueSetOpenCompare4th

				JMP ODK_END_IF_00000000000003J

(** 	  end_if; **)
			(* if - End *) 
			ODK_SKIP_00000000000003J_000000000000001:
			ODK_END_IF_00000000000003J:

(** 	  if OnH4th<WD_HOUR then **)
			(* if - Cond *)
			LD OnH4th
			LT WD_HOUR
			JMPCN ODK_SKIP_00000000000003K_000000000000001

				(* then - Stmts *)

(** 	    TrueSetOpenCompare4th := 0; **)
				(* assign - Stmt *)
				LD 0
				ST TrueSetOpenCompare4th

				JMP ODK_END_IF_00000000000003K

(** 	  end_if; **)
			(* if - End *) 
			ODK_SKIP_00000000000003K_000000000000001:
			ODK_END_IF_00000000000003K:

(** 	  if OnH4th=WD_HOUR then **)
			(* if - Cond *)
			LD OnH4th
			EQ WD_HOUR
			JMPCN ODK_SKIP_00000000000003L_000000000000001

				(* then - Stmts *)

(** 	  	if OnM4th>=WD_MI then **)
				(* if - Cond *)
				LD OnM4th
				GE WD_MI
				JMPCN ODK_SKIP_00000000000003M_000000000000001

					(* then - Stmts *)

(** 		  TrueSetOpenCompare4th := 1; **)
					(* assign - Stmt *)
					LD 1
					ST TrueSetOpenCompare4th

					JMP ODK_END_IF_00000000000003M

(** 		else **)
				(* else *) 
				ODK_SKIP_00000000000003M_000000000000001:

					(* else - Stmts *)

(** 		  TrueSetOpenCompare4th := 0; **)
					(* assign - Stmt *)
					LD 0
					ST TrueSetOpenCompare4th

(** 		end_if; **)
				(* if - End *) 
				ODK_END_IF_00000000000003M:

				JMP ODK_END_IF_00000000000003L

(** 	  end_if;  **)
			(* if - End *) 
			ODK_SKIP_00000000000003L_000000000000001:
			ODK_END_IF_00000000000003L:

(**  **)
(** 	 {*4�жϹ��趨ʱ����ʵ��ʱ��֮��Ĵ�С*} **)
(** 	  if OffH4th>WD_HOUR then **)
			(* if - Cond *)
			LD OffH4th
			GT WD_HOUR
			JMPCN ODK_SKIP_00000000000003N_000000000000001

				(* then - Stmts *)

(** 	    TrueSetCloseCompare4th := 1; **)
				(* assign - Stmt *)
				LD 1
				ST TrueSetCloseCompare4th

				JMP ODK_END_IF_00000000000003N

(** 	  end_if; **)
			(* if - End *) 
			ODK_SKIP_00000000000003N_000000000000001:
			ODK_END_IF_00000000000003N:

(** 	  if OffH4th<WD_HOUR then **)
			(* if - Cond *)
			LD OffH4th
			LT WD_HOUR
			JMPCN ODK_SKIP_00000000000003O_000000000000001

				(* then - Stmts *)

(** 	    TrueSetCloseCompare4th := 0; **)
				(* assign - Stmt *)
				LD 0
				ST TrueSetCloseCompare4th

				JMP ODK_END_IF_00000000000003O

(** 	  end_if; **)
			(* if - End *) 
			ODK_SKIP_00000000000003O_000000000000001:
			ODK_END_IF_00000000000003O:

(** 	  if OffH4th=WD_HOUR then **)
			(* if - Cond *)
			LD OffH4th
			EQ WD_HOUR
			JMPCN ODK_SKIP_00000000000003P_000000000000001

				(* then - Stmts *)

(** 	  	if OffM4th>=WD_MI then **)
				(* if - Cond *)
				LD OffM4th
				GE WD_MI
				JMPCN ODK_SKIP_00000000000003Q_000000000000001

					(* then - Stmts *)

(** 		  TrueSetCloseCompare4th := 1; **)
					(* assign - Stmt *)
					LD 1
					ST TrueSetCloseCompare4th

					JMP ODK_END_IF_00000000000003Q

(** 		else **)
				(* else *) 
				ODK_SKIP_00000000000003Q_000000000000001:

					(* else - Stmts *)

(** 		  TrueSetCloseCompare4th := 0; **)
					(* assign - Stmt *)
					LD 0
					ST TrueSetCloseCompare4th

(** 		end_if; **)
				(* if - End *) 
				ODK_END_IF_00000000000003Q:

				JMP ODK_END_IF_00000000000003P

(** 	  end_if;  **)
			(* if - End *) 
			ODK_SKIP_00000000000003P_000000000000001:
			ODK_END_IF_00000000000003P:

(**  **)
(** 	{*4�������*} **)
(** 	  if SetCompare4th then{*�����趨ʱ����ڹر��趨ʱ��Ϊ1*} **)
			(* if - Cond *)
			LD SetCompare4th
			JMPCN ODK_SKIP_00000000000003R_000000000000001

				(* then - Stmts *)

(** 	  	if TrueSetOpenCompare4th and not (TrueSetCloseCompare4th) then **)
				(* if - Cond *)
				LD TrueSetOpenCompare4th
				AND ( TrueSetCloseCompare4th
					NOT
				)
				JMPCN ODK_SKIP_00000000000003S_000000000000001

					(* then - Stmts *)

(** 			TimeSw4:=0; **)
					(* assign - Stmt *)
					LD 0
					ST TimeSw4

					JMP ODK_END_IF_00000000000003S

(** 		else **)
				(* else *) 
				ODK_SKIP_00000000000003S_000000000000001:

					(* else - Stmts *)

(** 			TimeSw4:=1; **)
					(* assign - Stmt *)
					LD 1
					ST TimeSw4

(** 		end_if; **)
				(* if - End *) 
				ODK_END_IF_00000000000003S:

				JMP ODK_END_IF_00000000000003R

(** 	  else **)
			(* else *) 
			ODK_SKIP_00000000000003R_000000000000001:

				(* else - Stmts *)

(**  **)
(** 	    if TrueSetCloseCompare4th and not (TrueSetOpenCompare4th) then **)
				(* if - Cond *)
				LD TrueSetCloseCompare4th
				AND ( TrueSetOpenCompare4th
					NOT
				)
				JMPCN ODK_SKIP_00000000000003T_000000000000001

					(* then - Stmts *)

(** 			TimeSw4:=1; **)
					(* assign - Stmt *)
					LD 1
					ST TimeSw4

					JMP ODK_END_IF_00000000000003T

(** 		else **)
				(* else *) 
				ODK_SKIP_00000000000003T_000000000000001:

					(* else - Stmts *)

(** 			TimeSw4:=0; **)
					(* assign - Stmt *)
					LD 0
					ST TimeSw4

(** 		end_if; **)
				(* if - End *) 
				ODK_END_IF_00000000000003T:

(** 	  end_if; **)
			(* if - End *) 
			ODK_END_IF_00000000000003R:

			JMP ODK_END_IF_00000000000003E

(**  **)
(** 	 else **)
		(* else *) 
		ODK_SKIP_00000000000003E_000000000000001:

			(* else - Stmts *)

(** 	  TimeSw4:=0; **)
			(* assign - Stmt *)
			LD 0
			ST TimeSw4

(** 	end_if; **)
		(* if - End *) 
		ODK_END_IF_00000000000003E:

(**  **)
(** 	if TimeSw1 or TimeSw2 or TimeSw3 or TimeSw4 then **)
		(* if - Cond *)
		LD TimeSw1
		OR TimeSw2
		OR TimeSw3
		OR TimeSw4
		JMPCN ODK_SKIP_00000000000003U_000000000000001

			(* then - Stmts *)

(** 	   OUT_Z:=1; **)
			(* assign - Stmt *)
			LD 1
			ST OUT_Z

			JMP ODK_END_IF_00000000000003U

(** 	   else **)
		(* else *) 
		ODK_SKIP_00000000000003U_000000000000001:

			(* else - Stmts *)

(** 	   OUT_Z:=0; **)
			(* assign - Stmt *)
			LD 0
			ST OUT_Z

(** 	end_if; **)
		(* if - End *) 
		ODK_END_IF_00000000000003U:

		JMP ODK_END_IF_000000000000021

(**  **)
(** end_if; **)
	(* if - End *) 
	ODK_SKIP_000000000000021_000000000000001:
	ODK_END_IF_000000000000021:

(**  **)
(**  **)
(**  **)
(**  **)

END_FUNCTION_BLOCK