*Defines
{
	*HEADER 
	"!!ARBvp1.0
	OPTION NV_vertex_program2;
	ATTRIB vPos = vertex.position;
	ATTRIB vNrm = vertex.normal;
	ATTRIB vC0 = vertex.color.primary;
	ATTRIB vMI = vertex.attrib[4];
	ATTRIB vMW = vertex.attrib[1];
	ATTRIB vMI2 = vertex.attrib[7];
	ATTRIB vMW2 = vertex.attrib[5];
	OUTPUT oPos = result.position;
	OUTPUT oC0 = result.color.primary;
	OUTPUT oC1 = result.color.secondary;
	OUTPUT oFog = result.fogcoord;
	TEMP R0,R1,R2,R3,R4,R5,R6,R7,R8,R9,R10,R11;
	ADDRESS A0;
	PARAM c[192] = { 
		program.env[0], program.env[1], program.env[2], program.env[3], program.env[4], program.env[5], program.env[6], program.env[7], program.env[8], program.env[9],
		program.env[10], program.env[11], program.env[12], program.env[13], program.env[14], program.env[15], program.env[16], program.env[17], program.env[18], program.env[19],
		program.env[20], program.env[21], program.env[22], program.env[23], program.env[24], program.env[25], program.env[26], program.env[27], program.env[28], program.env[29],
		program.env[30], program.env[31], program.env[32], program.env[33], program.env[34], program.env[35], program.env[36], program.env[37], program.env[38], program.env[39],
		program.env[40], program.env[41], program.env[42], program.env[43], program.env[44], program.env[45], program.env[46], program.env[47], program.env[48], program.env[49],
		program.env[50], program.env[51], program.env[52], program.env[53], program.env[54], program.env[55], program.env[56], program.env[57], program.env[58], program.env[59],
		program.env[60], program.env[61], program.env[62], program.env[63], program.env[64], program.env[65], program.env[66], program.env[67], program.env[68], program.env[69],
		program.env[70], program.env[71], program.env[72], program.env[73], program.env[74], program.env[75], program.env[76], program.env[77], program.env[78], program.env[79],
		program.env[80], program.env[81], program.env[82], program.env[83], program.env[84], program.env[85], program.env[86], program.env[87], program.env[88], program.env[89],
		program.env[90], program.env[91], program.env[92], program.env[93], program.env[94], program.env[95], program.env[96], program.env[97], program.env[98], program.env[99],
		program.env[100], program.env[101], program.env[102], program.env[103], program.env[104], program.env[105], program.env[106], program.env[107], program.env[108], program.env[109],
		program.env[110], program.env[111], program.env[112], program.env[113], program.env[114], program.env[115], program.env[116], program.env[117], program.env[118], program.env[119],
		program.env[120], program.env[121], program.env[122], program.env[123], program.env[124], program.env[125], program.env[126], program.env[127], program.env[128], program.env[129],
		program.env[130], program.env[131], program.env[132], program.env[133], program.env[134], program.env[135], program.env[136], program.env[137], program.env[138], program.env[139],
		program.env[140], program.env[141], program.env[142], program.env[143], program.env[144], program.env[145], program.env[146], program.env[147], program.env[148], program.env[149],
		program.env[150], program.env[151], program.env[152], program.env[153], program.env[154], program.env[155], program.env[156], program.env[157], program.env[158], program.env[159],
		program.env[160], program.env[161], program.env[162], program.env[163], program.env[164], program.env[165], program.env[166], program.env[167], program.env[168], program.env[169],
		program.env[170], program.env[171], program.env[172], program.env[173], program.env[174], program.env[175], program.env[176], program.env[177], program.env[178], program.env[179],
		program.env[180], program.env[181], program.env[182], program.env[183], program.env[184], program.env[185], program.env[186], program.env[187], program.env[188], program.env[189],
		program.env[190], program.env[191]
	};
	"
	*END "END"

	*TEXCOORDIN0
	"
	ATTRIB vT0 = vertex.attrib[8];
	"
	*TEXCOORDIN1
	"
	ATTRIB vT1 = vertex.attrib[9];
	"
	*TEXCOORDIN2
	"
	ATTRIB vT2 = vertex.attrib[10];
	"
	*TEXCOORDIN3
	"
	ATTRIB vT3 = vertex.attrib[11];
	"
	*TEXCOORDIN4
	"
	ATTRIB vT4 = vertex.attrib[12];
	"
	*TEXCOORDIN5
	"
	ATTRIB vT5 = vertex.attrib[13];
	"
	*TEXCOORDIN6
	"
	ATTRIB vT6 = vertex.attrib[14];
	"
	*TEXCOORDIN7
	"
	ATTRIB vT7 = vertex.attrib[15];
	"

	*TEXCOORDOUT0
	"
	OUTPUT oT0 = result.texcoord[0];
	"
	*TEXCOORDOUT1
	"
	OUTPUT oT1 = result.texcoord[1];
	"
	*TEXCOORDOUT2
	"
	OUTPUT oT2 = result.texcoord[2];
	"
	*TEXCOORDOUT3
	"
	OUTPUT oT3 = result.texcoord[3];
	"
	*TEXCOORDOUT4
	"
	OUTPUT oT4 = result.texcoord[4];
	"
	*TEXCOORDOUT5
	"
	OUTPUT oT5 = result.texcoord[5];
	"
	*TEXCOORDOUT6
	"
	OUTPUT oT6 = result.texcoord[6];
	"
	*TEXCOORDOUT7
	"
	OUTPUT oT7 = result.texcoord[7];
	"

	*V_POS vPos
	*V_NRML vNrm
	*V_TEX0 vT0
	*V_TEX1 vT1
	*V_TEX2 vT2
	*V_TEX3 vT3
	*V_TEX4 vT4
	*V_TEX5 vT5
	*V_TEX6 vT6
	*V_TEX7 vT7
	*V_COL0 vC0
	*V_COL1 vC1
	*V_MI vMI
	*V_MW vMW
	*V_MI2 vMI2
	*V_MW2 vMW2

	*O_HPOS oPos
	*O_TEX0 oT0
	*O_TEX1 oT1
	*O_TEX2 oT2
	*O_TEX3 oT3
	*O_TEX4 oT4
	*O_TEX5 oT5
	*O_TEX6 oT6
	*O_TEX7 oT7
	*O_COL0 oC0
	*O_COL1 oC1
	*O_FOG oFog
	
	*O_CLIP0 result.clip[0]
	*O_CLIP1 result.clip[1]
	*O_CLIP2 result.clip[2]
	*O_CLIP3 result.clip[3]
	*O_CLIP4 result.clip[4]
	*O_CLIP5 result.clip[5]

	*ARL ARL
	*MPSIGN +
}

