OpenShadingLanguage 1.00
# Compiled by oslc 1.4.0
shader node_math
param	string	type	"Add" 		 %read{0,71} %write{2147483647,-1}
param	int	Clamp	0 		 %read{79,79} %write{2147483647,-1}
param	float	Value1	0 		 %read{2,77} %write{2147483647,-1}
param	float	Value2	0 		 %read{2,77} %write{2147483647,-1}
oparam	float	Value	0 		 %read{81,81} %write{2,82}
local	float	___310_result	 %read{16,16} %write{14,15}
local	float	___311_result	 %read{78,78} %write{76,77}
const	string	$const1	"Add"		 %read{0,0} %write{2147483647,-1}
temp	int	$tmp1	 %read{1,1} %write{0,0}
const	string	$const2	"Subtract"		 %read{3,3} %write{2147483647,-1}
temp	int	$tmp2	 %read{4,4} %write{3,3}
const	string	$const3	"Multiply"		 %read{6,6} %write{2147483647,-1}
temp	int	$tmp3	 %read{7,7} %write{6,6}
const	string	$const4	"Divide"		 %read{9,9} %write{2147483647,-1}
temp	int	$tmp4	 %read{10,10} %write{9,9}
const	string	$const5	"safe_divide"		 %read{11,11} %write{2147483647,-1}
const	float	$const6	0		 %read{12,82} %write{2147483647,-1}
temp	int	$tmp5	 %read{13,13} %write{12,12}
const	string	$const7	"Sine"		 %read{17,17} %write{2147483647,-1}
temp	int	$tmp6	 %read{18,18} %write{17,17}
const	string	$const8	"Cosine"		 %read{20,20} %write{2147483647,-1}
temp	int	$tmp7	 %read{21,21} %write{20,20}
const	string	$const9	"Tangent"		 %read{23,23} %write{2147483647,-1}
temp	int	$tmp8	 %read{24,24} %write{23,23}
const	string	$const10	"Arcsine"		 %read{26,26} %write{2147483647,-1}
temp	int	$tmp9	 %read{27,27} %write{26,26}
const	string	$const11	"Arccosine"		 %read{29,29} %write{2147483647,-1}
temp	int	$tmp10	 %read{30,30} %write{29,29}
const	string	$const12	"Arctangent"		 %read{32,32} %write{2147483647,-1}
temp	int	$tmp11	 %read{33,33} %write{32,32}
const	string	$const13	"Power"		 %read{35,35} %write{2147483647,-1}
temp	int	$tmp12	 %read{36,36} %write{35,35}
const	string	$const14	"Logarithm"		 %read{38,38} %write{2147483647,-1}
temp	int	$tmp13	 %read{39,39} %write{38,38}
const	string	$const15	"safe_log"		 %read{40,40} %write{2147483647,-1}
temp	int	$tmp14	 %read{42,42} %write{41,41}
temp	int	$tmp15	 %read{43,47} %write{42,46}
const	int	$const16	0		 %read{42,45} %write{2147483647,-1}
temp	int	$tmp16	 %read{45,45} %write{44,44}
temp	int	$tmp17	 %read{46,46} %write{45,45}
temp	float	$tmp18	 %read{52,52} %write{50,50}
temp	float	$tmp19	 %read{52,52} %write{51,51}
const	string	$const17	"Minimum"		 %read{53,53} %write{2147483647,-1}
temp	int	$tmp20	 %read{54,54} %write{53,53}
const	string	$const18	"Maximum"		 %read{56,56} %write{2147483647,-1}
temp	int	$tmp21	 %read{57,57} %write{56,56}
const	string	$const19	"Round"		 %read{59,59} %write{2147483647,-1}
temp	int	$tmp22	 %read{60,60} %write{59,59}
const	float	$const20	0.5		 %read{61,61} %write{2147483647,-1}
temp	float	$tmp23	 %read{62,62} %write{61,61}
const	string	$const21	"Less Than"		 %read{63,63} %write{2147483647,-1}
temp	int	$tmp24	 %read{64,64} %write{63,63}
temp	int	$tmp25	 %read{66,66} %write{65,65}
const	string	$const22	"Greater Than"		 %read{67,67} %write{2147483647,-1}
temp	int	$tmp26	 %read{68,68} %write{67,67}
temp	int	$tmp27	 %read{70,70} %write{69,69}
const	string	$const23	"Modulo"		 %read{71,71} %write{2147483647,-1}
temp	int	$tmp28	 %read{72,72} %write{71,71}
const	string	$const24	"safe_modulo"		 %read{73,73} %write{2147483647,-1}
temp	int	$tmp29	 %read{75,75} %write{74,74}
const	float	$const25	1		 %read{81,81} %write{2147483647,-1}
const	string	$const26	"clamp"		 %read{80,80} %write{2147483647,-1}
temp	float	$tmp30	 %read{82,82} %write{81,81}
code ___main___
# D:\\blender_dev\\code\\blender\\intern\\cycles\\kernel\\shaders\\node_math.osl:61
# 		Value = Value1 + Value2;
	eq		$tmp1 type $const1 	%filename{"D:\\blender_dev\\code\\blender\\intern\\cycles\\kernel\\shaders\\node_math.osl"} %line{61} %argrw{"wrr"}
	if		$tmp1 3 79 	%argrw{"r"}
# D:\\blender_dev\\code\\blender\\intern\\cycles\\kernel\\shaders\\node_math.osl:62
# 	else if (type == "Subtract")
	add		Value Value1 Value2 	%line{62} %argrw{"wrr"}
# D:\\blender_dev\\code\\blender\\intern\\cycles\\kernel\\shaders\\node_math.osl:63
# 		Value = Value1 - Value2;
	eq		$tmp2 type $const2 	%line{63} %argrw{"wrr"}
	if		$tmp2 6 79 	%argrw{"r"}
# D:\\blender_dev\\code\\blender\\intern\\cycles\\kernel\\shaders\\node_math.osl:64
# 	else if (type == "Multiply")
	sub		Value Value1 Value2 	%line{64} %argrw{"wrr"}
# D:\\blender_dev\\code\\blender\\intern\\cycles\\kernel\\shaders\\node_math.osl:65
# 		Value = Value1 * Value2;
	eq		$tmp3 type $const3 	%line{65} %argrw{"wrr"}
	if		$tmp3 9 79 	%argrw{"r"}
# D:\\blender_dev\\code\\blender\\intern\\cycles\\kernel\\shaders\\node_math.osl:66
# 	else if (type == "Divide")
	mul		Value Value1 Value2 	%line{66} %argrw{"wrr"}
# D:\\blender_dev\\code\\blender\\intern\\cycles\\kernel\\shaders\\node_math.osl:67
# 		Value = safe_divide(Value1, Value2);
	eq		$tmp4 type $const4 	%line{67} %argrw{"wrr"}
	if		$tmp4 17 79 	%argrw{"r"}
# D:\\blender_dev\\code\\blender\\intern\\cycles\\kernel\\shaders\\node_math.osl:68
# 	else if (type == "Sine")
	functioncall	$const5 17 	%line{68} %argrw{"r"}
# D:\\blender_dev\\code\\blender\\intern\\cycles\\kernel\\shaders\\node_math.osl:24
# 		result = 0.0;
	eq		$tmp5 Value2 $const6 	%line{24} %argrw{"wrr"}
	if		$tmp5 15 16 	%argrw{"r"}
# D:\\blender_dev\\code\\blender\\intern\\cycles\\kernel\\shaders\\node_math.osl:25
# 	else
	assign		___310_result $const6 	%line{25} %argrw{"wr"}
# D:\\blender_dev\\code\\blender\\intern\\cycles\\kernel\\shaders\\node_math.osl:27
# 	
	div		___310_result Value1 Value2 	%line{27} %argrw{"wrr"}
# D:\\blender_dev\\code\\blender\\intern\\cycles\\kernel\\shaders\\node_math.osl:29
# }
	assign		Value ___310_result 	%line{29} %argrw{"wr"}
# D:\\blender_dev\\code\\blender\\intern\\cycles\\kernel\\shaders\\node_math.osl:69
# 		Value = sin(Value1);
	eq		$tmp6 type $const7 	%line{69} %argrw{"wrr"}
	if		$tmp6 20 79 	%argrw{"r"}
# D:\\blender_dev\\code\\blender\\intern\\cycles\\kernel\\shaders\\node_math.osl:70
# 	else if (type == "Cosine")
	sin		Value Value1 	%line{70} %argrw{"wr"}
# D:\\blender_dev\\code\\blender\\intern\\cycles\\kernel\\shaders\\node_math.osl:71
# 		Value = cos(Value1);
	eq		$tmp7 type $const8 	%line{71} %argrw{"wrr"}
	if		$tmp7 23 79 	%argrw{"r"}
# D:\\blender_dev\\code\\blender\\intern\\cycles\\kernel\\shaders\\node_math.osl:72
# 	else if (type == "Tangent")
	cos		Value Value1 	%line{72} %argrw{"wr"}
# D:\\blender_dev\\code\\blender\\intern\\cycles\\kernel\\shaders\\node_math.osl:73
# 		Value = tan(Value1);
	eq		$tmp8 type $const9 	%line{73} %argrw{"wrr"}
	if		$tmp8 26 79 	%argrw{"r"}
# D:\\blender_dev\\code\\blender\\intern\\cycles\\kernel\\shaders\\node_math.osl:74
# 	else if (type == "Arcsine")
	tan		Value Value1 	%line{74} %argrw{"wr"}
# D:\\blender_dev\\code\\blender\\intern\\cycles\\kernel\\shaders\\node_math.osl:75
# 		Value = asin(Value1);
	eq		$tmp9 type $const10 	%line{75} %argrw{"wrr"}
	if		$tmp9 29 79 	%argrw{"r"}
# D:\\blender_dev\\code\\blender\\intern\\cycles\\kernel\\shaders\\node_math.osl:76
# 	else if (type == "Arccosine")
	asin		Value Value1 	%line{76} %argrw{"wr"}
# D:\\blender_dev\\code\\blender\\intern\\cycles\\kernel\\shaders\\node_math.osl:77
# 		Value = acos(Value1);
	eq		$tmp10 type $const11 	%line{77} %argrw{"wrr"}
	if		$tmp10 32 79 	%argrw{"r"}
# D:\\blender_dev\\code\\blender\\intern\\cycles\\kernel\\shaders\\node_math.osl:78
# 	else if (type == "Arctangent")
	acos		Value Value1 	%line{78} %argrw{"wr"}
# D:\\blender_dev\\code\\blender\\intern\\cycles\\kernel\\shaders\\node_math.osl:79
# 		Value = atan(Value1);
	eq		$tmp11 type $const12 	%line{79} %argrw{"wrr"}
	if		$tmp11 35 79 	%argrw{"r"}
# D:\\blender_dev\\code\\blender\\intern\\cycles\\kernel\\shaders\\node_math.osl:80
# 	else if (type == "Power")
	atan		Value Value1 	%line{80} %argrw{"wr"}
# D:\\blender_dev\\code\\blender\\intern\\cycles\\kernel\\shaders\\node_math.osl:81
# 		Value = pow(Value1, Value2);
	eq		$tmp12 type $const13 	%line{81} %argrw{"wrr"}
	if		$tmp12 38 79 	%argrw{"r"}
# D:\\blender_dev\\code\\blender\\intern\\cycles\\kernel\\shaders\\node_math.osl:82
# 	else if (type == "Logarithm")
	pow		Value Value1 Value2 	%line{82} %argrw{"wrr"}
# D:\\blender_dev\\code\\blender\\intern\\cycles\\kernel\\shaders\\node_math.osl:83
# 		Value = safe_log(Value1, Value2);
	eq		$tmp13 type $const14 	%line{83} %argrw{"wrr"}
	if		$tmp13 53 79 	%argrw{"r"}
# D:\\blender_dev\\code\\blender\\intern\\cycles\\kernel\\shaders\\node_math.osl:84
# 	else if (type == "Minimum")
	functioncall	$const15 53 	%line{84} %argrw{"r"}
# D:\\blender_dev\\code\\blender\\intern\\cycles\\kernel\\shaders\\node_math.osl:46
# 		return 0.0;
	lt		$tmp14 Value1 $const6 	%line{46} %argrw{"wrr"}
	neq		$tmp15 $tmp14 $const16 	%argrw{"wrr"}
	if		$tmp15 44 47 	%argrw{"r"}
	lt		$tmp16 Value2 $const6 	%argrw{"wrr"}
	neq		$tmp17 $tmp16 $const16 	%argrw{"wrr"}
	assign		$tmp15 $tmp17 	%argrw{"wr"}
	if		$tmp15 50 50 	%argrw{"r"}
# D:\\blender_dev\\code\\blender\\intern\\cycles\\kernel\\shaders\\node_math.osl:47
# 	
	assign		Value $const6 	%line{47} %argrw{"wr"}
	return
# D:\\blender_dev\\code\\blender\\intern\\cycles\\kernel\\shaders\\node_math.osl:49
# }
	log		$tmp18 Value1 	%line{49} %argrw{"wr"}
	log		$tmp19 Value2 	%argrw{"wr"}
	div		Value $tmp18 $tmp19 	%argrw{"wrr"}
# D:\\blender_dev\\code\\blender\\intern\\cycles\\kernel\\shaders\\node_math.osl:85
# 		Value = min(Value1, Value2);
	eq		$tmp20 type $const17 	%line{85} %argrw{"wrr"}
	if		$tmp20 56 79 	%argrw{"r"}
# D:\\blender_dev\\code\\blender\\intern\\cycles\\kernel\\shaders\\node_math.osl:86
# 	else if (type == "Maximum")
	min		Value Value1 Value2 	%line{86} %argrw{"wrr"}
# D:\\blender_dev\\code\\blender\\intern\\cycles\\kernel\\shaders\\node_math.osl:87
# 		Value = max(Value1, Value2);
	eq		$tmp21 type $const18 	%line{87} %argrw{"wrr"}
	if		$tmp21 59 79 	%argrw{"r"}
# D:\\blender_dev\\code\\blender\\intern\\cycles\\kernel\\shaders\\node_math.osl:88
# 	else if (type == "Round")
	max		Value Value1 Value2 	%line{88} %argrw{"wrr"}
# D:\\blender_dev\\code\\blender\\intern\\cycles\\kernel\\shaders\\node_math.osl:89
# 		Value = floor(Value1 + 0.5);
	eq		$tmp22 type $const19 	%line{89} %argrw{"wrr"}
	if		$tmp22 63 79 	%argrw{"r"}
# D:\\blender_dev\\code\\blender\\intern\\cycles\\kernel\\shaders\\node_math.osl:90
# 	else if (type == "Less Than")
	add		$tmp23 Value1 $const20 	%line{90} %argrw{"wrr"}
	floor		Value $tmp23 	%argrw{"wr"}
# D:\\blender_dev\\code\\blender\\intern\\cycles\\kernel\\shaders\\node_math.osl:91
# 		Value = Value1 < Value2;
	eq		$tmp24 type $const21 	%line{91} %argrw{"wrr"}
	if		$tmp24 67 79 	%argrw{"r"}
# D:\\blender_dev\\code\\blender\\intern\\cycles\\kernel\\shaders\\node_math.osl:92
# 	else if (type == "Greater Than")
	lt		$tmp25 Value1 Value2 	%line{92} %argrw{"wrr"}
	assign		Value $tmp25 	%argrw{"wr"}
# D:\\blender_dev\\code\\blender\\intern\\cycles\\kernel\\shaders\\node_math.osl:93
# 		Value = Value1 > Value2;
	eq		$tmp26 type $const22 	%line{93} %argrw{"wrr"}
	if		$tmp26 71 79 	%argrw{"r"}
# D:\\blender_dev\\code\\blender\\intern\\cycles\\kernel\\shaders\\node_math.osl:94
# 	else if (type == "Modulo")
	gt		$tmp27 Value1 Value2 	%line{94} %argrw{"wrr"}
	assign		Value $tmp27 	%argrw{"wr"}
# D:\\blender_dev\\code\\blender\\intern\\cycles\\kernel\\shaders\\node_math.osl:95
# 		Value = safe_modulo(Value1, Value2);
	eq		$tmp28 type $const23 	%line{95} %argrw{"wrr"}
	if		$tmp28 79 79 	%argrw{"r"}
# D:\\blender_dev\\code\\blender\\intern\\cycles\\kernel\\shaders\\node_math.osl:96
# 
	functioncall	$const24 79 	%line{96} %argrw{"r"}
# D:\\blender_dev\\code\\blender\\intern\\cycles\\kernel\\shaders\\node_math.osl:36
# 		result = 0.0;
	eq		$tmp29 Value2 $const6 	%line{36} %argrw{"wrr"}
	if		$tmp29 77 78 	%argrw{"r"}
# D:\\blender_dev\\code\\blender\\intern\\cycles\\kernel\\shaders\\node_math.osl:37
# 	else
	assign		___311_result $const6 	%line{37} %argrw{"wr"}
# D:\\blender_dev\\code\\blender\\intern\\cycles\\kernel\\shaders\\node_math.osl:39
# 	
	fmod		___311_result Value1 Value2 	%line{39} %argrw{"wrr"}
# D:\\blender_dev\\code\\blender\\intern\\cycles\\kernel\\shaders\\node_math.osl:41
# }
	assign		Value ___311_result 	%line{41} %argrw{"wr"}
# D:\\blender_dev\\code\\blender\\intern\\cycles\\kernel\\shaders\\node_math.osl:98
# 		Value = clamp(Value, 0.0, 1.0);
	if		Clamp 83 83 	%line{98} %argrw{"r"}
# D:\\blender_dev\\code\\blender\\intern\\cycles\\kernel\\shaders\\node_math.osl:99
# }
	functioncall	$const26 83 	%line{99} %argrw{"r"}
# D:/blender_dev\\code\\blender\\intern\\cycles\\kernel\\shaders\\stdosl.h:144
# #define M_LOG10E   0.4342944819032518        /* log_10(e) */
	min		$tmp30 Value $const25 	%filename{"D:/blender_dev\\code\\blender\\intern\\cycles\\kernel\\shaders\\stdosl.h"} %line{144} %argrw{"wrr"}
	max		Value $tmp30 $const6 	%argrw{"wrr"}
	end
