OpenShadingLanguage 1.01
# Compiled by oslc 1.6.2
surface shinyplastic	%meta{string,description,"Plastic material with reflections"} 
param	float	Ka	1		%meta{string,description,"Ambient scaling"} %meta{float,UImin,0} %meta{float,UIsoftmax,1}  %read{85,85} %write{2147483647,-1}
param	float	Kd	0.5		%meta{string,description,"Diffuse scaling"} %meta{float,UImin,0} %meta{float,UIsoftmax,1}  %read{103,103} %write{2147483647,-1}
param	float	Ks	0.5		%meta{string,description,"Specular scaling"} %meta{float,UImin,0} %meta{float,UIsoftmax,1}  %read{127,127} %write{2147483647,-1}
param	float	roughness	0.1		%meta{string,description,"Surface roughness (specular highlight size)"} %meta{float,UImin,0} %meta{float,UImax,1} %meta{string,UIenabler,"Ks"}  %read{121,121} %write{2147483647,-1}
param	color	specularcolor	1 1 1		%meta{string,description,"Specular highlight color"} %meta{string,UIenabler,"Ks"}  %read{2147483647,-1} %write{2147483647,-1}
param	float	Kr	1		%meta{string,description,"Reflectivity / Environment scaling"} %meta{string,UIlabel,"Reflectivity"} %meta{float,UImin,0} %meta{float,UIsoftmax,1} %meta{string,UIgroupbegin,"Reflections"}  %read{82,82} %write{2147483647,-1}
param	float	eta	1.5		%meta{string,description,"Index of refraction"} %meta{float,UImin,1} %meta{float,UIsoftmax,2}  %read{12,12} %write{2147483647,-1}
param	float	blur	0		%meta{string,description,"Environment blur"} %meta{string,UIenabler,"Kr"} %meta{float,UImin,0} %meta{float,UIsoftmax,1}  %read{142,151} %write{2147483647,-1}
param	string	envname	""		%meta{string,description,"Map or geometry set name for reflections"} %meta{string,UIlabel,"Environment name"} %meta{string,UIenabler,"Kr"} %meta{string,UItype,"environment"}  %read{130,151} %write{2147483647,-1}
param	string	envspace	"world"		%meta{string,description,"Coordinate system for environment map lookup"} %meta{string,UIlabel,"Environment space"} %meta{string,UIenabler,"Kr"} %meta{string,UItype,"coordsys"}  %read{136,148} %write{2147483647,-1}
param	float	samples	1		%meta{string,description,"Environment samples (for ray tracing)"} %meta{string,UIlabel,"Environment samples"} %meta{string,UIenabler,"Kr"} %meta{string,UItype,"int"} %meta{float,UImin,1} %meta{float,UIsoftmax,64}  %read{150,150} %write{2147483647,-1}
param	float	twosided	0		%meta{string,description,"Two-sided reflections"} %meta{string,UIenabler,"Kr"} %meta{string,UItype,"bool"} %meta{string,UIgroupend,"Reflections"}  %read{73,73} %write{2147483647,-1}
global	point	P	%read{89,151} %write{2147483647,-1} %derivs
global	vector	I	%read{3,76} %write{2147483647,-1} %derivs
global	normal	N	%read{0,76} %write{2147483647,-1} %derivs
global	normal	Ng	%read{3,3} %write{2147483647,-1}
global	color	C	%read{83,156} %write{155,156}
global	color	opacity	%read{156,156} %write{2147483647,-1}
global	vector	L	%read{96,115} %write{2147483647,-1}
global	color	Cl	%read{94,114} %write{2147483647,-1}
local	float	___216_IdotN	%read{55,63} %write{53,53}
local	float	___216_k	%read{59,64} %write{58,58}
local	float	___217_c	%read{15,43} %write{14,17}
local	float	___217_g	%read{29,43} %write{28,31}
local	float	___219_beta	%read{36,44} %write{32,32}
local	float	___219_F	%read{40,48} %write{38,47}
local	color	___278_C	%read{88,102} %write{87,101}
local	float	___279___nondiffuse	%read{88,101} %write{88,101}
local	vector	___280_H	%read{108,125} %write{108,125}
local	color	___281_C	%read{108,126} %write{107,125}
local	float	___282___nonspecular	%read{108,125} %write{108,125}
local	int	___301_status	%read{145,145} %write{144,144}
local	color	___302_C	%read{153,153} %write{142,152}
local	point	___304_Pndc	%read{140,141} %write{139,139} %derivs
local	vector	___306_D	%read{2147483647,-1} %write{148,148}
local	vector	___316_IN	%read{11,62} %write{10,10} %derivs
local	vector	___316_V	%read{117,117} %write{11,11}
local	float	___316_fkr	%read{49,154} %write{48,82}
local	float	___316_fkt	%read{83,83} %write{51,72}
local	vector	___316_R	%read{148,151} %write{22,22} %derivs
local	vector	___316_T	%read{2147483647,-1} %write{61,71}
local	normal	Nf	%read{14,119} %write{6,7} %derivs
temp	normal	$tmp1	%read{6,7} %write{0,0} %derivs
const	string	$const1	"faceforward"		%read{1,2} %write{2147483647,-1}
temp	float	$tmp2	%read{4,4} %write{3,3}
const	int	$const2	0		%read{4,152} %write{2147483647,-1}
temp	int	$tmp3	%read{5,5} %write{4,4}
const	string	$const3	"MaterialShinyPlastic"		%read{9,9} %write{2147483647,-1}
const	int	$const4	1		%read{141,141} %write{2147483647,-1}
temp	float	$tmp4	%read{24,63} %write{12,12}
const	float	$const5	1		%read{12,113} %write{2147483647,-1}
const	string	$const6	"fresnel"		%read{13,13} %write{2147483647,-1}
temp	int	$tmp5	%read{16,16} %write{15,15}
const	string	$const7	"reflect"		%read{18,18} %write{2147483647,-1}
temp	float	$tmp6	%read{20,20} %write{19,19} %derivs
temp	float	$tmp7	%read{21,21} %write{20,20} %derivs
const	float	$const9	2		%read{20,20} %write{2147483647,-1}
temp	vector	$tmp8	%read{22,22} %write{21,21} %derivs
temp	float	$tmp9	%read{25,25} %write{24,24}
const	string	$const10	"sqr"		%read{23,45} %write{2147483647,-1}
temp	float	$tmp10	%read{26,26} %write{25,25}
temp	float	$tmp11	%read{28,28} %write{26,26}
temp	float	$tmp12	%read{28,28} %write{27,27}
const	float	$const11	0		%read{29,120} %write{2147483647,-1}
temp	int	$tmp13	%read{30,30} %write{29,29}
temp	float	$tmp14	%read{34,34} %write{33,33}
temp	float	$tmp15	%read{35,35} %write{34,34}
temp	float	$tmp16	%read{38,38} %write{35,35}
temp	float	$tmp17	%read{37,37} %write{36,36}
temp	float	$tmp18	%read{38,38} %write{37,37}
const	float	$const12	0.5		%read{42,42} %write{2147483647,-1}
temp	float	$tmp19	%read{41,41} %write{40,40}
temp	float	$tmp20	%read{42,42} %write{41,41}
temp	float	$tmp21	%read{47,47} %write{46,46}
temp	float	$tmp22	%read{44,44} %write{43,43}
temp	float	$tmp23	%read{46,46} %write{44,44}
temp	float	$tmp24	%read{50,50} %write{49,49}
temp	float	$tmp25	%read{51,51} %write{50,50}
const	string	$const13	"refract"		%read{52,52} %write{2147483647,-1}
temp	float	$tmp26	%read{57,57} %write{54,54}
temp	float	$tmp27	%read{56,56} %write{55,55}
temp	float	$tmp28	%read{57,57} %write{56,56}
temp	float	$tmp29	%read{58,58} %write{57,57}
temp	int	$tmp30	%read{60,60} %write{59,59}
const	vector	$const14	0 0 0		%read{61,71} %write{2147483647,-1}
temp	vector	$tmp31	%read{67,67} %write{62,62}
temp	float	$tmp32	%read{65,65} %write{63,63}
temp	float	$tmp33	%read{65,65} %write{64,64}
temp	float	$tmp34	%read{66,66} %write{65,65}
temp	vector	$tmp35	%read{67,67} %write{66,66}
temp	int	$tmp36	%read{74,74} %write{73,73}
temp	int	$tmp37	%read{75,80} %write{74,79}
temp	float	$tmp38	%read{77,77} %write{76,76}
temp	int	$tmp39	%read{78,78} %write{77,77}
temp	int	$tmp40	%read{79,79} %write{78,78}
temp	color	$tmp41	%read{88,105} %write{83,101}
temp	color	$tmp42	%read{85,85} %write{84,84}
temp	color	$tmp43	%read{88,104} %write{85,101}
temp	color	$tmp44	%read{103,103} %write{102,102}
const	string	$const15	"diffuse"		%read{86,86} %write{2147483647,-1}
const	float	$const16	1.5707964		%read{89,110} %write{2147483647,-1}
temp	int	$tmp45	%read{88,101} %write{88,101}
temp	int	$tmp46	%read{2147483647,-1} %write{92,92}
const	string	$const17	"light"		%read{92,112} %write{2147483647,-1}
const	string	$const18	"__nondiffuse"		%read{92,92} %write{2147483647,-1}
temp	float	$tmp47	%read{94,94} %write{93,93}
temp	color	$tmp48	%read{100,100} %write{94,94}
temp	color	$tmp49	%read{100,100} %write{99,99}
temp	color	$tmp50	%read{99,99} %write{95,95}
temp	float	$tmp51	%read{98,98} %write{97,97}
temp	vector	$tmp52	%read{97,97} %write{96,96}
temp	color	$tmp53	%read{99,99} %write{98,98}
temp	color	$tmp54	%read{88,101} %write{88,101}
temp	color	$tmp55	%read{104,104} %write{103,103}
temp	color	$tmp56	%read{105,105} %write{104,104}
temp	color	$tmp57	%read{108,128} %write{105,125}
temp	color	$tmp58	%read{127,127} %write{126,126}
const	string	$const19	"specular"		%read{106,106} %write{2147483647,-1}
temp	int	$tmp59	%read{108,125} %write{108,125}
temp	int	$tmp60	%read{2147483647,-1} %write{112,112}
const	string	$const20	"__nonspecular"		%read{112,112} %write{2147483647,-1}
temp	float	$tmp61	%read{114,114} %write{113,113}
temp	color	$tmp62	%read{124,124} %write{114,114}
temp	color	$tmp63	%read{124,124} %write{123,123}
temp	vector	$tmp64	%read{117,117} %write{115,115}
const	string	$const21	"specularbrdf"		%read{116,116} %write{2147483647,-1}
temp	vector	$tmp65	%read{118,118} %write{117,117}
temp	float	$tmp66	%read{123,123} %write{122,122}
temp	float	$tmp67	%read{122,122} %write{120,120}
temp	float	$tmp68	%read{120,120} %write{119,119}
temp	float	$tmp69	%read{122,122} %write{121,121}
const	float	$const23	8		%read{121,121} %write{2147483647,-1}
temp	color	$tmp70	%read{108,125} %write{108,125}
temp	color	$tmp71	%read{128,128} %write{127,127}
temp	color	$tmp72	%read{155,155} %write{128,128}
temp	color	$tmp73	%read{154,154} %write{153,153}
const	string	$const24	"Environment"		%read{129,129} %write{2147483647,-1}
temp	int	$tmp74	%read{131,135} %write{130,134}
const	string	$const25	""		%read{130,130} %write{2147483647,-1}
temp	int	$tmp75	%read{133,133} %write{132,132}
temp	int	$tmp76	%read{134,134} %write{133,133}
const	string	$const26	"NDC"		%read{136,139} %write{2147483647,-1}
temp	int	$tmp77	%read{137,137} %write{136,136}
const	string	$const27	"transform"		%read{138,147} %write{2147483647,-1}
const	string	$const28	"common"		%read{139,148} %write{2147483647,-1}
temp	float	$tmp78	%read{142,142} %write{140,140} %derivs
temp	float	$tmp79	%read{142,142} %write{141,141} %derivs
const	string	$const29	"blur"		%read{142,151} %write{2147483647,-1}
temp	int	$tmp80	%read{146,146} %write{145,145}
const	string	$const30	"istexture"		%read{143,143} %write{2147483647,-1}
temp	int	$tmp81	%read{2147483647,-1} %write{144,144}
const	string	$const31	"exists"		%read{144,144} %write{2147483647,-1}
const	string	$const32	"samples"		%read{151,151} %write{2147483647,-1}
temp	int	$tmp82	%read{151,151} %write{150,150}
const	string	$const33	"traceset"		%read{151,151} %write{2147483647,-1}
temp	color	$tmp83	%read{155,155} %write{154,154}
code ___main___
# D:\\xrt.git\\src\\osl\\shaders\\shinyplastic.osl:111
#     C = MaterialShinyPlastic (Nf, C, Ka, Kd, Ks, roughness, Kr, blur, eta,
	normalize	$tmp1 N 	%filename{"D:\\xrt.git\\src\\osl\\shaders\\shinyplastic.osl"} %line{111} %argrw{"wr"}
	functioncall	$const1 9 	%argrw{"r"}
# D:/xrt.git\\build\\vc10\\Win32\\Release\\shaders\\stdosl.h:196
# vector radians (vector x) { return x*(M_PI/180.0); }
	functioncall	$const1 9 	%filename{"D:/xrt.git\\build\\vc10\\Win32\\Release\\shaders\\stdosl.h"} %line{196} %argrw{"r"}
# D:/xrt.git\\build\\vc10\\Win32\\Release\\shaders\\stdosl.h:192
#     return (dot(I,Nref) > 0) ? -N : N;
	dot		$tmp2 I Ng 	%line{192} %argrw{"wrr"}
	gt		$tmp3 $tmp2 $const2 	%argrw{"wrr"}
	if		$tmp3 7 8 	%argrw{"r"}
	neg		Nf $tmp1 	%argrw{"wr"}
	assign		Nf $tmp1 	%argrw{"wr"}
	return
# D:\\xrt.git\\src\\osl\\shaders\\shinyplastic.osl:113
# 
	functioncall	$const3 156 	%filename{"D:\\xrt.git\\src\\osl\\shaders\\shinyplastic.osl"} %line{113} %argrw{"r"}
# D:/xrt.git\\src\\osl\\shaders\\material.h:309
# //
	normalize	___316_IN I 	%filename{"D:/xrt.git\\src\\osl\\shaders\\material.h"} %line{309} %argrw{"wr"}
# D:/xrt.git\\src\\osl\\shaders\\material.h:310
# // Warning - the environment call takes derivatives, causing trouble
	neg		___316_V ___316_IN 	%line{310} %argrw{"wr"}
# D:/xrt.git\\src\\osl\\shaders\\material.h:313
# color Environment ( string envname, vector R,
	div		$tmp4 $const5 eta 	%line{313} %argrw{"wrr"}
	functioncall	$const6 72 	%argrw{"r"}
# D:/xrt.git\\build\\vc10\\Win32\\Release\\shaders\\stdosl.h:209
#     float c = dot(I, N);
	dot		___217_c ___316_IN Nf 	%filename{"D:/xrt.git\\build\\vc10\\Win32\\Release\\shaders\\stdosl.h"} %line{209} %argrw{"wrr"}
# D:/xrt.git\\build\\vc10\\Win32\\Release\\shaders\\stdosl.h:210
#     if (c < 0)
	lt		$tmp5 ___217_c $const2 	%line{210} %argrw{"wrr"}
	if		$tmp5 18 18 	%argrw{"r"}
# D:/xrt.git\\build\\vc10\\Win32\\Release\\shaders\\stdosl.h:211
#         c = -c;
	neg		___217_c ___217_c 	%line{211} %argrw{"wr"}
# D:/xrt.git\\build\\vc10\\Win32\\Release\\shaders\\stdosl.h:212
#     R = reflect(I, N);
	functioncall	$const7 23 	%line{212} %argrw{"r"}
# D:/xrt.git\\build\\vc10\\Win32\\Release\\shaders\\stdosl.h:198
# vector reflect (vector I, vector N) { return I - 2*dot(N,I)*N; }
	dot		$tmp6 Nf ___316_IN 	%line{198} %argrw{"wrr"}
	mul		$tmp7 $const9 $tmp6 	%argrw{"wrr"}
	mul		$tmp8 $tmp7 Nf 	%argrw{"wrr"}
	sub		___316_R ___316_IN $tmp8 	%argrw{"wrr"}
# D:/xrt.git\\build\\vc10\\Win32\\Release\\shaders\\stdosl.h:213
#     float g = 1.0 / sqr(eta) - 1.0 + c * c;
	functioncall	$const10 25 	%line{213} %argrw{"r"}
# D:/xrt.git\\build\\vc10\\Win32\\Release\\shaders\\stdosl.h:208
#     float sqr(float x) { return x*x; }
	mul		$tmp9 $tmp4 $tmp4 	%line{208} %argrw{"wrr"}
# D:/xrt.git\\build\\vc10\\Win32\\Release\\shaders\\stdosl.h:213
#     float g = 1.0 / sqr(eta) - 1.0 + c * c;
	div		$tmp10 $const5 $tmp9 	%line{213} %argrw{"wrr"}
	sub		$tmp11 $tmp10 $const5 	%argrw{"wrr"}
	mul		$tmp12 ___217_c ___217_c 	%argrw{"wrr"}
	add		___217_g $tmp11 $tmp12 	%argrw{"wrr"}
# D:/xrt.git\\build\\vc10\\Win32\\Release\\shaders\\stdosl.h:214
#     if (g >= 0.0) {
	ge		$tmp13 ___217_g $const11 	%line{214} %argrw{"wrr"}
	if		$tmp13 69 72 	%argrw{"r"}
# D:/xrt.git\\build\\vc10\\Win32\\Release\\shaders\\stdosl.h:215
#         g = sqrt (g);
	sqrt		___217_g ___217_g 	%line{215} %argrw{"wr"}
# D:/xrt.git\\build\\vc10\\Win32\\Release\\shaders\\stdosl.h:216
#         float beta = g - c;
	sub		___219_beta ___217_g ___217_c 	%line{216} %argrw{"wrr"}
# D:/xrt.git\\build\\vc10\\Win32\\Release\\shaders\\stdosl.h:217
#         float F = (c * (g+c) - 1.0) / (c * beta + 1.0);
	add		$tmp14 ___217_g ___217_c 	%line{217} %argrw{"wrr"}
	mul		$tmp15 ___217_c $tmp14 	%argrw{"wrr"}
	sub		$tmp16 $tmp15 $const5 	%argrw{"wrr"}
	mul		$tmp17 ___217_c ___219_beta 	%argrw{"wrr"}
	add		$tmp18 $tmp17 $const5 	%argrw{"wrr"}
	div		___219_F $tmp16 $tmp18 	%argrw{"wrr"}
# D:/xrt.git\\build\\vc10\\Win32\\Release\\shaders\\stdosl.h:218
#         F = 0.5 * (1.0 + sqr(F));
	functioncall	$const10 41 	%line{218} %argrw{"r"}
# D:/xrt.git\\build\\vc10\\Win32\\Release\\shaders\\stdosl.h:208
#     float sqr(float x) { return x*x; }
	mul		$tmp19 ___219_F ___219_F 	%line{208} %argrw{"wrr"}
# D:/xrt.git\\build\\vc10\\Win32\\Release\\shaders\\stdosl.h:218
#         F = 0.5 * (1.0 + sqr(F));
	add		$tmp20 $const5 $tmp19 	%line{218} %argrw{"wrr"}
	mul		___219_F $const12 $tmp20 	%argrw{"wrr"}
# D:/xrt.git\\build\\vc10\\Win32\\Release\\shaders\\stdosl.h:219
#         F *= sqr (beta / (g+c));
	add		$tmp22 ___217_g ___217_c 	%line{219} %argrw{"wrr"}
	div		$tmp23 ___219_beta $tmp22 	%argrw{"wrr"}
	functioncall	$const10 47 	%argrw{"r"}
# D:/xrt.git\\build\\vc10\\Win32\\Release\\shaders\\stdosl.h:208
#     float sqr(float x) { return x*x; }
	mul		$tmp21 $tmp23 $tmp23 	%line{208} %argrw{"wrr"}
# D:/xrt.git\\build\\vc10\\Win32\\Release\\shaders\\stdosl.h:219
#         F *= sqr (beta / (g+c));
	mul		___219_F ___219_F $tmp21 	%line{219} %argrw{"wrr"}
# D:/xrt.git\\build\\vc10\\Win32\\Release\\shaders\\stdosl.h:220
#         Kr = F;
	assign		___316_fkr ___219_F 	%line{220} %argrw{"wr"}
# D:/xrt.git\\build\\vc10\\Win32\\Release\\shaders\\stdosl.h:221
#         Kt = (1.0 - Kr) * eta*eta;
	sub		$tmp24 $const5 ___316_fkr 	%line{221} %argrw{"wrr"}
	mul		$tmp25 $tmp24 $tmp4 	%argrw{"wrr"}
	mul		___316_fkt $tmp25 $tmp4 	%argrw{"wrr"}
# D:/xrt.git\\build\\vc10\\Win32\\Release\\shaders\\stdosl.h:224
#         T = refract(I, N, eta);
	functioncall	$const13 69 	%line{224} %argrw{"r"}
# D:/xrt.git\\build\\vc10\\Win32\\Release\\shaders\\stdosl.h:200
#     float IdotN = dot (I, N);
	dot		___216_IdotN ___316_IN Nf 	%line{200} %argrw{"wrr"}
# D:/xrt.git\\build\\vc10\\Win32\\Release\\shaders\\stdosl.h:201
#     float k = 1 - eta*eta * (1 - IdotN*IdotN);
	mul		$tmp26 $tmp4 $tmp4 	%line{201} %argrw{"wrr"}
	mul		$tmp27 ___216_IdotN ___216_IdotN 	%argrw{"wrr"}
	sub		$tmp28 $const5 $tmp27 	%argrw{"wrr"}
	mul		$tmp29 $tmp26 $tmp28 	%argrw{"wrr"}
	sub		___216_k $const5 $tmp29 	%argrw{"wrr"}
# D:/xrt.git\\build\\vc10\\Win32\\Release\\shaders\\stdosl.h:202
#     return (k < 0) ? vector(0,0,0) : (eta*I - N * (eta*IdotN + sqrt(k)));
	lt		$tmp30 ___216_k $const2 	%line{202} %argrw{"wrr"}
	if		$tmp30 62 68 	%argrw{"r"}
	assign		___316_T $const14 	%argrw{"wr"}
	mul		$tmp31 $tmp4 ___316_IN 	%argrw{"wrr"}
	mul		$tmp32 $tmp4 ___216_IdotN 	%argrw{"wrr"}
	sqrt		$tmp33 ___216_k 	%argrw{"wr"}
	add		$tmp34 $tmp32 $tmp33 	%argrw{"wrr"}
	mul		$tmp35 Nf $tmp34 	%argrw{"wrr"}
	sub		___316_T $tmp31 $tmp35 	%argrw{"wrr"}
	return
# D:/xrt.git\\build\\vc10\\Win32\\Release\\shaders\\stdosl.h:227
#         Kr = 1.0;
	assign		___316_fkr $const5 	%line{227} %argrw{"wr"}
# D:/xrt.git\\build\\vc10\\Win32\\Release\\shaders\\stdosl.h:228
#         Kt = 0.0;
	assign		___316_fkt $const11 	%line{228} %argrw{"wr"}
# D:/xrt.git\\build\\vc10\\Win32\\Release\\shaders\\stdosl.h:229
#         T = vector (0,0,0);
	assign		___316_T $const14 	%line{229} %argrw{"wr"}
# D:/xrt.git\\src\\osl\\shaders\\material.h:314
# }
	sub		___316_fkt $const5 ___316_fkr 	%filename{"D:/xrt.git\\src\\osl\\shaders\\material.h"} %line{314} %argrw{"wrr"}
# D:/xrt.git\\src\\osl\\shaders\\material.h:315
# 
	eq		$tmp36 twosided $const2 	%line{315} %argrw{"wrr"}
	neq		$tmp37 $tmp36 $const2 	%argrw{"wrr"}
	if		$tmp37 80 80 	%argrw{"r"}
	dot		$tmp38 N I 	%argrw{"wrr"}
	gt		$tmp39 $tmp38 $const2 	%argrw{"wrr"}
	neq		$tmp40 $tmp39 $const2 	%argrw{"wrr"}
	assign		$tmp37 $tmp40 	%argrw{"wr"}
	if		$tmp37 82 82 	%argrw{"r"}
# D:/xrt.git\\src\\osl\\shaders\\material.h:316
# 
	assign		___316_fkr $const2 	%line{316} %argrw{"wr"}
# D:/xrt.git\\src\\osl\\shaders\\material.h:317
# 
	mul		___316_fkr ___316_fkr Kr 	%line{317} %argrw{"wrr"}
# D:/xrt.git\\src\\osl\\shaders\\material.h:318
# 
	mul		$tmp41 ___316_fkt C 	%line{318} %argrw{"wrr"}
	ambient		$tmp42 	%argrw{"w"}
	mul		$tmp43 Ka $tmp42 	%argrw{"wrr"}
	functioncall	$const15 103 	%argrw{"r"}
# D:/xrt.git\\build\\vc10\\Win32\\Release\\shaders\\stdosl.h:501
#     if(dd == 0.0)
	assign		___278_C $const2 	%filename{"D:/xrt.git\\build\\vc10\\Win32\\Release\\shaders\\stdosl.h"} %line{501} %argrw{"wr"}
# D:/xrt.git\\build\\vc10\\Win32\\Release\\shaders\\stdosl.h:503
#     float t = dot(q - a, d)/dd;
	for		$tmp45 90 91 102 102 	%line{503} %argrw{"r"}
# D:/xrt.git\\build\\vc10\\Win32\\Release\\shaders\\stdosl.h:507
# vector normalize (vector v) BUILTIN;
	lights_begin	P Nf $const16 	%line{507} %argrw{"rrr"}
	lights		$tmp45 P Nf $const16 	%argrw{"wrrr"} %argderivs{1}
# D:/xrt.git\\build\\vc10\\Win32\\Release\\shaders\\stdosl.h:504
# 		float __nondiffuse = 0;
	assign		___279___nondiffuse $const2 	%line{504} %argrw{"wr"}
# D:/xrt.git\\build\\vc10\\Win32\\Release\\shaders\\stdosl.h:505
# 		getmessage ("light", "__nondiffuse", __nondiffuse);
	getmessage	$tmp46 $const17 $const18 ___279___nondiffuse 	%line{505} %argrw{"wrrw"}
# D:/xrt.git\\build\\vc10\\Win32\\Release\\shaders\\stdosl.h:506
# 		C += Cl * (1-__nondiffuse) * max (0, dot (N, normalize (L)));
	sub		$tmp47 $const5 ___279___nondiffuse 	%line{506} %argrw{"wrr"}
	mul		$tmp48 Cl $tmp47 	%argrw{"wrr"}
	assign		$tmp50 $const11 	%argrw{"wr"}
	normalize	$tmp52 L 	%argrw{"wr"}
	dot		$tmp51 Nf $tmp52 	%argrw{"wrr"}
	assign		$tmp53 $tmp51 	%argrw{"wr"}
	max		$tmp49 $tmp50 $tmp53 	%argrw{"wrr"}
	mul		$tmp54 $tmp48 $tmp49 	%argrw{"wrr"}
	add		___278_C ___278_C $tmp54 	%argrw{"wrr"}
# D:/xrt.git\\build\\vc10\\Win32\\Release\\shaders\\stdosl.h:508
# 	return C;
	assign		$tmp44 ___278_C 	%line{508} %argrw{"wr"}
# D:/xrt.git\\src\\osl\\shaders\\material.h:318
#     return  fkt * basecolor * (Ka*ambient() + Kd*diffuse(Nf))
	mul		$tmp55 Kd $tmp44 	%filename{"D:/xrt.git\\src\\osl\\shaders\\material.h"} %line{318} %argrw{"wrr"}
	add		$tmp56 $tmp43 $tmp55 	%argrw{"wrr"}
	mul		$tmp57 $tmp41 $tmp56 	%argrw{"wrr"}
# D:/xrt.git\\src\\osl\\shaders\\material.h:319
#           + Ks * specular(Nf,V,roughness)
	functioncall	$const19 127 	%line{319} %argrw{"r"}
# D:/xrt.git\\build\\vc10\\Win32\\Release\\shaders\\stdosl.h:527
#     float sqr(float x) { return x*x; }
	assign		___281_C $const2 	%filename{"D:/xrt.git\\build\\vc10\\Win32\\Release\\shaders\\stdosl.h"} %line{527} %argrw{"wr"}
# D:/xrt.git\\build\\vc10\\Win32\\Release\\shaders\\stdosl.h:529
#     if (c < 0)
	for		$tmp59 110 111 126 126 	%line{529} %argrw{"r"}
# D:/xrt.git\\build\\vc10\\Win32\\Release\\shaders\\stdosl.h:533
#     if (g >= 0.0) {
	lights_begin	P Nf $const16 	%line{533} %argrw{"rrr"}
	lights		$tmp59 P Nf $const16 	%argrw{"wrrr"} %argderivs{1}
# D:/xrt.git\\build\\vc10\\Win32\\Release\\shaders\\stdosl.h:530
# 		float __nonspecular = 0;
	assign		___282___nonspecular $const2 	%line{530} %argrw{"wr"}
# D:/xrt.git\\build\\vc10\\Win32\\Release\\shaders\\stdosl.h:531
# 		getmessage ("light", "__nonspecular", __nonspecular);
	getmessage	$tmp60 $const17 $const20 ___282___nonspecular 	%line{531} %argrw{"wrrw"}
# D:/xrt.git\\build\\vc10\\Win32\\Release\\shaders\\stdosl.h:532
# 		C += Cl * (1-__nonspecular) * specularbrdf (normalize (L), N, V, roughness);
	sub		$tmp61 $const5 ___282___nonspecular 	%line{532} %argrw{"wrr"}
	mul		$tmp62 Cl $tmp61 	%argrw{"wrr"}
	normalize	$tmp64 L 	%argrw{"wr"}
	functioncall	$const21 124 	%argrw{"r"}
# D:/xrt.git\\build\\vc10\\Win32\\Release\\shaders\\stdosl.h:511
# 	vector H = normalize( L + V );
	add		$tmp65 $tmp64 ___316_V 	%line{511} %argrw{"wrr"}
	normalize	___280_H $tmp65 	%argrw{"wr"}
# D:/xrt.git\\build\\vc10\\Win32\\Release\\shaders\\stdosl.h:512
# 	return pow (max (0, dot (N, H)), 8 / roughness);
	dot		$tmp68 Nf ___280_H 	%line{512} %argrw{"wrr"}
	max		$tmp67 $const11 $tmp68 	%argrw{"wrr"}
	div		$tmp69 $const23 roughness 	%argrw{"wrr"}
	pow		$tmp66 $tmp67 $tmp69 	%argrw{"wrr"}
	assign		$tmp63 $tmp66 	%argrw{"wr"}
# D:/xrt.git\\build\\vc10\\Win32\\Release\\shaders\\stdosl.h:532
# 		C += Cl * (1-__nonspecular) * specularbrdf (normalize (L), N, V, roughness);
	mul		$tmp70 $tmp62 $tmp63 	%line{532} %argrw{"wrr"}
	add		___281_C ___281_C $tmp70 	%argrw{"wrr"}
# D:/xrt.git\\build\\vc10\\Win32\\Release\\shaders\\stdosl.h:534
# 	return C;
	assign		$tmp58 ___281_C 	%line{534} %argrw{"wr"}
# D:/xrt.git\\src\\osl\\shaders\\material.h:319
#           + Ks * specular(Nf,V,roughness)
	mul		$tmp71 Ks $tmp58 	%filename{"D:/xrt.git\\src\\osl\\shaders\\material.h"} %line{319} %argrw{"wrr"}
# D:/xrt.git\\src\\osl\\shaders\\material.h:320
# 	  + fkr * Environment(envname, R, envspace, blur, samples, fkr);
	add		$tmp72 $tmp57 $tmp71 	%line{320} %argrw{"wrr"}
	functioncall	$const24 154 	%argrw{"r"}
# D:/xrt.git\\src\\osl\\shaders\\material.h:205
#     if (envname && Kr > 0) {
	neq		$tmp74 envname $const25 	%line{205} %argrw{"wrr"}
	if		$tmp74 135 135 	%argrw{"r"}
	gt		$tmp75 ___316_fkr $const2 	%argrw{"wrr"}
	neq		$tmp76 $tmp75 $const2 	%argrw{"wrr"}
	assign		$tmp74 $tmp76 	%argrw{"wr"}
	if		$tmp74 152 153 	%argrw{"r"}
# D:/xrt.git\\src\\osl\\shaders\\material.h:206
#         if (envspace == "NDC") {
	eq		$tmp77 envspace $const26 	%line{206} %argrw{"wrr"}
	if		$tmp77 143 152 	%argrw{"r"}
# D:/xrt.git\\src\\osl\\shaders\\material.h:208
#             point Pndc = transform ("NDC", P);
	functioncall	$const27 140 	%line{208} %argrw{"r"}
# D:/xrt.git\\build\\vc10\\Win32\\Release\\shaders\\stdosl.h:249
# #define M_E        2.7182818284590452        /* e (Euler's number) */
	transform	___304_Pndc $const28 $const26 P 	%filename{"D:/xrt.git\\build\\vc10\\Win32\\Release\\shaders\\stdosl.h"} %line{249} %argrw{"wrrr"}
# D:/xrt.git\\src\\osl\\shaders\\material.h:209
#             C = texture (envname, Pndc[0], Pndc[1], "blur", blur);
	compref		$tmp78 ___304_Pndc $const2 	%filename{"D:/xrt.git\\src\\osl\\shaders\\material.h"} %line{209} %argrw{"wrr"}
	compref		$tmp79 ___304_Pndc $const4 	%argrw{"wrr"}
	texture		___302_C envname $tmp78 $tmp79 $const29 blur 	%argrw{"wrrrrr"} %argderivs{2,3}
# D:/xrt.git\\src\\osl\\shaders\\material.h:211
# 			if (istexture (envname)) {
	functioncall	$const30 146 	%line{211} %argrw{"r"}
# D:/xrt.git\\src\\osl\\shaders\\material.h:169
# 	gettextureinfo (envname, "exists", status);
	gettextureinfo	$tmp81 envname $const31 ___301_status 	%line{169} %argrw{"wrrw"}
# D:/xrt.git\\src\\osl\\shaders\\material.h:170
# 	return status;
	assign		$tmp80 ___301_status 	%line{170} %argrw{"wr"}
# D:/xrt.git\\src\\osl\\shaders\\material.h:211
# 			if (istexture (envname)) {
	if		$tmp80 150 152 	%line{211} %argrw{"r"}
# D:/xrt.git\\src\\osl\\shaders\\material.h:213
#                 vector D = transform (envspace, R);
	functioncall	$const27 149 	%line{213} %argrw{"r"}
# D:/xrt.git\\build\\vc10\\Win32\\Release\\shaders\\stdosl.h:248
# #define M_PI_2     1.5707963267948966        /* pi/2 */
	transformv	___306_D $const28 envspace ___316_R 	%filename{"D:/xrt.git\\build\\vc10\\Win32\\Release\\shaders\\stdosl.h"} %line{248} %argrw{"wrrr"}
# D:/xrt.git\\src\\osl\\shaders\\material.h:214
#                 C = environment (envname, R, "blur", blur);
	environment	___302_C envname ___316_R $const29 blur 	%filename{"D:/xrt.git\\src\\osl\\shaders\\material.h"} %line{214} %argrw{"wrrrr"} %argderivs{2}
# D:/xrt.git\\src\\osl\\shaders\\material.h:217
#                 C = trace (P, R, "blur", blur, "samples", (int)samples,
	assign		$tmp82 samples 	%line{217} %argrw{"wr"}
# D:/xrt.git\\src\\osl\\shaders\\material.h:218
#                              "traceset", envname);
	trace		___302_C P ___316_R $const29 blur $const32 $tmp82 $const33 envname 	%line{218} %argrw{"wrrrrrrrr"} %argderivs{1,2}
# D:/xrt.git\\src\\osl\\shaders\\material.h:222
#     else C = 0;
	assign		___302_C $const2 	%line{222} %argrw{"wr"}
# D:/xrt.git\\src\\osl\\shaders\\material.h:223
#     return C;
	assign		$tmp73 ___302_C 	%line{223} %argrw{"wr"}
# D:/xrt.git\\src\\osl\\shaders\\material.h:320
# 	  + fkr * Environment(envname, R, envspace, blur, samples, fkr);
	mul		$tmp83 ___316_fkr $tmp73 	%line{320} %argrw{"wrr"}
	add		C $tmp72 $tmp83 	%argrw{"wrr"}
# D:\\xrt.git\\src\\osl\\shaders\\shinyplastic.osl:116
# }
	mul		C C opacity 	%filename{"D:\\xrt.git\\src\\osl\\shaders\\shinyplastic.osl"} %line{116} %argrw{"wrr"}
	end
