OpenShadingLanguage 1.01
# Compiled by oslc 1.6.2
surface rmarble
param	float	Ks	0.40000001		%read{78,78} %write{2147483647,-1}
param	float	Kd	0.60000002		%read{75,75} %write{2147483647,-1}
param	float	Ka	0.1		%read{57,57} %write{2147483647,-1}
param	float	roughness	0.1		%read{94,94} %write{2147483647,-1}
param	float	veining	1		%read{13,13} %write{2147483647,-1} %derivs
param	color	specularcolor	1 1 1		%read{78,78} %write{2147483647,-1}
global	point	P	%read{12,83} %write{2147483647,-1} %derivs
global	vector	I	%read{3,9} %write{2147483647,-1}
global	normal	N	%read{0,0} %write{2147483647,-1}
global	normal	Ng	%read{3,3} %write{2147483647,-1}
global	color	C	%read{101,101} %write{77,102}
global	color	opacity	%read{102,102} %write{2147483647,-1}
global	vector	L	%read{68,88} %write{2147483647,-1}
global	color	Cl	%read{66,87} %write{2147483647,-1}
local	color	___278_C	%read{60,74} %write{59,73}
local	float	___279___nondiffuse	%read{60,73} %write{60,73}
local	vector	___280_H	%read{81,98} %write{81,98}
local	color	___281_C	%read{81,99} %write{80,98}
local	float	___282___nonspecular	%read{81,98} %write{81,98}
local	point	PP	%read{14,37} %write{13,14} %derivs
local	float	cmi	%read{45,55} %write{43,46}
local	normal	Nf	%read{61,92} %write{6,7}
local	vector	V	%read{90,90} %write{10,10}
local	color	diffusecolor	%read{77,77} %write{55,55}
local	float	pixelsize	%read{17,31} %write{16,16}
local	float	twice	%read{21,21} %write{17,17}
local	float	pixscale	%read{19,37} %write{19,28}
local	float	weight	%read{34,36} %write{32,35}
local	float	turbulence	%read{19,43} %write{18,42}
local	color[8]	ramp	%read{55,55} %write{47,54}
temp	normal	$tmp1	%read{6,7} %write{0,0}
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,84} %write{2147483647,-1}
temp	int	$tmp3	%read{5,5} %write{4,4}
temp	vector	$tmp4	%read{10,10} %write{9,9}
temp	point	$tmp5	%read{13,13} %write{12,12} %derivs
const	string	$const3	"shader"		%read{12,12} %write{2147483647,-1}
const	string	$const4	"transform"		%read{11,11} %write{2147483647,-1}
const	string	$const5	"common"		%read{12,12} %write{2147483647,-1}
const	int	$const6	2		%read{49,49} %write{2147483647,-1}
const	float	$const7	2		%read{14,28} %write{2147483647,-1}
temp	float	$tmp6	%read{16,16} %write{15,15}
const	int	$const8	1		%read{20,48} %write{2147483647,-1}
temp	int	$tmp7	%read{19,28} %write{19,28}
temp	float	$tmp8	%read{26,26} %write{25,25}
temp	float	$tmp9	%read{24,24} %write{23,23}
temp	point	$tmp10	%read{23,23} %write{22,22}
const	float	$const9	0.5		%read{24,39} %write{2147483647,-1}
temp	float	$tmp11	%read{25,25} %write{24,24}
temp	float	$tmp12	%read{27,27} %write{26,26}
temp	int	$tmp13	%read{30,30} %write{29,29}
temp	float	$tmp14	%read{32,32} %write{31,31}
const	float	$const10	1		%read{32,86} %write{2147483647,-1}
const	float	$const11	0		%read{35,93} %write{2147483647,-1}
const	string	$const12	"clamp"		%read{33,44} %write{2147483647,-1}
temp	float	$tmp15	%read{35,35} %write{34,34}
temp	float	$tmp16	%read{41,41} %write{36,36}
temp	float	$tmp17	%read{41,41} %write{40,40}
temp	float	$tmp18	%read{39,39} %write{38,38}
temp	point	$tmp19	%read{38,38} %write{37,37}
temp	float	$tmp20	%read{40,40} %write{39,39}
temp	float	$tmp21	%read{42,42} %write{41,41}
temp	float	$tmp22	%read{46,46} %write{45,45}
const	color	$const13	0.80000001 0.2 0.050000001		%read{47,48} %write{2147483647,-1}
const	color	$const14	0.80000001 0.5 0.30000001		%read{49,49} %write{2147483647,-1}
const	color	$const15	0.60000002 0.59399998 0.57999998		%read{50,50} %write{2147483647,-1}
const	int	$const16	3		%read{50,50} %write{2147483647,-1}
const	color	$const17	0.30000001 0.30000001 0.40000001		%read{51,51} %write{2147483647,-1}
const	int	$const18	4		%read{51,51} %write{2147483647,-1}
const	color	$const19	0.050000001 0.050000001 0.1		%read{52,52} %write{2147483647,-1}
const	int	$const20	5		%read{52,52} %write{2147483647,-1}
const	color	$const21	0.80000001 0.79000002 0.76999998		%read{53,53} %write{2147483647,-1}
const	int	$const22	6		%read{53,53} %write{2147483647,-1}
const	color	$const23	0.80000001 0.80000001 0.79000002		%read{54,54} %write{2147483647,-1}
const	int	$const24	7		%read{54,54} %write{2147483647,-1}
const	string	$const25	"catmull-rom"		%read{55,55} %write{2147483647,-1}
temp	color	$tmp31	%read{57,57} %write{56,56}
temp	color	$tmp32	%read{60,76} %write{57,73}
temp	color	$tmp33	%read{75,75} %write{74,74}
const	string	$const26	"diffuse"		%read{58,58} %write{2147483647,-1}
const	float	$const27	1.5707964		%read{61,83} %write{2147483647,-1}
temp	int	$tmp34	%read{60,73} %write{60,73}
temp	int	$tmp35	%read{2147483647,-1} %write{64,64}
const	string	$const28	"light"		%read{64,85} %write{2147483647,-1}
const	string	$const29	"__nondiffuse"		%read{64,64} %write{2147483647,-1}
temp	float	$tmp36	%read{66,66} %write{65,65}
temp	color	$tmp37	%read{72,72} %write{66,66}
temp	color	$tmp38	%read{72,72} %write{71,71}
temp	color	$tmp39	%read{71,71} %write{67,67}
temp	float	$tmp40	%read{70,70} %write{69,69}
temp	vector	$tmp41	%read{69,69} %write{68,68}
temp	color	$tmp42	%read{71,71} %write{70,70}
temp	color	$tmp43	%read{60,73} %write{60,73}
temp	color	$tmp44	%read{76,76} %write{75,75}
temp	color	$tmp45	%read{77,77} %write{76,76}
temp	color	$tmp46	%read{81,100} %write{78,98}
temp	color	$tmp47	%read{100,100} %write{99,99}
const	string	$const30	"specular"		%read{79,79} %write{2147483647,-1}
temp	int	$tmp48	%read{81,98} %write{81,98}
temp	int	$tmp49	%read{2147483647,-1} %write{85,85}
const	string	$const31	"__nonspecular"		%read{85,85} %write{2147483647,-1}
temp	float	$tmp50	%read{87,87} %write{86,86}
temp	color	$tmp51	%read{97,97} %write{87,87}
temp	color	$tmp52	%read{97,97} %write{96,96}
temp	vector	$tmp53	%read{90,90} %write{88,88}
const	string	$const32	"specularbrdf"		%read{89,89} %write{2147483647,-1}
temp	vector	$tmp54	%read{91,91} %write{90,90}
temp	float	$tmp55	%read{96,96} %write{95,95}
temp	float	$tmp56	%read{95,95} %write{93,93}
temp	float	$tmp57	%read{93,93} %write{92,92}
temp	float	$tmp58	%read{95,95} %write{94,94}
const	float	$const34	8		%read{94,94} %write{2147483647,-1}
temp	color	$tmp59	%read{81,98} %write{81,98}
temp	color	$tmp60	%read{101,101} %write{100,100}
temp	color	$tmp61	%read{102,102} %write{101,101}
code ___main___
# D:\\xrt.git\\src\\osl\\shaders\\rmarble.osl:15
# 	V = -normalize(I);
	normalize	$tmp1 N 	%filename{"D:\\xrt.git\\src\\osl\\shaders\\rmarble.osl"} %line{15} %argrw{"wr"}
	functioncall	$const1 9 	%argrw{"r"}
# D:/xrt.git\\build\\vc10\\Win32\\Release\\shaders\\stdosl.h:196
#     vector d = b - a;
	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\\rmarble.osl:16
# 
	normalize	$tmp4 I 	%filename{"D:\\xrt.git\\src\\osl\\shaders\\rmarble.osl"} %line{16} %argrw{"wr"}
	neg		V $tmp4 	%argrw{"wr"}
# D:\\xrt.git\\src\\osl\\shaders\\rmarble.osl:18
# 	PP = PP/2;	/* frequency adjustment (S-shaped curve) */
	functioncall	$const4 13 	%line{18} %argrw{"r"}
# D:/xrt.git\\build\\vc10\\Win32\\Release\\shaders\\stdosl.h:249
# }
	transform	$tmp5 $const5 $const3 P 	%filename{"D:/xrt.git\\build\\vc10\\Win32\\Release\\shaders\\stdosl.h"} %line{249} %argrw{"wrrr"}
# D:\\xrt.git\\src\\osl\\shaders\\rmarble.osl:18
# 	PP = PP/2;	/* frequency adjustment (S-shaped curve) */
	mul		PP $tmp5 veining 	%filename{"D:\\xrt.git\\src\\osl\\shaders\\rmarble.osl"} %line{18} %argrw{"wrr"}
# D:\\xrt.git\\src\\osl\\shaders\\rmarble.osl:19
# 	pixelsize = sqrt(area(PP)); twice = 2 * pixelsize;
	div		PP PP $const7 	%line{19} %argrw{"wrr"}
# D:\\xrt.git\\src\\osl\\shaders\\rmarble.osl:20
# 
	area		$tmp6 PP 	%line{20} %argrw{"wr"} %argderivs{1}
	sqrt		pixelsize $tmp6 	%argrw{"wr"}
	mul		twice $const7 pixelsize 	%argrw{"wrr"}
# D:\\xrt.git\\src\\osl\\shaders\\rmarble.osl:23
# 	for (pixscale = 1; pixscale > twice; pixscale /= 2) {
	assign		turbulence $const2 	%line{23} %argrw{"wr"}
# D:\\xrt.git\\src\\osl\\shaders\\rmarble.osl:24
# 		/**** This function is different - abs() and -0.5 ****/
	for		$tmp7 21 22 28 29 	%line{24} %argrw{"r"}
	assign		pixscale $const8 	%argrw{"wr"}
	gt		$tmp7 pixscale twice 	%argrw{"wrr"}
# D:\\xrt.git\\src\\osl\\shaders\\rmarble.osl:26
# 	}
	div		$tmp10 PP pixscale 	%line{26} %argrw{"wrr"}
	noise		$tmp9 $tmp10 	%argrw{"wr"}
	sub		$tmp11 $tmp9 $const9 	%argrw{"wrr"}
	abs		$tmp8 $tmp11 	%argrw{"wr"}
	mul		$tmp12 pixscale $tmp8 	%argrw{"wrr"}
	add		turbulence turbulence $tmp12 	%argrw{"wrr"}
# D:\\xrt.git\\src\\osl\\shaders\\rmarble.osl:24
# 		/**** This function is different - abs() and -0.5 ****/
	div		pixscale pixscale $const7 	%line{24} %argrw{"wrr"}
# D:\\xrt.git\\src\\osl\\shaders\\rmarble.osl:29
# 		weight = (pixscale / pixelsize) - 1;
	gt		$tmp13 pixscale pixelsize 	%line{29} %argrw{"wrr"}
	if		$tmp13 43 43 	%argrw{"r"}
# D:\\xrt.git\\src\\osl\\shaders\\rmarble.osl:30
# 		weight = clamp(weight, 0, 1);
	div		$tmp14 pixscale pixelsize 	%line{30} %argrw{"wrr"}
	sub		weight $tmp14 $const10 	%argrw{"wrr"}
# D:\\xrt.git\\src\\osl\\shaders\\rmarble.osl:31
# 		/**** This function is different - abs() and -0.5 ****/
	functioncall	$const12 36 	%line{31} %argrw{"r"}
# D:/xrt.git\\build\\vc10\\Win32\\Release\\shaders\\stdosl.h:144
# float hypot (float a, float b) { return sqrt (a*a + b*b); }
	min		$tmp15 weight $const10 	%filename{"D:/xrt.git\\build\\vc10\\Win32\\Release\\shaders\\stdosl.h"} %line{144} %argrw{"wrr"}
	max		weight $tmp15 $const11 	%argrw{"wrr"}
# D:\\xrt.git\\src\\osl\\shaders\\rmarble.osl:33
# 	}
	mul		$tmp16 weight pixscale 	%filename{"D:\\xrt.git\\src\\osl\\shaders\\rmarble.osl"} %line{33} %argrw{"wrr"}
	div		$tmp19 PP pixscale 	%argrw{"wrr"}
	noise		$tmp18 $tmp19 	%argrw{"wr"}
	sub		$tmp20 $tmp18 $const9 	%argrw{"wrr"}
	abs		$tmp17 $tmp20 	%argrw{"wr"}
	mul		$tmp21 $tmp16 $tmp17 	%argrw{"wrr"}
	add		turbulence turbulence $tmp21 	%argrw{"wrr"}
# D:\\xrt.git\\src\\osl\\shaders\\rmarble.osl:41
# 	cmi = clamp(cmi, 0, 1);
	assign		cmi turbulence 	%line{41} %argrw{"wr"}
# D:\\xrt.git\\src\\osl\\shaders\\rmarble.osl:42
# 	color ramp[8] = {
	functioncall	$const12 47 	%line{42} %argrw{"r"}
# D:/xrt.git\\build\\vc10\\Win32\\Release\\shaders\\stdosl.h:144
# PERCOMP1 (expm1)
	min		$tmp22 cmi $const10 	%filename{"D:/xrt.git\\build\\vc10\\Win32\\Release\\shaders\\stdosl.h"} %line{144} %argrw{"wrr"}
	max		cmi $tmp22 $const11 	%argrw{"wrr"}
# D:\\xrt.git\\src\\osl\\shaders\\rmarble.osl:52
# 
	aassign		ramp $const2 $const13 	%filename{"D:\\xrt.git\\src\\osl\\shaders\\rmarble.osl"} %line{52} %argrw{"wrr"}
	aassign		ramp $const8 $const13 	%argrw{"wrr"}
	aassign		ramp $const6 $const14 	%argrw{"wrr"}
	aassign		ramp $const16 $const15 	%argrw{"wrr"}
	aassign		ramp $const18 $const17 	%argrw{"wrr"}
	aassign		ramp $const20 $const19 	%argrw{"wrr"}
	aassign		ramp $const22 $const21 	%argrw{"wrr"}
	aassign		ramp $const24 $const23 	%argrw{"wrr"}
# D:\\xrt.git\\src\\osl\\shaders\\rmarble.osl:54
# 	/* use color spline to compute basic color */
	spline		diffusecolor $const25 cmi ramp 	%line{54} %argrw{"wrrr"}
# D:\\xrt.git\\src\\osl\\shaders\\rmarble.osl:56
# 	/* add in specular component */
	ambient		$tmp31 	%line{56} %argrw{"w"}
	mul		$tmp32 Ka $tmp31 	%argrw{"wrr"}
	functioncall	$const26 75 	%argrw{"r"}
# D:/xrt.git\\build\\vc10\\Win32\\Release\\shaders\\stdosl.h:501
# 
	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
# 
	for		$tmp34 62 63 74 74 	%line{503} %argrw{"r"}
# D:/xrt.git\\build\\vc10\\Win32\\Release\\shaders\\stdosl.h:507
#     vector Nresid = dir - normalize(calculatenormal (P));
	lights_begin	P Nf $const27 	%line{507} %argrw{"rrr"}
	lights		$tmp34 P Nf $const27 	%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	$tmp35 $const28 $const29 ___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		$tmp36 $const10 ___279___nondiffuse 	%line{506} %argrw{"wrr"}
	mul		$tmp37 Cl $tmp36 	%argrw{"wrr"}
	assign		$tmp39 $const11 	%argrw{"wr"}
	normalize	$tmp41 L 	%argrw{"wr"}
	dot		$tmp40 Nf $tmp41 	%argrw{"wrr"}
	assign		$tmp42 $tmp40 	%argrw{"wr"}
	max		$tmp38 $tmp39 $tmp42 	%argrw{"wrr"}
	mul		$tmp43 $tmp37 $tmp38 	%argrw{"wrr"}
	add		___278_C ___278_C $tmp43 	%argrw{"wrr"}
# D:/xrt.git\\build\\vc10\\Win32\\Release\\shaders\\stdosl.h:508
# 	return C;
	assign		$tmp33 ___278_C 	%line{508} %argrw{"wr"}
# D:\\xrt.git\\src\\osl\\shaders\\rmarble.osl:56
# 	/* add in specular component */
	mul		$tmp44 Kd $tmp33 	%filename{"D:\\xrt.git\\src\\osl\\shaders\\rmarble.osl"} %line{56} %argrw{"wrr"}
	add		$tmp45 $tmp32 $tmp44 	%argrw{"wrr"}
	mul		C diffusecolor $tmp45 	%argrw{"wrr"}
# D:\\xrt.git\\src\\osl\\shaders\\rmarble.osl:58
# }
	mul		$tmp46 specularcolor Ks 	%line{58} %argrw{"wrr"}
	functioncall	$const30 100 	%argrw{"r"}
# D:/xrt.git\\build\\vc10\\Win32\\Release\\shaders\\stdosl.h:527
# 
	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
# 
	for		$tmp48 83 84 99 99 	%line{529} %argrw{"r"}
# D:/xrt.git\\build\\vc10\\Win32\\Release\\shaders\\stdosl.h:533
# string substr (string s, int start, int len) BUILTIN;
	lights_begin	P Nf $const27 	%line{533} %argrw{"rrr"}
	lights		$tmp48 P Nf $const27 	%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	$tmp49 $const28 $const31 ___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		$tmp50 $const10 ___282___nonspecular 	%line{532} %argrw{"wrr"}
	mul		$tmp51 Cl $tmp50 	%argrw{"wrr"}
	normalize	$tmp53 L 	%argrw{"wr"}
	functioncall	$const32 97 	%argrw{"r"}
# D:/xrt.git\\build\\vc10\\Win32\\Release\\shaders\\stdosl.h:511
# 	vector H = normalize( L + V );
	add		$tmp54 $tmp53 V 	%line{511} %argrw{"wrr"}
	normalize	___280_H $tmp54 	%argrw{"wr"}
# D:/xrt.git\\build\\vc10\\Win32\\Release\\shaders\\stdosl.h:512
# 	return pow (max (0, dot (N, H)), 8 / roughness);
	dot		$tmp57 Nf ___280_H 	%line{512} %argrw{"wrr"}
	max		$tmp56 $const11 $tmp57 	%argrw{"wrr"}
	div		$tmp58 $const34 roughness 	%argrw{"wrr"}
	pow		$tmp55 $tmp56 $tmp58 	%argrw{"wrr"}
	assign		$tmp52 $tmp55 	%argrw{"wr"}
# D:/xrt.git\\build\\vc10\\Win32\\Release\\shaders\\stdosl.h:532
# 		C += Cl * (1-__nonspecular) * specularbrdf (normalize (L), N, V, roughness);
	mul		$tmp59 $tmp51 $tmp52 	%line{532} %argrw{"wrr"}
	add		___281_C ___281_C $tmp59 	%argrw{"wrr"}
# D:/xrt.git\\build\\vc10\\Win32\\Release\\shaders\\stdosl.h:534
# 	return C;
	assign		$tmp47 ___281_C 	%line{534} %argrw{"wr"}
# D:\\xrt.git\\src\\osl\\shaders\\rmarble.osl:58
# }
	mul		$tmp60 $tmp46 $tmp47 	%filename{"D:\\xrt.git\\src\\osl\\shaders\\rmarble.osl"} %line{58} %argrw{"wrr"}
	add		$tmp61 C $tmp60 	%argrw{"wrr"}
	mul		C opacity $tmp61 	%argrw{"wrr"}
	end
