<Gauge Name="ATHR" Version="1.0">
	<Update Hidden="Yes">		
		(L:IAS_SM, number) (A:Airspeed indicated, knots) (L:IAS_SM, number) - 18 / + (&gt; L:IAS_SM, number)
		(L:Mach_SM, number) (A:Airspeed mach, machs) (L:Mach_SM, number) - 18 / + (&gt; L:Mach_SM, number)
		(L:IAS_AccelSM, number) (L:IAS_SM, number) (L:IAS_SMhist, number) - 180 * (L:IAS_AccelSM, number) - 9 / + (&gt; L:IAS_AccelSM, number)
		(L:IAS_SM, number) (&gt; L:IAS_SMhist, number)
		
		<!-- Throttle detends Left -->
		
		<!-- Convert RAW Values -->
		
		(L:AS_FADEC_0, number) (L:FADECKEYL, number) !=
		(L:MP_CONN, number) 0 == &amp;&amp;
		if{
		
		(L:AS_FADEC_0, number) (&gt; L:FADECKEYL, number)
		
		(L:AS_FADEC_0, number) 0 &lt;
		if{
			(L:AS_FADEC_0, number) -32768 / 100 * 2 / 50 + abs (&gt; L:FADEC_L, number)
		}
		els{
			(L:AS_FADEC_0, number) 32768 / 100 * 2 / 50 - abs (&gt; L:FADEC_L, number)
		} }
		
		(L:AS_FADEC_1, number) (L:FADECKEYR, number) !=
		(L:MP_CONN, number) 0 == &amp;&amp;
		if{
		(L:AS_FADEC_1, number) (&gt; L:FADECKEYR, number)
		
		(L:AS_FADEC_1, number) 0 &lt;
		if{
			(L:AS_FADEC_1, number) -32768 / 100 * 2 / 50 + abs (&gt; L:FADEC_R, number)
		}
		els{
			(L:AS_FADEC_1, number) 32768 / 100 * 2 / 50 - abs (&gt; L:FADEC_R, number)
		} }
		
		(L:Throttle_ani_fix_L, number) 20 &lt;=
		if{
			(L:Throttle_ani_var_L, number) 25 + (A:TURB ENG REVERSE NOZZLE PERCENT:1, percent) 4 / - (&gt; L:Throttle_ani2_var_L, number) }
		els{
			
			(L:Throttle_ani_fix_L, number) 25 ==
			if{
				85 (&gt; L:Throttle_ani2_var_L, number) }
			
			(L:Throttle_ani_fix_L, number) 75 ==
			if{
				105 (&gt; L:Throttle_ani2_var_L, number) }
			
			(L:Throttle_ani_fix_L, number) 100 ==
			if{
				125 (&gt; L:Throttle_ani2_var_L, number) } 
		}
		
		(L:FADEC_L, number) (&gt; L:Throttle_ani_var_L, number)
		(L:FADEC_L, number) (&gt; L:Throttle_pos_hist_L, number) 
		
		(L:Throttle_ani_var_L, number) 0 &gt;=
		(L:Throttle_ani_var_L, number) 2 &lt; &amp;&amp;
		if{
			0 (&gt; L:Throttle_ani_fix_L, number)
		}
		
		(L:Throttle_ani_var_L, number) 2 &gt;=
		(L:Throttle_ani_var_L, number) 60 &lt; &amp;&amp;
		if{
			20 (&gt; L:Throttle_ani_fix_L, number)
		}
		
		(L:Throttle_ani_var_L, number) 60 &gt;=
		(L:Throttle_ani_var_L, number) 70 &lt; &amp;&amp;
		if{
			25 (&gt; L:Throttle_ani_fix_L, number)
		}
		
		(L:Throttle_ani_var_L, number) 70 &gt;=
		(L:Throttle_ani_var_L, number) 90 &lt; &amp;&amp;
		if{
			75 (&gt; L:Throttle_ani_fix_L, number)
		}
		
		(L:Throttle_ani_var_L, number) 90 &gt;=
		(L:Throttle_ani_var_L, number) 100 &lt;= &amp;&amp;
		if{
			100 (&gt; L:Throttle_ani_fix_L, number)
		}
		

		
		<!-- Throttle detends Right -->
		(L:Throttle_ani_fix_R, number) 20 &lt;=
		if{
			(L:Throttle_ani_var_R, number) 25 + (A:TURB ENG REVERSE NOZZLE PERCENT:2, percent) 4 / - (&gt; L:Throttle_ani2_var_R, number) }
		els{
			
			(L:Throttle_ani_fix_R, number) 25 ==
			if{
				85 (&gt; L:Throttle_ani2_var_R, number) }
			
			(L:Throttle_ani_fix_R, number) 75 ==
			if{
				105 (&gt; L:Throttle_ani2_var_R, number) }
			
			(L:Throttle_ani_fix_R, number) 100 ==
			if{
				125 (&gt; L:Throttle_ani2_var_R, number) } }
		
		(L:FADEC_R, number) (&gt; L:Throttle_ani_var_R, number)
		(L:FADEC_R, number) (&gt; L:Throttle_pos_hist_R, number) 
		
		(L:Throttle_ani_var_R, number) 0 &gt;=
		(L:Throttle_ani_var_R, number) 2 &lt; &amp;&amp;
		if{
			0 (&gt; L:Throttle_ani_fix_R, number)
		}
		
		(L:Throttle_ani_var_R, number) 2 &gt;=
		(L:Throttle_ani_var_R, number) 60 &lt; &amp;&amp;
		if{
			20 (&gt; L:Throttle_ani_fix_R, number)
		}
		
		(L:Throttle_ani_var_R, number) 60 &gt;=
		(L:Throttle_ani_var_R, number) 70 &lt; &amp;&amp;
		if{
			25 (&gt; L:Throttle_ani_fix_R, number)
		}
		
		(L:Throttle_ani_var_R, number) 70 &gt;=
		(L:Throttle_ani_var_R, number) 90 &lt; &amp;&amp;
		if{
			75 (&gt; L:Throttle_ani_fix_R, number)
		}
		
		(L:Throttle_ani_var_R, number) 90 &gt;=
		(L:Throttle_ani_var_R, number) 100 &lt;= &amp;&amp;
		if{
			100 (&gt; L:Throttle_ani_fix_R, number)
		}
						
		(L:AP_FADEC_CLBTHR, number) 0 ==
		(L:AP_FADEC_IDLTHR, number) 0 == &amp;&amp;
		if{
			(L:AP_ATHR_LpidOut2, number) (&gt;L:AP_LpidOut2, number)
			(L:AP_ATHR_RpidOut2, number) (&gt;L:AP_RpidOut2, number) }
		
		(L:AP_FADEC_CLBTHR, number) 1 ==
		(L:AP_FADEC_IDLTHR, number) 1 == ||
		(L:AB_AP_ATHR, number) 1 == &amp;&amp;
		if{
			(L:AP_FADECLSpdDif, number) (L:CALC_FLT_IDL, number) - (L:FADEC_CLB, number) (L:CALC_FLT_IDL, number) - / 100 * (&gt; L:AP_LpidOut2, number)
			(L:AP_FADECRSpdDif, number) (L:CALC_FLT_IDL, number) - (L:FADEC_CLB, number) (L:CALC_FLT_IDL, number) - / 100 * (&gt; L:AP_RpidOut2, number)
			(L:AP_LpidOut2, number) 1 (L:AP_ATHRInt, number) / * (&gt; L:AP_ATHRIntegral, number) }
			
		(L:Throttle_ani_fix_R, number) 75 &gt;= 
		if{
			(L:AP_FADECRSpdDif, number) (&gt;L:AP_LpidOut2, number) }
			
		(L:Throttle_ani_fix_L, number) 75 &gt;=
		if{
			(L:AP_FADECRSpdDif, number) (&gt;L:AP_RpidOut2, number) }
		
		0.0018 (&gt;L:AP_ATHRdt, number)
		
		(L:Pause2_code, bool) 0 ==
		if{
			
			<!--setpoint - process_feedback = error-->
			<!--(L:AB_AP_SPDMACH, number) 0 ==
			if{-->
				(L:AB_AP_SPEED_Selected, number) (&gt; L:AB_AP_ATHR_Target, number)		
				
				(L:AB_AP_SPDmode_set, number) 0 &gt;= 
				(L:MCDU_FLT_PHS, number) 4 ==
				(L:MCDU_FLT_PHS, number) 5 == || &amp;&amp;	
				if{
				
					(A:FLAPS HANDLE INDEX,  number) 0 ==
					if{ (L:AB_AP_SPEED_Selected,number) (L:MCDU_TO_0, number) max (&gt; L:AB_AP_ATHR_Target, number) }
					
					(A:FLAPS HANDLE INDEX,  number) 1 ==
					(A:FLAPS HANDLE INDEX,  number) 2 == ||
					if{ (L:AB_AP_SPEED_Selected,number) (L:MCDU_TO_S, number) max (&gt; L:AB_AP_ATHR_Target, number) }
					
					(A:FLAPS HANDLE INDEX,  number) 3 ==
					
					(A:FLAPS HANDLE INDEX,  number) 4 ==
					(L:MCDU_APP_LDGCONF, number) 0 == &amp;&amp; ||
					if{ (L:AB_AP_SPEED_Selected,number) (L:MCDU_TO_F, number) max (&gt; L:AB_AP_ATHR_Target, number) }
					
				}
				
				
				(L:AB_AP_ATHR_Target, number) 0.5 + (A:Airspeed indicated, knots) - (&gt; L:AP_ATHRSpdDif, number)
				
				(L:Autoland_retard, bool) 1 ==
				(L:AB_AP_AP1, number) 1 ==
				(L:AB_AP_AP2, number) 1 == || &amp;&amp;
				if{
					0 (A:Airspeed indicated, knots) - 15 * (&gt; L:AP_ATHRSpdDif, number)  }
				
				(L:FBW_TOGALK, bool) 1 ==
				if{
					999 (A:Airspeed indicated, knots) - 15 * (&gt; L:AP_ATHRSpdDif, number) }
				
				(L:AP_AP_ALT_Mode, number) 1 ==
				(L:GEODESCEND, number) 0 ==
				(L:AB_AP_SPDmode_set, number) 0 &lt; || &amp;&amp;
				(L:MCDU_Early_Vnav, number) 0 == &amp;&amp;	
				(L:MCDU_FLT_PHS, number) 4 == 
				(L:MCDU_FLT_PHS, number) 5 == || &amp;&amp;
				(L:AB_AP_KNOBALT, bool) 0 == &amp;&amp;
				(L:AB_MPL_FD, number) 1 ==
				(L:AB_AP_AP1, number) 1 == ||
				(L:AB_AP_AP2, number) 1 == || &amp;&amp;
				if{
					(L:Mrkr_Mvmnt_BttmA, number) 5 + (A:Airspeed indicated, knots) - (&gt; L:AP_ATHRSpdDif, number) }
				
				<!--Mach Mode-->
				<!--(L:AB_AP_SPDMACH, number) 1 ==
				if{
					(L:AB_AP_Mach_Select, number) (A:Airspeed mach, machs) - 10000 * 50 min -50 max (&gt; L:AP_ATHRSpdDif, number) }-->
					
				(L:MP_CONN, number) 0 ==
				if{
					(L:AP_ATHRSpdDif, number) (L:AP_ATHRDemSched, number) * (L:IAS_Accel, Feet per second squared) (A:ACCELERATION BODY Z, Feet per second squared) 3 * + 2 / 5.92484 * (L:AP_ATHRAccDemSched, number) * - 1.5 / (&gt; L:AP_ATHRSetErr, number)

					<!--integral + (error*dt) = integral-->
					(L:AP_ATHRSetErr, number) (L:AP_ATHRdt, number) * (L:AP_ATHRIntegral, number) + 100 (L:AP_ATHRInt, number) / min 0 max (&gt;L:AP_ATHRIntegral, number)

					<!--(error - previous_error)/dt = derivative-->
					(L:AP_ATHRSetErr, number) (L:AP_ATHRPrevERR,number) - (L:AP_ATHRdt, number) / (&gt;L:AP_ATHRDerivative, number)
					
					(L:AP_ATHRSetErr, number) (L:AP_ATHRLoopGain, number) * (L:AP_ATHRInt, number) (L:AP_ATHRIntegral, number) * + (L:AP_ATHRDif, number) (L:AP_ATHRDerivative, number) * + (&gt;L:AP_ATHRRpidOut2, number)
				}
				
				(L:AB_TypeIdent, number) 12 ==
				(L:AB_TypeIdent, number) 22 == ||
				(L:AB_TypeIdent, number) 32 == ||
				(L:AB_TypeIdent, number) 42 == || 
				if{
					<!--(Kp*error) + (Ki*integral) + (Kd*derivative) = output-->
					2.50 (&gt;L:AP_ATHRDemSched, number) 1.4 (&gt;L:AP_ATHRAccDemSched, number) 0.015 (&gt;L:AP_ATHRLoopGain, number) 12 (&gt;L:AP_ATHRInt, number) 0 (&gt;L:AP_ATHRDif, number)
					(L:AP_ATHRRpidOut2, number) 100 min 0 max (&gt;L:AP_ATHR_RpidOut2, number)
					(L:AP_ATHRRpidOut2, number) 100 min 0 max (&gt;L:AP_ATHR_LpidOut2, number) }
					els{
					<!--(Kp*error) + (Ki*integral) + (Kd*derivative) = output-->
					3.50 (&gt;L:AP_ATHRDemSched, number) 2.1 (&gt;L:AP_ATHRAccDemSched, number) 0.02 (&gt;L:AP_ATHRLoopGain, number) 10 (&gt;L:AP_ATHRInt, number) 0 (&gt;L:AP_ATHRDif, number)
					(L:AP_ATHRRpidOut2, number) 100 min 0 max (&gt;L:AP_ATHR_RpidOut2, number)
					(L:AP_ATHRRpidOut2, number) 100 min 0 max (&gt;L:AP_ATHR_LpidOut2, number) }
				
				<!--previous_error = error-->
				(L:AP_ATHRSetErr, number) (&gt; L:AP_ATHRPrevERR,number) }
			
			
			<!--Autothrottle ECAM and MC -->
			(A:Radio height, feet) 14 - 100 &gt;
			(L:LDG_Memo, bool) 0 == &amp;&amp;
			if{	
				(L:AB_AP_ATHR_history, number) (L:AB_AP_ATHR, number) - 1 ==
				if{
					1 (&gt; L:ATHR_Disconnect_sense, bool)
				}
				(L:AB_AP_ATHR_history, number) (L:AB_AP_ATHR, number) - -1 ==
				if{
					1 (&gt; L:ATHR_Connect_sense, bool)
				}
				
				(L:ATHR_Disconnect_std, number) 0 ==
				(L:ATHR_Disconnect_sense, bool) 1 == &amp;&amp;
				if{
					(L:Throttle_ani_fix_L, number) 25 ==
					(L:Throttle_ani_fix_R, number) 25 == ||
					if{
						1 (&gt; L:THR_LOCK_sense, bool)
					}
					
					<!-- 0 (&gt; L:AB_AP_ATHR, number) -->
					1 (&gt; L:ATHR_Disc_Ecam_MC, bool)
					0 (&gt; L:ATHR_Disconnect_sense, bool)
				}
				(L:ATHR_Disconnect_std, number) 1 ==
				if{
					<!-- 0 (&gt; L:AB_AP_ATHR, number) -->
					1 (&gt; L:ATHR_Disc_Ecam_Memo, bool)
					1 (&gt; L:ATHR_Disc_Ecam_MC_std, bool)
					1 (&gt; L:ATHR_Disc_Ecam_tmr_start, bool)
					0 (&gt; L:ATHR_Disconnect_std, number)
					0 (&gt; L:ATHR_Disconnect_sense, bool)
				}
				
				(L:ATHR_Disc_Ecam_tmr_start, bool) 1 ==
				if{
					(L:ATHR_Disc_Ecam_MC_timer, number) 1 + (&gt; L:ATHR_Disc_Ecam_MC_timer, number)
					(L:ATHR_Disc_Ecam_MC_timer, number) 54 ==
					if{
						0 (&gt; L:ATHR_Disc_Ecam_MC_std, bool)
						0 (&gt; L:ATHR_Disc_Ecam_tmr_start, bool)
						0 (&gt; L:ATHR_Disc_Ecam_MC_timer, number)
					}
				}
				
				(L:ATHR_Disc_Ecam_Memo, bool) 1 ==
				if{
					(L:ATHR_Disc_Ecam_Memo_timer, number) 1 + (&gt; L:ATHR_Disc_Ecam_Memo_timer, number)
					(L:ATHR_Disc_Ecam_Memo_timer, number) 162 ==
					if{
						0 (&gt; L:ATHR_Disc_Ecam_Memo, bool)
						0 (&gt; L:ATHR_Disc_Ecam_Memo_timer, number)
					}
				}
				
				(L:Throttle_ani_fix_R, number) 20 ==
				(L:Throttle_ani_fix_R, number) 20 == &amp;&amp;
				(L:AB_AP_ATHR, number) 1 == &amp;&amp;
				(L:ATHR_Limited_Sense, bool) 0 == &amp;&amp;
				if{
					(L:ATHR_limited_tmr, number) 1 + (&gt; L:ATHR_limited_tmr, number)
					(L:ATHR_limited_tmr, number) 30 ==
					if{
						1 (&gt; L:ATHR_Limited_Sense, bool)
					}
				}
				(L:Throttle_ani_fix_R, number) 25 ==
				(L:Throttle_ani_fix_R, number) 25 == &amp;&amp;
				(L:AB_AP_ATHR, number) 0 == ||
				if{
					0 (&gt; L:ATHR_Limited_Sense, bool)
					0 (&gt; L:ATHR_limited_tmr, number)
				}
			}
			els{
				<!-- Allow ATHR Disconnect below 50 ft -->
				(L:ATHR_Disconnect_std, number) 1 ==
				if{
					0 (&gt; L:AB_AP_ATHR, number)
					0 (&gt; L:ATHR_Disconnect_sense, bool)
					0 (&gt; L:ATHR_Connect_sense, bool)
					0 (&gt; L:ATHR_Disconnect_std, number)
					0 (&gt; L:THR_LOCK_sense, bool)
					0 (&gt; L:THR_LCK_MC, bool)
					0 (&gt; L:THR_LCK_Blink_tmr, number)
					0 (&gt; L:ATHR_Disc_Ecam_MC, bool)
					0 (&gt; L:ATHR_Disc_Ecam_MC_std, bool)
					0 (&gt; L:ATHR_Disc_Ecam_MC_timer, number)
					0 (&gt; L:ATHR_Disc_Ecam_MC_std, bool)
					0 (&gt; L:ATHR_Disc_Ecam_Memo, bool)
					0 (&gt; L:ATHR_Disc_Ecam_Memo_timer, number)
					0 (&gt; L:ATHR_Disc_Ecam_tmr_start, bool)
					0 (&gt; L:ATHR_Limited_MC, bool)
					0 (&gt; L:ATHR_Limited_Sense, bool)
					0 (&gt; L:ATHR_limited_tmr, number)
				}
			}
			
			(L:Throttle_ani_fix_L, number) 25 !=
			(L:Throttle_ani_fix_R, number) 25 != &amp;&amp;
			if{
				0 (&gt; L:THR_LOCK_sense, bool)
			}
			
			(L:THR_LOCK_sense, bool) 1 ==
			if{
				(L:THR_LCK_Blink_tmr, number) 1 + (&gt; L:THR_LCK_Blink_tmr, number)
				(L:THR_LCK_Blink_tmr, number) 90 ==
				if{
					0 (&gt; L:THR_LCK_Blink_tmr, number)
				}
				(L:THR_LCK_Blink_tmr, number) 68 &lt;=
				if{
					1 (&gt; L:THR_LCK_MC, bool)
				}
				els{
					0 (&gt; L:THR_LCK_MC, bool)
				}
			}
			els{
				0 (&gt; L:THR_LCK_MC, bool)
				0 (&gt; L:THR_LCK_Blink_tmr, number)
			}
			
			(L:ATHR_Limited_Sense, bool) 1 ==
			if{
				(L:ATHR_Limited_Blink_tmr, number) 1 + (&gt; L:ATHR_Limited_Blink_tmr, number)
				(L:ATHR_Limited_Blink_tmr, number) 90 ==
				if{
					0 (&gt; L:ATHR_Limited_Blink_tmr, number)
				}
				(L:ATHR_Limited_Blink_tmr, number) 68 &lt;=
				if{
					1 (&gt; L:ATHR_Limited_MC, bool)
				}
				els{
					0 (&gt; L:ATHR_Limited_MC, bool)
				}
			}
			els{
				0 (&gt; L:ATHR_Limited_MC, bool)
				0 (&gt; L:ATHR_Limited_Blink_tmr, number)
			}
			
			(L:ATHR_Connect_sense, bool) 1 ==
			if{
				0 (&gt; L:ATHR_Disconnect_sense, bool)
				0 (&gt; L:ATHR_Connect_sense, bool)
				0 (&gt; L:ATHR_Disconnect_std, number)
				0 (&gt; L:THR_LOCK_sense, bool)
				0 (&gt; L:THR_LCK_MC, bool)
				0 (&gt; L:THR_LCK_Blink_tmr, number)
				0 (&gt; L:ATHR_Disc_Ecam_MC, bool)
				0 (&gt; L:ATHR_Disc_Ecam_MC_std, bool)
				0 (&gt; L:ATHR_Disc_Ecam_MC_timer, number)
				0 (&gt; L:ATHR_Disc_Ecam_MC_std, bool)
				0 (&gt; L:ATHR_Disc_Ecam_Memo, bool)
				0 (&gt; L:ATHR_Disc_Ecam_Memo_timer, number)
				0 (&gt; L:ATHR_Disc_Ecam_tmr_start, bool)
				0 (&gt; L:ATHR_Limited_MC, bool)
				0 (&gt; L:ATHR_Limited_Sense, bool)
				0 (&gt; L:ATHR_limited_tmr, number)
			}
			(L:AB_AP_ATHR, number) (&gt; L:AB_AP_ATHR_history, number)
			
			(L:MC_27, bool) 1 ==
			(L:THR_LCK_Delay, bool) 0 == &amp;&amp;
			if{
				(L:THR_Lock_Delay_tmr, number) 1 + (&gt; L:THR_Lock_Delay_tmr, number)
				(L:THR_Lock_Delay_tmr, number) 90 == 
				if{
					1 (&gt; L:THR_LCK_Delay, bool)
				}
			}
			(L:MC_27, bool) 0 ==
			if{
				0 (&gt; L:THR_LCK_Delay, bool)
				0 (&gt; L:THR_Lock_Delay_tmr, number)
			}
			

	</Update>
	
	 <Keys>

		<On Event="DECREASE_THROTTLE">
		2 (&gt; L:FADEC_FaultTolL, number)
		2 (&gt; L:FADEC_FaultTolR, number)
		(L:Throttle_ani_fix_L, number) 0 ==
		(L:Throttle_ani_fix_R, number) 0 == &amp;&amp;
		(A:GENERAL ENG THROTTLE LEVER POSITION:1, Percent) 0 &gt;= &amp;&amp;
		(A:GENERAL ENG THROTTLE LEVER POSITION:2, Percent) 0 &gt;= &amp;&amp;
		if{
			0 (&gt; K:THROTTLE2_SET)
			0 (&gt; K:THROTTLE1_SET) }
			
		(L:FADEC_L, number) 60 &lt;=
		(L:FADEC_R, number) 60 &lt;= ||
		if{
			(L:FADEC_L, number) 2 - 0 max (&gt; L:FADEC_L, number)
			(L:FADEC_R, number) 2 - 0 max (&gt; L:FADEC_R, number) }
		els{
			(L:FADEC_L, number) 5 - 0 max (&gt; L:FADEC_L, number)
			(L:FADEC_R, number) 5 - 0 max (&gt; L:FADEC_R, number) }
		</On>
		
		<On Event="THROTTLE_DECR_SMALL">
		2 (&gt; L:FADEC_FaultTolL, number)
		2 (&gt; L:FADEC_FaultTolR, number)
		(L:Throttle_ani_fix_L, number) 0 ==
		(L:Throttle_ani_fix_R, number) 0 == &amp;&amp;
		(A:GENERAL ENG THROTTLE LEVER POSITION:1, Percent) 0 &gt;= &amp;&amp;
		(A:GENERAL ENG THROTTLE LEVER POSITION:2, Percent) 0 &gt;= &amp;&amp;
		if{
			0 (&gt; K:THROTTLE2_SET)
			0 (&gt; K:THROTTLE1_SET) }
			
		(L:FADEC_L, number) 60 &lt;=
		(L:FADEC_R, number) 60 &lt;= ||
		if{
			(L:FADEC_L, number) 2 - 0 max (&gt; L:FADEC_L, number)
			(L:FADEC_R, number) 2 - 0 max (&gt; L:FADEC_R, number) }
		els{
			(L:FADEC_L, number) 5 - 0 max (&gt; L:FADEC_L, number)
			(L:FADEC_R, number) 5 - 0 max (&gt; L:FADEC_R, number) }
		</On>
		
		<On Event="THROTTLE_DECR">
		2 (&gt; L:FADEC_FaultTolL, number)
		2 (&gt; L:FADEC_FaultTolR, number)
		(L:Throttle_ani_fix_L, number) 0 ==
		(L:Throttle_ani_fix_R, number) 0 == &amp;&amp;
		(A:GENERAL ENG THROTTLE LEVER POSITION:1, Percent) 0 &gt;= &amp;&amp;
		(A:GENERAL ENG THROTTLE LEVER POSITION:2, Percent) 0 &gt;= &amp;&amp;
		if{
			0 (&gt; K:THROTTLE2_SET)
			0 (&gt; K:THROTTLE1_SET) }
			
		(L:FADEC_L, number) 60 &lt;=
		(L:FADEC_R, number) 60 &lt;= ||
		if{
			(L:FADEC_L, number) 2 - 0 max (&gt; L:FADEC_L, number)
			(L:FADEC_R, number) 2 - 0 max (&gt; L:FADEC_R, number) }
		els{
			(L:FADEC_L, number) 5 - 0 max (&gt; L:FADEC_L, number)
			(L:FADEC_R, number) 5 - 0 max (&gt; L:FADEC_R, number) }
		</On>
		
		<On Event="AUTO_THROTTLE_ARM">
		(L:AB_AP_ATHR, number) 1 ==
		if{
		1 (&gt; L:ASC_ATHR_Off, number)
		1 (&gt; L:ATHR_Disconnect_std, number)
		0 (&gt; L:AB_AP_ATHR, number) }
		</On>
		
		<On Event="THROTTLE_INCR_SMALL">		
		(L:FADEC_L, number) 60 &lt;
		(L:FADEC_R, number) 60 &lt; ||
		if{
			(L:FADEC_L, number) 2 + 100 min (&gt; L:FADEC_L, number)
			(L:FADEC_R, number) 2 + 100 min (&gt; L:FADEC_R, number) }
		els{
			(L:FADEC_L, number) 5 + 100 min (&gt; L:FADEC_L, number)
			(L:FADEC_R, number) 5 + 100 min (&gt; L:FADEC_R, number) }
		</On>
		
		<On Event="THROTTLE_INCR">
		(L:FADEC_L, number) 60 &lt;
		(L:FADEC_R, number) 60 &lt; ||
		if{
			(L:FADEC_L, number) 2 + 100 min (&gt; L:FADEC_L, number)
			(L:FADEC_R, number) 2 + 100 min (&gt; L:FADEC_R, number) }
		els{
			(L:FADEC_L, number) 5 + 100 min (&gt; L:FADEC_L, number)
			(L:FADEC_R, number) 5 + 100 min (&gt; L:FADEC_R, number) }
		</On>
		
		<On Event="THROTTLE_CUT">
			0 (&gt; L:FADEC_L, number)
			0 (&gt; L:FADEC_R, number)
			18 (&gt; L:FADEC_FaultTolL, number)
			18 (&gt; L:FADEC_FaultTolR, number)
		</On>
		
		<On Event="THROTTLE_FULL">
			99 (&gt; L:FADEC_L, number)
			99 (&gt; L:FADEC_R, number)
			1 (&gt; L:ThrottleDetend_Toga, bool)
			18 (&gt; L:FADEC_FaultTolL, number)
			18 (&gt; L:FADEC_FaultTolR, number)
		</On>
		
		<On Event="FLAPS_INCR">
			1 (&gt; L:FLAPS_INC, number)
			1 (&gt; L:FLAPS_KBD, number)
		   (L:FLAPS_LVR, number) 1 + 5 min (&gt; L:FLAPS_LVR, number)
		</On>
		
		<On Event="FLAPS_DECR">
			1 (&gt; L:FLAPS_DEC, number)
			1 (&gt; L:FLAPS_KBD, number)
		   (L:FLAPS_LVR, number) 1 - 0 max (&gt; L:FLAPS_LVR, number)
		</On>
		
		<On Event="FLAPS_UP">
			0 (&gt; L:FLAPS_LVR, number)
			1 (&gt; L:FLAPS_KBD, number)
		</On>
		
		<On Event="FLAPS_DOWN">
			5 (&gt; L:FLAPS_LVR, number)
			1 (&gt; L:FLAPS_KBD, number)
		</On>		
			
  </Keys>
</Gauge>