surface texmap
param	string	texname		""
param	float	maptype		3
param	point	maporigin		0 0 0
local	string	$_str_2 	"current"
param	point	xaxis		0 0 0
param	point	yaxis		0 0 0
param	point	zaxis		0 0 0
param	float	s1		0
param	float	t1		0
param	float	s2		1
param	float	t2		0
param	float	s3		0
param	float	t3		1
param	float	s4		1
param	float	t4		1
param	float	Ka		1
param	float	Kd		1
param	float	Ks		0
param	float	roughness		0.25
param	color	specularcolor		1 1 1
local	string	$_str_0 	""
local	string	$_str_1 	"shader"
local	float	ssize	0
local	float	tsize	0
local	vector	Nf	0 0 0
local	vector	NI	0 0 0
local	point	PP	0 0 0
local	point	O	0 0 0
local	point	X	0 0 0
local	point	Y	0 0 0
local	point	Z	0 0 0
local	point	NN	0 0 0
local	color	ctx	0 0 0
local	float	ss	0
local	float	tt	0
local	float	ds	0
local	float	dsu	0
local	float	dsv	0
local	float	dt	0
local	float	dtu	0
local	float	dtv	0
local	float	_9$uu	0
local	float	_9$vv	0
local	vector	_3$V	0 0 0
local	vector	_3$XX	0 0 0
local	vector	_3$YY	0 0 0
local	float	_3$xx	0
local	float	_3$yy	0
local	vector	_2$V	0 0 0
local	vector	_2$Vn	0 0 0
local	vector	_2$XX	0 0 0
local	vector	_2$YY	0 0 0
local	vector	_2$ZZ	0 0 0
local	float	_2$xx	0
local	float	_2$yy	0
local	vector	_4$V	0 0 0
local	vector	_4$XX	0 0 0
local	vector	_4$YY	0 0 0
local	vector	_4$ZZ	0 0 0
local	float	_4$xx	0
local	float	_4$yy	0
local	float	_4$zz	0
local	vector	_5$V	0 0 0
local	vector	_5$XX	0 0 0
local	vector	_5$YY	0 0 0
local	vector	_5$ZZ	0 0 0
local	float	_5$xx	0
local	float	_5$yy	0
local	float	_5$dot	0
local	vector	_5$yvector	0 0 0
local	vector	_5$zvector	0 0 0
local	float	_1$left	0
local	float	_1$right	0
initcode 2
	pushiv	0 0 0 
	pushs	$_str_2 
	pushs	$_str_1 
	transform2s
	popv	maporigin 
initcode 3
	pushiv	1 0 0 
	pushs	$_str_2 
	pushs	$_str_1 
	transform2s
	popv	xaxis 
initcode 4
	pushiv	0 1 0 
	pushs	$_str_2 
	pushs	$_str_1 
	transform2s
	popv	yaxis 
initcode 5
	pushiv	0 0 1 
	pushs	$_str_2 
	pushs	$_str_1 
	transform2s
	popv	zaxis 
initcode 18
	return
code
	pushf	s2 
	pushf	s1 
	lt
	ifz	0
	pushf	s1 
	subF	s2 
	popf	ssize 
	jump	1
label 0
	pushf	s2 
	subF	s1 
	popf	ssize 
label 1
	pushf	t2 
	pushf	t1 
	lt
	ifz	2
	pushf	t1 
	subF	t2 
	popf	tsize 
	jump	3
label 2
	pushf	t2 
	subF	t1 
	popf	tsize 
label 3
	pushv	P 
	pushs	$_str_1 
	transforms
	popv	PP 
	pushv	maporigin 
	pushs	$_str_1 
	transforms
	popv	O 
	pushv	xaxis 
	pushs	$_str_1 
	transforms
	popv	X 
	pushv	yaxis 
	pushs	$_str_1 
	transforms
	popv	Y 
	pushv	zaxis 
	pushs	$_str_1 
	transforms
	popv	Z 
	pushiv	0 0 0 
	pushs	$_str_1 
	transforms
	pushv	N 
	pushs	$_str_1 
	transforms
	subvv
	normalize
	popv	NN 
	pushif	0 
	pushf	maptype 
	feqf
	ifz	5
	pushv	O 
	subV	PP 
	popv	_3$V 
	pushv	O 
	subV	X 
	normalize
	popv	_3$XX 
	pushv	O 
	subV	Y 
	normalize
	popv	_3$YY 
	pushv	_3$XX 
	pushv	_3$V 
	vdot
	popf	_9$uu 
	pushv	_3$YY 
	pushv	_3$V 
	vdot
	popf	_9$vv 
label 7
	jump	6
label 5
	pushif	1 
	pushf	maptype 
	feqf
	ifz	8
	pushv	O 
	subV	PP 
	popv	_2$V 
	pushv	_2$V 
	normalize
	popv	_2$Vn 
	pushv	O 
	subV	X 
	normalize
	popv	_2$XX 
	pushv	O 
	subV	Y 
	normalize
	popv	_2$YY 
	pushv	O 
	subV	Z 
	normalize
	popv	_2$ZZ 
	pushv	_2$XX 
	pushv	_2$Vn 
	vdot
	popf	_2$xx 
	pushv	_2$YY 
	pushv	_2$Vn 
	vdot
	popf	_2$yy 
	pushv	_2$ZZ 
	pushv	_2$V 
	vdot
	popf	_9$vv 
	pushif	3.14159 
	pushif	2 
	mulff
	pushf	_2$xx 
	pushf	_2$yy 
	atan2
	divff
	popf	_9$uu 
	pushf	_9$uu 
	negf
	pushif	0 
	step
	addF	_9$uu 
	popf	_9$uu 
label 10
	jump	9
label 8
	pushif	2 
	pushf	maptype 
	feqf
	ifz	11
	pushv	O 
	subV	PP 
	normalize
	popv	_4$V 
	pushv	O 
	subV	X 
	normalize
	popv	_4$XX 
	pushv	O 
	subV	Y 
	normalize
	popv	_4$YY 
	pushv	O 
	subV	Z 
	normalize
	popv	_4$ZZ 
	pushv	_4$XX 
	pushv	_4$V 
	vdot
	popf	_4$xx 
	pushv	_4$YY 
	pushv	_4$V 
	vdot
	popf	_4$yy 
	pushv	_4$ZZ 
	pushv	_4$V 
	vdot
	popf	_4$zz 
	pushif	3.14159 
	pushif	2 
	mulff
	pushf	_4$xx 
	pushf	_4$yy 
	atan2
	divff
	popf	_9$uu 
	pushf	_9$uu 
	negf
	pushif	0 
	step
	addF	_9$uu 
	popf	_9$uu 
	pushif	3.14159 
	pushf	_4$zz 
	negf
	acos
	divff
	popf	_9$vv 
label 13
	jump	12
label 11
	pushif	4 
	pushf	maptype 
	feqf
	ifz	14
	pushiv	0 1 0 
	popv	_5$yvector 
	pushiv	0 0 1 
	popv	_5$zvector 
	pushv	O 
	subV	PP 
	popv	_5$V 
	pushv	NN 
	normalize
	popv	_5$ZZ 
	pushv	O 
	subV	Y 
	normalize
	popv	_5$YY 
	pushv	_5$YY 
	pushv	_5$ZZ 
	vdot
	popf	_5$dot 
	pushif	0.01 
	pushif	-1 
	addff
	pushf	_5$dot 
	lt
	pushif	0.01 
	pushif	1 
	subff
	pushf	_5$dot 
	gt
	or
	ifz	17
	pushv	_5$yvector 
	pushv	_5$ZZ 
	vdot
	popf	_5$dot 
	pushif	0.01 
	pushif	-1 
	addff
	pushf	_5$dot 
	lt
	pushif	0.01 
	pushif	1 
	subff
	pushf	_5$dot 
	gt
	or
	ifz	19
	cpVV	_5$zvector _5$YY 
	jump	20
label 19
	cpVV	_5$yvector _5$YY 
label 20
label 17
label 18
	pushv	_5$ZZ 
	pushv	_5$YY 
	cross
	popv	_5$XX 
	pushv	_5$XX 
	pushv	_5$ZZ 
	cross
	popv	_5$YY 
	pushv	_5$XX 
	pushv	_5$V 
	vdot
	popf	_9$uu 
	pushv	_5$YY 
	pushv	_5$V 
	vdot
	popf	_9$vv 
label 16
label 14
label 15
label 12
label 9
label 6
	pushif	3 
	pushf	maptype 
	fnef
	ifz	21
	pushf	s1 
	subF	s2 
	mulF	_9$uu 
	addF	s1 
	popf	_1$left 
	pushf	s3 
	subF	s4 
	mulF	_9$uu 
	addF	s3 
	popf	_1$right 
	pushf	_1$left 
	subF	_1$right 
	mulF	_9$vv 
	addF	_1$left 
	jump	23
label 23
	popf	ss 
	pushf	t1 
	subF	t2 
	mulF	_9$uu 
	addF	t1 
	popf	_1$left 
	pushf	t3 
	subF	t4 
	mulF	_9$uu 
	addF	t3 
	popf	_1$right 
	pushf	_1$left 
	subF	_1$right 
	mulF	_9$vv 
	addF	_1$left 
	jump	24
label 24
	popf	tt 
	jump	22
label 21
	cpFF	s ss 
	cpFF	t tt 
label 22
label 4
	pushv	I 
	pushv	N 
	normalize
	faceforward
	popv	Nf 
	pushf	du 
	pushf	ss 
	Duf
	mulff
	abs
	popf	dsu 
	pushf	ssize 
	pushf	dsu 
	pushif	2 
	mulff
	gt
	ifz	25
	pushf	dsu 
	subF	ssize 
	popf	dsu 
label 25
label 26
	pushf	dv 
	pushf	ss 
	Dvf
	mulff
	abs
	popf	dsv 
	pushf	ssize 
	pushf	dsv 
	pushif	2 
	mulff
	gt
	ifz	27
	pushf	dsv 
	subF	ssize 
	popf	dsv 
label 27
label 28
	pushf	dsv 
	addF	dsu 
	popf	ds 
	pushf	du 
	pushf	tt 
	Duf
	mulff
	abs
	popf	dtu 
	pushf	tsize 
	pushf	dtu 
	pushif	2 
	mulff
	gt
	ifz	29
	pushf	dtu 
	subF	tsize 
	popf	dtu 
label 29
label 30
	pushf	dv 
	pushf	tt 
	Dvf
	mulff
	abs
	popf	dtv 
	pushf	tsize 
	pushf	dtv 
	pushif	2 
	mulff
	gt
	ifz	31
	pushf	dtv 
	subF	tsize 
	popf	dtv 
label 31
label 32
	pushf	dtv 
	addF	dtu 
	popf	dt 
	pushs	$_str_0 
	pushs	texname 
	seq
	ifz	33
	pushif	1 
	cset	ctx 
	jump	34
label 33
	pushf	dt 
	addF	tt 
	pushf	ds 
	addF	ss 
	pushf	dt 
	addF	tt 
	pushf	ss 
	pushf	tt 
	pushf	ds 
	addF	ss 
	pushf	tt 
	pushf	ss 
	pushif	-1 
	pushs	texname 
	pushif	8 
	pushif	8 
	ctexture
	popc	ctx 
label 34
	return_area
	pushc	ctx 
	pushv	Nf 
	diffuse
	mulFv	Kd 
	ambient
	mulFv	Ka 
	addcc
	mulcc
	popc	Ci 
	pushif	0 
	pushf	Ks 
	fnef
	ifz	35
	pushv	I 
	negv
	normalize
	popv	NI 
	pushf	roughness 
	pushv	NI 
	pushv	Nf 
	specular
	pushc	specularcolor 
	mulFv	Ks 
	mulcc
	addC	Ci 
	popc	Ci 
label 35
label 36
	cpCC	Os Oi 
	pushc	Oi 
	mulC	Ci 
	popc	Ci 
	return