surface myshader
param	float	Kd		0.8
param	float	Ka		0.2
local	float	sum	0
local	float	i	0
local	float	freq	0
initcode 1
	return
code
	return_area
	pushif	0 
	popf	sum 
	pushif	1 
	popf	freq 
	pushif	0 
	popf	i 
label 0
	pushif	6 
	pushf	i 
	lt
	ifz	2
	pushf	freq 
	pushv	I 
	mulFv	freq 
	noisev
	pushif	0.5 
	subff
	abs
	divff
	addF	sum 
	popf	sum 
	pushf	freq 
	log
	addF	freq 
	popf	freq 
label 1
	pushif	1 
	addF	i 
	popf	i 
	jump	0
label 2
	pushv	I 
	pushif	4 
	mulfv
	pushv	N 
	normalize
	faceforward
	diffuse
	mulFv	Kd 
	pushf	Ka 
	ftoc
	addcc
	pushf	sum 
	pushc	Cs 
	mulcf
	mulcc
	popc	Ci 
	return