OpenShadingLanguage 1.00
# Compiled by oslc 1.11.17
# options: -q -O2 -I/build/blender/src/blender/intern/cycles/kernel/osl/shaders -I/usr/share/OSL/shaders -o /build/blender/src/blender/build/intern/cycles/kernel/osl/shaders/node_geometry.oso
shader node_geometry
param	normal	NormalIn	0 0 0		%read{2,2} %write{0,0} %initexpr
param	string	bump_offset	"center"		%read{10,40} %write{2147483647,-1}
oparam	point	Position	0 0 0		%read{12,19} %write{1,19} %derivs
oparam	normal	Normal	0 0 0		%read{31,33} %write{2,2}
oparam	normal	Tangent	0 0 0		%read{2147483647,-1} %write{33,34}
oparam	normal	TrueNormal	0 0 0		%read{2147483647,-1} %write{3,3}
oparam	vector	Incoming	0 0 0		%read{2147483647,-1} %write{4,4}
oparam	point	Parametric	0 0 0		%read{14,21} %write{7,21} %derivs
oparam	float	Backfacing	0		%read{2147483647,-1} %write{9,9}
oparam	float	Pointiness	0		%read{38,43} %write{35,43} %derivs
oparam	float	RandomPerIsland	0		%read{2147483647,-1} %write{44,44}
global	point	P	%read{1,1} %write{2147483647,-1} %derivs
global	vector	I	%read{4,4} %write{2147483647,-1}
global	normal	N	%read{0,0} %write{2147483647,-1}
global	normal	Ng	%read{3,3} %write{2147483647,-1}
global	float	u	%read{5,7} %write{2147483647,-1} %derivs
global	float	v	%read{6,6} %write{2147483647,-1} %derivs
global	vector	dPdu	%read{34,34} %write{2147483647,-1}
local	point	generated	%read{24,27} %write{22,22}
local	normal	___370_data	%read{30,30} %write{29,29}
local	vector	___370_T	%read{31,31} %write{30,30}
const	float	$const1	1		%read{5,5} %write{2147483647,-1}
temp	float	$tmp1	%read{6,6} %write{5,5} %derivs
temp	float	$tmp2	%read{7,7} %write{6,6} %derivs
const	float	$const2	0		%read{7,29} %write{2147483647,-1}
temp	int	$tmp3	%read{9,9} %write{8,8}
const	string	$const3	"dx"		%read{10,36} %write{2147483647,-1}
temp	int	$tmp4	%read{11,11} %write{10,10}
temp	vector	$tmp5	%read{13,13} %write{12,12} %derivs
temp	vector	$tmp6	%read{15,15} %write{14,14} %derivs
const	string	$const4	"dy"		%read{16,40} %write{2147483647,-1}
temp	int	$tmp7	%read{17,17} %write{16,16}
temp	vector	$tmp8	%read{19,19} %write{18,18} %derivs
temp	vector	$tmp9	%read{21,21} %write{20,20} %derivs
temp	int	$tmp10	%read{23,23} %write{22,22}
const	string	$const5	"geom:generated"		%read{22,22} %write{2147483647,-1}
const	int	$const6	1		%read{24,24} %write{2147483647,-1}
temp	float	$tmp11	%read{25,25} %write{24,24}
const	float	$const7	0.5		%read{25,28} %write{2147483647,-1}
temp	float	$tmp12	%read{26,26} %write{25,25}
temp	float	$tmp13	%read{29,29} %write{26,26}
const	int	$const8	0		%read{27,27} %write{2147483647,-1}
temp	float	$tmp14	%read{28,28} %write{27,27}
temp	float	$tmp15	%read{29,29} %write{28,28}
const	string	$const9	"object"		%read{30,30} %write{2147483647,-1}
const	string	$const10	"world"		%read{30,30} %write{2147483647,-1}
temp	vector	$tmp16	%read{33,33} %write{32,32}
temp	vector	$tmp17	%read{32,32} %write{31,31}
temp	int	$tmp18	%read{2147483647,-1} %write{35,35}
const	string	$const11	"geom:pointiness"		%read{35,35} %write{2147483647,-1}
temp	int	$tmp19	%read{37,37} %write{36,36}
temp	float	$tmp20	%read{39,39} %write{38,38} %derivs
temp	int	$tmp21	%read{41,41} %write{40,40}
temp	float	$tmp22	%read{43,43} %write{42,42} %derivs
temp	int	$tmp23	%read{2147483647,-1} %write{44,44}
const	string	$const12	"geom:random_per_island"		%read{44,44} %write{2147483647,-1}
code NormalIn
# /build/blender/src/blender/intern/cycles/kernel/osl/shaders/node_geometry.osl:6
# shader node_geometry(normal NormalIn = N,
	assign		NormalIn N 	%filename{"/build/blender/src/blender/intern/cycles/kernel/osl/shaders/node_geometry.osl"} %line{6} %argrw{"wr"}
code ___main___
# /build/blender/src/blender/intern/cycles/kernel/osl/shaders/node_geometry.osl:19
#   Position = P;
	assign		Position P 	%filename{"/build/blender/src/blender/intern/cycles/kernel/osl/shaders/node_geometry.osl"} %line{19} %argrw{"wr"}
# /build/blender/src/blender/intern/cycles/kernel/osl/shaders/node_geometry.osl:20
#   Normal = NormalIn;
	assign		Normal NormalIn 	%line{20} %argrw{"wr"}
# /build/blender/src/blender/intern/cycles/kernel/osl/shaders/node_geometry.osl:21
#   TrueNormal = Ng;
	assign		TrueNormal Ng 	%line{21} %argrw{"wr"}
# /build/blender/src/blender/intern/cycles/kernel/osl/shaders/node_geometry.osl:22
#   Incoming = I;
	assign		Incoming I 	%line{22} %argrw{"wr"}
# /build/blender/src/blender/intern/cycles/kernel/osl/shaders/node_geometry.osl:23
#   Parametric = point(1.0 - u - v, u, 0.0);
	sub		$tmp1 $const1 u 	%line{23} %argrw{"wrr"}
	sub		$tmp2 $tmp1 v 	%argrw{"wrr"}
	point		Parametric $tmp2 u $const2 	%argrw{"wrrr"}
# /build/blender/src/blender/intern/cycles/kernel/osl/shaders/node_geometry.osl:24
#   Backfacing = backfacing();
	backfacing	$tmp3 	%line{24} %argrw{"w"}
	assign		Backfacing $tmp3 	%argrw{"wr"}
# /build/blender/src/blender/intern/cycles/kernel/osl/shaders/node_geometry.osl:26
#   if (bump_offset == "dx") {
	eq		$tmp4 bump_offset $const3 	%line{26} %argrw{"wrr"}
	if		$tmp4 16 22 	%argrw{"r"}
# /build/blender/src/blender/intern/cycles/kernel/osl/shaders/node_geometry.osl:27
#     Position += Dx(Position);
	Dx		$tmp5 Position 	%line{27} %argrw{"wr"} %argderivs{1}
	add		Position Position $tmp5 	%argrw{"wrr"}
# /build/blender/src/blender/intern/cycles/kernel/osl/shaders/node_geometry.osl:28
#     Parametric += Dx(Parametric);
	Dx		$tmp6 Parametric 	%line{28} %argrw{"wr"} %argderivs{1}
	add		Parametric Parametric $tmp6 	%argrw{"wrr"}
# /build/blender/src/blender/intern/cycles/kernel/osl/shaders/node_geometry.osl:30
#   else if (bump_offset == "dy") {
	eq		$tmp7 bump_offset $const4 	%line{30} %argrw{"wrr"}
	if		$tmp7 22 22 	%argrw{"r"}
# /build/blender/src/blender/intern/cycles/kernel/osl/shaders/node_geometry.osl:31
#     Position += Dy(Position);
	Dy		$tmp8 Position 	%line{31} %argrw{"wr"} %argderivs{1}
	add		Position Position $tmp8 	%argrw{"wrr"}
# /build/blender/src/blender/intern/cycles/kernel/osl/shaders/node_geometry.osl:32
#     Parametric += Dy(Parametric);
	Dy		$tmp9 Parametric 	%line{32} %argrw{"wr"} %argderivs{1}
	add		Parametric Parametric $tmp9 	%argrw{"wrr"}
# /build/blender/src/blender/intern/cycles/kernel/osl/shaders/node_geometry.osl:39
#   if (getattribute("geom:generated", generated)) {
	getattribute	$tmp10 $const5 generated 	%line{39} %argrw{"wrw"}
	if		$tmp10 34 35 	%argrw{"r"}
# /build/blender/src/blender/intern/cycles/kernel/osl/shaders/node_geometry.osl:40
#     normal data = normal(-(generated[1] - 0.5), (generated[0] - 0.5), 0.0);
	compref		$tmp11 generated $const6 	%line{40} %argrw{"wrr"}
	sub		$tmp12 $tmp11 $const7 	%argrw{"wrr"}
	neg		$tmp13 $tmp12 	%argrw{"wr"}
	compref		$tmp14 generated $const8 	%argrw{"wrr"}
	sub		$tmp15 $tmp14 $const7 	%argrw{"wrr"}
	normal		___370_data $tmp13 $tmp15 $const2 	%argrw{"wrrr"}
# /build/blender/src/blender/intern/cycles/kernel/osl/shaders/node_geometry.osl:41
#     vector T = transform("object", "world", data);
	transformn	___370_T $const9 $const10 ___370_data 	%line{41} %argrw{"wrrr"}
# /build/blender/src/blender/intern/cycles/kernel/osl/shaders/node_geometry.osl:42
#     Tangent = cross(Normal, normalize(cross(T, Normal)));
	cross		$tmp17 ___370_T Normal 	%line{42} %argrw{"wrr"}
	normalize	$tmp16 $tmp17 	%argrw{"wr"}
	cross		Tangent Normal $tmp16 	%argrw{"wrr"}
# /build/blender/src/blender/intern/cycles/kernel/osl/shaders/node_geometry.osl:46
#     Tangent = normalize(dPdu);
	normalize	Tangent dPdu 	%line{46} %argrw{"wr"}
# /build/blender/src/blender/intern/cycles/kernel/osl/shaders/node_geometry.osl:49
#   getattribute("geom:pointiness", Pointiness);
	getattribute	$tmp18 $const11 Pointiness 	%line{49} %argrw{"wrw"}
# /build/blender/src/blender/intern/cycles/kernel/osl/shaders/node_geometry.osl:50
#   if (bump_offset == "dx") {
	eq		$tmp19 bump_offset $const3 	%line{50} %argrw{"wrr"}
	if		$tmp19 40 44 	%argrw{"r"}
# /build/blender/src/blender/intern/cycles/kernel/osl/shaders/node_geometry.osl:51
#     Pointiness += Dx(Pointiness);
	Dx		$tmp20 Pointiness 	%line{51} %argrw{"wr"} %argderivs{1}
	add		Pointiness Pointiness $tmp20 	%argrw{"wrr"}
# /build/blender/src/blender/intern/cycles/kernel/osl/shaders/node_geometry.osl:53
#   else if (bump_offset == "dy") {
	eq		$tmp21 bump_offset $const4 	%line{53} %argrw{"wrr"}
	if		$tmp21 44 44 	%argrw{"r"}
# /build/blender/src/blender/intern/cycles/kernel/osl/shaders/node_geometry.osl:54
#     Pointiness += Dy(Pointiness);
	Dy		$tmp22 Pointiness 	%line{54} %argrw{"wr"} %argderivs{1}
	add		Pointiness Pointiness $tmp22 	%argrw{"wrr"}
# /build/blender/src/blender/intern/cycles/kernel/osl/shaders/node_geometry.osl:57
#   getattribute("geom:random_per_island", RandomPerIsland);
	getattribute	$tmp23 $const12 RandomPerIsland 	%line{57} %argrw{"wrw"}
	end
