{curve "gun_std"}	;// Refers to ballistic.set


;/*============================== Speeds / Muzzle Velocity ==============================*/


(define "global velocity"
	{speed (* 0.95 %gv)}			;// Global muzzle velocity scale for all weapons in "gun" folder.
)

(define "velocity"					;// used in gun file when muzzle velocity is same across all ammo types.
	("global velocity" gv(%mps))
)
(define "velocity m/s"				;// used in gun file when muzzle velocity varies across ammo types.

	("global velocity" gv(%he))		;// stops crash for on AI aim calculations

	{parameters "ap"		("global velocity" gv(%ap))}
	{parameters "apc"		("global velocity" gv(%ap))}
	{parameters "apche"		("global velocity" gv(%ap))}
	{parameters "aphe"		("global velocity" gv(%ap))}
	{parameters "apbc"		("global velocity" gv(%ap))}
	{parameters "apbche"	("global velocity" gv(%ap))}
	{parameters "apbche2"	("global velocity" gv(%ap))}
	{parameters "apcbc"		("global velocity" gv(%ap))}
	{parameters "apcbche"	("global velocity" gv(%ap))}
	{parameters "aphebc"	("global velocity" gv(%ap))}
	{parameters "aphebc2"	("global velocity" gv(%ap))}

	{parameters "apcr"		("global velocity" gv(%apcr))}
	{parameters "hvap"		("global velocity" gv(%apcr))}
	{parameters "apds"		("global velocity" gv(%apcr))}

	{parameters "he"		("global velocity" gv(%he))}
	{parameters "he2"		("global velocity" gv(%he))}
	{parameters "sm"		("global velocity" gv(%he))}
	{parameters "wp"		("global velocity" gv(%he))}

	{parameters "heat"		("global velocity" gv(%heat))}
	{parameters "heata"		("global velocity" gv(%heat))}
	{parameters "heatb"		("global velocity" gv(%heat))}
	{parameters "heatc"		("global velocity" gv(%heat))}
)


;/*============================== Rate of Fire ==============================*/


(define "fire rate"			;//rate of fire in rounds per minute 
	{recoveryTime (/ 60 %rpm)}
)

(define "reload time"		;//reload time for magazine or shell
	{rechargeTime (* 1.6 %seconds)}
)


;/*============================== Damages ==============================*/

(define "penetration_long"
	{parameters "%shell" ;// for units with higher range than 205, polynomial curve to simulate closer range engagements
		{projectileDamageTable 
			{10 (+ %a (+ 1.3 (/ (- %a %b) 4.4)))} ; Max penetration (at 10m)
			{30 %a}                           ; Standard short range penetration
			{100 %b}                          ; Standard medium range penetration
			{200 %c}                          ; Standard longer range penetration
			{300 %d}                          ; Standard furthest defined range penetration
			{400 (* %d 0.5)}                 ; Penetration at 1000m (50% of 205m value)
			{500 (* %d 0.2)}                 ; Penetration at 2000m (20% of 205m value)
		}
	}
)
(define "penetration_medium"
	{parameters "%shell" ;// for units with higher range than 205, polynomial curve to simulate closer range engagements
		{projectileDamageTable 
			{10 (+ %a (+ 1.3 (/ (- %a %b) 4.4)))} ; Max penetration (at 10m)
			{30 %a}                           ; Standard short range penetration
			{100 %b}                          ; Standard medium range penetration
			{200 %c}                          ; Standard longer range penetration
			{300 %d}                          ; Standard furthest defined range penetration
			{400 (* %d 0.5)}                 ; Penetration at 1000m (50% of 205m value)
			{500 (* %d 0.2)}                 ; Penetration at 2000m (20% of 205m value)
		}
	}
)
(define "penetration_short"
	{parameters "%shell" ;// for units with higher range than 205, polynomial curve to simulate closer range engagements
		{projectileDamageTable 
			{10 (+ %a (+ 1.3 (/ (- %a %b) 4.4)))} ; Max penetration (at 10m)
			{30 %a}                           ; Standard short range penetration
			{100 %b}                          ; Standard medium range penetration
			{200 %c}                          ; Standard longer range penetration
			{300 %d}                          ; Standard furthest defined range penetration
			{400 (* %d 0.5)}                 ; Penetration at 1000m (50% of 205m value)
			{500 (* %d 0.2)}                 ; Penetration at 2000m (20% of 205m value)
		}
	}
)
(define "penetration"  ;// penetration drop curve with decreasing penetration after 250m (2km IRL, 1/8th ish Scale)
		{projectileDamageTable 
			{10 (+ %a (+ 1.3 (/ (- %a %b) 4.4)))} ; Max penetration (at 10m)
			{30 %a}                           ; Standard short range penetration
			{100 %b}                          ; Standard medium range penetration
			{200 %c}                          ; Standard longer range penetration
			{300 %d}                          ; Standard furthest defined range penetration
			{400 (* %d 0.5)}                 ; Penetration at 1000m (50% of 205m value)
			{500 (* %d 0.2)}                 ; Penetration at 2000m (20% of 205m value)
		}
)

(define "armor health"

	{minimumDamageModifier (* 1.0 %damage)} ;// In case only generic value is called

	{parameters "ap" 		{minimumDamageModifier (* 1.00 %damage)}}
	{parameters "apc" 		{minimumDamageModifier (* 1.00 %damage)}}
	{parameters "apche" 	{minimumDamageModifier (* 1.25 %damage)}}
	{parameters "aphe" 		{minimumDamageModifier (* 1.25 %damage)}}
	{parameters "apbc" 		{minimumDamageModifier (* 1.00 %damage)}}
	{parameters "apcbc" 	{minimumDamageModifier (* 1.00 %damage)}}
	{parameters "apcbche" 	{minimumDamageModifier (* 1.25 %damage)}}
	{parameters "apcbche2" 	{minimumDamageModifier (* 1.25 %damage)}}
	{parameters "aphebc" 	{minimumDamageModifier (* 1.25 %damage)}}
	{parameters "aphebc2" 	{minimumDamageModifier (* 1.25 %damage)}}
	{parameters "apcr" 		{minimumDamageModifier (* 1.00 %damage)}}
	{parameters "hvap" 		{minimumDamageModifier (* 1.00 %damage)}}
	{parameters "apds" 		{minimumDamageModifier (* 1.00 %damage)}}
	{parameters "heat" 		{minimumDamageModifier (* 1.25 %damage)}}
	{parameters "heata" 	{minimumDamageModifier (* 1.25 %damage)}}
	{parameters "heatb" 	{minimumDamageModifier (* 1.25 %damage)}}
	{parameters "heatc" 	{minimumDamageModifier (* 1.25 %damage)}}
	;// HE, WP, SM not included as they have no penetration power modelled.
)

; // Damage logic for AP-type shells with HE filler. Implemented a cubic equation to interpolate. Avoid touching the numbers (very sensitive!).
(define "armor health custom" ;
	{parameters "%shell"
		{minimumDamageModifier (+ (* %damage (/ %velocity 2100)) (* 0.72 (- (+ 29 (+ %damage (+ (* 0.35 %filler ) (* 0.0000000075 (* %filler (* %filler %filler))))))  (* 0.00009 (* %filler %filler)))))} ; //Filler defined in grams of TNT
	}
)
(define "human health"		;// Damage to human health
	{healthDamage (* 1 %damage)}
)



;/*============================== Accuracies ==============================*/

(define "accuracy_indirect" 	;// for indirect units with more than 200m range
	("curve_indirect"
		r1(%r1)						;// direct fire accuracy
		r2(%r2)						;// indirect fire accuracy
		rmax(%rmax)					;// max range indirect fire accuracy
		range_ap(%range_ap)
		range_he(%range_he)
		range_heat(%range_heat)
		falloff(0.05)
		r0(0.5)					;// global accuracy indirect
		r01(0.5)					;// global accuracy direct
		ap200(6.50)
		heat200(8.00)
		he200(10)
	)
)

(define "curve_indirect"
	{parameters "ap"
		{spreading
			{radiusTable
				{0 0}
				{ %range_ap (* %ap200 (* %r1 %r0))}							
				{(* 2 %range_ap) (* 3.0 %ap200 (* %r1 %r0))}				
				{(* 3 %range_ap) (* 6.0 %ap200 (* %r1 %r0))}	
				{(* 4 %range_ap) (* 10.0 %ap200 (* %r1 %r0))}					
			}
		}
	}
	{parameters "ap2"
		{spreading
			{radiusTable
				{0 0}
				{ %range_ap (* %ap200 (* %r1 %r0))}							
				{(* 2 %range_ap) (* 3.0 %ap200 (* %r1 %r0))}				
				{(* 3 %range_ap) (* 6.0 %ap200 (* %r1 %r0))}	
				{(* 4 %range_ap) (* 10.0 %ap200 (* %r1 %r0))}					
			}
		}
	}
	{parameters "apc"
		{spreading
			{radiusTable
				{0 0}
				{ %range_ap (* %ap200 (* %r1 %r0))}							
				{(* 2 %range_ap) (* 3.0 %ap200 (* %r1 %r0))}				
				{(* 3 %range_ap) (* 6.0 %ap200 (* %r1 %r0))}	
				{(* 4 %range_ap) (* 10.0 %ap200 (* %r1 %r0))}					
			}
		}
	}
	{parameters "apche"
		{spreading
			{radiusTable
				{0 0}
				{ %range_ap (* %ap200 (* %r1 %r0))}							
				{(* 2 %range_ap) (* 3.0 %ap200 (* %r1 %r0))}				
				{(* 3 %range_ap) (* 6.0 %ap200 (* %r1 %r0))}	
				{(* 4 %range_ap) (* 10.0 %ap200 (* %r1 %r0))}					
			}
		}
	}
	{parameters "aphe"
		{spreading
			{radiusTable
				{0 0}
				{ %range_ap (* %ap200 (* %r1 %r0))}							
				{(* 2 %range_ap) (* 3.0 %ap200 (* %r1 %r0))}				
				{(* 3 %range_ap) (* 6.0 %ap200 (* %r1 %r0))}	
				{(* 4 %range_ap) (* 10.0 %ap200 (* %r1 %r0))}					
			}
		}
	}
	{parameters "apbc"
		{spreading
			{radiusTable
				{0 0}
				{ %range_ap (* %ap200 (* %r1 %r0))}							
				{(* 2 %range_ap) (* 3.0 %ap200 (* %r1 %r0))}				
				{(* 3 %range_ap) (* 6.0 %ap200 (* %r1 %r0))}	
				{(* 4 %range_ap) (* 10.0 %ap200 (* %r1 %r0))}					
			}
		}
	}
	{parameters "apbche"
		{spreading
			{radiusTable
				{0 0}
				{ %range_ap (* %ap200 (* %r1 %r0))}							
				{(* 2 %range_ap) (* 3.0 %ap200 (* %r1 %r0))}				
				{(* 3 %range_ap) (* 6.0 %ap200 (* %r1 %r0))}	
				{(* 4 %range_ap) (* 10.0 %ap200 (* %r1 %r0))}					
			}
		}
	}
	{parameters "apcbc"
		{spreading
			{radiusTable
				{0 0}
				{ %range_ap (* %ap200 (* %r1 %r0))}							
				{(* 2 %range_ap) (* 3.0 %ap200 (* %r1 %r0))}				
				{(* 3 %range_ap) (* 6.0 %ap200 (* %r1 %r0))}	
				{(* 4 %range_ap) (* 10.0 %ap200 (* %r1 %r0))}					
			}
		}
	}
	{parameters "apcbche"
		{spreading
			{radiusTable
				{0 0}
				{ %range_ap (* %ap200 (* %r1 %r0))}							
				{(* 2 %range_ap) (* 3.0 %ap200 (* %r1 %r0))}				
				{(* 3 %range_ap) (* 6.0 %ap200 (* %r1 %r0))}	
				{(* 4 %range_ap) (* 10.0 %ap200 (* %r1 %r0))}					
			}
		}
	}
	{parameters "apcbche2"
		{spreading
			{radiusTable
				{0 0}
				{ %range_ap (* %ap200 (* %r1 %r0))}							
				{(* 2 %range_ap) (* 3.0 %ap200 (* %r1 %r0))}				
				{(* 3 %range_ap) (* 6.0 %ap200 (* %r1 %r0))}	
				{(* 4 %range_ap) (* 10.0 %ap200 (* %r1 %r0))}					
			}
		}
	}
	{parameters "aphebc"
		{spreading
			{radiusTable
				{0 0}
				{ %range_ap (* %ap200 (* %r1 %r0))}							
				{(* 2 %range_ap) (* 3.0 %ap200 (* %r1 %r0))}				
				{(* 3 %range_ap) (* 6.0 %ap200 (* %r1 %r0))}	
				{(* 4 %range_ap) (* 10.0 %ap200 (* %r1 %r0))}					
			}
		}
	}
	{parameters "aphebc2"
		{spreading
			{radiusTable
				{0 0}
				{ %range_ap (* %ap200 (* %r1 %r0))}							
				{(* 2 %range_ap) (* 3.0 %ap200 (* %r1 %r0))}				
				{(* 3 %range_ap) (* 6.0 %ap200 (* %r1 %r0))}	
				{(* 4 %range_ap) (* 10.0 %ap200 (* %r1 %r0))}					
			}
		}
	}
	{parameters "apcr"
		{spreading
			{radiusTable
				{0 0}
				{ %range_ap (* %ap200 (* %r1 %r0))}							
				{(* 2 %range_ap) (* 3.0 %ap200 (* %r1 %r0))}				
				{(* 3 %range_ap) (* 6.0 %ap200 (* %r1 %r0))}	
				{(* 4 %range_ap) (* 10.0 %ap200 (* %r1 %r0))}					
			}
		}
	}
	{parameters "apcr2"
		{spreading
			{radiusTable
				{0 0}
				{ %range_ap (* %ap200 (* %r1 %r0))}							
				{(* 2 %range_ap) (* 3.0 %ap200 (* %r1 %r0))}				
				{(* 3 %range_ap) (* 6.0 %ap200 (* %r1 %r0))}	
				{(* 4 %range_ap) (* 10.0 %ap200 (* %r1 %r0))}					
			}
		}
	}
	{parameters "hvap"
		{spreading
			{radiusTable
				{0 0}
				{ %range_ap (* %ap200 (* %r1 %r0))}							
				{(* 2 %range_ap) (* 3.0 %ap200 (* %r1 %r0))}				
				{(* 3 %range_ap) (* 6.0 %ap200 (* %r1 %r0))}	
				{(* 4 %range_ap) (* 10.0 %ap200 (* %r1 %r0))}					
			}
		}
	}
	{parameters "apds"
		{spreading
			{radiusTable
				{0 0}
				{ %range_ap (* %ap200 (* %r1 %r0))}							
				{(* 2 %range_ap) (* 3.0 %ap200 (* %r1 %r0))}				
				{(* 3 %range_ap) (* 6.0 %ap200 (* %r1 %r0))}	
				{(* 4 %range_ap) (* 10.0 %ap200 (* %r1 %r0))}					
			}
		}
	}
	{parameters "he"
		{spreading
			{radiusTable
				{0 0}
				{(* 0.5 %range_he) (* 1.0 %he200 (* %r1 %r0))}				
				{(* 0.75 %range_he) (* 3.0 %he200 (* %r1 %r0))}				
				{(* 1.0 %range_he) (* 6.0 %he200 (* %r1 %r0))}	
				{(* 1.25 %range_he) (* 10.0 %he200 (* %r1 %r0))}						
			}
		}
	}
	{parameters "he2"
		{spreading
			{radiusTable
				{0 0}
				{(* 0.5 %range_he) (* 1.0 %he200 (* %r1 %r0))}				
				{(* 0.75 %range_he) (* 3.0 %he200 (* %r1 %r0))}				
				{(* 1.0 %range_he) (* 6.0 %he200 (* %r1 %r0))}	
				{(* 1.25 %range_he) (* 10.0 %he200 (* %r1 %r0))}						
			}
		}
	}
	{parameters "sm"
		{spreading
			{radiusTable
				{0 0}
				{(* 0.5 %range_he) (* 1.0 %he200 (* %r1 %r0))}				
				{(* 0.75 %range_he) (* 3.0 %he200 (* %r1 %r0))}				
				{(* 1.0 %range_he) (* 6.0 %he200 (* %r1 %r0))}	
				{(* 1.25 %range_he) (* 10.0 %he200 (* %r1 %r0))}						
			}
		}
	}
	{parameters "wp"
		{spreading
			{radiusTable
				{0 0}
				{(* 0.5 %range_he) (* 1.0 %he200 (* %r1 %r0))}				
				{(* 0.75 %range_he) (* 3.0 %he200 (* %r1 %r0))}				
				{(* 1.0 %range_he) (* 6.0 %he200 (* %r1 %r0))}	
				{(* 1.25 %range_he) (* 10.0 %he200 (* %r1 %r0))}						
			}
		}
	}
	{parameters "ic"
		{spreading
			{radiusTable
				{0 0}
				{(* 0.5 %range_he) (* 1.0 %he200 (* %r1 %r0))}				
				{(* 0.75 %range_he) (* 3.0 %he200 (* %r1 %r0))}				
				{(* 1.0 %range_he) (* 6.0 %he200 (* %r1 %r0))}	
				{(* 1.25 %range_he) (* 10.0 %he200 (* %r1 %r0))}						
			}
		}
	}
	{parameters "heat"
		{spreading
			{radiusTable
				{0 0}
				{ %range_heat (* %heat200 (* %r1 %r0))}							
				{(* 2 %range_heat) (* 3.0 %heat200 (* %r1 %r0))}				
				{(* 3 %range_heat) (* 6.0 %heat200 (* %r1 %r0))}	
				{(* 4 %range_heat) (* 10.0 %heat200 (* %r1 %r0))}					
			}
		}
	}
	{parameters "heata"
		{spreading
			{radiusTable
				{0 0}
				{ %range_heat (* %heat200 (* %r1 %r0))}							
				{(* 2 %range_heat) (* 3.0 %heat200 (* %r1 %r0))}				
				{(* 3 %range_heat) (* 6.0 %heat200 (* %r1 %r0))}	
				{(* 4 %range_heat) (* 10.0 %heat200 (* %r1 %r0))}					
			}
		}
	}
	{parameters "heatb"
		{spreading
			{radiusTable
				{0 0}
				{ %range_heat (* %heat200 (* %r1 %r0))}							
				{(* 2 %range_heat) (* 3.0 %heat200 (* %r1 %r0))}				
				{(* 3 %range_heat) (* 6.0 %heat200 (* %r1 %r0))}	
				{(* 4 %range_heat) (* 10.0 %heat200 (* %r1 %r0))}					
			}
		}
	}
	{parameters "heatc"
		{spreading
			{radiusTable
				{0 0}
				{ %range_heat (* %heat200 (* %r1 %r0))}							
				{(* 2 %range_heat) (* 3.0 %heat200 (* %r1 %r0))}				
				{(* 3 %range_heat) (* 6.0 %heat200 (* %r1 %r0))}	
				{(* 4 %range_heat) (* 10.0 %heat200 (* %r1 %r0))}					
			}
		}
	}
)


(define "accuracy_direct" ;// Accuracy for direct-fire weaponry
	("curve_direct"
		r1(%r1)
		range_ap(%range_ap)
		range_he(%range_he)
		range_heat(%range_heat)
		falloff(0.15)
		r0(0.7) 								; // global accuracy
		apbc200(6.00)
		apc200(6.75)
		ap200(6.50)
		he200(10.00)
		heat200(8.00)
		apcr200(5.50)
		hvap200(5.00)
		apds200(8.25)
	)
)
(define "accuracy_direct_arrowhead" ;// Accuracy for direct-fire weaponry, using arrowhead APCR design (early german APCR, all soviet APCR)
	("curve_direct"
		r1(%r1)
		range_ap(%range_ap)
		range_he(%range_he)
		range_heat(%range_heat)
		falloff(0.15)
		r0(0.7) 								; // global accuracy
		apbc200(6.00)
		apc200(6.75)
		ap200(6.50)
		he200(10.00)
		heat200(8.00)
		apcr200(6.75)
		hvap200(5.00)
		apds200(10.00)
	)
)
(define "accuracy_direct_auto" ;// Accuracy for direct-fire weaponry, autocannons
	("curve_direct"
		r1(%r1)
		range_ap(%range_ap)
		range_he(%range_he)
		range_heat(%range_heat)
		falloff(0.15)
		r0(0.7) 								; // global accuracy
		apbc200(6.00)
		apc200(6.75)
		ap200(6.50)
		he200(6.50)
		heat200(8.00)
		apcr200(6.75)
		hvap200(5.00)
		apds200(10.00)
	)
)
(define "accuracy_spg" ;// Accuracy for SPG direct-fire weaponry
	("curve_direct"
		r1(%r1)
		range_ap(%range_ap)
		range_he(%range_he)
		range_heat(%range_heat)
		falloff(0.15)
		r0(0.5) 								; // global accuracy
		apbc200(6.00)
		apc200(6.75)
		ap200(6.50)
		he200(10.0)
		heat200(8.00)
		apcr200(5.50)
		hvap200(5.00)
		apds200(10.00)
	)
)
(define "curve_direct"	;// This code scales accuracy to become logarithmically worse as range extends
	{parameters "ap"
		{spreading
			{radiusTable
				{0 0}
				{ %range_ap (* %ap200 (* %r1 %r0))}							
				{(* 2 %range_ap) (* 3.0 %ap200 (* %r1 %r0))}				
				{(* 3 %range_ap) (* 6.0 %ap200 (* %r1 %r0))}	
				{(* 4 %range_ap) (* 10.0 %ap200 (* %r1 %r0))}					
			}
		}
	}
	{parameters "ap2"
		{spreading
			{radiusTable
				{0 0}
				{ %range_ap (* %ap200 (* %r1 %r0))}							
				{(* 2 %range_ap) (* 3.0 %ap200 (* %r1 %r0))}				
				{(* 3 %range_ap) (* 6.0 %ap200 (* %r1 %r0))}	
				{(* 4 %range_ap) (* 10.0 %ap200 (* %r1 %r0))}					
			}
		}
	}
	{parameters "apc"
		{spreading
			{radiusTable
				{0 0}
				{ %range_ap (* %apc200 (* %r1 %r0))}							
				{(* 2 %range_ap) (* 3.0 %apc200 (* %r1 %r0))}				
				{(* 3 %range_ap) (* 6.0 %apc200 (* %r1 %r0))}	
				{(* 4 %range_ap) (* 10.0 %apc200 (* %r1 %r0))}					
			}
		}
	}
	{parameters "apche"
		{spreading
			{radiusTable
				{0 0}
				{ %range_ap (* %ap200 (* %r1 %r0))}							
				{(* 2 %range_ap) (* 3.0 %ap200 (* %r1 %r0))}				
				{(* 3 %range_ap) (* 6.0 %ap200 (* %r1 %r0))}	
				{(* 4 %range_ap) (* 10.0 %ap200 (* %r1 %r0))}					
			}
		}
	}
	{parameters "aphe"
		{spreading
			{radiusTable
				{0 0}
				{ %range_ap (* %ap200 (* %r1 %r0))}							
				{(* 2 %range_ap) (* 3.0 %ap200 (* %r1 %r0))}				
				{(* 3 %range_ap) (* 6.0 %ap200 (* %r1 %r0))}	
				{(* 4 %range_ap) (* 10.0 %ap200 (* %r1 %r0))}					
			}
		}
	}
	{parameters "apbc"
		{spreading
			{radiusTable
				{0 0}
				{ %range_ap (* %apbc200 (* %r1 %r0))}							
				{(* 2 %range_ap) (* 3.0 %apbc200 (* %r1 %r0))}				
				{(* 3 %range_ap) (* 6.0 %apbc200 (* %r1 %r0))}	
				{(* 4 %range_ap) (* 10.0 %apbc200 (* %r1 %r0))}					
			}
		}
	}
	{parameters "apbche"
		{spreading
			{radiusTable
				{0 0}
				{ %range_ap (* %apbc200 (* %r1 %r0))}							
				{(* 2 %range_ap) (* 3.0 %apbc200 (* %r1 %r0))}				
				{(* 3 %range_ap) (* 6.0 %apbc200 (* %r1 %r0))}	
				{(* 4 %range_ap) (* 10.0 %apbc200 (* %r1 %r0))}					
			}
		}
	}
	{parameters "apcbc"
		{spreading
			{radiusTable
				{0 0}
				{ %range_ap (* %apbc200 (* %r1 %r0))}							
				{(* 2 %range_ap) (* 3.0 %apbc200 (* %r1 %r0))}				
				{(* 3 %range_ap) (* 6.0 %apbc200 (* %r1 %r0))}	
				{(* 4 %range_ap) (* 10.0 %apbc200 (* %r1 %r0))}					
			}
		}
	}
	{parameters "apcbche"
		{spreading
			{radiusTable
				{0 0}
				{ %range_ap (* %apbc200 (* %r1 %r0))}							
				{(* 2 %range_ap) (* 3.0 %apbc200 (* %r1 %r0))}				
				{(* 3 %range_ap) (* 6.0 %apbc200 (* %r1 %r0))}	
				{(* 4 %range_ap) (* 10.0 %apbc200 (* %r1 %r0))}					
			}
		}
	}
	{parameters "apcbche2"
		{spreading
			{radiusTable
				{0 0}
				{ %range_ap (* %apbc200 (* %r1 %r0))}							
				{(* 2 %range_ap) (* 3.0 %apbc200 (* %r1 %r0))}				
				{(* 3 %range_ap) (* 6.0 %apbc200 (* %r1 %r0))}	
				{(* 4 %range_ap) (* 10.0 %apbc200 (* %r1 %r0))}					
			}
		}
	}
	{parameters "aphebc"
		{spreading
			{radiusTable
				{0 0}
				{ %range_ap (* %apbc200 (* %r1 %r0))}							
				{(* 2 %range_ap) (* 3.0 %apbc200 (* %r1 %r0))}				
				{(* 3 %range_ap) (* 6.0 %apbc200 (* %r1 %r0))}	
				{(* 4 %range_ap) (* 10.0 %apbc200 (* %r1 %r0))}					
			}
		}
	}
	{parameters "aphebc2"
		{spreading
			{radiusTable
				{0 0}
				{ %range_ap (* %apbc200 (* %r1 %r0))}							
				{(* 2 %range_ap) (* 3.0 %apbc200 (* %r1 %r0))}				
				{(* 3 %range_ap) (* 6.0 %apbc200 (* %r1 %r0))}	
				{(* 4 %range_ap) (* 10.0 %apbc200 (* %r1 %r0))}					
			}
		}
	}
	{parameters "apcr"
		{spreading
			{radiusTable
				{0 0}
				{ %range_ap (* %apcr200 (* %r1 %r0))}							
				{(* 2 %range_ap) (* 3.0 %apcr200 (* %r1 %r0))}				
				{(* 3 %range_ap) (* 6.0 %apcr200 (* %r1 %r0))}	
				{(* 4 %range_ap) (* 10.0 %apcr200 (* %r1 %r0))}					
			}
		}
	}
	{parameters "apcr2"
		{spreading
			{radiusTable
				{0 0}
				{ %range_ap (* %apcr200 (* %r1 %r0))}							
				{(* 2 %range_ap) (* 3.0 %apcr200 (* %r1 %r0))}				
				{(* 3 %range_ap) (* 6.0 %apcr200 (* %r1 %r0))}	
				{(* 4 %range_ap) (* 10.0 %apcr200 (* %r1 %r0))}					
			}
		}
	}
	{parameters "hvap"
		{spreading
			{radiusTable
				{0 0}
				{ %range_ap (* %hvap200 (* %r1 %r0))}							
				{(* 2 %range_ap) (* 3.0 %hvap200 (* %r1 %r0))}				
				{(* 3 %range_ap) (* 6.0 %hvap200 (* %r1 %r0))}	
				{(* 4 %range_ap) (* 10.0 %hvap200 (* %r1 %r0))}					
			}
		}
	}
	{parameters "apds"
		{spreading
			{radiusTable
				{0 0}
				{ %range_ap (* %apds200 (* %r1 %r0))}							
				{(* 2 %range_ap) (* 3.0 %apds200 (* %r1 %r0))}				
				{(* 3 %range_ap) (* 6.0 %apds200 (* %r1 %r0))}	
				{(* 4 %range_ap) (* 10.0 %apds200 (* %r1 %r0))}					
			}
		}
	}
	{parameters "he"
		{spreading
			{radiusTable
				{0 0}
				{ %range_he (* %he200 (* %r1 %r0))}							
				{(* 2 %range_he) (* 3.0 %he200 (* %r1 %r0))}				
				{(* 3 %range_he) (* 6.0 %he200 (* %r1 %r0))}	
				{(* 4 %range_he) (* 10.0 %he200 (* %r1 %r0))}					
			}
		}
	}
	{parameters "he2"
		{spreading
			{radiusTable
				{0 0}
				{ %range_he (* %he200 (* %r1 %r0))}							
				{(* 2 %range_he) (* 3.0 %he200 (* %r1 %r0))}				
				{(* 3 %range_he) (* 6.0 %he200 (* %r1 %r0))}	
				{(* 4 %range_he) (* 10.0 %he200 (* %r1 %r0))}					
			}
		}
	}
	{parameters "sm"
		{spreading
			{radiusTable
				{0 0}
				{ %range_he (* %he200 (* %r1 %r0))}							
				{(* 2 %range_he) (* 3.0 %he200 (* %r1 %r0))}				
				{(* 3 %range_he) (* 6.0 %he200 (* %r1 %r0))}	
				{(* 4 %range_he) (* 10.0 %he200 (* %r1 %r0))}					
			}
		}
	}
	{parameters "wp"
		{spreading
			{radiusTable
				{0 0}
				{ %range_he (* %he200 (* %r1 %r0))}							
				{(* 2 %range_he) (* 3.0 %he200 (* %r1 %r0))}				
				{(* 3 %range_he) (* 6.0 %he200 (* %r1 %r0))}	
				{(* 4 %range_he) (* 10.0 %he200 (* %r1 %r0))}					
			}
		}
	}
	{parameters "ic"
		{spreading
			{radiusTable
				{0 0}
				{ %range_he (* %he200 (* %r1 %r0))}							
				{(* 2 %range_he) (* 3.0 %he200 (* %r1 %r0))}				
				{(* 3 %range_he) (* 6.0 %he200 (* %r1 %r0))}	
				{(* 4 %range_he) (* 10.0 %he200 (* %r1 %r0))}					
			}
		}
	}
	{parameters "heat"
		{spreading
			{radiusTable
				{0 0}
				{ %range_heat (* %heat200 (* %r1 %r0))}							
				{(* 2 %range_heat) (* 3.0 %heat200 (* %r1 %r0))}				
				{(* 3 %range_heat) (* 6.0 %heat200 (* %r1 %r0))}	
				{(* 4 %range_heat) (* 10.0 %heat200 (* %r1 %r0))}					
			}
		}
	}
	{parameters "heata"
		{spreading
			{radiusTable
				{0 0}
				{ %range_heat (* %heat200 (* %r1 %r0))}							
				{(* 2 %range_heat) (* 3.0 %heat200 (* %r1 %r0))}				
				{(* 3 %range_heat) (* 6.0 %heat200 (* %r1 %r0))}	
				{(* 4 %range_heat) (* 10.0 %heat200 (* %r1 %r0))}					
			}
		}
	}
	{parameters "heatb"
		{spreading
			{radiusTable
				{0 0}
				{ %range_heat (* %heat200 (* %r1 %r0))}							
				{(* 2 %range_heat) (* 3.0 %heat200 (* %r1 %r0))}				
				{(* 3 %range_heat) (* 6.0 %heat200 (* %r1 %r0))}	
				{(* 4 %range_heat) (* 10.0 %heat200 (* %r1 %r0))}					
			}
		}
	}
	{parameters "heatc"
		{spreading
			{radiusTable
				{0 0}
				{ %range_heat (* %heat200 (* %r1 %r0))}							
				{(* 2 %range_heat) (* 3.0 %heat200 (* %r1 %r0))}				
				{(* 3 %range_heat) (* 6.0 %heat200 (* %r1 %r0))}	
				{(* 4 %range_heat) (* 10.0 %heat200 (* %r1 %r0))}					
			}
		}
	}
)



;/*============================== GLOBAL DEFINES ==============================*/


(define "standard_firing_arc"
	{gravity 1.25}
)
(define "curved_firing_arc"
	{gravity 2.5}
)
(define "artillery_firing_arc"
	{gravity 5.0}
)

(define "light_aa"
	{AimingTolerance 12}
	{SpreadTolerance 0.05}
)

(define "medium_aa"
	{AimingTolerance 12}
	{SpreadTolerance 0.05}
)

(define "heavy_aa"
	{AimingTolerance 5}
	{SpreadTolerance 0.1}
)
(define "direct_settings"
	{SpreadTolerance 0.20}		;// Zeroing up to 60% needed before fire
	{relaxationtime 2} 			
	{ZeroingAccuracy 0.8 0.65 0.55 0.5 0.45}
	{spreading {SpreadXYRatio 0.4}}
	{parameters "he" {spreading {SpreadXYRatio 1.5}}}
	{parameters "he2" {spreading {SpreadXYRatio 1.5}}}
	{parameters "apds" {spreading {SpreadXYRatio 1}}}
)
(define "indirect_settings"
	{SpreadTolerance 0.3}		;// Zeroing up to 75% needed before fire
	{ZeroingAccuracy 0.8 0.65 0.55 0.5 0.45}
	{spreading {SpreadXYRatio 1}}
	{parameters "he" {spreading {SpreadXYRatio 3}}}
	{parameters "he2" {spreading {SpreadXYRatio 3}}}
)

;/*============================== RANGES AND SPECIFICS ==============================*/

(define "range_aircraft_gun"
	("standard_firing_arc")
	{range 180 1000}
	(mod not "mp"
		{range 180 5000}
		{aimingTolerance 15}
		{spreading
			{SpreadPower 1}
			{BurstRecoveryTime 0.5}
			{BurstAccuracy 100 95 90}
			{SpreadXYRatio 5}
			{radiusTable {0 0.5} {200 2} {300 5} {350 12}}
		}
	)
	{automatic}
	{aimingTolerance 10}
	{SpreadTolerance 0}			;// Zeroing up to 0% needed before fire
	{spreading
		{SpreadPower 1}
		{BurstRecoveryTime 0.5}
		{BurstAccuracy 100 95 90}
		{SpreadXYRatio 5}
		{radiusTable {0 0} {80 2} {130 5} {200 10}}
	}
	{burst
		{short 20 5}			;// short burst shots on long distance, rand (+-)shots
		{long 50 10}			;// long burst shots on short distance, rand (+-)shots
		{rangeKoef 0.75}		;// rangeKoef * aimRange = max long burst distance
	}
	{SyncedProjectiles 0}		;// not for automatic weapons
)

(define "range_autocannon_12-20"
	{curve "gun_autocannon"}
	("standard_firing_arc")
	{range 180 1500}
	{automatic}
	{aimingTolerance 3}
	{SpreadTolerance 0}			;// Zeroing up to 0% needed before fire
	{spreading
		{BurstRecoveryTime 0.5}
		{BurstAccuracy 100 98 95 90 85 80 75 70 65 60 55 50 45 40 35}
		{SpreadXYRatio	0.5}
	}
	{burst
		{short 2 0.75}			;// short burst shots on long distance, rand (+-)shots
		{long 5 1}				;// long burst shots on short distance, rand (+-)shots
		{rangeKoef 0.5}			;// rangeKoef * aimRange = max long burst distance
	}
	{SyncedProjectiles 0}		;// not for automatic weapons
	{parameters "ap"
		("human health" damage(250))
	}
	{parameters "apbc"
		("human health" damage(250))
	}
	{parameters "apcr"
		("human health" damage(250))
	}
	{parameters "he"
		("human health" damage(500))
	}
)


(define "range_autocannon_37-40"
	("standard_firing_arc")
	{range 200 1600}
	{automatic}
	{aimingTolerance 3}
	{SpreadTolerance 0}			;// Zeroing up to 0% needed before fire
	{spreading
		{BurstRecoveryTime 0.5}
		{BurstAccuracy 100 95 88 82 75 68 55 32}
		{SpreadXYRatio	0.5}
	}
	{burst
		{short 2 0.75}			;// short burst shots on long distance, rand (+-)shots
		{long 5 1}				;// long burst shots on short distance, rand (+-)shots
		{rangeKoef 0.85}		;// rangeKoef * aimRange = max long burst distance
	}
	{SyncedProjectiles 0}		;// not for automatic weapons
)

(define "range_160"
	("standard_firing_arc")
	{range 320 1600}
	("direct_settings")
)
(define "range_170"
	("standard_firing_arc")
	{range 340 1700}
	("direct_settings")
)
(define "range_180"
	("standard_firing_arc")
	{range 360 1800}
	("direct_settings")
)
(define "range_190"
	("standard_firing_arc")
	{range 380 1900}
	("direct_settings")
)
(define "range_200"
	("standard_firing_arc")
	{range 400 2000}
	("direct_settings")
)
(define "range_210"
	("standard_firing_arc")
	{range 420 2100}
	("direct_settings")
)
(define "range_220"
	("standard_firing_arc")
	{range 440 2200}
	("direct_settings")
)

(define "range_160_howitzer"
	("curved_firing_arc")
	{range 320 1600}
	("indirect_settings")
)
(define "range_170_howitzer"
	("curved_firing_arc")
	{range 340 1700}
	("indirect_settings")
)
(define "range_180_howitzer"
	("curved_firing_arc")
	{range 360 1800}
	("indirect_settings")
)
(define "range_190_howitzer"
	("curved_firing_arc")
	{range 380 1900}
	("indirect_settings")
)
(define "range_200_howitzer"
	("curved_firing_arc")
	{range 400 2000}
	("indirect_settings")
)
(define "range_210_howitzer"
	("curved_firing_arc")
	{range 420 2100}
	("indirect_settings")
)

(define "medium_artillery"
	{spreading {SpreadXYRatio 0.4}}
	{parameters "he"
		{spreading 1 
			{SpreadPower 1.00}    ;// Shot has en equal chance of landing anywhere on the aiming circle, no center-bias
			{SpreadXYRatio 0.75}  ;// Shots land more longitudinally than transversely.
		} 
	}
	{parameters "he2"
		{spreading 1 
			{SpreadPower 1.00}    ;// Shot has en equal chance of landing anywhere on the aiming circle, no center-bias
			{SpreadXYRatio 0.75}  ;// Shots land more longitudinally than transversely.
		} 
	}
	{ZeroingAccuracy 0.80 0.65 0.55 0.45 0.40}
	("artillery_firing_arc")
	{range 360 1800}
	{SpreadTolerance 0.3}		;// Zeroing up to 85% needed before fire
	{DisableRicochet}
	{traceFreq 0}
	{unlimitedRangeTPC 0}	;// restrict range in TPC/FPC
)

(define "heavy_artillery"
	{spreading {SpreadXYRatio 0.4}}
	{parameters "he"
		{spreading 1 
			{SpreadPower 1.00}    ;// Shot has en equal chance of landing anywhere on the aiming circle, no center-bias
			{SpreadXYRatio 0.75}  ;// Shots land more longitudinally than transversely.
		} 
	}
	{parameters "he2"
		{spreading 1 
			{SpreadPower 1.00}    ;// Shot has en equal chance of landing anywhere on the aiming circle, no center-bias
			{SpreadXYRatio 0.75}  ;// Shots land more longitudinally than transversely.
		} 
	}
	{ZeroingAccuracy 0.80 0.65 0.55 0.45 0.40}
	("artillery_firing_arc")
	{range 400 2000}
	{SpreadTolerance 0.3}		;// Zeroing up to 85% needed before fire
	{DisableRicochet}
	{traceFreq 0}
	{unlimitedRangeTPC 0}	;// restrict range in TPC/FPC
)

(define "super_heavy_artillery"
	{spreading {SpreadXYRatio 0.4}}
	{parameters "he"
		{spreading 1 
			{SpreadPower 1.00}    ;// Shot has en equal chance of landing anywhere on the aiming circle, no center-bias
			{SpreadXYRatio 0.75}  ;// Shots land more longitudinally than transversely.
		} 
	}
	{parameters "he2"
		{spreading 1 
			{SpreadPower 1.00}    ;// Shot has en equal chance of landing anywhere on the aiming circle, no center-bias
			{SpreadXYRatio 0.75}  ;// Shots land more longitudinally than transversely.
		} 
	}
	{ZeroingAccuracy 0.80 0.65 0.55 0.45 0.40}
	("artillery_firing_arc")
	{range 420 2000}
	{SpreadTolerance 0.3}		;// Zeroing up to 85% needed before fire
	{DisableRicochet}
	{traceFreq 0}
	{unlimitedRangeTPC 0}	;// restrict range in TPC/FPC
)


;/*============================== Slope Multipliers ==============================*/


(define "ap_slope_multiplier" ;use for AP and for any other Projectiles not specifically defined below
	{overmatchCalibre
		{0		0.1			0.0637	}
		{5		0.96297		0.0637	}
		{10		0.98297		0.0637	}
		{15		1.00066		0.0969	}
		{20		1.0361		0.13561	}
		{25		1.1116		0.16164	}
		{30		1.2195		0.19702	}
		{35		1.3771		0.22546	}
		{40		1.6263		0.26313	}
		{45		2.0033		0.34717	}
		{50		2.6447		0.57353	}
		{55		3.231		0.69075	}
		{60		4.0708		0.81826	}
		{65		6.2655		0.9192	}
		{70		8.6492		1.00539	}
		{75		13.7512		1.074	}
		{80		21.8713		1.17973	}
		{85		34.4862		1.28631	}
		{90		99.0000		0.00000	}
	}
)
(define "apc_slope_multiplier" ;use for APC & APCBC Projectiles
	{overmatchCalibre
		{0		1.0			0.0225	}
		{5		1.0000		0.0225	}
		{10		1.0243		0.0225	}
		{15		1.0532		0.0327	}
		{20		1.1039		0.0454	}
		{25		1.1741		0.0549	}
		{30		1.2667		0.0655	}
		{35		1.3925		0.0993	}
		{40		1.5642		0.1388	}
		{45		1.7933		0.1655	}
		{50		2.1053		0.2035	}
		{55		2.5368		0.2427	}
		{60		3.0796		0.245	}
		{65		4.0041		0.3354	}
		{70		5.0803		0.3478	}
		{75		6.7445		0.3831	}
		{80		9.0598		0.4131	}
		{85		12.8207		0.455	}
		{90		99.0000		0.0000	}
	}
)

(define "apbc_slope_multiplier" ;use for apbc Projectiles
	{overmatchCalibre
		{0		1.0			0.15	}
		{5		1.02		0.15	}
		{10		1.039		0.15	}
		{15		1.055		0.15	}
		{20		1.077		0.15	}
		{25		1.108		0.15	}
		{30		1.1585		0.15	}
		{35		1.2669		0.15	}
		{40		1.4474		0.16952	}
		{45		1.7028		0.24604	}
		{50		2.3008		0.3791	}
		{55		2.8917		0.56444	}
		{60		3.8672		1.07411	}
		{65		5.335		1.46188	}
		{70		9.477		1.8152	}
		{75		20.22		2.19155	}
		{80		56.2		2.5621	}
		{85		221.3		2.93265	}
		{90		99.0000		0.0000	}
	}
)
(define "ap_20_slope_multiplier" ;use for 20-25mm AP Projectiles
	{overmatchCalibre
		{0		1.0			0.00	}
		{20		1.381		0.15	}
		{30		1.657		0.29	}
		{40		1.95		0.295	}
		{50		2.92		0.39	}
		{60		3.965		0.325	}
		{65		5.47		0.46	}
		{70		7.58		0.46	}
		{75		11.52		0.46	}
		{80		20.85		0.46	}
		{85		57.4		0.46	}
		{90		99.0000		0.00000	}
	}
)
(define "ap_37_slope_multiplier_800ms" ;use for 37mm AP Projectiles with <800 m/s
	{overmatchCalibre
		{0		1.0			0.00	}
		{20		1.174		-0.005	}
		{30		1.301		-0.038	}
		{40		1.503		-0.038	}
		{50		1.946		-0.029	}
		{55		2.221		-0.039	}
		{60		2.575		-0.053	}
		{65		3.062		-0.053	}
		{70		3.783		-0.053	}
		{75		4.965		-0.053	}
		{80		7.29		-0.053	}
		{85		14.05		-0.053	}
		{90		99.0000		0.00000	}
	}
)
(define "ap_37_slope_multiplier_700ms" ;use for 37mm AP Projectiles with >800 m/s
	{overmatchCalibre
		{0		1.0			0.00	}
		{20		1.201		-0.049	}
		{30		1.301		-0.09	}
		{40		1.506		-0.077	}
		{50		1.893		-0.028	}
		{55		2.175		-0.079	}
		{60		2.51		-0.145	}
		{65		2.926		-0.145	}
		{70		3.54		-0.145	}
		{75		4.527		-0.145	}
		{80		6.405		-0.145	}
		{85		11.59		-0.145	}
		{90		99.0000		0.00000	}
	}
)
(define "apc_37_slope_multiplier" ;use for 37mm APC Projectiles
	{overmatchCalibre
		{0		1.0			0.00	}
		{20		1.159		-0.12	}
		{30		1.374		-0.222	}
		{40		1.596		-0.254	}
		{45		1.91		-0.20	}
		{50		2.485		0.111	}
		{55		3.172		0.318	}
		{60		3.875		0.376	}
		{65		9.75		1.25	}
		{70		9.96		1.11	}
		{75		20.3		1.21	}
		{80		49.0		1.20	}
		{85		232.5		1.215	}
		{90		99.0000		0.00000	}
	}
)
(define "ap_40_slope_multiplier" ;use for 40-47mm AP Projectiles
	{overmatchCalibre
		{0		1.0			0.00	}
		{20		1.05		0.00	}
		{30		1.167		0.01	}
		{40		1.683		0.33	}
		{50		1.958		0.30	}
		{60		3.77		0.79	}
		{65		5.22		0.79	}
		{70		7.79		0.79	}
		{75		13.03		0.79	}
		{80		26.92		0.79	}
		{85		93.05		0.79	}
		{90		99.0000		0.00000	}
	}
)
(define "ap_40_eng_slope_multiplier" ;use for 40mm british AP Projectile; final
	{overmatchCalibre
		{0		1.0			0.00	}
		{10		1.031		0.007	}
		{20		1.136		0.012	}
		{30		1.279		0.039	}
		{40		1.444		0.004	}
		{50		1.737		-0.175	}
		{60		2.088		-0.175	}
		{65		2.448		-0.108	}
		{70		3.159		0.003	}
		{75		4.376		0.13	}
		{80		6.918		0.13	}
		{85		15.136		0.13	}
		{90		99.0000		0.00000	}
	}
)
(define "apcbc_40_eng_slope_multiplier" ;use for 40mm british APCBC Projectile; final
	{overmatchCalibre
		{0		1.0			0.00	}
		{10		1.022		0.026	}
		{20		1.10		0.016	}
		{30		1.227		0.039	}
		{45		1.857		0.025	}
		{50		2.054		0.044	}
		{55		2.381		0.075	}
		{60		2.868		0.119	}
		{65		3.527		0.217	}
		{70		4.949		0.379	}
		{75		7.753		0.573	}
		{80		14.674		0.574	}
		{85		43.718		0.574	}
		{90		99.0000		0.00000	}
	}
)
(define "ap_57_slope_multiplier" ;use for 50-57mm AP Projectiles; (US M70 AP); final
	{overmatchCalibre
		{0		1.0			0.00	}
		{10		1.028		0.012	}
		{20		1.14		0.056	}
		{30		1.252		0.064	}
		{40		1.508		-0.01	}
		{50		1.836		-0.054	}
		{60		2.244		-0.067	}
		{65		2.696		0.016	}
		{70		3.631		0.151	}
		{75		5.334		0.308	}
		{80		9.066		0.308	}
		{85		22.434		0.308	}
		{90		99.0000		0.00000	}
	}
)
(define "ap_57_eng_slope_multiplier" ;use for 57mm british AP Projectile; final
	{overmatchCalibre
		{0		1.0			0.00	}
		{10		1.026		0.012	}
		{20		1.12		0.072	}
		{30		1.195		0.109	}
		{40		1.362		0.072	}
		{50		1.685		-0.149	}
		{60		2.017		-0.166	}
		{65		2.385		-0.087	}
		{70		3.131		0.041	}
		{75		4.467		0.193	}
		{80		7.247		0.193	}
		{85		16.563		0.193	}
		{90		99.0000		0.00000	}
	}
)
(define "apc_57_slope_multiplier" ;use for 50-57mm APC-HE Projectiles
	{overmatchCalibre
		{0		1.0			0.00	}
		{20		1.045		0.039	}
		{30		1.23		0.07	}
		{45		1.928		0.063	}
		{50		2.156		0.066	}
		{60		3.276		0.357	}
		{65		4.207		0.477	}
		{70		6.337		0.675	}
		{75		10.935		0.913	}
		{80		23.727		0.913	}
		{85		89.307		0.913	}
		{90		99.0000		0.00000	}
	}
)
(define "apc_57_eng_slope_multiplier" ;use for 57mm british APC Projectile; final
	{overmatchCalibre
		{0		1.0			0.00	}
		{10		1.015		0.011	}
		{20		1.082		0.018	}
		{30		1.177		0.095	}
		{45		1.871		0.001	}
		{50		2.072		0.012	}
		{55		2.415		0.059	}
		{60		2.952		0.128	}
		{65		3.604		0.21	}
		{70		4.958		0.342	}
		{75		7.471		0.501	}
		{80		13.737		0.501	}
		{85		38.91		0.502	}
		{90		99.0000		0.00000	}
	}
)
(define "apcbc_57_eng_slope_multiplier" ;use for 57mm british APCBC Projectile; final
	{overmatchCalibre
		{0		1.0			0.00	}
		{10		1.026		0.028	}
		{20		1.089		0.039	}
		{30		1.251		0.067	}
		{45		1.867		0.019	}
		{50		2.046		0.06	}
		{55		2.397		0.085	}
		{60		3.033		0.307	}
		{65		3.897		0.439	}
		{70		5.939		0.661	}
		{75		10.502		0.928	}
		{80		22.96		0.928	}
		{85		87.36		0.928	}
		{90		99.0000		0.00000	}
	}
)
(define "ap_75_slope_multiplier" ;use for 75mm AP Projectiles
	{overmatchCalibre
		{0		1.0			0.00	}
		{10		1.044		0.006	}
		{20		1.203		0.009	}
		{30		1.471		0.02	}
		{40		1.611		0.018	}
		{50		2.167		0.025	}
		{55		2.417		0.031	}
		{60		2.761		0.035	}
		{65		3.21		0.075	};
		{70		4.077		0.136	};
		{75		5.405		0.20	};
		{80		8.79		0.20	};
		{85		20.2		0.20	};
		{90		99.0000		0.00000	}
	}
)
(define "apc_75_ger_slope_multiplier" ;use for 75mm german APC Projectiles
	{overmatchCalibre
		{0		1.0			0.00	}
		{10		1.020		0.017	}
		{20		1.061		0.101	}
		{30		1.108		0.317	}
		{40		1.451		0.153	}
		{45		1.711		0.114	}
		{50		1.897		0.102	}
		{55		2.147		0.066	}
		{60		2.766		0.153	}
		{65		3.655		0.258	};
		{70		5.542		0.421	};
		{75		9.366		0.605	};
		{80		17.951		0.605	};
		{85		54.588		0.605	};
		{90		99.0000		0.00000	}
	}
)
(define "apc_75_slope_multiplier" ;use for low velocity 75mm APC Projectiles
	{overmatchCalibre
		{0		1.0			0.00	}
		{10		1.03		0.00	}
		{20		1.1255		0.018	}
		{30		1.272		0.065	}
		{45		1.855		0.189	}
		{50		2.064		0.24	}
		{55		2.587		0.25	}
		{60		3.182		0.24	};
		{65		4.022		0.34	};
		{70		6.255		0.538	};
		{75		11.16		0.77	};
		{80		22.88		0.77	};
		{85		77.85		0.769	};
		{90		99.0000		0.00000	}
	}
)
(define "ap_76_slope_multiplier" ;use for 76mm AP Projectiles or high velocity 75mm
	{overmatchCalibre
		{0		1.0			0.00	}
		{10		1.044		0.002	}
		{20		1.20		0.009	}
		{30		1.252		0.007	}
		{40		1.601		0.019	}
		{50		2.152		0.03	}
		{55		2.383		0.019	}
		{60		2.545		0.019	}
		{65		2.905		0.058	};
		{70		3.605		0.124	};
		{75		4.657		0.19	};
		{80		7.545		0.19	};
		{85		17.25		0.191	};
		{90		99.0000		0.00000	}
	}
)
(define "ap_76_eng_slope_multiplier" ;use for 76mm british AP Projectile; final
	{overmatchCalibre
		{0		1.0			0.00	}
		{10		1.004		0.028	}
		{20		1.058		0.166	}
		{30		1.114		0.30	}
		{40		1.309		0.135	}
		{50		1.731		-0.225	}
		{60		2.023		-0.27	}
		{65		2.367		-0.173	}
		{70		3.111		-0.011	}
		{75		4.537		0.183	}
		{80		7.325		0.183	}
		{85		16.649		0.183	}
		{90		99.0000		0.00000	}
	}
)
(define "apc_76_eng_slope_multiplier" ;use for 76mm british APC Projectile; final
	{overmatchCalibre
		{0		1.0			0.00	}
		{10		1.033		0.035	}
		{20		1.08		0.06	}
		{30		1.176		0.104	}
		{40		1.507		0.171	}
		{45		1.783		0.133	}
		{50		1.969		0.059	}
		{55		2.203		0.051	}
		{60		2.695		0.071	}
		{65		3.335		0.185	}
		{70		4.772		0.374	}
		{75		7.728		0.60	}
		{80		14.795		0.601	}
		{85		44.843		0.601	}
		{90		99.0000		0.00000	}
	}
)
(define "apcbc_76_eng_slope_multiplier" ;use for 76mm british APCBC Projectile; final
	{overmatchCalibre
		{0		1.0			0.00	}
		{10		1.016		0.01	}
		{20		1.054		0.056	}
		{30		1.171		0.101	}
		{40		1.421		0.247	}
		{45		1.704		0.178	}
		{50		1.88		0.18	}
		{55		2.112		0.234	}
		{60		2.651		0.228	}
		{65		3.419		0.391	}
		{70		5.369		0.671	}
		{75		10.123		1.009	}
		{80		22.861		1.009	}
		{85		92.187		1.009	}
		{90		99.0000		0.00000	}
	}
)
(define "apc_76_slope_multiplier" ;use for 76-77mm APC Projectiles
	{overmatchCalibre
		{0		1.0			0.00	}
		{10		1.044		-0.025	}
		{20		1.064		0.17	}
		{30		1.179		0.42	}
		{40		1.508		0.24	}
		{45		1.791		0.171	}
		{50		1.95		0.10	}
		{60		2.68		0.077	}
		{65		3.121		0.137	};
		{70		4.298		0.31	};
		{75		6.62		0.517	};
		{80		12.23		0.516	};
		{85		35.12		0.518	};
		{90		99.0000		0.00000	}
	}
)
(define "ap_85_slope_multiplier" ;use for 85 aphe Projectiles
	{overmatchCalibre
		{0		1.0			0.00	}
		{10		1.027		0.002	}
		{20		1.117		0.003	}
		{30		1.294		0.01	}
		{45		1.685		0.025	}
		{50		1.875		0.014	}
		{55		2.115		0.037	}
		{60		2.486		0.054	}
		{65		2.87		0.10	}
		{70		3.645		0.18	}
		{75		4.852		0.261	}
		{80		8.10		0.262	}
		{85		19.47		0.263	}
		{90		99.0000		0.0000	}
	}
)
(define "apc_88_ger_slope_multiplier" ;use for german 88mm PzGr.39
	{overmatchCalibre
		{0		1.0			0.00	}
		{10		1.025		-0.0049	}
		{20		1.091		0.11	}
		{30		1.223		0.15	}
		{40		1.462		0.19	}
		{45		1.715		0.20	}
		{50		2.002		0.21	}
		{55		2.495		0.20	}
		{60		2.903		0.09	}
		{65		3.74		0.14	}
		{70		5.41		0.22	}
		{75		8.21		0.30	}
		{80		13.76		0.30	}
		{85		33.495		0.30	}
		{90		99.0000		0.00000	}
	}
)
(define "apbc_90_t33_slope_multiplier" ;use for 90mm T33 APBC Projectile
	{overmatchCalibre
		{0		1.0			0.00	}
		{20		1.0055		0.145	}
		{30		1.2935		0.085	}
		{55		1.78		-0.528	}
		{60		1.918		-0.485	}
		{65		2.113		-0.385	}
		{70		2.382		-0.255	}
		{75		3.058		-0.105	}
		{80		4.465		-0.045	}
		{85		10.265		-0.005	}
		{90		99.0000		0.00000	}
	}
)
(define "ap_90_slope_multiplier" ;use for 88-94mm AP Projectiles
	{overmatchCalibre
		{0		1.0			0.00	}
		{10		1.049		-0.001	}
		{20		1.2177		0.004	}
		{30		1.513		0.11	}
		{45		1.658		0.023	}
		{55		1.997		0.03	}
		{60		2.446		0.012	}
		{65		2.778		0.051	};
		{70		3.413		0.115	};
		{75		4.37		0.181	};
		{80		7.052		0.181	};
		{85		16.0		0.181	};
		{90		99.0000		0.00000	}
	}
)
(define "apc_90_slope_multiplier" ;use for 88-94mm APC Projectiles
	{overmatchCalibre
		{0		1.0			0.00	}
		{10		1.04		-0.005	}
		{20		1.1555		-0.027	}
		{30		1.217		0.078	}
		{40		1.552		0.105	}
		{45		1.83		0.088	}
		{50		2.135		0.087	}
		{55		2.435		0.092	}
		{60		2.785		0.10	}
		{65		3.347		0.219	};
		{70		4.79		0.455	};
		{75		8.115		0.766	};
		{80		16.61		0.766	};
		{85		56.45		0.766	};
		{90		99.0000		0.00000	}
	}
)
(define "ap_94_eng_slope_multiplier" ;use for 94mm AP British
	{overmatchCalibre
		{0		1.0			0.00	}
		{10		1.013		0.025	}
		{20		1.072		0.186	}
		{30		1.15		0.346	}
		{40		1.331		0.163	}
		{50		1.688		-0.236	}
		{60		2.021		-0.232	}
		{65		2.355		-0.149	};
		{70		3.049		-0.011	};
		{75		4.324		0.154	};
		{80		6.903		0.155	};
		{85		15.381		0.155	};
		{90		99.0000		0.00000	}
	}
)
(define "ap_100_slope_multiplier" ;use for 100mm AP Projectiles
	{overmatchCalibre
		{0		1.0			0.00	}
		{10		1.0285		0.004	}
		{20		1.1285		0.009	}
		{30		1.3153		0.04	}
		{45		1.6935		-0.001	}
		{50		1.871		-0.007	}
		{55		2.108		0.004	}
		{60		2.461		0.004	}
		{65		2.799		0.051	};
		{70		3.469		0.133	};
		{75		4.516		0.22	};
		{80		7.407		0.22	};
		{85		17.255		0.22	};
		{90		99.0000		0.00000	}
	}
)
(define "ap_105_slope_multiplier" ;use for + - 105mm AP Projectiles
	{overmatchCalibre
		{0		1.0			0.00	}
		{10		1.04		0.01	}
		{20		1.164		0.025	}
		{30		1.248		0.027	}
		{45		1.721		0.12	}
		{50		1.99		0.14	}
		{55		2.323		0.14	}
		{60		2.704		0.11	}
		{65		3.31		0.11	}
		{70		4.24		0.11	}
		{75		5.835		0.11	}
		{80		9.13		0.109	}
		{85		19.70		0.109	}
		{90		99.0000		0.00000	}
	}
)
(define "ap_122_slope_multiplier" ;use for 122mm AP Projectiles
	{overmatchCalibre
		{0		1.0			0.00	}
		{10		1.025		0.007	}
		{20		1.118		0.009	}
		{30		1.2955		0.031	}
		{45		1.6945		0.046	}
		{50		1.8915		0.053	}
		{55		2.143		0.062	}
		{60		2.524		0.062	}
		{65		2.954		0.126	};
		{70		3.877		0.24	};
		{75		5.462		0.367	};
		{80		9.51		0.367	};
		{85		24.53		0.367	};
		{90		99.0000		0.00000	}
	}
)
(define "sap_130_slope_multiplier" ;use for 130mm SAP Projectiles
	{overmatchCalibre
		{0		1.0			0.00	}
		{10		1.0171		0.009	}
		{20		1.0888		0.004	}
		{30		1.291		0.018	}
		{40		1.4975		0.008	}
		{45		1.71		0.015	}
		{50		2.01		0.025	}
		{55		2.36		0.006	}
		{60		2.845		0.007	}
		{65		4.205		0.21	};
		{70		6.21		0.34	};
		{75		10.342		0.503	};
		{80		19.02		0.503	};
		{85		54.17		0.505	};
		{90		99.0000		0.00000	}
	}
)
(define "apc_128_slope_multiplier" ;use for 128mm APC Projectiles
	{overmatchCalibre
		{0		1.0			0.00	}
		{10		1.02		-0.007	}
		{20		1.11		-0.009	}
		{30		1.286		-0.032	}
		{45		1.76		-0.02	}
		{55		2.0775		-0.043	}
		{60		2.239		-0.03	}
		{65		2.559		0.078	};
		{70		3.327		0.295	};
		{75		4.969		0.587	};
		{80		9.455		0.587	};
		{85		28.46		0.588	};
		{90		99.0000		0.00000	}
	}
)
(define "ap_152_slope_multiplier" ;use for 152mm AP Projectiles
	{overmatchCalibre
		{0		1.0			0.00	}
		{10		1.02		-0.003	}
		{20		1.0673		-0.004	}
		{30		1.2368		-0.015	}
		{45		1.593		-0.03	}
		{50		1.779		-0.007	}
		{55		1.975		-0.021	}
		{60		2.297		-0.021	}
		{65		2.406		0.069	};
		{70		3.23		0.192	};
		{75		4.698		0.331	};
		{80		8.06		0.331	};
		{85		20.28		0.331	};
		{90		99.0000		0.00000	}
	}
)
(define "ap_155_slope_multiplier" ;use for 155mm AP, APBC Projectiles
	{overmatchCalibre
		{0		1.0			0.00	}
		{10		1.0225		0.01	}
		{20		1.0915		0.042	}
		{30		1.1885		0.15	}
		{45		1.446		-0.38	}
		{60		1.7785		-0.295	}
		{65		2.0775		-0.17	};
		{70		3.039		0.145	};
		{75		6.61		0.743	};
		{80		13.4		0.743	};
		{85		44.85		0.743	};
		{90		99.0000		0.00000	}
	}
)
(define "apbc_45_slope_multiplier" ;use for 45 aphebc Projectiles
	{overmatchCalibre
		{0		1.0			0.00	}
		{30		1.129		0.075	}
		{45		1.38		0.175	}
		{50		1.555		0.21	}
		{55		1.807		0.302	}
		{60		2.13		0.351	}
		{65		2.726		0.352	}
		{70		3.687		0.352	}
		{75		5.44		0.352	}
		{80		9.41		0.352	}
		{85		24.02		0.352	}
		{90		99.0000		0.0000	}
	}
)
(define "apbc_57_slope_multiplier" ;use for 57 aphebc Projectiles
	{overmatchCalibre
		{0		1.0			0.00	}
		{30		1.147		0.055	}
		{45		1.387		0.144	}
		{50		1.546		0.175	}
		{55		1.764		0.225	}
		{60		2.08		0.302	}
		{65		2.634		0.299	}
		{70		3.52		0.299	}
		{75		5.115		0.299	}
		{80		8.68		0.301	}
		{85		21.38		0.301	}
		{90		99.0000		0.0000	}
	}
)
(define "apbc_76_slope_multiplier" ;use for 76 aphebc Projectiles
	{overmatchCalibre
		{0		1.0			0.00	}
		{30		1.143		-0.01	}
		{45		1.405		0.059	}
		{50		1.564		0.075	}
		{55		1.81		0.124	}
		{60		2.218		0.224	}
		{65		2.79		0.23	}
		{70		3.67		0.23	}
		{75		5.225		0.23	}
		{80		8.605		0.23	}
		{85		20.2		0.23	}
		{90		99.0000		0.0000	}
	}
)
(define "apbc_85_slope_multiplier" ;use for 85 aphebc Projectiles
	{overmatchCalibre
		{0		1.0			0.00	}
		{10		1.016		0.004	}
		{20		1.068		0.011	}
		{30		1.169		0.021	}
		{45		1.444		0.028	}
		{50		1.623		0.033	}
		{55		1.857		0.023	}
		{60		2.253		0.031	}
		{65		2.663		0.119	}
		{70		3.617		0.28	}
		{75		5.48		0.478	}
		{80		9.98		0.478	}
		{85		27.81		0.478	}
		{90		99.0000		0.0000	}
	}
)
(define "apbc_100_slope_multiplier" ;use for 100 aphebc Projectiles
	{overmatchCalibre
		{0		1.0			0.00	}
		{10		1.0135		0.008	}
		{20		1.055		0.037	}
		{30		1.132		0.102	}
		{45		1.428		0.712	}
		{50		1.684		0.749	}
		{55		2.072		0.863	}
		{60		2.679		0.985	}
		{65		3.376		0.985	}
		{70		4.742		0.985	}
		{75		6.866		0.985	}
		{80		15.36		0.985	}
		{85		61.1		0.988	}
		{90		99.0000		0.0000	}
	}
)
(define "apbc_122_slope_multiplier" ;use for 122 aphebc Projectiles
	{overmatchCalibre
		{0		1.0			0.00	}
		{10		1.015		0.008	}
		{20		1.0655		0.035	}
		{30		1.154		0.121	}
		{45		1.377		0.102	}
		{50		1.575		0.171	}
		{55		1.93		0.377	}
		{60		3.022		0.864	}
		{65		3.755		0.864	}
		{70		5.167		0.864	}
		{75		7.312		0.864	}
		{80		15.57		0.864	}
		{85		56.7		0.864	}
		{90		99.0000		0.0000	}
	}
)
(define "apbc_152_slope_multiplier" ;use for 152 aphebc Projectiles
	{overmatchCalibre
		{0		1.0			0.00	}
		{10		1.013		-0.015	}
		{20		1.0365		-0.125	}
		{30		1.141		0.04	}
		{45		1.383		0.117	}
		{50		1.561		0.18	}
		{55		1.82		0.266	}
		{60		2.221		0.38	}
		{65		2.856		0.38	}
		{70		3.886		0.38	}
		{75		5.78		0.38	}
		{80		10.115		0.38	}
		{85		26.34		0.38	}
		{90		99.0000		0.0000	}
	}
)


(define "apcr_slope_multiplier"  ;use for APCR & HVAP Projectiles 76mm Caliber or below
	{overmatchFixed
		{0  1.00	}
		{5	1.01	}
		{10	1.03	}
		{15	1.07	}
		{20	1.13	}
		{25	1.23	}
		{30	1.36	}
		{35	1.59	}
		{40	1.90	}
		{45	2.28	}
		{50	2.78	}
		{55	3.41	}
		{60	4.23	}
		{65	5.29	}
		{70	6.69	}
		{75	8.52	}
		{80	10.93	}
		{85	14.15	}
		{90 99		}
	}
)

(define "large_apcr_slope_multiplier"  ;use for APCR & HVAP Projectiles above 76mm Caliber
	{overmatchFixed
		{0  1.00	}
		{5	1.01	}
		{10	1.04	}
		{15	1.08	}
		{20	1.13	}
		{25	1.20	}
		{30	1.29	}
		{35	1.48	}
		{40	1.76	}
		{45	2.14	}
		{50	2.68	}
		{55	3.45	}
		{60	4.58	}
		{65	6.26	}
		{70	8.82	}
		{75	12.81	}
		{80	19.19	}
		{85	29.67	}
		{90 99		}
	}
)
(define "apcr_50_slope_multiplier" ;use for 50-57mm APCR Projectiles
	{overmatchCalibre
		{0		1.0			0.00	}
		{20		1.242		-0.098	}
		{30		1.476		-0.106	}
		{40		1.905		-0.042	}
		{50		2.669		-0.102	}
		{55		3.245		-0.158	}
		{60		3.857		-0.207	}
		{65		4.458		-0.206	}
		{70		5.326		-0.205	}
		{75		6.70		-0.204	}
		{80		9.325		-0.198	}
		{85		16.63		-0.187	}
		{90		99.0000		0.00000	}
	}
)
(define "apcr_75_slope_multiplier" ;use for 75-76mm APCR Projectiles ;75mm APCR kwk40
	{overmatchCalibre
		{0		1.0			0.00	}
		{20		1.1985		-0.059	}
		{30		1.3825		-0.02	}
		{40		1.884		0.003	}
		{50		2.718		-0.045	}
		{55		3.34		-0.067	}
		{60		4.06		-0.09	}
		{65		4.80		-0.088	}
		{70		5.905		-0.084	}
		{75		7.732		-0.079	}
		{80		11.485		-0.066	}
		{85		24.0		-0.028	}
		{90		99.0000		0.00000	}
	}
)
(define "hvap_76_slope_multiplier" ;use for 76mm HVAP Projectiles
	{overmatchCalibre
		{0		1.0			0.00	}
		{20		1.203		-0.061	}
		{30		1.359		-0.01	}
		{40		1.838		0.027	}
		{50		2.709		-0.029	}
		{55		3.339		-0.058	}
		{60		4.066		-0.085	}
		{65		4.811		-0.0819	}
		{70		5.915		-0.079	}
		{75		7.753		-0.073	}
		{80		11.49		-0.06	}
		{85		23.97		-0.019	}
		{90		99.0000		0.00000	}
	}
)
(define "apcr_88_slope_multiplier" ;use for 85-90mm APCR Projectiles ;88mm APCR kwk36
	{overmatchCalibre
		{0		1.0			0.00	}
		{20		1.2192		-0.077	}
		{30		1.3455		0.025	}
		{40		1.855		0.015	}
		{50		2.738		0.025	}
		{55		3.397		-0.02	}
		{60		4.133		-0.063	}
		{65		4.917		-0.059	}
		{70		6.105		-0.052	}
		{75		8.12		-0.042	}
		{80		12.365		-0.022	}
		{85		28.43		0.045	}
		{90		99.0000		0.00000	}
	}
)
(define "hvap_90_slope_multiplier" ;use for 90mm HVAP Projectiles
	{overmatchCalibre
		{0		1.0			0.00	}
		{20		1.167		-0.034	}
		{30		1.3147		-0.0269	}
		{45		2.2817		-0.22	}
		{50		2.738		-0.299	}
		{55		3.2915		-0.402	}
		{60		3.774		-0.341	}
		{65		4.50		-0.27	}
		{70		5.67		-0.191	}
		{75		7.443		-0.1	}
		{80		11.781		-0.01	}
		{85		25.299		0.02	}
		{90		99.0000		0.00000	}
	}
)

(define "apds_slope_multiplier"  ;for APDS Projectiles
	{overmatchFixed
		{0  1.00	}
		{5	1.002	}
		{10	1.01	}
		{15	1.03	}
		{20	1.08	}
		{25	1.14	}
		{30	1.23	}
		{35	1.37	}
		{40	1.55	}
		{45	1.82	}
		{50	2.20	}
		{55	2.74	}
		{60	3.54	}
		{65	4.74	}
		{70	6.61	}
		{75	9.57	}
		{80	14.46	}
		{85	22.82	}
		{90 99		}
	}
)

(define "heat_slope_multiplier"  ;for HEAT Projectiles & Bazooka Class Weapons
	{overmatchSlope
		{0  1}
		{90 1}
	}
)

(define "20-76_slope_multipliers"
	{parameters "ap"
		("ap_slope_multiplier")
	}
	{parameters "apc"
		("apc_slope_multiplier")
	}
	{parameters "apche"
		("apc_slope_multiplier")
	}
	{parameters "apbc"
		("apbc_slope_multiplier")
	}
	{parameters "aphe"
		("ap_slope_multiplier")
	}
	{parameters "apcbc"
		("apc_slope_multiplier")
	}
	{parameters "apcbche"
		("apc_slope_multiplier")
	}
	{parameters "aphebc"
		("apbc_slope_multiplier")
	}
	{parameters "aphebc2"
		("apbc_slope_multiplier")
	}
	{parameters "apcr"
		("apcr_slope_multiplier")
	}
	{parameters "hvap"
		("apcr_slope_multiplier")
	}
	{parameters "apds"
		("apds_slope_multiplier")
	}
	{parameters "heat"
		("heat_slope_multiplier")
	}
	{parameters "heata"
		("heat_slope_multiplier")
	}
	{parameters "heatb"
		("heat_slope_multiplier")
	}
	{parameters "heatc"
		("heat_slope_multiplier")
	}
)
(define "85-155_slope_multipliers"
	{parameters "ap"
		("ap_slope_multiplier")
	}
	{parameters "apc"
		("apc_slope_multiplier")
	}
	{parameters "apche"
		("apc_slope_multiplier")
	}
	{parameters "apbc"
		("apbc_slope_multiplier")
	}
	{parameters "aphe"
		("ap_slope_multiplier")
	}
	{parameters "apcbc"
		("apc_slope_multiplier")
	}
	{parameters "apcbche"
		("apc_slope_multiplier")
	}
	{parameters "apcbche2"
		("apc_slope_multiplier")
	}
	{parameters "aphebc"
		("apbc_slope_multiplier")
	}
	{parameters "aphebc2"
		("apbc_slope_multiplier")
	}
	{parameters "apcr"
		("large_apcr_slope_multiplier")
	}
	{parameters "hvap"
		("large_apcr_slope_multiplier")
	}
	{parameters "apds"
		("apds_slope_multiplier")
	}
	{parameters "heat"
		("heat_slope_multiplier")
	}
	{parameters "heata"
		("heat_slope_multiplier")
	}
	{parameters "heatb"
		("heat_slope_multiplier")
	}
	{parameters "heatc"
		("heat_slope_multiplier")
	}
)
(define "20_slope_multipliers"
	{parameters "ap"
		("ap_20_slope_multiplier")
	}
	{parameters "apbc"
		("ap_20_slope_multiplier")
	}
	{parameters "aphe"
		("ap_20_slope_multiplier")
	}
	{parameters "apcr"
		("apcr_slope_multiplier")
	}
)
(define "37_slope_multipliers"
	{parameters "ap"
		("ap_37_slope_multiplier_700ms")
	}
	{parameters "apbc"
		("ap_37_slope_multiplier_700ms")
	}
	{parameters "aphe"
		("ap_37_slope_multiplier_700ms")
	}
	{parameters "apc"
		("apc_37_slope_multiplier")
	}
	{parameters "apche"
		("apc_37_slope_multiplier")
	}
	{parameters "apcbc"
		("apc_37_slope_multiplier")
	}
	{parameters "apcbche"
		("apc_37_slope_multiplier")
	}
	{parameters "apcr"
		("apcr_50_slope_multiplier")
	}
	{parameters "heat"
		("heat_slope_multiplier")
	}
	{parameters "heata"
		("heat_slope_multiplier")
	}
	{parameters "heatb"
		("heat_slope_multiplier")
	}
	{parameters "heatc"
		("heat_slope_multiplier")
	}
)
(define "37_slope_multipliers_800ms"
	{parameters "ap"
		("ap_37_slope_multiplier_800ms")
	}
	{parameters "apbc"
		("ap_37_slope_multiplier_800ms")
	}
	{parameters "aphe"
		("ap_37_slope_multiplier_800ms")
	}
	{parameters "apc"
		("apc_37_slope_multiplier")
	}
	{parameters "apche"
		("apc_37_slope_multiplier")
	}
	{parameters "apcbc"
		("apc_37_slope_multiplier")
	}
	{parameters "apcbche"
		("apc_37_slope_multiplier")
	}
	{parameters "apcr"
		("apcr_50_slope_multiplier")
	}
	{parameters "heat"
		("heat_slope_multiplier")
	}
	{parameters "heata"
		("heat_slope_multiplier")
	}
	{parameters "heatb"
		("heat_slope_multiplier")
	}
	{parameters "heatc"
		("heat_slope_multiplier")
	}
)
(define "40_slope_multipliers"
	{parameters "ap"
		("ap_40_slope_multiplier")
	}
	{parameters "apbc"
		("ap_40_slope_multiplier")
	}
	{parameters "aphe"
		("ap_40_slope_multiplier")
	}
	{parameters "apc"
		("apc_37_slope_multiplier")
	}
	{parameters "apche"
		("apc_37_slope_multiplier")
	}
	{parameters "apcbc"
		("apc_37_slope_multiplier")
	}
	{parameters "apcbche"
		("apc_37_slope_multiplier")
	}
	{parameters "apcr"
		("apcr_50_slope_multiplier")
	}
	{parameters "heat"
		("heat_slope_multiplier")
	}
	{parameters "heata"
		("heat_slope_multiplier")
	}
	{parameters "heatb"
		("heat_slope_multiplier")
	}
	{parameters "heatc"
		("heat_slope_multiplier")
	}
)
(define "40_eng_slope_multipliers"
	{parameters "ap"
		("ap_40_eng_slope_multiplier")
	}
	{parameters "ap2"
		("ap_40_eng_slope_multiplier")
	}
	{parameters "aphe"
		("ap_40_eng_slope_multiplier")
	}
	{parameters "apcbc"
		("apcbc_40_eng_slope_multiplier")
	}
	{parameters "apcr"
		("apcr_50_slope_multiplier")
	}
	{parameters "apcr2"
		("apcr_50_slope_multiplier")
	}
	{parameters "heat"
		("heat_slope_multiplier")
	}
)
(define "57_slope_multipliers"
	{parameters "ap"
		("ap_57_slope_multiplier")
	}
	{parameters "apbc"
		("ap_57_slope_multiplier")
	}
	{parameters "aphe"
		("ap_57_slope_multiplier")
	}
	{parameters "apc"
		("apc_57_slope_multiplier")
	}
	{parameters "apche"
		("apc_57_slope_multiplier")
	}
	{parameters "apcbc"
		("apc_57_slope_multiplier")
	}
	{parameters "apcbche"
		("apc_57_slope_multiplier")
	}
	{parameters "apcr"
		("apcr_50_slope_multiplier")
	}
	{parameters "apds"
		("apds_slope_multiplier")
	}
	{parameters "heat"
		("heat_slope_multiplier")
	}
	{parameters "heata"
		("heat_slope_multiplier")
	}
	{parameters "heatb"
		("heat_slope_multiplier")
	}
	{parameters "heatc"
		("heat_slope_multiplier")
	}
)
(define "57_eng_slope_multipliers"
	{parameters "ap"
		("ap_57_eng_slope_multiplier")
	}
	{parameters "apc"
		("apc_57_eng_slope_multiplier")
	}
	{parameters "apcbc"
		("apcbc_57_eng_slope_multiplier")
	}
	{parameters "apcbche"
		("apc_57_slope_multiplier")
	}
	{parameters "apcr"
		("apcr_50_slope_multiplier")
	}
	{parameters "apds"
		("apds_slope_multiplier")
	}
	{parameters "heat"
		("heat_slope_multiplier")
	}
)
(define "75_ger_slope_multipliers"
	{parameters "apche"
		("apc_75_ger_slope_multiplier")
	}
	{parameters "apcbche"
		("apc_75_ger_slope_multiplier")
	}
	{parameters "apcr"
		("apcr_75_slope_multiplier")
	}
	{parameters "heat"
		("heat_slope_multiplier")
	}
	{parameters "heata"
		("heat_slope_multiplier")
	}
	{parameters "heatb"
		("heat_slope_multiplier")
	}
	{parameters "heatc"
		("heat_slope_multiplier")
	}
)
(define "75_slope_multipliers"
	{parameters "ap"
		("ap_75_slope_multiplier")
	}
	{parameters "apbc"
		("ap_75_slope_multiplier")
	}
	{parameters "aphe"
		("ap_75_slope_multiplier")
	}
	{parameters "apc"
		("apc_75_slope_multiplier")
	}
	{parameters "apche"
		("apc_75_slope_multiplier")
	}
	{parameters "apcbc"
		("apc_75_slope_multiplier")
	}
	{parameters "apcbche"
		("apc_75_slope_multiplier")
	}
	{parameters "apcr"
		("apcr_75_slope_multiplier")
	}
	{parameters "hvap"
		("hvap_76_slope_multiplier")
	}
	{parameters "apds"
		("apds_slope_multiplier")
	}
	{parameters "heat"
		("heat_slope_multiplier")
	}
	{parameters "heata"
		("heat_slope_multiplier")
	}
	{parameters "heatb"
		("heat_slope_multiplier")
	}
	{parameters "heatc"
		("heat_slope_multiplier")
	}
)
(define "76_slope_multipliers"
	{parameters "ap"
		("ap_76_slope_multiplier")
	}
	{parameters "apbc"
		("ap_76_slope_multiplier")
	}
	{parameters "aphe"
		("ap_76_slope_multiplier")
	}
	{parameters "apc"
		("apc_76_slope_multiplier")
	}
	{parameters "apche"
		("apc_76_slope_multiplier")
	}
	{parameters "apcbc"
		("apc_76_slope_multiplier")
	}
	{parameters "apcbche"
		("apc_76_slope_multiplier")
	}
	{parameters "apcr"
		("apcr_75_slope_multiplier")
	}
	{parameters "hvap"
		("hvap_76_slope_multiplier")
	}
	{parameters "apds"
		("apds_slope_multiplier")
	}
	{parameters "heat"
		("heat_slope_multiplier")
	}
	{parameters "heata"
		("heat_slope_multiplier")
	}
	{parameters "heatb"
		("heat_slope_multiplier")
	}
	{parameters "heatc"
		("heat_slope_multiplier")
	}
)
(define "76_eng_slope_multipliers"
	{parameters "ap"
		("ap_76_eng_slope_multiplier")
	}
	{parameters "apc"
		("apc_76_eng_slope_multiplier")
	}
	{parameters "apcbc"
		("apcbc_76_eng_slope_multiplier")
	}
	{parameters "apds"
		("apds_slope_multiplier")
	}
	{parameters "heat"
		("heat_slope_multiplier")
	}
)
(define "88_ger_slope_multipliers"
	{parameters "ap"
		("ap_90_slope_multiplier")
	}
	{parameters "apbc"
		("ap_90_slope_multiplier")
	}
	{parameters "aphe"
		("ap_90_slope_multiplier")
	}
	{parameters "apc"
		("apc_90_slope_multiplier")
	}
	{parameters "apche"
		("apc_90_slope_multiplier")
	}
	{parameters "apcbc"
		("apc_90_slope_multiplier")
	}
	{parameters "apcbche"
		("apc_88_ger_slope_multiplier")
	}
	{parameters "apcbche2"
		("apc_90_slope_multiplier")
	}
	{parameters "apcr"
		("apcr_88_slope_multiplier")
	}
	{parameters "hvap"
		("hvap_90_slope_multiplier")
	}
	{parameters "apds"
		("apds_slope_multiplier")
	}
	{parameters "heat"
		("heat_slope_multiplier")
	}
	{parameters "heata"
		("heat_slope_multiplier")
	}
	{parameters "heatb"
		("heat_slope_multiplier")
	}
	{parameters "heatc"
		("heat_slope_multiplier")
	}
)
(define "90_slope_multipliers"
	{parameters "ap"
		("ap_90_slope_multiplier")
	}
	{parameters "apbc"
		("ap_90_slope_multiplier")
	}
	{parameters "aphe"
		("ap_90_slope_multiplier")
	}
	{parameters "apc"
		("apc_90_slope_multiplier")
	}
	{parameters "apche"
		("apc_90_slope_multiplier")
	}
	{parameters "apcbc"
		("apc_90_slope_multiplier")
	}
	{parameters "apcbche"
		("apc_90_slope_multiplier")
	}
	{parameters "apcbche2"
		("apc_90_slope_multiplier")
	}
	{parameters "apcr"
		("apcr_88_slope_multiplier")
	}
	{parameters "hvap"
		("hvap_90_slope_multiplier")
	}
	{parameters "apds"
		("apds_slope_multiplier")
	}
	{parameters "heat"
		("heat_slope_multiplier")
	}
	{parameters "heata"
		("heat_slope_multiplier")
	}
	{parameters "heatb"
		("heat_slope_multiplier")
	}
	{parameters "heatc"
		("heat_slope_multiplier")
	}
)
(define "94_eng_slope_multipliers"
	{parameters "ap"
		("ap_94_eng_slope_multiplier")
	}
	{parameters "aphe"
		("ap_90_slope_multiplier")
	}
)
(define "105_slope_multipliers"
	{parameters "ap"
		("ap_105_slope_multiplier")
	}
	{parameters "apbc"
		("ap_105_slope_multiplier")
	}
	{parameters "aphe"
		("ap_105_slope_multiplier")
	}
	{parameters "apc"
		("apc_90_slope_multiplier")
	}
	{parameters "apche"
		("apc_90_slope_multiplier")
	}
	{parameters "apcbc"
		("apc_90_slope_multiplier")
	}
	{parameters "apcbche"
		("apc_90_slope_multiplier")
	}
	{parameters "apcr"
		("large_apcr_slope_multiplier")
	}
	{parameters "hvap"
		("large_apcr_slope_multiplier")
	}
	{parameters "apds"
		("apds_slope_multiplier")
	}
	{parameters "heat"
		("heat_slope_multiplier")
	}
	{parameters "heata"
		("heat_slope_multiplier")
	}
	{parameters "heatb"
		("heat_slope_multiplier")
	}
	{parameters "heatc"
		("heat_slope_multiplier")
	}
)
(define "128_slope_multipliers"
	{parameters "aphe"
		("ap_122_slope_multiplier")
	}
	{parameters "apche"
		("apc_128_slope_multiplier")
	}
	{parameters "apcbche"
		("apc_128_slope_multiplier")
	}
)

(define "45_rus_slope_multipliers"
	{parameters "aphe"
		("ap_40_slope_multiplier")
	}
	{parameters "apbc"
		("ap_40_slope_multiplier")
	}
	{parameters "apcbc"
		("apc_57_slope_multiplier")
	}
	{parameters "apcr"
		("apcr_50_slope_multiplier")
	}
	{parameters "heat"
		("heat_slope_multiplier")
	}
)
(define "57_rus_slope_multipliers"
	{parameters "aphe"
		("ap_57_slope_multiplier")
	}
	{parameters "apbc"
		("apbc_57_slope_multiplier")
	}
	{parameters "aphebc"
		("apbc_57_slope_multiplier")
	}
	{parameters "apcr"
		("apcr_50_slope_multiplier")
	}
	{parameters "heat"
		("heat_slope_multiplier")
	}
)
(define "76_rus_slope_multipliers"
	{parameters "aphe"
		("ap_75_slope_multiplier")
	}
	{parameters "apbc"
		("apbc_76_slope_multiplier")
	}
	{parameters "apcbc"
		("apc_75_ger_slope_multiplier")
	}
	{parameters "aphebc"
		("apbc_76_slope_multiplier")
	}
	{parameters "aphebc2"
		("apbc_76_slope_multiplier")
	}
	{parameters "apcr"
		("apcr_75_slope_multiplier")
	}
	{parameters "heat"
		("heat_slope_multiplier")
	}
	{parameters "heata"
		("heat_slope_multiplier")
	}
	{parameters "heatb"
		("heat_slope_multiplier")
	}
	{parameters "heatc"
		("heat_slope_multiplier")
	}
)
(define "85_rus_slope_multipliers"
	{parameters "aphe"
		("ap_85_slope_multiplier")
	}
	{parameters "aphebc"
		("apbc_85_slope_multiplier")
	}
	{parameters "apcr"
		("apcr_88_slope_multiplier")
	}
	{parameters "heat"
		("heat_slope_multiplier")
	}
)
(define "100_rus_slope_multipliers"
	{parameters "aphe"
		("ap_100_slope_multiplier")
	}
	{parameters "aphebc"
		("apbc_100_slope_multiplier")
	}
	{parameters "heat"
		("heat_slope_multiplier")
	}
)
(define "122_rus_slope_multipliers"
	{parameters "aphe"
		("ap_122_slope_multiplier")
	}
	{parameters "aphebc"
		("apbc_122_slope_multiplier")
	}
	{parameters "heat"
		("heat_slope_multiplier")
	}
)
(define "152_rus_slope_multipliers"
	{parameters "aphe"
		("ap_152_slope_multiplier")
	}
	{parameters "aphebc"
		("apbc_152_slope_multiplier")
	}
	{parameters "heat"
		("heat_slope_multiplier")
	}
)