#include <openb3d.mod/openb3dcore.mod/.bmx/openb3dcore.bmx.debug.win32.x64.h>
struct BBString_1{BBClass_String* clas;BBULONG hash;int length;BBChar buf[1];};
struct BBString_2{BBClass_String* clas;BBULONG hash;int length;BBChar buf[2];};
struct BBString_22{BBClass_String* clas;BBULONG hash;int length;BBChar buf[22];};
struct BBString_20{BBClass_String* clas;BBULONG hash;int length;BBChar buf[20];};
struct BBString_23{BBClass_String* clas;BBULONG hash;int length;BBChar buf[23];};
struct BBString_17{BBClass_String* clas;BBULONG hash;int length;BBChar buf[17];};
struct BBString_21{BBClass_String* clas;BBULONG hash;int length;BBChar buf[21];};
struct BBString_18{BBClass_String* clas;BBULONG hash;int length;BBChar buf[18];};
struct BBString_19{BBClass_String* clas;BBULONG hash;int length;BBChar buf[19];};
struct BBString_16{BBClass_String* clas;BBULONG hash;int length;BBChar buf[16];};
struct BBString_9{BBClass_String* clas;BBULONG hash;int length;BBChar buf[9];};
struct BBString_4{BBClass_String* clas;BBULONG hash;int length;BBChar buf[4];};
struct BBString_25{BBClass_String* clas;BBULONG hash;int length;BBChar buf[25];};
struct BBString_15{BBClass_String* clas;BBULONG hash;int length;BBChar buf[15];};
struct BBString_14{BBClass_String* clas;BBULONG hash;int length;BBChar buf[14];};
struct BBString_10{BBClass_String* clas;BBULONG hash;int length;BBChar buf[10];};
struct BBString_11{BBClass_String* clas;BBULONG hash;int length;BBChar buf[11];};
struct BBString_12{BBClass_String* clas;BBULONG hash;int length;BBChar buf[12];};
struct BBString_13{BBClass_String* clas;BBULONG hash;int length;BBChar buf[13];};
struct BBString_6{BBClass_String* clas;BBULONG hash;int length;BBChar buf[6];};
struct BBString_5{BBClass_String* clas;BBULONG hash;int length;BBChar buf[5];};
struct BBString_8{BBClass_String* clas;BBULONG hash;int length;BBChar buf[8];};
struct BBString_35{BBClass_String* clas;BBULONG hash;int length;BBChar buf[35];};
struct BBString_34{BBClass_String* clas;BBULONG hash;int length;BBChar buf[34];};
struct BBString_33{BBClass_String* clas;BBULONG hash;int length;BBChar buf[33];};
struct BBString_7{BBClass_String* clas;BBULONG hash;int length;BBChar buf[7];};
struct BBString_27{BBClass_String* clas;BBULONG hash;int length;BBChar buf[27];};
struct BBString_24{BBClass_String* clas;BBULONG hash;int length;BBChar buf[24];};
struct BBString_3{BBClass_String* clas;BBULONG hash;int length;BBChar buf[3];};
struct BBString_26{BBClass_String* clas;BBULONG hash;int length;BBChar buf[26];};
struct BBString_29{BBClass_String* clas;BBULONG hash;int length;BBChar buf[29];};
struct BBString_32{BBClass_String* clas;BBULONG hash;int length;BBChar buf[32];};
struct BBString_31{BBClass_String* clas;BBULONG hash;int length;BBChar buf[31];};
static struct BBString_1 _s445={
	&bbStringClass,
	0xa8d4ace0dc8d360e,
	1,
	{32}
};
static struct BBString_2 _s0={
	&bbStringClass,
	0xd080db24ebb0e205,
	2,
	{32,32}
};
static struct BBString_22 _s528={
	&bbStringClass,
	0xbbf5834ad7e9296f,
	22,
	{32,32,32,32,32,67,72,85,78,75,95,70,65,67,69,77,65
	,84,76,73,83,84}
};
static struct BBString_20 _s536={
	&bbStringClass,
	0x1c9a62f1cdf9bb94,
	20,
	{32,32,32,32,67,72,85,78,75,95,70,65,67,69,76,73,83
	,84,58,32}
};
static struct BBString_23 _s529={
	&bbStringClass,
	0xeb49b23a2b693243,
	23,
	{32,32,32,32,67,72,85,78,75,95,77,65,80,70,73,76,69
	,78,65,77,69,58,32}
};
static struct BBString_17 _s537={
	&bbStringClass,
	0x1cf069b5ab26d75e,
	17,
	{32,32,32,32,67,72,85,78,75,95,77,65,80,76,73,83,84
}
};
static struct BBString_23 _s534={
	&bbStringClass,
	0x28f6df7a66427280,
	23,
	{32,32,32,32,67,72,85,78,75,95,77,65,80,82,79,84,65
	,84,73,79,78,58,32}
};
static struct BBString_22 _s532={
	&bbStringClass,
	0xe3660d4d6aebf0ac,
	22,
	{32,32,32,32,67,72,85,78,75,95,77,65,80,85,79,70,70
	,83,69,84,58,32}
};
static struct BBString_21 _s531={
	&bbStringClass,
	0x1daf2f9d6d351d35,
	21,
	{32,32,32,32,67,72,85,78,75,95,77,65,80,85,83,67,65
	,76,69,58,32}
};
static struct BBString_22 _s533={
	&bbStringClass,
	0x3b69dbfc96f09126,
	22,
	{32,32,32,32,67,72,85,78,75,95,77,65,80,86,79,70,70
	,83,69,84,58,32}
};
static struct BBString_21 _s530={
	&bbStringClass,
	0xa26c1a237bc0ae77,
	21,
	{32,32,32,32,67,72,85,78,75,95,77,65,80,86,83,67,65
	,76,69,58,32}
};
static struct BBString_21 _s538={
	&bbStringClass,
	0xf0628a6ab0558343,
	21,
	{32,32,32,32,67,72,85,78,75,95,84,82,65,78,83,77,65
	,84,82,73,88}
};
static struct BBString_22 _s535={
	&bbStringClass,
	0x6edd82f9c6a79b3c,
	22,
	{32,32,32,32,67,72,85,78,75,95,86,69,82,84,69,88,76
	,73,83,84,58,32}
};
static struct BBString_18 _s554={
	&bbStringClass,
	0x9b6eb2dc85319799,
	18,
	{32,32,32,67,72,85,78,75,95,68,73,70,70,85,83,69,58
	,32}
};
static struct BBString_19 _s540={
	&bbStringClass,
	0x9965af549d164b95,
	19,
	{32,32,32,67,72,85,78,75,95,72,73,69,82,73,78,70,79
	,58,32}
};
static struct BBString_18 _s539={
	&bbStringClass,
	0x5bb781af95750e7e,
	18,
	{32,32,32,67,72,85,78,75,95,72,73,69,82,80,79,83,58
	,32}
};
static struct BBString_19 _s542={
	&bbStringClass,
	0xb35c6ec5816ec399,
	19,
	{32,32,32,67,72,85,78,75,95,73,78,83,84,78,65,77,69
	,58,32}
};
static struct BBString_18 _s553={
	&bbStringClass,
	0x53ef989bb6e26d7e,
	18,
	{32,32,32,67,72,85,78,75,95,77,65,84,78,65,77,69,58
	,32}
};
static struct BBString_16 _s543={
	&bbStringClass,
	0xdeb382e6d51e3142,
	16,
	{32,32,32,67,72,85,78,75,95,80,73,86,79,84,58,32}
};
static struct BBString_20 _s555={
	&bbStringClass,
	0x27cfec704256b951,
	20,
	{32,32,32,67,72,85,78,75,95,83,72,73,78,73,78,69,83
	,83,58,32}
};
static struct BBString_20 _s556={
	&bbStringClass,
	0x61267f15d2c6539,
	20,
	{32,32,32,67,72,85,78,75,95,84,69,88,84,85,82,69,77
	,65,80,49}
};
static struct BBString_20 _s557={
	&bbStringClass,
	0x61fe660867cba058,
	20,
	{32,32,32,67,72,85,78,75,95,84,69,88,84,85,82,69,77
	,65,80,50}
};
static struct BBString_18 _s546={
	&bbStringClass,
	0xaaf2c0f7029d7af3,
	18,
	{32,32,32,67,72,85,78,75,95,84,82,73,77,69,83,72,58
	,32}
};
static struct BBString_21 _s564={
	&bbStringClass,
	0xacffd6da904b5c75,
	21,
	{32,32,67,72,85,78,75,95,77,65,83,84,69,82,83,67,65
	,76,69,58,32}
};
static struct BBString_16 _s563={
	&bbStringClass,
	0x965f2a635c5426a8,
	16,
	{32,32,67,72,85,78,75,95,77,65,84,66,76,79,67,75}
};
static struct BBString_16 _s561={
	&bbStringClass,
	0xe74f883dac7e636a,
	16,
	{32,32,67,72,85,78,75,95,77,69,83,72,73,78,70,79}
};
static struct BBString_19 _s562={
	&bbStringClass,
	0xf09c3f9d77de1d02,
	19,
	{32,32,67,72,85,78,75,95,79,66,74,69,67,84,66,76,79
	,67,75}
};
static struct BBString_20 _s505={
	&bbStringClass,
	0x5b7e4c95d8620666,
	20,
	{32,32,77,51,68,95,51,68,83,95,80,69,82,67,69,78,84
	,70,58,32}
};
static struct BBString_20 _s504={
	&bbStringClass,
	0x46998bb9ebed0212,
	20,
	{32,32,77,51,68,95,51,68,83,95,80,69,82,67,69,78,84
	,73,58,32}
};
static struct BBString_17 _s501={
	&bbStringClass,
	0x427b63b8da75cd10,
	17,
	{32,32,77,51,68,95,51,68,83,95,82,71,66,51,66,58,32
}
};
static struct BBString_17 _s500={
	&bbStringClass,
	0xdcc33ab34bd4b38c,
	17,
	{32,32,77,51,68,95,51,68,83,95,82,71,66,51,70,58,32
}
};
static struct BBString_22 _s503={
	&bbStringClass,
	0x79dbaf273d1fc345,
	22,
	{32,32,77,51,68,95,51,68,83,95,82,71,66,71,65,77,77
	,65,51,66,58,32}
};
static struct BBString_22 _s502={
	&bbStringClass,
	0xcf883005eec8cf95,
	22,
	{32,32,77,51,68,95,51,68,83,95,82,71,66,71,65,77,77
	,65,51,70,58,32}
};
static struct BBString_9 _s441={
	&bbStringClass,
	0xc28f3705f26449b6,
	9,
	{32,40,112,97,114,101,110,116,61}
};
static struct BBString_4 _s315={
	&bbStringClass,
	0xa7bc77e5a4f37a66,
	4,
	{32,46,46,46}
};
static struct BBString_4 _s684={
	&bbStringClass,
	0x4b860a25506cc566,
	4,
	{32,49,58,32}
};
static struct BBString_4 _s685={
	&bbStringClass,
	0x38170b81e835c7e6,
	4,
	{32,50,58,32}
};
static struct BBString_18 _s755={
	&bbStringClass,
	0x232b7200aae5f5ba,
	18,
	{32,65,99,116,105,111,110,32,105,110,115,116,97,110,99,101,58
	,32}
};
static struct BBString_25 _s419={
	&bbStringClass,
	0xee1898a0e01fcd9d,
	25,
	{32,65,110,105,109,97,116,105,111,110,75,101,121,115,32,105,110
	,115,116,97,110,99,101,58,32}
};
static struct BBString_16 _s263={
	&bbStringClass,
	0x29b4f4b511e820a7,
	16,
	{32,66,111,110,101,32,105,110,115,116,97,110,99,101,58,32}
};
static struct BBString_17 _s404={
	&bbStringClass,
	0xc2c4d9a2b43435f,
	17,
	{32,66,114,117,115,104,32,105,110,115,116,97,110,99,101,58,32
}
};
static struct BBString_15 _s565={
	&bbStringClass,
	0x89293a05a2137e3d,
	15,
	{32,67,72,85,78,75,95,51,68,69,68,73,84,79,82}
};
static struct BBString_16 _s566={
	&bbStringClass,
	0x83eeec29f9dbac5a,
	16,
	{32,67,72,85,78,75,95,75,69,89,70,82,65,77,69,82}
};
static struct BBString_19 _s567={
	&bbStringClass,
	0x5135b09fcaeceda7,
	19,
	{32,67,72,85,78,75,95,77,51,68,86,69,82,83,73,79,78
	,58,32}
};
static struct BBString_17 _s548={
	&bbStringClass,
	0x63b0662370c7b8ec,
	17,
	{32,67,72,85,78,75,95,80,69,82,67,69,78,84,70,58,32
}
};
static struct BBString_17 _s547={
	&bbStringClass,
	0xa5fb0a2e85121ece,
	17,
	{32,67,72,85,78,75,95,80,69,82,67,69,78,84,73,58,32
}
};
static struct BBString_14 _s550={
	&bbStringClass,
	0x24cff171d7f1a86c,
	14,
	{32,67,72,85,78,75,95,82,71,66,51,66,58,32}
};
static struct BBString_14 _s549={
	&bbStringClass,
	0x87229ca2c100caeb,
	14,
	{32,67,72,85,78,75,95,82,71,66,51,70,58,32}
};
static struct BBString_19 _s552={
	&bbStringClass,
	0xe24fd7670e00fcb2,
	19,
	{32,67,72,85,78,75,95,82,71,66,71,65,77,77,65,51,66
	,58,32}
};
static struct BBString_19 _s551={
	&bbStringClass,
	0xbb7883029464c43d,
	19,
	{32,67,72,85,78,75,95,82,71,66,71,65,77,77,65,51,70
	,58,32}
};
static struct BBString_18 _s142={
	&bbStringClass,
	0x5537e1223cb00900,
	18,
	{32,67,97,109,101,114,97,32,105,110,115,116,97,110,99,101,58
	,32}
};
static struct BBString_19 _s433={
	&bbStringClass,
	0x8ade6d08c4a6511a,
	19,
	{32,68,101,108,32,84,65,110,105,109,97,116,105,111,110,75,101
	,121,115}
};
static struct BBString_10 _s309={
	&bbStringClass,
	0x2efb6a1ebc4edebc,
	10,
	{32,68,101,108,32,84,66,111,110,101}
};
static struct BBString_11 _s418={
	&bbStringClass,
	0x6c857ec9b4d50536,
	11,
	{32,68,101,108,32,84,66,114,117,115,104}
};
static struct BBString_12 _s190={
	&bbStringClass,
	0xea92ec3e85c22cca,
	12,
	{32,68,101,108,32,84,67,97,109,101,114,97}
};
static struct BBString_12 _s141={
	&bbStringClass,
	0xf7cecb9784f76376,
	12,
	{32,68,101,108,32,84,69,110,116,105,116,121}
};
static struct BBString_11 _s217={
	&bbStringClass,
	0x884c2c683b2b8c1d,
	11,
	{32,68,101,108,32,84,76,105,103,104,116}
};
static struct BBString_12 _s660={
	&bbStringClass,
	0x6932425eb1604dc0,
	12,
	{32,68,101,108,32,84,77,97,116,80,116,114}
};
static struct BBString_10 _s245={
	&bbStringClass,
	0x579897606cfadd17,
	10,
	{32,68,101,108,32,84,77,101,115,104}
};
static struct BBString_11 _s220={
	&bbStringClass,
	0x40b4a7f3e4fb4756,
	11,
	{32,68,101,108,32,84,80,105,118,111,116}
};
static struct BBString_13 _s664={
	&bbStringClass,
	0xd6cc702fc78474f9,
	13,
	{32,68,101,108,32,84,81,117,97,116,80,116,114}
};
static struct BBString_12 _s262={
	&bbStringClass,
	0xf80f44461b850bf1,
	12,
	{32,68,101,108,32,84,83,112,114,105,116,101}
};
static struct BBString_13 _s360={
	&bbStringClass,
	0xf406dae0aee4d799,
	13,
	{32,68,101,108,32,84,83,117,114,102,97,99,101}
};
static struct BBString_13 _s396={
	&bbStringClass,
	0x9d7f9e28f5b22efb,
	13,
	{32,68,101,108,32,84,84,101,120,116,117,114,101}
};
static struct BBString_12 _s639={
	&bbStringClass,
	0x352e4a3ae4769575,
	12,
	{32,68,101,108,32,84,86,101,99,80,116,114}
};
static struct BBString_6 _s516={
	&bbStringClass,
	0xabfd135cdc78d5,
	6,
	{32,68,105,114,58,32}
};
static struct BBString_5 _s438={
	&bbStringClass,
	0x4d7f4114c296c5f1,
	5,
	{32,68,105,114,61}
};
static struct BBString_18 _s48={
	&bbStringClass,
	0xa85023ae6428c37,
	18,
	{32,69,110,116,105,116,121,32,105,110,115,116,97,110,99,101,58
	,32}
};
static struct BBString_12 _s39={
	&bbStringClass,
	0x707bd32331fe4ba7,
	12,
	{32,70,66,79,32,99,114,101,97,116,101,100}
};
static struct BBString_13 _s47={
	&bbStringClass,
	0x400158ce3e7bad1f,
	13,
	{32,70,66,79,32,102,97,105,108,101,100,58,32}
};
static struct BBString_11 _s568={
	&bbStringClass,
	0x6a936ca094ffaf78,
	11,
	{32,70,105,108,101,110,97,109,101,58,32}
};
static struct BBString_9 _s1={
	&bbStringClass,
	0x40affb9421240f31,
	9,
	{32,71,108,111,98,97,108,58,32}
};
static struct BBString_12 _s681={
	&bbStringClass,
	0x2625d85418454d45,
	12,
	{32,72,101,105,103,104,116,77,97,112,58,32}
};
static struct BBString_16 _s682={
	&bbStringClass,
	0x34ae6463fd821e00,
	16,
	{32,72,101,105,103,104,116,77,97,112,58,32,78,117,108,108}
};
static struct BBString_22 _s40={
	&bbStringClass,
	0x3c7f06b0d1b9a436,
	22,
	{32,73,110,99,111,109,112,108,101,116,101,32,97,116,116,97,99
	,104,109,101,110,116}
};
static struct BBString_22 _s42={
	&bbStringClass,
	0xec7bec2e1bc4e9e4,
	22,
	{32,73,110,99,111,109,112,108,101,116,101,32,100,105,109,101,110
	,115,105,111,110,115}
};
static struct BBString_23 _s44={
	&bbStringClass,
	0xee3e3a27143eeef1,
	23,
	{32,73,110,99,111,109,112,108,101,116,101,32,100,114,97,119,32
	,98,117,102,102,101,114}
};
static struct BBString_19 _s43={
	&bbStringClass,
	0x6a0c4c453168866d,
	19,
	{32,73,110,99,111,109,112,108,101,116,101,32,102,111,114,109,97
	,116,115}
};
static struct BBString_23 _s45={
	&bbStringClass,
	0x8d6e77563d00ac,
	23,
	{32,73,110,99,111,109,112,108,101,116,101,32,114,101,97,100,32
	,98,117,102,102,101,114}
};
static struct BBString_9 _s770={
	&bbStringClass,
	0x5da1b233858331ce,
	9,
	{32,73,110,118,97,108,105,100,32}
};
static struct BBString_19 _s515={
	&bbStringClass,
	0x21ccc8bb5adc293e,
	19,
	{32,73,110,118,97,108,105,100,32,51,68,83,32,102,105,108,101
	,58,32}
};
static struct BBString_21 _s514={
	&bbStringClass,
	0x89874e10cb693e2d,
	21,
	{32,73,110,118,97,108,105,100,32,51,68,83,32,115,116,114,101
	,97,109,58,32}
};
static struct BBString_19 _s436={
	&bbStringClass,
	0xc5283c7920d4d6cc,
	19,
	{32,73,110,118,97,108,105,100,32,66,51,68,32,102,105,108,101
	,58,32}
};
static struct BBString_21 _s434={
	&bbStringClass,
	0x38a5af1e7ec3a541,
	21,
	{32,73,110,118,97,108,105,100,32,66,51,68,32,115,116,114,101
	,97,109,58,32}
};
static struct BBString_22 _s437={
	&bbStringClass,
	0xd1b3b953000d882a,
	22,
	{32,73,110,118,97,108,105,100,32,66,51,68,32,118,101,114,115
	,105,111,110,58,32}
};
static struct BBString_19 _s482={
	&bbStringClass,
	0x56945d33281d5b53,
	19,
	{32,73,110,118,97,108,105,100,32,77,68,50,32,102,105,108,101
	,58,32}
};
static struct BBString_21 _s481={
	&bbStringClass,
	0xe0a9379a7fafa335,
	21,
	{32,73,110,118,97,108,105,100,32,77,68,50,32,115,116,114,101
	,97,109,58,32}
};
static struct BBString_22 _s483={
	&bbStringClass,
	0x83791f4f6f0291a0,
	22,
	{32,73,110,118,97,108,105,100,32,77,68,50,32,118,101,114,115
	,105,111,110,58,32}
};
static struct BBString_22 _s688={
	&bbStringClass,
	0x9c954fafa50f849b,
	22,
	{32,73,110,118,97,108,105,100,32,115,104,97,100,101,114,32,102
	,105,108,101,58,32}
};
static struct BBString_25 _s402={
	&bbStringClass,
	0xf83de16b98b233f2,
	25,
	{32,73,110,118,97,108,105,100,32,116,101,120,116,117,114,101,32
	,115,116,114,101,97,109,58,32}
};
static struct BBString_17 _s199={
	&bbStringClass,
	0x7315282450546ca2,
	17,
	{32,76,105,103,104,116,32,105,110,115,116,97,110,99,101,58,32
}
};
static struct BBString_8 _s191={
	&bbStringClass,
	0x6209cbe160edf06c,
	8,
	{32,76,105,103,104,116,58,32}
};
static struct BBString_22 _s670={
	&bbStringClass,
	0xab6c3269311702ea,
	22,
	{32,76,111,97,100,65,110,105,109,77,101,115,104,32,102,97,105
	,108,101,100,58,32}
};
static struct BBString_18 _s669={
	&bbStringClass,
	0xb2d486c1f8962490,
	18,
	{32,76,111,97,100,77,101,115,104,32,102,97,105,108,101,100,58
	,32}
};
static struct BBString_20 _s521={
	&bbStringClass,
	0x80c59a109f4d7b97,
	20,
	{32,77,51,68,95,51,68,83,95,66,114,117,115,104,78,65,77
	,69,58,32}
};
static struct BBString_35 _s507={
	&bbStringClass,
	0xbe565d029643a20c,
	35,
	{32,77,51,68,95,51,68,83,95,70,65,67,69,76,73,83,84
	,58,32,84,114,105,97,110,103,108,101,67,111,117,110,116,32
	,61,32}
};
static struct BBString_34 _s510={
	&bbStringClass,
	0xbf40aa6eff8e22b0,
	34,
	{32,77,51,68,95,51,68,83,95,70,65,67,69,77,65,84,76
	,73,83,84,58,32,66,114,117,115,104,78,97,109,101,32,61
	,32}
};
static struct BBString_33 _s511={
	&bbStringClass,
	0x11be0481ed9d21a8,
	33,
	{32,77,51,68,95,51,68,83,95,77,65,80,70,73,76,69,78
	,65,77,69,58,32,70,105,108,101,110,97,109,101,32,61,32
}
};
static struct BBString_22 _s526={
	&bbStringClass,
	0x7cf4ccf172bf3954,
	22,
	{32,77,51,68,95,51,68,83,95,77,65,80,82,79,84,65,84
	,73,79,78,58,32}
};
static struct BBString_21 _s524={
	&bbStringClass,
	0x6089407422a45c6e,
	21,
	{32,77,51,68,95,51,68,83,95,77,65,80,85,79,70,70,83
	,69,84,58,32}
};
static struct BBString_20 _s523={
	&bbStringClass,
	0x91f2560a06cc7906,
	20,
	{32,77,51,68,95,51,68,83,95,77,65,80,85,83,67,65,76
	,69,58,32}
};
static struct BBString_21 _s525={
	&bbStringClass,
	0x97e95af95b193808,
	21,
	{32,77,51,68,95,51,68,83,95,77,65,80,86,79,70,70,83
	,69,84,58,32}
};
static struct BBString_20 _s522={
	&bbStringClass,
	0x2fec29324d542d87,
	20,
	{32,77,51,68,95,51,68,83,95,77,65,80,86,83,67,65,76
	,69,58,32}
};
static struct BBString_22 _s520={
	&bbStringClass,
	0x9eb49e35156cdaa3,
	22,
	{32,77,51,68,95,51,68,83,95,79,66,74,69,67,84,66,76
	,79,67,75,58,32}
};
static struct BBString_33 _s508={
	&bbStringClass,
	0x38ff81885bcdd1d7,
	33,
	{32,77,51,68,95,51,68,83,95,84,69,88,67,79,79,82,68
	,83,58,32,67,111,111,114,100,67,111,117,110,116,32,61,32
}
};
static struct BBString_20 _s509={
	&bbStringClass,
	0x44af1f20ea5cbe27,
	20,
	{32,77,51,68,95,51,68,83,95,84,82,65,78,83,77,65,84
	,82,73,88}
};
static struct BBString_33 _s513={
	&bbStringClass,
	0x6d13be5970ffc46c,
	33,
	{32,77,51,68,95,51,68,83,95,84,82,73,77,69,83,72,58
	,32,67,104,101,99,107,83,117,114,102,97,99,101,32,61,32
}
};
static struct BBString_35 _s506={
	&bbStringClass,
	0x6a18d12ee137300,
	35,
	{32,77,51,68,95,51,68,83,95,86,69,82,84,69,88,76,73
	,83,84,58,32,86,101,114,116,101,120,67,111,117,110,116,32
	,61,32}
};
static struct BBString_14 _s558={
	&bbStringClass,
	0xfa1f4567178b6fea,
	14,
	{32,77,65,84,32,84,69,88,32,110,97,109,101,61}
};
static struct BBString_11 _s478={
	&bbStringClass,
	0xd5bc121f25d6cdcd,
	11,
	{32,77,69,83,72,32,110,97,109,101,61}
};
static struct BBString_18 _s642={
	&bbStringClass,
	0x95ad7979e98a51b7,
	18,
	{32,77,97,116,114,105,120,32,105,110,115,116,97,110,99,101,58
	,32}
};
static struct BBString_16 _s221={
	&bbStringClass,
	0x37c4295fcfbb0ae8,
	16,
	{32,77,101,115,104,32,105,110,115,116,97,110,99,101,58,32}
};
static struct BBString_19 _s41={
	&bbStringClass,
	0xfc7ad131ac1f4fc5,
	19,
	{32,77,105,115,115,105,110,103,32,97,116,116,97,99,104,109,101
	,110,116}
};
static struct BBString_7 _s6={
	&bbStringClass,
	0x1b9428c010ad35f5,
	7,
	{32,77,111,100,101,58,32}
};
static struct BBString_11 _s7={
	&bbStringClass,
	0xe80b7c1c51b686ff,
	11,
	{32,77,111,100,101,58,32,78,117,108,108}
};
static struct BBString_19 _s432={
	&bbStringClass,
	0xcf094e681d1ea518,
	19,
	{32,78,101,119,32,84,65,110,105,109,97,116,105,111,110,75,101
	,121,115}
};
static struct BBString_10 _s308={
	&bbStringClass,
	0x70acf52cd4874db5,
	10,
	{32,78,101,119,32,84,66,111,110,101}
};
static struct BBString_11 _s417={
	&bbStringClass,
	0x3e3a3bdadb3a679e,
	11,
	{32,78,101,119,32,84,66,114,117,115,104}
};
static struct BBString_12 _s189={
	&bbStringClass,
	0x5e14b07bf3735591,
	12,
	{32,78,101,119,32,84,67,97,109,101,114,97}
};
static struct BBString_12 _s140={
	&bbStringClass,
	0x1db9c5f2e57ac458,
	12,
	{32,78,101,119,32,84,69,110,116,105,116,121}
};
static struct BBString_11 _s216={
	&bbStringClass,
	0xd9ef81a9ffbee74,
	11,
	{32,78,101,119,32,84,76,105,103,104,116}
};
static struct BBString_12 _s659={
	&bbStringClass,
	0x1563763aeb750a76,
	12,
	{32,78,101,119,32,84,77,97,116,80,116,114}
};
static struct BBString_10 _s244={
	&bbStringClass,
	0x7237f9b3053dcdca,
	10,
	{32,78,101,119,32,84,77,101,115,104}
};
static struct BBString_11 _s219={
	&bbStringClass,
	0x5602c0d66ba0b03e,
	11,
	{32,78,101,119,32,84,80,105,118,111,116}
};
static struct BBString_13 _s663={
	&bbStringClass,
	0x8c57b5a3c730efbb,
	13,
	{32,78,101,119,32,84,81,117,97,116,80,116,114}
};
static struct BBString_12 _s261={
	&bbStringClass,
	0x6de907d047060963,
	12,
	{32,78,101,119,32,84,83,112,114,105,116,101}
};
static struct BBString_13 _s359={
	&bbStringClass,
	0xf0a408e93c0a8926,
	13,
	{32,78,101,119,32,84,83,117,114,102,97,99,101}
};
static struct BBString_13 _s395={
	&bbStringClass,
	0x5ff3a9147411169,
	13,
	{32,78,101,119,32,84,84,101,120,116,117,114,101}
};
static struct BBString_12 _s638={
	&bbStringClass,
	0x81d019d60ad96087,
	12,
	{32,78,101,119,32,84,86,101,99,80,116,114}
};
static struct BBString_27 _s398={
	&bbStringClass,
	0xa03a4cc3c0a454d8,
	27,
	{32,78,111,32,112,105,120,109,97,112,32,116,101,120,116,117,114
	,101,32,108,111,97,100,101,100,58,32}
};
static struct BBString_15 _s683={
	&bbStringClass,
	0xa4d9a3c46ccf7243,
	15,
	{32,78,111,114,109,97,108,115,77,97,112,32,48,58,32}
};
static struct BBString_17 _s686={
	&bbStringClass,
	0x52f47b2ddf1b557,
	17,
	{32,78,111,114,109,97,108,115,77,97,112,58,32,78,117,108,108
}
};
static struct BBString_9 _s518={
	&bbStringClass,
	0xd451a8d0a3cd6dd6,
	9,
	{32,79,108,100,68,105,114,58,32}
};
static struct BBString_9 _s721={
	&bbStringClass,
	0x6ae2348e0565b94a,
	9,
	{32,80,97,114,101,110,116,58,32}
};
static struct BBString_7 _s617={
	&bbStringClass,
	0xe1188577713e7f81,
	7,
	{32,80,105,99,107,58,32}
};
static struct BBString_17 _s218={
	&bbStringClass,
	0x273a91fc9ec1745,
	17,
	{32,80,105,118,111,116,32,105,110,115,116,97,110,99,101,58,32
}
};
static struct BBString_8 _s204={
	&bbStringClass,
	0x72076398fabbd4b5,
	8,
	{32,82,97,110,103,101,58,32}
};
static struct BBString_12 _s205={
	&bbStringClass,
	0xcf8caf2da00f495,
	12,
	{32,82,97,110,103,101,58,32,78,117,108,108}
};
static struct BBString_9 _s713={
	&bbStringClass,
	0x912dd3a943c9d8f3,
	9,
	{32,82,101,110,100,101,114,58,32}
};
static struct BBString_13 _s714={
	&bbStringClass,
	0x27c08c7054d182b8,
	13,
	{32,82,101,110,100,101,114,58,32,78,117,108,108}
};
static struct BBString_14 _s672={
	&bbStringClass,
	0x304af73de5fc851e,
	14,
	{32,82,111,97,109,95,68,101,116,97,105,108,58,32}
};
static struct BBString_18 _s673={
	&bbStringClass,
	0x420b7339dab27351,
	18,
	{32,82,111,97,109,95,68,101,116,97,105,108,58,32,78,117,108
	,108}
};
static struct BBString_12 _s358={
	&bbStringClass,
	0x6f252f1fef5e9b33,
	12,
	{32,83,104,97,100,101,114,77,97,116,58,32}
};
static struct BBString_14 _s710={
	&bbStringClass,
	0x6c0bd62c52fdd7e5,
	14,
	{32,83,104,97,100,111,119,65,108,112,104,97,58,32}
};
static struct BBString_18 _s711={
	&bbStringClass,
	0x39193229ed93489e,
	18,
	{32,83,104,97,100,111,119,65,108,112,104,97,58,32,78,117,108
	,108}
};
static struct BBString_13 _s708={
	&bbStringClass,
	0x56bccffea0b44071,
	13,
	{32,83,104,97,100,111,119,66,108,117,101,58,32}
};
static struct BBString_17 _s709={
	&bbStringClass,
	0x65c38f26474526ca,
	17,
	{32,83,104,97,100,111,119,66,108,117,101,58,32,78,117,108,108
}
};
static struct BBString_14 _s706={
	&bbStringClass,
	0x33c4f519cb132a9e,
	14,
	{32,83,104,97,100,111,119,71,114,101,101,110,58,32}
};
static struct BBString_18 _s707={
	&bbStringClass,
	0x57aa98d88257de11,
	18,
	{32,83,104,97,100,111,119,71,114,101,101,110,58,32,78,117,108
	,108}
};
static struct BBString_13 _s722={
	&bbStringClass,
	0xa52197e353aca0bc,
	13,
	{32,83,104,97,100,111,119,77,101,115,104,58,32}
};
static struct BBString_24 _s712={
	&bbStringClass,
	0xb0827fc9d33d7bb0,
	24,
	{32,83,104,97,100,111,119,79,98,106,101,99,116,32,105,110,115
	,116,97,110,99,101,58,32}
};
static struct BBString_15 _s689={
	&bbStringClass,
	0x849f2cbb3404bffa,
	15,
	{32,83,104,97,100,111,119,79,98,106,101,99,116,58,32}
};
static struct BBString_12 _s704={
	&bbStringClass,
	0x59b7908ee8d01bf2,
	12,
	{32,83,104,97,100,111,119,82,101,100,58,32}
};
static struct BBString_16 _s705={
	&bbStringClass,
	0xe38ca6434cb17edf,
	16,
	{32,83,104,97,100,111,119,82,101,100,58,32,78,117,108,108}
};
static struct BBString_18 _s16={
	&bbStringClass,
	0x88bf588074c57936,
	18,
	{32,83,104,97,100,111,119,115,95,101,110,97,98,108,101,100,58
	,32}
};
static struct BBString_22 _s17={
	&bbStringClass,
	0x891a284170413b75,
	22,
	{32,83,104,97,100,111,119,115,95,101,110,97,98,108,101,100,58
	,32,78,117,108,108}
};
static struct BBString_7 _s517={
	&bbStringClass,
	0x5a04ea878a3a4772,
	7,
	{32,83,105,122,101,58,32}
};
static struct BBString_18 _s246={
	&bbStringClass,
	0xdcda0de7a73dc5d8,
	18,
	{32,83,112,114,105,116,101,32,105,110,115,116,97,110,99,101,58
	,32}
};
static struct BBString_9 _s715={
	&bbStringClass,
	0xa1fccbd815709fd1,
	9,
	{32,83,116,97,116,105,99,58,32}
};
static struct BBString_13 _s716={
	&bbStringClass,
	0xa1de8e48a82c944e,
	13,
	{32,83,116,97,116,105,99,58,32,78,117,108,108}
};
static struct BBString_19 _s310={
	&bbStringClass,
	0xc903a5849587e086,
	19,
	{32,83,117,114,102,97,99,101,32,105,110,115,116,97,110,99,101
	,58,32}
};
static struct BBString_25 _s527={
	&bbStringClass,
	0xcf5e8be8ba589593,
	25,
	{32,83,117,114,102,97,99,101,58,32,67,104,101,99,107,83,117
	,114,102,97,99,101,32,61,32}
};
static struct BBString_15 _s479={
	&bbStringClass,
	0xe17eb977816f360d,
	15,
	{32,84,82,73,83,32,110,111,95,118,101,114,116,115,61}
};
static struct BBString_19 _s674={
	&bbStringClass,
	0x462d3f55f4f6df0c,
	19,
	{32,84,101,114,114,97,105,110,32,105,110,115,116,97,110,99,101
	,58,32}
};
static struct BBString_10 _s671={
	&bbStringClass,
	0xa2b7d69b5da0e885,
	10,
	{32,84,101,114,114,97,105,110,58,32}
};
static struct BBString_11 _s512={
	&bbStringClass,
	0x8896d49566c57f9d,
	11,
	{32,84,101,120,110,97,109,101,32,61,32}
};
static struct BBString_25 _s397={
	&bbStringClass,
	0x5a8294a7fd842023,
	25,
	{32,84,101,120,116,117,114,101,32,97,108,114,101,97,100,121,32
	,101,120,105,115,116,115,58,32}
};
static struct BBString_19 _s361={
	&bbStringClass,
	0xe1ff124595f6da55,
	19,
	{32,84,101,120,116,117,114,101,32,105,110,115,116,97,110,99,101
	,58,32}
};
static struct BBString_22 _s46={
	&bbStringClass,
	0xe90c6b1dfc9335b6,
	22,
	{32,84,121,112,101,32,105,115,32,110,111,116,32,115,117,112,112
	,111,114,116,101,100}
};
static struct BBString_11 _s717={
	&bbStringClass,
	0x2a77dfc85b714f8,
	11,
	{32,86,67,114,101,97,116,101,100,58,32}
};
static struct BBString_15 _s718={
	&bbStringClass,
	0xbe4b4fe2098543f0,
	15,
	{32,86,67,114,101,97,116,101,100,58,32,78,117,108,108}
};
static struct BBString_12 _s467={
	&bbStringClass,
	0xb4847114ccb8214d,
	12,
	{32,86,82,84,83,91,48,93,58,32,117,61}
};
static struct BBString_11 _s161={
	&bbStringClass,
	0x8ff63440a6b77fde,
	11,
	{32,86,105,101,119,112,111,114,116,58,32}
};
static struct BBString_10 _s162={
	&bbStringClass,
	0xdad0fd2fd3ee997f,
	10,
	{32,86,105,101,119,112,111,114,116,91}
};
static struct BBString_15 _s696={
	&bbStringClass,
	0x9fbbc7731e8d6432,
	15,
	{32,86,111,108,117,109,101,76,101,110,103,116,104,58,32}
};
static struct BBString_19 _s697={
	&bbStringClass,
	0x506397bbda7d00ed,
	19,
	{32,86,111,108,117,109,101,76,101,110,103,116,104,58,32,78,117
	,108,108}
};
static struct BBString_9 _s644={
	&bbStringClass,
	0x79277bf12c1750c1,
	9,
	{32,91,48,44,49,93,32,61,32}
};
static struct BBString_9 _s645={
	&bbStringClass,
	0xac7c54bc60b8ed83,
	9,
	{32,91,48,44,50,93,32,61,32}
};
static struct BBString_9 _s646={
	&bbStringClass,
	0x50b95c737df4dea,
	9,
	{32,91,48,44,51,93,32,61,32}
};
static struct BBString_9 _s648={
	&bbStringClass,
	0x43b9a98d24759e14,
	9,
	{32,91,49,44,49,93,32,61,32}
};
static struct BBString_9 _s649={
	&bbStringClass,
	0xa150923fa5885d79,
	9,
	{32,91,49,44,50,93,32,61,32}
};
static struct BBString_9 _s650={
	&bbStringClass,
	0x74603bbb98ff581,
	9,
	{32,91,49,44,51,93,32,61,32}
};
static struct BBString_7 _s313={
	&bbStringClass,
	0x4fb901e61f731405,
	7,
	{32,91,49,93,32,61,32}
};
static struct BBString_9 _s652={
	&bbStringClass,
	0x2ab9bcdef4c619f3,
	9,
	{32,91,50,44,49,93,32,61,32}
};
static struct BBString_9 _s653={
	&bbStringClass,
	0x325fa69d350af97c,
	9,
	{32,91,50,44,50,93,32,61,32}
};
static struct BBString_9 _s654={
	&bbStringClass,
	0x33c1440a310a66f3,
	9,
	{32,91,50,44,51,93,32,61,32}
};
static struct BBString_7 _s314={
	&bbStringClass,
	0x3f74e18e17ca48e,
	7,
	{32,91,50,93,32,61,32}
};
static struct BBString_9 _s656={
	&bbStringClass,
	0xdfe3d3ec3b11bc16,
	9,
	{32,91,51,44,49,93,32,61,32}
};
static struct BBString_9 _s657={
	&bbStringClass,
	0x1d83357a3a10fa7b,
	9,
	{32,91,51,44,50,93,32,61,32}
};
static struct BBString_9 _s658={
	&bbStringClass,
	0xf92117534d787c10,
	9,
	{32,91,51,44,51,93,32,61,32}
};
static struct BBString_4 _s762={
	&bbStringClass,
	0xd9498b2c36201868,
	4,
	{32,97,58,32}
};
static struct BBString_8 _s763={
	&bbStringClass,
	0x341564d550217471,
	8,
	{32,97,58,32,78,117,108,108}
};
static struct BBString_6 _s756={
	&bbStringClass,
	0x652b7445747b6208,
	6,
	{32,97,99,116,58,32}
};
static struct BBString_10 _s757={
	&bbStringClass,
	0x941b1d33e7000fd4,
	10,
	{32,97,99,116,58,32,78,117,108,108}
};
static struct BBString_8 _s411={
	&bbStringClass,
	0x1466d7c2d3c044c3,
	8,
	{32,97,108,112,104,97,58,32}
};
static struct BBString_12 _s412={
	&bbStringClass,
	0x8b4df8dd5ad4498c,
	12,
	{32,97,108,112,104,97,58,32,78,117,108,108}
};
static struct BBString_15 _s20={
	&bbStringClass,
	0xc739ab53995d80bb,
	15,
	{32,97,108,112,104,97,95,101,110,97,98,108,101,58,32}
};
static struct BBString_19 _s21={
	&bbStringClass,
	0x2bd24ef604e435af,
	19,
	{32,97,108,112,104,97,95,101,110,97,98,108,101,58,32,78,117
	,108,108}
};
static struct BBString_14 _s109={
	&bbStringClass,
	0x1ec2eb0badc0e7b5,
	14,
	{32,97,108,112,104,97,95,111,114,100,101,114,58,32}
};
static struct BBString_18 _s110={
	&bbStringClass,
	0x948617adfdd3a905,
	18,
	{32,97,108,112,104,97,95,111,114,100,101,114,58,32,78,117,108
	,108}
};
static struct BBString_15 _s32={
	&bbStringClass,
	0x4e21d371a142e205,
	15,
	{32,97,109,98,105,101,110,116,95,98,108,117,101,58,32}
};
static struct BBString_19 _s33={
	&bbStringClass,
	0x4c9f55dc7a8683af,
	19,
	{32,97,109,98,105,101,110,116,95,98,108,117,101,58,32,78,117
	,108,108}
};
static struct BBString_16 _s30={
	&bbStringClass,
	0xf5dd58e6f3b0025f,
	16,
	{32,97,109,98,105,101,110,116,95,103,114,101,101,110,58,32}
};
static struct BBString_20 _s31={
	&bbStringClass,
	0x76092cd8e19224ce,
	20,
	{32,97,109,98,105,101,110,116,95,103,114,101,101,110,58,32,78
	,117,108,108}
};
static struct BBString_14 _s28={
	&bbStringClass,
	0x3e4e977725cd1da0,
	14,
	{32,97,109,98,105,101,110,116,95,114,101,100,58,32}
};
static struct BBString_18 _s29={
	&bbStringClass,
	0xf5f60078fe997bf2,
	18,
	{32,97,109,98,105,101,110,116,95,114,101,100,58,32,78,117,108
	,108}
};
static struct BBString_17 _s38={
	&bbStringClass,
	0x9363ffad3e354d83,
	17,
	{32,97,109,98,105,101,110,116,95,115,104,97,100,101,114,58,32
}
};
static struct BBString_8 _s251={
	&bbStringClass,
	0x7dd9c74c38ca254c,
	8,
	{32,97,110,103,108,101,58,32}
};
static struct BBString_12 _s252={
	&bbStringClass,
	0x7198a259002df327,
	12,
	{32,97,110,103,108,101,58,32,78,117,108,108}
};
static struct BBString_7 _s53={
	&bbStringClass,
	0xac66df9d9aa2ed2f,
	7,
	{32,97,110,105,109,58,32}
};
static struct BBString_11 _s54={
	&bbStringClass,
	0xd4e49f540885394,
	11,
	{32,97,110,105,109,58,32,78,117,108,108}
};
static struct BBString_11 _s63={
	&bbStringClass,
	0xc325a6d74e7cb324,
	11,
	{32,97,110,105,109,95,100,105,114,58,32}
};
static struct BBString_15 _s64={
	&bbStringClass,
	0x868acbf439aec3be,
	15,
	{32,97,110,105,109,95,100,105,114,58,32,78,117,108,108}
};
static struct BBString_12 _s73={
	&bbStringClass,
	0x5b2f2ed3503bf059,
	12,
	{32,97,110,105,109,95,108,105,115,116,58,32}
};
static struct BBString_16 _s74={
	&bbStringClass,
	0x7d71ed98adad1316,
	16,
	{32,97,110,105,109,95,108,105,115,116,58,32,78,117,108,108}
};
static struct BBString_12 _s57={
	&bbStringClass,
	0x8d1cc0ad27ae28a0,
	12,
	{32,97,110,105,109,95,109,111,100,101,58,32}
};
static struct BBString_16 _s58={
	&bbStringClass,
	0xf571e3da82d37871,
	16,
	{32,97,110,105,109,95,109,111,100,101,58,32,78,117,108,108}
};
static struct BBString_14 _s55={
	&bbStringClass,
	0x326f35c531201bb7,
	14,
	{32,97,110,105,109,95,114,101,110,100,101,114,58,32}
};
static struct BBString_18 _s56={
	&bbStringClass,
	0x18209b8b5e8b0e04,
	18,
	{32,97,110,105,109,95,114,101,110,100,101,114,58,32,78,117,108
	,108}
};
static struct BBString_11 _s59={
	&bbStringClass,
	0x74dba11716981e87,
	11,
	{32,97,110,105,109,95,115,101,113,58,32}
};
static struct BBString_15 _s60={
	&bbStringClass,
	0x4cbce2a1618426ef,
	15,
	{32,97,110,105,109,95,115,101,113,58,32,78,117,108,108}
};
static struct BBString_18 _s65={
	&bbStringClass,
	0xb21d41c955673021,
	18,
	{32,97,110,105,109,95,115,101,113,115,95,102,105,114,115,116,58
	,32}
};
static struct BBString_22 _s66={
	&bbStringClass,
	0xd7cff97382deb495,
	22,
	{32,97,110,105,109,95,115,101,113,115,95,102,105,114,115,116,58
	,32,78,117,108,108}
};
static struct BBString_17 _s67={
	&bbStringClass,
	0xb2b136aca3db7419,
	17,
	{32,97,110,105,109,95,115,101,113,115,95,108,97,115,116,58,32
}
};
static struct BBString_21 _s68={
	&bbStringClass,
	0xc76aced752657403,
	21,
	{32,97,110,105,109,95,115,101,113,115,95,108,97,115,116,58,32
	,78,117,108,108}
};
static struct BBString_13 _s34={
	&bbStringClass,
	0x7aaaacc3150bde0c,
	13,
	{32,97,110,105,109,95,115,112,101,101,100,58,32}
};
static struct BBString_17 _s35={
	&bbStringClass,
	0xc5f8cc97aab8c0c3,
	17,
	{32,97,110,105,109,95,115,112,101,101,100,58,32,78,117,108,108
}
};
static struct BBString_17 _s242={
	&bbStringClass,
	0x371cae61bb079877,
	17,
	{32,97,110,105,109,95,115,117,114,102,95,108,105,115,116,58,32
}
};
static struct BBString_12 _s113={
	&bbStringClass,
	0x1fe29367aeb6de4a,
	12,
	{32,97,110,105,109,95,116,105,109,101,58,32}
};
static struct BBString_16 _s114={
	&bbStringClass,
	0x939f8c0c5f97ce8d,
	16,
	{32,97,110,105,109,95,116,105,109,101,58,32,78,117,108,108}
};
static struct BBString_13 _s61={
	&bbStringClass,
	0x6635c6ad281e9ab3,
	13,
	{32,97,110,105,109,95,116,114,97,110,115,58,32}
};
static struct BBString_17 _s62={
	&bbStringClass,
	0x7f658c18f59ff958,
	17,
	{32,97,110,105,109,95,116,114,97,110,115,58,32,78,117,108,108
}
};
static struct BBString_14 _s71={
	&bbStringClass,
	0x47f38a79d4603767,
	14,
	{32,97,110,105,109,95,117,112,100,97,116,101,58,32}
};
static struct BBString_18 _s72={
	&bbStringClass,
	0x935e6ef786b2946,
	18,
	{32,97,110,105,109,95,117,112,100,97,116,101,58,32,78,117,108
	,108}
};
static struct BBString_4 _s764={
	&bbStringClass,
	0x60faa9a7acca02a0,
	4,
	{32,98,58,32}
};
static struct BBString_8 _s765={
	&bbStringClass,
	0x876f683d86087676,
	8,
	{32,98,58,32,78,117,108,108}
};
static struct BBString_11 _s456={
	&bbStringClass,
	0xd3a430a69b25b378,
	11,
	{32,98,95,110,111,95,116,101,120,115,61}
};
static struct BBString_10 _s458={
	&bbStringClass,
	0xcd46fedb9b499d41,
	10,
	{32,98,95,116,101,120,95,105,100,61}
};
static struct BBString_8 _s364={
	&bbStringClass,
	0x2e2edc47a9e324df,
	8,
	{32,98,108,101,110,100,58,32}
};
static struct BBString_12 _s365={
	&bbStringClass,
	0x746b4edb9e51c72f,
	12,
	{32,98,108,101,110,100,58,32,78,117,108,108}
};
static struct BBString_7 _s448={
	&bbStringClass,
	0xacfa1d2050c4cb7e,
	7,
	{32,98,108,101,110,100,61}
};
static struct BBString_13 _s22={
	&bbStringClass,
	0xcb84bd65300036e,
	13,
	{32,98,108,101,110,100,95,109,111,100,101,58,32}
};
static struct BBString_17 _s23={
	&bbStringClass,
	0xafb3de6c3b2e4a41,
	17,
	{32,98,108,101,110,100,95,109,111,100,101,58,32,78,117,108,108
}
};
static struct BBString_7 _s210={
	&bbStringClass,
	0x3edbd83e3090308b,
	7,
	{32,98,108,117,101,58,32}
};
static struct BBString_11 _s211={
	&bbStringClass,
	0x243013fd49aec6c0,
	11,
	{32,98,108,117,101,58,32,78,117,108,108}
};
static struct BBString_13 _s243={
	&bbStringClass,
	0xb9a601cced580dd,
	13,
	{32,98,111,110,101,115,32,108,105,115,116,58,32}
};
static struct BBString_8 _s129={
	&bbStringClass,
	0x13559887f32e06ec,
	8,
	{32,98,111,120,95,100,58,32}
};
static struct BBString_12 _s130={
	&bbStringClass,
	0xc640415894e4bd41,
	12,
	{32,98,111,120,95,100,58,32,78,117,108,108}
};
static struct BBString_8 _s127={
	&bbStringClass,
	0x2145834dad3ddde,
	8,
	{32,98,111,120,95,104,58,32}
};
static struct BBString_12 _s128={
	&bbStringClass,
	0xa3d2b6671776b699,
	12,
	{32,98,111,120,95,104,58,32,78,117,108,108}
};
static struct BBString_8 _s125={
	&bbStringClass,
	0x3b7f3e91c7e40d91,
	8,
	{32,98,111,120,95,119,58,32}
};
static struct BBString_12 _s126={
	&bbStringClass,
	0xc4fba3a06b6e745c,
	12,
	{32,98,111,120,95,119,58,32,78,117,108,108}
};
static struct BBString_8 _s119={
	&bbStringClass,
	0x7ccf1948d09453c5,
	8,
	{32,98,111,120,95,120,58,32}
};
static struct BBString_12 _s120={
	&bbStringClass,
	0x9615b5893dfffd3e,
	12,
	{32,98,111,120,95,120,58,32,78,117,108,108}
};
static struct BBString_8 _s121={
	&bbStringClass,
	0x6b67529b0001df3a,
	8,
	{32,98,111,120,95,121,58,32}
};
static struct BBString_12 _s122={
	&bbStringClass,
	0x8070c209d4c304f2,
	12,
	{32,98,111,120,95,121,58,32,78,117,108,108}
};
static struct BBString_8 _s123={
	&bbStringClass,
	0xfa0e28043580e988,
	8,
	{32,98,111,120,95,122,58,32}
};
static struct BBString_12 _s124={
	&bbStringClass,
	0x2676ea672d2169f0,
	12,
	{32,98,111,120,95,122,58,32,78,117,108,108}
};
static struct BBString_8 _s138={
	&bbStringClass,
	0x59e352a27ad59d4f,
	8,
	{32,98,114,117,115,104,58,32}
};
static struct BBString_10 _s463={
	&bbStringClass,
	0x1e41443b6977804d,
	10,
	{32,98,114,117,115,104,95,105,100,61}
};
static struct BBString_10 _s457={
	&bbStringClass,
	0xdc508f164e869b6c,
	10,
	{32,98,114,117,115,104,95,110,111,61}
};
static struct BBString_4 _s766={
	&bbStringClass,
	0xb8c147a6be2ef768,
	4,
	{32,99,58,32}
};
static struct BBString_8 _s767={
	&bbStringClass,
	0x1696edbe8b14c7cf,
	8,
	{32,99,58,32,78,117,108,108}
};
static struct BBString_14 _s409={
	&bbStringClass,
	0xb693d53d93775567,
	14,
	{32,99,97,99,104,101,95,102,114,97,109,101,58,32}
};
static struct BBString_13 _s410={
	&bbStringClass,
	0x83928a18aa2b972,
	13,
	{32,99,97,99,104,101,95,102,114,97,109,101,91}
};
static struct BBString_16 _s37={
	&bbStringClass,
	0xaf69ff8f80cf64ea,
	16,
	{32,99,97,109,101,114,97,95,105,110,95,117,115,101,58,32}
};
static struct BBString_14 _s200={
	&bbStringClass,
	0x8a0b4dde02051563,
	14,
	{32,99,97,115,116,95,115,104,97,100,111,119,58,32}
};
static struct BBString_18 _s201={
	&bbStringClass,
	0x49dccd7f3af25158,
	18,
	{32,99,97,115,116,95,115,104,97,100,111,119,58,32,78,117,108
	,108}
};
static struct BBString_13 _s139={
	&bbStringClass,
	0x828e47c2753e0315,
	13,
	{32,99,104,105,108,100,95,108,105,115,116,58,32}
};
static struct BBString_13 _s133={
	&bbStringClass,
	0x9dcd848d73905681,
	13,
	{32,99,108,97,115,115,95,110,97,109,101,58,32}
};
static struct BBString_17 _s134={
	&bbStringClass,
	0x77361be1662a26a6,
	17,
	{32,99,108,97,115,115,95,110,97,109,101,58,32,78,117,108,108
}
};
static struct BBString_8 _s168={
	&bbStringClass,
	0x493d86bff5f946f,
	8,
	{32,99,108,115,95,98,58,32}
};
static struct BBString_12 _s169={
	&bbStringClass,
	0x2f8ee12f2be0d570,
	12,
	{32,99,108,115,95,98,58,32,78,117,108,108}
};
static struct BBString_12 _s143={
	&bbStringClass,
	0xb24c569c4d6317e4,
	12,
	{32,99,108,115,95,99,111,108,111,114,58,32}
};
static struct BBString_16 _s144={
	&bbStringClass,
	0xaedcbd834d8fd5ac,
	16,
	{32,99,108,115,95,99,111,108,111,114,58,32,78,117,108,108}
};
static struct BBString_8 _s166={
	&bbStringClass,
	0xc55f0d291625a2cd,
	8,
	{32,99,108,115,95,103,58,32}
};
static struct BBString_12 _s167={
	&bbStringClass,
	0xa03a7edaab708746,
	12,
	{32,99,108,115,95,103,58,32,78,117,108,108}
};
static struct BBString_8 _s164={
	&bbStringClass,
	0x6368ee5aad75ae9,
	8,
	{32,99,108,115,95,114,58,32}
};
static struct BBString_12 _s165={
	&bbStringClass,
	0x4441a9c2df6cb2af,
	12,
	{32,99,108,115,95,114,58,32,78,117,108,108}
};
static struct BBString_14 _s145={
	&bbStringClass,
	0x34cccd332caff17f,
	14,
	{32,99,108,115,95,122,98,117,102,102,101,114,58,32}
};
static struct BBString_18 _s146={
	&bbStringClass,
	0xc74b4839728507c5,
	18,
	{32,99,108,115,95,122,98,117,102,102,101,114,58,32,78,117,108
	,108}
};
static struct BBString_11 _s719={
	&bbStringClass,
	0x52bc77b81854b5fa,
	11,
	{32,99,110,116,95,116,114,105,115,58,32}
};
static struct BBString_15 _s720={
	&bbStringClass,
	0xa4094375270fd716,
	15,
	{32,99,110,116,95,116,114,105,115,58,32,78,117,108,108}
};
static struct BBString_17 _s75={
	&bbStringClass,
	0x97c76a0d282c7c1d,
	17,
	{32,99,111,108,108,105,115,105,111,110,95,116,121,112,101,58,32
}
};
static struct BBString_21 _s76={
	&bbStringClass,
	0x8f0dacd5be7bb6f5,
	21,
	{32,99,111,108,108,105,115,105,111,110,95,116,121,112,101,58,32
	,78,117,108,108}
};
static struct BBString_9 _s366={
	&bbStringClass,
	0x420a51400676221f,
	9,
	{32,99,111,111,114,100,115,58,32}
};
static struct BBString_13 _s367={
	&bbStringClass,
	0x2016d226e6e3c59d,
	13,
	{32,99,111,111,114,100,115,58,32,78,117,108,108}
};
static struct BBString_6 _s469={
	&bbStringClass,
	0xddce0b01e3d133cc,
	6,
	{32,99,115,101,116,61}
};
static struct BBString_12 _s370={
	&bbStringClass,
	0x6dfb04f10f7e4238,
	12,
	{32,99,117,98,101,95,102,97,99,101,58,32}
};
static struct BBString_16 _s371={
	&bbStringClass,
	0x6672d6b83d8f6d7,
	16,
	{32,99,117,98,101,95,102,97,99,101,58,32,78,117,108,108}
};
static struct BBString_12 _s372={
	&bbStringClass,
	0x80b998c97556cdb3,
	12,
	{32,99,117,98,101,95,109,111,100,101,58,32}
};
static struct BBString_16 _s373={
	&bbStringClass,
	0xa0599ea133e8fcf5,
	16,
	{32,99,117,98,101,95,109,111,100,101,58,32,78,117,108,108}
};
static struct BBString_14 _s111={
	&bbStringClass,
	0x55fe9b48c8d587ea,
	14,
	{32,99,117,108,108,95,114,97,100,105,117,115,58,32}
};
static struct BBString_18 _s112={
	&bbStringClass,
	0x3a74211c2bbd39a3,
	18,
	{32,99,117,108,108,95,114,97,100,105,117,115,58,32,78,117,108
	,108}
};
static struct BBString_8 _s8={
	&bbStringClass,
	0x47ee8d984e9968c,
	8,
	{32,100,101,112,116,104,58,32}
};
static struct BBString_12 _s9={
	&bbStringClass,
	0x437372f5aff13d86,
	12,
	{32,100,101,112,116,104,58,32,78,117,108,108}
};
static struct BBString_9 _s758={
	&bbStringClass,
	0x13b181035f803c0a,
	9,
	{32,101,110,100,97,99,116,58,32}
};
static struct BBString_13 _s759={
	&bbStringClass,
	0x92fdded92a0c281d,
	13,
	{32,101,110,100,97,99,116,58,32,78,117,108,108}
};
static struct BBString_6 _s768={
	&bbStringClass,
	0xf17d0fee65937566,
	6,
	{32,101,110,116,58,32}
};
static struct BBString_11 _s687={
	&bbStringClass,
	0x6a3cb23a1e6ecc09,
	11,
	{32,101,121,101,112,111,105,110,116,58,32}
};
static struct BBString_11 _s439={
	&bbStringClass,
	0x777cfbb929c7f322,
	11,
	{32,102,105,108,101,46,115,105,122,101,61}
};
static struct BBString_7 _s391={
	&bbStringClass,
	0xf7dc06293dc108e8,
	7,
	{32,102,105,108,101,58,32}
};
static struct BBString_11 _s392={
	&bbStringClass,
	0x7581d90444c2996e,
	11,
	{32,102,105,108,101,58,32,78,117,108,108}
};
static struct BBString_6 _s446={
	&bbStringClass,
	0x4cb14e6406baf82f,
	6,
	{32,102,105,108,101,61}
};
static struct BBString_11 _s393={
	&bbStringClass,
	0xf002bb8a3e55ab83,
	11,
	{32,102,105,108,101,95,97,98,115,58,32}
};
static struct BBString_15 _s394={
	&bbStringClass,
	0x8b73f6414ec6a50,
	15,
	{32,102,105,108,101,95,97,98,115,58,32,78,117,108,108}
};
static struct BBString_8 _s362={
	&bbStringClass,
	0xc0bafaf549b66fe,
	8,
	{32,102,108,97,103,115,58,32}
};
static struct BBString_12 _s363={
	&bbStringClass,
	0x50251ff2268731b7,
	12,
	{32,102,108,97,103,115,58,32,78,117,108,108}
};
static struct BBString_7 _s447={
	&bbStringClass,
	0x96b3e2d0e8308772,
	7,
	{32,102,108,97,103,115,61}
};
static struct BBString_12 _s421={
	&bbStringClass,
	0x534be0a69f63e8db,
	12,
	{32,102,108,97,103,115,91,48,93,32,61,32}
};
static struct BBString_8 _s180={
	&bbStringClass,
	0x50ebd0d8ee3dc578,
	8,
	{32,102,111,103,95,98,58,32}
};
static struct BBString_12 _s181={
	&bbStringClass,
	0x5f379fbbd59cfb3e,
	12,
	{32,102,111,103,95,98,58,32,78,117,108,108}
};
static struct BBString_14 _s18={
	&bbStringClass,
	0x9bc884f6dd88838b,
	14,
	{32,102,111,103,95,101,110,97,98,108,101,100,58,32}
};
static struct BBString_18 _s19={
	&bbStringClass,
	0xd9ee798ab9fe4ef5,
	18,
	{32,102,111,103,95,101,110,97,98,108,101,100,58,32,78,117,108
	,108}
};
static struct BBString_8 _s178={
	&bbStringClass,
	0x181d54dfa0ed54a8,
	8,
	{32,102,111,103,95,103,58,32}
};
static struct BBString_12 _s179={
	&bbStringClass,
	0x1185c8bede39debd,
	12,
	{32,102,111,103,95,103,58,32,78,117,108,108}
};
static struct BBString_11 _s157={
	&bbStringClass,
	0x2246f3725c21f154,
	11,
	{32,102,111,103,95,109,111,100,101,58,32}
};
static struct BBString_15 _s158={
	&bbStringClass,
	0x57d5b0f0ad75f87c,
	15,
	{32,102,111,103,95,109,111,100,101,58,32,78,117,108,108}
};
static struct BBString_8 _s176={
	&bbStringClass,
	0x17c45726060d98c3,
	8,
	{32,102,111,103,95,114,58,32}
};
static struct BBString_12 _s177={
	&bbStringClass,
	0xe50e917368313c2e,
	12,
	{32,102,111,103,95,114,58,32,78,117,108,108}
};
static struct BBString_16 _s184={
	&bbStringClass,
	0x217865ed1f114634,
	16,
	{32,102,111,103,95,114,97,110,103,101,95,102,97,114,58,32}
};
static struct BBString_20 _s185={
	&bbStringClass,
	0x57b262baed554826,
	20,
	{32,102,111,103,95,114,97,110,103,101,95,102,97,114,58,32,78
	,117,108,108}
};
static struct BBString_17 _s182={
	&bbStringClass,
	0xb065f36c70755e38,
	17,
	{32,102,111,103,95,114,97,110,103,101,95,110,101,97,114,58,32
}
};
static struct BBString_21 _s183={
	&bbStringClass,
	0xc2927331bda3566e,
	21,
	{32,102,111,103,95,114,97,110,103,101,95,110,101,97,114,58,32
	,78,117,108,108}
};
static struct BBString_5 _s474={
	&bbStringClass,
	0x64687815b722b7d7,
	5,
	{32,102,112,115,61}
};
static struct BBString_14 _s380={
	&bbStringClass,
	0x4ae91160b97071d6,
	14,
	{32,102,114,97,109,101,98,117,102,102,101,114,58,32}
};
static struct BBString_18 _s381={
	&bbStringClass,
	0xfd560deb928acb50,
	18,
	{32,102,114,97,109,101,98,117,102,102,101,114,91,48,93,32,61
	,32}
};
static struct BBString_9 _s378={
	&bbStringClass,
	0xa4ee30106ccf79a5,
	9,
	{32,102,114,97,109,101,115,58,32}
};
static struct BBString_13 _s420={
	&bbStringClass,
	0x34441ef16010af82,
	13,
	{32,102,114,97,109,101,115,58,32,78,117,108,108}
};
static struct BBString_8 _s473={
	&bbStringClass,
	0x39ea581b67d62a3,
	8,
	{32,102,114,97,109,101,115,61}
};
static struct BBString_8 _s379={
	&bbStringClass,
	0xdfa17e439d8c7df,
	8,
	{32,102,114,97,109,101,115,91}
};
static struct BBString_12 _s486={
	&bbStringClass,
	0xe7288f3d6fecf266,
	12,
	{32,102,114,97,109,101,115,105,122,101,58,32}
};
static struct BBString_10 _s188={
	&bbStringClass,
	0xafeb7dd253bb7d72,
	10,
	{32,102,114,117,115,116,117,109,58,32}
};
static struct BBString_6 _s24={
	&bbStringClass,
	0xc2805684de1c3ccc,
	6,
	{32,102,120,49,58,32}
};
static struct BBString_10 _s25={
	&bbStringClass,
	0x76a9b1961833a299,
	10,
	{32,102,120,49,58,32,78,117,108,108}
};
static struct BBString_6 _s26={
	&bbStringClass,
	0x800e5f688bfe71f4,
	6,
	{32,102,120,50,58,32}
};
static struct BBString_10 _s27={
	&bbStringClass,
	0x3e0fa418a5035284,
	10,
	{32,102,120,50,58,32,78,117,108,108}
};
static struct BBString_5 _s407={
	&bbStringClass,
	0x1314e3be9c17f53a,
	5,
	{32,102,120,58,32}
};
static struct BBString_9 _s408={
	&bbStringClass,
	0x2a99f5c110c83033,
	9,
	{32,102,120,58,32,78,117,108,108}
};
static struct BBString_4 _s455={
	&bbStringClass,
	0x93dc9ef69f91cfbd,
	4,
	{32,102,120,61}
};
static struct BBString_11 _s198={
	&bbStringClass,
	0x59c231f11768eed5,
	11,
	{32,103,108,95,108,105,103,104,116,58,32}
};
static struct BBString_8 _s382={
	&bbStringClass,
	0x47afd188359d62ff,
	8,
	{32,103,108,116,101,120,58,32}
};
static struct BBString_8 _s208={
	&bbStringClass,
	0x28e1601d6f0eb1dd,
	8,
	{32,103,114,101,101,110,58,32}
};
static struct BBString_12 _s209={
	&bbStringClass,
	0x660f3af9be61a6a5,
	12,
	{32,103,114,101,101,110,58,32,78,117,108,108}
};
static struct BBString_13 _s643={
	&bbStringClass,
	0x253a676a4f9ea4e5,
	13,
	{32,103,114,105,100,91,48,44,48,93,32,61,32}
};
static struct BBString_13 _s647={
	&bbStringClass,
	0xf2bf0dc47abbb2c6,
	13,
	{32,103,114,105,100,91,49,44,48,93,32,61,32}
};
static struct BBString_13 _s651={
	&bbStringClass,
	0x48dfba88d262dfaa,
	13,
	{32,103,114,105,100,91,50,44,48,93,32,61,32}
};
static struct BBString_13 _s655={
	&bbStringClass,
	0xc8c4f4872e7e3a7f,
	13,
	{32,103,114,105,100,91,51,44,48,93,32,61,32}
};
static struct BBString_11 _s257={
	&bbStringClass,
	0xde94753eeb6f85ab,
	11,
	{32,104,97,110,100,108,101,95,120,58,32}
};
static struct BBString_15 _s258={
	&bbStringClass,
	0x99227901c3304c63,
	15,
	{32,104,97,110,100,108,101,95,120,58,32,78,117,108,108}
};
static struct BBString_11 _s259={
	&bbStringClass,
	0xd21b0fef74701a2c,
	11,
	{32,104,97,110,100,108,101,95,121,58,32}
};
static struct BBString_15 _s260={
	&bbStringClass,
	0x75d3ebdd146d360c,
	15,
	{32,104,97,110,100,108,101,95,121,58,32,78,117,108,108}
};
static struct BBString_9 _s4={
	&bbStringClass,
	0x9a2a1bd266a67e9e,
	9,
	{32,104,101,105,103,104,116,58,32}
};
static struct BBString_13 _s5={
	&bbStringClass,
	0xd438dfaa662b8939,
	13,
	{32,104,101,105,103,104,116,58,32,78,117,108,108}
};
static struct BBString_7 _s51={
	&bbStringClass,
	0x77c9ac17e97c9cea,
	7,
	{32,104,105,100,101,58,32}
};
static struct BBString_11 _s52={
	&bbStringClass,
	0x47f9e9df7a22b4bc,
	11,
	{32,104,105,100,101,58,32,78,117,108,108}
};
static struct BBString_12 _s212={
	&bbStringClass,
	0x3a0197aa6ec612db,
	12,
	{32,105,110,110,101,114,95,97,110,103,58,32}
};
static struct BBString_16 _s213={
	&bbStringClass,
	0x35c11e2f9185d12a,
	16,
	{32,105,110,110,101,114,95,97,110,103,58,32,78,117,108,108}
};
static struct BBString_10 _s306={
	&bbStringClass,
	0xa22328d40d4bdb8d,
	10,
	{32,105,110,118,95,109,97,116,58,32}
};
static struct BBString_4 _s459={
	&bbStringClass,
	0x3916d1fc9ee5e575,
	4,
	{32,105,120,61}
};
static struct BBString_7 _s304={
	&bbStringClass,
	0xcb2f7dabc34986e3,
	7,
	{32,107,101,121,115,58,32}
};
static struct BBString_6 _s302={
	&bbStringClass,
	0xb1395a372aa84d7f,
	6,
	{32,107,113,119,58,32}
};
static struct BBString_10 _s303={
	&bbStringClass,
	0x3a54aa30353e3e23,
	10,
	{32,107,113,119,58,32,78,117,108,108}
};
static struct BBString_6 _s296={
	&bbStringClass,
	0x4a29204a0e064c31,
	6,
	{32,107,113,120,58,32}
};
static struct BBString_10 _s297={
	&bbStringClass,
	0x87b82b164b109e1c,
	10,
	{32,107,113,120,58,32,78,117,108,108}
};
static struct BBString_6 _s298={
	&bbStringClass,
	0xf41a94620c4b91e1,
	6,
	{32,107,113,121,58,32}
};
static struct BBString_10 _s299={
	&bbStringClass,
	0x9bde14372bd17e39,
	10,
	{32,107,113,121,58,32,78,117,108,108}
};
static struct BBString_6 _s300={
	&bbStringClass,
	0x9d608bf4f441c66a,
	6,
	{32,107,113,122,58,32}
};
static struct BBString_10 _s301={
	&bbStringClass,
	0xbf56f5643af515dd,
	10,
	{32,107,113,122,58,32,78,117,108,108}
};
static struct BBString_5 _s290={
	&bbStringClass,
	0x2b627a79af14cf4,
	5,
	{32,107,120,58,32}
};
static struct BBString_9 _s291={
	&bbStringClass,
	0xff0f9f0725d41d15,
	9,
	{32,107,120,58,32,78,117,108,108}
};
static struct BBString_5 _s292={
	&bbStringClass,
	0x62d19f9674e6ee79,
	5,
	{32,107,121,58,32}
};
static struct BBString_9 _s293={
	&bbStringClass,
	0x78e0c74d941417c,
	9,
	{32,107,121,58,32,78,117,108,108}
};
static struct BBString_5 _s294={
	&bbStringClass,
	0xe84556231e40dbc5,
	5,
	{32,107,122,58,32}
};
static struct BBString_9 _s295={
	&bbStringClass,
	0xeaa5d39b366cb852,
	9,
	{32,107,122,58,32,78,117,108,108}
};
static struct BBString_15 _s679={
	&bbStringClass,
	0x88349b0758bb87ab,
	15,
	{32,108,101,118,101,108,50,100,122,115,105,122,101,58,32}
};
static struct BBString_19 _s680={
	&bbStringClass,
	0x7ea552a15747fdc7,
	19,
	{32,108,101,118,101,108,50,100,122,115,105,122,101,58,32,78,117
	,108,108}
};
static struct BBString_11 _s760={
	&bbStringClass,
	0x3ac929a416abc027,
	11,
	{32,108,105,102,101,116,105,109,101,58,32}
};
static struct BBString_15 _s761={
	&bbStringClass,
	0x267c88078a43c7f9,
	15,
	{32,108,105,102,101,116,105,109,101,58,32,78,117,108,108}
};
static struct BBString_11 _s192={
	&bbStringClass,
	0x906a2c1cb158914e,
	11,
	{32,108,105,103,104,116,95,110,111,58,32}
};
static struct BBString_15 _s193={
	&bbStringClass,
	0xb7a5605bd1916f8c,
	15,
	{32,108,105,103,104,116,95,110,111,58,32,78,117,108,108}
};
static struct BBString_13 _s202={
	&bbStringClass,
	0x18a2a1969909cb1a,
	13,
	{32,108,105,103,104,116,95,116,121,112,101,58,32}
};
static struct BBString_17 _s203={
	&bbStringClass,
	0xc1b798e0308a162c,
	17,
	{32,108,105,103,104,116,95,116,121,112,101,58,32,78,117,108,108
}
};
static struct BBString_10 _s698={
	&bbStringClass,
	0xe7689bbfd9bfd287,
	10,
	{32,108,105,103,104,116,95,120,58,32}
};
static struct BBString_14 _s699={
	&bbStringClass,
	0x3d6c4ca839173c72,
	14,
	{32,108,105,103,104,116,95,120,58,32,78,117,108,108}
};
static struct BBString_10 _s700={
	&bbStringClass,
	0xbeccd64c41b832a8,
	10,
	{32,108,105,103,104,116,95,121,58,32}
};
static struct BBString_14 _s701={
	&bbStringClass,
	0xfec27ee7784f99dc,
	14,
	{32,108,105,103,104,116,95,121,58,32,78,117,108,108}
};
static struct BBString_10 _s702={
	&bbStringClass,
	0xf0fa7e9bfd145272,
	10,
	{32,108,105,103,104,116,95,122,58,32}
};
static struct BBString_14 _s703={
	&bbStringClass,
	0x6a014562e9a60b1b,
	14,
	{32,108,105,103,104,116,95,122,58,32,78,117,108,108}
};
static struct BBString_7 _s305={
	&bbStringClass,
	0xdc9dcc249bff82bc,
	7,
	{32,109,97,116,50,58,32}
};
static struct BBString_6 _s136={
	&bbStringClass,
	0xfee99b827224b2eb,
	6,
	{32,109,97,116,58,32}
};
static struct BBString_9 _s240={
	&bbStringClass,
	0x2750b59a75538abc,
	9,
	{32,109,97,116,95,115,112,58,32}
};
static struct BBString_9 _s559={
	&bbStringClass,
	0x5c5db4b01cf5f8c,
	9,
	{32,109,97,116,110,97,109,101,61}
};
static struct BBString_13 _s196={
	&bbStringClass,
	0x4bda417dce2c452a,
	13,
	{32,109,97,120,95,108,105,103,104,116,115,58,32}
};
static struct BBString_17 _s197={
	&bbStringClass,
	0x4476124bbc92f9e,
	17,
	{32,109,97,120,95,108,105,103,104,116,115,58,32,78,117,108,108
}
};
static struct BBString_8 _s234={
	&bbStringClass,
	0x6487c3ed665719c6,
	8,
	{32,109,97,120,95,120,58,32}
};
static struct BBString_12 _s235={
	&bbStringClass,
	0xa356cc60a81171e5,
	12,
	{32,109,97,120,95,120,58,32,78,117,108,108}
};
static struct BBString_8 _s236={
	&bbStringClass,
	0xe642d5b9742b67c6,
	8,
	{32,109,97,120,95,121,58,32}
};
static struct BBString_12 _s237={
	&bbStringClass,
	0x8082e7ce3133fa2e,
	12,
	{32,109,97,120,95,121,58,32,78,117,108,108}
};
static struct BBString_8 _s238={
	&bbStringClass,
	0xbb84c1c80fad308b,
	8,
	{32,109,97,120,95,122,58,32}
};
static struct BBString_12 _s239={
	&bbStringClass,
	0xc930fefcacf6b282,
	12,
	{32,109,97,120,95,122,58,32,78,117,108,108}
};
static struct BBString_16 _s694={
	&bbStringClass,
	0xf20d0d883a8c318c,
	16,
	{32,109,105,100,83,116,101,110,99,105,108,86,97,108,58,32}
};
static struct BBString_20 _s695={
	&bbStringClass,
	0xffe35945d61c6606,
	20,
	{32,109,105,100,83,116,101,110,99,105,108,86,97,108,58,32,78
	,117,108,108}
};
static struct BBString_8 _s228={
	&bbStringClass,
	0xc209ea332cf4bede,
	8,
	{32,109,105,110,95,120,58,32}
};
static struct BBString_12 _s229={
	&bbStringClass,
	0x4308d5c10f5815eb,
	12,
	{32,109,105,110,95,120,58,32,78,117,108,108}
};
static struct BBString_8 _s230={
	&bbStringClass,
	0xf69f3d5d0f69b0ad,
	8,
	{32,109,105,110,95,121,58,32}
};
static struct BBString_12 _s231={
	&bbStringClass,
	0x3337222f31bf36c2,
	12,
	{32,109,105,110,95,121,58,32,78,117,108,108}
};
static struct BBString_8 _s232={
	&bbStringClass,
	0x1a46e8a26d6b203b,
	8,
	{32,109,105,110,95,122,58,32}
};
static struct BBString_12 _s233={
	&bbStringClass,
	0xb5e3460b14873ec6,
	12,
	{32,109,105,110,95,122,58,32,78,117,108,108}
};
static struct BBString_10 _s186={
	&bbStringClass,
	0xec0f1d4fa7e7b05f,
	10,
	{32,109,111,100,95,109,97,116,58,32}
};
static struct BBString_7 _s264={
	&bbStringClass,
	0xf2f613bb698b7eca,
	7,
	{32,110,95,112,120,58,32}
};
static struct BBString_11 _s265={
	&bbStringClass,
	0xbfe19d8353d7f9a,
	11,
	{32,110,95,112,120,58,32,78,117,108,108}
};
static struct BBString_7 _s266={
	&bbStringClass,
	0x5a72df1bf4d1e815,
	7,
	{32,110,95,112,121,58,32}
};
static struct BBString_11 _s267={
	&bbStringClass,
	0x5591813110b427f3,
	11,
	{32,110,95,112,121,58,32,78,117,108,108}
};
static struct BBString_7 _s268={
	&bbStringClass,
	0x5c5c69c5effede27,
	7,
	{32,110,95,112,122,58,32}
};
static struct BBString_11 _s269={
	&bbStringClass,
	0x7fcc176823ccb70,
	11,
	{32,110,95,112,122,58,32,78,117,108,108}
};
static struct BBString_7 _s288={
	&bbStringClass,
	0xcbfa1c7a7d4beef8,
	7,
	{32,110,95,113,119,58,32}
};
static struct BBString_11 _s289={
	&bbStringClass,
	0x256b694281bef7b4,
	11,
	{32,110,95,113,119,58,32,78,117,108,108}
};
static struct BBString_7 _s282={
	&bbStringClass,
	0xda3fb2a8a504024d,
	7,
	{32,110,95,113,120,58,32}
};
static struct BBString_11 _s283={
	&bbStringClass,
	0x6b0cd8eb0e3d298c,
	11,
	{32,110,95,113,120,58,32,78,117,108,108}
};
static struct BBString_7 _s284={
	&bbStringClass,
	0xcc7d458d6f34f217,
	7,
	{32,110,95,113,121,58,32}
};
static struct BBString_11 _s285={
	&bbStringClass,
	0x1c3df36e9fe9b4cb,
	11,
	{32,110,95,113,121,58,32,78,117,108,108}
};
static struct BBString_7 _s286={
	&bbStringClass,
	0xaabf3edfa0d6ca02,
	7,
	{32,110,95,113,122,58,32}
};
static struct BBString_11 _s287={
	&bbStringClass,
	0x4ae7fe413f1aed16,
	11,
	{32,110,95,113,122,58,32,78,117,108,108}
};
static struct BBString_7 _s276={
	&bbStringClass,
	0x5963f19cef0c780,
	7,
	{32,110,95,114,120,58,32}
};
static struct BBString_11 _s277={
	&bbStringClass,
	0xd6dc88f8d0e6109c,
	11,
	{32,110,95,114,120,58,32,78,117,108,108}
};
static struct BBString_7 _s278={
	&bbStringClass,
	0x87ef82dcf9e16efc,
	7,
	{32,110,95,114,121,58,32}
};
static struct BBString_11 _s279={
	&bbStringClass,
	0xd27a7ef9908a3565,
	11,
	{32,110,95,114,121,58,32,78,117,108,108}
};
static struct BBString_7 _s280={
	&bbStringClass,
	0xfd5bb5d756b00a04,
	7,
	{32,110,95,114,122,58,32}
};
static struct BBString_11 _s281={
	&bbStringClass,
	0x534da2a4548d5689,
	11,
	{32,110,95,114,122,58,32,78,117,108,108}
};
static struct BBString_7 _s270={
	&bbStringClass,
	0xecdbd1283b0b53bd,
	7,
	{32,110,95,115,120,58,32}
};
static struct BBString_11 _s271={
	&bbStringClass,
	0x97e1bb03b15c7506,
	11,
	{32,110,95,115,120,58,32,78,117,108,108}
};
static struct BBString_7 _s272={
	&bbStringClass,
	0xa23efec5d122bb71,
	7,
	{32,110,95,115,121,58,32}
};
static struct BBString_11 _s273={
	&bbStringClass,
	0x28f689d8b14c16e,
	11,
	{32,110,95,115,121,58,32,78,117,108,108}
};
static struct BBString_7 _s274={
	&bbStringClass,
	0xf0ce114871ac8024,
	7,
	{32,110,95,115,122,58,32}
};
static struct BBString_11 _s275={
	&bbStringClass,
	0x25ce9b950234d5cb,
	11,
	{32,110,95,115,122,58,32,78,117,108,108}
};
static struct BBString_7 _s131={
	&bbStringClass,
	0x6e1114d2e4dc1b7c,
	7,
	{32,110,97,109,101,58,32}
};
static struct BBString_11 _s132={
	&bbStringClass,
	0x9481473454eda05a,
	11,
	{32,110,97,109,101,58,32,78,117,108,108}
};
static struct BBString_6 _s454={
	&bbStringClass,
	0x283ff7d8ac69bc49,
	6,
	{32,110,97,109,101,61}
};
static struct BBString_16 _s77={
	&bbStringClass,
	0x57228d1a44679125,
	16,
	{32,110,111,95,99,111,108,108,105,115,105,111,110,115,58,32}
};
static struct BBString_20 _s78={
	&bbStringClass,
	0x9ba561068fbb9a7b,
	20,
	{32,110,111,95,99,111,108,108,105,115,105,111,110,115,58,32,78
	,117,108,108}
};
static struct BBString_12 _s368={
	&bbStringClass,
	0xdc9027898f7682d1,
	12,
	{32,110,111,95,102,114,97,109,101,115,58,32}
};
static struct BBString_16 _s369={
	&bbStringClass,
	0x6c5dd587dc8e4b26,
	16,
	{32,110,111,95,102,114,97,109,101,115,58,32,78,117,108,108}
};
static struct BBString_12 _s194={
	&bbStringClass,
	0x2de7498ed2b8a80a,
	12,
	{32,110,111,95,108,105,103,104,116,115,58,32}
};
static struct BBString_16 _s195={
	&bbStringClass,
	0x47d77de10c3a6958,
	16,
	{32,110,111,95,108,105,103,104,116,115,58,32,78,117,108,108}
};
static struct BBString_13 _s374={
	&bbStringClass,
	0xf18dcf29b5fbfee1,
	13,
	{32,110,111,95,109,105,112,109,97,112,115,58,32}
};
static struct BBString_17 _s375={
	&bbStringClass,
	0xfef5bb0ce323be3d,
	17,
	{32,110,111,95,109,105,112,109,97,112,115,58,32,78,117,108,108
}
};
static struct BBString_10 _s69={
	&bbStringClass,
	0x17befa0da2a2453c,
	10,
	{32,110,111,95,115,101,113,115,58,32}
};
static struct BBString_14 _s70={
	&bbStringClass,
	0x9d1e8edaecf2081f,
	14,
	{32,110,111,95,115,101,113,115,58,32,78,117,108,108}
};
static struct BBString_11 _s222={
	&bbStringClass,
	0x621ea8beb0cffe5b,
	11,
	{32,110,111,95,115,117,114,102,115,58,32}
};
static struct BBString_15 _s223={
	&bbStringClass,
	0x3b299b34d699d18c,
	15,
	{32,110,111,95,115,117,114,102,115,58,32,78,117,108,108}
};
static struct BBString_10 _s405={
	&bbStringClass,
	0xb46e0feb7b17f460,
	10,
	{32,110,111,95,116,101,120,115,58,32}
};
static struct BBString_14 _s406={
	&bbStringClass,
	0x8eb652ec279d2455,
	14,
	{32,110,111,95,116,101,120,115,58,32,78,117,108,108}
};
static struct BBString_10 _s318={
	&bbStringClass,
	0x7bdb14d6fe4d58f2,
	10,
	{32,110,111,95,116,114,105,115,58,32}
};
static struct BBString_14 _s319={
	&bbStringClass,
	0xc584ccefbc2239a9,
	14,
	{32,110,111,95,116,114,105,115,58,32,78,117,108,108}
};
static struct BBString_9 _s480={
	&bbStringClass,
	0x780b1c9cd287a45c,
	9,
	{32,110,111,95,116,114,105,115,61}
};
static struct BBString_11 _s316={
	&bbStringClass,
	0xb2e7ad4b8fe5f0b4,
	11,
	{32,110,111,95,118,101,114,116,115,58,32}
};
static struct BBString_15 _s317={
	&bbStringClass,
	0x7a317b666fa261fe,
	15,
	{32,110,111,95,118,101,114,116,115,58,32,78,117,108,108}
};
static struct BBString_7 _s470={
	&bbStringClass,
	0xd21bf8657a9f9a53,
	7,
	{32,110,115,101,116,115,61}
};
static struct BBString_13 _s491={
	&bbStringClass,
	0xc6cd52b0485b3209,
	13,
	{32,110,117,109,95,102,114,97,109,101,115,58,32}
};
static struct BBString_12 _s487={
	&bbStringClass,
	0xce7e8c39760b71aa,
	12,
	{32,110,117,109,95,115,107,105,110,115,58,32}
};
static struct BBString_9 _s489={
	&bbStringClass,
	0x78a0467502d5d3f4,
	9,
	{32,110,117,109,95,115,116,58,32}
};
static struct BBString_11 _s490={
	&bbStringClass,
	0x9577b49c88d54ff4,
	11,
	{32,110,117,109,95,116,114,105,115,58,32}
};
static struct BBString_15 _s488={
	&bbStringClass,
	0xad4695e736e1925b,
	15,
	{32,110,117,109,95,118,101,114,116,105,99,101,115,58,32}
};
static struct BBString_11 _s81={
	&bbStringClass,
	0x81e6a1c4a1ffee9d,
	11,
	{32,111,98,115,99,117,114,101,114,58,32}
};
static struct BBString_15 _s82={
	&bbStringClass,
	0xee2d8c67daf5e184,
	15,
	{32,111,98,115,99,117,114,101,114,58,32,78,117,108,108}
};
static struct BBString_16 _s495={
	&bbStringClass,
	0x6d0259d719ad8315,
	16,
	{32,111,102,102,115,101,116,95,102,114,97,109,101,115,58,32}
};
static struct BBString_15 _s492={
	&bbStringClass,
	0x51ab09fb5d2c778d,
	15,
	{32,111,102,102,115,101,116,95,115,107,105,110,115,58,32}
};
static struct BBString_12 _s493={
	&bbStringClass,
	0x20c646c54342a9f,
	12,
	{32,111,102,102,115,101,116,95,115,116,58,32}
};
static struct BBString_14 _s494={
	&bbStringClass,
	0x5563a92e3a662b61,
	14,
	{32,111,102,102,115,101,116,95,116,114,105,115,58,32}
};
static struct BBString_8 _s49={
	&bbStringClass,
	0x4846585e6fa58771,
	8,
	{32,111,114,100,101,114,58,32}
};
static struct BBString_12 _s50={
	&bbStringClass,
	0x7815efe0575c8773,
	12,
	{32,111,114,100,101,114,58,32,78,117,108,108}
};
static struct BBString_12 _s214={
	&bbStringClass,
	0xec03976187b459ce,
	12,
	{32,111,117,116,101,114,95,97,110,103,58,32}
};
static struct BBString_16 _s215={
	&bbStringClass,
	0x40e55ac34362a680,
	16,
	{32,111,117,116,101,114,95,97,110,103,58,32,78,117,108,108}
};
static struct BBString_11 _s692={
	&bbStringClass,
	0x3fa51399a16294fb,
	11,
	{32,112,97,114,97,108,108,101,108,58,32}
};
static struct BBString_15 _s693={
	&bbStringClass,
	0xf7889d28ddca8594,
	15,
	{32,112,97,114,97,108,108,101,108,58,32,78,117,108,108}
};
static struct BBString_9 _s135={
	&bbStringClass,
	0x33c0f80aeaad2b88,
	9,
	{32,112,97,114,101,110,116,58,32}
};
static struct BBString_12 _s79={
	&bbStringClass,
	0x525d82ace824fe6b,
	12,
	{32,112,105,99,107,95,109,111,100,101,58,32}
};
static struct BBString_16 _s80={
	&bbStringClass,
	0x49132e0639c7a51,
	16,
	{32,112,105,99,107,95,109,111,100,101,58,32,78,117,108,108}
};
static struct BBString_13 _s634={
	&bbStringClass,
	0x26e2f42453e82689,
	13,
	{32,112,105,99,107,101,100,95,101,110,116,58,32}
};
static struct BBString_12 _s624={
	&bbStringClass,
	0x7ad8bb482623231e,
	12,
	{32,112,105,99,107,101,100,95,110,120,58,32}
};
static struct BBString_16 _s625={
	&bbStringClass,
	0xdbe309c311413271,
	16,
	{32,112,105,99,107,101,100,95,110,120,58,32,78,117,108,108}
};
static struct BBString_12 _s626={
	&bbStringClass,
	0x97def5e2312bee52,
	12,
	{32,112,105,99,107,101,100,95,110,121,58,32}
};
static struct BBString_16 _s627={
	&bbStringClass,
	0x24094bf2e252d4f0,
	16,
	{32,112,105,99,107,101,100,95,110,121,58,32,78,117,108,108}
};
static struct BBString_12 _s628={
	&bbStringClass,
	0x2ff982fee6564807,
	12,
	{32,112,105,99,107,101,100,95,110,122,58,32}
};
static struct BBString_16 _s629={
	&bbStringClass,
	0x84e348004eeb080a,
	16,
	{32,112,105,99,107,101,100,95,110,122,58,32,78,117,108,108}
};
static struct BBString_17 _s635={
	&bbStringClass,
	0x86e0c89433decc5a,
	17,
	{32,112,105,99,107,101,100,95,115,117,114,102,97,99,101,58,32
}
};
static struct BBString_14 _s630={
	&bbStringClass,
	0xb678e09010f54967,
	14,
	{32,112,105,99,107,101,100,95,116,105,109,101,58,32}
};
static struct BBString_18 _s631={
	&bbStringClass,
	0x6e648a51ad79efa5,
	18,
	{32,112,105,99,107,101,100,95,116,105,109,101,58,32,78,117,108
	,108}
};
static struct BBString_18 _s632={
	&bbStringClass,
	0xd0c534aebed5ad08,
	18,
	{32,112,105,99,107,101,100,95,116,114,105,97,110,103,108,101,58
	,32}
};
static struct BBString_22 _s633={
	&bbStringClass,
	0x21818985f305a19d,
	22,
	{32,112,105,99,107,101,100,95,116,114,105,97,110,103,108,101,58
	,32,78,117,108,108}
};
static struct BBString_11 _s618={
	&bbStringClass,
	0x65f40671f8ed93fd,
	11,
	{32,112,105,99,107,101,100,95,120,58,32}
};
static struct BBString_15 _s619={
	&bbStringClass,
	0x2ffda7fc4354cf51,
	15,
	{32,112,105,99,107,101,100,95,120,58,32,78,117,108,108}
};
static struct BBString_11 _s620={
	&bbStringClass,
	0x1cd2d7862af1afe9,
	11,
	{32,112,105,99,107,101,100,95,121,58,32}
};
static struct BBString_15 _s621={
	&bbStringClass,
	0x28c160d02d2d07d4,
	15,
	{32,112,105,99,107,101,100,95,121,58,32,78,117,108,108}
};
static struct BBString_11 _s622={
	&bbStringClass,
	0x671401acdac17767,
	11,
	{32,112,105,99,107,101,100,95,122,58,32}
};
static struct BBString_15 _s623={
	&bbStringClass,
	0x17f975d1a546a884,
	15,
	{32,112,105,99,107,101,100,95,122,58,32,78,117,108,108}
};
static struct BBString_11 _s187={
	&bbStringClass,
	0xe13fb2148ca39fdf,
	11,
	{32,112,114,111,106,95,109,97,116,58,32}
};
static struct BBString_12 _s155={
	&bbStringClass,
	0x442a5892e9bcea8f,
	12,
	{32,112,114,111,106,95,109,111,100,101,58,32}
};
static struct BBString_16 _s156={
	&bbStringClass,
	0xe31de5dbc911b74,
	16,
	{32,112,114,111,106,95,109,111,100,101,58,32,78,117,108,108}
};
static struct BBString_18 _s159={
	&bbStringClass,
	0xd9c24eab5a310527,
	18,
	{32,112,114,111,106,101,99,116,95,101,110,97,98,108,101,100,58
	,32}
};
static struct BBString_22 _s160={
	&bbStringClass,
	0x4ee585ae3668f275,
	22,
	{32,112,114,111,106,101,99,116,95,101,110,97,98,108,101,100,58
	,32,78,117,108,108}
};
static struct BBString_5 _s83={
	&bbStringClass,
	0x6fc7312963cc18fc,
	5,
	{32,112,120,58,32}
};
static struct BBString_9 _s84={
	&bbStringClass,
	0x286ad08f660eb977,
	9,
	{32,112,120,58,32,78,117,108,108}
};
static struct BBString_9 _s422={
	&bbStringClass,
	0x3dc82d02ef2752ae,
	9,
	{32,112,120,91,48,93,32,61,32}
};
static struct BBString_5 _s85={
	&bbStringClass,
	0x16c28b3a2ec81ffd,
	5,
	{32,112,121,58,32}
};
static struct BBString_9 _s86={
	&bbStringClass,
	0x5bbcea4791258670,
	9,
	{32,112,121,58,32,78,117,108,108}
};
static struct BBString_9 _s423={
	&bbStringClass,
	0x8593a940fe1d0f38,
	9,
	{32,112,121,91,48,93,32,61,32}
};
static struct BBString_5 _s87={
	&bbStringClass,
	0x8664b59c8d1c6766,
	5,
	{32,112,122,58,32}
};
static struct BBString_9 _s88={
	&bbStringClass,
	0xbf427e209094b764,
	9,
	{32,112,122,58,32,78,117,108,108}
};
static struct BBString_9 _s424={
	&bbStringClass,
	0x4095ea944b4e0d6,
	9,
	{32,112,122,91,48,93,32,61,32}
};
static struct BBString_5 _s101={
	&bbStringClass,
	0xe886907848f04c95,
	5,
	{32,113,119,58,32}
};
static struct BBString_9 _s102={
	&bbStringClass,
	0x956d977c27132408,
	9,
	{32,113,119,58,32,78,117,108,108}
};
static struct BBString_9 _s428={
	&bbStringClass,
	0x3acc3044349f36bd,
	9,
	{32,113,119,91,48,93,32,61,32}
};
static struct BBString_5 _s103={
	&bbStringClass,
	0x5378fc24e158021d,
	5,
	{32,113,120,58,32}
};
static struct BBString_9 _s104={
	&bbStringClass,
	0x4b222c602e15940b,
	9,
	{32,113,120,58,32,78,117,108,108}
};
static struct BBString_9 _s429={
	&bbStringClass,
	0x917d2aea695d53af,
	9,
	{32,113,120,91,48,93,32,61,32}
};
static struct BBString_5 _s105={
	&bbStringClass,
	0xd2f29fcab317653b,
	5,
	{32,113,121,58,32}
};
static struct BBString_9 _s106={
	&bbStringClass,
	0x5566da2542324b09,
	9,
	{32,113,121,58,32,78,117,108,108}
};
static struct BBString_9 _s430={
	&bbStringClass,
	0x3ea7462244a0f856,
	9,
	{32,113,121,91,48,93,32,61,32}
};
static struct BBString_5 _s107={
	&bbStringClass,
	0x3dea8ea094a41843,
	5,
	{32,113,122,58,32}
};
static struct BBString_9 _s108={
	&bbStringClass,
	0x8c641d55020fcab6,
	9,
	{32,113,122,58,32,78,117,108,108}
};
static struct BBString_9 _s431={
	&bbStringClass,
	0x9cda681551cc492d,
	9,
	{32,113,122,91,48,93,32,61,32}
};
static struct BBString_11 _s115={
	&bbStringClass,
	0x190030d2fe372423,
	11,
	{32,114,97,100,105,117,115,95,120,58,32}
};
static struct BBString_15 _s116={
	&bbStringClass,
	0x6659eec0ac94cf66,
	15,
	{32,114,97,100,105,117,115,95,120,58,32,78,117,108,108}
};
static struct BBString_11 _s117={
	&bbStringClass,
	0xbcbad4d07ba6ceee,
	11,
	{32,114,97,100,105,117,115,95,121,58,32}
};
static struct BBString_15 _s118={
	&bbStringClass,
	0xb6c876c8e8795bf9,
	15,
	{32,114,97,100,105,117,115,95,121,58,32,78,117,108,108}
};
static struct BBString_12 _s172={
	&bbStringClass,
	0x356addaf48cca49f,
	12,
	{32,114,97,110,103,101,95,102,97,114,58,32}
};
static struct BBString_16 _s173={
	&bbStringClass,
	0xae52d098183aaad7,
	16,
	{32,114,97,110,103,101,95,102,97,114,58,32,78,117,108,108}
};
static struct BBString_13 _s170={
	&bbStringClass,
	0x306bbabec8c19c8c,
	13,
	{32,114,97,110,103,101,95,110,101,97,114,58,32}
};
static struct BBString_17 _s171={
	&bbStringClass,
	0xcf18b376feb84fb2,
	17,
	{32,114,97,110,103,101,95,110,101,97,114,58,32,78,117,108,108
}
};
static struct BBString_7 _s10={
	&bbStringClass,
	0x95fd380cf0edff4c,
	7,
	{32,114,97,116,101,58,32}
};
static struct BBString_11 _s11={
	&bbStringClass,
	0xeffeb7c71ffbcda4,
	11,
	{32,114,97,116,101,58,32,78,117,108,108}
};
static struct BBString_6 _s206={
	&bbStringClass,
	0xcfc02c3cd9759365,
	6,
	{32,114,101,100,58,32}
};
static struct BBString_10 _s207={
	&bbStringClass,
	0x1b4a4d939a506fb8,
	10,
	{32,114,101,100,58,32,78,117,108,108}
};
static struct BBString_14 _s249={
	&bbStringClass,
	0xa16f1bf0e16bacff,
	14,
	{32,114,101,110,100,101,114,95,109,111,100,101,58,32}
};
static struct BBString_18 _s250={
	&bbStringClass,
	0x1a492bdee1c7f5e5,
	18,
	{32,114,101,110,100,101,114,95,109,111,100,101,58,32,78,117,108
	,108}
};
static struct BBString_15 _s226={
	&bbStringClass,
	0x28c59f7e72a19be7,
	15,
	{32,114,101,115,101,116,95,98,111,117,110,100,115,58,32}
};
static struct BBString_19 _s227={
	&bbStringClass,
	0xbdae7174c072c5b4,
	19,
	{32,114,101,115,101,116,95,98,111,117,110,100,115,58,32,78,117
	,108,108}
};
static struct BBString_17 _s224={
	&bbStringClass,
	0xd86535a98f11c36a,
	17,
	{32,114,101,115,101,116,95,99,111,108,95,116,114,101,101,58,32
}
};
static struct BBString_21 _s225={
	&bbStringClass,
	0xe36499054c989b6f,
	21,
	{32,114,101,115,101,116,95,99,111,108,95,116,114,101,101,58,32
	,78,117,108,108}
};
static struct BBString_12 _s336={
	&bbStringClass,
	0xa689f3f92a892884,
	12,
	{32,114,101,115,101,116,95,118,98,111,58,32}
};
static struct BBString_16 _s337={
	&bbStringClass,
	0xd1c71cb8b99bfd3c,
	16,
	{32,114,101,115,101,116,95,118,98,111,58,32,78,117,108,108}
};
static struct BBString_11 _s36={
	&bbStringClass,
	0x9a8753c6672a7008,
	11,
	{32,114,111,111,116,95,101,110,116,58,32}
};
static struct BBString_9 _s137={
	&bbStringClass,
	0xd480b90f5d3003b,
	9,
	{32,114,111,116,109,97,116,58,32}
};
static struct BBString_5 _s95={
	&bbStringClass,
	0x779700cf7127f0f0,
	5,
	{32,114,120,58,32}
};
static struct BBString_9 _s96={
	&bbStringClass,
	0xfbd35ed458cda20c,
	9,
	{32,114,120,58,32,78,117,108,108}
};
static struct BBString_5 _s97={
	&bbStringClass,
	0x984f65fc492e5f7f,
	5,
	{32,114,121,58,32}
};
static struct BBString_9 _s98={
	&bbStringClass,
	0xee04d13eeec7efac,
	9,
	{32,114,121,58,32,78,117,108,108}
};
static struct BBString_5 _s99={
	&bbStringClass,
	0x4fb382bedf0e5a5f,
	5,
	{32,114,122,58,32}
};
static struct BBString_9 _s100={
	&bbStringClass,
	0x1407953434c28262,
	9,
	{32,114,122,58,32,78,117,108,108}
};
static struct BBString_8 _s497={
	&bbStringClass,
	0x7f9b48cbd6d7c51d,
	8,
	{32,115,99,97,108,101,58,32}
};
static struct BBString_10 _s253={
	&bbStringClass,
	0xa7af390e46f3cac9,
	10,
	{32,115,99,97,108,101,95,120,58,32}
};
static struct BBString_14 _s254={
	&bbStringClass,
	0xcb2b25dc003b97a6,
	14,
	{32,115,99,97,108,101,95,120,58,32,78,117,108,108}
};
static struct BBString_10 _s255={
	&bbStringClass,
	0x977006e81007747b,
	10,
	{32,115,99,97,108,101,95,121,58,32}
};
static struct BBString_14 _s256={
	&bbStringClass,
	0x2311608f1c666e7f,
	14,
	{32,115,99,97,108,101,95,121,58,32,78,117,108,108}
};
static struct BBString_24 _s604={
	&bbStringClass,
	0x4f6c70055c0223b5,
	24,
	{32,115,101,99,111,110,100,115,32,102,111,114,32,101,110,116,105
	,114,101,32,109,101,115,104}
};
static struct BBString_8 _s413={
	&bbStringClass,
	0x3d4860588ea90186,
	8,
	{32,115,104,105,110,101,58,32}
};
static struct BBString_12 _s414={
	&bbStringClass,
	0x5a6574d76fa93760,
	12,
	{32,115,104,105,110,101,58,32,78,117,108,108}
};
static struct BBString_7 _s675={
	&bbStringClass,
	0x9a89c1ded579ac26,
	7,
	{32,115,105,122,101,58,32}
};
static struct BBString_11 _s676={
	&bbStringClass,
	0x1b5a053d0aacf8b,
	11,
	{32,115,105,122,101,58,32,78,117,108,108}
};
static struct BBString_13 _s485={
	&bbStringClass,
	0x981ddcc222529797,
	13,
	{32,115,107,105,110,104,101,105,103,104,116,58,32}
};
static struct BBString_12 _s484={
	&bbStringClass,
	0xee4ce3f5c2f2da5d,
	12,
	{32,115,107,105,110,119,105,100,116,104,58,32}
};
static struct BBString_9 _s771={
	&bbStringClass,
	0x5dc3b966bd720343,
	9,
	{32,115,116,114,101,97,109,58,32}
};
static struct BBString_12 _s241={
	&bbStringClass,
	0xb9d449d3b31a1bf4,
	12,
	{32,115,117,114,102,95,108,105,115,116,58,32}
};
static struct BBString_5 _s89={
	&bbStringClass,
	0xc573a5ab6027a7dd,
	5,
	{32,115,120,58,32}
};
static struct BBString_9 _s90={
	&bbStringClass,
	0x64615e7b57fb9cb,
	9,
	{32,115,120,58,32,78,117,108,108}
};
static struct BBString_9 _s425={
	&bbStringClass,
	0x67589cc6ff5cf536,
	9,
	{32,115,120,91,48,93,32,61,32}
};
static struct BBString_5 _s91={
	&bbStringClass,
	0x204f0e888b26aeb,
	5,
	{32,115,121,58,32}
};
static struct BBString_9 _s92={
	&bbStringClass,
	0x91b70ee62fca58b3,
	9,
	{32,115,121,58,32,78,117,108,108}
};
static struct BBString_9 _s426={
	&bbStringClass,
	0x93b777a152519997,
	9,
	{32,115,121,91,48,93,32,61,32}
};
static struct BBString_5 _s93={
	&bbStringClass,
	0x94ba5c89ecf0d031,
	5,
	{32,115,122,58,32}
};
static struct BBString_9 _s94={
	&bbStringClass,
	0x9fddef539b12a0a,
	9,
	{32,115,122,58,32,78,117,108,108}
};
static struct BBString_9 _s427={
	&bbStringClass,
	0x1136f87fe3c7d498,
	9,
	{32,115,122,91,48,93,32,61,32}
};
static struct BBString_9 _s769={
	&bbStringClass,
	0x825655db7a2d2c94,
	9,
	{32,116,97,114,103,101,116,58,32}
};
static struct BBString_9 _s465={
	&bbStringClass,
	0xf939bd2129785338,
	9,
	{32,116,99,95,115,101,116,115,61}
};
static struct BBString_9 _s466={
	&bbStringClass,
	0x8d4371061f66ce13,
	9,
	{32,116,99,95,115,105,122,101,61}
};
static struct BBString_5 _s415={
	&bbStringClass,
	0xbd45ecb2123cd931,
	5,
	{32,116,101,120,91}
};
static struct BBString_10 _s452={
	&bbStringClass,
	0x49dd5b543ae62106,
	10,
	{32,116,101,120,95,110,97,109,101,61}
};
static struct BBString_8 _s449={
	&bbStringClass,
	0x6ae52cc7ed8d464c,
	8,
	{32,116,101,120,95,110,111,61}
};
static struct BBString_9 _s560={
	&bbStringClass,
	0xbc3e2b5bd81a79e8,
	9,
	{32,116,101,120,110,97,109,101,61}
};
static struct BBString_10 _s376={
	&bbStringClass,
	0xbaf2279672cc8396,
	10,
	{32,116,101,120,116,117,114,101,58,32}
};
static struct BBString_14 _s377={
	&bbStringClass,
	0x15446b5a3e16099b,
	14,
	{32,116,101,120,116,117,114,101,58,32,78,117,108,108}
};
static struct BBString_12 _s307={
	&bbStringClass,
	0x68b160e6dcac2626,
	12,
	{32,116,102,111,114,109,95,109,97,116,58,32}
};
static struct BBString_11 _s690={
	&bbStringClass,
	0x6a0294214bc450a1,
	11,
	{32,116,111,112,95,99,97,112,115,58,32}
};
static struct BBString_15 _s691={
	&bbStringClass,
	0x2970f53b63d6c743,
	15,
	{32,116,111,112,95,99,97,112,115,58,32,78,117,108,108}
};
static struct BBString_13 _s472={
	&bbStringClass,
	0xa652dd81576a4f0d,
	13,
	{32,116,114,95,98,114,117,115,104,95,105,100,61}
};
static struct BBString_8 _s499={
	&bbStringClass,
	0x7f720b5eca52f14b,
	8,
	{32,116,114,97,110,115,58,32}
};
static struct BBString_17 _s330={
	&bbStringClass,
	0x1f110f1914456140,
	17,
	{32,116,114,105,95,97,114,114,97,121,95,115,105,122,101,58,32
}
};
static struct BBString_21 _s331={
	&bbStringClass,
	0x29b1fdab47bb1913,
	21,
	{32,116,114,105,95,97,114,114,97,121,95,115,105,122,101,58,32
	,78,117,108,108}
};
static struct BBString_7 _s311={
	&bbStringClass,
	0x2779aef80c8567bf,
	7,
	{32,116,114,105,115,58,32}
};
static struct BBString_11 _s312={
	&bbStringClass,
	0xbc6e9ce17758cbbe,
	11,
	{32,116,114,105,115,91,48,93,32,61,32}
};
static struct BBString_8 _s387={
	&bbStringClass,
	0xeb86c965c29948ba,
	8,
	{32,117,95,112,111,115,58,32}
};
static struct BBString_12 _s388={
	&bbStringClass,
	0x7269a7bc508d25ed,
	12,
	{32,117,95,112,111,115,58,32,78,117,108,108}
};
static struct BBString_10 _s383={
	&bbStringClass,
	0x3fe23e42658c7fef,
	10,
	{32,117,95,115,99,97,108,101,58,32}
};
static struct BBString_14 _s384={
	&bbStringClass,
	0x25263a56d2f3c23,
	14,
	{32,117,95,115,99,97,108,101,58,32,78,117,108,108}
};
static struct BBString_3 _s468={
	&bbStringClass,
	0xf8d2f8028a2b8a34,
	3,
	{32,118,61}
};
static struct BBString_8 _s389={
	&bbStringClass,
	0x12c2026ade9936aa,
	8,
	{32,118,95,112,111,115,58,32}
};
static struct BBString_12 _s390={
	&bbStringClass,
	0xf331d91e00475ef3,
	12,
	{32,118,95,112,111,115,58,32,78,117,108,108}
};
static struct BBString_10 _s385={
	&bbStringClass,
	0x46d1212c00aaf633,
	10,
	{32,118,95,115,99,97,108,101,58,32}
};
static struct BBString_14 _s386={
	&bbStringClass,
	0xdaa559a67976f080,
	14,
	{32,118,95,115,99,97,108,101,58,32,78,117,108,108}
};
static struct BBString_14 _s12={
	&bbStringClass,
	0xc1141c9748a85a22,
	14,
	{32,118,98,111,95,101,110,97,98,108,101,100,58,32}
};
static struct BBString_18 _s13={
	&bbStringClass,
	0x53482d9adbb49826,
	18,
	{32,118,98,111,95,101,110,97,98,108,101,100,58,32,78,117,108
	,108}
};
static struct BBString_9 _s338={
	&bbStringClass,
	0x63ffad8f3ac90dc2,
	9,
	{32,118,98,111,95,105,100,58,32}
};
static struct BBString_8 _s339={
	&bbStringClass,
	0x842f39f333a6721e,
	8,
	{32,118,98,111,95,105,100,91}
};
static struct BBString_15 _s14={
	&bbStringClass,
	0x4ae76ca91870871b,
	15,
	{32,118,98,111,95,109,105,110,95,116,114,105,115,58,32}
};
static struct BBString_19 _s15={
	&bbStringClass,
	0x1244a80b86d0433e,
	19,
	{32,118,98,111,95,109,105,110,95,116,114,105,115,58,32,78,117
	,108,108}
};
static struct BBString_18 _s328={
	&bbStringClass,
	0x4efd6705df4548e1,
	18,
	{32,118,101,114,116,95,97,114,114,97,121,95,115,105,122,101,58
	,32}
};
static struct BBString_22 _s329={
	&bbStringClass,
	0x64eea98efc2877db,
	22,
	{32,118,101,114,116,95,97,114,114,97,121,95,115,105,122,101,58
	,32,78,117,108,108}
};
static struct BBString_16 _s320={
	&bbStringClass,
	0xf7e75747adfb956b,
	16,
	{32,118,101,114,116,95,98,111,110,101,49,95,110,111,58,32}
};
static struct BBString_20 _s321={
	&bbStringClass,
	0xb696aa65bb264720,
	20,
	{32,118,101,114,116,95,98,111,110,101,49,95,110,111,91,48,93
	,32,61,32}
};
static struct BBString_16 _s322={
	&bbStringClass,
	0x6878391ccaeb1cc1,
	16,
	{32,118,101,114,116,95,98,111,110,101,50,95,110,111,58,32}
};
static struct BBString_20 _s323={
	&bbStringClass,
	0xebaabc1a443de03f,
	20,
	{32,118,101,114,116,95,98,111,110,101,50,95,110,111,91,48,93
	,32,61,32}
};
static struct BBString_16 _s324={
	&bbStringClass,
	0x6277fd8c288060bf,
	16,
	{32,118,101,114,116,95,98,111,110,101,51,95,110,111,58,32}
};
static struct BBString_20 _s325={
	&bbStringClass,
	0xa601425a17e62082,
	20,
	{32,118,101,114,116,95,98,111,110,101,51,95,110,111,91,48,93
	,32,61,32}
};
static struct BBString_16 _s326={
	&bbStringClass,
	0x765289351cf9a1f8,
	16,
	{32,118,101,114,116,95,98,111,110,101,52,95,110,111,58,32}
};
static struct BBString_20 _s327={
	&bbStringClass,
	0x51161d5b3e40bef4,
	20,
	{32,118,101,114,116,95,98,111,110,101,52,95,110,111,91,48,93
	,32,61,32}
};
static struct BBString_11 _s344={
	&bbStringClass,
	0xf53e7e1b173631b2,
	11,
	{32,118,101,114,116,95,99,111,108,58,32}
};
static struct BBString_15 _s345={
	&bbStringClass,
	0x5623c19593c2cf50,
	15,
	{32,118,101,114,116,95,99,111,108,91,48,93,32,61,32}
};
static struct BBString_14 _s340={
	&bbStringClass,
	0x378be14f9e99b3,
	14,
	{32,118,101,114,116,95,99,111,111,114,100,115,58,32}
};
static struct BBString_18 _s341={
	&bbStringClass,
	0x7bf4ca74bf121d45,
	18,
	{32,118,101,114,116,95,99,111,111,114,100,115,91,48,93,32,61
	,32}
};
static struct BBString_12 _s342={
	&bbStringClass,
	0x6ad50e8cd25559c,
	12,
	{32,118,101,114,116,95,110,111,114,109,58,32}
};
static struct BBString_16 _s343={
	&bbStringClass,
	0x154cc2dee9b01c70,
	16,
	{32,118,101,114,116,95,110,111,114,109,91,48,93,32,61,32}
};
static struct BBString_19 _s346={
	&bbStringClass,
	0x6c32d990db74723d,
	19,
	{32,118,101,114,116,95,116,101,120,95,99,111,111,114,100,115,48
	,58,32}
};
static struct BBString_23 _s347={
	&bbStringClass,
	0x7c45fc90a7db65b,
	23,
	{32,118,101,114,116,95,116,101,120,95,99,111,111,114,100,115,48
	,91,48,93,32,61,32}
};
static struct BBString_19 _s348={
	&bbStringClass,
	0x69883b59beb95109,
	19,
	{32,118,101,114,116,95,116,101,120,95,99,111,111,114,100,115,49
	,58,32}
};
static struct BBString_23 _s349={
	&bbStringClass,
	0xb2038aa393674bc,
	23,
	{32,118,101,114,116,95,116,101,120,95,99,111,111,114,100,115,49
	,91,48,93,32,61,32}
};
static struct BBString_15 _s350={
	&bbStringClass,
	0x7528f321b8bfe2fb,
	15,
	{32,118,101,114,116,95,119,101,105,103,104,116,49,58,32}
};
static struct BBString_19 _s351={
	&bbStringClass,
	0x2e44cf659a895163,
	19,
	{32,118,101,114,116,95,119,101,105,103,104,116,49,91,48,93,32
	,61,32}
};
static struct BBString_15 _s352={
	&bbStringClass,
	0x866eabf2decc7a8c,
	15,
	{32,118,101,114,116,95,119,101,105,103,104,116,50,58,32}
};
static struct BBString_19 _s353={
	&bbStringClass,
	0x953c1c82fe21b87c,
	19,
	{32,118,101,114,116,95,119,101,105,103,104,116,50,91,48,93,32
	,61,32}
};
static struct BBString_15 _s354={
	&bbStringClass,
	0xda90c18c8c8cf681,
	15,
	{32,118,101,114,116,95,119,101,105,103,104,116,51,58,32}
};
static struct BBString_19 _s355={
	&bbStringClass,
	0x83f5769aabd9d953,
	19,
	{32,118,101,114,116,95,119,101,105,103,104,116,51,91,48,93,32
	,61,32}
};
static struct BBString_15 _s356={
	&bbStringClass,
	0x6e58bf818232b18c,
	15,
	{32,118,101,114,116,95,119,101,105,103,104,116,52,58,32}
};
static struct BBString_19 _s357={
	&bbStringClass,
	0x565da68eaa326257,
	19,
	{32,118,101,114,116,95,119,101,105,103,104,116,52,91,48,93,32
	,61,32}
};
static struct BBString_10 _s153={
	&bbStringClass,
	0xda4ef01a19c52424,
	10,
	{32,118,104,101,105,103,104,116,58,32}
};
static struct BBString_14 _s154={
	&bbStringClass,
	0xe9aac1105631cfca,
	14,
	{32,118,104,101,105,103,104,116,58,32,78,117,108,108}
};
static struct BBString_12 _s247={
	&bbStringClass,
	0xead49969b4d290b4,
	12,
	{32,118,105,101,119,95,109,111,100,101,58,32}
};
static struct BBString_16 _s248={
	&bbStringClass,
	0x76e55f94469ce1bd,
	16,
	{32,118,105,101,119,95,109,111,100,101,58,32,78,117,108,108}
};
static struct BBString_7 _s334={
	&bbStringClass,
	0xbf6b8a7bdfe95fe7,
	7,
	{32,118,109,97,120,58,32}
};
static struct BBString_11 _s335={
	&bbStringClass,
	0x9f1f743fe6ad8c1b,
	11,
	{32,118,109,97,120,58,32,78,117,108,108}
};
static struct BBString_7 _s332={
	&bbStringClass,
	0xebf58c60910bc1a6,
	7,
	{32,118,109,105,110,58,32}
};
static struct BBString_11 _s333={
	&bbStringClass,
	0xcd02831022883dce,
	11,
	{32,118,109,105,110,58,32,78,117,108,108}
};
static struct BBString_8 _s677={
	&bbStringClass,
	0x539b310cde2f5356,
	8,
	{32,118,115,105,122,101,58,32}
};
static struct BBString_12 _s678={
	&bbStringClass,
	0x93fd21c4042538ec,
	12,
	{32,118,115,105,122,101,58,32,78,117,108,108}
};
static struct BBString_9 _s151={
	&bbStringClass,
	0x8376f6efe8925257,
	9,
	{32,118,119,105,100,116,104,58,32}
};
static struct BBString_13 _s152={
	&bbStringClass,
	0x61e9c86ebfa8fa2d,
	13,
	{32,118,119,105,100,116,104,58,32,78,117,108,108}
};
static struct BBString_5 _s147={
	&bbStringClass,
	0x70a54716d290f6ae,
	5,
	{32,118,120,58,32}
};
static struct BBString_9 _s148={
	&bbStringClass,
	0x559f461b5233c40,
	9,
	{32,118,120,58,32,78,117,108,108}
};
static struct BBString_5 _s149={
	&bbStringClass,
	0x8f219f65bcf7633c,
	5,
	{32,118,121,58,32}
};
static struct BBString_9 _s150={
	&bbStringClass,
	0xd606ca0b0181150c,
	9,
	{32,118,121,58,32,78,117,108,108}
};
static struct BBString_8 _s2={
	&bbStringClass,
	0x5bcf81ddbebe12a0,
	8,
	{32,119,105,100,116,104,58,32}
};
static struct BBString_12 _s3={
	&bbStringClass,
	0x58a79411f9ae208f,
	12,
	{32,119,105,100,116,104,58,32,78,117,108,108}
};
static struct BBString_7 _s174={
	&bbStringClass,
	0x8562654645cc1674,
	7,
	{32,122,111,111,109,58,32}
};
static struct BBString_11 _s175={
	&bbStringClass,
	0x6c1d49c5347b1c0,
	11,
	{32,122,111,111,109,58,32,78,117,108,108}
};
static struct BBString_1 _s575={
	&bbStringClass,
	0x48929ded5b88ae2d,
	1,
	{35}
};
static struct BBString_8 _s545={
	&bbStringClass,
	0x18c6c0815c0d421c,
	8,
	{36,36,36,68,85,77,77,89}
};
static struct BBString_1 _s442={
	&bbStringClass,
	0xfe96ecb3812f838,
	1,
	{41}
};
static struct BBString_1 _s544={
	&bbStringClass,
	0x1483ae22ee1e23b7,
	1,
	{44}
};
static struct BBString_2 _s498={
	&bbStringClass,
	0x1e9b658ef9aeb9cc,
	2,
	{44,32}
};
static struct BBString_8 _s598={
	&bbStringClass,
	0x397ed9adaee40055,
	8,
	{44,32,84,114,105,115,58,32}
};
static struct BBString_11 _s602={
	&bbStringClass,
	0x60fea6955da5eaf7,
	11,
	{44,32,110,111,95,116,114,105,115,58,32}
};
static struct BBString_9 _s541={
	&bbStringClass,
	0x69c66b74aed14f87,
	9,
	{44,32,112,97,114,101,110,116,61}
};
static struct BBString_17 _s601={
	&bbStringClass,
	0xf03866b978e238e4,
	17,
	{44,32,114,101,97,108,32,110,111,95,118,101,114,116,115,58,32
}
};
static struct BBString_2 _s443={
	&bbStringClass,
	0xfe4d1e13ed79cd89,
	2,
	{45,32}
};
static struct BBString_9 _s754={
	&bbStringClass,
	0x51a196bf4f21e86b,
	9,
	{45,32,82,101,97,100,121,32,45}
};
static struct BBString_26 _s603={
	&bbStringClass,
	0x88c43b357d175d40,
	26,
	{45,45,45,45,45,45,45,45,45,45,45,45,45,45,45,45,45
	,45,45,45,45,45,45,45,45,45}
};
static struct BBString_11 _s591={
	&bbStringClass,
	0x2847f33bfc56df98,
	11,
	{45,45,109,116,108,109,97,116,99,104,32}
};
static struct BBString_9 _s592={
	&bbStringClass,
	0xd26244f5a613224e,
	9,
	{45,45,109,116,108,110,101,119,32}
};
static struct BBString_9 _s585={
	&bbStringClass,
	0x8d3f0da21870e84a,
	9,
	{45,45,110,111,32,109,116,108,32}
};
static struct BBString_12 _s593={
	&bbStringClass,
	0x55c9534c5a0254d0,
	12,
	{45,45,117,115,101,32,98,114,117,115,104,32}
};
static struct BBString_12 _s583={
	&bbStringClass,
	0x8b95ca2177a6b1c1,
	12,
	{45,45,118,101,114,116,101,120,110,101,119,32}
};
static struct BBString_5 _s860={
	&bbStringClass,
	0xafeb509337bfed42,
	5,
	{46,48,48,48,49}
};
static struct BBString_14 _s576={
	&bbStringClass,
	0xce54aaf33aba0a97,
	14,
	{46,79,66,74,32,67,111,109,109,101,110,116,58,32}
};
static struct BBString_1 _s401={
	&bbStringClass,
	0x93db4e2578382cd,
	1,
	{47}
};
static struct BBString_1 _s606={
	&bbStringClass,
	0x8439ccbd1c202210,
	1,
	{48}
};
static struct BBString_6 _s861={
	&bbStringClass,
	0xa6294a9109ae9d66,
	6,
	{48,46,48,48,48,49}
};
static struct BBString_4 _s859={
	&bbStringClass,
	0x57ac3610e8edffc7,
	4,
	{49,48,50,52}
};
static struct BBString_5 _s780={
	&bbStringClass,
	0xd56b042762871bd6,
	5,
	{49,53,54,55,55}
};
static struct BBString_2 _s773={
	&bbStringClass,
	0xfccd42614599718f,
	2,
	{49,54}
};
static struct BBString_5 _s781={
	&bbStringClass,
	0x5b3a85689aa30435,
	5,
	{49,54,51,56,52}
};
static struct BBString_5 _s782={
	&bbStringClass,
	0x4edbaebbbcdd72d4,
	5,
	{49,54,54,52,48}
};
static struct BBString_5 _s783={
	&bbStringClass,
	0xfd3abb573dc55585,
	5,
	{49,54,54,53,54}
};
static struct BBString_5 _s784={
	&bbStringClass,
	0x4b1e43183fef4326,
	5,
	{49,54,54,55,50}
};
static struct BBString_5 _s785={
	&bbStringClass,
	0xfa191ce49cf0c2a1,
	5,
	{49,54,54,56,56}
};
static struct BBString_5 _s786={
	&bbStringClass,
	0xfddf01b5da52e59d,
	5,
	{49,54,55,48,52}
};
static struct BBString_5 _s805={
	&bbStringClass,
	0xeced5c6fe650913,
	5,
	{49,54,55,50,48}
};
static struct BBString_5 _s787={
	&bbStringClass,
	0x970d01dfb7691a5d,
	5,
	{49,54,55,51,54}
};
static struct BBString_2 _s774={
	&bbStringClass,
	0x95ef94c5cbfb23d7,
	2,
	{49,55}
};
static struct BBString_5 _s806={
	&bbStringClass,
	0xb9ba4ad0b4f65306,
	5,
	{49,55,57,50,48}
};
static struct BBString_5 _s807={
	&bbStringClass,
	0xcb8dec7d9fac6035,
	5,
	{49,55,57,51,54}
};
static struct BBString_2 _s775={
	&bbStringClass,
	0x54bb62b76368862d,
	2,
	{49,56}
};
static struct BBString_5 _s808={
	&bbStringClass,
	0xa7ea08e9f4d850b9,
	5,
	{49,56,49,55,54}
};
static struct BBString_2 _s776={
	&bbStringClass,
	0x1b519b904928c511,
	2,
	{49,57}
};
static struct BBString_5 _s779={
	&bbStringClass,
	0x9373bcea4778f275,
	5,
	{49,57,55,56,57}
};
static struct BBString_1 _s772={
	&bbStringClass,
	0x6bd73b99053ed236,
	1,
	{50}
};
static struct BBString_3 _s802={
	&bbStringClass,
	0xe09cb1e1ade6967a,
	3,
	{50,53,54}
};
static struct BBString_3 _s667={
	&bbStringClass,
	0x574ec9da42bf9c9c,
	3,
	{51,100,115}
};
static struct BBString_5 _s789={
	&bbStringClass,
	0xf2683fb34a1512e6,
	5,
	{52,48,57,54,48}
};
static struct BBString_5 _s790={
	&bbStringClass,
	0x1f701c5a73eae0d8,
	5,
	{52,48,57,55,54}
};
static struct BBString_5 _s791={
	&bbStringClass,
	0xde3ac5495376f298,
	5,
	{52,48,57,57,50}
};
static struct BBString_5 _s792={
	&bbStringClass,
	0xe588624c32a7108d,
	5,
	{52,49,48,48,56}
};
static struct BBString_5 _s793={
	&bbStringClass,
	0x4597ad6598a062c3,
	5,
	{52,49,48,50,52}
};
static struct BBString_5 _s809={
	&bbStringClass,
	0xe8b99af095b6ce1b,
	5,
	{52,49,48,50,53}
};
static struct BBString_5 _s810={
	&bbStringClass,
	0xf51a5dec449ee069,
	5,
	{52,49,48,52,48}
};
static struct BBString_5 _s811={
	&bbStringClass,
	0x1ddc7b8cd58a27bd,
	5,
	{52,49,48,52,50}
};
static struct BBString_5 _s812={
	&bbStringClass,
	0x37366923eff74ca9,
	5,
	{52,49,48,52,51}
};
static struct BBString_5 _s813={
	&bbStringClass,
	0x7a15d4bc5a1f4e17,
	5,
	{52,49,48,56,57}
};
static struct BBString_5 _s814={
	&bbStringClass,
	0x4aa158d877cd03e9,
	5,
	{52,49,48,57,49}
};
static struct BBString_5 _s815={
	&bbStringClass,
	0x1215b6eb6da6a95,
	5,
	{52,49,48,57,50}
};
static struct BBString_5 _s816={
	&bbStringClass,
	0xd6ac97d53b0096f1,
	5,
	{52,49,48,57,51}
};
static struct BBString_5 _s817={
	&bbStringClass,
	0xeabc76c85271cc76,
	5,
	{52,49,48,57,53}
};
static struct BBString_5 _s818={
	&bbStringClass,
	0x18ff64e832a0bc2a,
	5,
	{52,49,48,57,54}
};
static struct BBString_5 _s819={
	&bbStringClass,
	0x4fcb660ef8ae1397,
	5,
	{52,49,48,57,56}
};
static struct BBString_5 _s820={
	&bbStringClass,
	0x103e9d3022fec94f,
	5,
	{52,49,49,48,48}
};
static struct BBString_5 _s821={
	&bbStringClass,
	0xb284ccdf00489515,
	5,
	{52,49,49,48,50}
};
static struct BBString_5 _s822={
	&bbStringClass,
	0xf493032501631424,
	5,
	{52,49,50,49,54}
};
static struct BBString_5 _s794={
	&bbStringClass,
	0x5c94e50c19790c22,
	5,
	{52,49,52,55,50}
};
static struct BBString_5 _s826={
	&bbStringClass,
	0xc3e1ffbd62895afb,
	5,
	{52,49,52,55,54}
};
static struct BBString_5 _s827={
	&bbStringClass,
	0x5d750e866ca45ee5,
	5,
	{52,49,52,56,56}
};
static struct BBString_5 _s828={
	&bbStringClass,
	0xb3a704364a493c8,
	5,
	{52,49,53,48,52}
};
static struct BBString_5 _s829={
	&bbStringClass,
	0x76a3810e567038fc,
	5,
	{52,49,53,50,48}
};
static struct BBString_5 _s823={
	&bbStringClass,
	0x71ae91da60b65be1,
	5,
	{52,49,53,51,54}
};
static struct BBString_5 _s824={
	&bbStringClass,
	0xf3be868fe454ac75,
	5,
	{52,49,53,53,50}
};
static struct BBString_5 _s825={
	&bbStringClass,
	0xc10e06069ee4e4ea,
	5,
	{52,49,53,53,52}
};
static struct BBString_5 _s796={
	&bbStringClass,
	0x57933f9b0ea9756c,
	5,
	{52,49,55,50,56}
};
static struct BBString_5 _s840={
	&bbStringClass,
	0x6a59c58a56658dcc,
	5,
	{52,49,55,52,52}
};
static struct BBString_5 _s795={
	&bbStringClass,
	0x54bd55414a6364de,
	5,
	{52,49,55,56,54}
};
static struct BBString_5 _s830={
	&bbStringClass,
	0xabfa35e48df2dc10,
	5,
	{52,49,55,56,56}
};
static struct BBString_5 _s831={
	&bbStringClass,
	0x963f508ef7d37248,
	5,
	{52,49,55,56,57}
};
static struct BBString_5 _s832={
	&bbStringClass,
	0x98fa1000a6a1ecdc,
	5,
	{52,49,55,57,48}
};
static struct BBString_5 _s833={
	&bbStringClass,
	0x392361fd0b405193,
	5,
	{52,49,55,57,50}
};
static struct BBString_5 _s834={
	&bbStringClass,
	0xbb7c8938e233cff3,
	5,
	{52,49,55,57,52}
};
static struct BBString_5 _s835={
	&bbStringClass,
	0x8751484c8aa4fea1,
	5,
	{52,49,55,57,54}
};
static struct BBString_5 _s836={
	&bbStringClass,
	0xf389abc73ddf3ca7,
	5,
	{52,49,55,57,56}
};
static struct BBString_5 _s837={
	&bbStringClass,
	0xf4d11eca40d6a9a9,
	5,
	{52,49,56,48,48}
};
static struct BBString_5 _s838={
	&bbStringClass,
	0x34071c1e56dd94b,
	5,
	{52,49,56,48,50}
};
static struct BBString_5 _s839={
	&bbStringClass,
	0x56a374ba83068946,
	5,
	{52,49,56,48,52}
};
static struct BBString_5 _s841={
	&bbStringClass,
	0xf0c4c01cb5935fee,
	5,
	{52,49,56,48,57}
};
static struct BBString_5 _s842={
	&bbStringClass,
	0xb87305e7458d5133,
	5,
	{52,49,56,49,49}
};
static struct BBString_5 _s797={
	&bbStringClass,
	0xfe2c7c0710223725,
	5,
	{52,49,56,49,50}
};
static struct BBString_5 _s798={
	&bbStringClass,
	0x22b76c52b6fb48fa,
	5,
	{52,49,56,49,52}
};
static struct BBString_5 _s799={
	&bbStringClass,
	0xfba09dce1838782b,
	5,
	{52,49,56,49,54}
};
static struct BBString_5 _s800={
	&bbStringClass,
	0xe81291deb0c2dcd4,
	5,
	{52,49,56,49,56}
};
static struct BBString_5 _s801={
	&bbStringClass,
	0x4fab2b2347f45a66,
	5,
	{52,49,56,50,48}
};
static struct BBString_5 _s843={
	&bbStringClass,
	0xb28435ad74fc9de,
	5,
	{52,49,56,50,52}
};
static struct BBString_5 _s844={
	&bbStringClass,
	0x58e9d8cd390517ff,
	5,
	{52,49,56,50,54}
};
static struct BBString_5 _s845={
	&bbStringClass,
	0xcd26fa899bf797ae,
	5,
	{52,49,56,50,56}
};
static struct BBString_5 _s846={
	&bbStringClass,
	0x4eadfc0e689c0346,
	5,
	{52,49,56,51,48}
};
static struct BBString_5 _s847={
	&bbStringClass,
	0x5055897b97ab2d51,
	5,
	{52,49,56,51,50}
};
static struct BBString_5 _s788={
	&bbStringClass,
	0xf1fe46e766024035,
	5,
	{52,53,48,53,53}
};
static struct BBString_5 _s848={
	&bbStringClass,
	0x6e6022cf323bf6c2,
	5,
	{52,53,48,53,54}
};
static struct BBString_5 _s849={
	&bbStringClass,
	0x430a83fc4eb1d424,
	5,
	{52,53,48,53,56}
};
static struct BBString_5 _s850={
	&bbStringClass,
	0xd8cee44dcf17edda,
	5,
	{52,53,48,54,52}
};
static struct BBString_5 _s851={
	&bbStringClass,
	0xdcb25d5c58ac7b0e,
	5,
	{52,53,48,55,50}
};
static struct BBString_5 _s852={
	&bbStringClass,
	0xe2e87daa5d00d142,
	5,
	{52,53,48,55,51}
};
static struct BBString_5 _s853={
	&bbStringClass,
	0xc0e48e2900f10cdd,
	5,
	{52,53,48,55,53}
};
static struct BBString_5 _s854={
	&bbStringClass,
	0xb2078faa02e42142,
	5,
	{52,53,48,55,54}
};
static struct BBString_5 _s855={
	&bbStringClass,
	0xd555c1254c72c1fb,
	5,
	{52,53,48,56,56}
};
static struct BBString_5 _s856={
	&bbStringClass,
	0xd0156fd21c44f3c,
	5,
	{52,53,48,56,57}
};
static struct BBString_5 _s857={
	&bbStringClass,
	0xe51a8f107ed0b2b0,
	5,
	{52,53,48,57,48}
};
static struct BBString_5 _s858={
	&bbStringClass,
	0x30aeb88bbf2ba94,
	5,
	{52,53,49,48,52}
};
static struct BBString_4 _s803={
	&bbStringClass,
	0xe430c98e53cef8d2,
	4,
	{52,54,48,56}
};
static struct BBString_2 _s777={
	&bbStringClass,
	0x563a068f73c94ac6,
	2,
	{52,56}
};
static struct BBString_2 _s778={
	&bbStringClass,
	0xfef6917d140f3ed7,
	2,
	{52,57}
};
static struct BBString_4 _s804={
	&bbStringClass,
	0x78f0ce2218a5ae80,
	4,
	{56,52,52,56}
};
static struct BBString_1 _s403={
	&bbStringClass,
	0xfd5c39b3eb3d3242,
	1,
	{58}
};
static struct BBString_4 _s460={
	&bbStringClass,
	0xdd1bee740ea3b882,
	4,
	{65,78,73,77}
};
static struct BBString_4 _s435={
	&bbStringClass,
	0x51ce26a540be02a9,
	4,
	{66,66,51,68}
};
static struct BBString_4 _s475={
	&bbStringClass,
	0x56a740702794b8b1,
	4,
	{66,79,78,69}
};
static struct BBString_4 _s453={
	&bbStringClass,
	0x6ffed9042f29ee9a,
	4,
	{66,82,85,83}
};
static struct BBString_4 _s476={
	&bbStringClass,
	0x2502720a015755c1,
	4,
	{66,111,110,101}
};
static struct BBString_11 _s641={
	&bbStringClass,
	0x8af26535c7de4abd,
	11,
	{68,101,108,32,84,77,97,116,114,105,120}
};
static struct BBString_15 _s662={
	&bbStringClass,
	0x4045b21ed7d2ea2f,
	15,
	{68,101,108,32,84,81,117,97,116,101,114,110,105,111,110}
};
static struct BBString_11 _s637={
	&bbStringClass,
	0xcc742101ec4abac9,
	11,
	{68,101,108,32,84,86,101,99,116,111,114}
};
static struct BBString_8 _s745={
	&bbStringClass,
	0xf91d325564b1487a,
	8,
	{68,101,112,116,104,58,32,32}
};
static struct BBString_24 _s570={
	&bbStringClass,
	0x1ee382eb76b344db,
	24,
	{69,114,114,111,114,58,32,102,105,108,101,32,110,111,116,32,102
	,111,117,110,100,32,45,32}
};
static struct BBString_29 _s569={
	&bbStringClass,
	0x5f391312c24265bf,
	29,
	{69,114,114,111,114,58,32,105,110,118,97,108,105,100,32,46,79
	,66,74,32,115,116,114,101,97,109,32,45,32}
};
static struct BBString_32 _s616={
	&bbStringClass,
	0x3449f1f04c64c07a,
	32,
	{69,114,114,111,114,58,32,116,101,120,116,117,114,101,32,102,105
	,108,101,32,110,111,116,32,102,111,117,110,100,32,45,32}
};
static struct BBString_7 _s597={
	&bbStringClass,
	0xc81173b70ec3d529,
	7,
	{70,97,99,101,115,58,32}
};
static struct BBString_6 _s571={
	&bbStringClass,
	0x479354fb6c4b9166,
	6,
	{70,105,108,101,58,32}
};
static struct BBString_20 _s729={
	&bbStringClass,
	0xb135638cf73b6294,
	20,
	{71,76,95,65,82,66,95,100,101,112,116,104,95,116,101,120,116
	,117,114,101}
};
static struct BBString_23 _s731={
	&bbStringClass,
	0xcc25ec85ed0be0e,
	23,
	{71,76,95,65,82,66,95,102,114,97,103,109,101,110,116,95,112
	,114,111,103,114,97,109}
};
static struct BBString_22 _s735={
	&bbStringClass,
	0x52e9acad0d104def,
	22,
	{71,76,95,65,82,66,95,102,114,97,103,109,101,110,116,95,115
	,104,97,100,101,114}
};
static struct BBString_18 _s739={
	&bbStringClass,
	0x393d70e3006340b7,
	18,
	{71,76,95,65,82,66,95,109,117,108,116,105,115,97,109,112,108
	,101}
};
static struct BBString_19 _s727={
	&bbStringClass,
	0x75d2bbd91c579d79,
	19,
	{71,76,95,65,82,66,95,109,117,108,116,105,116,101,120,116,117
	,114,101}
};
static struct BBString_21 _s733={
	&bbStringClass,
	0x3c4b2cb3954978de,
	21,
	{71,76,95,65,82,66,95,115,104,97,100,101,114,95,111,98,106
	,101,99,116,115}
};
static struct BBString_27 _s736={
	&bbStringClass,
	0x366ff8de7c18adb8,
	27,
	{71,76,95,65,82,66,95,115,104,97,100,105,110,103,95,108,97
	,110,103,117,97,103,101,95,49,48,48}
};
static struct BBString_26 _s725={
	&bbStringClass,
	0x72dc57a645d13b8e,
	26,
	{71,76,95,65,82,66,95,116,101,120,116,117,114,101,95,99,111
	,109,112,114,101,115,115,105,111,110}
};
static struct BBString_23 _s728={
	&bbStringClass,
	0xbd9f757413f08357,
	23,
	{71,76,95,65,82,66,95,116,101,120,116,117,114,101,95,99,117
	,98,101,95,109,97,112}
};
static struct BBString_26 _s740={
	&bbStringClass,
	0xcc6ec1f35a1eae2d,
	26,
	{71,76,95,65,82,66,95,116,101,120,116,117,114,101,95,101,110
	,118,95,99,111,109,98,105,110,101}
};
static struct BBString_27 _s732={
	&bbStringClass,
	0x14fd84f2fc98359c,
	27,
	{71,76,95,65,82,66,95,118,101,114,116,101,120,95,98,117,102
	,102,101,114,95,111,98,106,101,99,116}
};
static struct BBString_21 _s730={
	&bbStringClass,
	0x8ebba5c541b1996f,
	21,
	{71,76,95,65,82,66,95,118,101,114,116,101,120,95,112,114,111
	,103,114,97,109}
};
static struct BBString_20 _s734={
	&bbStringClass,
	0x12bc198522621c50,
	20,
	{71,76,95,65,82,66,95,118,101,114,116,101,120,95,115,104,97
	,100,101,114}
};
static struct BBString_25 _s737={
	&bbStringClass,
	0x4e5ce33cba49d520,
	25,
	{71,76,95,69,88,84,95,102,114,97,109,101,98,117,102,102,101
	,114,95,111,98,106,101,99,116}
};
static struct BBString_27 _s738={
	&bbStringClass,
	0xc6c3bb09b0e57054,
	27,
	{71,76,95,69,88,84,95,112,97,99,107,101,100,95,100,101,112
	,116,104,95,115,116,101,110,99,105,108}
};
static struct BBString_31 _s726={
	&bbStringClass,
	0xf66dbaa88eea7ed9,
	31,
	{71,76,95,69,88,84,95,116,101,120,116,117,114,101,95,99,111
	,109,112,114,101,115,115,105,111,110,95,115,51,116,99}
};
static struct BBString_26 _s723={
	&bbStringClass,
	0x4a9b2d1d7c0fa5e6,
	26,
	{71,76,95,69,88,84,95,116,101,120,116,117,114,101,95,101,110
	,118,95,99,111,109,98,105,110,101}
};
static struct BBString_33 _s724={
	&bbStringClass,
	0xea8fc716645e840d,
	33,
	{71,76,95,69,88,84,95,116,101,120,116,117,114,101,95,102,105
	,108,116,101,114,95,97,110,105,115,111,116,114,111,112,105,99
}
};
static struct BBString_16 _s741={
	&bbStringClass,
	0xa8a61efd2d338c5b,
	16,
	{72,97,114,100,119,97,114,101,73,110,102,111,46,116,120,116}
};
static struct BBString_13 _s742={
	&bbStringClass,
	0xbd2d7847717f1a9,
	13,
	{72,97,114,100,119,97,114,101,105,110,102,111,58}
};
static struct BBString_8 _s744={
	&bbStringClass,
	0x3a651766c0c53516,
	8,
	{72,101,105,103,104,116,58,32}
};
static struct BBString_8 _s746={
	&bbStringClass,
	0xfde66ceae25181ba,
	8,
	{72,101,114,116,122,58,32,32}
};
static struct BBString_4 _s477={
	&bbStringClass,
	0x1fde3a0d70237190,
	4,
	{75,69,89,83}
};
static struct BBString_4 _s462={
	&bbStringClass,
	0x81cec1a2db82e30d,
	4,
	{77,69,83,72}
};
static struct BBString_10 _s612={
	&bbStringClass,
	0xc94467543f2403f6,
	10,
	{77,97,116,65,108,112,104,97,58,32}
};
static struct BBString_10 _s610={
	&bbStringClass,
	0xcb3279eaaa4d3048,
	10,
	{77,97,116,67,111,108,111,114,58,32}
};
static struct BBString_12 _s615={
	&bbStringClass,
	0xef1168b460f1e0fb,
	12,
	{77,97,116,84,101,120,116,117,114,101,58,32}
};
static struct BBString_14 _s573={
	&bbStringClass,
	0xb2c2abf91443f17,
	14,
	{77,97,116,101,114,105,97,108,80,97,116,104,58,32}
};
static struct BBString_9 _s608={
	&bbStringClass,
	0x7908e83014850fbc,
	9,
	{77,97,116,110,97,109,101,58,32}
};
static struct BBString_19 _s752={
	&bbStringClass,
	0xe49e9425991bae8e,
	19,
	{77,97,120,32,76,105,103,104,116,115,58,32,32,32,32,32,32
	,32,32}
};
static struct BBString_19 _s751={
	&bbStringClass,
	0x2be3ba1c383333dc,
	19,
	{77,97,120,32,84,101,120,116,117,114,101,32,83,105,122,101,58
	,32,32}
};
static struct BBString_19 _s750={
	&bbStringClass,
	0x78cb1b8127116012,
	19,
	{77,97,120,32,84,101,120,116,117,114,101,32,85,110,105,116,115
	,58,32}
};
static struct BBString_4 _s461={
	&bbStringClass,
	0x6aeec575c83b6408,
	4,
	{77,101,115,104}
};
static struct BBString_10 _s572={
	&bbStringClass,
	0xdd9f95532210b1f8,
	10,
	{77,101,115,104,80,97,116,104,58,32}
};
static struct BBString_4 _s440={
	&bbStringClass,
	0x61e7f2ae07f2a337,
	4,
	{78,79,68,69}
};
static struct BBString_11 _s640={
	&bbStringClass,
	0x4b52dd3963c68015,
	11,
	{78,101,119,32,84,77,97,116,114,105,120}
};
static struct BBString_15 _s661={
	&bbStringClass,
	0xdd93c9daf958735c,
	15,
	{78,101,119,32,84,81,117,97,116,101,114,110,105,111,110}
};
static struct BBString_11 _s636={
	&bbStringClass,
	0x691127c2d5a99620,
	11,
	{78,101,119,32,84,86,101,99,116,111,114}
};
static struct BBString_14 _s595={
	&bbStringClass,
	0x5507839770707eec,
	14,
	{78,111,114,109,97,108,115,67,111,117,110,116,58,32}
};
static struct BBString_18 _s753={
	&bbStringClass,
	0xe32b6a3e0a72403d,
	18,
	{79,112,101,110,71,76,32,69,120,116,101,110,115,105,111,110,115
	,58}
};
static struct BBString_16 _s749={
	&bbStringClass,
	0xbfcd4b2418a2f07f,
	16,
	{79,112,101,110,71,76,45,86,101,114,115,105,111,110,58,32}
};
static struct BBString_4 _s519={
	&bbStringClass,
	0x75f7bc4f675be895,
	4,
	{82,79,79,84}
};
static struct BBString_16 _s748={
	&bbStringClass,
	0xd01922ff794721ed,
	16,
	{82,101,110,100,101,114,101,114,58,32,32,32,32,32,32,32}
};
static struct BBString_7 _s599={
	&bbStringClass,
	0xedd8cd1aa7e3d2de,
	7,
	{83,117,114,102,115,58,32}
};
static struct BBString_4 _s444={
	&bbStringClass,
	0x8ca4e705685bedfb,
	4,
	{84,69,88,83}
};
static struct BBString_4 _s471={
	&bbStringClass,
	0xd7ec61fb34424964,
	4,
	{84,82,73,83}
};
static struct BBString_16 _s596={
	&bbStringClass,
	0x31e776b9eff63ab7,
	16,
	{84,101,120,67,111,111,114,100,115,67,111,117,110,116,58,32}
};
static struct BBString_13 _s574={
	&bbStringClass,
	0xbdd3b7b6eb67ffc7,
	13,
	{84,101,120,116,117,114,101,80,97,116,104,58,32}
};
static struct BBString_15 _s605={
	&bbStringClass,
	0x3d1a482d1ee615d3,
	15,
	{85,112,100,97,116,101,78,111,114,109,97,108,115,40,41}
};
static struct BBString_4 _s464={
	&bbStringClass,
	0x56448a2b4119d37d,
	4,
	{86,82,84,83}
};
static struct BBString_16 _s747={
	&bbStringClass,
	0x37ea2ef4fc6f947b,
	16,
	{86,101,110,100,111,114,58,32,32,32,32,32,32,32,32,32}
};
static struct BBString_13 _s594={
	&bbStringClass,
	0x7a01626d0b2fecb0,
	13,
	{86,101,114,116,101,120,67,111,117,110,116,58,32}
};
static struct BBString_8 _s743={
	&bbStringClass,
	0xe1e266830118696d,
	8,
	{87,105,100,116,104,58,32,32}
};
static struct BBString_1 _s400={
	&bbStringClass,
	0xa3fc6842a7ac08cf,
	1,
	{92}
};
static struct BBString_4 _s163={
	&bbStringClass,
	0x9eedf45dbd4932f0,
	4,
	{93,32,61,32}
};
static struct BBString_8 _s496={
	&bbStringClass,
	0x79853a4ee27fcb70,
	8,
	{93,46,110,97,109,101,58,32}
};
static struct BBString_3 _s416={
	&bbStringClass,
	0x78b9e36e5d208096,
	3,
	{93,58,32}
};
static struct BBString_3 _s665={
	&bbStringClass,
	0x9ea30266a7cb034a,
	3,
	{98,51,100}
};
static struct BBString_2 _s611={
	&bbStringClass,
	0xa5ea4db4785a3946,
	2,
	{100,32}
};
static struct BBString_3 _s399={
	&bbStringClass,
	0xeae29db6b3c2feb1,
	3,
	{100,100,115}
};
static struct BBString_2 _s584={
	&bbStringClass,
	0x31294901d207f20,
	2,
	{102,32}
};
static struct BBString_2 _s579={
	&bbStringClass,
	0xfcf3f67e0d172d5,
	2,
	{103,32}
};
static struct BBString_8 _s450={
	&bbStringClass,
	0x63f3cba6903f3817,
	8,
	{105,110,99,98,105,110,58,58}
};
static struct BBString_3 _s609={
	&bbStringClass,
	0x8208fde554dc99ea,
	3,
	{107,100,32}
};
static struct BBString_7 _s614={
	&bbStringClass,
	0x449c243d1b7d1e73,
	7,
	{109,97,112,95,107,100,32}
};
static struct BBString_3 _s666={
	&bbStringClass,
	0x67dd5268962106d2,
	3,
	{109,100,50}
};
static struct BBString_5 _s577={
	&bbStringClass,
	0x3c56131cd9129e4e,
	5,
	{109,115,32,45,32}
};
static struct BBString_7 _s588={
	&bbStringClass,
	0x2f8444cf91a19b70,
	7,
	{109,116,108,108,105,98,32}
};
static struct BBString_8 _s589={
	&bbStringClass,
	0x2dfcdab9a0c293dd,
	8,
	{109,116,108,108,105,98,58,32}
};
static struct BBString_7 _s607={
	&bbStringClass,
	0x1051eaa645884292,
	7,
	{110,101,119,109,116,108,32}
};
static struct BBString_2 _s578={
	&bbStringClass,
	0x15036baf4e76fdba,
	2,
	{111,32}
};
static struct BBString_3 _s668={
	&bbStringClass,
	0x7137524936fafdad,
	3,
	{111,98,106}
};
static struct BBString_3 _s581={
	&bbStringClass,
	0x45f2df727613f3ac,
	3,
	{111,102,102}
};
static struct BBString_2 _s580={
	&bbStringClass,
	0xe9aec7732c678ad9,
	2,
	{115,32}
};
static struct BBString_9 _s600={
	&bbStringClass,
	0x4547f3630713ab69,
	9,
	{115,117,114,102,32,105,100,58,32}
};
static struct BBString_3 _s613={
	&bbStringClass,
	0x186eff7a0f1e8c6d,
	3,
	{116,114,32}
};
static struct BBString_7 _s590={
	&bbStringClass,
	0xdcafd94da683d022,
	7,
	{117,115,101,109,116,108,32}
};
static struct BBString_2 _s582={
	&bbStringClass,
	0xd43c91df69ea8d23,
	2,
	{118,32}
};
static struct BBString_3 _s586={
	&bbStringClass,
	0x28f684ec564c63c1,
	3,
	{118,110,32}
};
static struct BBString_3 _s587={
	&bbStringClass,
	0xe5d479ff9baf6df1,
	3,
	{118,116,32}
};
static struct BBString_5 _s451={
	&bbStringClass,
	0x700c9f2e2f290ea4,
	5,
	{122,105,112,58,58}
};
struct BBDebugScope_1{int kind; const char *name; BBDebugDecl decls[2]; };
struct BBDebugScope_10{int kind; const char *name; BBDebugDecl decls[11]; };
struct BBDebugScope_11{int kind; const char *name; BBDebugDecl decls[12]; };
struct BBDebugScope_116{int kind; const char *name; BBDebugDecl decls[117]; };
struct BBDebugScope_12{int kind; const char *name; BBDebugDecl decls[13]; };
struct BBDebugScope_120{int kind; const char *name; BBDebugDecl decls[121]; };
struct BBDebugScope_13{int kind; const char *name; BBDebugDecl decls[14]; };
struct BBDebugScope_14{int kind; const char *name; BBDebugDecl decls[15]; };
struct BBDebugScope_15{int kind; const char *name; BBDebugDecl decls[16]; };
struct BBDebugScope_16{int kind; const char *name; BBDebugDecl decls[17]; };
struct BBDebugScope_17{int kind; const char *name; BBDebugDecl decls[18]; };
struct BBDebugScope_171{int kind; const char *name; BBDebugDecl decls[172]; };
struct BBDebugScope_18{int kind; const char *name; BBDebugDecl decls[19]; };
struct BBDebugScope_19{int kind; const char *name; BBDebugDecl decls[20]; };
struct BBDebugScope_2{int kind; const char *name; BBDebugDecl decls[3]; };
struct BBDebugScope_20{int kind; const char *name; BBDebugDecl decls[21]; };
struct BBDebugScope_21{int kind; const char *name; BBDebugDecl decls[22]; };
struct BBDebugScope_23{int kind; const char *name; BBDebugDecl decls[24]; };
struct BBDebugScope_25{int kind; const char *name; BBDebugDecl decls[26]; };
struct BBDebugScope_26{int kind; const char *name; BBDebugDecl decls[27]; };
struct BBDebugScope_27{int kind; const char *name; BBDebugDecl decls[28]; };
struct BBDebugScope_3{int kind; const char *name; BBDebugDecl decls[4]; };
struct BBDebugScope_31{int kind; const char *name; BBDebugDecl decls[32]; };
struct BBDebugScope_32{int kind; const char *name; BBDebugDecl decls[33]; };
struct BBDebugScope_33{int kind; const char *name; BBDebugDecl decls[34]; };
struct BBDebugScope_34{int kind; const char *name; BBDebugDecl decls[35]; };
struct BBDebugScope_36{int kind; const char *name; BBDebugDecl decls[37]; };
struct BBDebugScope_4{int kind; const char *name; BBDebugDecl decls[5]; };
struct BBDebugScope_41{int kind; const char *name; BBDebugDecl decls[42]; };
struct BBDebugScope_42{int kind; const char *name; BBDebugDecl decls[43]; };
struct BBDebugScope_43{int kind; const char *name; BBDebugDecl decls[44]; };
struct BBDebugScope_44{int kind; const char *name; BBDebugDecl decls[45]; };
struct BBDebugScope_46{int kind; const char *name; BBDebugDecl decls[47]; };
struct BBDebugScope_5{int kind; const char *name; BBDebugDecl decls[6]; };
struct BBDebugScope_6{int kind; const char *name; BBDebugDecl decls[7]; };
struct BBDebugScope_68{int kind; const char *name; BBDebugDecl decls[69]; };
struct BBDebugScope_7{int kind; const char *name; BBDebugDecl decls[8]; };
struct BBDebugScope_70{int kind; const char *name; BBDebugDecl decls[71]; };
struct BBDebugScope_73{int kind; const char *name; BBDebugDecl decls[74]; };
struct BBDebugScope_8{int kind; const char *name; BBDebugDecl decls[9]; };
struct BBDebugScope_83{int kind; const char *name; BBDebugDecl decls[84]; };
struct BBDebugScope_87{int kind; const char *name; BBDebugDecl decls[88]; };
struct BBDebugScope_9{int kind; const char *name; BBDebugDecl decls[10]; };
struct BBDebugScope_93{int kind; const char *name; BBDebugDecl decls[94]; };
struct openb3d_openb3dcore_TMeshLoader_obj* openb3d_openb3dcore_mesh_loaders=(struct openb3d_openb3dcore_TMeshLoader_obj*)((struct openb3d_openb3dcore_TMeshLoader_obj*)&bbNullObject);
void _openb3d_openb3dcore_TMeshLoader_New(struct openb3d_openb3dcore_TMeshLoader_obj* o) {
	bbObjectCtor((BBOBJECT)o);
	o->clas = &openb3d_openb3dcore_TMeshLoader;
	((struct openb3d_openb3dcore_TMeshLoader_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmeshloader__succ = (struct openb3d_openb3dcore_TMeshLoader_obj*)((struct openb3d_openb3dcore_TMeshLoader_obj*)&bbNullObject);
	struct BBDebugScope __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"New",
		{
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x495c13799fba57b6, 31, 0};
	bbOnDebugEnterStm(&__stmt_0);
	((struct openb3d_openb3dcore_TMeshLoader_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmeshloader__succ =(struct openb3d_openb3dcore_TMeshLoader_obj*)openb3d_openb3dcore_mesh_loaders;
	struct BBDebugStm __stmt_1 = {0x495c13799fba57b6, 32, 0};
	bbOnDebugEnterStm(&__stmt_1);
	openb3d_openb3dcore_mesh_loaders=(struct openb3d_openb3dcore_TMeshLoader_obj*)o;
	bbOnDebugLeaveScope();
}
BBINT _openb3d_openb3dcore_TMeshLoader_CanLoadMesh_S(struct openb3d_openb3dcore_TMeshLoader_obj* o,BBSTRING bbt_extension){
	brl_blitz_NullMethodError();
	return 0;
}
struct openb3d_openb3dcore_TMesh_obj* _openb3d_openb3dcore_TMeshLoader_LoadMesh_TTStreamTObjectTTEntityi(struct openb3d_openb3dcore_TMeshLoader_obj* o,struct brl_stream_TStream_obj* bbt_file,BBOBJECT bbt_url,struct openb3d_openb3dcore_TEntity_obj* bbt_parent,BBINT bbt_flags){
	brl_blitz_NullMethodError();
	return (struct openb3d_openb3dcore_TMesh_obj*)((struct openb3d_openb3dcore_TMesh_obj*)&bbNullObject);
}
struct openb3d_openb3dcore_TMesh_obj* _openb3d_openb3dcore_TMeshLoader_LoadAnimMesh_TTStreamTObjectTTEntityi(struct openb3d_openb3dcore_TMeshLoader_obj* o,struct brl_stream_TStream_obj* bbt_file,BBOBJECT bbt_url,struct openb3d_openb3dcore_TEntity_obj* bbt_parent,BBINT bbt_flags){
	brl_blitz_NullMethodError();
	return (struct openb3d_openb3dcore_TMesh_obj*)((struct openb3d_openb3dcore_TMesh_obj*)&bbNullObject);
}
struct BBDebugScope_2 openb3d_openb3dcore_TMeshLoader_scope ={
	BBDEBUGSCOPE_USERTYPE,
	"TMeshLoader",
	{
		{
			BBDEBUGDECL_FIELD,
			"_succ",
			":TMeshLoader",
			.field_offset=offsetof(struct openb3d_openb3dcore_TMeshLoader_obj,_openb3d_openb3dcore_tmeshloader__succ)
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"New",
			"()i",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_TMeshLoader_New
		},
		{
			BBDEBUGDECL_END
		}
	}
};
struct BBClass_openb3d_openb3dcore_TMeshLoader openb3d_openb3dcore_TMeshLoader={
	&bbObjectClass,
	bbObjectFree,
	(BBDebugScope*)&openb3d_openb3dcore_TMeshLoader_scope,
	sizeof(struct openb3d_openb3dcore_TMeshLoader_obj),
	(void (*)(BBOBJECT))_openb3d_openb3dcore_TMeshLoader_New,
	bbObjectDtor,
	bbObjectToString,
	bbObjectCompare,
	bbObjectSendMessage,
	0,
	0,
	sizeof(struct openb3d_openb3dcore_TMeshLoader_obj*)
	,0
	,offsetof(struct openb3d_openb3dcore_TMeshLoader_obj,_openb3d_openb3dcore_tmeshloader__succ)
	,_openb3d_openb3dcore_TMeshLoader_CanLoadMesh_S
	,_openb3d_openb3dcore_TMeshLoader_LoadMesh_TTStreamTObjectTTEntityi
	,_openb3d_openb3dcore_TMeshLoader_LoadAnimMesh_TTStreamTObjectTTEntityi
};

void _openb3d_openb3dcore_TMeshLoaderOpenB3D_New(struct openb3d_openb3dcore_TMeshLoaderOpenB3D_obj* o) {
	_openb3d_openb3dcore_TMeshLoader_New((struct openb3d_openb3dcore_TMeshLoader_obj*)o);
	o->clas = &openb3d_openb3dcore_TMeshLoaderOpenB3D;
}
BBINT _openb3d_openb3dcore_TMeshLoaderOpenB3D_CanLoadMesh_S(struct openb3d_openb3dcore_TMeshLoaderOpenB3D_obj* o,BBSTRING bbt_extension){
	((struct openb3d_openb3dcore_TMeshLoaderOpenB3D_obj*)bbNullObjectTest((BBObject*)o));
	struct BBDebugScope_2 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"CanLoadMesh",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TMeshLoaderOpenB3D",
				.var_address=&o
			},
			{
				BBDEBUGDECL_LOCAL,
				"extension",
				"$",
				.var_address=&bbt_extension
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x495c13799fba57b6, 52, 0};
	bbOnDebugEnterStm(&__stmt_0);
	BBSTRING bbt_=bbStringToLower((BBSTRING)bbt_extension);
	struct BBDebugStm __stmt_1 = {0x495c13799fba57b6, 53, 0};
	bbOnDebugEnterStm(&__stmt_1);
	if(bbStringEquals(bbt_, ((BBString*)&_s665))==1){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x495c13799fba57b6, 54, 0};
		bbOnDebugEnterStm(&__stmt_0);
		bbOnDebugLeaveScope();
		bbOnDebugLeaveScope();
		return 1;
	}else{
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x495c13799fba57b6, 55, 0};
		bbOnDebugEnterStm(&__stmt_0);
		if(bbStringEquals(bbt_, ((BBString*)&_s666))==1){
			struct BBDebugScope __scope = {
				BBDEBUGSCOPE_LOCALBLOCK,
				0,
				{
					{
						BBDEBUGDECL_END
					}
				}
			};
			bbOnDebugEnterScope((BBDebugScope *)&__scope);
			struct BBDebugStm __stmt_0 = {0x495c13799fba57b6, 56, 0};
			bbOnDebugEnterStm(&__stmt_0);
			bbOnDebugLeaveScope();
			bbOnDebugLeaveScope();
			bbOnDebugLeaveScope();
			return 1;
		}else{
			struct BBDebugScope __scope = {
				BBDEBUGSCOPE_LOCALBLOCK,
				0,
				{
					{
						BBDEBUGDECL_END
					}
				}
			};
			bbOnDebugEnterScope((BBDebugScope *)&__scope);
			struct BBDebugStm __stmt_0 = {0x495c13799fba57b6, 57, 0};
			bbOnDebugEnterStm(&__stmt_0);
			if(bbStringEquals(bbt_, ((BBString*)&_s667))==1){
				struct BBDebugScope __scope = {
					BBDEBUGSCOPE_LOCALBLOCK,
					0,
					{
						{
							BBDEBUGDECL_END
						}
					}
				};
				bbOnDebugEnterScope((BBDebugScope *)&__scope);
				struct BBDebugStm __stmt_0 = {0x495c13799fba57b6, 58, 0};
				bbOnDebugEnterStm(&__stmt_0);
				bbOnDebugLeaveScope();
				bbOnDebugLeaveScope();
				bbOnDebugLeaveScope();
				bbOnDebugLeaveScope();
				return 1;
			}
			bbOnDebugLeaveScope();
		}
		bbOnDebugLeaveScope();
	}
	bbOnDebugLeaveScope();
	return 0;
}
struct openb3d_openb3dcore_TMesh_obj* _openb3d_openb3dcore_TMeshLoaderOpenB3D_LoadMesh_TTStreamTObjectTTEntityi(struct openb3d_openb3dcore_TMeshLoaderOpenB3D_obj* o,struct brl_stream_TStream_obj* bbt_file,BBOBJECT bbt_url,struct openb3d_openb3dcore_TEntity_obj* bbt_parent,BBINT bbt_flags){
	((struct openb3d_openb3dcore_TMeshLoaderOpenB3D_obj*)bbNullObjectTest((BBObject*)o));
	BBBYTE* bbt_cString=0;
	BBBYTE* bbt_inst=0;
	struct openb3d_openb3dcore_TMesh_obj* bbt_mesh=(struct openb3d_openb3dcore_TMesh_obj*)((struct openb3d_openb3dcore_TMesh_obj*)&bbNullObject);
	struct BBDebugScope_8 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"LoadMesh",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TMeshLoaderOpenB3D",
				.var_address=&o
			},
			{
				BBDEBUGDECL_LOCAL,
				"file",
				":TStream",
				.var_address=&bbt_file
			},
			{
				BBDEBUGDECL_LOCAL,
				"url",
				":Object",
				.var_address=&bbt_url
			},
			{
				BBDEBUGDECL_LOCAL,
				"parent",
				":TEntity",
				.var_address=&bbt_parent
			},
			{
				BBDEBUGDECL_LOCAL,
				"flags",
				"i",
				.var_address=&bbt_flags
			},
			{
				BBDEBUGDECL_LOCAL,
				"cString",
				"*b",
				.var_address=&bbt_cString
			},
			{
				BBDEBUGDECL_LOCAL,
				"inst",
				"*b",
				.var_address=&bbt_inst
			},
			{
				BBDEBUGDECL_LOCAL,
				"mesh",
				":TMesh",
				.var_address=&bbt_mesh
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x495c13799fba57b6, 64, 0};
	bbOnDebugEnterStm(&__stmt_0);
	if(!((openb3d_openb3dcore_TGlobal3D_Mesh_Loader==0) || (((unsigned int)(openb3d_openb3dcore_TGlobal3D_Mesh_Loader)&(unsigned int)(2))!=0))){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x495c13799fba57b6, 64, 0};
		bbOnDebugEnterStm(&__stmt_0);
		bbOnDebugLeaveScope();
		bbOnDebugLeaveScope();
		return (struct openb3d_openb3dcore_TMesh_obj*)&bbNullObject;
	}
	struct BBDebugStm __stmt_1 = {0x495c13799fba57b6, 66, 0};
	bbOnDebugEnterStm(&__stmt_1);
	bbt_cString=bbStringToCString((BBSTRING)((BBString *)bbObjectStringcast((BBOBJECT)bbt_url)));
	struct BBDebugStm __stmt_2 = {0x495c13799fba57b6, 67, 0};
	bbOnDebugEnterStm(&__stmt_2);
	bbt_inst=LoadMesh_(bbt_cString,openb3d_openb3dcore_TEntity_GetInstance_pb_TTEntity((struct openb3d_openb3dcore_TEntity_obj*)bbt_parent));
	struct BBDebugStm __stmt_3 = {0x495c13799fba57b6, 68, 0};
	bbOnDebugEnterStm(&__stmt_3);
	bbt_mesh=(struct openb3d_openb3dcore_TMesh_obj*)openb3d_openb3dcore_TMesh_CreateObject_TTMesh_pb(bbt_inst);
	struct BBDebugStm __stmt_4 = {0x495c13799fba57b6, 69, 0};
	bbOnDebugEnterStm(&__stmt_4);
	bbMemFree((void*)bbt_cString);
	struct BBDebugStm __stmt_5 = {0x495c13799fba57b6, 71, 0};
	bbOnDebugEnterStm(&__stmt_5);
	bbOnDebugLeaveScope();
	return (struct openb3d_openb3dcore_TMesh_obj*)bbt_mesh;
}
struct openb3d_openb3dcore_TMesh_obj* _openb3d_openb3dcore_TMeshLoaderOpenB3D_LoadAnimMesh_TTStreamTObjectTTEntityi(struct openb3d_openb3dcore_TMeshLoaderOpenB3D_obj* o,struct brl_stream_TStream_obj* bbt_file,BBOBJECT bbt_url,struct openb3d_openb3dcore_TEntity_obj* bbt_parent,BBINT bbt_flags){
	((struct openb3d_openb3dcore_TMeshLoaderOpenB3D_obj*)bbNullObjectTest((BBObject*)o));
	BBBYTE* bbt_cString=0;
	BBBYTE* bbt_inst=0;
	struct openb3d_openb3dcore_TMesh_obj* bbt_mesh=(struct openb3d_openb3dcore_TMesh_obj*)((struct openb3d_openb3dcore_TMesh_obj*)&bbNullObject);
	struct BBDebugScope_8 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"LoadAnimMesh",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TMeshLoaderOpenB3D",
				.var_address=&o
			},
			{
				BBDEBUGDECL_LOCAL,
				"file",
				":TStream",
				.var_address=&bbt_file
			},
			{
				BBDEBUGDECL_LOCAL,
				"url",
				":Object",
				.var_address=&bbt_url
			},
			{
				BBDEBUGDECL_LOCAL,
				"parent",
				":TEntity",
				.var_address=&bbt_parent
			},
			{
				BBDEBUGDECL_LOCAL,
				"flags",
				"i",
				.var_address=&bbt_flags
			},
			{
				BBDEBUGDECL_LOCAL,
				"cString",
				"*b",
				.var_address=&bbt_cString
			},
			{
				BBDEBUGDECL_LOCAL,
				"inst",
				"*b",
				.var_address=&bbt_inst
			},
			{
				BBDEBUGDECL_LOCAL,
				"mesh",
				":TMesh",
				.var_address=&bbt_mesh
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x495c13799fba57b6, 77, 0};
	bbOnDebugEnterStm(&__stmt_0);
	if(!((openb3d_openb3dcore_TGlobal3D_Mesh_Loader==0) || (((unsigned int)(openb3d_openb3dcore_TGlobal3D_Mesh_Loader)&(unsigned int)(2))!=0))){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x495c13799fba57b6, 77, 0};
		bbOnDebugEnterStm(&__stmt_0);
		bbOnDebugLeaveScope();
		bbOnDebugLeaveScope();
		return (struct openb3d_openb3dcore_TMesh_obj*)&bbNullObject;
	}
	struct BBDebugStm __stmt_1 = {0x495c13799fba57b6, 79, 0};
	bbOnDebugEnterStm(&__stmt_1);
	bbt_cString=bbStringToCString((BBSTRING)((BBString *)bbObjectStringcast((BBOBJECT)bbt_url)));
	struct BBDebugStm __stmt_2 = {0x495c13799fba57b6, 80, 0};
	bbOnDebugEnterStm(&__stmt_2);
	bbt_inst=LoadAnimMesh_(bbt_cString,openb3d_openb3dcore_TEntity_GetInstance_pb_TTEntity((struct openb3d_openb3dcore_TEntity_obj*)bbt_parent));
	struct BBDebugStm __stmt_3 = {0x495c13799fba57b6, 81, 0};
	bbOnDebugEnterStm(&__stmt_3);
	bbt_mesh=(struct openb3d_openb3dcore_TMesh_obj*)openb3d_openb3dcore_TMesh_CreateObject_TTMesh_pb(bbt_inst);
	struct BBDebugStm __stmt_4 = {0x495c13799fba57b6, 82, 0};
	bbOnDebugEnterStm(&__stmt_4);
	bbMemFree((void*)bbt_cString);
	struct BBDebugStm __stmt_5 = {0x495c13799fba57b6, 83, 0};
	bbOnDebugEnterStm(&__stmt_5);
	((struct openb3d_openb3dcore_TMesh_obj*)bbNullObjectTest((BBObject*)bbt_mesh))->clas->m_CreateAllChildren((struct openb3d_openb3dcore_TMesh_obj*)bbt_mesh);
	struct BBDebugStm __stmt_6 = {0x495c13799fba57b6, 85, 0};
	bbOnDebugEnterStm(&__stmt_6);
	bbOnDebugLeaveScope();
	return (struct openb3d_openb3dcore_TMesh_obj*)bbt_mesh;
}
struct BBDebugScope_4 openb3d_openb3dcore_TMeshLoaderOpenB3D_scope ={
	BBDEBUGSCOPE_USERTYPE,
	"TMeshLoaderOpenB3D",
	{
		{
			BBDEBUGDECL_TYPEMETHOD,
			"New",
			"()i",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_TMeshLoaderOpenB3D_New
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"CanLoadMesh",
			"($)i",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_TMeshLoaderOpenB3D_CanLoadMesh_S
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"LoadMesh",
			"(:TStream,:Object,:TEntity,i):TMesh",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_TMeshLoaderOpenB3D_LoadMesh_TTStreamTObjectTTEntityi
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"LoadAnimMesh",
			"(:TStream,:Object,:TEntity,i):TMesh",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_TMeshLoaderOpenB3D_LoadAnimMesh_TTStreamTObjectTTEntityi
		},
		{
			BBDEBUGDECL_END
		}
	}
};
struct BBClass_openb3d_openb3dcore_TMeshLoaderOpenB3D openb3d_openb3dcore_TMeshLoaderOpenB3D={
	&openb3d_openb3dcore_TMeshLoader,
	bbObjectFree,
	(BBDebugScope*)&openb3d_openb3dcore_TMeshLoaderOpenB3D_scope,
	sizeof(struct openb3d_openb3dcore_TMeshLoaderOpenB3D_obj),
	(void (*)(BBOBJECT))_openb3d_openb3dcore_TMeshLoaderOpenB3D_New,
	bbObjectDtor,
	bbObjectToString,
	bbObjectCompare,
	bbObjectSendMessage,
	0,
	0,
	0
	,0
	,sizeof(void*)
	,_openb3d_openb3dcore_TMeshLoaderOpenB3D_CanLoadMesh_S
	,_openb3d_openb3dcore_TMeshLoaderOpenB3D_LoadMesh_TTStreamTObjectTTEntityi
	,_openb3d_openb3dcore_TMeshLoaderOpenB3D_LoadAnimMesh_TTStreamTObjectTTEntityi
};

void _openb3d_openb3dcore_TMeshLoaderMax_New(struct openb3d_openb3dcore_TMeshLoaderMax_obj* o) {
	_openb3d_openb3dcore_TMeshLoader_New((struct openb3d_openb3dcore_TMeshLoader_obj*)o);
	o->clas = &openb3d_openb3dcore_TMeshLoaderMax;
}
BBINT _openb3d_openb3dcore_TMeshLoaderMax_CanLoadMesh_S(struct openb3d_openb3dcore_TMeshLoaderMax_obj* o,BBSTRING bbt_extension){
	((struct openb3d_openb3dcore_TMeshLoaderMax_obj*)bbNullObjectTest((BBObject*)o));
	struct BBDebugScope_2 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"CanLoadMesh",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TMeshLoaderMax",
				.var_address=&o
			},
			{
				BBDEBUGDECL_LOCAL,
				"extension",
				"$",
				.var_address=&bbt_extension
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x495c13799fba57b6, 94, 0};
	bbOnDebugEnterStm(&__stmt_0);
	BBSTRING bbt_=bbStringToLower((BBSTRING)bbt_extension);
	struct BBDebugStm __stmt_1 = {0x495c13799fba57b6, 95, 0};
	bbOnDebugEnterStm(&__stmt_1);
	if(bbStringEquals(bbt_, ((BBString*)&_s665))==1){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x495c13799fba57b6, 96, 0};
		bbOnDebugEnterStm(&__stmt_0);
		bbOnDebugLeaveScope();
		bbOnDebugLeaveScope();
		return 1;
	}else{
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x495c13799fba57b6, 97, 0};
		bbOnDebugEnterStm(&__stmt_0);
		if(bbStringEquals(bbt_, ((BBString*)&_s666))==1){
			struct BBDebugScope __scope = {
				BBDEBUGSCOPE_LOCALBLOCK,
				0,
				{
					{
						BBDEBUGDECL_END
					}
				}
			};
			bbOnDebugEnterScope((BBDebugScope *)&__scope);
			struct BBDebugStm __stmt_0 = {0x495c13799fba57b6, 98, 0};
			bbOnDebugEnterStm(&__stmt_0);
			bbOnDebugLeaveScope();
			bbOnDebugLeaveScope();
			bbOnDebugLeaveScope();
			return 1;
		}else{
			struct BBDebugScope __scope = {
				BBDEBUGSCOPE_LOCALBLOCK,
				0,
				{
					{
						BBDEBUGDECL_END
					}
				}
			};
			bbOnDebugEnterScope((BBDebugScope *)&__scope);
			struct BBDebugStm __stmt_0 = {0x495c13799fba57b6, 99, 0};
			bbOnDebugEnterStm(&__stmt_0);
			if(bbStringEquals(bbt_, ((BBString*)&_s667))==1){
				struct BBDebugScope __scope = {
					BBDEBUGSCOPE_LOCALBLOCK,
					0,
					{
						{
							BBDEBUGDECL_END
						}
					}
				};
				bbOnDebugEnterScope((BBDebugScope *)&__scope);
				struct BBDebugStm __stmt_0 = {0x495c13799fba57b6, 100, 0};
				bbOnDebugEnterStm(&__stmt_0);
				bbOnDebugLeaveScope();
				bbOnDebugLeaveScope();
				bbOnDebugLeaveScope();
				bbOnDebugLeaveScope();
				return 1;
			}else{
				struct BBDebugScope __scope = {
					BBDEBUGSCOPE_LOCALBLOCK,
					0,
					{
						{
							BBDEBUGDECL_END
						}
					}
				};
				bbOnDebugEnterScope((BBDebugScope *)&__scope);
				struct BBDebugStm __stmt_0 = {0x495c13799fba57b6, 101, 0};
				bbOnDebugEnterStm(&__stmt_0);
				if(bbStringEquals(bbt_, ((BBString*)&_s668))==1){
					struct BBDebugScope __scope = {
						BBDEBUGSCOPE_LOCALBLOCK,
						0,
						{
							{
								BBDEBUGDECL_END
							}
						}
					};
					bbOnDebugEnterScope((BBDebugScope *)&__scope);
					struct BBDebugStm __stmt_0 = {0x495c13799fba57b6, 102, 0};
					bbOnDebugEnterStm(&__stmt_0);
					bbOnDebugLeaveScope();
					bbOnDebugLeaveScope();
					bbOnDebugLeaveScope();
					bbOnDebugLeaveScope();
					bbOnDebugLeaveScope();
					return 1;
				}
				bbOnDebugLeaveScope();
			}
			bbOnDebugLeaveScope();
		}
		bbOnDebugLeaveScope();
	}
	bbOnDebugLeaveScope();
	return 0;
}
struct openb3d_openb3dcore_TMesh_obj* _openb3d_openb3dcore_TMeshLoaderMax_LoadMesh_TTStreamTObjectTTEntityi(struct openb3d_openb3dcore_TMeshLoaderMax_obj* o,struct brl_stream_TStream_obj* bbt_file,BBOBJECT bbt_url,struct openb3d_openb3dcore_TEntity_obj* bbt_parent,BBINT bbt_flags){
	((struct openb3d_openb3dcore_TMeshLoaderMax_obj*)bbNullObjectTest((BBObject*)o));
	struct openb3d_openb3dcore_TMesh_obj* bbt_mesh=(struct openb3d_openb3dcore_TMesh_obj*)((struct openb3d_openb3dcore_TMesh_obj*)&bbNullObject);
	struct openb3d_openb3dcore_TMesh_obj* bbt_anim_mesh=(struct openb3d_openb3dcore_TMesh_obj*)((struct openb3d_openb3dcore_TMesh_obj*)&bbNullObject);
	struct BBDebugScope_7 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"LoadMesh",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TMeshLoaderMax",
				.var_address=&o
			},
			{
				BBDEBUGDECL_LOCAL,
				"file",
				":TStream",
				.var_address=&bbt_file
			},
			{
				BBDEBUGDECL_LOCAL,
				"url",
				":Object",
				.var_address=&bbt_url
			},
			{
				BBDEBUGDECL_LOCAL,
				"parent",
				":TEntity",
				.var_address=&bbt_parent
			},
			{
				BBDEBUGDECL_LOCAL,
				"flags",
				"i",
				.var_address=&bbt_flags
			},
			{
				BBDEBUGDECL_LOCAL,
				"mesh",
				":TMesh",
				.var_address=&bbt_mesh
			},
			{
				BBDEBUGDECL_LOCAL,
				"anim_mesh",
				":TMesh",
				.var_address=&bbt_anim_mesh
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x495c13799fba57b6, 108, 0};
	bbOnDebugEnterStm(&__stmt_0);
	if(!((openb3d_openb3dcore_TGlobal3D_Mesh_Loader==0) || (((unsigned int)(openb3d_openb3dcore_TGlobal3D_Mesh_Loader)&(unsigned int)(1))!=0))){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x495c13799fba57b6, 108, 0};
		bbOnDebugEnterStm(&__stmt_0);
		bbOnDebugLeaveScope();
		bbOnDebugLeaveScope();
		return (struct openb3d_openb3dcore_TMesh_obj*)&bbNullObject;
	}
	struct BBDebugStm __stmt_1 = {0x495c13799fba57b6, 110, 0};
	bbOnDebugEnterStm(&__stmt_1);
	bbt_mesh=(struct openb3d_openb3dcore_TMesh_obj*)((struct openb3d_openb3dcore_TMesh_obj*)&bbNullObject);
	struct BBDebugStm __stmt_2 = {0x495c13799fba57b6, 110, 0};
	bbOnDebugEnterStm(&__stmt_2);
	bbt_anim_mesh=(struct openb3d_openb3dcore_TMesh_obj*)((struct openb3d_openb3dcore_TMesh_obj*)&bbNullObject);
	struct BBDebugStm __stmt_3 = {0x495c13799fba57b6, 111, 0};
	bbOnDebugEnterStm(&__stmt_3);
	BBSTRING bbt_=brl_filesystem_ExtractExt((BBString *)bbObjectStringcast((BBOBJECT)bbt_url));
	struct BBDebugStm __stmt_4 = {0x495c13799fba57b6, 112, 0};
	bbOnDebugEnterStm(&__stmt_4);
	if(bbStringEquals(bbt_, ((BBString*)&_s665))==1){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x495c13799fba57b6, 113, 0};
		bbOnDebugEnterStm(&__stmt_0);
		bbt_anim_mesh=(struct openb3d_openb3dcore_TMesh_obj*)openb3d_openb3dcore_TB3D_LoadAnimB3DFromStream_TTMesh_TTStreamTObjectTTEntity((struct brl_stream_TStream_obj*)bbt_file,(BBOBJECT)bbt_url,(struct openb3d_openb3dcore_TEntity_obj*)bbt_parent);
		bbOnDebugLeaveScope();
	}else{
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x495c13799fba57b6, 114, 0};
		bbOnDebugEnterStm(&__stmt_0);
		if(bbStringEquals(bbt_, ((BBString*)&_s666))==1){
			struct BBDebugScope __scope = {
				BBDEBUGSCOPE_LOCALBLOCK,
				0,
				{
					{
						BBDEBUGDECL_END
					}
				}
			};
			bbOnDebugEnterScope((BBDebugScope *)&__scope);
			struct BBDebugStm __stmt_0 = {0x495c13799fba57b6, 115, 0};
			bbOnDebugEnterStm(&__stmt_0);
			bbt_anim_mesh=(struct openb3d_openb3dcore_TMesh_obj*)openb3d_openb3dcore_TMD2_LoadMD2FromStream_TTMesh_TTStreamTObjectTTEntity((struct brl_stream_TStream_obj*)bbt_file,(BBOBJECT)bbt_url,(struct openb3d_openb3dcore_TEntity_obj*)bbt_parent);
			bbOnDebugLeaveScope();
		}else{
			struct BBDebugScope __scope = {
				BBDEBUGSCOPE_LOCALBLOCK,
				0,
				{
					{
						BBDEBUGDECL_END
					}
				}
			};
			bbOnDebugEnterScope((BBDebugScope *)&__scope);
			struct BBDebugStm __stmt_0 = {0x495c13799fba57b6, 116, 0};
			bbOnDebugEnterStm(&__stmt_0);
			if(bbStringEquals(bbt_, ((BBString*)&_s667))==1){
				struct BBDebugScope __scope = {
					BBDEBUGSCOPE_LOCALBLOCK,
					0,
					{
						{
							BBDEBUGDECL_END
						}
					}
				};
				bbOnDebugEnterScope((BBDebugScope *)&__scope);
				struct BBDebugStm __stmt_0 = {0x495c13799fba57b6, 117, 0};
				bbOnDebugEnterStm(&__stmt_0);
				if(openb3d_openb3dcore_TGlobal3D_Loader_3DS2!=0){
					struct openb3d_openb3dcore_T3DS2_obj* bbt_model=(struct openb3d_openb3dcore_T3DS2_obj*)((struct openb3d_openb3dcore_T3DS2_obj*)&bbNullObject);
					struct BBDebugScope_1 __scope = {
						BBDEBUGSCOPE_LOCALBLOCK,
						0,
						{
							{
								BBDEBUGDECL_LOCAL,
								"model",
								":T3DS2",
								.var_address=&bbt_model
							},
							{
								BBDEBUGDECL_END
							}
						}
					};
					bbOnDebugEnterScope((BBDebugScope *)&__scope);
					struct BBDebugStm __stmt_0 = {0x495c13799fba57b6, 118, 0};
					bbOnDebugEnterStm(&__stmt_0);
					bbt_model=(struct openb3d_openb3dcore_T3DS2_obj*)(struct openb3d_openb3dcore_T3DS2_obj*)bbObjectNew((BBClass *)&openb3d_openb3dcore_T3DS2);
					struct BBDebugStm __stmt_1 = {0x495c13799fba57b6, 119, 0};
					bbOnDebugEnterStm(&__stmt_1);
					bbt_anim_mesh=(struct openb3d_openb3dcore_TMesh_obj*)((struct openb3d_openb3dcore_T3DS2_obj*)bbNullObjectTest((BBObject*)bbt_model))->clas->m_LoadAnim3DSFromStream_TTStreamTObjectTTEntityi((struct openb3d_openb3dcore_T3DS2_obj*)bbt_model,(struct brl_stream_TStream_obj*)bbt_file,(BBOBJECT)bbt_url,(struct openb3d_openb3dcore_TEntity_obj*)bbt_parent,bbt_flags);
					bbOnDebugLeaveScope();
				}else{
					struct openb3d_openb3dcore_T3DS_obj* bbt_model2=(struct openb3d_openb3dcore_T3DS_obj*)((struct openb3d_openb3dcore_T3DS_obj*)&bbNullObject);
					struct BBDebugScope_1 __scope = {
						BBDEBUGSCOPE_LOCALBLOCK,
						0,
						{
							{
								BBDEBUGDECL_LOCAL,
								"model",
								":T3DS",
								.var_address=&bbt_model2
							},
							{
								BBDEBUGDECL_END
							}
						}
					};
					bbOnDebugEnterScope((BBDebugScope *)&__scope);
					struct BBDebugStm __stmt_0 = {0x495c13799fba57b6, 121, 0};
					bbOnDebugEnterStm(&__stmt_0);
					bbt_model2=(struct openb3d_openb3dcore_T3DS_obj*)(struct openb3d_openb3dcore_T3DS_obj*)bbObjectNew((BBClass *)&openb3d_openb3dcore_T3DS);
					struct BBDebugStm __stmt_1 = {0x495c13799fba57b6, 122, 0};
					bbOnDebugEnterStm(&__stmt_1);
					bbt_anim_mesh=(struct openb3d_openb3dcore_TMesh_obj*)((struct openb3d_openb3dcore_T3DS_obj*)bbNullObjectTest((BBObject*)bbt_model2))->clas->m_Load3DSFromStream_TTStreamTObjectTTEntityi((struct openb3d_openb3dcore_T3DS_obj*)bbt_model2,(struct brl_stream_TStream_obj*)bbt_file,(BBOBJECT)bbt_url,(struct openb3d_openb3dcore_TEntity_obj*)bbt_parent,bbt_flags);
					bbOnDebugLeaveScope();
				}
				bbOnDebugLeaveScope();
			}else{
				struct BBDebugScope __scope = {
					BBDEBUGSCOPE_LOCALBLOCK,
					0,
					{
						{
							BBDEBUGDECL_END
						}
					}
				};
				bbOnDebugEnterScope((BBDebugScope *)&__scope);
				struct BBDebugStm __stmt_0 = {0x495c13799fba57b6, 124, 0};
				bbOnDebugEnterStm(&__stmt_0);
				if(bbStringEquals(bbt_, ((BBString*)&_s668))==1){
					struct BBDebugScope __scope = {
						BBDEBUGSCOPE_LOCALBLOCK,
						0,
						{
							{
								BBDEBUGDECL_END
							}
						}
					};
					bbOnDebugEnterScope((BBDebugScope *)&__scope);
					struct BBDebugStm __stmt_0 = {0x495c13799fba57b6, 125, 0};
					bbOnDebugEnterStm(&__stmt_0);
					bbt_anim_mesh=(struct openb3d_openb3dcore_TMesh_obj*)openb3d_openb3dcore_TOBJ_LoadOBJFromStream_TTMesh_TTStreamTObjectTTEntityi((struct brl_stream_TStream_obj*)bbt_file,(BBOBJECT)bbt_url,(struct openb3d_openb3dcore_TEntity_obj*)bbt_parent,bbt_flags);
					bbOnDebugLeaveScope();
				}
				bbOnDebugLeaveScope();
			}
			bbOnDebugLeaveScope();
		}
		bbOnDebugLeaveScope();
	}
	struct BBDebugStm __stmt_5 = {0x495c13799fba57b6, 128, 0};
	bbOnDebugEnterStm(&__stmt_5);
	if(((BBOBJECT)bbt_anim_mesh)==&bbNullObject){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x495c13799fba57b6, 129, 0};
		bbOnDebugEnterStm(&__stmt_0);
		brl_blitz_DebugLog(bbStringConcat(((BBString*)&_s669),((BBString *)bbObjectStringcast((BBOBJECT)bbt_url))));
		struct BBDebugStm __stmt_1 = {0x495c13799fba57b6, 130, 0};
		bbOnDebugEnterStm(&__stmt_1);
		bbOnDebugLeaveScope();
		bbOnDebugLeaveScope();
		return (struct openb3d_openb3dcore_TMesh_obj*)&bbNullObject;
	}
	struct BBDebugStm __stmt_6 = {0x495c13799fba57b6, 133, 0};
	bbOnDebugEnterStm(&__stmt_6);
	((struct openb3d_openb3dcore_TMesh_obj*)bbNullObjectTest((BBObject*)bbt_anim_mesh))->clas->m_HideEntity((struct openb3d_openb3dcore_TEntity_obj*)bbt_anim_mesh);
	struct BBDebugStm __stmt_7 = {0x495c13799fba57b6, 134, 0};
	bbOnDebugEnterStm(&__stmt_7);
	bbt_mesh=(struct openb3d_openb3dcore_TMesh_obj*)((struct openb3d_openb3dcore_TMesh_obj*)bbNullObjectTest((BBObject*)bbt_anim_mesh))->clas->m_CollapseAnimMesh((struct openb3d_openb3dcore_TMesh_obj*)bbt_anim_mesh);
	struct BBDebugStm __stmt_8 = {0x495c13799fba57b6, 135, 0};
	bbOnDebugEnterStm(&__stmt_8);
	((struct openb3d_openb3dcore_TMesh_obj*)bbNullObjectTest((BBObject*)bbt_mesh))->clas->m_SetString_pbS((struct openb3d_openb3dcore_TEntity_obj*)bbt_mesh,((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)bbt_mesh))->_openb3d_openb3dcore_tentity_name ,((struct openb3d_openb3dcore_TMesh_obj*)bbNullObjectTest((BBObject*)bbt_anim_mesh))->clas->m_GetString_pb((struct openb3d_openb3dcore_TEntity_obj*)bbt_anim_mesh,((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)bbt_anim_mesh))->_openb3d_openb3dcore_tentity_name ));
	struct BBDebugStm __stmt_9 = {0x495c13799fba57b6, 136, 0};
	bbOnDebugEnterStm(&__stmt_9);
	((struct openb3d_openb3dcore_TMesh_obj*)bbNullObjectTest((BBObject*)bbt_mesh))->clas->m_SetString_pbS((struct openb3d_openb3dcore_TEntity_obj*)bbt_mesh,((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)bbt_mesh))->_openb3d_openb3dcore_tentity_class_name ,((BBString*)&_s461));
	struct BBDebugStm __stmt_10 = {0x495c13799fba57b6, 137, 0};
	bbOnDebugEnterStm(&__stmt_10);
	((struct openb3d_openb3dcore_TMesh_obj*)bbNullObjectTest((BBObject*)bbt_mesh))->clas->m_AddParent_TTEntity((struct openb3d_openb3dcore_TEntity_obj*)bbt_mesh,(struct openb3d_openb3dcore_TEntity_obj*)bbt_parent);
	struct BBDebugStm __stmt_11 = {0x495c13799fba57b6, 138, 0};
	bbOnDebugEnterStm(&__stmt_11);
	((struct openb3d_openb3dcore_TMesh_obj*)bbNullObjectTest((BBObject*)bbt_mesh))->clas->m_EntityListAdd_TTListTObject((struct openb3d_openb3dcore_TEntity_obj*)bbt_mesh,(struct brl_linkedlist_TList_obj*)openb3d_openb3dcore_TEntity_entity_list,(BBOBJECT)&bbNullObject);
	struct BBDebugStm __stmt_12 = {0x495c13799fba57b6, 139, 0};
	bbOnDebugEnterStm(&__stmt_12);
	((struct openb3d_openb3dcore_TMesh_obj*)bbNullObjectTest((BBObject*)bbt_anim_mesh))->clas->m_FreeEntity((struct openb3d_openb3dcore_TMesh_obj*)bbt_anim_mesh);
	struct BBDebugStm __stmt_13 = {0x495c13799fba57b6, 142, 0};
	bbOnDebugEnterStm(&__stmt_13);
	if(((BBOBJECT)((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)bbt_mesh))->_openb3d_openb3dcore_tentity_parent )!=&bbNullObject){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x495c13799fba57b6, 143, 0};
		bbOnDebugEnterStm(&__stmt_0);
		struct openb3d_openb3dcore_TMatPtr_obj* bbt_2;
		(((struct openb3d_openb3dcore_TMatPtr_obj*)((struct openb3d_openb3dcore_TMatPtr_obj*)bbNullObjectTest((BBObject*)(bbt_2 = ((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)bbt_mesh))->_openb3d_openb3dcore_tentity_mat ))))->clas)->m_Overwrite_TTMatPtr((struct openb3d_openb3dcore_TMatPtr_obj*)bbt_2,(struct openb3d_openb3dcore_TMatPtr_obj*)((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)bbt_mesh))->_openb3d_openb3dcore_tentity_parent ))->_openb3d_openb3dcore_tentity_mat );
		struct BBDebugStm __stmt_1 = {0x495c13799fba57b6, 144, 0};
		bbOnDebugEnterStm(&__stmt_1);
		((struct openb3d_openb3dcore_TMesh_obj*)bbNullObjectTest((BBObject*)bbt_mesh))->clas->m_UpdateMat_b((struct openb3d_openb3dcore_TEntity_obj*)bbt_mesh,0);
		bbOnDebugLeaveScope();
	}else{
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x495c13799fba57b6, 146, 0};
		bbOnDebugEnterStm(&__stmt_0);
		((struct openb3d_openb3dcore_TMesh_obj*)bbNullObjectTest((BBObject*)bbt_mesh))->clas->m_UpdateMat_b((struct openb3d_openb3dcore_TEntity_obj*)bbt_mesh,1);
		bbOnDebugLeaveScope();
	}
	struct BBDebugStm __stmt_14 = {0x495c13799fba57b6, 149, 0};
	bbOnDebugEnterStm(&__stmt_14);
	bbOnDebugLeaveScope();
	return (struct openb3d_openb3dcore_TMesh_obj*)bbt_mesh;
}
struct openb3d_openb3dcore_TMesh_obj* _openb3d_openb3dcore_TMeshLoaderMax_LoadAnimMesh_TTStreamTObjectTTEntityi(struct openb3d_openb3dcore_TMeshLoaderMax_obj* o,struct brl_stream_TStream_obj* bbt_file,BBOBJECT bbt_url,struct openb3d_openb3dcore_TEntity_obj* bbt_parent,BBINT bbt_flags){
	((struct openb3d_openb3dcore_TMeshLoaderMax_obj*)bbNullObjectTest((BBObject*)o));
	struct openb3d_openb3dcore_TMesh_obj* bbt_mesh=(struct openb3d_openb3dcore_TMesh_obj*)((struct openb3d_openb3dcore_TMesh_obj*)&bbNullObject);
	struct BBDebugScope_6 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"LoadAnimMesh",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TMeshLoaderMax",
				.var_address=&o
			},
			{
				BBDEBUGDECL_LOCAL,
				"file",
				":TStream",
				.var_address=&bbt_file
			},
			{
				BBDEBUGDECL_LOCAL,
				"url",
				":Object",
				.var_address=&bbt_url
			},
			{
				BBDEBUGDECL_LOCAL,
				"parent",
				":TEntity",
				.var_address=&bbt_parent
			},
			{
				BBDEBUGDECL_LOCAL,
				"flags",
				"i",
				.var_address=&bbt_flags
			},
			{
				BBDEBUGDECL_LOCAL,
				"mesh",
				":TMesh",
				.var_address=&bbt_mesh
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x495c13799fba57b6, 155, 0};
	bbOnDebugEnterStm(&__stmt_0);
	if(!((openb3d_openb3dcore_TGlobal3D_Mesh_Loader==0) || (((unsigned int)(openb3d_openb3dcore_TGlobal3D_Mesh_Loader)&(unsigned int)(1))!=0))){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x495c13799fba57b6, 155, 0};
		bbOnDebugEnterStm(&__stmt_0);
		bbOnDebugLeaveScope();
		bbOnDebugLeaveScope();
		return (struct openb3d_openb3dcore_TMesh_obj*)&bbNullObject;
	}
	struct BBDebugStm __stmt_1 = {0x495c13799fba57b6, 157, 0};
	bbOnDebugEnterStm(&__stmt_1);
	bbt_mesh=(struct openb3d_openb3dcore_TMesh_obj*)((struct openb3d_openb3dcore_TMesh_obj*)&bbNullObject);
	struct BBDebugStm __stmt_2 = {0x495c13799fba57b6, 158, 0};
	bbOnDebugEnterStm(&__stmt_2);
	BBSTRING bbt_=brl_filesystem_ExtractExt((BBString *)bbObjectStringcast((BBOBJECT)bbt_url));
	struct BBDebugStm __stmt_3 = {0x495c13799fba57b6, 159, 0};
	bbOnDebugEnterStm(&__stmt_3);
	if(bbStringEquals(bbt_, ((BBString*)&_s665))==1){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x495c13799fba57b6, 160, 0};
		bbOnDebugEnterStm(&__stmt_0);
		bbt_mesh=(struct openb3d_openb3dcore_TMesh_obj*)openb3d_openb3dcore_TB3D_LoadAnimB3DFromStream_TTMesh_TTStreamTObjectTTEntity((struct brl_stream_TStream_obj*)bbt_file,(BBOBJECT)bbt_url,(struct openb3d_openb3dcore_TEntity_obj*)bbt_parent);
		bbOnDebugLeaveScope();
	}else{
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x495c13799fba57b6, 161, 0};
		bbOnDebugEnterStm(&__stmt_0);
		if(bbStringEquals(bbt_, ((BBString*)&_s666))==1){
			struct BBDebugScope __scope = {
				BBDEBUGSCOPE_LOCALBLOCK,
				0,
				{
					{
						BBDEBUGDECL_END
					}
				}
			};
			bbOnDebugEnterScope((BBDebugScope *)&__scope);
			struct BBDebugStm __stmt_0 = {0x495c13799fba57b6, 162, 0};
			bbOnDebugEnterStm(&__stmt_0);
			bbt_mesh=(struct openb3d_openb3dcore_TMesh_obj*)openb3d_openb3dcore_TMD2_LoadMD2FromStream_TTMesh_TTStreamTObjectTTEntity((struct brl_stream_TStream_obj*)bbt_file,(BBOBJECT)bbt_url,(struct openb3d_openb3dcore_TEntity_obj*)bbt_parent);
			bbOnDebugLeaveScope();
		}else{
			struct BBDebugScope __scope = {
				BBDEBUGSCOPE_LOCALBLOCK,
				0,
				{
					{
						BBDEBUGDECL_END
					}
				}
			};
			bbOnDebugEnterScope((BBDebugScope *)&__scope);
			struct BBDebugStm __stmt_0 = {0x495c13799fba57b6, 163, 0};
			bbOnDebugEnterStm(&__stmt_0);
			if(bbStringEquals(bbt_, ((BBString*)&_s667))==1){
				struct BBDebugScope __scope = {
					BBDEBUGSCOPE_LOCALBLOCK,
					0,
					{
						{
							BBDEBUGDECL_END
						}
					}
				};
				bbOnDebugEnterScope((BBDebugScope *)&__scope);
				struct BBDebugStm __stmt_0 = {0x495c13799fba57b6, 164, 0};
				bbOnDebugEnterStm(&__stmt_0);
				if(openb3d_openb3dcore_TGlobal3D_Loader_3DS2!=0){
					struct openb3d_openb3dcore_T3DS2_obj* bbt_model=(struct openb3d_openb3dcore_T3DS2_obj*)((struct openb3d_openb3dcore_T3DS2_obj*)&bbNullObject);
					struct BBDebugScope_1 __scope = {
						BBDEBUGSCOPE_LOCALBLOCK,
						0,
						{
							{
								BBDEBUGDECL_LOCAL,
								"model",
								":T3DS2",
								.var_address=&bbt_model
							},
							{
								BBDEBUGDECL_END
							}
						}
					};
					bbOnDebugEnterScope((BBDebugScope *)&__scope);
					struct BBDebugStm __stmt_0 = {0x495c13799fba57b6, 165, 0};
					bbOnDebugEnterStm(&__stmt_0);
					bbt_model=(struct openb3d_openb3dcore_T3DS2_obj*)(struct openb3d_openb3dcore_T3DS2_obj*)bbObjectNew((BBClass *)&openb3d_openb3dcore_T3DS2);
					struct BBDebugStm __stmt_1 = {0x495c13799fba57b6, 166, 0};
					bbOnDebugEnterStm(&__stmt_1);
					bbt_mesh=(struct openb3d_openb3dcore_TMesh_obj*)((struct openb3d_openb3dcore_T3DS2_obj*)bbNullObjectTest((BBObject*)bbt_model))->clas->m_LoadAnim3DSFromStream_TTStreamTObjectTTEntityi((struct openb3d_openb3dcore_T3DS2_obj*)bbt_model,(struct brl_stream_TStream_obj*)bbt_file,(BBOBJECT)bbt_url,(struct openb3d_openb3dcore_TEntity_obj*)bbt_parent,bbt_flags);
					bbOnDebugLeaveScope();
				}else{
					struct openb3d_openb3dcore_T3DS_obj* bbt_model2=(struct openb3d_openb3dcore_T3DS_obj*)((struct openb3d_openb3dcore_T3DS_obj*)&bbNullObject);
					struct BBDebugScope_1 __scope = {
						BBDEBUGSCOPE_LOCALBLOCK,
						0,
						{
							{
								BBDEBUGDECL_LOCAL,
								"model",
								":T3DS",
								.var_address=&bbt_model2
							},
							{
								BBDEBUGDECL_END
							}
						}
					};
					bbOnDebugEnterScope((BBDebugScope *)&__scope);
					struct BBDebugStm __stmt_0 = {0x495c13799fba57b6, 168, 0};
					bbOnDebugEnterStm(&__stmt_0);
					bbt_model2=(struct openb3d_openb3dcore_T3DS_obj*)(struct openb3d_openb3dcore_T3DS_obj*)bbObjectNew((BBClass *)&openb3d_openb3dcore_T3DS);
					struct BBDebugStm __stmt_1 = {0x495c13799fba57b6, 169, 0};
					bbOnDebugEnterStm(&__stmt_1);
					bbt_mesh=(struct openb3d_openb3dcore_TMesh_obj*)((struct openb3d_openb3dcore_T3DS_obj*)bbNullObjectTest((BBObject*)bbt_model2))->clas->m_Load3DSFromStream_TTStreamTObjectTTEntityi((struct openb3d_openb3dcore_T3DS_obj*)bbt_model2,(struct brl_stream_TStream_obj*)bbt_file,(BBOBJECT)bbt_url,(struct openb3d_openb3dcore_TEntity_obj*)bbt_parent,bbt_flags);
					bbOnDebugLeaveScope();
				}
				bbOnDebugLeaveScope();
			}else{
				struct BBDebugScope __scope = {
					BBDEBUGSCOPE_LOCALBLOCK,
					0,
					{
						{
							BBDEBUGDECL_END
						}
					}
				};
				bbOnDebugEnterScope((BBDebugScope *)&__scope);
				struct BBDebugStm __stmt_0 = {0x495c13799fba57b6, 171, 0};
				bbOnDebugEnterStm(&__stmt_0);
				if(bbStringEquals(bbt_, ((BBString*)&_s668))==1){
					struct BBDebugScope __scope = {
						BBDEBUGSCOPE_LOCALBLOCK,
						0,
						{
							{
								BBDEBUGDECL_END
							}
						}
					};
					bbOnDebugEnterScope((BBDebugScope *)&__scope);
					struct BBDebugStm __stmt_0 = {0x495c13799fba57b6, 172, 0};
					bbOnDebugEnterStm(&__stmt_0);
					bbt_mesh=(struct openb3d_openb3dcore_TMesh_obj*)openb3d_openb3dcore_TOBJ_LoadOBJFromStream_TTMesh_TTStreamTObjectTTEntityi((struct brl_stream_TStream_obj*)bbt_file,(BBOBJECT)bbt_url,(struct openb3d_openb3dcore_TEntity_obj*)bbt_parent,bbt_flags);
					bbOnDebugLeaveScope();
				}
				bbOnDebugLeaveScope();
			}
			bbOnDebugLeaveScope();
		}
		bbOnDebugLeaveScope();
	}
	struct BBDebugStm __stmt_4 = {0x495c13799fba57b6, 175, 0};
	bbOnDebugEnterStm(&__stmt_4);
	if(((BBOBJECT)bbt_mesh)==&bbNullObject){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x495c13799fba57b6, 176, 0};
		bbOnDebugEnterStm(&__stmt_0);
		brl_blitz_DebugLog(bbStringConcat(((BBString*)&_s670),((BBString *)bbObjectStringcast((BBOBJECT)bbt_url))));
		struct BBDebugStm __stmt_1 = {0x495c13799fba57b6, 177, 0};
		bbOnDebugEnterStm(&__stmt_1);
		bbOnDebugLeaveScope();
		bbOnDebugLeaveScope();
		return (struct openb3d_openb3dcore_TMesh_obj*)&bbNullObject;
	}
	struct BBDebugStm __stmt_5 = {0x495c13799fba57b6, 180, 0};
	bbOnDebugEnterStm(&__stmt_5);
	bbOnDebugLeaveScope();
	return (struct openb3d_openb3dcore_TMesh_obj*)bbt_mesh;
}
struct BBDebugScope_4 openb3d_openb3dcore_TMeshLoaderMax_scope ={
	BBDEBUGSCOPE_USERTYPE,
	"TMeshLoaderMax",
	{
		{
			BBDEBUGDECL_TYPEMETHOD,
			"New",
			"()i",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_TMeshLoaderMax_New
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"CanLoadMesh",
			"($)i",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_TMeshLoaderMax_CanLoadMesh_S
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"LoadMesh",
			"(:TStream,:Object,:TEntity,i):TMesh",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_TMeshLoaderMax_LoadMesh_TTStreamTObjectTTEntityi
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"LoadAnimMesh",
			"(:TStream,:Object,:TEntity,i):TMesh",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_TMeshLoaderMax_LoadAnimMesh_TTStreamTObjectTTEntityi
		},
		{
			BBDEBUGDECL_END
		}
	}
};
struct BBClass_openb3d_openb3dcore_TMeshLoaderMax openb3d_openb3dcore_TMeshLoaderMax={
	&openb3d_openb3dcore_TMeshLoader,
	bbObjectFree,
	(BBDebugScope*)&openb3d_openb3dcore_TMeshLoaderMax_scope,
	sizeof(struct openb3d_openb3dcore_TMeshLoaderMax_obj),
	(void (*)(BBOBJECT))_openb3d_openb3dcore_TMeshLoaderMax_New,
	bbObjectDtor,
	bbObjectToString,
	bbObjectCompare,
	bbObjectSendMessage,
	0,
	0,
	0
	,0
	,sizeof(void*)
	,_openb3d_openb3dcore_TMeshLoaderMax_CanLoadMesh_S
	,_openb3d_openb3dcore_TMeshLoaderMax_LoadMesh_TTStreamTObjectTTEntityi
	,_openb3d_openb3dcore_TMeshLoaderMax_LoadAnimMesh_TTStreamTObjectTTEntityi
};

void _openb3d_openb3dcore_TGlobal3D_New(struct openb3d_openb3dcore_TGlobal3D_obj* o) {
	bbObjectCtor((BBOBJECT)o);
	o->clas = &openb3d_openb3dcore_TGlobal3D;
}
BBINT openb3d_openb3dcore_TGlobal3D_InitGlobals_i(){
	struct BBDebugScope __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"InitGlobals",
		{
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x47eafdfc4911859b, 81, 0};
	bbOnDebugEnterStm(&__stmt_0);
	openb3d_openb3dcore_TGlobal3D_width=StaticInt_(21,1);
	struct BBDebugStm __stmt_1 = {0x47eafdfc4911859b, 82, 0};
	bbOnDebugEnterStm(&__stmt_1);
	openb3d_openb3dcore_TGlobal3D_height=StaticInt_(21,2);
	struct BBDebugStm __stmt_2 = {0x47eafdfc4911859b, 83, 0};
	bbOnDebugEnterStm(&__stmt_2);
	openb3d_openb3dcore_TGlobal3D_Mode=StaticInt_(21,3);
	struct BBDebugStm __stmt_3 = {0x47eafdfc4911859b, 84, 0};
	bbOnDebugEnterStm(&__stmt_3);
	openb3d_openb3dcore_TGlobal3D_depth=StaticInt_(21,4);
	struct BBDebugStm __stmt_4 = {0x47eafdfc4911859b, 85, 0};
	bbOnDebugEnterStm(&__stmt_4);
	openb3d_openb3dcore_TGlobal3D_rate=StaticInt_(21,5);
	struct BBDebugStm __stmt_5 = {0x47eafdfc4911859b, 86, 0};
	bbOnDebugEnterStm(&__stmt_5);
	openb3d_openb3dcore_TGlobal3D_vbo_enabled=StaticInt_(21,10);
	struct BBDebugStm __stmt_6 = {0x47eafdfc4911859b, 87, 0};
	bbOnDebugEnterStm(&__stmt_6);
	openb3d_openb3dcore_TGlobal3D_vbo_min_tris=StaticInt_(21,11);
	struct BBDebugStm __stmt_7 = {0x47eafdfc4911859b, 88, 0};
	bbOnDebugEnterStm(&__stmt_7);
	openb3d_openb3dcore_TGlobal3D_Shadows_enabled=StaticInt_(21,12);
	struct BBDebugStm __stmt_8 = {0x47eafdfc4911859b, 89, 0};
	bbOnDebugEnterStm(&__stmt_8);
	openb3d_openb3dcore_TGlobal3D_fog_enabled=StaticInt_(21,14);
	struct BBDebugStm __stmt_9 = {0x47eafdfc4911859b, 90, 0};
	bbOnDebugEnterStm(&__stmt_9);
	openb3d_openb3dcore_TGlobal3D_alpha_enable=StaticInt_(21,17);
	struct BBDebugStm __stmt_10 = {0x47eafdfc4911859b, 91, 0};
	bbOnDebugEnterStm(&__stmt_10);
	openb3d_openb3dcore_TGlobal3D_blend_mode=StaticInt_(21,18);
	struct BBDebugStm __stmt_11 = {0x47eafdfc4911859b, 92, 0};
	bbOnDebugEnterStm(&__stmt_11);
	openb3d_openb3dcore_TGlobal3D_fx1=StaticInt_(21,19);
	struct BBDebugStm __stmt_12 = {0x47eafdfc4911859b, 93, 0};
	bbOnDebugEnterStm(&__stmt_12);
	openb3d_openb3dcore_TGlobal3D_fx2=StaticInt_(21,20);
	struct BBDebugStm __stmt_13 = {0x47eafdfc4911859b, 96, 0};
	bbOnDebugEnterStm(&__stmt_13);
	openb3d_openb3dcore_TGlobal3D_ambient_red=StaticFloat_(21,6);
	struct BBDebugStm __stmt_14 = {0x47eafdfc4911859b, 97, 0};
	bbOnDebugEnterStm(&__stmt_14);
	openb3d_openb3dcore_TGlobal3D_ambient_green=StaticFloat_(21,7);
	struct BBDebugStm __stmt_15 = {0x47eafdfc4911859b, 98, 0};
	bbOnDebugEnterStm(&__stmt_15);
	openb3d_openb3dcore_TGlobal3D_ambient_blue=StaticFloat_(21,8);
	struct BBDebugStm __stmt_16 = {0x47eafdfc4911859b, 99, 0};
	bbOnDebugEnterStm(&__stmt_16);
	openb3d_openb3dcore_TGlobal3D_anim_speed=StaticFloat_(21,13);
	struct BBDebugStm __stmt_17 = {0x47eafdfc4911859b, 102, 0};
	bbOnDebugEnterStm(&__stmt_17);
	openb3d_openb3dcore_TGlobal3D_root_ent=(struct openb3d_openb3dcore_TPivot_obj*)openb3d_openb3dcore_TPivot_CreateObject_TTPivot_pb(StaticPivot_(21,15));
	struct BBDebugStm __stmt_18 = {0x47eafdfc4911859b, 105, 0};
	bbOnDebugEnterStm(&__stmt_18);
	openb3d_openb3dcore_TCamera_InitGlobals_i();
	struct BBDebugStm __stmt_19 = {0x47eafdfc4911859b, 106, 0};
	bbOnDebugEnterStm(&__stmt_19);
	openb3d_openb3dcore_TEntity_InitGlobals_i();
	struct BBDebugStm __stmt_20 = {0x47eafdfc4911859b, 107, 0};
	bbOnDebugEnterStm(&__stmt_20);
	openb3d_openb3dcore_TLight_InitGlobals_i();
	struct BBDebugStm __stmt_21 = {0x47eafdfc4911859b, 108, 0};
	bbOnDebugEnterStm(&__stmt_21);
	openb3d_openb3dcore_TPick_InitGlobals_i();
	struct BBDebugStm __stmt_22 = {0x47eafdfc4911859b, 109, 0};
	bbOnDebugEnterStm(&__stmt_22);
	openb3d_openb3dcore_TShadowObject_InitGlobals_i();
	struct BBDebugStm __stmt_23 = {0x47eafdfc4911859b, 110, 0};
	bbOnDebugEnterStm(&__stmt_23);
	openb3d_openb3dcore_TTerrain_InitGlobals_i();
	struct BBDebugStm __stmt_24 = {0x47eafdfc4911859b, 111, 0};
	bbOnDebugEnterStm(&__stmt_24);
	openb3d_openb3dcore_TTexture_InitGlobals_i();
	struct BBDebugStm __stmt_25 = {0x47eafdfc4911859b, 113, 0};
	bbOnDebugEnterStm(&__stmt_25);
	openb3d_openb3dcore_TGlobal3D_Matrix_3DS=(struct openb3d_openb3dcore_TMatPtr_obj*)openb3d_openb3dcore_TMatPtr_Create_TTMatPtr();
	struct BBDebugStm __stmt_26 = {0x47eafdfc4911859b, 114, 0};
	bbOnDebugEnterStm(&__stmt_26);
	((struct openb3d_openb3dcore_TMatPtr_obj*)bbNullObjectTest((BBObject*)openb3d_openb3dcore_TGlobal3D_Matrix_3DS))->clas->m_LoadIdentity((struct openb3d_openb3dcore_TMatPtr_obj*)openb3d_openb3dcore_TGlobal3D_Matrix_3DS);
	struct BBDebugStm __stmt_27 = {0x47eafdfc4911859b, 115, 0};
	bbOnDebugEnterStm(&__stmt_27);
	openb3d_openb3dcore_UseMatrix3DS(1.00000000f,0.00000000f,0.00000000f,0.00000000f,1.00000000f,0.00000000f,0.00000000f,0.00000000f,-1.00000000f);
	struct BBDebugStm __stmt_28 = {0x47eafdfc4911859b, 117, 0};
	bbOnDebugEnterStm(&__stmt_28);
	openb3d_openb3dcore_TGlobal3D_Matrix_MD2=(struct openb3d_openb3dcore_TMatPtr_obj*)openb3d_openb3dcore_TMatPtr_Create_TTMatPtr();
	struct BBDebugStm __stmt_29 = {0x47eafdfc4911859b, 118, 0};
	bbOnDebugEnterStm(&__stmt_29);
	((struct openb3d_openb3dcore_TMatPtr_obj*)bbNullObjectTest((BBObject*)openb3d_openb3dcore_TGlobal3D_Matrix_MD2))->clas->m_LoadIdentity((struct openb3d_openb3dcore_TMatPtr_obj*)openb3d_openb3dcore_TGlobal3D_Matrix_MD2);
	struct BBDebugStm __stmt_30 = {0x47eafdfc4911859b, 119, 0};
	bbOnDebugEnterStm(&__stmt_30);
	openb3d_openb3dcore_UseMatrixMD2(1.00000000f,0.00000000f,0.00000000f,0.00000000f,0.00000000f,1.00000000f,0.00000000f,-1.00000000f,0.00000000f);
	struct BBDebugStm __stmt_31 = {0x47eafdfc4911859b, 121, 0};
	bbOnDebugEnterStm(&__stmt_31);
	openb3d_openb3dcore_UseTextureFaces(0,1,2,3,4,5);
	struct BBDebugStm __stmt_32 = {0x47eafdfc4911859b, 122, 0};
	bbOnDebugEnterStm(&__stmt_32);
	openb3d_openb3dcore_UseTextureFrames(0,1,2,3,4,5);
	bbOnDebugLeaveScope();
	return 0;
}
BBINT openb3d_openb3dcore_TGlobal3D_DebugGlobals_i_ii(BBINT bbt_debug_subobjects,BBINT bbt_debug_base_types){
	BBSTRING bbt_pad=(&bbEmptyString);
	BBINT bbt_loop=0;
	struct BBDebugScope_4 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"DebugGlobals",
		{
			{
				BBDEBUGDECL_LOCAL,
				"debug_subobjects",
				"i",
				.var_address=&bbt_debug_subobjects
			},
			{
				BBDEBUGDECL_LOCAL,
				"debug_base_types",
				"i",
				.var_address=&bbt_debug_base_types
			},
			{
				BBDEBUGDECL_LOCAL,
				"pad",
				"$",
				.var_address=&bbt_pad
			},
			{
				BBDEBUGDECL_LOCAL,
				"loop",
				"i",
				.var_address=&bbt_loop
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x47eafdfc4911859b, 128, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbt_pad=((BBString*)&bbEmptyString);
	struct BBDebugStm __stmt_1 = {0x47eafdfc4911859b, 129, 0};
	bbOnDebugEnterStm(&__stmt_1);
	bbt_loop=bbt_debug_subobjects;
	struct BBDebugStm __stmt_2 = {0x47eafdfc4911859b, 130, 0};
	bbOnDebugEnterStm(&__stmt_2);
	if(bbt_debug_base_types>bbt_debug_subobjects){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x47eafdfc4911859b, 130, 0};
		bbOnDebugEnterStm(&__stmt_0);
		bbt_loop=bbt_debug_base_types;
		bbOnDebugLeaveScope();
	}
	struct BBDebugStm __stmt_3 = {0x47eafdfc4911859b, 131, 0};
	bbOnDebugEnterStm(&__stmt_3);
	{
		BBINT bbt_i=1;
		BBINT bbt_=bbt_loop;
		for(;(bbt_i<bbt_);bbt_i=(bbt_i+1)){
			struct BBDebugScope_1 __scope = {
				BBDEBUGSCOPE_LOCALBLOCK,
				0,
				{
					{
						BBDEBUGDECL_LOCAL,
						"i",
						"i",
						.var_address=&bbt_i
					},
					{
						BBDEBUGDECL_END
					}
				}
			};
			bbOnDebugEnterScope((BBDebugScope *)&__scope);
			struct BBDebugStm __stmt_0 = {0x47eafdfc4911859b, 132, 0};
			bbOnDebugEnterStm(&__stmt_0);
			bbt_pad=bbStringConcat(bbt_pad,((BBString*)&_s0));
			bbOnDebugLeaveScope();
		}
	}
	struct BBDebugStm __stmt_4 = {0x47eafdfc4911859b, 134, 0};
	bbOnDebugEnterStm(&__stmt_4);
	if(bbt_debug_subobjects!=0){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x47eafdfc4911859b, 134, 0};
		bbOnDebugEnterStm(&__stmt_0);
		bbt_debug_subobjects+=1;
		bbOnDebugLeaveScope();
	}
	struct BBDebugStm __stmt_5 = {0x47eafdfc4911859b, 135, 0};
	bbOnDebugEnterStm(&__stmt_5);
	if(bbt_debug_base_types!=0){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x47eafdfc4911859b, 135, 0};
		bbOnDebugEnterStm(&__stmt_0);
		bbt_debug_base_types+=1;
		bbOnDebugLeaveScope();
	}
	struct BBDebugStm __stmt_6 = {0x47eafdfc4911859b, 136, 0};
	bbOnDebugEnterStm(&__stmt_6);
	brl_blitz_DebugLog(bbStringConcat(bbt_pad,((BBString*)&_s1)));
	struct BBDebugStm __stmt_7 = {0x47eafdfc4911859b, 139, 0};
	bbOnDebugEnterStm(&__stmt_7);
	if(openb3d_openb3dcore_TGlobal3D_width!=0){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x47eafdfc4911859b, 139, 0};
		bbOnDebugEnterStm(&__stmt_0);
		brl_blitz_DebugLog(bbStringConcat(bbStringConcat(bbt_pad,((BBString*)&_s2)),bbStringFromInt(openb3d_openb3dcore_TGlobal3D_width[0])));
		bbOnDebugLeaveScope();
	}else{
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x47eafdfc4911859b, 139, 0};
		bbOnDebugEnterStm(&__stmt_0);
		brl_blitz_DebugLog(bbStringConcat(bbt_pad,((BBString*)&_s3)));
		bbOnDebugLeaveScope();
	}
	struct BBDebugStm __stmt_8 = {0x47eafdfc4911859b, 140, 0};
	bbOnDebugEnterStm(&__stmt_8);
	if(openb3d_openb3dcore_TGlobal3D_height!=0){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x47eafdfc4911859b, 140, 0};
		bbOnDebugEnterStm(&__stmt_0);
		brl_blitz_DebugLog(bbStringConcat(bbStringConcat(bbt_pad,((BBString*)&_s4)),bbStringFromInt(openb3d_openb3dcore_TGlobal3D_height[0])));
		bbOnDebugLeaveScope();
	}else{
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x47eafdfc4911859b, 140, 0};
		bbOnDebugEnterStm(&__stmt_0);
		brl_blitz_DebugLog(bbStringConcat(bbt_pad,((BBString*)&_s5)));
		bbOnDebugLeaveScope();
	}
	struct BBDebugStm __stmt_9 = {0x47eafdfc4911859b, 141, 0};
	bbOnDebugEnterStm(&__stmt_9);
	if(openb3d_openb3dcore_TGlobal3D_Mode!=0){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x47eafdfc4911859b, 141, 0};
		bbOnDebugEnterStm(&__stmt_0);
		brl_blitz_DebugLog(bbStringConcat(bbStringConcat(bbt_pad,((BBString*)&_s6)),bbStringFromInt(openb3d_openb3dcore_TGlobal3D_Mode[0])));
		bbOnDebugLeaveScope();
	}else{
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x47eafdfc4911859b, 141, 0};
		bbOnDebugEnterStm(&__stmt_0);
		brl_blitz_DebugLog(bbStringConcat(bbt_pad,((BBString*)&_s7)));
		bbOnDebugLeaveScope();
	}
	struct BBDebugStm __stmt_10 = {0x47eafdfc4911859b, 142, 0};
	bbOnDebugEnterStm(&__stmt_10);
	if(openb3d_openb3dcore_TGlobal3D_depth!=0){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x47eafdfc4911859b, 142, 0};
		bbOnDebugEnterStm(&__stmt_0);
		brl_blitz_DebugLog(bbStringConcat(bbStringConcat(bbt_pad,((BBString*)&_s8)),bbStringFromInt(openb3d_openb3dcore_TGlobal3D_depth[0])));
		bbOnDebugLeaveScope();
	}else{
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x47eafdfc4911859b, 142, 0};
		bbOnDebugEnterStm(&__stmt_0);
		brl_blitz_DebugLog(bbStringConcat(bbt_pad,((BBString*)&_s9)));
		bbOnDebugLeaveScope();
	}
	struct BBDebugStm __stmt_11 = {0x47eafdfc4911859b, 143, 0};
	bbOnDebugEnterStm(&__stmt_11);
	if(openb3d_openb3dcore_TGlobal3D_rate!=0){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x47eafdfc4911859b, 143, 0};
		bbOnDebugEnterStm(&__stmt_0);
		brl_blitz_DebugLog(bbStringConcat(bbStringConcat(bbt_pad,((BBString*)&_s10)),bbStringFromInt(openb3d_openb3dcore_TGlobal3D_rate[0])));
		bbOnDebugLeaveScope();
	}else{
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x47eafdfc4911859b, 143, 0};
		bbOnDebugEnterStm(&__stmt_0);
		brl_blitz_DebugLog(bbStringConcat(bbt_pad,((BBString*)&_s11)));
		bbOnDebugLeaveScope();
	}
	struct BBDebugStm __stmt_12 = {0x47eafdfc4911859b, 144, 0};
	bbOnDebugEnterStm(&__stmt_12);
	if(openb3d_openb3dcore_TGlobal3D_vbo_enabled!=0){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x47eafdfc4911859b, 144, 0};
		bbOnDebugEnterStm(&__stmt_0);
		brl_blitz_DebugLog(bbStringConcat(bbStringConcat(bbt_pad,((BBString*)&_s12)),bbStringFromInt(openb3d_openb3dcore_TGlobal3D_vbo_enabled[0])));
		bbOnDebugLeaveScope();
	}else{
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x47eafdfc4911859b, 144, 0};
		bbOnDebugEnterStm(&__stmt_0);
		brl_blitz_DebugLog(bbStringConcat(bbt_pad,((BBString*)&_s13)));
		bbOnDebugLeaveScope();
	}
	struct BBDebugStm __stmt_13 = {0x47eafdfc4911859b, 145, 0};
	bbOnDebugEnterStm(&__stmt_13);
	if(openb3d_openb3dcore_TGlobal3D_vbo_min_tris!=0){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x47eafdfc4911859b, 145, 0};
		bbOnDebugEnterStm(&__stmt_0);
		brl_blitz_DebugLog(bbStringConcat(bbStringConcat(bbt_pad,((BBString*)&_s14)),bbStringFromInt(openb3d_openb3dcore_TGlobal3D_vbo_min_tris[0])));
		bbOnDebugLeaveScope();
	}else{
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x47eafdfc4911859b, 145, 0};
		bbOnDebugEnterStm(&__stmt_0);
		brl_blitz_DebugLog(bbStringConcat(bbt_pad,((BBString*)&_s15)));
		bbOnDebugLeaveScope();
	}
	struct BBDebugStm __stmt_14 = {0x47eafdfc4911859b, 146, 0};
	bbOnDebugEnterStm(&__stmt_14);
	if(openb3d_openb3dcore_TGlobal3D_Shadows_enabled!=0){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x47eafdfc4911859b, 146, 0};
		bbOnDebugEnterStm(&__stmt_0);
		brl_blitz_DebugLog(bbStringConcat(bbStringConcat(bbt_pad,((BBString*)&_s16)),bbStringFromInt(openb3d_openb3dcore_TGlobal3D_Shadows_enabled[0])));
		bbOnDebugLeaveScope();
	}else{
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x47eafdfc4911859b, 146, 0};
		bbOnDebugEnterStm(&__stmt_0);
		brl_blitz_DebugLog(bbStringConcat(bbt_pad,((BBString*)&_s17)));
		bbOnDebugLeaveScope();
	}
	struct BBDebugStm __stmt_15 = {0x47eafdfc4911859b, 147, 0};
	bbOnDebugEnterStm(&__stmt_15);
	if(openb3d_openb3dcore_TGlobal3D_fog_enabled!=0){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x47eafdfc4911859b, 147, 0};
		bbOnDebugEnterStm(&__stmt_0);
		brl_blitz_DebugLog(bbStringConcat(bbStringConcat(bbt_pad,((BBString*)&_s18)),bbStringFromInt(openb3d_openb3dcore_TGlobal3D_fog_enabled[0])));
		bbOnDebugLeaveScope();
	}else{
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x47eafdfc4911859b, 147, 0};
		bbOnDebugEnterStm(&__stmt_0);
		brl_blitz_DebugLog(bbStringConcat(bbt_pad,((BBString*)&_s19)));
		bbOnDebugLeaveScope();
	}
	struct BBDebugStm __stmt_16 = {0x47eafdfc4911859b, 148, 0};
	bbOnDebugEnterStm(&__stmt_16);
	if(openb3d_openb3dcore_TGlobal3D_alpha_enable!=0){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x47eafdfc4911859b, 148, 0};
		bbOnDebugEnterStm(&__stmt_0);
		brl_blitz_DebugLog(bbStringConcat(bbStringConcat(bbt_pad,((BBString*)&_s20)),bbStringFromInt(openb3d_openb3dcore_TGlobal3D_alpha_enable[0])));
		bbOnDebugLeaveScope();
	}else{
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x47eafdfc4911859b, 148, 0};
		bbOnDebugEnterStm(&__stmt_0);
		brl_blitz_DebugLog(bbStringConcat(bbt_pad,((BBString*)&_s21)));
		bbOnDebugLeaveScope();
	}
	struct BBDebugStm __stmt_17 = {0x47eafdfc4911859b, 149, 0};
	bbOnDebugEnterStm(&__stmt_17);
	if(openb3d_openb3dcore_TGlobal3D_blend_mode!=0){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x47eafdfc4911859b, 149, 0};
		bbOnDebugEnterStm(&__stmt_0);
		brl_blitz_DebugLog(bbStringConcat(bbStringConcat(bbt_pad,((BBString*)&_s22)),bbStringFromInt(openb3d_openb3dcore_TGlobal3D_blend_mode[0])));
		bbOnDebugLeaveScope();
	}else{
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x47eafdfc4911859b, 149, 0};
		bbOnDebugEnterStm(&__stmt_0);
		brl_blitz_DebugLog(bbStringConcat(bbt_pad,((BBString*)&_s23)));
		bbOnDebugLeaveScope();
	}
	struct BBDebugStm __stmt_18 = {0x47eafdfc4911859b, 150, 0};
	bbOnDebugEnterStm(&__stmt_18);
	if(openb3d_openb3dcore_TGlobal3D_fx1!=0){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x47eafdfc4911859b, 150, 0};
		bbOnDebugEnterStm(&__stmt_0);
		brl_blitz_DebugLog(bbStringConcat(bbStringConcat(bbt_pad,((BBString*)&_s24)),bbStringFromInt(openb3d_openb3dcore_TGlobal3D_fx1[0])));
		bbOnDebugLeaveScope();
	}else{
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x47eafdfc4911859b, 150, 0};
		bbOnDebugEnterStm(&__stmt_0);
		brl_blitz_DebugLog(bbStringConcat(bbt_pad,((BBString*)&_s25)));
		bbOnDebugLeaveScope();
	}
	struct BBDebugStm __stmt_19 = {0x47eafdfc4911859b, 151, 0};
	bbOnDebugEnterStm(&__stmt_19);
	if(openb3d_openb3dcore_TGlobal3D_fx2!=0){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x47eafdfc4911859b, 151, 0};
		bbOnDebugEnterStm(&__stmt_0);
		brl_blitz_DebugLog(bbStringConcat(bbStringConcat(bbt_pad,((BBString*)&_s26)),bbStringFromInt(openb3d_openb3dcore_TGlobal3D_fx2[0])));
		bbOnDebugLeaveScope();
	}else{
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x47eafdfc4911859b, 151, 0};
		bbOnDebugEnterStm(&__stmt_0);
		brl_blitz_DebugLog(bbStringConcat(bbt_pad,((BBString*)&_s27)));
		bbOnDebugLeaveScope();
	}
	struct BBDebugStm __stmt_20 = {0x47eafdfc4911859b, 154, 0};
	bbOnDebugEnterStm(&__stmt_20);
	if(openb3d_openb3dcore_TGlobal3D_ambient_red!=0){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x47eafdfc4911859b, 154, 0};
		bbOnDebugEnterStm(&__stmt_0);
		brl_blitz_DebugLog(bbStringConcat(bbStringConcat(bbt_pad,((BBString*)&_s28)),bbStringFromFloat(openb3d_openb3dcore_TGlobal3D_ambient_red[0])));
		bbOnDebugLeaveScope();
	}else{
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x47eafdfc4911859b, 154, 0};
		bbOnDebugEnterStm(&__stmt_0);
		brl_blitz_DebugLog(bbStringConcat(bbt_pad,((BBString*)&_s29)));
		bbOnDebugLeaveScope();
	}
	struct BBDebugStm __stmt_21 = {0x47eafdfc4911859b, 155, 0};
	bbOnDebugEnterStm(&__stmt_21);
	if(openb3d_openb3dcore_TGlobal3D_ambient_green!=0){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x47eafdfc4911859b, 155, 0};
		bbOnDebugEnterStm(&__stmt_0);
		brl_blitz_DebugLog(bbStringConcat(bbStringConcat(bbt_pad,((BBString*)&_s30)),bbStringFromFloat(openb3d_openb3dcore_TGlobal3D_ambient_green[0])));
		bbOnDebugLeaveScope();
	}else{
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x47eafdfc4911859b, 155, 0};
		bbOnDebugEnterStm(&__stmt_0);
		brl_blitz_DebugLog(bbStringConcat(bbt_pad,((BBString*)&_s31)));
		bbOnDebugLeaveScope();
	}
	struct BBDebugStm __stmt_22 = {0x47eafdfc4911859b, 156, 0};
	bbOnDebugEnterStm(&__stmt_22);
	if(openb3d_openb3dcore_TGlobal3D_ambient_blue!=0){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x47eafdfc4911859b, 156, 0};
		bbOnDebugEnterStm(&__stmt_0);
		brl_blitz_DebugLog(bbStringConcat(bbStringConcat(bbt_pad,((BBString*)&_s32)),bbStringFromFloat(openb3d_openb3dcore_TGlobal3D_ambient_blue[0])));
		bbOnDebugLeaveScope();
	}else{
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x47eafdfc4911859b, 156, 0};
		bbOnDebugEnterStm(&__stmt_0);
		brl_blitz_DebugLog(bbStringConcat(bbt_pad,((BBString*)&_s33)));
		bbOnDebugLeaveScope();
	}
	struct BBDebugStm __stmt_23 = {0x47eafdfc4911859b, 157, 0};
	bbOnDebugEnterStm(&__stmt_23);
	if(openb3d_openb3dcore_TGlobal3D_anim_speed!=0){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x47eafdfc4911859b, 157, 0};
		bbOnDebugEnterStm(&__stmt_0);
		brl_blitz_DebugLog(bbStringConcat(bbStringConcat(bbt_pad,((BBString*)&_s34)),bbStringFromFloat(openb3d_openb3dcore_TGlobal3D_anim_speed[0])));
		bbOnDebugLeaveScope();
	}else{
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x47eafdfc4911859b, 157, 0};
		bbOnDebugEnterStm(&__stmt_0);
		brl_blitz_DebugLog(bbStringConcat(bbt_pad,((BBString*)&_s35)));
		bbOnDebugLeaveScope();
	}
	struct BBDebugStm __stmt_24 = {0x47eafdfc4911859b, 160, 0};
	bbOnDebugEnterStm(&__stmt_24);
	brl_blitz_DebugLog(bbStringConcat(bbStringConcat(bbt_pad,((BBString*)&_s36)),openb3d_openb3dcore_StringPtr(openb3d_openb3dcore_TEntity_GetInstance_pb_TTEntity((struct openb3d_openb3dcore_TEntity_obj*)((struct openb3d_openb3dcore_TEntity_obj*)bbObjectDowncast((BBOBJECT)openb3d_openb3dcore_TGlobal3D_root_ent,(BBClass*)&openb3d_openb3dcore_TEntity))))));
	struct BBDebugStm __stmt_25 = {0x47eafdfc4911859b, 161, 0};
	bbOnDebugEnterStm(&__stmt_25);
	if((bbt_debug_subobjects!=0) && (((BBOBJECT)openb3d_openb3dcore_TGlobal3D_root_ent)!=&bbNullObject)){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x47eafdfc4911859b, 161, 0};
		bbOnDebugEnterStm(&__stmt_0);
		((struct openb3d_openb3dcore_TPivot_obj*)bbNullObjectTest((BBObject*)openb3d_openb3dcore_TGlobal3D_root_ent))->clas->m_DebugFields_ii((struct openb3d_openb3dcore_TPivot_obj*)openb3d_openb3dcore_TGlobal3D_root_ent,bbt_debug_subobjects,bbt_debug_base_types);
		bbOnDebugLeaveScope();
	}
	struct BBDebugStm __stmt_26 = {0x47eafdfc4911859b, 164, 0};
	bbOnDebugEnterStm(&__stmt_26);
	brl_blitz_DebugLog(bbStringConcat(bbStringConcat(bbt_pad,((BBString*)&_s37)),openb3d_openb3dcore_StringPtr(openb3d_openb3dcore_TEntity_GetInstance_pb_TTEntity((struct openb3d_openb3dcore_TEntity_obj*)((struct openb3d_openb3dcore_TEntity_obj*)bbObjectDowncast((BBOBJECT)openb3d_openb3dcore_TGlobal3D_camera_in_use,(BBClass*)&openb3d_openb3dcore_TEntity))))));
	struct BBDebugStm __stmt_27 = {0x47eafdfc4911859b, 165, 0};
	bbOnDebugEnterStm(&__stmt_27);
	if((bbt_debug_subobjects!=0) && (((BBOBJECT)openb3d_openb3dcore_TGlobal3D_camera_in_use)!=&bbNullObject)){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x47eafdfc4911859b, 165, 0};
		bbOnDebugEnterStm(&__stmt_0);
		((struct openb3d_openb3dcore_TCamera_obj*)bbNullObjectTest((BBObject*)openb3d_openb3dcore_TGlobal3D_camera_in_use))->clas->m_DebugFields_ii((struct openb3d_openb3dcore_TCamera_obj*)openb3d_openb3dcore_TGlobal3D_camera_in_use,bbt_debug_subobjects,bbt_debug_base_types);
		bbOnDebugLeaveScope();
	}
	struct BBDebugStm __stmt_28 = {0x47eafdfc4911859b, 168, 0};
	bbOnDebugEnterStm(&__stmt_28);
	brl_blitz_DebugLog(bbStringConcat(bbStringConcat(bbt_pad,((BBString*)&_s38)),openb3d_openb3dcore_StringPtr(openb3d_openb3dcore_TShader_GetInstance_pb_TTShader((struct openb3d_openb3dcore_TShader_obj*)openb3d_openb3dcore_TGlobal3D_ambient_shader))));
	struct BBDebugStm __stmt_29 = {0x47eafdfc4911859b, 171, 0};
	bbOnDebugEnterStm(&__stmt_29);
	brl_blitz_DebugLog((BBString*)&bbEmptyString);
	bbOnDebugLeaveScope();
	return 0;
}
BBINT openb3d_openb3dcore_TGlobal3D_CopyList_i_TTList(struct brl_linkedlist_TList_obj* bbt_list){
	struct BBDebugScope_1 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"CopyList",
		{
			{
				BBDEBUGDECL_LOCAL,
				"list",
				":TList",
				.var_address=&bbt_list
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x47eafdfc4911859b, 177, 0};
	bbOnDebugEnterStm(&__stmt_0);
	struct brl_linkedlist_TList_obj* bbt_=(struct brl_linkedlist_TList_obj*)bbt_list;
	struct BBDebugStm __stmt_1 = {0x47eafdfc4911859b, 178, 0};
	bbOnDebugEnterStm(&__stmt_1);
	if(((struct brl_linkedlist_TList_obj*)bbt_)==openb3d_openb3dcore_TCamera_cam_list){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x47eafdfc4911859b, 179, 0};
		bbOnDebugEnterStm(&__stmt_0);
		openb3d_openb3dcore_TCamera_CopyList__i_TTList((struct brl_linkedlist_TList_obj*)openb3d_openb3dcore_TCamera_cam_list);
		bbOnDebugLeaveScope();
	}else{
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x47eafdfc4911859b, 180, 0};
		bbOnDebugEnterStm(&__stmt_0);
		if(((struct brl_linkedlist_TList_obj*)bbt_)==openb3d_openb3dcore_TEntity_entity_list){
			struct BBDebugScope __scope = {
				BBDEBUGSCOPE_LOCALBLOCK,
				0,
				{
					{
						BBDEBUGDECL_END
					}
				}
			};
			bbOnDebugEnterScope((BBDebugScope *)&__scope);
			struct BBDebugStm __stmt_0 = {0x47eafdfc4911859b, 181, 0};
			bbOnDebugEnterStm(&__stmt_0);
			openb3d_openb3dcore_TEntity_CopyList__i_TTList((struct brl_linkedlist_TList_obj*)openb3d_openb3dcore_TEntity_entity_list);
			bbOnDebugLeaveScope();
		}else{
			struct BBDebugScope __scope = {
				BBDEBUGSCOPE_LOCALBLOCK,
				0,
				{
					{
						BBDEBUGDECL_END
					}
				}
			};
			bbOnDebugEnterScope((BBDebugScope *)&__scope);
			struct BBDebugStm __stmt_0 = {0x47eafdfc4911859b, 182, 0};
			bbOnDebugEnterStm(&__stmt_0);
			if(((struct brl_linkedlist_TList_obj*)bbt_)==openb3d_openb3dcore_TEntity_animate_list){
				struct BBDebugScope __scope = {
					BBDEBUGSCOPE_LOCALBLOCK,
					0,
					{
						{
							BBDEBUGDECL_END
						}
					}
				};
				bbOnDebugEnterScope((BBDebugScope *)&__scope);
				struct BBDebugStm __stmt_0 = {0x47eafdfc4911859b, 183, 0};
				bbOnDebugEnterStm(&__stmt_0);
				openb3d_openb3dcore_TEntity_CopyList__i_TTList((struct brl_linkedlist_TList_obj*)openb3d_openb3dcore_TEntity_animate_list);
				bbOnDebugLeaveScope();
			}else{
				struct BBDebugScope __scope = {
					BBDEBUGSCOPE_LOCALBLOCK,
					0,
					{
						{
							BBDEBUGDECL_END
						}
					}
				};
				bbOnDebugEnterScope((BBDebugScope *)&__scope);
				struct BBDebugStm __stmt_0 = {0x47eafdfc4911859b, 184, 0};
				bbOnDebugEnterStm(&__stmt_0);
				if(((struct brl_linkedlist_TList_obj*)bbt_)==openb3d_openb3dcore_TLight_light_list){
					struct BBDebugScope __scope = {
						BBDEBUGSCOPE_LOCALBLOCK,
						0,
						{
							{
								BBDEBUGDECL_END
							}
						}
					};
					bbOnDebugEnterScope((BBDebugScope *)&__scope);
					struct BBDebugStm __stmt_0 = {0x47eafdfc4911859b, 185, 0};
					bbOnDebugEnterStm(&__stmt_0);
					openb3d_openb3dcore_TLight_CopyList__i_TTList((struct brl_linkedlist_TList_obj*)openb3d_openb3dcore_TLight_light_list);
					bbOnDebugLeaveScope();
				}else{
					struct BBDebugScope __scope = {
						BBDEBUGSCOPE_LOCALBLOCK,
						0,
						{
							{
								BBDEBUGDECL_END
							}
						}
					};
					bbOnDebugEnterScope((BBDebugScope *)&__scope);
					struct BBDebugStm __stmt_0 = {0x47eafdfc4911859b, 186, 0};
					bbOnDebugEnterStm(&__stmt_0);
					if(((struct brl_linkedlist_TList_obj*)bbt_)==openb3d_openb3dcore_TPick_ent_list){
						struct BBDebugScope __scope = {
							BBDEBUGSCOPE_LOCALBLOCK,
							0,
							{
								{
									BBDEBUGDECL_END
								}
							}
						};
						bbOnDebugEnterScope((BBDebugScope *)&__scope);
						struct BBDebugStm __stmt_0 = {0x47eafdfc4911859b, 187, 0};
						bbOnDebugEnterStm(&__stmt_0);
						openb3d_openb3dcore_TPick_CopyList__i_TTList((struct brl_linkedlist_TList_obj*)openb3d_openb3dcore_TPick_ent_list);
						bbOnDebugLeaveScope();
					}else{
						struct BBDebugScope __scope = {
							BBDEBUGSCOPE_LOCALBLOCK,
							0,
							{
								{
									BBDEBUGDECL_END
								}
							}
						};
						bbOnDebugEnterScope((BBDebugScope *)&__scope);
						struct BBDebugStm __stmt_0 = {0x47eafdfc4911859b, 188, 0};
						bbOnDebugEnterStm(&__stmt_0);
						if(((struct brl_linkedlist_TList_obj*)bbt_)==openb3d_openb3dcore_TShadowObject_shadow_list){
							struct BBDebugScope __scope = {
								BBDEBUGSCOPE_LOCALBLOCK,
								0,
								{
									{
										BBDEBUGDECL_END
									}
								}
							};
							bbOnDebugEnterScope((BBDebugScope *)&__scope);
							struct BBDebugStm __stmt_0 = {0x47eafdfc4911859b, 189, 0};
							bbOnDebugEnterStm(&__stmt_0);
							openb3d_openb3dcore_TShadowObject_CopyList__i_TTList((struct brl_linkedlist_TList_obj*)openb3d_openb3dcore_TShadowObject_shadow_list);
							bbOnDebugLeaveScope();
						}else{
							struct BBDebugScope __scope = {
								BBDEBUGSCOPE_LOCALBLOCK,
								0,
								{
									{
										BBDEBUGDECL_END
									}
								}
							};
							bbOnDebugEnterScope((BBDebugScope *)&__scope);
							struct BBDebugStm __stmt_0 = {0x47eafdfc4911859b, 190, 0};
							bbOnDebugEnterStm(&__stmt_0);
							if(((struct brl_linkedlist_TList_obj*)bbt_)==openb3d_openb3dcore_TTerrain_terrain_list){
								struct BBDebugScope __scope = {
									BBDEBUGSCOPE_LOCALBLOCK,
									0,
									{
										{
											BBDEBUGDECL_END
										}
									}
								};
								bbOnDebugEnterScope((BBDebugScope *)&__scope);
								struct BBDebugStm __stmt_0 = {0x47eafdfc4911859b, 191, 0};
								bbOnDebugEnterStm(&__stmt_0);
								openb3d_openb3dcore_TTerrain_CopyList__i_TTList((struct brl_linkedlist_TList_obj*)openb3d_openb3dcore_TTerrain_terrain_list);
								bbOnDebugLeaveScope();
							}else{
								struct BBDebugScope __scope = {
									BBDEBUGSCOPE_LOCALBLOCK,
									0,
									{
										{
											BBDEBUGDECL_END
										}
									}
								};
								bbOnDebugEnterScope((BBDebugScope *)&__scope);
								struct BBDebugStm __stmt_0 = {0x47eafdfc4911859b, 192, 0};
								bbOnDebugEnterStm(&__stmt_0);
								if(((struct brl_linkedlist_TList_obj*)bbt_)==openb3d_openb3dcore_TTexture_tex_list){
									struct BBDebugScope __scope = {
										BBDEBUGSCOPE_LOCALBLOCK,
										0,
										{
											{
												BBDEBUGDECL_END
											}
										}
									};
									bbOnDebugEnterScope((BBDebugScope *)&__scope);
									struct BBDebugStm __stmt_0 = {0x47eafdfc4911859b, 193, 0};
									bbOnDebugEnterStm(&__stmt_0);
									openb3d_openb3dcore_TTexture_CopyList__i_TTList((struct brl_linkedlist_TList_obj*)openb3d_openb3dcore_TTexture_tex_list);
									bbOnDebugLeaveScope();
								}else{
									struct BBDebugScope __scope = {
										BBDEBUGSCOPE_LOCALBLOCK,
										0,
										{
											{
												BBDEBUGDECL_END
											}
										}
									};
									bbOnDebugEnterScope((BBDebugScope *)&__scope);
									struct BBDebugStm __stmt_0 = {0x47eafdfc4911859b, 194, 0};
									bbOnDebugEnterStm(&__stmt_0);
									if(((struct brl_linkedlist_TList_obj*)bbt_)==openb3d_openb3dcore_TTexture_tex_list_all){
										struct BBDebugScope __scope = {
											BBDEBUGSCOPE_LOCALBLOCK,
											0,
											{
												{
													BBDEBUGDECL_END
												}
											}
										};
										bbOnDebugEnterScope((BBDebugScope *)&__scope);
										struct BBDebugStm __stmt_0 = {0x47eafdfc4911859b, 195, 0};
										bbOnDebugEnterStm(&__stmt_0);
										openb3d_openb3dcore_TTexture_CopyList__i_TTList((struct brl_linkedlist_TList_obj*)openb3d_openb3dcore_TTexture_tex_list_all);
										bbOnDebugLeaveScope();
									}
									bbOnDebugLeaveScope();
								}
								bbOnDebugLeaveScope();
							}
							bbOnDebugLeaveScope();
						}
						bbOnDebugLeaveScope();
					}
					bbOnDebugLeaveScope();
				}
				bbOnDebugLeaveScope();
			}
			bbOnDebugLeaveScope();
		}
		bbOnDebugLeaveScope();
	}
	bbOnDebugLeaveScope();
	return 0;
}
BBINT openb3d_openb3dcore_TGlobal3D_CheckFramebufferStatus_i_i(BBINT bbt_target){
	BBINT bbt_status=0;
	struct BBDebugScope_2 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"CheckFramebufferStatus",
		{
			{
				BBDEBUGDECL_LOCAL,
				"target",
				"i",
				.var_address=&bbt_target
			},
			{
				BBDEBUGDECL_LOCAL,
				"status",
				"i",
				.var_address=&bbt_status
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x47eafdfc4911859b, 205, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbt_status=__glewCheckFramebufferStatusEXT(bbt_target);
	struct BBDebugStm __stmt_1 = {0x47eafdfc4911859b, 207, 0};
	bbOnDebugEnterStm(&__stmt_1);
	BBINT bbt_=bbt_status;
	struct BBDebugStm __stmt_2 = {0x47eafdfc4911859b, 208, 0};
	bbOnDebugEnterStm(&__stmt_2);
	if(bbt_==36053){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x47eafdfc4911859b, 209, 0};
		bbOnDebugEnterStm(&__stmt_0);
		brl_blitz_DebugLog((BBString*)&_s39);
		bbOnDebugLeaveScope();
	}else{
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x47eafdfc4911859b, 210, 0};
		bbOnDebugEnterStm(&__stmt_0);
		if(bbt_==36054){
			struct BBDebugScope __scope = {
				BBDEBUGSCOPE_LOCALBLOCK,
				0,
				{
					{
						BBDEBUGDECL_END
					}
				}
			};
			bbOnDebugEnterScope((BBDebugScope *)&__scope);
			struct BBDebugStm __stmt_0 = {0x47eafdfc4911859b, 211, 0};
			bbOnDebugEnterStm(&__stmt_0);
			brl_blitz_DebugLog((BBString*)&_s40);
			bbOnDebugLeaveScope();
		}else{
			struct BBDebugScope __scope = {
				BBDEBUGSCOPE_LOCALBLOCK,
				0,
				{
					{
						BBDEBUGDECL_END
					}
				}
			};
			bbOnDebugEnterScope((BBDebugScope *)&__scope);
			struct BBDebugStm __stmt_0 = {0x47eafdfc4911859b, 212, 0};
			bbOnDebugEnterStm(&__stmt_0);
			if(bbt_==36055){
				struct BBDebugScope __scope = {
					BBDEBUGSCOPE_LOCALBLOCK,
					0,
					{
						{
							BBDEBUGDECL_END
						}
					}
				};
				bbOnDebugEnterScope((BBDebugScope *)&__scope);
				struct BBDebugStm __stmt_0 = {0x47eafdfc4911859b, 213, 0};
				bbOnDebugEnterStm(&__stmt_0);
				brl_blitz_DebugLog((BBString*)&_s41);
				bbOnDebugLeaveScope();
			}else{
				struct BBDebugScope __scope = {
					BBDEBUGSCOPE_LOCALBLOCK,
					0,
					{
						{
							BBDEBUGDECL_END
						}
					}
				};
				bbOnDebugEnterScope((BBDebugScope *)&__scope);
				struct BBDebugStm __stmt_0 = {0x47eafdfc4911859b, 214, 0};
				bbOnDebugEnterStm(&__stmt_0);
				if(bbt_==36057){
					struct BBDebugScope __scope = {
						BBDEBUGSCOPE_LOCALBLOCK,
						0,
						{
							{
								BBDEBUGDECL_END
							}
						}
					};
					bbOnDebugEnterScope((BBDebugScope *)&__scope);
					struct BBDebugStm __stmt_0 = {0x47eafdfc4911859b, 215, 0};
					bbOnDebugEnterStm(&__stmt_0);
					brl_blitz_DebugLog((BBString*)&_s42);
					bbOnDebugLeaveScope();
				}else{
					struct BBDebugScope __scope = {
						BBDEBUGSCOPE_LOCALBLOCK,
						0,
						{
							{
								BBDEBUGDECL_END
							}
						}
					};
					bbOnDebugEnterScope((BBDebugScope *)&__scope);
					struct BBDebugStm __stmt_0 = {0x47eafdfc4911859b, 216, 0};
					bbOnDebugEnterStm(&__stmt_0);
					if(bbt_==36058){
						struct BBDebugScope __scope = {
							BBDEBUGSCOPE_LOCALBLOCK,
							0,
							{
								{
									BBDEBUGDECL_END
								}
							}
						};
						bbOnDebugEnterScope((BBDebugScope *)&__scope);
						struct BBDebugStm __stmt_0 = {0x47eafdfc4911859b, 217, 0};
						bbOnDebugEnterStm(&__stmt_0);
						brl_blitz_DebugLog((BBString*)&_s43);
						bbOnDebugLeaveScope();
					}else{
						struct BBDebugScope __scope = {
							BBDEBUGSCOPE_LOCALBLOCK,
							0,
							{
								{
									BBDEBUGDECL_END
								}
							}
						};
						bbOnDebugEnterScope((BBDebugScope *)&__scope);
						struct BBDebugStm __stmt_0 = {0x47eafdfc4911859b, 218, 0};
						bbOnDebugEnterStm(&__stmt_0);
						if(bbt_==36059){
							struct BBDebugScope __scope = {
								BBDEBUGSCOPE_LOCALBLOCK,
								0,
								{
									{
										BBDEBUGDECL_END
									}
								}
							};
							bbOnDebugEnterScope((BBDebugScope *)&__scope);
							struct BBDebugStm __stmt_0 = {0x47eafdfc4911859b, 219, 0};
							bbOnDebugEnterStm(&__stmt_0);
							brl_blitz_DebugLog((BBString*)&_s44);
							bbOnDebugLeaveScope();
						}else{
							struct BBDebugScope __scope = {
								BBDEBUGSCOPE_LOCALBLOCK,
								0,
								{
									{
										BBDEBUGDECL_END
									}
								}
							};
							bbOnDebugEnterScope((BBDebugScope *)&__scope);
							struct BBDebugStm __stmt_0 = {0x47eafdfc4911859b, 220, 0};
							bbOnDebugEnterStm(&__stmt_0);
							if(bbt_==36060){
								struct BBDebugScope __scope = {
									BBDEBUGSCOPE_LOCALBLOCK,
									0,
									{
										{
											BBDEBUGDECL_END
										}
									}
								};
								bbOnDebugEnterScope((BBDebugScope *)&__scope);
								struct BBDebugStm __stmt_0 = {0x47eafdfc4911859b, 221, 0};
								bbOnDebugEnterStm(&__stmt_0);
								brl_blitz_DebugLog((BBString*)&_s45);
								bbOnDebugLeaveScope();
							}else{
								struct BBDebugScope __scope = {
									BBDEBUGSCOPE_LOCALBLOCK,
									0,
									{
										{
											BBDEBUGDECL_END
										}
									}
								};
								bbOnDebugEnterScope((BBDebugScope *)&__scope);
								struct BBDebugStm __stmt_0 = {0x47eafdfc4911859b, 222, 0};
								bbOnDebugEnterStm(&__stmt_0);
								if(bbt_==36061){
									struct BBDebugScope __scope = {
										BBDEBUGSCOPE_LOCALBLOCK,
										0,
										{
											{
												BBDEBUGDECL_END
											}
										}
									};
									bbOnDebugEnterScope((BBDebugScope *)&__scope);
									struct BBDebugStm __stmt_0 = {0x47eafdfc4911859b, 223, 0};
									bbOnDebugEnterStm(&__stmt_0);
									brl_blitz_DebugLog((BBString*)&_s46);
									bbOnDebugLeaveScope();
								}else{
									struct BBDebugScope __scope = {
										BBDEBUGSCOPE_LOCALBLOCK,
										0,
										{
											{
												BBDEBUGDECL_END
											}
										}
									};
									bbOnDebugEnterScope((BBDebugScope *)&__scope);
									struct BBDebugStm __stmt_0 = {0x47eafdfc4911859b, 225, 0};
									bbOnDebugEnterStm(&__stmt_0);
									brl_blitz_DebugLog(bbStringConcat(((BBString*)&_s47),bbStringFromInt(bbt_status)));
									bbOnDebugLeaveScope();
								}
								bbOnDebugLeaveScope();
							}
							bbOnDebugLeaveScope();
						}
						bbOnDebugLeaveScope();
					}
					bbOnDebugLeaveScope();
				}
				bbOnDebugLeaveScope();
			}
			bbOnDebugLeaveScope();
		}
		bbOnDebugLeaveScope();
	}
	bbOnDebugLeaveScope();
	return 0;
}
BBINT openb3d_openb3dcore_TGlobal3D_GraphicsInit_i(){
	BBARRAY bbt_amb=(&bbEmptyArray);
	BBARRAY bbt_flag=(&bbEmptyArray);
	struct BBDebugScope_2 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"GraphicsInit",
		{
			{
				BBDEBUGDECL_LOCAL,
				"amb",
				"[]f",
				.var_address=&bbt_amb
			},
			{
				BBDEBUGDECL_LOCAL,
				"flag",
				"[]f",
				.var_address=&bbt_flag
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x47eafdfc4911859b, 235, 0};
	bbOnDebugEnterStm(&__stmt_0);
	glPushAttrib((GLbitfield)1048575);
	struct BBDebugStm __stmt_1 = {0x47eafdfc4911859b, 236, 0};
	bbOnDebugEnterStm(&__stmt_1);
	glPushClientAttrib((GLbitfield)-1);
	struct BBDebugStm __stmt_2 = {0x47eafdfc4911859b, 237, 0};
	bbOnDebugEnterStm(&__stmt_2);
	glMatrixMode((GLenum)5888);
	struct BBDebugStm __stmt_3 = {0x47eafdfc4911859b, 238, 0};
	bbOnDebugEnterStm(&__stmt_3);
	glPushMatrix();
	struct BBDebugStm __stmt_4 = {0x47eafdfc4911859b, 239, 0};
	bbOnDebugEnterStm(&__stmt_4);
	glMatrixMode((GLenum)5889);
	struct BBDebugStm __stmt_5 = {0x47eafdfc4911859b, 240, 0};
	bbOnDebugEnterStm(&__stmt_5);
	glPushMatrix();
	struct BBDebugStm __stmt_6 = {0x47eafdfc4911859b, 241, 0};
	bbOnDebugEnterStm(&__stmt_6);
	glMatrixMode((GLenum)5890);
	struct BBDebugStm __stmt_7 = {0x47eafdfc4911859b, 242, 0};
	bbOnDebugEnterStm(&__stmt_7);
	glPushMatrix();
	struct BBDebugStm __stmt_8 = {0x47eafdfc4911859b, 243, 0};
	bbOnDebugEnterStm(&__stmt_8);
	glMatrixMode((GLenum)6144);
	struct BBDebugStm __stmt_9 = {0x47eafdfc4911859b, 244, 0};
	bbOnDebugEnterStm(&__stmt_9);
	glPushMatrix();
	struct BBDebugStm __stmt_10 = {0x47eafdfc4911859b, 247, 0};
	bbOnDebugEnterStm(&__stmt_10);
	glDepthFunc((GLenum)515);
	struct BBDebugStm __stmt_11 = {0x47eafdfc4911859b, 248, 0};
	bbOnDebugEnterStm(&__stmt_11);
	glHint((GLenum)3152,(GLenum)4354);
	struct BBDebugStm __stmt_12 = {0x47eafdfc4911859b, 250, 0};
	bbOnDebugEnterStm(&__stmt_12);
	glAlphaFunc((GLenum)518,(GLclampf)0.5f);
	struct BBDebugStm __stmt_13 = {0x47eafdfc4911859b, 253, 0};
	bbOnDebugEnterStm(&__stmt_13);
	glEnable((GLenum)2896);
	struct BBDebugStm __stmt_14 = {0x47eafdfc4911859b, 254, 0};
	bbOnDebugEnterStm(&__stmt_14);
	glEnable((GLenum)2929);
	struct BBDebugStm __stmt_15 = {0x47eafdfc4911859b, 255, 0};
	bbOnDebugEnterStm(&__stmt_15);
	glDepthMask((GLboolean)1);
	struct BBDebugStm __stmt_16 = {0x47eafdfc4911859b, 258, 0};
	bbOnDebugEnterStm(&__stmt_16);
	glEnable((GLenum)2912);
	struct BBDebugStm __stmt_17 = {0x47eafdfc4911859b, 259, 0};
	bbOnDebugEnterStm(&__stmt_17);
	glEnable((GLenum)2884);
	struct BBDebugStm __stmt_18 = {0x47eafdfc4911859b, 260, 0};
	bbOnDebugEnterStm(&__stmt_18);
	glEnable((GLenum)3089);
	struct BBDebugStm __stmt_19 = {0x47eafdfc4911859b, 262, 0};
	bbOnDebugEnterStm(&__stmt_19);
	glEnable((GLenum)2977);
	struct BBDebugStm __stmt_20 = {0x47eafdfc4911859b, 264, 0};
	bbOnDebugEnterStm(&__stmt_20);
	glEnableClientState((GLenum)32884);
	struct BBDebugStm __stmt_21 = {0x47eafdfc4911859b, 265, 0};
	bbOnDebugEnterStm(&__stmt_21);
	glEnableClientState((GLenum)32885);
	struct BBDebugStm __stmt_22 = {0x47eafdfc4911859b, 266, 0};
	bbOnDebugEnterStm(&__stmt_22);
	glEnableClientState((GLenum)32886);
	struct BBDebugStm __stmt_23 = {0x47eafdfc4911859b, 268, 0};
	bbOnDebugEnterStm(&__stmt_23);
	glEnable((GLenum)2929);
	struct BBDebugStm __stmt_24 = {0x47eafdfc4911859b, 269, 0};
	bbOnDebugEnterStm(&__stmt_24);
	glDepthMask((GLboolean)1);
	struct BBDebugStm __stmt_25 = {0x47eafdfc4911859b, 270, 0};
	bbOnDebugEnterStm(&__stmt_25);
	glClearDepth((GLclampd)1.0);
	struct BBDebugStm __stmt_26 = {0x47eafdfc4911859b, 271, 0};
	bbOnDebugEnterStm(&__stmt_26);
	glDepthFunc((GLenum)515);
	struct BBDebugStm __stmt_27 = {0x47eafdfc4911859b, 272, 0};
	bbOnDebugEnterStm(&__stmt_27);
	glEnable((GLenum)2884);
	struct BBDebugStm __stmt_28 = {0x47eafdfc4911859b, 273, 0};
	bbOnDebugEnterStm(&__stmt_28);
	glEnable((GLenum)3089);
	struct BBDebugStm __stmt_29 = {0x47eafdfc4911859b, 274, 0};
	bbOnDebugEnterStm(&__stmt_29);
	glEnable((GLenum)3042);
	struct BBDebugStm __stmt_30 = {0x47eafdfc4911859b, 276, 0};
	bbOnDebugEnterStm(&__stmt_30);
	BBFLOAT bbt_[]={0.5f,0.5f,0.5f,1.0f};
	BBARRAY bbt_2 = bbArrayFromData("f",4,bbt_);
	bbt_amb=bbt_2;
	struct BBDebugStm __stmt_31 = {0x47eafdfc4911859b, 277, 0};
	bbOnDebugEnterStm(&__stmt_31);
	BBFLOAT bbt_3[]={0.0f};
	BBARRAY bbt_4 = bbArrayFromData("f",1,bbt_3);
	bbt_flag=bbt_4;
	struct BBDebugStm __stmt_32 = {0x47eafdfc4911859b, 278, 0};
	bbOnDebugEnterStm(&__stmt_32);
	glLightModelfv((GLenum)2899,(const GLfloat*)(&((BBFLOAT*)BBARRAYDATAINDEX((bbt_amb),(bbt_amb)->dims,0U))[0U]));
	struct BBDebugStm __stmt_33 = {0x47eafdfc4911859b, 279, 0};
	bbOnDebugEnterStm(&__stmt_33);
	glLightModelfv((GLenum)2898,(const GLfloat*)(&((BBFLOAT*)BBARRAYDATAINDEX((bbt_flag),(bbt_flag)->dims,0U))[0U]));
	struct BBDebugStm __stmt_34 = {0x47eafdfc4911859b, 281, 0};
	bbOnDebugEnterStm(&__stmt_34);
	openb3d_openb3dcore_TextureFilter(((BBString*)&bbEmptyString),9);
	struct BBDebugStm __stmt_35 = {0x47eafdfc4911859b, 283, 0};
	bbOnDebugEnterStm(&__stmt_35);
	glLightModeli((GLenum)33272,(GLint)33274);
	struct BBDebugStm __stmt_36 = {0x47eafdfc4911859b, 284, 0};
	bbOnDebugEnterStm(&__stmt_36);
	glLightModeli((GLenum)2897,(GLint)1);
	bbOnDebugLeaveScope();
	return 0;
}
BBINT openb3d_openb3dcore_TGlobal3D_EnableStates_i(){
	struct BBDebugScope __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"EnableStates",
		{
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x47eafdfc4911859b, 291, 0};
	bbOnDebugEnterStm(&__stmt_0);
	glEnable((GLenum)2896);
	struct BBDebugStm __stmt_1 = {0x47eafdfc4911859b, 292, 0};
	bbOnDebugEnterStm(&__stmt_1);
	glEnable((GLenum)2929);
	struct BBDebugStm __stmt_2 = {0x47eafdfc4911859b, 293, 0};
	bbOnDebugEnterStm(&__stmt_2);
	glEnable((GLenum)2912);
	struct BBDebugStm __stmt_3 = {0x47eafdfc4911859b, 294, 0};
	bbOnDebugEnterStm(&__stmt_3);
	glEnable((GLenum)2884);
	struct BBDebugStm __stmt_4 = {0x47eafdfc4911859b, 295, 0};
	bbOnDebugEnterStm(&__stmt_4);
	glEnable((GLenum)3089);
	struct BBDebugStm __stmt_5 = {0x47eafdfc4911859b, 297, 0};
	bbOnDebugEnterStm(&__stmt_5);
	glEnable((GLenum)2977);
	struct BBDebugStm __stmt_6 = {0x47eafdfc4911859b, 299, 0};
	bbOnDebugEnterStm(&__stmt_6);
	glEnableClientState((GLenum)32884);
	struct BBDebugStm __stmt_7 = {0x47eafdfc4911859b, 300, 0};
	bbOnDebugEnterStm(&__stmt_7);
	glEnableClientState((GLenum)32885);
	bbOnDebugLeaveScope();
	return 0;
}
BBINT openb3d_openb3dcore_TGlobal3D_Wireframe_i_i(BBINT bbt_enable){
	struct BBDebugScope_1 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"Wireframe",
		{
			{
				BBDEBUGDECL_LOCAL,
				"enable",
				"i",
				.var_address=&bbt_enable
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x47eafdfc4911859b, 307, 0};
	bbOnDebugEnterStm(&__stmt_0);
	Wireframe_(bbt_enable);
	bbOnDebugLeaveScope();
	return 0;
}
BBINT openb3d_openb3dcore_TGlobal3D_AmbientLight_i_fff(BBFLOAT bbt_r,BBFLOAT bbt_g,BBFLOAT bbt_b){
	struct BBDebugScope_3 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"AmbientLight",
		{
			{
				BBDEBUGDECL_LOCAL,
				"r",
				"f",
				.var_address=&bbt_r
			},
			{
				BBDEBUGDECL_LOCAL,
				"g",
				"f",
				.var_address=&bbt_g
			},
			{
				BBDEBUGDECL_LOCAL,
				"b",
				"f",
				.var_address=&bbt_b
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x47eafdfc4911859b, 313, 0};
	bbOnDebugEnterStm(&__stmt_0);
	AmbientLight_(bbt_r,bbt_g,bbt_b);
	bbOnDebugLeaveScope();
	return 0;
}
BBINT openb3d_openb3dcore_TGlobal3D_FreeCollisionPivots_i(){
	struct BBDebugScope __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"FreeCollisionPivots",
		{
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x47eafdfc4911859b, 319, 0};
	bbOnDebugEnterStm(&__stmt_0);
	if(openb3d_openb3dcore_TGlobal3D_pivots_exist==1){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x47eafdfc4911859b, 320, 0};
		bbOnDebugEnterStm(&__stmt_0);
		openb3d_openb3dcore_TGlobal3D_pivots_exist=0;
		struct BBDebugStm __stmt_1 = {0x47eafdfc4911859b, 321, 0};
		bbOnDebugEnterStm(&__stmt_1);
		if(((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)openb3d_openb3dcore_TGlobal3D_piv1))->_openb3d_openb3dcore_tentity_exists !=0){
			struct BBDebugScope __scope = {
				BBDEBUGSCOPE_LOCALBLOCK,
				0,
				{
					{
						BBDEBUGDECL_END
					}
				}
			};
			bbOnDebugEnterScope((BBDebugScope *)&__scope);
			struct BBDebugStm __stmt_0 = {0x47eafdfc4911859b, 322, 0};
			bbOnDebugEnterStm(&__stmt_0);
			((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)openb3d_openb3dcore_TGlobal3D_piv1))->_openb3d_openb3dcore_tentity_exists =0;
			struct BBDebugStm __stmt_1 = {0x47eafdfc4911859b, 323, 0};
			bbOnDebugEnterStm(&__stmt_1);
			((struct openb3d_openb3dcore_TPivot_obj*)bbNullObjectTest((BBObject*)openb3d_openb3dcore_TGlobal3D_piv1))->clas->m_FreeEntityList((struct openb3d_openb3dcore_TEntity_obj*)openb3d_openb3dcore_TGlobal3D_piv1);
			bbOnDebugLeaveScope();
		}
		struct BBDebugStm __stmt_2 = {0x47eafdfc4911859b, 325, 0};
		bbOnDebugEnterStm(&__stmt_2);
		if(((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)openb3d_openb3dcore_TGlobal3D_piv11))->_openb3d_openb3dcore_tentity_exists !=0){
			struct BBDebugScope __scope = {
				BBDEBUGSCOPE_LOCALBLOCK,
				0,
				{
					{
						BBDEBUGDECL_END
					}
				}
			};
			bbOnDebugEnterScope((BBDebugScope *)&__scope);
			struct BBDebugStm __stmt_0 = {0x47eafdfc4911859b, 326, 0};
			bbOnDebugEnterStm(&__stmt_0);
			((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)openb3d_openb3dcore_TGlobal3D_piv11))->_openb3d_openb3dcore_tentity_exists =0;
			struct BBDebugStm __stmt_1 = {0x47eafdfc4911859b, 327, 0};
			bbOnDebugEnterStm(&__stmt_1);
			((struct openb3d_openb3dcore_TPivot_obj*)bbNullObjectTest((BBObject*)openb3d_openb3dcore_TGlobal3D_piv11))->clas->m_FreeEntityList((struct openb3d_openb3dcore_TEntity_obj*)openb3d_openb3dcore_TGlobal3D_piv11);
			bbOnDebugLeaveScope();
		}
		struct BBDebugStm __stmt_3 = {0x47eafdfc4911859b, 329, 0};
		bbOnDebugEnterStm(&__stmt_3);
		if(((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)openb3d_openb3dcore_TGlobal3D_piv111))->_openb3d_openb3dcore_tentity_exists !=0){
			struct BBDebugScope __scope = {
				BBDEBUGSCOPE_LOCALBLOCK,
				0,
				{
					{
						BBDEBUGDECL_END
					}
				}
			};
			bbOnDebugEnterScope((BBDebugScope *)&__scope);
			struct BBDebugStm __stmt_0 = {0x47eafdfc4911859b, 330, 0};
			bbOnDebugEnterStm(&__stmt_0);
			((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)openb3d_openb3dcore_TGlobal3D_piv111))->_openb3d_openb3dcore_tentity_exists =0;
			struct BBDebugStm __stmt_1 = {0x47eafdfc4911859b, 331, 0};
			bbOnDebugEnterStm(&__stmt_1);
			((struct openb3d_openb3dcore_TPivot_obj*)bbNullObjectTest((BBObject*)openb3d_openb3dcore_TGlobal3D_piv111))->clas->m_FreeEntityList((struct openb3d_openb3dcore_TEntity_obj*)openb3d_openb3dcore_TGlobal3D_piv111);
			bbOnDebugLeaveScope();
		}
		struct BBDebugStm __stmt_4 = {0x47eafdfc4911859b, 333, 0};
		bbOnDebugEnterStm(&__stmt_4);
		if(((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)openb3d_openb3dcore_TGlobal3D_piv2))->_openb3d_openb3dcore_tentity_exists !=0){
			struct BBDebugScope __scope = {
				BBDEBUGSCOPE_LOCALBLOCK,
				0,
				{
					{
						BBDEBUGDECL_END
					}
				}
			};
			bbOnDebugEnterScope((BBDebugScope *)&__scope);
			struct BBDebugStm __stmt_0 = {0x47eafdfc4911859b, 334, 0};
			bbOnDebugEnterStm(&__stmt_0);
			((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)openb3d_openb3dcore_TGlobal3D_piv2))->_openb3d_openb3dcore_tentity_exists =0;
			struct BBDebugStm __stmt_1 = {0x47eafdfc4911859b, 335, 0};
			bbOnDebugEnterStm(&__stmt_1);
			((struct openb3d_openb3dcore_TPivot_obj*)bbNullObjectTest((BBObject*)openb3d_openb3dcore_TGlobal3D_piv2))->clas->m_FreeEntityList((struct openb3d_openb3dcore_TEntity_obj*)openb3d_openb3dcore_TGlobal3D_piv2);
			bbOnDebugLeaveScope();
		}
		struct BBDebugStm __stmt_5 = {0x47eafdfc4911859b, 337, 0};
		bbOnDebugEnterStm(&__stmt_5);
		if(((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)openb3d_openb3dcore_TGlobal3D_piv1o))->_openb3d_openb3dcore_tentity_exists !=0){
			struct BBDebugScope __scope = {
				BBDEBUGSCOPE_LOCALBLOCK,
				0,
				{
					{
						BBDEBUGDECL_END
					}
				}
			};
			bbOnDebugEnterScope((BBDebugScope *)&__scope);
			struct BBDebugStm __stmt_0 = {0x47eafdfc4911859b, 338, 0};
			bbOnDebugEnterStm(&__stmt_0);
			((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)openb3d_openb3dcore_TGlobal3D_piv1o))->_openb3d_openb3dcore_tentity_exists =0;
			struct BBDebugStm __stmt_1 = {0x47eafdfc4911859b, 339, 0};
			bbOnDebugEnterStm(&__stmt_1);
			((struct openb3d_openb3dcore_TPivot_obj*)bbNullObjectTest((BBObject*)openb3d_openb3dcore_TGlobal3D_piv1o))->clas->m_FreeEntityList((struct openb3d_openb3dcore_TEntity_obj*)openb3d_openb3dcore_TGlobal3D_piv1o);
			bbOnDebugLeaveScope();
		}
		struct BBDebugStm __stmt_6 = {0x47eafdfc4911859b, 341, 0};
		bbOnDebugEnterStm(&__stmt_6);
		if(((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)openb3d_openb3dcore_TGlobal3D_piv2o))->_openb3d_openb3dcore_tentity_exists !=0){
			struct BBDebugScope __scope = {
				BBDEBUGSCOPE_LOCALBLOCK,
				0,
				{
					{
						BBDEBUGDECL_END
					}
				}
			};
			bbOnDebugEnterScope((BBDebugScope *)&__scope);
			struct BBDebugStm __stmt_0 = {0x47eafdfc4911859b, 342, 0};
			bbOnDebugEnterStm(&__stmt_0);
			((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)openb3d_openb3dcore_TGlobal3D_piv2o))->_openb3d_openb3dcore_tentity_exists =0;
			struct BBDebugStm __stmt_1 = {0x47eafdfc4911859b, 343, 0};
			bbOnDebugEnterStm(&__stmt_1);
			((struct openb3d_openb3dcore_TPivot_obj*)bbNullObjectTest((BBObject*)openb3d_openb3dcore_TGlobal3D_piv2o))->clas->m_FreeEntityList((struct openb3d_openb3dcore_TEntity_obj*)openb3d_openb3dcore_TGlobal3D_piv2o);
			bbOnDebugLeaveScope();
		}
		struct BBDebugStm __stmt_7 = {0x47eafdfc4911859b, 346, 0};
		bbOnDebugEnterStm(&__stmt_7);
		FreeCollisionPivots_();
		bbOnDebugLeaveScope();
	}
	bbOnDebugLeaveScope();
	return 0;
}
BBINT openb3d_openb3dcore_TGlobal3D_ClearCollisions_i(){
	struct BBDebugScope __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"ClearCollisions",
		{
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x47eafdfc4911859b, 353, 0};
	bbOnDebugEnterStm(&__stmt_0);
	ClearCollisions_();
	bbOnDebugLeaveScope();
	return 0;
}
BBINT openb3d_openb3dcore_TGlobal3D_Collisions_i_iiii(BBINT bbt_src_no,BBINT bbt_dest_no,BBINT bbt_method_no,BBINT bbt_response_no){
	struct BBDebugScope_4 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"Collisions",
		{
			{
				BBDEBUGDECL_LOCAL,
				"src_no",
				"i",
				.var_address=&bbt_src_no
			},
			{
				BBDEBUGDECL_LOCAL,
				"dest_no",
				"i",
				.var_address=&bbt_dest_no
			},
			{
				BBDEBUGDECL_LOCAL,
				"method_no",
				"i",
				.var_address=&bbt_method_no
			},
			{
				BBDEBUGDECL_LOCAL,
				"response_no",
				"i",
				.var_address=&bbt_response_no
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x47eafdfc4911859b, 359, 0};
	bbOnDebugEnterStm(&__stmt_0);
	Collisions_(bbt_src_no,bbt_dest_no,bbt_method_no,bbt_response_no);
	bbOnDebugLeaveScope();
	return 0;
}
BBINT openb3d_openb3dcore_TGlobal3D_ClearWorld_i_iii(BBINT bbt_entities,BBINT bbt_brushes,BBINT bbt_textures){
	struct BBDebugScope_3 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"ClearWorld",
		{
			{
				BBDEBUGDECL_LOCAL,
				"entities",
				"i",
				.var_address=&bbt_entities
			},
			{
				BBDEBUGDECL_LOCAL,
				"brushes",
				"i",
				.var_address=&bbt_brushes
			},
			{
				BBDEBUGDECL_LOCAL,
				"textures",
				"i",
				.var_address=&bbt_textures
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x47eafdfc4911859b, 365, 0};
	bbOnDebugEnterStm(&__stmt_0);
	if(bbt_entities!=0){
		BBINT bbt_count=0;
		struct BBDebugScope_1 __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_LOCAL,
					"count",
					"i",
					.var_address=&bbt_count
				},
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x47eafdfc4911859b, 366, 0};
		bbOnDebugEnterStm(&__stmt_0);
		openb3d_openb3dcore_TGlobal3D_FreeCollisionPivots_i();
		struct BBDebugStm __stmt_1 = {0x47eafdfc4911859b, 367, 0};
		bbOnDebugEnterStm(&__stmt_1);
		bbt_count=brl_linkedlist_CountList((struct brl_linkedlist_TList_obj*)openb3d_openb3dcore_TEntity_entity_list);
		struct BBDebugStm __stmt_2 = {0x47eafdfc4911859b, 368, 0};
		bbOnDebugEnterStm(&__stmt_2);
		openb3d_openb3dcore_TGlobal3D_FreeAllEntities_i_vi(&bbt_count);
		struct BBDebugStm __stmt_3 = {0x47eafdfc4911859b, 369, 0};
		bbOnDebugEnterStm(&__stmt_3);
		brl_linkedlist_ClearList((struct brl_linkedlist_TList_obj*)openb3d_openb3dcore_TEntity_entity_list);
		struct BBDebugStm __stmt_4 = {0x47eafdfc4911859b, 369, 0};
		bbOnDebugEnterStm(&__stmt_4);
		openb3d_openb3dcore_TEntity_entity_list_id=0;
		struct BBDebugStm __stmt_5 = {0x47eafdfc4911859b, 370, 0};
		bbOnDebugEnterStm(&__stmt_5);
		brl_linkedlist_ClearList((struct brl_linkedlist_TList_obj*)((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)openb3d_openb3dcore_TGlobal3D_root_ent))->_openb3d_openb3dcore_tentity_child_list );
		struct BBDebugStm __stmt_6 = {0x47eafdfc4911859b, 370, 0};
		bbOnDebugEnterStm(&__stmt_6);
		((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)openb3d_openb3dcore_TGlobal3D_root_ent))->_openb3d_openb3dcore_tentity_child_list_id =0;
		struct BBDebugStm __stmt_7 = {0x47eafdfc4911859b, 371, 0};
		bbOnDebugEnterStm(&__stmt_7);
		brl_linkedlist_ClearList((struct brl_linkedlist_TList_obj*)openb3d_openb3dcore_TEntity_animate_list);
		struct BBDebugStm __stmt_8 = {0x47eafdfc4911859b, 371, 0};
		bbOnDebugEnterStm(&__stmt_8);
		openb3d_openb3dcore_TEntity_animate_list_id=0;
		struct BBDebugStm __stmt_9 = {0x47eafdfc4911859b, 372, 0};
		bbOnDebugEnterStm(&__stmt_9);
		brl_linkedlist_ClearList((struct brl_linkedlist_TList_obj*)openb3d_openb3dcore_TCamera_cam_list);
		struct BBDebugStm __stmt_10 = {0x47eafdfc4911859b, 372, 0};
		bbOnDebugEnterStm(&__stmt_10);
		openb3d_openb3dcore_TCamera_cam_list_id=0;
		struct BBDebugStm __stmt_11 = {0x47eafdfc4911859b, 373, 0};
		bbOnDebugEnterStm(&__stmt_11);
		brl_linkedlist_ClearList((struct brl_linkedlist_TList_obj*)openb3d_openb3dcore_TPick_ent_list);
		struct BBDebugStm __stmt_12 = {0x47eafdfc4911859b, 373, 0};
		bbOnDebugEnterStm(&__stmt_12);
		openb3d_openb3dcore_TPick_ent_list_id=0;
		struct BBDebugStm __stmt_13 = {0x47eafdfc4911859b, 374, 0};
		bbOnDebugEnterStm(&__stmt_13);
		openb3d_openb3dcore_TGlobal3D_ClearCollisions_i();
		bbOnDebugLeaveScope();
	}
	struct BBDebugStm __stmt_1 = {0x47eafdfc4911859b, 377, 0};
	bbOnDebugEnterStm(&__stmt_1);
	if(bbt_brushes!=0){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x47eafdfc4911859b, 378, 0};
		bbOnDebugEnterStm(&__stmt_0);
		struct brl_linkedlist_TListEnum_obj* bbt_=(struct brl_linkedlist_TListEnum_obj*)((struct brl_linkedlist_TList_obj*)bbNullObjectTest((BBObject*)openb3d_openb3dcore_TBrush_brush_list))->clas->m_ObjectEnumerator((struct brl_linkedlist_TList_obj*)openb3d_openb3dcore_TBrush_brush_list);
		while(((struct brl_linkedlist_TListEnum_obj*)bbNullObjectTest((BBObject*)bbt_))->clas->m_HasNext((struct brl_linkedlist_TListEnum_obj*)bbt_)!=0){
			struct openb3d_openb3dcore_TBrush_obj* bbt_brush=(struct openb3d_openb3dcore_TBrush_obj*)((struct openb3d_openb3dcore_TBrush_obj*)&bbNullObject);
			struct BBDebugScope_1 __scope = {
				BBDEBUGSCOPE_LOCALBLOCK,
				0,
				{
					{
						BBDEBUGDECL_LOCAL,
						"brush",
						":TBrush",
						.var_address=&bbt_brush
					},
					{
						BBDEBUGDECL_END
					}
				}
			};
			bbOnDebugEnterScope((BBDebugScope *)&__scope);
			bbt_brush=(struct openb3d_openb3dcore_TBrush_obj*)((struct openb3d_openb3dcore_TBrush_obj*)bbObjectDowncast((BBOBJECT)((struct brl_linkedlist_TListEnum_obj*)bbNullObjectTest((BBObject*)bbt_))->clas->m_NextObject((struct brl_linkedlist_TListEnum_obj*)bbt_),(BBClass*)&openb3d_openb3dcore_TBrush));
			if(((BBOBJECT)bbt_brush)==&bbNullObject){
				bbOnDebugLeaveScope();
				continue;
			}
			struct BBDebugStm __stmt_0 = {0x47eafdfc4911859b, 379, 0};
			bbOnDebugEnterStm(&__stmt_0);
			((struct openb3d_openb3dcore_TBrush_obj*)bbNullObjectTest((BBObject*)bbt_brush))->clas->m_FreeBrush((struct openb3d_openb3dcore_TBrush_obj*)bbt_brush);
			bbOnDebugLeaveScope();
		}
		struct BBDebugStm __stmt_1 = {0x47eafdfc4911859b, 381, 0};
		bbOnDebugEnterStm(&__stmt_1);
		brl_linkedlist_ClearList((struct brl_linkedlist_TList_obj*)openb3d_openb3dcore_TBrush_brush_list);
		struct BBDebugStm __stmt_2 = {0x47eafdfc4911859b, 381, 0};
		bbOnDebugEnterStm(&__stmt_2);
		openb3d_openb3dcore_TBrush_brush_list_id=0;
		bbOnDebugLeaveScope();
	}
	struct BBDebugStm __stmt_2 = {0x47eafdfc4911859b, 384, 0};
	bbOnDebugEnterStm(&__stmt_2);
	if(bbt_textures!=0){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x47eafdfc4911859b, 385, 0};
		bbOnDebugEnterStm(&__stmt_0);
		struct brl_linkedlist_TListEnum_obj* bbt_2=(struct brl_linkedlist_TListEnum_obj*)((struct brl_linkedlist_TList_obj*)bbNullObjectTest((BBObject*)openb3d_openb3dcore_TTexture_tex_list))->clas->m_ObjectEnumerator((struct brl_linkedlist_TList_obj*)openb3d_openb3dcore_TTexture_tex_list);
		while(((struct brl_linkedlist_TListEnum_obj*)bbNullObjectTest((BBObject*)bbt_2))->clas->m_HasNext((struct brl_linkedlist_TListEnum_obj*)bbt_2)!=0){
			struct openb3d_openb3dcore_TTexture_obj* bbt_tex=(struct openb3d_openb3dcore_TTexture_obj*)((struct openb3d_openb3dcore_TTexture_obj*)&bbNullObject);
			struct BBDebugScope_1 __scope = {
				BBDEBUGSCOPE_LOCALBLOCK,
				0,
				{
					{
						BBDEBUGDECL_LOCAL,
						"tex",
						":TTexture",
						.var_address=&bbt_tex
					},
					{
						BBDEBUGDECL_END
					}
				}
			};
			bbOnDebugEnterScope((BBDebugScope *)&__scope);
			bbt_tex=(struct openb3d_openb3dcore_TTexture_obj*)((struct openb3d_openb3dcore_TTexture_obj*)bbObjectDowncast((BBOBJECT)((struct brl_linkedlist_TListEnum_obj*)bbNullObjectTest((BBObject*)bbt_2))->clas->m_NextObject((struct brl_linkedlist_TListEnum_obj*)bbt_2),(BBClass*)&openb3d_openb3dcore_TTexture));
			if(((BBOBJECT)bbt_tex)==&bbNullObject){
				bbOnDebugLeaveScope();
				continue;
			}
			struct BBDebugStm __stmt_0 = {0x47eafdfc4911859b, 386, 0};
			bbOnDebugEnterStm(&__stmt_0);
			((struct openb3d_openb3dcore_TTexture_obj*)bbNullObjectTest((BBObject*)bbt_tex))->clas->m_FreeTexture((struct openb3d_openb3dcore_TTexture_obj*)bbt_tex);
			bbOnDebugLeaveScope();
		}
		struct BBDebugStm __stmt_1 = {0x47eafdfc4911859b, 388, 0};
		bbOnDebugEnterStm(&__stmt_1);
		brl_linkedlist_ClearList((struct brl_linkedlist_TList_obj*)openb3d_openb3dcore_TTexture_tex_list);
		struct BBDebugStm __stmt_2 = {0x47eafdfc4911859b, 388, 0};
		bbOnDebugEnterStm(&__stmt_2);
		openb3d_openb3dcore_TTexture_tex_list_id=0;
		struct BBDebugStm __stmt_3 = {0x47eafdfc4911859b, 389, 0};
		bbOnDebugEnterStm(&__stmt_3);
		brl_linkedlist_ClearList((struct brl_linkedlist_TList_obj*)openb3d_openb3dcore_TTexture_tex_list_all);
		struct BBDebugStm __stmt_4 = {0x47eafdfc4911859b, 389, 0};
		bbOnDebugEnterStm(&__stmt_4);
		openb3d_openb3dcore_TTexture_tex_list_all_id=0;
		bbOnDebugLeaveScope();
	}
	bbOnDebugLeaveScope();
	return 0;
}
BBINT openb3d_openb3dcore_TGlobal3D_FreeAllEntities_i_vi(BBINT* bbt_count){
	struct BBDebugScope_1 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"FreeAllEntities",
		{
			{
				BBDEBUGDECL_VARPARAM,
				"count",
				"i",
				.var_address=&bbt_count
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x47eafdfc4911859b, 398, 0};
	bbOnDebugEnterStm(&__stmt_0);
	struct brl_linkedlist_TListEnum_obj* bbt_=(struct brl_linkedlist_TListEnum_obj*)((struct brl_linkedlist_TList_obj*)bbNullObjectTest((BBObject*)openb3d_openb3dcore_TEntity_entity_list))->clas->m_ObjectEnumerator((struct brl_linkedlist_TList_obj*)openb3d_openb3dcore_TEntity_entity_list);
	while(((struct brl_linkedlist_TListEnum_obj*)bbNullObjectTest((BBObject*)bbt_))->clas->m_HasNext((struct brl_linkedlist_TListEnum_obj*)bbt_)!=0){
		struct openb3d_openb3dcore_TEntity_obj* bbt_ent=(struct openb3d_openb3dcore_TEntity_obj*)((struct openb3d_openb3dcore_TEntity_obj*)&bbNullObject);
		struct BBDebugScope_1 __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_LOCAL,
					"ent",
					":TEntity",
					.var_address=&bbt_ent
				},
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		bbt_ent=(struct openb3d_openb3dcore_TEntity_obj*)((struct openb3d_openb3dcore_TEntity_obj*)bbObjectDowncast((BBOBJECT)((struct brl_linkedlist_TListEnum_obj*)bbNullObjectTest((BBObject*)bbt_))->clas->m_NextObject((struct brl_linkedlist_TListEnum_obj*)bbt_),(BBClass*)&openb3d_openb3dcore_TEntity));
		if(((BBOBJECT)bbt_ent)==&bbNullObject){
			bbOnDebugLeaveScope();
			continue;
		}
		struct BBDebugStm __stmt_0 = {0x47eafdfc4911859b, 399, 0};
		bbOnDebugEnterStm(&__stmt_0);
		if(((BBOBJECT)((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)bbt_ent))->_openb3d_openb3dcore_tentity_parent )==&bbNullObject){
			struct BBDebugScope __scope = {
				BBDEBUGSCOPE_LOCALBLOCK,
				0,
				{
					{
						BBDEBUGDECL_END
					}
				}
			};
			bbOnDebugEnterScope((BBDebugScope *)&__scope);
			struct BBDebugStm __stmt_0 = {0x47eafdfc4911859b, 400, 0};
			bbOnDebugEnterStm(&__stmt_0);
			((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)bbt_ent))->clas->m_FreeEntity((struct openb3d_openb3dcore_TEntity_obj*)bbt_ent);
			bbOnDebugLeaveScope();
		}
		bbOnDebugLeaveScope();
	}
	struct BBDebugStm __stmt_1 = {0x47eafdfc4911859b, 403, 0};
	bbOnDebugEnterStm(&__stmt_1);
	*bbt_count-=1;
	struct BBDebugStm __stmt_2 = {0x47eafdfc4911859b, 404, 0};
	bbOnDebugEnterStm(&__stmt_2);
	if(*bbt_count>=0){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x47eafdfc4911859b, 404, 0};
		bbOnDebugEnterStm(&__stmt_0);
		openb3d_openb3dcore_TGlobal3D_FreeAllEntities_i_vi(bbt_count);
		bbOnDebugLeaveScope();
	}
	bbOnDebugLeaveScope();
	return 0;
}
BBINT openb3d_openb3dcore_TGlobal3D_UpdateWorld_i_f(BBFLOAT bbt_anim_speed){
	struct BBDebugScope_1 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"UpdateWorld",
		{
			{
				BBDEBUGDECL_LOCAL,
				"anim_speed",
				"f",
				.var_address=&bbt_anim_speed
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x47eafdfc4911859b, 410, 0};
	bbOnDebugEnterStm(&__stmt_0);
	UpdateWorld_(bbt_anim_speed);
	struct BBDebugStm __stmt_1 = {0x47eafdfc4911859b, 412, 0};
	bbOnDebugEnterStm(&__stmt_1);
	if(openb3d_openb3dcore_TGlobal3D_pivots_exist==0){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x47eafdfc4911859b, 413, 0};
		bbOnDebugEnterStm(&__stmt_0);
		openb3d_openb3dcore_TGlobal3D_pivots_exist=1;
		struct BBDebugStm __stmt_1 = {0x47eafdfc4911859b, 414, 0};
		bbOnDebugEnterStm(&__stmt_1);
		openb3d_openb3dcore_TGlobal3D_piv1o=(struct openb3d_openb3dcore_TPivot_obj*)openb3d_openb3dcore_TPivot_CreateObject_TTPivot_pb(StaticPivot_(9,8));
		struct BBDebugStm __stmt_2 = {0x47eafdfc4911859b, 415, 0};
		bbOnDebugEnterStm(&__stmt_2);
		openb3d_openb3dcore_TGlobal3D_piv1=(struct openb3d_openb3dcore_TPivot_obj*)openb3d_openb3dcore_TPivot_CreateObject_TTPivot_pb(StaticPivot_(9,9));
		struct BBDebugStm __stmt_3 = {0x47eafdfc4911859b, 416, 0};
		bbOnDebugEnterStm(&__stmt_3);
		openb3d_openb3dcore_TGlobal3D_piv11=(struct openb3d_openb3dcore_TPivot_obj*)openb3d_openb3dcore_TPivot_CreateObject_TTPivot_pb(StaticPivot_(9,10));
		struct BBDebugStm __stmt_4 = {0x47eafdfc4911859b, 417, 0};
		bbOnDebugEnterStm(&__stmt_4);
		openb3d_openb3dcore_TGlobal3D_piv111=(struct openb3d_openb3dcore_TPivot_obj*)openb3d_openb3dcore_TPivot_CreateObject_TTPivot_pb(StaticPivot_(9,11));
		struct BBDebugStm __stmt_5 = {0x47eafdfc4911859b, 418, 0};
		bbOnDebugEnterStm(&__stmt_5);
		openb3d_openb3dcore_TGlobal3D_piv2o=(struct openb3d_openb3dcore_TPivot_obj*)openb3d_openb3dcore_TPivot_CreateObject_TTPivot_pb(StaticPivot_(9,12));
		struct BBDebugStm __stmt_6 = {0x47eafdfc4911859b, 419, 0};
		bbOnDebugEnterStm(&__stmt_6);
		openb3d_openb3dcore_TGlobal3D_piv2=(struct openb3d_openb3dcore_TPivot_obj*)openb3d_openb3dcore_TPivot_CreateObject_TTPivot_pb(StaticPivot_(9,13));
		bbOnDebugLeaveScope();
	}
	bbOnDebugLeaveScope();
	return 0;
}
BBINT openb3d_openb3dcore_TGlobal3D_RenderWorld_i(){
	struct BBDebugScope __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"RenderWorld",
		{
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x47eafdfc4911859b, 426, 0};
	bbOnDebugEnterStm(&__stmt_0);
	RenderWorld_();
	struct BBDebugStm __stmt_1 = {0x47eafdfc4911859b, 428, 0};
	bbOnDebugEnterStm(&__stmt_1);
	struct brl_linkedlist_TListEnum_obj* bbt_=(struct brl_linkedlist_TListEnum_obj*)((struct brl_linkedlist_TList_obj*)bbNullObjectTest((BBObject*)openb3d_openb3dcore_TMesh_plane_list))->clas->m_ObjectEnumerator((struct brl_linkedlist_TList_obj*)openb3d_openb3dcore_TMesh_plane_list);
	while(((struct brl_linkedlist_TListEnum_obj*)bbNullObjectTest((BBObject*)bbt_))->clas->m_HasNext((struct brl_linkedlist_TListEnum_obj*)bbt_)!=0){
		struct openb3d_openb3dcore_TMesh_obj* bbt_mesh=(struct openb3d_openb3dcore_TMesh_obj*)((struct openb3d_openb3dcore_TMesh_obj*)&bbNullObject);
		struct BBDebugScope_1 __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_LOCAL,
					"mesh",
					":TMesh",
					.var_address=&bbt_mesh
				},
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		bbt_mesh=(struct openb3d_openb3dcore_TMesh_obj*)((struct openb3d_openb3dcore_TMesh_obj*)bbObjectDowncast((BBOBJECT)((struct brl_linkedlist_TListEnum_obj*)bbNullObjectTest((BBObject*)bbt_))->clas->m_NextObject((struct brl_linkedlist_TListEnum_obj*)bbt_),(BBClass*)&openb3d_openb3dcore_TMesh));
		if(((BBOBJECT)bbt_mesh)==&bbNullObject){
			bbOnDebugLeaveScope();
			continue;
		}
		struct BBDebugStm __stmt_0 = {0x47eafdfc4911859b, 429, 0};
		bbOnDebugEnterStm(&__stmt_0);
		openb3d_openb3dcore_TMesh_UpdatePlane_i_TTMesh((struct openb3d_openb3dcore_TMesh_obj*)bbt_mesh);
		bbOnDebugLeaveScope();
	}
	bbOnDebugLeaveScope();
	return 0;
}
BBINT openb3d_openb3dcore_TGlobal3D_AntiAlias_i_i(BBINT bbt_samples){
	struct BBDebugScope_1 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"AntiAlias",
		{
			{
				BBDEBUGDECL_LOCAL,
				"samples",
				"i",
				.var_address=&bbt_samples
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x47eafdfc4911859b, 436, 0};
	bbOnDebugEnterStm(&__stmt_0);
	AntiAlias_(bbt_samples);
	bbOnDebugLeaveScope();
	return 0;
}
BBINT openb3d_openb3dcore_TGlobal3D_MSAntiAlias_i_i(BBINT bbt_multisample){
	struct BBDebugScope_1 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"MSAntiAlias",
		{
			{
				BBDEBUGDECL_LOCAL,
				"multisample",
				"i",
				.var_address=&bbt_multisample
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x47eafdfc4911859b, 442, 0};
	bbOnDebugEnterStm(&__stmt_0);
	MSAntiAlias_(bbt_multisample);
	bbOnDebugLeaveScope();
	return 0;
}
BBINT openb3d_openb3dcore_TGlobal3D_RenderCamera_i_TTCamera(struct openb3d_openb3dcore_TCamera_obj* bbt_cam){
	struct BBDebugScope_1 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"RenderCamera",
		{
			{
				BBDEBUGDECL_LOCAL,
				"cam",
				":TCamera",
				.var_address=&bbt_cam
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x47eafdfc4911859b, 451, 0};
	bbOnDebugEnterStm(&__stmt_0);
	CameraRender_(openb3d_openb3dcore_TEntity_GetInstance_pb_TTEntity((struct openb3d_openb3dcore_TEntity_obj*)((struct openb3d_openb3dcore_TEntity_obj*)bbObjectDowncast((BBOBJECT)bbt_cam,(BBClass*)&openb3d_openb3dcore_TEntity))));
	bbOnDebugLeaveScope();
	return 0;
}
BBINT openb3d_openb3dcore_TGlobal3D_UpdateEntityAnim_i_TTMesh(struct openb3d_openb3dcore_TMesh_obj* bbt_mesh){
	struct BBDebugScope_1 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"UpdateEntityAnim",
		{
			{
				BBDEBUGDECL_LOCAL,
				"mesh",
				":TMesh",
				.var_address=&bbt_mesh
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x47eafdfc4911859b, 458, 0};
	bbOnDebugEnterStm(&__stmt_0);
	UpdateEntityAnim_(openb3d_openb3dcore_TEntity_GetInstance_pb_TTEntity((struct openb3d_openb3dcore_TEntity_obj*)((struct openb3d_openb3dcore_TEntity_obj*)bbObjectDowncast((BBOBJECT)bbt_mesh,(BBClass*)&openb3d_openb3dcore_TEntity))));
	bbOnDebugLeaveScope();
	return 0;
}
BBINT* openb3d_openb3dcore_TGlobal3D_width;
BBINT* openb3d_openb3dcore_TGlobal3D_height;
BBINT* openb3d_openb3dcore_TGlobal3D_alpha_enable;
BBINT* openb3d_openb3dcore_TGlobal3D_blend_mode;
struct openb3d_openb3dcore_TCamera_obj* openb3d_openb3dcore_TGlobal3D_camera_in_use;
BBINT* openb3d_openb3dcore_TGlobal3D_fog_enabled;
struct openb3d_openb3dcore_TPivot_obj* openb3d_openb3dcore_TGlobal3D_root_ent;
BBINT openb3d_openb3dcore_TGlobal3D_Log_New;
BBINT openb3d_openb3dcore_TGlobal3D_pivots_exist;
struct openb3d_openb3dcore_TPivot_obj* openb3d_openb3dcore_TGlobal3D_piv1;
struct openb3d_openb3dcore_TPivot_obj* openb3d_openb3dcore_TGlobal3D_piv11;
struct openb3d_openb3dcore_TPivot_obj* openb3d_openb3dcore_TGlobal3D_piv111;
struct openb3d_openb3dcore_TPivot_obj* openb3d_openb3dcore_TGlobal3D_piv2;
struct openb3d_openb3dcore_TPivot_obj* openb3d_openb3dcore_TGlobal3D_piv1o;
struct openb3d_openb3dcore_TPivot_obj* openb3d_openb3dcore_TGlobal3D_piv2o;
BBINT openb3d_openb3dcore_TGlobal3D_Texture_Loader;
BBARRAY openb3d_openb3dcore_TGlobal3D_Cubemap_Frame;
BBARRAY openb3d_openb3dcore_TGlobal3D_Cubemap_Face;
BBINT openb3d_openb3dcore_TGlobal3D_Flip_Cubemap;
BBINT openb3d_openb3dcore_TGlobal3D_Log_MD2;
struct openb3d_openb3dcore_TMatPtr_obj* openb3d_openb3dcore_TGlobal3D_Matrix_MD2;
BBINT openb3d_openb3dcore_TGlobal3D_Mesh_Loader;
BBINT openb3d_openb3dcore_TGlobal3D_Mesh_Flags;
BBINT openb3d_openb3dcore_TGlobal3D_Log_3DS;
BBINT openb3d_openb3dcore_TGlobal3D_Log_B3D;
BBINT openb3d_openb3dcore_TGlobal3D_Log_Assimp;
BBINT openb3d_openb3dcore_TGlobal3D_Log_OBJ;
BBINT openb3d_openb3dcore_TGlobal3D_Mesh_Transform;
struct openb3d_openb3dcore_TMatPtr_obj* openb3d_openb3dcore_TGlobal3D_Matrix_3DS;
BBINT openb3d_openb3dcore_TGlobal3D_Texture_Flags;
BBFLOAT openb3d_openb3dcore_TGlobal3D_GL_Version;
BBINT* openb3d_openb3dcore_TGlobal3D_Shadows_enabled;
struct openb3d_openb3dcore_TShader_obj* openb3d_openb3dcore_TGlobal3D_ambient_shader;
BBINT* openb3d_openb3dcore_TGlobal3D_Mode;
BBINT* openb3d_openb3dcore_TGlobal3D_depth;
BBINT* openb3d_openb3dcore_TGlobal3D_rate;
BBFLOAT* openb3d_openb3dcore_TGlobal3D_ambient_red;
BBFLOAT* openb3d_openb3dcore_TGlobal3D_ambient_green;
BBFLOAT* openb3d_openb3dcore_TGlobal3D_ambient_blue;
BBINT* openb3d_openb3dcore_TGlobal3D_vbo_enabled;
BBINT* openb3d_openb3dcore_TGlobal3D_vbo_min_tris;
BBFLOAT* openb3d_openb3dcore_TGlobal3D_anim_speed;
BBINT* openb3d_openb3dcore_TGlobal3D_fx1;
BBINT* openb3d_openb3dcore_TGlobal3D_fx2;
struct brl_graphics_TGraphics_obj* openb3d_openb3dcore_TGlobal3D_gfx_obj;
BBBYTE openb3d_openb3dcore_TGlobal3D_txt_red;
BBBYTE openb3d_openb3dcore_TGlobal3D_txt_green;
BBBYTE openb3d_openb3dcore_TGlobal3D_txt_blue;
BBINT openb3d_openb3dcore_TGlobal3D_Log_Del;
BBINT openb3d_openb3dcore_TGlobal3D_Loader_3DS2;
struct BBDebugScope_70 openb3d_openb3dcore_TGlobal3D_scope ={
	BBDEBUGSCOPE_USERTYPE,
	"TGlobal3D",
	{
		{
			BBDEBUGDECL_GLOBAL,
			"width",
			"*i",
			.var_address=(void*)&openb3d_openb3dcore_TGlobal3D_width
		},
		{
			BBDEBUGDECL_GLOBAL,
			"height",
			"*i",
			.var_address=(void*)&openb3d_openb3dcore_TGlobal3D_height
		},
		{
			BBDEBUGDECL_GLOBAL,
			"Mode",
			"*i",
			.var_address=(void*)&openb3d_openb3dcore_TGlobal3D_Mode
		},
		{
			BBDEBUGDECL_GLOBAL,
			"depth",
			"*i",
			.var_address=(void*)&openb3d_openb3dcore_TGlobal3D_depth
		},
		{
			BBDEBUGDECL_GLOBAL,
			"rate",
			"*i",
			.var_address=(void*)&openb3d_openb3dcore_TGlobal3D_rate
		},
		{
			BBDEBUGDECL_GLOBAL,
			"ambient_red",
			"*f",
			.var_address=(void*)&openb3d_openb3dcore_TGlobal3D_ambient_red
		},
		{
			BBDEBUGDECL_GLOBAL,
			"ambient_green",
			"*f",
			.var_address=(void*)&openb3d_openb3dcore_TGlobal3D_ambient_green
		},
		{
			BBDEBUGDECL_GLOBAL,
			"ambient_blue",
			"*f",
			.var_address=(void*)&openb3d_openb3dcore_TGlobal3D_ambient_blue
		},
		{
			BBDEBUGDECL_GLOBAL,
			"vbo_enabled",
			"*i",
			.var_address=(void*)&openb3d_openb3dcore_TGlobal3D_vbo_enabled
		},
		{
			BBDEBUGDECL_GLOBAL,
			"vbo_min_tris",
			"*i",
			.var_address=(void*)&openb3d_openb3dcore_TGlobal3D_vbo_min_tris
		},
		{
			BBDEBUGDECL_GLOBAL,
			"Shadows_enabled",
			"*i",
			.var_address=(void*)&openb3d_openb3dcore_TGlobal3D_Shadows_enabled
		},
		{
			BBDEBUGDECL_GLOBAL,
			"anim_speed",
			"*f",
			.var_address=(void*)&openb3d_openb3dcore_TGlobal3D_anim_speed
		},
		{
			BBDEBUGDECL_GLOBAL,
			"fog_enabled",
			"*i",
			.var_address=(void*)&openb3d_openb3dcore_TGlobal3D_fog_enabled
		},
		{
			BBDEBUGDECL_GLOBAL,
			"root_ent",
			":TPivot",
			.var_address=(void*)&openb3d_openb3dcore_TGlobal3D_root_ent
		},
		{
			BBDEBUGDECL_GLOBAL,
			"camera_in_use",
			":TCamera",
			.var_address=(void*)&openb3d_openb3dcore_TGlobal3D_camera_in_use
		},
		{
			BBDEBUGDECL_GLOBAL,
			"ambient_shader",
			":TShader",
			.var_address=(void*)&openb3d_openb3dcore_TGlobal3D_ambient_shader
		},
		{
			BBDEBUGDECL_GLOBAL,
			"alpha_enable",
			"*i",
			.var_address=(void*)&openb3d_openb3dcore_TGlobal3D_alpha_enable
		},
		{
			BBDEBUGDECL_GLOBAL,
			"blend_mode",
			"*i",
			.var_address=(void*)&openb3d_openb3dcore_TGlobal3D_blend_mode
		},
		{
			BBDEBUGDECL_GLOBAL,
			"fx1",
			"*i",
			.var_address=(void*)&openb3d_openb3dcore_TGlobal3D_fx1
		},
		{
			BBDEBUGDECL_GLOBAL,
			"fx2",
			"*i",
			.var_address=(void*)&openb3d_openb3dcore_TGlobal3D_fx2
		},
		{
			BBDEBUGDECL_GLOBAL,
			"pivots_exist",
			"i",
			.var_address=(void*)&openb3d_openb3dcore_TGlobal3D_pivots_exist
		},
		{
			BBDEBUGDECL_GLOBAL,
			"piv1o",
			":TPivot",
			.var_address=(void*)&openb3d_openb3dcore_TGlobal3D_piv1o
		},
		{
			BBDEBUGDECL_GLOBAL,
			"piv1",
			":TPivot",
			.var_address=(void*)&openb3d_openb3dcore_TGlobal3D_piv1
		},
		{
			BBDEBUGDECL_GLOBAL,
			"piv11",
			":TPivot",
			.var_address=(void*)&openb3d_openb3dcore_TGlobal3D_piv11
		},
		{
			BBDEBUGDECL_GLOBAL,
			"piv111",
			":TPivot",
			.var_address=(void*)&openb3d_openb3dcore_TGlobal3D_piv111
		},
		{
			BBDEBUGDECL_GLOBAL,
			"piv2o",
			":TPivot",
			.var_address=(void*)&openb3d_openb3dcore_TGlobal3D_piv2o
		},
		{
			BBDEBUGDECL_GLOBAL,
			"piv2",
			":TPivot",
			.var_address=(void*)&openb3d_openb3dcore_TGlobal3D_piv2
		},
		{
			BBDEBUGDECL_GLOBAL,
			"gfx_obj",
			":TGraphics",
			.var_address=(void*)&openb3d_openb3dcore_TGlobal3D_gfx_obj
		},
		{
			BBDEBUGDECL_GLOBAL,
			"txt_red",
			"b",
			.var_address=(void*)&openb3d_openb3dcore_TGlobal3D_txt_red
		},
		{
			BBDEBUGDECL_GLOBAL,
			"txt_green",
			"b",
			.var_address=(void*)&openb3d_openb3dcore_TGlobal3D_txt_green
		},
		{
			BBDEBUGDECL_GLOBAL,
			"txt_blue",
			"b",
			.var_address=(void*)&openb3d_openb3dcore_TGlobal3D_txt_blue
		},
		{
			BBDEBUGDECL_GLOBAL,
			"Log_New",
			"i",
			.var_address=(void*)&openb3d_openb3dcore_TGlobal3D_Log_New
		},
		{
			BBDEBUGDECL_GLOBAL,
			"Log_Del",
			"i",
			.var_address=(void*)&openb3d_openb3dcore_TGlobal3D_Log_Del
		},
		{
			BBDEBUGDECL_GLOBAL,
			"Log_3DS",
			"i",
			.var_address=(void*)&openb3d_openb3dcore_TGlobal3D_Log_3DS
		},
		{
			BBDEBUGDECL_GLOBAL,
			"Log_B3D",
			"i",
			.var_address=(void*)&openb3d_openb3dcore_TGlobal3D_Log_B3D
		},
		{
			BBDEBUGDECL_GLOBAL,
			"Log_MD2",
			"i",
			.var_address=(void*)&openb3d_openb3dcore_TGlobal3D_Log_MD2
		},
		{
			BBDEBUGDECL_GLOBAL,
			"Log_Assimp",
			"i",
			.var_address=(void*)&openb3d_openb3dcore_TGlobal3D_Log_Assimp
		},
		{
			BBDEBUGDECL_GLOBAL,
			"Log_OBJ",
			"i",
			.var_address=(void*)&openb3d_openb3dcore_TGlobal3D_Log_OBJ
		},
		{
			BBDEBUGDECL_GLOBAL,
			"GL_Version",
			"f",
			.var_address=(void*)&openb3d_openb3dcore_TGlobal3D_GL_Version
		},
		{
			BBDEBUGDECL_GLOBAL,
			"Texture_Loader",
			"i",
			.var_address=(void*)&openb3d_openb3dcore_TGlobal3D_Texture_Loader
		},
		{
			BBDEBUGDECL_GLOBAL,
			"Mesh_Loader",
			"i",
			.var_address=(void*)&openb3d_openb3dcore_TGlobal3D_Mesh_Loader
		},
		{
			BBDEBUGDECL_GLOBAL,
			"Mesh_Flags",
			"i",
			.var_address=(void*)&openb3d_openb3dcore_TGlobal3D_Mesh_Flags
		},
		{
			BBDEBUGDECL_GLOBAL,
			"Mesh_Transform",
			"i",
			.var_address=(void*)&openb3d_openb3dcore_TGlobal3D_Mesh_Transform
		},
		{
			BBDEBUGDECL_GLOBAL,
			"Loader_3DS2",
			"i",
			.var_address=(void*)&openb3d_openb3dcore_TGlobal3D_Loader_3DS2
		},
		{
			BBDEBUGDECL_GLOBAL,
			"Cubemap_Frame",
			"[]i",
			.var_address=(void*)&openb3d_openb3dcore_TGlobal3D_Cubemap_Frame
		},
		{
			BBDEBUGDECL_GLOBAL,
			"Cubemap_Face",
			"[]i",
			.var_address=(void*)&openb3d_openb3dcore_TGlobal3D_Cubemap_Face
		},
		{
			BBDEBUGDECL_GLOBAL,
			"Flip_Cubemap",
			"i",
			.var_address=(void*)&openb3d_openb3dcore_TGlobal3D_Flip_Cubemap
		},
		{
			BBDEBUGDECL_GLOBAL,
			"Texture_Flags",
			"i",
			.var_address=(void*)&openb3d_openb3dcore_TGlobal3D_Texture_Flags
		},
		{
			BBDEBUGDECL_GLOBAL,
			"Matrix_3DS",
			":TMatPtr",
			.var_address=(void*)&openb3d_openb3dcore_TGlobal3D_Matrix_3DS
		},
		{
			BBDEBUGDECL_GLOBAL,
			"Matrix_MD2",
			":TMatPtr",
			.var_address=(void*)&openb3d_openb3dcore_TGlobal3D_Matrix_MD2
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"New",
			"()i",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_TGlobal3D_New
		},
		{
			BBDEBUGDECL_TYPEFUNCTION,
			"InitGlobals",
			"()i",
			.func_ptr=(BBFuncPtr)&openb3d_openb3dcore_TGlobal3D_InitGlobals_i
		},
		{
			BBDEBUGDECL_TYPEFUNCTION,
			"DebugGlobals",
			"(i,i)i",
			.func_ptr=(BBFuncPtr)&openb3d_openb3dcore_TGlobal3D_DebugGlobals_i_ii
		},
		{
			BBDEBUGDECL_TYPEFUNCTION,
			"CopyList",
			"(:TList)i",
			.func_ptr=(BBFuncPtr)&openb3d_openb3dcore_TGlobal3D_CopyList_i_TTList
		},
		{
			BBDEBUGDECL_TYPEFUNCTION,
			"CheckFramebufferStatus",
			"(i)i",
			.func_ptr=(BBFuncPtr)&openb3d_openb3dcore_TGlobal3D_CheckFramebufferStatus_i_i
		},
		{
			BBDEBUGDECL_TYPEFUNCTION,
			"GraphicsInit",
			"()i",
			.func_ptr=(BBFuncPtr)&openb3d_openb3dcore_TGlobal3D_GraphicsInit_i
		},
		{
			BBDEBUGDECL_TYPEFUNCTION,
			"EnableStates",
			"()i",
			.func_ptr=(BBFuncPtr)&openb3d_openb3dcore_TGlobal3D_EnableStates_i
		},
		{
			BBDEBUGDECL_TYPEFUNCTION,
			"Wireframe",
			"(i)i",
			.func_ptr=(BBFuncPtr)&openb3d_openb3dcore_TGlobal3D_Wireframe_i_i
		},
		{
			BBDEBUGDECL_TYPEFUNCTION,
			"AmbientLight",
			"(f,f,f)i",
			.func_ptr=(BBFuncPtr)&openb3d_openb3dcore_TGlobal3D_AmbientLight_i_fff
		},
		{
			BBDEBUGDECL_TYPEFUNCTION,
			"FreeCollisionPivots",
			"()i",
			.func_ptr=(BBFuncPtr)&openb3d_openb3dcore_TGlobal3D_FreeCollisionPivots_i
		},
		{
			BBDEBUGDECL_TYPEFUNCTION,
			"ClearCollisions",
			"()i",
			.func_ptr=(BBFuncPtr)&openb3d_openb3dcore_TGlobal3D_ClearCollisions_i
		},
		{
			BBDEBUGDECL_TYPEFUNCTION,
			"Collisions",
			"(i,i,i,i)i",
			.func_ptr=(BBFuncPtr)&openb3d_openb3dcore_TGlobal3D_Collisions_i_iiii
		},
		{
			BBDEBUGDECL_TYPEFUNCTION,
			"ClearWorld",
			"(i,i,i)i",
			.func_ptr=(BBFuncPtr)&openb3d_openb3dcore_TGlobal3D_ClearWorld_i_iii
		},
		{
			BBDEBUGDECL_TYPEFUNCTION,
			"FreeAllEntities",
			"(i)i",
			.func_ptr=(BBFuncPtr)&openb3d_openb3dcore_TGlobal3D_FreeAllEntities_i_vi
		},
		{
			BBDEBUGDECL_TYPEFUNCTION,
			"UpdateWorld",
			"(f)i",
			.func_ptr=(BBFuncPtr)&openb3d_openb3dcore_TGlobal3D_UpdateWorld_i_f
		},
		{
			BBDEBUGDECL_TYPEFUNCTION,
			"RenderWorld",
			"()i",
			.func_ptr=(BBFuncPtr)&openb3d_openb3dcore_TGlobal3D_RenderWorld_i
		},
		{
			BBDEBUGDECL_TYPEFUNCTION,
			"AntiAlias",
			"(i)i",
			.func_ptr=(BBFuncPtr)&openb3d_openb3dcore_TGlobal3D_AntiAlias_i_i
		},
		{
			BBDEBUGDECL_TYPEFUNCTION,
			"MSAntiAlias",
			"(i)i",
			.func_ptr=(BBFuncPtr)&openb3d_openb3dcore_TGlobal3D_MSAntiAlias_i_i
		},
		{
			BBDEBUGDECL_TYPEFUNCTION,
			"RenderCamera",
			"(:TCamera)i",
			.func_ptr=(BBFuncPtr)&openb3d_openb3dcore_TGlobal3D_RenderCamera_i_TTCamera
		},
		{
			BBDEBUGDECL_TYPEFUNCTION,
			"UpdateEntityAnim",
			"(:TMesh)i",
			.func_ptr=(BBFuncPtr)&openb3d_openb3dcore_TGlobal3D_UpdateEntityAnim_i_TTMesh
		},
		{
			BBDEBUGDECL_END
		}
	}
};
struct BBClass_openb3d_openb3dcore_TGlobal3D openb3d_openb3dcore_TGlobal3D={
	&bbObjectClass,
	bbObjectFree,
	(BBDebugScope*)&openb3d_openb3dcore_TGlobal3D_scope,
	sizeof(struct openb3d_openb3dcore_TGlobal3D_obj),
	(void (*)(BBOBJECT))_openb3d_openb3dcore_TGlobal3D_New,
	bbObjectDtor,
	bbObjectToString,
	bbObjectCompare,
	bbObjectSendMessage,
	0,
	0,
	0
	,0
	,sizeof(void*)
	,openb3d_openb3dcore_TGlobal3D_InitGlobals_i
	,openb3d_openb3dcore_TGlobal3D_DebugGlobals_i_ii
	,openb3d_openb3dcore_TGlobal3D_CopyList_i_TTList
	,openb3d_openb3dcore_TGlobal3D_CheckFramebufferStatus_i_i
	,openb3d_openb3dcore_TGlobal3D_GraphicsInit_i
	,openb3d_openb3dcore_TGlobal3D_EnableStates_i
	,openb3d_openb3dcore_TGlobal3D_Wireframe_i_i
	,openb3d_openb3dcore_TGlobal3D_AmbientLight_i_fff
	,openb3d_openb3dcore_TGlobal3D_FreeCollisionPivots_i
	,openb3d_openb3dcore_TGlobal3D_ClearCollisions_i
	,openb3d_openb3dcore_TGlobal3D_Collisions_i_iiii
	,openb3d_openb3dcore_TGlobal3D_ClearWorld_i_iii
	,openb3d_openb3dcore_TGlobal3D_FreeAllEntities_i_vi
	,openb3d_openb3dcore_TGlobal3D_UpdateWorld_i_f
	,openb3d_openb3dcore_TGlobal3D_RenderWorld_i
	,openb3d_openb3dcore_TGlobal3D_AntiAlias_i_i
	,openb3d_openb3dcore_TGlobal3D_MSAntiAlias_i_i
	,openb3d_openb3dcore_TGlobal3D_RenderCamera_i_TTCamera
	,openb3d_openb3dcore_TGlobal3D_UpdateEntityAnim_i_TTMesh
};

void _openb3d_openb3dcore_TUse_New(struct openb3d_openb3dcore_TUse_obj* o) {
	bbObjectCtor((BBOBJECT)o);
	o->clas = &openb3d_openb3dcore_TUse;
}
BBINT openb3d_openb3dcore_TUse_LibraryMeshes_i_i(BBINT bbt_flag){
	struct BBDebugScope_1 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"LibraryMeshes",
		{
			{
				BBDEBUGDECL_LOCAL,
				"flag",
				"i",
				.var_address=&bbt_flag
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x47eafdfc4911859b, 499, 0};
	bbOnDebugEnterStm(&__stmt_0);
	BBINT bbt_=bbt_flag;
	struct BBDebugStm __stmt_1 = {0x47eafdfc4911859b, 500, 0};
	bbOnDebugEnterStm(&__stmt_1);
	if(bbt_==0){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x47eafdfc4911859b, 501, 0};
		bbOnDebugEnterStm(&__stmt_0);
		openb3d_openb3dcore_TGlobal3D_Mesh_Loader=1;
		bbOnDebugLeaveScope();
	}else{
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x47eafdfc4911859b, 502, 0};
		bbOnDebugEnterStm(&__stmt_0);
		if(bbt_==1){
			struct BBDebugScope __scope = {
				BBDEBUGSCOPE_LOCALBLOCK,
				0,
				{
					{
						BBDEBUGDECL_END
					}
				}
			};
			bbOnDebugEnterScope((BBDebugScope *)&__scope);
			struct BBDebugStm __stmt_0 = {0x47eafdfc4911859b, 503, 0};
			bbOnDebugEnterStm(&__stmt_0);
			openb3d_openb3dcore_TGlobal3D_Mesh_Loader=2;
			bbOnDebugLeaveScope();
		}
		bbOnDebugLeaveScope();
	}
	bbOnDebugLeaveScope();
	return 0;
}
BBINT openb3d_openb3dcore_TUse_AssimpStreamMeshes_i_ii(BBINT bbt_flag,BBINT bbt_meshflags){
	struct BBDebugScope_2 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"AssimpStreamMeshes",
		{
			{
				BBDEBUGDECL_LOCAL,
				"flag",
				"i",
				.var_address=&bbt_flag
			},
			{
				BBDEBUGDECL_LOCAL,
				"meshflags",
				"i",
				.var_address=&bbt_meshflags
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x47eafdfc4911859b, 510, 0};
	bbOnDebugEnterStm(&__stmt_0);
	BBINT bbt_=bbt_flag;
	struct BBDebugStm __stmt_1 = {0x47eafdfc4911859b, 511, 0};
	bbOnDebugEnterStm(&__stmt_1);
	if(bbt_==0){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x47eafdfc4911859b, 512, 0};
		bbOnDebugEnterStm(&__stmt_0);
		openb3d_openb3dcore_TGlobal3D_Mesh_Loader=4;
		struct BBDebugStm __stmt_1 = {0x47eafdfc4911859b, 513, 0};
		bbOnDebugEnterStm(&__stmt_1);
		openb3d_openb3dcore_TGlobal3D_Mesh_Flags=bbt_meshflags;
		bbOnDebugLeaveScope();
	}else{
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x47eafdfc4911859b, 514, 0};
		bbOnDebugEnterStm(&__stmt_0);
		if(bbt_==1){
			struct BBDebugScope __scope = {
				BBDEBUGSCOPE_LOCALBLOCK,
				0,
				{
					{
						BBDEBUGDECL_END
					}
				}
			};
			bbOnDebugEnterScope((BBDebugScope *)&__scope);
			struct BBDebugStm __stmt_0 = {0x47eafdfc4911859b, 515, 0};
			bbOnDebugEnterStm(&__stmt_0);
			openb3d_openb3dcore_TGlobal3D_Mesh_Loader=8;
			struct BBDebugStm __stmt_1 = {0x47eafdfc4911859b, 516, 0};
			bbOnDebugEnterStm(&__stmt_1);
			openb3d_openb3dcore_TGlobal3D_Mesh_Flags=bbt_meshflags;
			bbOnDebugLeaveScope();
		}
		bbOnDebugLeaveScope();
	}
	bbOnDebugLeaveScope();
	return 0;
}
BBINT openb3d_openb3dcore_TUse_MeshDebugLog_i_i(BBINT bbt_flag){
	struct BBDebugScope_1 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"MeshDebugLog",
		{
			{
				BBDEBUGDECL_LOCAL,
				"flag",
				"i",
				.var_address=&bbt_flag
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x47eafdfc4911859b, 522, 0};
	bbOnDebugEnterStm(&__stmt_0);
	BBINT bbt_=bbt_flag;
	struct BBDebugStm __stmt_1 = {0x47eafdfc4911859b, 523, 0};
	bbOnDebugEnterStm(&__stmt_1);
	if(bbt_==0){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x47eafdfc4911859b, 524, 0};
		bbOnDebugEnterStm(&__stmt_0);
		openb3d_openb3dcore_TGlobal3D_Log_3DS=0;
		struct BBDebugStm __stmt_1 = {0x47eafdfc4911859b, 525, 0};
		bbOnDebugEnterStm(&__stmt_1);
		openb3d_openb3dcore_TGlobal3D_Log_B3D=0;
		struct BBDebugStm __stmt_2 = {0x47eafdfc4911859b, 526, 0};
		bbOnDebugEnterStm(&__stmt_2);
		openb3d_openb3dcore_TGlobal3D_Log_MD2=0;
		struct BBDebugStm __stmt_3 = {0x47eafdfc4911859b, 527, 0};
		bbOnDebugEnterStm(&__stmt_3);
		openb3d_openb3dcore_TGlobal3D_Log_Assimp=0;
		struct BBDebugStm __stmt_4 = {0x47eafdfc4911859b, 528, 0};
		bbOnDebugEnterStm(&__stmt_4);
		openb3d_openb3dcore_TGlobal3D_Log_OBJ=0;
		bbOnDebugLeaveScope();
	}else{
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x47eafdfc4911859b, 529, 0};
		bbOnDebugEnterStm(&__stmt_0);
		if(bbt_==1){
			struct BBDebugScope __scope = {
				BBDEBUGSCOPE_LOCALBLOCK,
				0,
				{
					{
						BBDEBUGDECL_END
					}
				}
			};
			bbOnDebugEnterScope((BBDebugScope *)&__scope);
			struct BBDebugStm __stmt_0 = {0x47eafdfc4911859b, 530, 0};
			bbOnDebugEnterStm(&__stmt_0);
			openb3d_openb3dcore_TGlobal3D_Log_3DS=1;
			struct BBDebugStm __stmt_1 = {0x47eafdfc4911859b, 531, 0};
			bbOnDebugEnterStm(&__stmt_1);
			openb3d_openb3dcore_TGlobal3D_Log_B3D=1;
			struct BBDebugStm __stmt_2 = {0x47eafdfc4911859b, 532, 0};
			bbOnDebugEnterStm(&__stmt_2);
			openb3d_openb3dcore_TGlobal3D_Log_MD2=1;
			struct BBDebugStm __stmt_3 = {0x47eafdfc4911859b, 533, 0};
			bbOnDebugEnterStm(&__stmt_3);
			openb3d_openb3dcore_TGlobal3D_Log_Assimp=1;
			struct BBDebugStm __stmt_4 = {0x47eafdfc4911859b, 534, 0};
			bbOnDebugEnterStm(&__stmt_4);
			openb3d_openb3dcore_TGlobal3D_Log_OBJ=1;
			bbOnDebugLeaveScope();
		}
		bbOnDebugLeaveScope();
	}
	bbOnDebugLeaveScope();
	return 0;
}
BBINT openb3d_openb3dcore_TUse_MeshTransform_i_i(BBINT bbt_flag){
	struct BBDebugScope_1 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"MeshTransform",
		{
			{
				BBDEBUGDECL_LOCAL,
				"flag",
				"i",
				.var_address=&bbt_flag
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x47eafdfc4911859b, 540, 0};
	bbOnDebugEnterStm(&__stmt_0);
	BBINT bbt_=bbt_flag;
	struct BBDebugStm __stmt_1 = {0x47eafdfc4911859b, 541, 0};
	bbOnDebugEnterStm(&__stmt_1);
	if(bbt_==0){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x47eafdfc4911859b, 542, 0};
		bbOnDebugEnterStm(&__stmt_0);
		openb3d_openb3dcore_TGlobal3D_Mesh_Transform=0;
		bbOnDebugLeaveScope();
	}else{
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x47eafdfc4911859b, 543, 0};
		bbOnDebugEnterStm(&__stmt_0);
		if(bbt_==1){
			struct BBDebugScope __scope = {
				BBDEBUGSCOPE_LOCALBLOCK,
				0,
				{
					{
						BBDEBUGDECL_END
					}
				}
			};
			bbOnDebugEnterScope((BBDebugScope *)&__scope);
			struct BBDebugStm __stmt_0 = {0x47eafdfc4911859b, 544, 0};
			bbOnDebugEnterStm(&__stmt_0);
			openb3d_openb3dcore_TGlobal3D_Mesh_Transform=1;
			bbOnDebugLeaveScope();
		}
		bbOnDebugLeaveScope();
	}
	bbOnDebugLeaveScope();
	return 0;
}
BBINT openb3d_openb3dcore_TUse_Matrix3DS_i_fffffffff(BBFLOAT bbt_xx,BBFLOAT bbt_xy,BBFLOAT bbt_xz,BBFLOAT bbt_yx,BBFLOAT bbt_yy,BBFLOAT bbt_yz,BBFLOAT bbt_zx,BBFLOAT bbt_zy,BBFLOAT bbt_zz){
	struct BBDebugScope_9 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"Matrix3DS",
		{
			{
				BBDEBUGDECL_LOCAL,
				"xx",
				"f",
				.var_address=&bbt_xx
			},
			{
				BBDEBUGDECL_LOCAL,
				"xy",
				"f",
				.var_address=&bbt_xy
			},
			{
				BBDEBUGDECL_LOCAL,
				"xz",
				"f",
				.var_address=&bbt_xz
			},
			{
				BBDEBUGDECL_LOCAL,
				"yx",
				"f",
				.var_address=&bbt_yx
			},
			{
				BBDEBUGDECL_LOCAL,
				"yy",
				"f",
				.var_address=&bbt_yy
			},
			{
				BBDEBUGDECL_LOCAL,
				"yz",
				"f",
				.var_address=&bbt_yz
			},
			{
				BBDEBUGDECL_LOCAL,
				"zx",
				"f",
				.var_address=&bbt_zx
			},
			{
				BBDEBUGDECL_LOCAL,
				"zy",
				"f",
				.var_address=&bbt_zy
			},
			{
				BBDEBUGDECL_LOCAL,
				"zz",
				"f",
				.var_address=&bbt_zz
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x47eafdfc4911859b, 551, 0};
	bbOnDebugEnterStm(&__stmt_0);
	((struct openb3d_openb3dcore_TMatPtr_obj*)bbNullObjectTest((BBObject*)openb3d_openb3dcore_TGlobal3D_Matrix_3DS))->clas->m_SetIdentity_fffffffff((struct openb3d_openb3dcore_TMatPtr_obj*)openb3d_openb3dcore_TGlobal3D_Matrix_3DS,bbt_xx,bbt_xy,bbt_xz,bbt_yx,bbt_yy,bbt_yz,bbt_zx,bbt_zy,bbt_zz);
	bbOnDebugLeaveScope();
	return 0;
}
BBINT openb3d_openb3dcore_TUse_MatrixMD2_i_fffffffff(BBFLOAT bbt_xx,BBFLOAT bbt_xy,BBFLOAT bbt_xz,BBFLOAT bbt_yx,BBFLOAT bbt_yy,BBFLOAT bbt_yz,BBFLOAT bbt_zx,BBFLOAT bbt_zy,BBFLOAT bbt_zz){
	struct BBDebugScope_9 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"MatrixMD2",
		{
			{
				BBDEBUGDECL_LOCAL,
				"xx",
				"f",
				.var_address=&bbt_xx
			},
			{
				BBDEBUGDECL_LOCAL,
				"xy",
				"f",
				.var_address=&bbt_xy
			},
			{
				BBDEBUGDECL_LOCAL,
				"xz",
				"f",
				.var_address=&bbt_xz
			},
			{
				BBDEBUGDECL_LOCAL,
				"yx",
				"f",
				.var_address=&bbt_yx
			},
			{
				BBDEBUGDECL_LOCAL,
				"yy",
				"f",
				.var_address=&bbt_yy
			},
			{
				BBDEBUGDECL_LOCAL,
				"yz",
				"f",
				.var_address=&bbt_yz
			},
			{
				BBDEBUGDECL_LOCAL,
				"zx",
				"f",
				.var_address=&bbt_zx
			},
			{
				BBDEBUGDECL_LOCAL,
				"zy",
				"f",
				.var_address=&bbt_zy
			},
			{
				BBDEBUGDECL_LOCAL,
				"zz",
				"f",
				.var_address=&bbt_zz
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x47eafdfc4911859b, 558, 0};
	bbOnDebugEnterStm(&__stmt_0);
	((struct openb3d_openb3dcore_TMatPtr_obj*)bbNullObjectTest((BBObject*)openb3d_openb3dcore_TGlobal3D_Matrix_MD2))->clas->m_SetIdentity_fffffffff((struct openb3d_openb3dcore_TMatPtr_obj*)openb3d_openb3dcore_TGlobal3D_Matrix_MD2,bbt_xx,bbt_xy,bbt_xz,bbt_yx,bbt_yy,bbt_yz,bbt_zx,bbt_zy,bbt_zz);
	bbOnDebugLeaveScope();
	return 0;
}
BBINT openb3d_openb3dcore_TUse_LibraryTextures_i_i(BBINT bbt_flag){
	struct BBDebugScope_1 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"LibraryTextures",
		{
			{
				BBDEBUGDECL_LOCAL,
				"flag",
				"i",
				.var_address=&bbt_flag
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x47eafdfc4911859b, 564, 0};
	bbOnDebugEnterStm(&__stmt_0);
	BBINT bbt_=bbt_flag;
	struct BBDebugStm __stmt_1 = {0x47eafdfc4911859b, 565, 0};
	bbOnDebugEnterStm(&__stmt_1);
	if(bbt_==0){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x47eafdfc4911859b, 566, 0};
		bbOnDebugEnterStm(&__stmt_0);
		openb3d_openb3dcore_TGlobal3D_Texture_Loader=1;
		bbOnDebugLeaveScope();
	}else{
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x47eafdfc4911859b, 567, 0};
		bbOnDebugEnterStm(&__stmt_0);
		if(bbt_==1){
			struct BBDebugScope __scope = {
				BBDEBUGSCOPE_LOCALBLOCK,
				0,
				{
					{
						BBDEBUGDECL_END
					}
				}
			};
			bbOnDebugEnterScope((BBDebugScope *)&__scope);
			struct BBDebugStm __stmt_0 = {0x47eafdfc4911859b, 568, 0};
			bbOnDebugEnterStm(&__stmt_0);
			openb3d_openb3dcore_TGlobal3D_Texture_Loader=2;
			bbOnDebugLeaveScope();
		}
		bbOnDebugLeaveScope();
	}
	bbOnDebugLeaveScope();
	return 0;
}
BBINT openb3d_openb3dcore_TUse_TextureFrames_i_iiiiii(BBINT bbt_lf0,BBINT bbt_fr1,BBINT bbt_rt2,BBINT bbt_bk3,BBINT bbt_dn4,BBINT bbt_up5){
	struct BBDebugScope_6 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"TextureFrames",
		{
			{
				BBDEBUGDECL_LOCAL,
				"lf0",
				"i",
				.var_address=&bbt_lf0
			},
			{
				BBDEBUGDECL_LOCAL,
				"fr1",
				"i",
				.var_address=&bbt_fr1
			},
			{
				BBDEBUGDECL_LOCAL,
				"rt2",
				"i",
				.var_address=&bbt_rt2
			},
			{
				BBDEBUGDECL_LOCAL,
				"bk3",
				"i",
				.var_address=&bbt_bk3
			},
			{
				BBDEBUGDECL_LOCAL,
				"dn4",
				"i",
				.var_address=&bbt_dn4
			},
			{
				BBDEBUGDECL_LOCAL,
				"up5",
				"i",
				.var_address=&bbt_up5
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x47eafdfc4911859b, 574, 0};
	bbOnDebugEnterStm(&__stmt_0);
	UseTextureFrames_(bbt_lf0,bbt_fr1,bbt_rt2,bbt_bk3,bbt_dn4,bbt_up5);
	struct BBDebugStm __stmt_1 = {0x47eafdfc4911859b, 576, 0};
	bbOnDebugEnterStm(&__stmt_1);
	((BBINT*)BBARRAYDATAINDEX((openb3d_openb3dcore_TGlobal3D_Cubemap_Frame),(openb3d_openb3dcore_TGlobal3D_Cubemap_Frame)->dims,0U))[0U]=bbt_lf0;
	struct BBDebugStm __stmt_2 = {0x47eafdfc4911859b, 577, 0};
	bbOnDebugEnterStm(&__stmt_2);
	((BBINT*)BBARRAYDATAINDEX((openb3d_openb3dcore_TGlobal3D_Cubemap_Frame),(openb3d_openb3dcore_TGlobal3D_Cubemap_Frame)->dims,1U))[1U]=bbt_fr1;
	struct BBDebugStm __stmt_3 = {0x47eafdfc4911859b, 578, 0};
	bbOnDebugEnterStm(&__stmt_3);
	((BBINT*)BBARRAYDATAINDEX((openb3d_openb3dcore_TGlobal3D_Cubemap_Frame),(openb3d_openb3dcore_TGlobal3D_Cubemap_Frame)->dims,2U))[2U]=bbt_rt2;
	struct BBDebugStm __stmt_4 = {0x47eafdfc4911859b, 579, 0};
	bbOnDebugEnterStm(&__stmt_4);
	((BBINT*)BBARRAYDATAINDEX((openb3d_openb3dcore_TGlobal3D_Cubemap_Frame),(openb3d_openb3dcore_TGlobal3D_Cubemap_Frame)->dims,3U))[3U]=bbt_bk3;
	struct BBDebugStm __stmt_5 = {0x47eafdfc4911859b, 580, 0};
	bbOnDebugEnterStm(&__stmt_5);
	((BBINT*)BBARRAYDATAINDEX((openb3d_openb3dcore_TGlobal3D_Cubemap_Frame),(openb3d_openb3dcore_TGlobal3D_Cubemap_Frame)->dims,4U))[4U]=bbt_dn4;
	struct BBDebugStm __stmt_6 = {0x47eafdfc4911859b, 581, 0};
	bbOnDebugEnterStm(&__stmt_6);
	((BBINT*)BBARRAYDATAINDEX((openb3d_openb3dcore_TGlobal3D_Cubemap_Frame),(openb3d_openb3dcore_TGlobal3D_Cubemap_Frame)->dims,5U))[5U]=bbt_up5;
	bbOnDebugLeaveScope();
	return 0;
}
BBINT openb3d_openb3dcore_TUse_TextureFaces_i_iiiiii(BBINT bbt_lf0,BBINT bbt_fr1,BBINT bbt_rt2,BBINT bbt_bk3,BBINT bbt_dn4,BBINT bbt_up5){
	struct BBDebugScope_6 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"TextureFaces",
		{
			{
				BBDEBUGDECL_LOCAL,
				"lf0",
				"i",
				.var_address=&bbt_lf0
			},
			{
				BBDEBUGDECL_LOCAL,
				"fr1",
				"i",
				.var_address=&bbt_fr1
			},
			{
				BBDEBUGDECL_LOCAL,
				"rt2",
				"i",
				.var_address=&bbt_rt2
			},
			{
				BBDEBUGDECL_LOCAL,
				"bk3",
				"i",
				.var_address=&bbt_bk3
			},
			{
				BBDEBUGDECL_LOCAL,
				"dn4",
				"i",
				.var_address=&bbt_dn4
			},
			{
				BBDEBUGDECL_LOCAL,
				"up5",
				"i",
				.var_address=&bbt_up5
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x47eafdfc4911859b, 586, 0};
	bbOnDebugEnterStm(&__stmt_0);
	UseTextureFaces_(bbt_lf0,bbt_fr1,bbt_rt2,bbt_bk3,bbt_dn4,bbt_up5);
	struct BBDebugStm __stmt_1 = {0x47eafdfc4911859b, 588, 0};
	bbOnDebugEnterStm(&__stmt_1);
	((BBINT*)BBARRAYDATAINDEX((openb3d_openb3dcore_TGlobal3D_Cubemap_Face),(openb3d_openb3dcore_TGlobal3D_Cubemap_Face)->dims,((BBUINT)bbt_lf0)))[((BBUINT)bbt_lf0)]=34070;
	struct BBDebugStm __stmt_2 = {0x47eafdfc4911859b, 589, 0};
	bbOnDebugEnterStm(&__stmt_2);
	((BBINT*)BBARRAYDATAINDEX((openb3d_openb3dcore_TGlobal3D_Cubemap_Face),(openb3d_openb3dcore_TGlobal3D_Cubemap_Face)->dims,((BBUINT)bbt_fr1)))[((BBUINT)bbt_fr1)]=34073;
	struct BBDebugStm __stmt_3 = {0x47eafdfc4911859b, 590, 0};
	bbOnDebugEnterStm(&__stmt_3);
	((BBINT*)BBARRAYDATAINDEX((openb3d_openb3dcore_TGlobal3D_Cubemap_Face),(openb3d_openb3dcore_TGlobal3D_Cubemap_Face)->dims,((BBUINT)bbt_rt2)))[((BBUINT)bbt_rt2)]=34069;
	struct BBDebugStm __stmt_4 = {0x47eafdfc4911859b, 591, 0};
	bbOnDebugEnterStm(&__stmt_4);
	((BBINT*)BBARRAYDATAINDEX((openb3d_openb3dcore_TGlobal3D_Cubemap_Face),(openb3d_openb3dcore_TGlobal3D_Cubemap_Face)->dims,((BBUINT)bbt_bk3)))[((BBUINT)bbt_bk3)]=34074;
	struct BBDebugStm __stmt_5 = {0x47eafdfc4911859b, 592, 0};
	bbOnDebugEnterStm(&__stmt_5);
	((BBINT*)BBARRAYDATAINDEX((openb3d_openb3dcore_TGlobal3D_Cubemap_Face),(openb3d_openb3dcore_TGlobal3D_Cubemap_Face)->dims,((BBUINT)bbt_dn4)))[((BBUINT)bbt_dn4)]=34071;
	struct BBDebugStm __stmt_6 = {0x47eafdfc4911859b, 593, 0};
	bbOnDebugEnterStm(&__stmt_6);
	((BBINT*)BBARRAYDATAINDEX((openb3d_openb3dcore_TGlobal3D_Cubemap_Face),(openb3d_openb3dcore_TGlobal3D_Cubemap_Face)->dims,((BBUINT)bbt_up5)))[((BBUINT)bbt_up5)]=34072;
	bbOnDebugLeaveScope();
	return 0;
}
BBINT openb3d_openb3dcore_TUse_CubemapFlip_i_i(BBINT bbt_flag){
	struct BBDebugScope_1 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"CubemapFlip",
		{
			{
				BBDEBUGDECL_LOCAL,
				"flag",
				"i",
				.var_address=&bbt_flag
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x47eafdfc4911859b, 598, 0};
	bbOnDebugEnterStm(&__stmt_0);
	BBINT bbt_=bbt_flag;
	struct BBDebugStm __stmt_1 = {0x47eafdfc4911859b, 599, 0};
	bbOnDebugEnterStm(&__stmt_1);
	if(bbt_==0){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x47eafdfc4911859b, 600, 0};
		bbOnDebugEnterStm(&__stmt_0);
		openb3d_openb3dcore_TGlobal3D_Flip_Cubemap=0;
		bbOnDebugLeaveScope();
	}else{
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x47eafdfc4911859b, 601, 0};
		bbOnDebugEnterStm(&__stmt_0);
		if(bbt_==1){
			struct BBDebugScope __scope = {
				BBDEBUGSCOPE_LOCALBLOCK,
				0,
				{
					{
						BBDEBUGDECL_END
					}
				}
			};
			bbOnDebugEnterScope((BBDebugScope *)&__scope);
			struct BBDebugStm __stmt_0 = {0x47eafdfc4911859b, 602, 0};
			bbOnDebugEnterStm(&__stmt_0);
			openb3d_openb3dcore_TGlobal3D_Flip_Cubemap=1;
			bbOnDebugLeaveScope();
		}
		bbOnDebugLeaveScope();
	}
	bbOnDebugLeaveScope();
	return 0;
}
BBINT openb3d_openb3dcore_TUse_MeshTextureFlags_i_i(BBINT bbt_texflags){
	struct BBDebugScope_1 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"MeshTextureFlags",
		{
			{
				BBDEBUGDECL_LOCAL,
				"texflags",
				"i",
				.var_address=&bbt_texflags
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x47eafdfc4911859b, 608, 0};
	bbOnDebugEnterStm(&__stmt_0);
	openb3d_openb3dcore_TGlobal3D_Texture_Flags=bbt_texflags;
	bbOnDebugLeaveScope();
	return 0;
}
struct BBDebugScope_12 openb3d_openb3dcore_TUse_scope ={
	BBDEBUGSCOPE_USERTYPE,
	"TUse",
	{
		{
			BBDEBUGDECL_TYPEMETHOD,
			"New",
			"()i",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_TUse_New
		},
		{
			BBDEBUGDECL_TYPEFUNCTION,
			"LibraryMeshes",
			"(i)i",
			.func_ptr=(BBFuncPtr)&openb3d_openb3dcore_TUse_LibraryMeshes_i_i
		},
		{
			BBDEBUGDECL_TYPEFUNCTION,
			"AssimpStreamMeshes",
			"(i,i)i",
			.func_ptr=(BBFuncPtr)&openb3d_openb3dcore_TUse_AssimpStreamMeshes_i_ii
		},
		{
			BBDEBUGDECL_TYPEFUNCTION,
			"MeshDebugLog",
			"(i)i",
			.func_ptr=(BBFuncPtr)&openb3d_openb3dcore_TUse_MeshDebugLog_i_i
		},
		{
			BBDEBUGDECL_TYPEFUNCTION,
			"MeshTransform",
			"(i)i",
			.func_ptr=(BBFuncPtr)&openb3d_openb3dcore_TUse_MeshTransform_i_i
		},
		{
			BBDEBUGDECL_TYPEFUNCTION,
			"Matrix3DS",
			"(f,f,f,f,f,f,f,f,f)i",
			.func_ptr=(BBFuncPtr)&openb3d_openb3dcore_TUse_Matrix3DS_i_fffffffff
		},
		{
			BBDEBUGDECL_TYPEFUNCTION,
			"MatrixMD2",
			"(f,f,f,f,f,f,f,f,f)i",
			.func_ptr=(BBFuncPtr)&openb3d_openb3dcore_TUse_MatrixMD2_i_fffffffff
		},
		{
			BBDEBUGDECL_TYPEFUNCTION,
			"LibraryTextures",
			"(i)i",
			.func_ptr=(BBFuncPtr)&openb3d_openb3dcore_TUse_LibraryTextures_i_i
		},
		{
			BBDEBUGDECL_TYPEFUNCTION,
			"TextureFrames",
			"(i,i,i,i,i,i)i",
			.func_ptr=(BBFuncPtr)&openb3d_openb3dcore_TUse_TextureFrames_i_iiiiii
		},
		{
			BBDEBUGDECL_TYPEFUNCTION,
			"TextureFaces",
			"(i,i,i,i,i,i)i",
			.func_ptr=(BBFuncPtr)&openb3d_openb3dcore_TUse_TextureFaces_i_iiiiii
		},
		{
			BBDEBUGDECL_TYPEFUNCTION,
			"CubemapFlip",
			"(i)i",
			.func_ptr=(BBFuncPtr)&openb3d_openb3dcore_TUse_CubemapFlip_i_i
		},
		{
			BBDEBUGDECL_TYPEFUNCTION,
			"MeshTextureFlags",
			"(i)i",
			.func_ptr=(BBFuncPtr)&openb3d_openb3dcore_TUse_MeshTextureFlags_i_i
		},
		{
			BBDEBUGDECL_END
		}
	}
};
struct BBClass_openb3d_openb3dcore_TUse openb3d_openb3dcore_TUse={
	&bbObjectClass,
	bbObjectFree,
	(BBDebugScope*)&openb3d_openb3dcore_TUse_scope,
	sizeof(struct openb3d_openb3dcore_TUse_obj),
	(void (*)(BBOBJECT))_openb3d_openb3dcore_TUse_New,
	bbObjectDtor,
	bbObjectToString,
	bbObjectCompare,
	bbObjectSendMessage,
	0,
	0,
	0
	,0
	,sizeof(void*)
	,openb3d_openb3dcore_TUse_LibraryMeshes_i_i
	,openb3d_openb3dcore_TUse_AssimpStreamMeshes_i_ii
	,openb3d_openb3dcore_TUse_MeshDebugLog_i_i
	,openb3d_openb3dcore_TUse_MeshTransform_i_i
	,openb3d_openb3dcore_TUse_Matrix3DS_i_fffffffff
	,openb3d_openb3dcore_TUse_MatrixMD2_i_fffffffff
	,openb3d_openb3dcore_TUse_LibraryTextures_i_i
	,openb3d_openb3dcore_TUse_TextureFrames_i_iiiiii
	,openb3d_openb3dcore_TUse_TextureFaces_i_iiiiii
	,openb3d_openb3dcore_TUse_CubemapFlip_i_i
	,openb3d_openb3dcore_TUse_MeshTextureFlags_i_i
};

void _openb3d_openb3dcore_TEntity_New(struct openb3d_openb3dcore_TEntity_obj* o) {
	bbObjectCtor((BBOBJECT)o);
	o->clas = &openb3d_openb3dcore_TEntity;
	((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tentity_child_list = (struct brl_linkedlist_TList_obj*)brl_linkedlist_CreateList();
	((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tentity_parent = (struct openb3d_openb3dcore_TEntity_obj*)((struct openb3d_openb3dcore_TEntity_obj*)&bbNullObject);
	((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tentity_mat = (struct openb3d_openb3dcore_TMatPtr_obj*)((struct openb3d_openb3dcore_TMatPtr_obj*)&bbNullObject);
	((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tentity_rotmat = (struct openb3d_openb3dcore_TMatPtr_obj*)((struct openb3d_openb3dcore_TMatPtr_obj*)&bbNullObject);
	((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tentity_px = 0;
	((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tentity_py = 0;
	((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tentity_pz = 0;
	((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tentity_sx = 0;
	((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tentity_sy = 0;
	((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tentity_sz = 0;
	((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tentity_rx = 0;
	((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tentity_ry = 0;
	((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tentity_rz = 0;
	((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tentity_qw = 0;
	((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tentity_qx = 0;
	((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tentity_qy = 0;
	((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tentity_qz = 0;
	((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tentity_brush = (struct openb3d_openb3dcore_TBrush_obj*)((struct openb3d_openb3dcore_TBrush_obj*)&bbNullObject);
	((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tentity_order = 0;
	((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tentity_alpha_order = 0;
	((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tentity_hide = 0;
	((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tentity_cull_radius = 0;
	((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tentity_name = 0;
	((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tentity_class_name = 0;
	((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tentity_anim = 0;
	((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tentity_anim_render = 0;
	((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tentity_anim_mode = 0;
	((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tentity_anim_time = 0;
	((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tentity_anim_speed = 0;
	((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tentity_anim_seq = 0;
	((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tentity_anim_trans = 0;
	((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tentity_anim_dir = 0;
	((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tentity_anim_seqs_first = 0;
	((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tentity_anim_seqs_last = 0;
	((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tentity_no_seqs = 0;
	((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tentity_anim_update = 0;
	((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tentity_anim_list = 0;
	((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tentity_collision_type = 0;
	((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tentity_radius_x = 0;
	((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tentity_radius_y = 0;
	((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tentity_box_x = 0;
	((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tentity_box_y = 0;
	((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tentity_box_z = 0;
	((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tentity_box_w = 0;
	((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tentity_box_h = 0;
	((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tentity_box_d = 0;
	((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tentity_no_collisions = 0;
	((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tentity_pick_mode = 0;
	((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tentity_obscurer = 0;
	((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tentity_instance = 0;
	((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tentity_child_list_id = 0;
	((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tentity_exists = 0;
	((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tentity_is_anim = 0;
	struct BBDebugScope __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"New",
		{
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0xa6bea28b2db61a66, 580, 0};
	bbOnDebugEnterStm(&__stmt_0);
	if(openb3d_openb3dcore_TGlobal3D_Log_New!=0){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0xa6bea28b2db61a66, 581, 0};
		bbOnDebugEnterStm(&__stmt_0);
		brl_blitz_DebugLog((BBString*)&_s140);
		bbOnDebugLeaveScope();
	}
	bbOnDebugLeaveScope();
}
void _openb3d_openb3dcore_TEntity_Delete(struct openb3d_openb3dcore_TEntity_obj* o) {
	struct BBDebugScope_1 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"Delete",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TEntity",
				.var_address=&o
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0xa6bea28b2db61a66, 588, 0};
	bbOnDebugEnterStm(&__stmt_0);
	if(openb3d_openb3dcore_TGlobal3D_Log_Del!=0){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0xa6bea28b2db61a66, 589, 0};
		bbOnDebugEnterStm(&__stmt_0);
		brl_blitz_DebugLog((BBString*)&_s141);
		bbOnDebugLeaveScope();
	}
	bbOnDebugLeaveScope();
	bbObjectDtor((BBOBJECT)o);
}
struct openb3d_openb3dcore_TEntity_obj* _openb3d_openb3dcore_TEntity_CopyEntity_TTEntity(struct openb3d_openb3dcore_TEntity_obj* o,struct openb3d_openb3dcore_TEntity_obj* bbt_parent_ent){
	brl_blitz_NullMethodError();
	return (struct openb3d_openb3dcore_TEntity_obj*)((struct openb3d_openb3dcore_TEntity_obj*)&bbNullObject);
}
BBINT _openb3d_openb3dcore_TEntity_Update(struct openb3d_openb3dcore_TEntity_obj* o){
	brl_blitz_NullMethodError();
	return 0;
}
BBINT openb3d_openb3dcore_TEntity_FreeObject_i_pb(BBBYTE* bbt_inst){
	struct BBDebugScope_1 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"FreeObject",
		{
			{
				BBDEBUGDECL_LOCAL,
				"inst",
				"*b",
				.var_address=&bbt_inst
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0xa6bea28b2db61a66, 101, 0};
	bbOnDebugEnterStm(&__stmt_0);
	((struct brl_map_ptrmap_TPtrMap_obj*)bbNullObjectTest((BBObject*)openb3d_openb3dcore_TEntity_ent_map))->clas->m_Remove_pb((struct brl_map_ptrmap_TPtrMap_obj*)openb3d_openb3dcore_TEntity_ent_map,bbt_inst);
	bbOnDebugLeaveScope();
	return 0;
}
struct openb3d_openb3dcore_TEntity_obj* openb3d_openb3dcore_TEntity_GetObject_TTEntity_pb(BBBYTE* bbt_inst){
	struct BBDebugScope_1 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"GetObject",
		{
			{
				BBDEBUGDECL_LOCAL,
				"inst",
				"*b",
				.var_address=&bbt_inst
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0xa6bea28b2db61a66, 111, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbOnDebugLeaveScope();
	return (struct openb3d_openb3dcore_TEntity_obj*)((struct openb3d_openb3dcore_TEntity_obj*)bbObjectDowncast((BBOBJECT)((struct brl_map_ptrmap_TPtrMap_obj*)bbNullObjectTest((BBObject*)openb3d_openb3dcore_TEntity_ent_map))->clas->m_ValueForKey_pb((struct brl_map_ptrmap_TPtrMap_obj*)openb3d_openb3dcore_TEntity_ent_map,bbt_inst),(BBClass*)&openb3d_openb3dcore_TEntity));
}
BBBYTE* openb3d_openb3dcore_TEntity_GetInstance_pb_TTEntity(struct openb3d_openb3dcore_TEntity_obj* bbt_obj){
	struct BBDebugScope_1 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"GetInstance",
		{
			{
				BBDEBUGDECL_LOCAL,
				"obj",
				":TEntity",
				.var_address=&bbt_obj
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0xa6bea28b2db61a66, 120, 0};
	bbOnDebugEnterStm(&__stmt_0);
	if(((BBOBJECT)bbt_obj)==&bbNullObject){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0xa6bea28b2db61a66, 120, 0};
		bbOnDebugEnterStm(&__stmt_0);
		bbOnDebugLeaveScope();
		bbOnDebugLeaveScope();
		return 0;
	}
	struct BBDebugStm __stmt_1 = {0xa6bea28b2db61a66, 121, 0};
	bbOnDebugEnterStm(&__stmt_1);
	bbOnDebugLeaveScope();
	return ((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)bbt_obj))->_openb3d_openb3dcore_tentity_instance ;
}
BBINT openb3d_openb3dcore_TEntity_InitGlobals_i(){
	struct BBDebugScope __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"InitGlobals",
		{
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0xa6bea28b2db61a66, 127, 0};
	bbOnDebugEnterStm(&__stmt_0);
	openb3d_openb3dcore_TEntity_tformed_x=StaticFloat_(12,71);
	struct BBDebugStm __stmt_1 = {0xa6bea28b2db61a66, 128, 0};
	bbOnDebugEnterStm(&__stmt_1);
	openb3d_openb3dcore_TEntity_tformed_y=StaticFloat_(12,72);
	struct BBDebugStm __stmt_2 = {0xa6bea28b2db61a66, 129, 0};
	bbOnDebugEnterStm(&__stmt_2);
	openb3d_openb3dcore_TEntity_tformed_z=StaticFloat_(12,73);
	bbOnDebugLeaveScope();
	return 0;
}
BBINT _openb3d_openb3dcore_TEntity_InitFields(struct openb3d_openb3dcore_TEntity_obj* o){
	((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)o));
	BBBYTE* bbt_inst=0;
	struct BBDebugScope_2 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"InitFields",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TEntity",
				.var_address=&o
			},
			{
				BBDEBUGDECL_LOCAL,
				"inst",
				"*b",
				.var_address=&bbt_inst
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0xa6bea28b2db61a66, 135, 0};
	bbOnDebugEnterStm(&__stmt_0);
	((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)o));
	((struct openb3d_openb3dcore_TEntity_obj*)o)->clas->m_CopyList_TTList((struct openb3d_openb3dcore_TEntity_obj*)o,(struct brl_linkedlist_TList_obj*)((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tentity_child_list );
	struct BBDebugStm __stmt_1 = {0xa6bea28b2db61a66, 138, 0};
	bbOnDebugEnterStm(&__stmt_1);
	((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tentity_order =EntityInt_(o->clas->f_GetInstance_pb_TTEntity((struct openb3d_openb3dcore_TEntity_obj*)o),20);
	struct BBDebugStm __stmt_2 = {0xa6bea28b2db61a66, 139, 0};
	bbOnDebugEnterStm(&__stmt_2);
	((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tentity_hide =EntityInt_(o->clas->f_GetInstance_pb_TTEntity((struct openb3d_openb3dcore_TEntity_obj*)o),22);
	struct BBDebugStm __stmt_3 = {0xa6bea28b2db61a66, 140, 0};
	bbOnDebugEnterStm(&__stmt_3);
	((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tentity_anim =EntityInt_(o->clas->f_GetInstance_pb_TTEntity((struct openb3d_openb3dcore_TEntity_obj*)o),27);
	struct BBDebugStm __stmt_4 = {0xa6bea28b2db61a66, 141, 0};
	bbOnDebugEnterStm(&__stmt_4);
	((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tentity_anim_render =EntityInt_(o->clas->f_GetInstance_pb_TTEntity((struct openb3d_openb3dcore_TEntity_obj*)o),28);
	struct BBDebugStm __stmt_5 = {0xa6bea28b2db61a66, 142, 0};
	bbOnDebugEnterStm(&__stmt_5);
	((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tentity_anim_mode =EntityInt_(o->clas->f_GetInstance_pb_TTEntity((struct openb3d_openb3dcore_TEntity_obj*)o),29);
	struct BBDebugStm __stmt_6 = {0xa6bea28b2db61a66, 143, 0};
	bbOnDebugEnterStm(&__stmt_6);
	((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tentity_anim_seq =EntityInt_(o->clas->f_GetInstance_pb_TTEntity((struct openb3d_openb3dcore_TEntity_obj*)o),32);
	struct BBDebugStm __stmt_7 = {0xa6bea28b2db61a66, 144, 0};
	bbOnDebugEnterStm(&__stmt_7);
	((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tentity_anim_trans =EntityInt_(o->clas->f_GetInstance_pb_TTEntity((struct openb3d_openb3dcore_TEntity_obj*)o),33);
	struct BBDebugStm __stmt_8 = {0xa6bea28b2db61a66, 145, 0};
	bbOnDebugEnterStm(&__stmt_8);
	((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tentity_anim_dir =EntityInt_(o->clas->f_GetInstance_pb_TTEntity((struct openb3d_openb3dcore_TEntity_obj*)o),34);
	struct BBDebugStm __stmt_9 = {0xa6bea28b2db61a66, 146, 0};
	bbOnDebugEnterStm(&__stmt_9);
	((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tentity_anim_seqs_first =EntityInt_(o->clas->f_GetInstance_pb_TTEntity((struct openb3d_openb3dcore_TEntity_obj*)o),35);
	struct BBDebugStm __stmt_10 = {0xa6bea28b2db61a66, 147, 0};
	bbOnDebugEnterStm(&__stmt_10);
	((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tentity_anim_seqs_last =EntityInt_(o->clas->f_GetInstance_pb_TTEntity((struct openb3d_openb3dcore_TEntity_obj*)o),36);
	struct BBDebugStm __stmt_11 = {0xa6bea28b2db61a66, 148, 0};
	bbOnDebugEnterStm(&__stmt_11);
	((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tentity_no_seqs =EntityInt_(o->clas->f_GetInstance_pb_TTEntity((struct openb3d_openb3dcore_TEntity_obj*)o),37);
	struct BBDebugStm __stmt_12 = {0xa6bea28b2db61a66, 149, 0};
	bbOnDebugEnterStm(&__stmt_12);
	((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tentity_anim_update =EntityInt_(o->clas->f_GetInstance_pb_TTEntity((struct openb3d_openb3dcore_TEntity_obj*)o),38);
	struct BBDebugStm __stmt_13 = {0xa6bea28b2db61a66, 150, 0};
	bbOnDebugEnterStm(&__stmt_13);
	((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tentity_anim_list =EntityInt_(o->clas->f_GetInstance_pb_TTEntity((struct openb3d_openb3dcore_TEntity_obj*)o),39);
	struct BBDebugStm __stmt_14 = {0xa6bea28b2db61a66, 151, 0};
	bbOnDebugEnterStm(&__stmt_14);
	((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tentity_collision_type =EntityInt_(o->clas->f_GetInstance_pb_TTEntity((struct openb3d_openb3dcore_TEntity_obj*)o),40);
	struct BBDebugStm __stmt_15 = {0xa6bea28b2db61a66, 152, 0};
	bbOnDebugEnterStm(&__stmt_15);
	((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tentity_no_collisions =EntityInt_(o->clas->f_GetInstance_pb_TTEntity((struct openb3d_openb3dcore_TEntity_obj*)o),49);
	struct BBDebugStm __stmt_16 = {0xa6bea28b2db61a66, 155, 0};
	bbOnDebugEnterStm(&__stmt_16);
	((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tentity_pick_mode =EntityInt_(o->clas->f_GetInstance_pb_TTEntity((struct openb3d_openb3dcore_TEntity_obj*)o),69);
	struct BBDebugStm __stmt_17 = {0xa6bea28b2db61a66, 156, 0};
	bbOnDebugEnterStm(&__stmt_17);
	((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tentity_obscurer =EntityInt_(o->clas->f_GetInstance_pb_TTEntity((struct openb3d_openb3dcore_TEntity_obj*)o),70);
	struct BBDebugStm __stmt_18 = {0xa6bea28b2db61a66, 159, 0};
	bbOnDebugEnterStm(&__stmt_18);
	((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tentity_px =EntityFloat_(o->clas->f_GetInstance_pb_TTEntity((struct openb3d_openb3dcore_TEntity_obj*)o),6);
	struct BBDebugStm __stmt_19 = {0xa6bea28b2db61a66, 160, 0};
	bbOnDebugEnterStm(&__stmt_19);
	((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tentity_py =EntityFloat_(o->clas->f_GetInstance_pb_TTEntity((struct openb3d_openb3dcore_TEntity_obj*)o),7);
	struct BBDebugStm __stmt_20 = {0xa6bea28b2db61a66, 161, 0};
	bbOnDebugEnterStm(&__stmt_20);
	((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tentity_pz =EntityFloat_(o->clas->f_GetInstance_pb_TTEntity((struct openb3d_openb3dcore_TEntity_obj*)o),8);
	struct BBDebugStm __stmt_21 = {0xa6bea28b2db61a66, 162, 0};
	bbOnDebugEnterStm(&__stmt_21);
	((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tentity_sx =EntityFloat_(o->clas->f_GetInstance_pb_TTEntity((struct openb3d_openb3dcore_TEntity_obj*)o),9);
	struct BBDebugStm __stmt_22 = {0xa6bea28b2db61a66, 163, 0};
	bbOnDebugEnterStm(&__stmt_22);
	((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tentity_sy =EntityFloat_(o->clas->f_GetInstance_pb_TTEntity((struct openb3d_openb3dcore_TEntity_obj*)o),10);
	struct BBDebugStm __stmt_23 = {0xa6bea28b2db61a66, 164, 0};
	bbOnDebugEnterStm(&__stmt_23);
	((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tentity_sz =EntityFloat_(o->clas->f_GetInstance_pb_TTEntity((struct openb3d_openb3dcore_TEntity_obj*)o),11);
	struct BBDebugStm __stmt_24 = {0xa6bea28b2db61a66, 165, 0};
	bbOnDebugEnterStm(&__stmt_24);
	((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tentity_rx =EntityFloat_(o->clas->f_GetInstance_pb_TTEntity((struct openb3d_openb3dcore_TEntity_obj*)o),12);
	struct BBDebugStm __stmt_25 = {0xa6bea28b2db61a66, 166, 0};
	bbOnDebugEnterStm(&__stmt_25);
	((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tentity_ry =EntityFloat_(o->clas->f_GetInstance_pb_TTEntity((struct openb3d_openb3dcore_TEntity_obj*)o),13);
	struct BBDebugStm __stmt_26 = {0xa6bea28b2db61a66, 167, 0};
	bbOnDebugEnterStm(&__stmt_26);
	((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tentity_rz =EntityFloat_(o->clas->f_GetInstance_pb_TTEntity((struct openb3d_openb3dcore_TEntity_obj*)o),14);
	struct BBDebugStm __stmt_27 = {0xa6bea28b2db61a66, 168, 0};
	bbOnDebugEnterStm(&__stmt_27);
	((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tentity_qw =EntityFloat_(o->clas->f_GetInstance_pb_TTEntity((struct openb3d_openb3dcore_TEntity_obj*)o),15);
	struct BBDebugStm __stmt_28 = {0xa6bea28b2db61a66, 169, 0};
	bbOnDebugEnterStm(&__stmt_28);
	((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tentity_qx =EntityFloat_(o->clas->f_GetInstance_pb_TTEntity((struct openb3d_openb3dcore_TEntity_obj*)o),16);
	struct BBDebugStm __stmt_29 = {0xa6bea28b2db61a66, 170, 0};
	bbOnDebugEnterStm(&__stmt_29);
	((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tentity_qy =EntityFloat_(o->clas->f_GetInstance_pb_TTEntity((struct openb3d_openb3dcore_TEntity_obj*)o),17);
	struct BBDebugStm __stmt_30 = {0xa6bea28b2db61a66, 171, 0};
	bbOnDebugEnterStm(&__stmt_30);
	((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tentity_qz =EntityFloat_(o->clas->f_GetInstance_pb_TTEntity((struct openb3d_openb3dcore_TEntity_obj*)o),18);
	struct BBDebugStm __stmt_31 = {0xa6bea28b2db61a66, 172, 0};
	bbOnDebugEnterStm(&__stmt_31);
	((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tentity_alpha_order =EntityFloat_(o->clas->f_GetInstance_pb_TTEntity((struct openb3d_openb3dcore_TEntity_obj*)o),21);
	struct BBDebugStm __stmt_32 = {0xa6bea28b2db61a66, 173, 0};
	bbOnDebugEnterStm(&__stmt_32);
	((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tentity_cull_radius =EntityFloat_(o->clas->f_GetInstance_pb_TTEntity((struct openb3d_openb3dcore_TEntity_obj*)o),23);
	struct BBDebugStm __stmt_33 = {0xa6bea28b2db61a66, 174, 0};
	bbOnDebugEnterStm(&__stmt_33);
	((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tentity_anim_time =EntityFloat_(o->clas->f_GetInstance_pb_TTEntity((struct openb3d_openb3dcore_TEntity_obj*)o),30);
	struct BBDebugStm __stmt_34 = {0xa6bea28b2db61a66, 175, 0};
	bbOnDebugEnterStm(&__stmt_34);
	((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tentity_anim_speed =EntityFloat_(o->clas->f_GetInstance_pb_TTEntity((struct openb3d_openb3dcore_TEntity_obj*)o),31);
	struct BBDebugStm __stmt_35 = {0xa6bea28b2db61a66, 176, 0};
	bbOnDebugEnterStm(&__stmt_35);
	((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tentity_radius_x =EntityFloat_(o->clas->f_GetInstance_pb_TTEntity((struct openb3d_openb3dcore_TEntity_obj*)o),41);
	struct BBDebugStm __stmt_36 = {0xa6bea28b2db61a66, 177, 0};
	bbOnDebugEnterStm(&__stmt_36);
	((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tentity_radius_y =EntityFloat_(o->clas->f_GetInstance_pb_TTEntity((struct openb3d_openb3dcore_TEntity_obj*)o),42);
	struct BBDebugStm __stmt_37 = {0xa6bea28b2db61a66, 178, 0};
	bbOnDebugEnterStm(&__stmt_37);
	((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tentity_box_x =EntityFloat_(o->clas->f_GetInstance_pb_TTEntity((struct openb3d_openb3dcore_TEntity_obj*)o),43);
	struct BBDebugStm __stmt_38 = {0xa6bea28b2db61a66, 179, 0};
	bbOnDebugEnterStm(&__stmt_38);
	((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tentity_box_y =EntityFloat_(o->clas->f_GetInstance_pb_TTEntity((struct openb3d_openb3dcore_TEntity_obj*)o),44);
	struct BBDebugStm __stmt_39 = {0xa6bea28b2db61a66, 180, 0};
	bbOnDebugEnterStm(&__stmt_39);
	((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tentity_box_z =EntityFloat_(o->clas->f_GetInstance_pb_TTEntity((struct openb3d_openb3dcore_TEntity_obj*)o),45);
	struct BBDebugStm __stmt_40 = {0xa6bea28b2db61a66, 181, 0};
	bbOnDebugEnterStm(&__stmt_40);
	((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tentity_box_w =EntityFloat_(o->clas->f_GetInstance_pb_TTEntity((struct openb3d_openb3dcore_TEntity_obj*)o),46);
	struct BBDebugStm __stmt_41 = {0xa6bea28b2db61a66, 182, 0};
	bbOnDebugEnterStm(&__stmt_41);
	((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tentity_box_h =EntityFloat_(o->clas->f_GetInstance_pb_TTEntity((struct openb3d_openb3dcore_TEntity_obj*)o),47);
	struct BBDebugStm __stmt_42 = {0xa6bea28b2db61a66, 183, 0};
	bbOnDebugEnterStm(&__stmt_42);
	((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tentity_box_d =EntityFloat_(o->clas->f_GetInstance_pb_TTEntity((struct openb3d_openb3dcore_TEntity_obj*)o),48);
	struct BBDebugStm __stmt_43 = {0xa6bea28b2db61a66, 201, 0};
	bbOnDebugEnterStm(&__stmt_43);
	((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tentity_name =EntityString_(o->clas->f_GetInstance_pb_TTEntity((struct openb3d_openb3dcore_TEntity_obj*)o),24);
	struct BBDebugStm __stmt_44 = {0xa6bea28b2db61a66, 202, 0};
	bbOnDebugEnterStm(&__stmt_44);
	((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tentity_class_name =EntityString_(o->clas->f_GetInstance_pb_TTEntity((struct openb3d_openb3dcore_TEntity_obj*)o),25);
	struct BBDebugStm __stmt_45 = {0xa6bea28b2db61a66, 205, 0};
	bbOnDebugEnterStm(&__stmt_45);
	bbt_inst=EntityEntity_(o->clas->f_GetInstance_pb_TTEntity((struct openb3d_openb3dcore_TEntity_obj*)o),3);
	struct BBDebugStm __stmt_46 = {0xa6bea28b2db61a66, 206, 0};
	bbOnDebugEnterStm(&__stmt_46);
	((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tentity_parent =(struct openb3d_openb3dcore_TEntity_obj*)o->clas->f_GetObject_TTEntity_pb(bbt_inst);
	struct BBDebugStm __stmt_47 = {0xa6bea28b2db61a66, 208, 0};
	bbOnDebugEnterStm(&__stmt_47);
	if(((BBOBJECT)((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tentity_parent )!=&bbNullObject){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0xa6bea28b2db61a66, 208, 0};
		bbOnDebugEnterStm(&__stmt_0);
		((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tentity_parent ))->clas->m_CopyList_TTList((struct openb3d_openb3dcore_TEntity_obj*)((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tentity_parent ,(struct brl_linkedlist_TList_obj*)((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tentity_parent ))->_openb3d_openb3dcore_tentity_child_list );
		bbOnDebugLeaveScope();
	}
	struct BBDebugStm __stmt_48 = {0xa6bea28b2db61a66, 211, 0};
	bbOnDebugEnterStm(&__stmt_48);
	bbt_inst=EntityMatrix2_(o->clas->f_GetInstance_pb_TTEntity((struct openb3d_openb3dcore_TEntity_obj*)o),4);
	struct BBDebugStm __stmt_49 = {0xa6bea28b2db61a66, 212, 0};
	bbOnDebugEnterStm(&__stmt_49);
	((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tentity_mat =(struct openb3d_openb3dcore_TMatPtr_obj*)openb3d_openb3dcore_TMatPtr_GetObject_TTMatPtr_pb(bbt_inst);
	struct BBDebugStm __stmt_50 = {0xa6bea28b2db61a66, 213, 0};
	bbOnDebugEnterStm(&__stmt_50);
	if((((BBOBJECT)((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tentity_mat )==&bbNullObject) && (bbt_inst!=0)){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0xa6bea28b2db61a66, 213, 0};
		bbOnDebugEnterStm(&__stmt_0);
		((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tentity_mat =(struct openb3d_openb3dcore_TMatPtr_obj*)openb3d_openb3dcore_TMatPtr_CreateObject_TTMatPtr_pb(bbt_inst);
		bbOnDebugLeaveScope();
	}
	struct BBDebugStm __stmt_51 = {0xa6bea28b2db61a66, 214, 0};
	bbOnDebugEnterStm(&__stmt_51);
	bbt_inst=EntityMatrix2_(o->clas->f_GetInstance_pb_TTEntity((struct openb3d_openb3dcore_TEntity_obj*)o),5);
	struct BBDebugStm __stmt_52 = {0xa6bea28b2db61a66, 215, 0};
	bbOnDebugEnterStm(&__stmt_52);
	((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tentity_rotmat =(struct openb3d_openb3dcore_TMatPtr_obj*)openb3d_openb3dcore_TMatPtr_GetObject_TTMatPtr_pb(bbt_inst);
	struct BBDebugStm __stmt_53 = {0xa6bea28b2db61a66, 216, 0};
	bbOnDebugEnterStm(&__stmt_53);
	if((((BBOBJECT)((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tentity_rotmat )==&bbNullObject) && (bbt_inst!=0)){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0xa6bea28b2db61a66, 216, 0};
		bbOnDebugEnterStm(&__stmt_0);
		((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tentity_rotmat =(struct openb3d_openb3dcore_TMatPtr_obj*)openb3d_openb3dcore_TMatPtr_CreateObject_TTMatPtr_pb(bbt_inst);
		bbOnDebugLeaveScope();
	}
	struct BBDebugStm __stmt_54 = {0xa6bea28b2db61a66, 222, 0};
	bbOnDebugEnterStm(&__stmt_54);
	bbt_inst=EntityBrush_(o->clas->f_GetInstance_pb_TTEntity((struct openb3d_openb3dcore_TEntity_obj*)o),19);
	struct BBDebugStm __stmt_55 = {0xa6bea28b2db61a66, 223, 0};
	bbOnDebugEnterStm(&__stmt_55);
	((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tentity_brush =(struct openb3d_openb3dcore_TBrush_obj*)openb3d_openb3dcore_TBrush_GetObject_TTBrush_pb(bbt_inst);
	struct BBDebugStm __stmt_56 = {0xa6bea28b2db61a66, 224, 0};
	bbOnDebugEnterStm(&__stmt_56);
	if((((BBOBJECT)((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tentity_brush )==&bbNullObject) && (bbt_inst!=0)){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0xa6bea28b2db61a66, 224, 0};
		bbOnDebugEnterStm(&__stmt_0);
		((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tentity_brush =(struct openb3d_openb3dcore_TBrush_obj*)openb3d_openb3dcore_TBrush_CreateObject_TTBrush_pb(bbt_inst);
		bbOnDebugLeaveScope();
	}
	struct BBDebugStm __stmt_57 = {0xa6bea28b2db61a66, 226, 0};
	bbOnDebugEnterStm(&__stmt_57);
	o->clas->f_CopyList__i_TTList((struct brl_linkedlist_TList_obj*)openb3d_openb3dcore_TEntity_entity_list);
	struct BBDebugStm __stmt_58 = {0xa6bea28b2db61a66, 227, 0};
	bbOnDebugEnterStm(&__stmt_58);
	if((((BBOBJECT)((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tentity_parent )==&bbNullObject) && (((BBObject*)openb3d_openb3dcore_TGlobal3D_root_ent)!= &bbNullObject)){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0xa6bea28b2db61a66, 227, 0};
		bbOnDebugEnterStm(&__stmt_0);
		o->clas->f_CopyList__i_TTList((struct brl_linkedlist_TList_obj*)((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)openb3d_openb3dcore_TGlobal3D_root_ent))->_openb3d_openb3dcore_tentity_child_list );
		bbOnDebugLeaveScope();
	}
	struct BBDebugStm __stmt_59 = {0xa6bea28b2db61a66, 228, 0};
	bbOnDebugEnterStm(&__stmt_59);
	((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tentity_exists =1;
	bbOnDebugLeaveScope();
	return 0;
}
BBINT _openb3d_openb3dcore_TEntity_DebugFields_ii(struct openb3d_openb3dcore_TEntity_obj* o,BBINT bbt_debug_subobjects,BBINT bbt_debug_base_types){
	((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)o));
	BBSTRING bbt_pad=(&bbEmptyString);
	BBINT bbt_loop=0;
	struct BBDebugScope_5 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"DebugFields",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TEntity",
				.var_address=&o
			},
			{
				BBDEBUGDECL_LOCAL,
				"debug_subobjects",
				"i",
				.var_address=&bbt_debug_subobjects
			},
			{
				BBDEBUGDECL_LOCAL,
				"debug_base_types",
				"i",
				.var_address=&bbt_debug_base_types
			},
			{
				BBDEBUGDECL_LOCAL,
				"pad",
				"$",
				.var_address=&bbt_pad
			},
			{
				BBDEBUGDECL_LOCAL,
				"loop",
				"i",
				.var_address=&bbt_loop
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0xa6bea28b2db61a66, 234, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbt_pad=((BBString*)&bbEmptyString);
	struct BBDebugStm __stmt_1 = {0xa6bea28b2db61a66, 235, 0};
	bbOnDebugEnterStm(&__stmt_1);
	bbt_loop=bbt_debug_subobjects;
	struct BBDebugStm __stmt_2 = {0xa6bea28b2db61a66, 236, 0};
	bbOnDebugEnterStm(&__stmt_2);
	if(bbt_debug_base_types>bbt_debug_subobjects){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0xa6bea28b2db61a66, 236, 0};
		bbOnDebugEnterStm(&__stmt_0);
		bbt_loop=bbt_debug_base_types;
		bbOnDebugLeaveScope();
	}
	struct BBDebugStm __stmt_3 = {0xa6bea28b2db61a66, 237, 0};
	bbOnDebugEnterStm(&__stmt_3);
	{
		BBINT bbt_i=1;
		BBINT bbt_=bbt_loop;
		for(;(bbt_i<bbt_);bbt_i=(bbt_i+1)){
			struct BBDebugScope_1 __scope = {
				BBDEBUGSCOPE_LOCALBLOCK,
				0,
				{
					{
						BBDEBUGDECL_LOCAL,
						"i",
						"i",
						.var_address=&bbt_i
					},
					{
						BBDEBUGDECL_END
					}
				}
			};
			bbOnDebugEnterScope((BBDebugScope *)&__scope);
			struct BBDebugStm __stmt_0 = {0xa6bea28b2db61a66, 238, 0};
			bbOnDebugEnterStm(&__stmt_0);
			bbt_pad=bbStringConcat(bbt_pad,((BBString*)&_s0));
			bbOnDebugLeaveScope();
		}
	}
	struct BBDebugStm __stmt_4 = {0xa6bea28b2db61a66, 240, 0};
	bbOnDebugEnterStm(&__stmt_4);
	if(bbt_debug_subobjects!=0){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0xa6bea28b2db61a66, 240, 0};
		bbOnDebugEnterStm(&__stmt_0);
		bbt_debug_subobjects+=1;
		bbOnDebugLeaveScope();
	}
	struct BBDebugStm __stmt_5 = {0xa6bea28b2db61a66, 241, 0};
	bbOnDebugEnterStm(&__stmt_5);
	if(bbt_debug_base_types!=0){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0xa6bea28b2db61a66, 241, 0};
		bbOnDebugEnterStm(&__stmt_0);
		bbt_debug_base_types+=1;
		bbOnDebugLeaveScope();
	}
	struct BBDebugStm __stmt_6 = {0xa6bea28b2db61a66, 242, 0};
	bbOnDebugEnterStm(&__stmt_6);
	brl_blitz_DebugLog(bbStringConcat(bbStringConcat(bbt_pad,((BBString*)&_s48)),openb3d_openb3dcore_StringPtr(o->clas->f_GetInstance_pb_TTEntity((struct openb3d_openb3dcore_TEntity_obj*)o))));
	struct BBDebugStm __stmt_7 = {0xa6bea28b2db61a66, 245, 0};
	bbOnDebugEnterStm(&__stmt_7);
	if(((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tentity_order !=0){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0xa6bea28b2db61a66, 245, 0};
		bbOnDebugEnterStm(&__stmt_0);
		brl_blitz_DebugLog(bbStringConcat(bbStringConcat(bbt_pad,((BBString*)&_s49)),bbStringFromInt(((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tentity_order [0])));
		bbOnDebugLeaveScope();
	}else{
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0xa6bea28b2db61a66, 245, 0};
		bbOnDebugEnterStm(&__stmt_0);
		brl_blitz_DebugLog(bbStringConcat(bbt_pad,((BBString*)&_s50)));
		bbOnDebugLeaveScope();
	}
	struct BBDebugStm __stmt_8 = {0xa6bea28b2db61a66, 246, 0};
	bbOnDebugEnterStm(&__stmt_8);
	if(((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tentity_hide !=0){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0xa6bea28b2db61a66, 246, 0};
		bbOnDebugEnterStm(&__stmt_0);
		brl_blitz_DebugLog(bbStringConcat(bbStringConcat(bbt_pad,((BBString*)&_s51)),bbStringFromInt(((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tentity_hide [0])));
		bbOnDebugLeaveScope();
	}else{
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0xa6bea28b2db61a66, 246, 0};
		bbOnDebugEnterStm(&__stmt_0);
		brl_blitz_DebugLog(bbStringConcat(bbt_pad,((BBString*)&_s52)));
		bbOnDebugLeaveScope();
	}
	struct BBDebugStm __stmt_9 = {0xa6bea28b2db61a66, 247, 0};
	bbOnDebugEnterStm(&__stmt_9);
	if(((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tentity_anim !=0){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0xa6bea28b2db61a66, 247, 0};
		bbOnDebugEnterStm(&__stmt_0);
		brl_blitz_DebugLog(bbStringConcat(bbStringConcat(bbt_pad,((BBString*)&_s53)),bbStringFromInt(((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tentity_anim [0])));
		bbOnDebugLeaveScope();
	}else{
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0xa6bea28b2db61a66, 247, 0};
		bbOnDebugEnterStm(&__stmt_0);
		brl_blitz_DebugLog(bbStringConcat(bbt_pad,((BBString*)&_s54)));
		bbOnDebugLeaveScope();
	}
	struct BBDebugStm __stmt_10 = {0xa6bea28b2db61a66, 248, 0};
	bbOnDebugEnterStm(&__stmt_10);
	if(((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tentity_anim_render !=0){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0xa6bea28b2db61a66, 248, 0};
		bbOnDebugEnterStm(&__stmt_0);
		brl_blitz_DebugLog(bbStringConcat(bbStringConcat(bbt_pad,((BBString*)&_s55)),bbStringFromInt(((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tentity_anim_render [0])));
		bbOnDebugLeaveScope();
	}else{
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0xa6bea28b2db61a66, 248, 0};
		bbOnDebugEnterStm(&__stmt_0);
		brl_blitz_DebugLog(bbStringConcat(bbt_pad,((BBString*)&_s56)));
		bbOnDebugLeaveScope();
	}
	struct BBDebugStm __stmt_11 = {0xa6bea28b2db61a66, 249, 0};
	bbOnDebugEnterStm(&__stmt_11);
	if(((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tentity_anim_mode !=0){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0xa6bea28b2db61a66, 249, 0};
		bbOnDebugEnterStm(&__stmt_0);
		brl_blitz_DebugLog(bbStringConcat(bbStringConcat(bbt_pad,((BBString*)&_s57)),bbStringFromInt(((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tentity_anim_mode [0])));
		bbOnDebugLeaveScope();
	}else{
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0xa6bea28b2db61a66, 249, 0};
		bbOnDebugEnterStm(&__stmt_0);
		brl_blitz_DebugLog(bbStringConcat(bbt_pad,((BBString*)&_s58)));
		bbOnDebugLeaveScope();
	}
	struct BBDebugStm __stmt_12 = {0xa6bea28b2db61a66, 250, 0};
	bbOnDebugEnterStm(&__stmt_12);
	if(((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tentity_anim_seq !=0){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0xa6bea28b2db61a66, 250, 0};
		bbOnDebugEnterStm(&__stmt_0);
		brl_blitz_DebugLog(bbStringConcat(bbStringConcat(bbt_pad,((BBString*)&_s59)),bbStringFromInt(((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tentity_anim_seq [0])));
		bbOnDebugLeaveScope();
	}else{
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0xa6bea28b2db61a66, 250, 0};
		bbOnDebugEnterStm(&__stmt_0);
		brl_blitz_DebugLog(bbStringConcat(bbt_pad,((BBString*)&_s60)));
		bbOnDebugLeaveScope();
	}
	struct BBDebugStm __stmt_13 = {0xa6bea28b2db61a66, 251, 0};
	bbOnDebugEnterStm(&__stmt_13);
	if(((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tentity_anim_trans !=0){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0xa6bea28b2db61a66, 251, 0};
		bbOnDebugEnterStm(&__stmt_0);
		brl_blitz_DebugLog(bbStringConcat(bbStringConcat(bbt_pad,((BBString*)&_s61)),bbStringFromInt(((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tentity_anim_trans [0])));
		bbOnDebugLeaveScope();
	}else{
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0xa6bea28b2db61a66, 251, 0};
		bbOnDebugEnterStm(&__stmt_0);
		brl_blitz_DebugLog(bbStringConcat(bbt_pad,((BBString*)&_s62)));
		bbOnDebugLeaveScope();
	}
	struct BBDebugStm __stmt_14 = {0xa6bea28b2db61a66, 252, 0};
	bbOnDebugEnterStm(&__stmt_14);
	if(((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tentity_anim_dir !=0){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0xa6bea28b2db61a66, 252, 0};
		bbOnDebugEnterStm(&__stmt_0);
		brl_blitz_DebugLog(bbStringConcat(bbStringConcat(bbt_pad,((BBString*)&_s63)),bbStringFromInt(((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tentity_anim_dir [0])));
		bbOnDebugLeaveScope();
	}else{
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0xa6bea28b2db61a66, 252, 0};
		bbOnDebugEnterStm(&__stmt_0);
		brl_blitz_DebugLog(bbStringConcat(bbt_pad,((BBString*)&_s64)));
		bbOnDebugLeaveScope();
	}
	struct BBDebugStm __stmt_15 = {0xa6bea28b2db61a66, 253, 0};
	bbOnDebugEnterStm(&__stmt_15);
	if(((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tentity_anim_seqs_first !=0){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0xa6bea28b2db61a66, 253, 0};
		bbOnDebugEnterStm(&__stmt_0);
		brl_blitz_DebugLog(bbStringConcat(bbStringConcat(bbt_pad,((BBString*)&_s65)),bbStringFromInt(((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tentity_anim_seqs_first [0])));
		bbOnDebugLeaveScope();
	}else{
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0xa6bea28b2db61a66, 253, 0};
		bbOnDebugEnterStm(&__stmt_0);
		brl_blitz_DebugLog(bbStringConcat(bbt_pad,((BBString*)&_s66)));
		bbOnDebugLeaveScope();
	}
	struct BBDebugStm __stmt_16 = {0xa6bea28b2db61a66, 254, 0};
	bbOnDebugEnterStm(&__stmt_16);
	if(((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tentity_anim_seqs_last !=0){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0xa6bea28b2db61a66, 254, 0};
		bbOnDebugEnterStm(&__stmt_0);
		brl_blitz_DebugLog(bbStringConcat(bbStringConcat(bbt_pad,((BBString*)&_s67)),bbStringFromInt(((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tentity_anim_seqs_last [0])));
		bbOnDebugLeaveScope();
	}else{
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0xa6bea28b2db61a66, 254, 0};
		bbOnDebugEnterStm(&__stmt_0);
		brl_blitz_DebugLog(bbStringConcat(bbt_pad,((BBString*)&_s68)));
		bbOnDebugLeaveScope();
	}
	struct BBDebugStm __stmt_17 = {0xa6bea28b2db61a66, 255, 0};
	bbOnDebugEnterStm(&__stmt_17);
	if(((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tentity_no_seqs !=0){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0xa6bea28b2db61a66, 255, 0};
		bbOnDebugEnterStm(&__stmt_0);
		brl_blitz_DebugLog(bbStringConcat(bbStringConcat(bbt_pad,((BBString*)&_s69)),bbStringFromInt(((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tentity_no_seqs [0])));
		bbOnDebugLeaveScope();
	}else{
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0xa6bea28b2db61a66, 255, 0};
		bbOnDebugEnterStm(&__stmt_0);
		brl_blitz_DebugLog(bbStringConcat(bbt_pad,((BBString*)&_s70)));
		bbOnDebugLeaveScope();
	}
	struct BBDebugStm __stmt_18 = {0xa6bea28b2db61a66, 256, 0};
	bbOnDebugEnterStm(&__stmt_18);
	if(((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tentity_anim_update !=0){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0xa6bea28b2db61a66, 256, 0};
		bbOnDebugEnterStm(&__stmt_0);
		brl_blitz_DebugLog(bbStringConcat(bbStringConcat(bbt_pad,((BBString*)&_s71)),bbStringFromInt(((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tentity_anim_update [0])));
		bbOnDebugLeaveScope();
	}else{
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0xa6bea28b2db61a66, 256, 0};
		bbOnDebugEnterStm(&__stmt_0);
		brl_blitz_DebugLog(bbStringConcat(bbt_pad,((BBString*)&_s72)));
		bbOnDebugLeaveScope();
	}
	struct BBDebugStm __stmt_19 = {0xa6bea28b2db61a66, 257, 0};
	bbOnDebugEnterStm(&__stmt_19);
	if(((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tentity_anim_list !=0){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0xa6bea28b2db61a66, 257, 0};
		bbOnDebugEnterStm(&__stmt_0);
		brl_blitz_DebugLog(bbStringConcat(bbStringConcat(bbt_pad,((BBString*)&_s73)),bbStringFromInt(((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tentity_anim_list [0])));
		bbOnDebugLeaveScope();
	}else{
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0xa6bea28b2db61a66, 257, 0};
		bbOnDebugEnterStm(&__stmt_0);
		brl_blitz_DebugLog(bbStringConcat(bbt_pad,((BBString*)&_s74)));
		bbOnDebugLeaveScope();
	}
	struct BBDebugStm __stmt_20 = {0xa6bea28b2db61a66, 258, 0};
	bbOnDebugEnterStm(&__stmt_20);
	if(((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tentity_collision_type !=0){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0xa6bea28b2db61a66, 258, 0};
		bbOnDebugEnterStm(&__stmt_0);
		brl_blitz_DebugLog(bbStringConcat(bbStringConcat(bbt_pad,((BBString*)&_s75)),bbStringFromInt(((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tentity_collision_type [0])));
		bbOnDebugLeaveScope();
	}else{
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0xa6bea28b2db61a66, 258, 0};
		bbOnDebugEnterStm(&__stmt_0);
		brl_blitz_DebugLog(bbStringConcat(bbt_pad,((BBString*)&_s76)));
		bbOnDebugLeaveScope();
	}
	struct BBDebugStm __stmt_21 = {0xa6bea28b2db61a66, 259, 0};
	bbOnDebugEnterStm(&__stmt_21);
	if(((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tentity_no_collisions !=0){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0xa6bea28b2db61a66, 259, 0};
		bbOnDebugEnterStm(&__stmt_0);
		brl_blitz_DebugLog(bbStringConcat(bbStringConcat(bbt_pad,((BBString*)&_s77)),bbStringFromInt(((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tentity_no_collisions [0])));
		bbOnDebugLeaveScope();
	}else{
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0xa6bea28b2db61a66, 259, 0};
		bbOnDebugEnterStm(&__stmt_0);
		brl_blitz_DebugLog(bbStringConcat(bbt_pad,((BBString*)&_s78)));
		bbOnDebugLeaveScope();
	}
	struct BBDebugStm __stmt_22 = {0xa6bea28b2db61a66, 262, 0};
	bbOnDebugEnterStm(&__stmt_22);
	if(((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tentity_pick_mode !=0){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0xa6bea28b2db61a66, 262, 0};
		bbOnDebugEnterStm(&__stmt_0);
		brl_blitz_DebugLog(bbStringConcat(bbStringConcat(bbt_pad,((BBString*)&_s79)),bbStringFromInt(((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tentity_pick_mode [0])));
		bbOnDebugLeaveScope();
	}else{
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0xa6bea28b2db61a66, 262, 0};
		bbOnDebugEnterStm(&__stmt_0);
		brl_blitz_DebugLog(bbStringConcat(bbt_pad,((BBString*)&_s80)));
		bbOnDebugLeaveScope();
	}
	struct BBDebugStm __stmt_23 = {0xa6bea28b2db61a66, 263, 0};
	bbOnDebugEnterStm(&__stmt_23);
	if(((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tentity_obscurer !=0){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0xa6bea28b2db61a66, 263, 0};
		bbOnDebugEnterStm(&__stmt_0);
		brl_blitz_DebugLog(bbStringConcat(bbStringConcat(bbt_pad,((BBString*)&_s81)),bbStringFromInt(((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tentity_obscurer [0])));
		bbOnDebugLeaveScope();
	}else{
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0xa6bea28b2db61a66, 263, 0};
		bbOnDebugEnterStm(&__stmt_0);
		brl_blitz_DebugLog(bbStringConcat(bbt_pad,((BBString*)&_s82)));
		bbOnDebugLeaveScope();
	}
	struct BBDebugStm __stmt_24 = {0xa6bea28b2db61a66, 266, 0};
	bbOnDebugEnterStm(&__stmt_24);
	if(((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tentity_px !=0){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0xa6bea28b2db61a66, 266, 0};
		bbOnDebugEnterStm(&__stmt_0);
		brl_blitz_DebugLog(bbStringConcat(bbStringConcat(bbt_pad,((BBString*)&_s83)),bbStringFromFloat(((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tentity_px [0])));
		bbOnDebugLeaveScope();
	}else{
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0xa6bea28b2db61a66, 266, 0};
		bbOnDebugEnterStm(&__stmt_0);
		brl_blitz_DebugLog(bbStringConcat(bbt_pad,((BBString*)&_s84)));
		bbOnDebugLeaveScope();
	}
	struct BBDebugStm __stmt_25 = {0xa6bea28b2db61a66, 267, 0};
	bbOnDebugEnterStm(&__stmt_25);
	if(((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tentity_py !=0){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0xa6bea28b2db61a66, 267, 0};
		bbOnDebugEnterStm(&__stmt_0);
		brl_blitz_DebugLog(bbStringConcat(bbStringConcat(bbt_pad,((BBString*)&_s85)),bbStringFromFloat(((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tentity_py [0])));
		bbOnDebugLeaveScope();
	}else{
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0xa6bea28b2db61a66, 267, 0};
		bbOnDebugEnterStm(&__stmt_0);
		brl_blitz_DebugLog(bbStringConcat(bbt_pad,((BBString*)&_s86)));
		bbOnDebugLeaveScope();
	}
	struct BBDebugStm __stmt_26 = {0xa6bea28b2db61a66, 268, 0};
	bbOnDebugEnterStm(&__stmt_26);
	if(((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tentity_pz !=0){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0xa6bea28b2db61a66, 268, 0};
		bbOnDebugEnterStm(&__stmt_0);
		brl_blitz_DebugLog(bbStringConcat(bbStringConcat(bbt_pad,((BBString*)&_s87)),bbStringFromFloat(((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tentity_pz [0])));
		bbOnDebugLeaveScope();
	}else{
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0xa6bea28b2db61a66, 268, 0};
		bbOnDebugEnterStm(&__stmt_0);
		brl_blitz_DebugLog(bbStringConcat(bbt_pad,((BBString*)&_s88)));
		bbOnDebugLeaveScope();
	}
	struct BBDebugStm __stmt_27 = {0xa6bea28b2db61a66, 269, 0};
	bbOnDebugEnterStm(&__stmt_27);
	if(((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tentity_sx !=0){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0xa6bea28b2db61a66, 269, 0};
		bbOnDebugEnterStm(&__stmt_0);
		brl_blitz_DebugLog(bbStringConcat(bbStringConcat(bbt_pad,((BBString*)&_s89)),bbStringFromFloat(((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tentity_sx [0])));
		bbOnDebugLeaveScope();
	}else{
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0xa6bea28b2db61a66, 269, 0};
		bbOnDebugEnterStm(&__stmt_0);
		brl_blitz_DebugLog(bbStringConcat(bbt_pad,((BBString*)&_s90)));
		bbOnDebugLeaveScope();
	}
	struct BBDebugStm __stmt_28 = {0xa6bea28b2db61a66, 270, 0};
	bbOnDebugEnterStm(&__stmt_28);
	if(((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tentity_sy !=0){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0xa6bea28b2db61a66, 270, 0};
		bbOnDebugEnterStm(&__stmt_0);
		brl_blitz_DebugLog(bbStringConcat(bbStringConcat(bbt_pad,((BBString*)&_s91)),bbStringFromFloat(((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tentity_sy [0])));
		bbOnDebugLeaveScope();
	}else{
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0xa6bea28b2db61a66, 270, 0};
		bbOnDebugEnterStm(&__stmt_0);
		brl_blitz_DebugLog(bbStringConcat(bbt_pad,((BBString*)&_s92)));
		bbOnDebugLeaveScope();
	}
	struct BBDebugStm __stmt_29 = {0xa6bea28b2db61a66, 271, 0};
	bbOnDebugEnterStm(&__stmt_29);
	if(((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tentity_sz !=0){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0xa6bea28b2db61a66, 271, 0};
		bbOnDebugEnterStm(&__stmt_0);
		brl_blitz_DebugLog(bbStringConcat(bbStringConcat(bbt_pad,((BBString*)&_s93)),bbStringFromFloat(((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tentity_sz [0])));
		bbOnDebugLeaveScope();
	}else{
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0xa6bea28b2db61a66, 271, 0};
		bbOnDebugEnterStm(&__stmt_0);
		brl_blitz_DebugLog(bbStringConcat(bbt_pad,((BBString*)&_s94)));
		bbOnDebugLeaveScope();
	}
	struct BBDebugStm __stmt_30 = {0xa6bea28b2db61a66, 272, 0};
	bbOnDebugEnterStm(&__stmt_30);
	if(((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tentity_rx !=0){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0xa6bea28b2db61a66, 272, 0};
		bbOnDebugEnterStm(&__stmt_0);
		brl_blitz_DebugLog(bbStringConcat(bbStringConcat(bbt_pad,((BBString*)&_s95)),bbStringFromFloat(((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tentity_rx [0])));
		bbOnDebugLeaveScope();
	}else{
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0xa6bea28b2db61a66, 272, 0};
		bbOnDebugEnterStm(&__stmt_0);
		brl_blitz_DebugLog(bbStringConcat(bbt_pad,((BBString*)&_s96)));
		bbOnDebugLeaveScope();
	}
	struct BBDebugStm __stmt_31 = {0xa6bea28b2db61a66, 273, 0};
	bbOnDebugEnterStm(&__stmt_31);
	if(((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tentity_ry !=0){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0xa6bea28b2db61a66, 273, 0};
		bbOnDebugEnterStm(&__stmt_0);
		brl_blitz_DebugLog(bbStringConcat(bbStringConcat(bbt_pad,((BBString*)&_s97)),bbStringFromFloat(((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tentity_ry [0])));
		bbOnDebugLeaveScope();
	}else{
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0xa6bea28b2db61a66, 273, 0};
		bbOnDebugEnterStm(&__stmt_0);
		brl_blitz_DebugLog(bbStringConcat(bbt_pad,((BBString*)&_s98)));
		bbOnDebugLeaveScope();
	}
	struct BBDebugStm __stmt_32 = {0xa6bea28b2db61a66, 274, 0};
	bbOnDebugEnterStm(&__stmt_32);
	if(((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tentity_rz !=0){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0xa6bea28b2db61a66, 274, 0};
		bbOnDebugEnterStm(&__stmt_0);
		brl_blitz_DebugLog(bbStringConcat(bbStringConcat(bbt_pad,((BBString*)&_s99)),bbStringFromFloat(((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tentity_rz [0])));
		bbOnDebugLeaveScope();
	}else{
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0xa6bea28b2db61a66, 274, 0};
		bbOnDebugEnterStm(&__stmt_0);
		brl_blitz_DebugLog(bbStringConcat(bbt_pad,((BBString*)&_s100)));
		bbOnDebugLeaveScope();
	}
	struct BBDebugStm __stmt_33 = {0xa6bea28b2db61a66, 275, 0};
	bbOnDebugEnterStm(&__stmt_33);
	if(((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tentity_qw !=0){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0xa6bea28b2db61a66, 275, 0};
		bbOnDebugEnterStm(&__stmt_0);
		brl_blitz_DebugLog(bbStringConcat(bbStringConcat(bbt_pad,((BBString*)&_s101)),bbStringFromFloat(((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tentity_qw [0])));
		bbOnDebugLeaveScope();
	}else{
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0xa6bea28b2db61a66, 275, 0};
		bbOnDebugEnterStm(&__stmt_0);
		brl_blitz_DebugLog(bbStringConcat(bbt_pad,((BBString*)&_s102)));
		bbOnDebugLeaveScope();
	}
	struct BBDebugStm __stmt_34 = {0xa6bea28b2db61a66, 276, 0};
	bbOnDebugEnterStm(&__stmt_34);
	if(((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tentity_qx !=0){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0xa6bea28b2db61a66, 276, 0};
		bbOnDebugEnterStm(&__stmt_0);
		brl_blitz_DebugLog(bbStringConcat(bbStringConcat(bbt_pad,((BBString*)&_s103)),bbStringFromFloat(((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tentity_qx [0])));
		bbOnDebugLeaveScope();
	}else{
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0xa6bea28b2db61a66, 276, 0};
		bbOnDebugEnterStm(&__stmt_0);
		brl_blitz_DebugLog(bbStringConcat(bbt_pad,((BBString*)&_s104)));
		bbOnDebugLeaveScope();
	}
	struct BBDebugStm __stmt_35 = {0xa6bea28b2db61a66, 277, 0};
	bbOnDebugEnterStm(&__stmt_35);
	if(((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tentity_qy !=0){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0xa6bea28b2db61a66, 277, 0};
		bbOnDebugEnterStm(&__stmt_0);
		brl_blitz_DebugLog(bbStringConcat(bbStringConcat(bbt_pad,((BBString*)&_s105)),bbStringFromFloat(((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tentity_qy [0])));
		bbOnDebugLeaveScope();
	}else{
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0xa6bea28b2db61a66, 277, 0};
		bbOnDebugEnterStm(&__stmt_0);
		brl_blitz_DebugLog(bbStringConcat(bbt_pad,((BBString*)&_s106)));
		bbOnDebugLeaveScope();
	}
	struct BBDebugStm __stmt_36 = {0xa6bea28b2db61a66, 278, 0};
	bbOnDebugEnterStm(&__stmt_36);
	if(((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tentity_qz !=0){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0xa6bea28b2db61a66, 278, 0};
		bbOnDebugEnterStm(&__stmt_0);
		brl_blitz_DebugLog(bbStringConcat(bbStringConcat(bbt_pad,((BBString*)&_s107)),bbStringFromFloat(((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tentity_qz [0])));
		bbOnDebugLeaveScope();
	}else{
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0xa6bea28b2db61a66, 278, 0};
		bbOnDebugEnterStm(&__stmt_0);
		brl_blitz_DebugLog(bbStringConcat(bbt_pad,((BBString*)&_s108)));
		bbOnDebugLeaveScope();
	}
	struct BBDebugStm __stmt_37 = {0xa6bea28b2db61a66, 279, 0};
	bbOnDebugEnterStm(&__stmt_37);
	if(((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tentity_alpha_order !=0){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0xa6bea28b2db61a66, 279, 0};
		bbOnDebugEnterStm(&__stmt_0);
		brl_blitz_DebugLog(bbStringConcat(bbStringConcat(bbt_pad,((BBString*)&_s109)),bbStringFromFloat(((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tentity_alpha_order [0])));
		bbOnDebugLeaveScope();
	}else{
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0xa6bea28b2db61a66, 279, 0};
		bbOnDebugEnterStm(&__stmt_0);
		brl_blitz_DebugLog(bbStringConcat(bbt_pad,((BBString*)&_s110)));
		bbOnDebugLeaveScope();
	}
	struct BBDebugStm __stmt_38 = {0xa6bea28b2db61a66, 280, 0};
	bbOnDebugEnterStm(&__stmt_38);
	if(((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tentity_cull_radius !=0){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0xa6bea28b2db61a66, 280, 0};
		bbOnDebugEnterStm(&__stmt_0);
		brl_blitz_DebugLog(bbStringConcat(bbStringConcat(bbt_pad,((BBString*)&_s111)),bbStringFromFloat(((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tentity_cull_radius [0])));
		bbOnDebugLeaveScope();
	}else{
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0xa6bea28b2db61a66, 280, 0};
		bbOnDebugEnterStm(&__stmt_0);
		brl_blitz_DebugLog(bbStringConcat(bbt_pad,((BBString*)&_s112)));
		bbOnDebugLeaveScope();
	}
	struct BBDebugStm __stmt_39 = {0xa6bea28b2db61a66, 281, 0};
	bbOnDebugEnterStm(&__stmt_39);
	if(((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tentity_anim_time !=0){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0xa6bea28b2db61a66, 281, 0};
		bbOnDebugEnterStm(&__stmt_0);
		brl_blitz_DebugLog(bbStringConcat(bbStringConcat(bbt_pad,((BBString*)&_s113)),bbStringFromFloat(((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tentity_anim_time [0])));
		bbOnDebugLeaveScope();
	}else{
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0xa6bea28b2db61a66, 281, 0};
		bbOnDebugEnterStm(&__stmt_0);
		brl_blitz_DebugLog(bbStringConcat(bbt_pad,((BBString*)&_s114)));
		bbOnDebugLeaveScope();
	}
	struct BBDebugStm __stmt_40 = {0xa6bea28b2db61a66, 282, 0};
	bbOnDebugEnterStm(&__stmt_40);
	if(((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tentity_anim_speed !=0){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0xa6bea28b2db61a66, 282, 0};
		bbOnDebugEnterStm(&__stmt_0);
		brl_blitz_DebugLog(bbStringConcat(bbStringConcat(bbt_pad,((BBString*)&_s34)),bbStringFromFloat(((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tentity_anim_speed [0])));
		bbOnDebugLeaveScope();
	}else{
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0xa6bea28b2db61a66, 282, 0};
		bbOnDebugEnterStm(&__stmt_0);
		brl_blitz_DebugLog(bbStringConcat(bbt_pad,((BBString*)&_s35)));
		bbOnDebugLeaveScope();
	}
	struct BBDebugStm __stmt_41 = {0xa6bea28b2db61a66, 283, 0};
	bbOnDebugEnterStm(&__stmt_41);
	if(((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tentity_radius_x !=0){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0xa6bea28b2db61a66, 283, 0};
		bbOnDebugEnterStm(&__stmt_0);
		brl_blitz_DebugLog(bbStringConcat(bbStringConcat(bbt_pad,((BBString*)&_s115)),bbStringFromFloat(((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tentity_radius_x [0])));
		bbOnDebugLeaveScope();
	}else{
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0xa6bea28b2db61a66, 283, 0};
		bbOnDebugEnterStm(&__stmt_0);
		brl_blitz_DebugLog(bbStringConcat(bbt_pad,((BBString*)&_s116)));
		bbOnDebugLeaveScope();
	}
	struct BBDebugStm __stmt_42 = {0xa6bea28b2db61a66, 284, 0};
	bbOnDebugEnterStm(&__stmt_42);
	if(((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tentity_radius_y !=0){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0xa6bea28b2db61a66, 284, 0};
		bbOnDebugEnterStm(&__stmt_0);
		brl_blitz_DebugLog(bbStringConcat(bbStringConcat(bbt_pad,((BBString*)&_s117)),bbStringFromFloat(((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tentity_radius_y [0])));
		bbOnDebugLeaveScope();
	}else{
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0xa6bea28b2db61a66, 284, 0};
		bbOnDebugEnterStm(&__stmt_0);
		brl_blitz_DebugLog(bbStringConcat(bbt_pad,((BBString*)&_s118)));
		bbOnDebugLeaveScope();
	}
	struct BBDebugStm __stmt_43 = {0xa6bea28b2db61a66, 285, 0};
	bbOnDebugEnterStm(&__stmt_43);
	if(((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tentity_box_x !=0){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0xa6bea28b2db61a66, 285, 0};
		bbOnDebugEnterStm(&__stmt_0);
		brl_blitz_DebugLog(bbStringConcat(bbStringConcat(bbt_pad,((BBString*)&_s119)),bbStringFromFloat(((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tentity_box_x [0])));
		bbOnDebugLeaveScope();
	}else{
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0xa6bea28b2db61a66, 285, 0};
		bbOnDebugEnterStm(&__stmt_0);
		brl_blitz_DebugLog(bbStringConcat(bbt_pad,((BBString*)&_s120)));
		bbOnDebugLeaveScope();
	}
	struct BBDebugStm __stmt_44 = {0xa6bea28b2db61a66, 286, 0};
	bbOnDebugEnterStm(&__stmt_44);
	if(((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tentity_box_y !=0){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0xa6bea28b2db61a66, 286, 0};
		bbOnDebugEnterStm(&__stmt_0);
		brl_blitz_DebugLog(bbStringConcat(bbStringConcat(bbt_pad,((BBString*)&_s121)),bbStringFromFloat(((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tentity_box_y [0])));
		bbOnDebugLeaveScope();
	}else{
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0xa6bea28b2db61a66, 286, 0};
		bbOnDebugEnterStm(&__stmt_0);
		brl_blitz_DebugLog(bbStringConcat(bbt_pad,((BBString*)&_s122)));
		bbOnDebugLeaveScope();
	}
	struct BBDebugStm __stmt_45 = {0xa6bea28b2db61a66, 287, 0};
	bbOnDebugEnterStm(&__stmt_45);
	if(((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tentity_box_z !=0){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0xa6bea28b2db61a66, 287, 0};
		bbOnDebugEnterStm(&__stmt_0);
		brl_blitz_DebugLog(bbStringConcat(bbStringConcat(bbt_pad,((BBString*)&_s123)),bbStringFromFloat(((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tentity_box_z [0])));
		bbOnDebugLeaveScope();
	}else{
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0xa6bea28b2db61a66, 287, 0};
		bbOnDebugEnterStm(&__stmt_0);
		brl_blitz_DebugLog(bbStringConcat(bbt_pad,((BBString*)&_s124)));
		bbOnDebugLeaveScope();
	}
	struct BBDebugStm __stmt_46 = {0xa6bea28b2db61a66, 288, 0};
	bbOnDebugEnterStm(&__stmt_46);
	if(((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tentity_box_w !=0){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0xa6bea28b2db61a66, 288, 0};
		bbOnDebugEnterStm(&__stmt_0);
		brl_blitz_DebugLog(bbStringConcat(bbStringConcat(bbt_pad,((BBString*)&_s125)),bbStringFromFloat(((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tentity_box_w [0])));
		bbOnDebugLeaveScope();
	}else{
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0xa6bea28b2db61a66, 288, 0};
		bbOnDebugEnterStm(&__stmt_0);
		brl_blitz_DebugLog(bbStringConcat(bbt_pad,((BBString*)&_s126)));
		bbOnDebugLeaveScope();
	}
	struct BBDebugStm __stmt_47 = {0xa6bea28b2db61a66, 289, 0};
	bbOnDebugEnterStm(&__stmt_47);
	if(((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tentity_box_h !=0){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0xa6bea28b2db61a66, 289, 0};
		bbOnDebugEnterStm(&__stmt_0);
		brl_blitz_DebugLog(bbStringConcat(bbStringConcat(bbt_pad,((BBString*)&_s127)),bbStringFromFloat(((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tentity_box_h [0])));
		bbOnDebugLeaveScope();
	}else{
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0xa6bea28b2db61a66, 289, 0};
		bbOnDebugEnterStm(&__stmt_0);
		brl_blitz_DebugLog(bbStringConcat(bbt_pad,((BBString*)&_s128)));
		bbOnDebugLeaveScope();
	}
	struct BBDebugStm __stmt_48 = {0xa6bea28b2db61a66, 290, 0};
	bbOnDebugEnterStm(&__stmt_48);
	if(((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tentity_box_d !=0){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0xa6bea28b2db61a66, 290, 0};
		bbOnDebugEnterStm(&__stmt_0);
		brl_blitz_DebugLog(bbStringConcat(bbStringConcat(bbt_pad,((BBString*)&_s129)),bbStringFromFloat(((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tentity_box_d [0])));
		bbOnDebugLeaveScope();
	}else{
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0xa6bea28b2db61a66, 290, 0};
		bbOnDebugEnterStm(&__stmt_0);
		brl_blitz_DebugLog(bbStringConcat(bbt_pad,((BBString*)&_s130)));
		bbOnDebugLeaveScope();
	}
	struct BBDebugStm __stmt_49 = {0xa6bea28b2db61a66, 308, 0};
	bbOnDebugEnterStm(&__stmt_49);
	if(((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tentity_name !=0){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0xa6bea28b2db61a66, 308, 0};
		bbOnDebugEnterStm(&__stmt_0);
		((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)o));
		brl_blitz_DebugLog(bbStringConcat(bbStringConcat(bbt_pad,((BBString*)&_s131)),((struct openb3d_openb3dcore_TEntity_obj*)o)->clas->m_GetString_pb((struct openb3d_openb3dcore_TEntity_obj*)o,((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tentity_name )));
		bbOnDebugLeaveScope();
	}else{
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0xa6bea28b2db61a66, 308, 0};
		bbOnDebugEnterStm(&__stmt_0);
		brl_blitz_DebugLog(bbStringConcat(bbt_pad,((BBString*)&_s132)));
		bbOnDebugLeaveScope();
	}
	struct BBDebugStm __stmt_50 = {0xa6bea28b2db61a66, 309, 0};
	bbOnDebugEnterStm(&__stmt_50);
	if(((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tentity_class_name !=0){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0xa6bea28b2db61a66, 309, 0};
		bbOnDebugEnterStm(&__stmt_0);
		((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)o));
		brl_blitz_DebugLog(bbStringConcat(bbStringConcat(bbt_pad,((BBString*)&_s133)),((struct openb3d_openb3dcore_TEntity_obj*)o)->clas->m_GetString_pb((struct openb3d_openb3dcore_TEntity_obj*)o,((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tentity_class_name )));
		bbOnDebugLeaveScope();
	}else{
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0xa6bea28b2db61a66, 309, 0};
		bbOnDebugEnterStm(&__stmt_0);
		brl_blitz_DebugLog(bbStringConcat(bbt_pad,((BBString*)&_s134)));
		bbOnDebugLeaveScope();
	}
	struct BBDebugStm __stmt_51 = {0xa6bea28b2db61a66, 312, 0};
	bbOnDebugEnterStm(&__stmt_51);
	brl_blitz_DebugLog(bbStringConcat(bbStringConcat(bbt_pad,((BBString*)&_s135)),openb3d_openb3dcore_StringPtr(o->clas->f_GetInstance_pb_TTEntity((struct openb3d_openb3dcore_TEntity_obj*)((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tentity_parent ))));
	struct BBDebugStm __stmt_52 = {0xa6bea28b2db61a66, 313, 0};
	bbOnDebugEnterStm(&__stmt_52);
	if((bbt_debug_subobjects!=0) && (((BBOBJECT)((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tentity_parent )!=&bbNullObject)){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0xa6bea28b2db61a66, 313, 0};
		bbOnDebugEnterStm(&__stmt_0);
		((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tentity_parent ))->clas->m_DebugFields_ii((struct openb3d_openb3dcore_TEntity_obj*)((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tentity_parent ,bbt_debug_subobjects,bbt_debug_base_types);
		bbOnDebugLeaveScope();
	}
	struct BBDebugStm __stmt_53 = {0xa6bea28b2db61a66, 316, 0};
	bbOnDebugEnterStm(&__stmt_53);
	brl_blitz_DebugLog(bbStringConcat(bbStringConcat(bbt_pad,((BBString*)&_s136)),openb3d_openb3dcore_StringPtr(openb3d_openb3dcore_TMatPtr_GetInstance_pb_TTMatPtr((struct openb3d_openb3dcore_TMatPtr_obj*)((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tentity_mat ))));
	struct BBDebugStm __stmt_54 = {0xa6bea28b2db61a66, 317, 0};
	bbOnDebugEnterStm(&__stmt_54);
	if((bbt_debug_subobjects!=0) && (((BBOBJECT)((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tentity_mat )!=&bbNullObject)){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0xa6bea28b2db61a66, 317, 0};
		bbOnDebugEnterStm(&__stmt_0);
		((struct openb3d_openb3dcore_TMatPtr_obj*)bbNullObjectTest((BBObject*)((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tentity_mat ))->clas->m_DebugFields_ii((struct openb3d_openb3dcore_TMatPtr_obj*)((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tentity_mat ,bbt_debug_subobjects,bbt_debug_base_types);
		bbOnDebugLeaveScope();
	}
	struct BBDebugStm __stmt_55 = {0xa6bea28b2db61a66, 318, 0};
	bbOnDebugEnterStm(&__stmt_55);
	brl_blitz_DebugLog(bbStringConcat(bbStringConcat(bbt_pad,((BBString*)&_s137)),openb3d_openb3dcore_StringPtr(openb3d_openb3dcore_TMatPtr_GetInstance_pb_TTMatPtr((struct openb3d_openb3dcore_TMatPtr_obj*)((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tentity_rotmat ))));
	struct BBDebugStm __stmt_56 = {0xa6bea28b2db61a66, 319, 0};
	bbOnDebugEnterStm(&__stmt_56);
	if((bbt_debug_subobjects!=0) && (((BBOBJECT)((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tentity_rotmat )!=&bbNullObject)){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0xa6bea28b2db61a66, 319, 0};
		bbOnDebugEnterStm(&__stmt_0);
		((struct openb3d_openb3dcore_TMatPtr_obj*)bbNullObjectTest((BBObject*)((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tentity_rotmat ))->clas->m_DebugFields_ii((struct openb3d_openb3dcore_TMatPtr_obj*)((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tentity_rotmat ,bbt_debug_subobjects,bbt_debug_base_types);
		bbOnDebugLeaveScope();
	}
	struct BBDebugStm __stmt_57 = {0xa6bea28b2db61a66, 324, 0};
	bbOnDebugEnterStm(&__stmt_57);
	brl_blitz_DebugLog(bbStringConcat(bbStringConcat(bbt_pad,((BBString*)&_s138)),openb3d_openb3dcore_StringPtr(openb3d_openb3dcore_TBrush_GetInstance_pb_TTBrush((struct openb3d_openb3dcore_TBrush_obj*)((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tentity_brush ))));
	struct BBDebugStm __stmt_58 = {0xa6bea28b2db61a66, 325, 0};
	bbOnDebugEnterStm(&__stmt_58);
	if((bbt_debug_subobjects!=0) && (((BBOBJECT)((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tentity_brush )!=&bbNullObject)){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0xa6bea28b2db61a66, 325, 0};
		bbOnDebugEnterStm(&__stmt_0);
		((struct openb3d_openb3dcore_TBrush_obj*)bbNullObjectTest((BBObject*)((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tentity_brush ))->clas->m_DebugFields_ii((struct openb3d_openb3dcore_TBrush_obj*)((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tentity_brush ,bbt_debug_subobjects,bbt_debug_base_types);
		bbOnDebugLeaveScope();
	}
	struct BBDebugStm __stmt_59 = {0xa6bea28b2db61a66, 328, 0};
	bbOnDebugEnterStm(&__stmt_59);
	struct brl_linkedlist_TListEnum_obj* bbt_2=(struct brl_linkedlist_TListEnum_obj*)((struct brl_linkedlist_TList_obj*)bbNullObjectTest((BBObject*)((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tentity_child_list ))->clas->m_ObjectEnumerator((struct brl_linkedlist_TList_obj*)((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tentity_child_list );
	while(((struct brl_linkedlist_TListEnum_obj*)bbNullObjectTest((BBObject*)bbt_2))->clas->m_HasNext((struct brl_linkedlist_TListEnum_obj*)bbt_2)!=0){
		struct openb3d_openb3dcore_TEntity_obj* bbt_child=(struct openb3d_openb3dcore_TEntity_obj*)((struct openb3d_openb3dcore_TEntity_obj*)&bbNullObject);
		struct BBDebugScope_1 __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_LOCAL,
					"child",
					":TEntity",
					.var_address=&bbt_child
				},
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		bbt_child=(struct openb3d_openb3dcore_TEntity_obj*)((struct openb3d_openb3dcore_TEntity_obj*)bbObjectDowncast((BBOBJECT)((struct brl_linkedlist_TListEnum_obj*)bbNullObjectTest((BBObject*)bbt_2))->clas->m_NextObject((struct brl_linkedlist_TListEnum_obj*)bbt_2),(BBClass*)&openb3d_openb3dcore_TEntity));
		if(((BBOBJECT)bbt_child)==&bbNullObject){
			bbOnDebugLeaveScope();
			continue;
		}
		struct BBDebugStm __stmt_0 = {0xa6bea28b2db61a66, 329, 0};
		bbOnDebugEnterStm(&__stmt_0);
		brl_blitz_DebugLog(bbStringConcat(bbStringConcat(bbt_pad,((BBString*)&_s139)),openb3d_openb3dcore_StringPtr(o->clas->f_GetInstance_pb_TTEntity((struct openb3d_openb3dcore_TEntity_obj*)bbt_child))));
		struct BBDebugStm __stmt_1 = {0xa6bea28b2db61a66, 330, 0};
		bbOnDebugEnterStm(&__stmt_1);
		if((bbt_debug_subobjects!=0) && (((BBOBJECT)bbt_child)!=&bbNullObject)){
			struct BBDebugScope __scope = {
				BBDEBUGSCOPE_LOCALBLOCK,
				0,
				{
					{
						BBDEBUGDECL_END
					}
				}
			};
			bbOnDebugEnterScope((BBDebugScope *)&__scope);
			struct BBDebugStm __stmt_0 = {0xa6bea28b2db61a66, 330, 0};
			bbOnDebugEnterStm(&__stmt_0);
			((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)bbt_child))->clas->m_DebugFields_ii((struct openb3d_openb3dcore_TEntity_obj*)bbt_child,bbt_debug_subobjects,bbt_debug_base_types);
			bbOnDebugLeaveScope();
		}
		bbOnDebugLeaveScope();
	}
	struct BBDebugStm __stmt_60 = {0xa6bea28b2db61a66, 333, 0};
	bbOnDebugEnterStm(&__stmt_60);
	brl_blitz_DebugLog((BBString*)&bbEmptyString);
	bbOnDebugLeaveScope();
	return 0;
}
BBINT _openb3d_openb3dcore_TEntity_AddList_TTList(struct openb3d_openb3dcore_TEntity_obj* o,struct brl_linkedlist_TList_obj* bbt_list){
	((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)o));
	struct BBDebugScope_2 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"AddList",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TEntity",
				.var_address=&o
			},
			{
				BBDEBUGDECL_LOCAL,
				"list",
				":TList",
				.var_address=&bbt_list
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0xa6bea28b2db61a66, 339, 0};
	bbOnDebugEnterStm(&__stmt_0);
	struct brl_linkedlist_TList_obj* bbt_=(struct brl_linkedlist_TList_obj*)bbt_list;
	struct BBDebugStm __stmt_1 = {0xa6bea28b2db61a66, 340, 0};
	bbOnDebugEnterStm(&__stmt_1);
	if(((struct brl_linkedlist_TList_obj*)bbt_)==((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tentity_child_list ){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0xa6bea28b2db61a66, 341, 0};
		bbOnDebugEnterStm(&__stmt_0);
		if(EntityListSize_(o->clas->f_GetInstance_pb_TTEntity((struct openb3d_openb3dcore_TEntity_obj*)o),2)!=0){
			BBBYTE* bbt_inst=0;
			struct openb3d_openb3dcore_TEntity_obj* bbt_obj=(struct openb3d_openb3dcore_TEntity_obj*)((struct openb3d_openb3dcore_TEntity_obj*)&bbNullObject);
			struct BBDebugScope_2 __scope = {
				BBDEBUGSCOPE_LOCALBLOCK,
				0,
				{
					{
						BBDEBUGDECL_LOCAL,
						"inst",
						"*b",
						.var_address=&bbt_inst
					},
					{
						BBDEBUGDECL_LOCAL,
						"obj",
						":TEntity",
						.var_address=&bbt_obj
					},
					{
						BBDEBUGDECL_END
					}
				}
			};
			bbOnDebugEnterScope((BBDebugScope *)&__scope);
			struct BBDebugStm __stmt_0 = {0xa6bea28b2db61a66, 342, 0};
			bbOnDebugEnterStm(&__stmt_0);
			bbt_inst=EntityIterListEntity_(o->clas->f_GetInstance_pb_TTEntity((struct openb3d_openb3dcore_TEntity_obj*)o),2,(&((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tentity_child_list_id ));
			struct BBDebugStm __stmt_1 = {0xa6bea28b2db61a66, 343, 0};
			bbOnDebugEnterStm(&__stmt_1);
			bbt_obj=(struct openb3d_openb3dcore_TEntity_obj*)o->clas->f_GetObject_TTEntity_pb(bbt_inst);
			struct BBDebugStm __stmt_2 = {0xa6bea28b2db61a66, 344, 0};
			bbOnDebugEnterStm(&__stmt_2);
			if(((BBObject*)bbt_obj)!= &bbNullObject){
				struct BBDebugScope __scope = {
					BBDEBUGSCOPE_LOCALBLOCK,
					0,
					{
						{
							BBDEBUGDECL_END
						}
					}
				};
				bbOnDebugEnterScope((BBDebugScope *)&__scope);
				struct BBDebugStm __stmt_0 = {0xa6bea28b2db61a66, 344, 0};
				bbOnDebugEnterStm(&__stmt_0);
				brl_linkedlist_ListAddLast((struct brl_linkedlist_TList_obj*)bbt_list,(BBOBJECT)bbt_obj);
				bbOnDebugLeaveScope();
			}
			bbOnDebugLeaveScope();
		}
		bbOnDebugLeaveScope();
	}else{
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0xa6bea28b2db61a66, 346, 0};
		bbOnDebugEnterStm(&__stmt_0);
		if(((struct brl_linkedlist_TList_obj*)bbt_)==((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)openb3d_openb3dcore_TGlobal3D_root_ent))->_openb3d_openb3dcore_tentity_child_list ){
			struct BBDebugScope __scope = {
				BBDEBUGSCOPE_LOCALBLOCK,
				0,
				{
					{
						BBDEBUGDECL_END
					}
				}
			};
			bbOnDebugEnterScope((BBDebugScope *)&__scope);
			struct BBDebugStm __stmt_0 = {0xa6bea28b2db61a66, 347, 0};
			bbOnDebugEnterStm(&__stmt_0);
			if(EntityListSize_(o->clas->f_GetInstance_pb_TTEntity((struct openb3d_openb3dcore_TEntity_obj*)((struct openb3d_openb3dcore_TEntity_obj*)bbObjectDowncast((BBOBJECT)openb3d_openb3dcore_TGlobal3D_root_ent,(BBClass*)&openb3d_openb3dcore_TEntity))),2)!=0){
				BBBYTE* bbt_inst2=0;
				struct openb3d_openb3dcore_TEntity_obj* bbt_obj2=(struct openb3d_openb3dcore_TEntity_obj*)((struct openb3d_openb3dcore_TEntity_obj*)&bbNullObject);
				struct BBDebugScope_2 __scope = {
					BBDEBUGSCOPE_LOCALBLOCK,
					0,
					{
						{
							BBDEBUGDECL_LOCAL,
							"inst",
							"*b",
							.var_address=&bbt_inst2
						},
						{
							BBDEBUGDECL_LOCAL,
							"obj",
							":TEntity",
							.var_address=&bbt_obj2
						},
						{
							BBDEBUGDECL_END
						}
					}
				};
				bbOnDebugEnterScope((BBDebugScope *)&__scope);
				struct BBDebugStm __stmt_0 = {0xa6bea28b2db61a66, 348, 0};
				bbOnDebugEnterStm(&__stmt_0);
				bbt_inst2=EntityIterListEntity_(o->clas->f_GetInstance_pb_TTEntity((struct openb3d_openb3dcore_TEntity_obj*)((struct openb3d_openb3dcore_TEntity_obj*)bbObjectDowncast((BBOBJECT)openb3d_openb3dcore_TGlobal3D_root_ent,(BBClass*)&openb3d_openb3dcore_TEntity))),2,(&((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)openb3d_openb3dcore_TGlobal3D_root_ent))->_openb3d_openb3dcore_tentity_child_list_id ));
				struct BBDebugStm __stmt_1 = {0xa6bea28b2db61a66, 349, 0};
				bbOnDebugEnterStm(&__stmt_1);
				bbt_obj2=(struct openb3d_openb3dcore_TEntity_obj*)o->clas->f_GetObject_TTEntity_pb(bbt_inst2);
				struct BBDebugStm __stmt_2 = {0xa6bea28b2db61a66, 350, 0};
				bbOnDebugEnterStm(&__stmt_2);
				if((((BBObject*)bbt_obj2)!= &bbNullObject) && (brl_linkedlist_ListContains((struct brl_linkedlist_TList_obj*)bbt_list,(BBOBJECT)bbt_obj2)==0)){
					struct BBDebugScope __scope = {
						BBDEBUGSCOPE_LOCALBLOCK,
						0,
						{
							{
								BBDEBUGDECL_END
							}
						}
					};
					bbOnDebugEnterScope((BBDebugScope *)&__scope);
					struct BBDebugStm __stmt_0 = {0xa6bea28b2db61a66, 350, 0};
					bbOnDebugEnterStm(&__stmt_0);
					brl_linkedlist_ListAddLast((struct brl_linkedlist_TList_obj*)bbt_list,(BBOBJECT)bbt_obj2);
					bbOnDebugLeaveScope();
				}
				bbOnDebugLeaveScope();
			}
			bbOnDebugLeaveScope();
		}
		bbOnDebugLeaveScope();
	}
	bbOnDebugLeaveScope();
	return 0;
}
BBINT openb3d_openb3dcore_TEntity_AddList__i_TTList(struct brl_linkedlist_TList_obj* bbt_list){
	struct BBDebugScope_1 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"AddList_",
		{
			{
				BBDEBUGDECL_LOCAL,
				"list",
				":TList",
				.var_address=&bbt_list
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0xa6bea28b2db61a66, 358, 0};
	bbOnDebugEnterStm(&__stmt_0);
	struct brl_linkedlist_TList_obj* bbt_=(struct brl_linkedlist_TList_obj*)bbt_list;
	struct BBDebugStm __stmt_1 = {0xa6bea28b2db61a66, 359, 0};
	bbOnDebugEnterStm(&__stmt_1);
	if(((struct brl_linkedlist_TList_obj*)bbt_)==openb3d_openb3dcore_TEntity_entity_list){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0xa6bea28b2db61a66, 360, 0};
		bbOnDebugEnterStm(&__stmt_0);
		if(StaticListSize_(12,1)!=0){
			BBBYTE* bbt_inst=0;
			struct openb3d_openb3dcore_TEntity_obj* bbt_obj=(struct openb3d_openb3dcore_TEntity_obj*)((struct openb3d_openb3dcore_TEntity_obj*)&bbNullObject);
			struct BBDebugScope_2 __scope = {
				BBDEBUGSCOPE_LOCALBLOCK,
				0,
				{
					{
						BBDEBUGDECL_LOCAL,
						"inst",
						"*b",
						.var_address=&bbt_inst
					},
					{
						BBDEBUGDECL_LOCAL,
						"obj",
						":TEntity",
						.var_address=&bbt_obj
					},
					{
						BBDEBUGDECL_END
					}
				}
			};
			bbOnDebugEnterScope((BBDebugScope *)&__scope);
			struct BBDebugStm __stmt_0 = {0xa6bea28b2db61a66, 361, 0};
			bbOnDebugEnterStm(&__stmt_0);
			bbt_inst=StaticIterListEntity_(12,1,(&openb3d_openb3dcore_TEntity_entity_list_id));
			struct BBDebugStm __stmt_1 = {0xa6bea28b2db61a66, 362, 0};
			bbOnDebugEnterStm(&__stmt_1);
			bbt_obj=(struct openb3d_openb3dcore_TEntity_obj*)openb3d_openb3dcore_TEntity_GetObject_TTEntity_pb(bbt_inst);
			struct BBDebugStm __stmt_2 = {0xa6bea28b2db61a66, 363, 0};
			bbOnDebugEnterStm(&__stmt_2);
			if(((BBObject*)bbt_obj)!= &bbNullObject){
				struct BBDebugScope __scope = {
					BBDEBUGSCOPE_LOCALBLOCK,
					0,
					{
						{
							BBDEBUGDECL_END
						}
					}
				};
				bbOnDebugEnterScope((BBDebugScope *)&__scope);
				struct BBDebugStm __stmt_0 = {0xa6bea28b2db61a66, 363, 0};
				bbOnDebugEnterStm(&__stmt_0);
				brl_linkedlist_ListAddLast((struct brl_linkedlist_TList_obj*)bbt_list,(BBOBJECT)bbt_obj);
				bbOnDebugLeaveScope();
			}
			bbOnDebugLeaveScope();
		}
		bbOnDebugLeaveScope();
	}else{
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0xa6bea28b2db61a66, 365, 0};
		bbOnDebugEnterStm(&__stmt_0);
		if(((struct brl_linkedlist_TList_obj*)bbt_)==openb3d_openb3dcore_TEntity_animate_list){
			struct BBDebugScope __scope = {
				BBDEBUGSCOPE_LOCALBLOCK,
				0,
				{
					{
						BBDEBUGDECL_END
					}
				}
			};
			bbOnDebugEnterScope((BBDebugScope *)&__scope);
			struct BBDebugStm __stmt_0 = {0xa6bea28b2db61a66, 366, 0};
			bbOnDebugEnterStm(&__stmt_0);
			if(StaticListSize_(12,26)!=0){
				BBBYTE* bbt_inst2=0;
				struct openb3d_openb3dcore_TEntity_obj* bbt_obj2=(struct openb3d_openb3dcore_TEntity_obj*)((struct openb3d_openb3dcore_TEntity_obj*)&bbNullObject);
				struct BBDebugScope_2 __scope = {
					BBDEBUGSCOPE_LOCALBLOCK,
					0,
					{
						{
							BBDEBUGDECL_LOCAL,
							"inst",
							"*b",
							.var_address=&bbt_inst2
						},
						{
							BBDEBUGDECL_LOCAL,
							"obj",
							":TEntity",
							.var_address=&bbt_obj2
						},
						{
							BBDEBUGDECL_END
						}
					}
				};
				bbOnDebugEnterScope((BBDebugScope *)&__scope);
				struct BBDebugStm __stmt_0 = {0xa6bea28b2db61a66, 367, 0};
				bbOnDebugEnterStm(&__stmt_0);
				bbt_inst2=StaticIterListEntity_(12,26,(&openb3d_openb3dcore_TEntity_animate_list_id));
				struct BBDebugStm __stmt_1 = {0xa6bea28b2db61a66, 368, 0};
				bbOnDebugEnterStm(&__stmt_1);
				bbt_obj2=(struct openb3d_openb3dcore_TEntity_obj*)openb3d_openb3dcore_TEntity_GetObject_TTEntity_pb(bbt_inst2);
				struct BBDebugStm __stmt_2 = {0xa6bea28b2db61a66, 369, 0};
				bbOnDebugEnterStm(&__stmt_2);
				if((((BBObject*)bbt_obj2)!= &bbNullObject) && (brl_linkedlist_ListContains((struct brl_linkedlist_TList_obj*)bbt_list,(BBOBJECT)bbt_obj2)==0)){
					struct BBDebugScope __scope = {
						BBDEBUGSCOPE_LOCALBLOCK,
						0,
						{
							{
								BBDEBUGDECL_END
							}
						}
					};
					bbOnDebugEnterScope((BBDebugScope *)&__scope);
					struct BBDebugStm __stmt_0 = {0xa6bea28b2db61a66, 369, 0};
					bbOnDebugEnterStm(&__stmt_0);
					brl_linkedlist_ListAddLast((struct brl_linkedlist_TList_obj*)bbt_list,(BBOBJECT)bbt_obj2);
					bbOnDebugLeaveScope();
				}
				bbOnDebugLeaveScope();
			}
			bbOnDebugLeaveScope();
		}
		bbOnDebugLeaveScope();
	}
	bbOnDebugLeaveScope();
	return 0;
}
BBINT _openb3d_openb3dcore_TEntity_CopyList_TTList(struct openb3d_openb3dcore_TEntity_obj* o,struct brl_linkedlist_TList_obj* bbt_list){
	((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)o));
	BBINT bbt_created=0;
	struct BBDebugScope_3 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"CopyList",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TEntity",
				.var_address=&o
			},
			{
				BBDEBUGDECL_LOCAL,
				"list",
				":TList",
				.var_address=&bbt_list
			},
			{
				BBDEBUGDECL_LOCAL,
				"created",
				"i",
				.var_address=&bbt_created
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0xa6bea28b2db61a66, 377, 0};
	bbOnDebugEnterStm(&__stmt_0);
	brl_linkedlist_ClearList((struct brl_linkedlist_TList_obj*)bbt_list);
	struct BBDebugStm __stmt_1 = {0xa6bea28b2db61a66, 378, 0};
	bbOnDebugEnterStm(&__stmt_1);
	bbt_created=0;
	struct BBDebugStm __stmt_2 = {0xa6bea28b2db61a66, 380, 0};
	bbOnDebugEnterStm(&__stmt_2);
	struct brl_linkedlist_TList_obj* bbt_=(struct brl_linkedlist_TList_obj*)bbt_list;
	struct BBDebugStm __stmt_3 = {0xa6bea28b2db61a66, 381, 0};
	bbOnDebugEnterStm(&__stmt_3);
	if(((struct brl_linkedlist_TList_obj*)bbt_)==((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tentity_child_list ){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0xa6bea28b2db61a66, 382, 0};
		bbOnDebugEnterStm(&__stmt_0);
		((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tentity_child_list_id =0;
		struct BBDebugStm __stmt_1 = {0xa6bea28b2db61a66, 383, 0};
		bbOnDebugEnterStm(&__stmt_1);
		{
			BBINT bbt_id=0;
			BBINT bbt_2=(EntityListSize_(o->clas->f_GetInstance_pb_TTEntity((struct openb3d_openb3dcore_TEntity_obj*)o),2)-1);
			for(;(bbt_id<=bbt_2);bbt_id=(bbt_id+1)){
				BBBYTE* bbt_inst=0;
				struct openb3d_openb3dcore_TEntity_obj* bbt_obj=(struct openb3d_openb3dcore_TEntity_obj*)((struct openb3d_openb3dcore_TEntity_obj*)&bbNullObject);
				struct BBDebugScope_3 __scope = {
					BBDEBUGSCOPE_LOCALBLOCK,
					0,
					{
						{
							BBDEBUGDECL_LOCAL,
							"id",
							"i",
							.var_address=&bbt_id
						},
						{
							BBDEBUGDECL_LOCAL,
							"inst",
							"*b",
							.var_address=&bbt_inst
						},
						{
							BBDEBUGDECL_LOCAL,
							"obj",
							":TEntity",
							.var_address=&bbt_obj
						},
						{
							BBDEBUGDECL_END
						}
					}
				};
				bbOnDebugEnterScope((BBDebugScope *)&__scope);
				struct BBDebugStm __stmt_0 = {0xa6bea28b2db61a66, 384, 0};
				bbOnDebugEnterStm(&__stmt_0);
				bbt_inst=EntityIterListEntity_(o->clas->f_GetInstance_pb_TTEntity((struct openb3d_openb3dcore_TEntity_obj*)o),2,(&((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tentity_child_list_id ));
				struct BBDebugStm __stmt_1 = {0xa6bea28b2db61a66, 385, 0};
				bbOnDebugEnterStm(&__stmt_1);
				bbt_obj=(struct openb3d_openb3dcore_TEntity_obj*)o->clas->f_GetObject_TTEntity_pb(bbt_inst);
				struct BBDebugStm __stmt_2 = {0xa6bea28b2db61a66, 386, 0};
				bbOnDebugEnterStm(&__stmt_2);
				if(((((BBOBJECT)bbt_obj)==&bbNullObject) && (bbt_inst!=0)) && (brl_linkedlist_ListContains((struct brl_linkedlist_TList_obj*)openb3d_openb3dcore_TEntity_child_list_queue,(BBOBJECT)o)==0)){
					struct BBDebugScope __scope = {
						BBDEBUGSCOPE_LOCALBLOCK,
						0,
						{
							{
								BBDEBUGDECL_END
							}
						}
					};
					bbOnDebugEnterScope((BBDebugScope *)&__scope);
					struct BBDebugStm __stmt_0 = {0xa6bea28b2db61a66, 387, 0};
					bbOnDebugEnterStm(&__stmt_0);
					brl_linkedlist_ListAddLast((struct brl_linkedlist_TList_obj*)openb3d_openb3dcore_TEntity_child_list_queue,(BBOBJECT)o);
					bbOnDebugLeaveScope();
				}
				struct BBDebugStm __stmt_3 = {0xa6bea28b2db61a66, 389, 0};
				bbOnDebugEnterStm(&__stmt_3);
				if(((BBObject*)bbt_obj)!= &bbNullObject){
					struct BBDebugScope __scope = {
						BBDEBUGSCOPE_LOCALBLOCK,
						0,
						{
							{
								BBDEBUGDECL_END
							}
						}
					};
					bbOnDebugEnterScope((BBDebugScope *)&__scope);
					struct BBDebugStm __stmt_0 = {0xa6bea28b2db61a66, 389, 0};
					bbOnDebugEnterStm(&__stmt_0);
					brl_linkedlist_ListAddLast((struct brl_linkedlist_TList_obj*)bbt_list,(BBOBJECT)bbt_obj);
					bbOnDebugLeaveScope();
				}
				bbOnDebugLeaveScope();
			}
		}
		struct BBDebugStm __stmt_2 = {0xa6bea28b2db61a66, 391, 0};
		bbOnDebugEnterStm(&__stmt_2);
		struct brl_linkedlist_TListEnum_obj* bbt_3=(struct brl_linkedlist_TListEnum_obj*)((struct brl_linkedlist_TList_obj*)bbNullObjectTest((BBObject*)openb3d_openb3dcore_TEntity_child_list_queue))->clas->m_ObjectEnumerator((struct brl_linkedlist_TList_obj*)openb3d_openb3dcore_TEntity_child_list_queue);
		while(((struct brl_linkedlist_TListEnum_obj*)bbNullObjectTest((BBObject*)bbt_3))->clas->m_HasNext((struct brl_linkedlist_TListEnum_obj*)bbt_3)!=0){
			struct openb3d_openb3dcore_TEntity_obj* bbt_ent=(struct openb3d_openb3dcore_TEntity_obj*)((struct openb3d_openb3dcore_TEntity_obj*)&bbNullObject);
			struct BBDebugScope_1 __scope = {
				BBDEBUGSCOPE_LOCALBLOCK,
				0,
				{
					{
						BBDEBUGDECL_LOCAL,
						"ent",
						":TEntity",
						.var_address=&bbt_ent
					},
					{
						BBDEBUGDECL_END
					}
				}
			};
			bbOnDebugEnterScope((BBDebugScope *)&__scope);
			bbt_ent=(struct openb3d_openb3dcore_TEntity_obj*)((struct openb3d_openb3dcore_TEntity_obj*)bbObjectDowncast((BBOBJECT)((struct brl_linkedlist_TListEnum_obj*)bbNullObjectTest((BBObject*)bbt_3))->clas->m_NextObject((struct brl_linkedlist_TListEnum_obj*)bbt_3),(BBClass*)&openb3d_openb3dcore_TEntity));
			if(((BBOBJECT)bbt_ent)==&bbNullObject){
				bbOnDebugLeaveScope();
				continue;
			}
			struct BBDebugStm __stmt_0 = {0xa6bea28b2db61a66, 392, 0};
			bbOnDebugEnterStm(&__stmt_0);
			((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)bbt_ent))->_openb3d_openb3dcore_tentity_child_list_id =0;
			struct BBDebugStm __stmt_1 = {0xa6bea28b2db61a66, 392, 0};
			bbOnDebugEnterStm(&__stmt_1);
			bbt_created=1;
			struct BBDebugStm __stmt_2 = {0xa6bea28b2db61a66, 393, 0};
			bbOnDebugEnterStm(&__stmt_2);
			{
				BBINT bbt_id2=0;
				BBINT bbt_4=(EntityListSize_(o->clas->f_GetInstance_pb_TTEntity((struct openb3d_openb3dcore_TEntity_obj*)bbt_ent),2)-1);
				for(;(bbt_id2<=bbt_4);bbt_id2=(bbt_id2+1)){
					BBBYTE* bbt_inst2=0;
					struct openb3d_openb3dcore_TEntity_obj* bbt_obj2=(struct openb3d_openb3dcore_TEntity_obj*)((struct openb3d_openb3dcore_TEntity_obj*)&bbNullObject);
					struct BBDebugScope_3 __scope = {
						BBDEBUGSCOPE_LOCALBLOCK,
						0,
						{
							{
								BBDEBUGDECL_LOCAL,
								"id",
								"i",
								.var_address=&bbt_id2
							},
							{
								BBDEBUGDECL_LOCAL,
								"inst",
								"*b",
								.var_address=&bbt_inst2
							},
							{
								BBDEBUGDECL_LOCAL,
								"obj",
								":TEntity",
								.var_address=&bbt_obj2
							},
							{
								BBDEBUGDECL_END
							}
						}
					};
					bbOnDebugEnterScope((BBDebugScope *)&__scope);
					struct BBDebugStm __stmt_0 = {0xa6bea28b2db61a66, 394, 0};
					bbOnDebugEnterStm(&__stmt_0);
					bbt_inst2=EntityIterListEntity_(o->clas->f_GetInstance_pb_TTEntity((struct openb3d_openb3dcore_TEntity_obj*)bbt_ent),2,(&((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)bbt_ent))->_openb3d_openb3dcore_tentity_child_list_id ));
					struct BBDebugStm __stmt_1 = {0xa6bea28b2db61a66, 395, 0};
					bbOnDebugEnterStm(&__stmt_1);
					bbt_obj2=(struct openb3d_openb3dcore_TEntity_obj*)o->clas->f_GetObject_TTEntity_pb(bbt_inst2);
					struct BBDebugStm __stmt_2 = {0xa6bea28b2db61a66, 396, 0};
					bbOnDebugEnterStm(&__stmt_2);
					if(((BBOBJECT)bbt_obj2)==&bbNullObject){
						struct BBDebugScope __scope = {
							BBDEBUGSCOPE_LOCALBLOCK,
							0,
							{
								{
									BBDEBUGDECL_END
								}
							}
						};
						bbOnDebugEnterScope((BBDebugScope *)&__scope);
						struct BBDebugStm __stmt_0 = {0xa6bea28b2db61a66, 396, 0};
						bbOnDebugEnterStm(&__stmt_0);
						bbt_created=0;
						struct BBDebugStm __stmt_1 = {0xa6bea28b2db61a66, 396, 0};
						bbOnDebugEnterStm(&__stmt_1);
						bbOnDebugLeaveScope();
						bbOnDebugLeaveScope();
						break;
					}
					bbOnDebugLeaveScope();
				}
			}
			struct BBDebugStm __stmt_3 = {0xa6bea28b2db61a66, 398, 0};
			bbOnDebugEnterStm(&__stmt_3);
			if(bbt_created!=0){
				struct BBDebugScope __scope = {
					BBDEBUGSCOPE_LOCALBLOCK,
					0,
					{
						{
							BBDEBUGDECL_END
						}
					}
				};
				bbOnDebugEnterScope((BBDebugScope *)&__scope);
				struct BBDebugStm __stmt_0 = {0xa6bea28b2db61a66, 399, 0};
				bbOnDebugEnterStm(&__stmt_0);
				((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)bbt_ent))->_openb3d_openb3dcore_tentity_child_list_id =0;
				struct BBDebugStm __stmt_1 = {0xa6bea28b2db61a66, 400, 0};
				bbOnDebugEnterStm(&__stmt_1);
				brl_linkedlist_ListRemove((struct brl_linkedlist_TList_obj*)openb3d_openb3dcore_TEntity_child_list_queue,(BBOBJECT)bbt_ent);
				struct BBDebugStm __stmt_2 = {0xa6bea28b2db61a66, 401, 0};
				bbOnDebugEnterStm(&__stmt_2);
				{
					BBINT bbt_id3=0;
					BBINT bbt_5=(EntityListSize_(o->clas->f_GetInstance_pb_TTEntity((struct openb3d_openb3dcore_TEntity_obj*)bbt_ent),2)-1);
					for(;(bbt_id3<=bbt_5);bbt_id3=(bbt_id3+1)){
						BBBYTE* bbt_inst3=0;
						struct openb3d_openb3dcore_TEntity_obj* bbt_obj3=(struct openb3d_openb3dcore_TEntity_obj*)((struct openb3d_openb3dcore_TEntity_obj*)&bbNullObject);
						struct BBDebugScope_3 __scope = {
							BBDEBUGSCOPE_LOCALBLOCK,
							0,
							{
								{
									BBDEBUGDECL_LOCAL,
									"id",
									"i",
									.var_address=&bbt_id3
								},
								{
									BBDEBUGDECL_LOCAL,
									"inst",
									"*b",
									.var_address=&bbt_inst3
								},
								{
									BBDEBUGDECL_LOCAL,
									"obj",
									":TEntity",
									.var_address=&bbt_obj3
								},
								{
									BBDEBUGDECL_END
								}
							}
						};
						bbOnDebugEnterScope((BBDebugScope *)&__scope);
						struct BBDebugStm __stmt_0 = {0xa6bea28b2db61a66, 402, 0};
						bbOnDebugEnterStm(&__stmt_0);
						bbt_inst3=EntityIterListEntity_(o->clas->f_GetInstance_pb_TTEntity((struct openb3d_openb3dcore_TEntity_obj*)bbt_ent),2,(&((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)bbt_ent))->_openb3d_openb3dcore_tentity_child_list_id ));
						struct BBDebugStm __stmt_1 = {0xa6bea28b2db61a66, 403, 0};
						bbOnDebugEnterStm(&__stmt_1);
						bbt_obj3=(struct openb3d_openb3dcore_TEntity_obj*)o->clas->f_GetObject_TTEntity_pb(bbt_inst3);
						struct BBDebugStm __stmt_2 = {0xa6bea28b2db61a66, 404, 0};
						bbOnDebugEnterStm(&__stmt_2);
						if(((BBObject*)bbt_obj3)!= &bbNullObject){
							struct BBDebugScope __scope = {
								BBDEBUGSCOPE_LOCALBLOCK,
								0,
								{
									{
										BBDEBUGDECL_END
									}
								}
							};
							bbOnDebugEnterScope((BBDebugScope *)&__scope);
							struct BBDebugStm __stmt_0 = {0xa6bea28b2db61a66, 404, 0};
							bbOnDebugEnterStm(&__stmt_0);
							brl_linkedlist_ListAddLast((struct brl_linkedlist_TList_obj*)((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)bbt_ent))->_openb3d_openb3dcore_tentity_child_list ,(BBOBJECT)bbt_obj3);
							bbOnDebugLeaveScope();
						}
						bbOnDebugLeaveScope();
					}
				}
				bbOnDebugLeaveScope();
			}
			bbOnDebugLeaveScope();
		}
		bbOnDebugLeaveScope();
	}
	bbOnDebugLeaveScope();
	return 0;
}
BBINT openb3d_openb3dcore_TEntity_CopyList__i_TTList(struct brl_linkedlist_TList_obj* bbt_list){
	struct BBDebugScope_1 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"CopyList_",
		{
			{
				BBDEBUGDECL_LOCAL,
				"list",
				":TList",
				.var_address=&bbt_list
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0xa6bea28b2db61a66, 414, 0};
	bbOnDebugEnterStm(&__stmt_0);
	brl_linkedlist_ClearList((struct brl_linkedlist_TList_obj*)bbt_list);
	struct BBDebugStm __stmt_1 = {0xa6bea28b2db61a66, 416, 0};
	bbOnDebugEnterStm(&__stmt_1);
	struct brl_linkedlist_TList_obj* bbt_=(struct brl_linkedlist_TList_obj*)bbt_list;
	struct BBDebugStm __stmt_2 = {0xa6bea28b2db61a66, 417, 0};
	bbOnDebugEnterStm(&__stmt_2);
	if(((struct brl_linkedlist_TList_obj*)bbt_)==openb3d_openb3dcore_TEntity_entity_list){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0xa6bea28b2db61a66, 418, 0};
		bbOnDebugEnterStm(&__stmt_0);
		openb3d_openb3dcore_TEntity_entity_list_id=0;
		struct BBDebugStm __stmt_1 = {0xa6bea28b2db61a66, 419, 0};
		bbOnDebugEnterStm(&__stmt_1);
		{
			BBINT bbt_id=0;
			BBINT bbt_2=(StaticListSize_(12,1)-1);
			for(;(bbt_id<=bbt_2);bbt_id=(bbt_id+1)){
				BBBYTE* bbt_inst=0;
				struct openb3d_openb3dcore_TEntity_obj* bbt_obj=(struct openb3d_openb3dcore_TEntity_obj*)((struct openb3d_openb3dcore_TEntity_obj*)&bbNullObject);
				struct BBDebugScope_3 __scope = {
					BBDEBUGSCOPE_LOCALBLOCK,
					0,
					{
						{
							BBDEBUGDECL_LOCAL,
							"id",
							"i",
							.var_address=&bbt_id
						},
						{
							BBDEBUGDECL_LOCAL,
							"inst",
							"*b",
							.var_address=&bbt_inst
						},
						{
							BBDEBUGDECL_LOCAL,
							"obj",
							":TEntity",
							.var_address=&bbt_obj
						},
						{
							BBDEBUGDECL_END
						}
					}
				};
				bbOnDebugEnterScope((BBDebugScope *)&__scope);
				struct BBDebugStm __stmt_0 = {0xa6bea28b2db61a66, 420, 0};
				bbOnDebugEnterStm(&__stmt_0);
				bbt_inst=StaticIterListEntity_(12,1,(&openb3d_openb3dcore_TEntity_entity_list_id));
				struct BBDebugStm __stmt_1 = {0xa6bea28b2db61a66, 421, 0};
				bbOnDebugEnterStm(&__stmt_1);
				bbt_obj=(struct openb3d_openb3dcore_TEntity_obj*)openb3d_openb3dcore_TEntity_GetObject_TTEntity_pb(bbt_inst);
				struct BBDebugStm __stmt_2 = {0xa6bea28b2db61a66, 422, 0};
				bbOnDebugEnterStm(&__stmt_2);
				if(((BBObject*)bbt_obj)!= &bbNullObject){
					struct BBDebugScope __scope = {
						BBDEBUGSCOPE_LOCALBLOCK,
						0,
						{
							{
								BBDEBUGDECL_END
							}
						}
					};
					bbOnDebugEnterScope((BBDebugScope *)&__scope);
					struct BBDebugStm __stmt_0 = {0xa6bea28b2db61a66, 422, 0};
					bbOnDebugEnterStm(&__stmt_0);
					brl_linkedlist_ListAddLast((struct brl_linkedlist_TList_obj*)bbt_list,(BBOBJECT)bbt_obj);
					bbOnDebugLeaveScope();
				}
				bbOnDebugLeaveScope();
			}
		}
		bbOnDebugLeaveScope();
	}else{
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0xa6bea28b2db61a66, 424, 0};
		bbOnDebugEnterStm(&__stmt_0);
		if(((struct brl_linkedlist_TList_obj*)bbt_)==openb3d_openb3dcore_TEntity_animate_list){
			struct BBDebugScope __scope = {
				BBDEBUGSCOPE_LOCALBLOCK,
				0,
				{
					{
						BBDEBUGDECL_END
					}
				}
			};
			bbOnDebugEnterScope((BBDebugScope *)&__scope);
			struct BBDebugStm __stmt_0 = {0xa6bea28b2db61a66, 425, 0};
			bbOnDebugEnterStm(&__stmt_0);
			openb3d_openb3dcore_TEntity_animate_list_id=0;
			struct BBDebugStm __stmt_1 = {0xa6bea28b2db61a66, 426, 0};
			bbOnDebugEnterStm(&__stmt_1);
			{
				BBINT bbt_id2=0;
				BBINT bbt_3=(StaticListSize_(12,26)-1);
				for(;(bbt_id2<=bbt_3);bbt_id2=(bbt_id2+1)){
					BBBYTE* bbt_inst2=0;
					struct openb3d_openb3dcore_TEntity_obj* bbt_obj2=(struct openb3d_openb3dcore_TEntity_obj*)((struct openb3d_openb3dcore_TEntity_obj*)&bbNullObject);
					struct BBDebugScope_3 __scope = {
						BBDEBUGSCOPE_LOCALBLOCK,
						0,
						{
							{
								BBDEBUGDECL_LOCAL,
								"id",
								"i",
								.var_address=&bbt_id2
							},
							{
								BBDEBUGDECL_LOCAL,
								"inst",
								"*b",
								.var_address=&bbt_inst2
							},
							{
								BBDEBUGDECL_LOCAL,
								"obj",
								":TEntity",
								.var_address=&bbt_obj2
							},
							{
								BBDEBUGDECL_END
							}
						}
					};
					bbOnDebugEnterScope((BBDebugScope *)&__scope);
					struct BBDebugStm __stmt_0 = {0xa6bea28b2db61a66, 427, 0};
					bbOnDebugEnterStm(&__stmt_0);
					bbt_inst2=StaticIterListEntity_(12,26,(&openb3d_openb3dcore_TEntity_animate_list_id));
					struct BBDebugStm __stmt_1 = {0xa6bea28b2db61a66, 428, 0};
					bbOnDebugEnterStm(&__stmt_1);
					bbt_obj2=(struct openb3d_openb3dcore_TEntity_obj*)openb3d_openb3dcore_TEntity_GetObject_TTEntity_pb(bbt_inst2);
					struct BBDebugStm __stmt_2 = {0xa6bea28b2db61a66, 429, 0};
					bbOnDebugEnterStm(&__stmt_2);
					if(((BBObject*)bbt_obj2)!= &bbNullObject){
						struct BBDebugScope __scope = {
							BBDEBUGSCOPE_LOCALBLOCK,
							0,
							{
								{
									BBDEBUGDECL_END
								}
							}
						};
						bbOnDebugEnterScope((BBDebugScope *)&__scope);
						struct BBDebugStm __stmt_0 = {0xa6bea28b2db61a66, 429, 0};
						bbOnDebugEnterStm(&__stmt_0);
						brl_linkedlist_ListAddLast((struct brl_linkedlist_TList_obj*)bbt_list,(BBOBJECT)bbt_obj2);
						bbOnDebugLeaveScope();
					}
					bbOnDebugLeaveScope();
				}
			}
			bbOnDebugLeaveScope();
		}else{
			struct BBDebugScope __scope = {
				BBDEBUGSCOPE_LOCALBLOCK,
				0,
				{
					{
						BBDEBUGDECL_END
					}
				}
			};
			bbOnDebugEnterScope((BBDebugScope *)&__scope);
			struct BBDebugStm __stmt_0 = {0xa6bea28b2db61a66, 431, 0};
			bbOnDebugEnterStm(&__stmt_0);
			if(((struct brl_linkedlist_TList_obj*)bbt_)==((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)openb3d_openb3dcore_TGlobal3D_root_ent))->_openb3d_openb3dcore_tentity_child_list ){
				struct BBDebugScope __scope = {
					BBDEBUGSCOPE_LOCALBLOCK,
					0,
					{
						{
							BBDEBUGDECL_END
						}
					}
				};
				bbOnDebugEnterScope((BBDebugScope *)&__scope);
				struct BBDebugStm __stmt_0 = {0xa6bea28b2db61a66, 432, 0};
				bbOnDebugEnterStm(&__stmt_0);
				((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)openb3d_openb3dcore_TGlobal3D_root_ent))->_openb3d_openb3dcore_tentity_child_list_id =0;
				struct BBDebugStm __stmt_1 = {0xa6bea28b2db61a66, 433, 0};
				bbOnDebugEnterStm(&__stmt_1);
				{
					BBINT bbt_id3=0;
					BBINT bbt_4=(EntityListSize_(openb3d_openb3dcore_TEntity_GetInstance_pb_TTEntity((struct openb3d_openb3dcore_TEntity_obj*)((struct openb3d_openb3dcore_TEntity_obj*)bbObjectDowncast((BBOBJECT)openb3d_openb3dcore_TGlobal3D_root_ent,(BBClass*)&openb3d_openb3dcore_TEntity))),2)-1);
					for(;(bbt_id3<=bbt_4);bbt_id3=(bbt_id3+1)){
						BBBYTE* bbt_inst3=0;
						struct openb3d_openb3dcore_TEntity_obj* bbt_obj3=(struct openb3d_openb3dcore_TEntity_obj*)((struct openb3d_openb3dcore_TEntity_obj*)&bbNullObject);
						struct BBDebugScope_3 __scope = {
							BBDEBUGSCOPE_LOCALBLOCK,
							0,
							{
								{
									BBDEBUGDECL_LOCAL,
									"id",
									"i",
									.var_address=&bbt_id3
								},
								{
									BBDEBUGDECL_LOCAL,
									"inst",
									"*b",
									.var_address=&bbt_inst3
								},
								{
									BBDEBUGDECL_LOCAL,
									"obj",
									":TEntity",
									.var_address=&bbt_obj3
								},
								{
									BBDEBUGDECL_END
								}
							}
						};
						bbOnDebugEnterScope((BBDebugScope *)&__scope);
						struct BBDebugStm __stmt_0 = {0xa6bea28b2db61a66, 434, 0};
						bbOnDebugEnterStm(&__stmt_0);
						bbt_inst3=EntityIterListEntity_(openb3d_openb3dcore_TEntity_GetInstance_pb_TTEntity((struct openb3d_openb3dcore_TEntity_obj*)((struct openb3d_openb3dcore_TEntity_obj*)bbObjectDowncast((BBOBJECT)openb3d_openb3dcore_TGlobal3D_root_ent,(BBClass*)&openb3d_openb3dcore_TEntity))),2,(&((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)openb3d_openb3dcore_TGlobal3D_root_ent))->_openb3d_openb3dcore_tentity_child_list_id ));
						struct BBDebugStm __stmt_1 = {0xa6bea28b2db61a66, 435, 0};
						bbOnDebugEnterStm(&__stmt_1);
						bbt_obj3=(struct openb3d_openb3dcore_TEntity_obj*)openb3d_openb3dcore_TEntity_GetObject_TTEntity_pb(bbt_inst3);
						struct BBDebugStm __stmt_2 = {0xa6bea28b2db61a66, 436, 0};
						bbOnDebugEnterStm(&__stmt_2);
						if(((BBObject*)bbt_obj3)!= &bbNullObject){
							struct BBDebugScope __scope = {
								BBDEBUGSCOPE_LOCALBLOCK,
								0,
								{
									{
										BBDEBUGDECL_END
									}
								}
							};
							bbOnDebugEnterScope((BBDebugScope *)&__scope);
							struct BBDebugStm __stmt_0 = {0xa6bea28b2db61a66, 436, 0};
							bbOnDebugEnterStm(&__stmt_0);
							brl_linkedlist_ListAddLast((struct brl_linkedlist_TList_obj*)bbt_list,(BBOBJECT)bbt_obj3);
							bbOnDebugLeaveScope();
						}
						bbOnDebugLeaveScope();
					}
				}
				bbOnDebugLeaveScope();
			}
			bbOnDebugLeaveScope();
		}
		bbOnDebugLeaveScope();
	}
	bbOnDebugLeaveScope();
	return 0;
}
BBINT _openb3d_openb3dcore_TEntity_EntityListAdd_TTListTObject(struct openb3d_openb3dcore_TEntity_obj* o,struct brl_linkedlist_TList_obj* bbt_list,BBOBJECT bbt_value){
	((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)o));
	struct openb3d_openb3dcore_TEntity_obj* bbt_ent=(struct openb3d_openb3dcore_TEntity_obj*)((struct openb3d_openb3dcore_TEntity_obj*)&bbNullObject);
	struct BBDebugScope_4 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"EntityListAdd",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TEntity",
				.var_address=&o
			},
			{
				BBDEBUGDECL_LOCAL,
				"list",
				":TList",
				.var_address=&bbt_list
			},
			{
				BBDEBUGDECL_LOCAL,
				"value",
				":Object",
				.var_address=&bbt_value
			},
			{
				BBDEBUGDECL_LOCAL,
				"ent",
				":TEntity",
				.var_address=&bbt_ent
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0xa6bea28b2db61a66, 444, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbt_ent=(struct openb3d_openb3dcore_TEntity_obj*)((struct openb3d_openb3dcore_TEntity_obj*)bbObjectDowncast((BBOBJECT)bbt_value,(BBClass*)&openb3d_openb3dcore_TEntity));
	struct BBDebugStm __stmt_1 = {0xa6bea28b2db61a66, 446, 0};
	bbOnDebugEnterStm(&__stmt_1);
	struct brl_linkedlist_TList_obj* bbt_=(struct brl_linkedlist_TList_obj*)bbt_list;
	struct BBDebugStm __stmt_2 = {0xa6bea28b2db61a66, 447, 0};
	bbOnDebugEnterStm(&__stmt_2);
	if(((struct brl_linkedlist_TList_obj*)bbt_)==((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tentity_child_list ){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0xa6bea28b2db61a66, 448, 0};
		bbOnDebugEnterStm(&__stmt_0);
		if(((BBObject*)bbt_ent)!= &bbNullObject){
			struct BBDebugScope __scope = {
				BBDEBUGSCOPE_LOCALBLOCK,
				0,
				{
					{
						BBDEBUGDECL_END
					}
				}
			};
			bbOnDebugEnterScope((BBDebugScope *)&__scope);
			struct BBDebugStm __stmt_0 = {0xa6bea28b2db61a66, 449, 0};
			bbOnDebugEnterStm(&__stmt_0);
			EntityListPushBackEntity_(o->clas->f_GetInstance_pb_TTEntity((struct openb3d_openb3dcore_TEntity_obj*)o),2,o->clas->f_GetInstance_pb_TTEntity((struct openb3d_openb3dcore_TEntity_obj*)bbt_ent));
			struct BBDebugStm __stmt_1 = {0xa6bea28b2db61a66, 450, 0};
			bbOnDebugEnterStm(&__stmt_1);
			((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)o));
			((struct openb3d_openb3dcore_TEntity_obj*)o)->clas->m_AddList_TTList((struct openb3d_openb3dcore_TEntity_obj*)o,(struct brl_linkedlist_TList_obj*)bbt_list);
			bbOnDebugLeaveScope();
		}
		bbOnDebugLeaveScope();
	}else{
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0xa6bea28b2db61a66, 452, 0};
		bbOnDebugEnterStm(&__stmt_0);
		if(((struct brl_linkedlist_TList_obj*)bbt_)==((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)openb3d_openb3dcore_TGlobal3D_root_ent))->_openb3d_openb3dcore_tentity_child_list ){
			struct BBDebugScope __scope = {
				BBDEBUGSCOPE_LOCALBLOCK,
				0,
				{
					{
						BBDEBUGDECL_END
					}
				}
			};
			bbOnDebugEnterScope((BBDebugScope *)&__scope);
			struct BBDebugStm __stmt_0 = {0xa6bea28b2db61a66, 453, 0};
			bbOnDebugEnterStm(&__stmt_0);
			if(((BBObject*)bbt_ent)!= &bbNullObject){
				struct BBDebugScope __scope = {
					BBDEBUGSCOPE_LOCALBLOCK,
					0,
					{
						{
							BBDEBUGDECL_END
						}
					}
				};
				bbOnDebugEnterScope((BBDebugScope *)&__scope);
				struct BBDebugStm __stmt_0 = {0xa6bea28b2db61a66, 454, 0};
				bbOnDebugEnterStm(&__stmt_0);
				EntityListPushBackEntity_(o->clas->f_GetInstance_pb_TTEntity((struct openb3d_openb3dcore_TEntity_obj*)((struct openb3d_openb3dcore_TEntity_obj*)bbObjectDowncast((BBOBJECT)openb3d_openb3dcore_TGlobal3D_root_ent,(BBClass*)&openb3d_openb3dcore_TEntity))),2,o->clas->f_GetInstance_pb_TTEntity((struct openb3d_openb3dcore_TEntity_obj*)bbt_ent));
				struct BBDebugStm __stmt_1 = {0xa6bea28b2db61a66, 455, 0};
				bbOnDebugEnterStm(&__stmt_1);
				((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)o));
				((struct openb3d_openb3dcore_TEntity_obj*)o)->clas->m_AddList_TTList((struct openb3d_openb3dcore_TEntity_obj*)o,(struct brl_linkedlist_TList_obj*)bbt_list);
				bbOnDebugLeaveScope();
			}
			bbOnDebugLeaveScope();
		}else{
			struct BBDebugScope __scope = {
				BBDEBUGSCOPE_LOCALBLOCK,
				0,
				{
					{
						BBDEBUGDECL_END
					}
				}
			};
			bbOnDebugEnterScope((BBDebugScope *)&__scope);
			struct BBDebugStm __stmt_0 = {0xa6bea28b2db61a66, 457, 0};
			bbOnDebugEnterStm(&__stmt_0);
			if(((struct brl_linkedlist_TList_obj*)bbt_)==openb3d_openb3dcore_TEntity_entity_list){
				struct BBDebugScope __scope = {
					BBDEBUGSCOPE_LOCALBLOCK,
					0,
					{
						{
							BBDEBUGDECL_END
						}
					}
				};
				bbOnDebugEnterScope((BBDebugScope *)&__scope);
				struct BBDebugStm __stmt_0 = {0xa6bea28b2db61a66, 458, 0};
				bbOnDebugEnterStm(&__stmt_0);
				GlobalListPushBackEntity_(1,o->clas->f_GetInstance_pb_TTEntity((struct openb3d_openb3dcore_TEntity_obj*)o));
				struct BBDebugStm __stmt_1 = {0xa6bea28b2db61a66, 459, 0};
				bbOnDebugEnterStm(&__stmt_1);
				o->clas->f_AddList__i_TTList((struct brl_linkedlist_TList_obj*)bbt_list);
				bbOnDebugLeaveScope();
			}else{
				struct BBDebugScope __scope = {
					BBDEBUGSCOPE_LOCALBLOCK,
					0,
					{
						{
							BBDEBUGDECL_END
						}
					}
				};
				bbOnDebugEnterScope((BBDebugScope *)&__scope);
				struct BBDebugStm __stmt_0 = {0xa6bea28b2db61a66, 460, 0};
				bbOnDebugEnterStm(&__stmt_0);
				if(((struct brl_linkedlist_TList_obj*)bbt_)==openb3d_openb3dcore_TEntity_animate_list){
					struct BBDebugScope __scope = {
						BBDEBUGSCOPE_LOCALBLOCK,
						0,
						{
							{
								BBDEBUGDECL_END
							}
						}
					};
					bbOnDebugEnterScope((BBDebugScope *)&__scope);
					struct BBDebugStm __stmt_0 = {0xa6bea28b2db61a66, 461, 0};
					bbOnDebugEnterStm(&__stmt_0);
					GlobalListPushBackEntity_(26,o->clas->f_GetInstance_pb_TTEntity((struct openb3d_openb3dcore_TEntity_obj*)o));
					struct BBDebugStm __stmt_1 = {0xa6bea28b2db61a66, 462, 0};
					bbOnDebugEnterStm(&__stmt_1);
					o->clas->f_AddList__i_TTList((struct brl_linkedlist_TList_obj*)bbt_list);
					bbOnDebugLeaveScope();
				}
				bbOnDebugLeaveScope();
			}
			bbOnDebugLeaveScope();
		}
		bbOnDebugLeaveScope();
	}
	bbOnDebugLeaveScope();
	return 0;
}
BBINT _openb3d_openb3dcore_TEntity_EntityListRemove_TTListTObject(struct openb3d_openb3dcore_TEntity_obj* o,struct brl_linkedlist_TList_obj* bbt_list,BBOBJECT bbt_value){
	((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)o));
	struct openb3d_openb3dcore_TEntity_obj* bbt_ent=(struct openb3d_openb3dcore_TEntity_obj*)((struct openb3d_openb3dcore_TEntity_obj*)&bbNullObject);
	struct BBDebugScope_4 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"EntityListRemove",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TEntity",
				.var_address=&o
			},
			{
				BBDEBUGDECL_LOCAL,
				"list",
				":TList",
				.var_address=&bbt_list
			},
			{
				BBDEBUGDECL_LOCAL,
				"value",
				":Object",
				.var_address=&bbt_value
			},
			{
				BBDEBUGDECL_LOCAL,
				"ent",
				":TEntity",
				.var_address=&bbt_ent
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0xa6bea28b2db61a66, 469, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbt_ent=(struct openb3d_openb3dcore_TEntity_obj*)((struct openb3d_openb3dcore_TEntity_obj*)bbObjectDowncast((BBOBJECT)bbt_value,(BBClass*)&openb3d_openb3dcore_TEntity));
	struct BBDebugStm __stmt_1 = {0xa6bea28b2db61a66, 471, 0};
	bbOnDebugEnterStm(&__stmt_1);
	struct brl_linkedlist_TList_obj* bbt_=(struct brl_linkedlist_TList_obj*)bbt_list;
	struct BBDebugStm __stmt_2 = {0xa6bea28b2db61a66, 472, 0};
	bbOnDebugEnterStm(&__stmt_2);
	if(((struct brl_linkedlist_TList_obj*)bbt_)==((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tentity_child_list ){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0xa6bea28b2db61a66, 473, 0};
		bbOnDebugEnterStm(&__stmt_0);
		if(((BBObject*)bbt_ent)!= &bbNullObject){
			struct BBDebugScope __scope = {
				BBDEBUGSCOPE_LOCALBLOCK,
				0,
				{
					{
						BBDEBUGDECL_END
					}
				}
			};
			bbOnDebugEnterScope((BBDebugScope *)&__scope);
			struct BBDebugStm __stmt_0 = {0xa6bea28b2db61a66, 474, 0};
			bbOnDebugEnterStm(&__stmt_0);
			EntityListRemoveEntity_(o->clas->f_GetInstance_pb_TTEntity((struct openb3d_openb3dcore_TEntity_obj*)o),2,o->clas->f_GetInstance_pb_TTEntity((struct openb3d_openb3dcore_TEntity_obj*)bbt_ent));
			struct BBDebugStm __stmt_1 = {0xa6bea28b2db61a66, 475, 0};
			bbOnDebugEnterStm(&__stmt_1);
			brl_linkedlist_ListRemove((struct brl_linkedlist_TList_obj*)bbt_list,(BBOBJECT)bbt_value);
			struct BBDebugStm __stmt_2 = {0xa6bea28b2db61a66, 475, 0};
			bbOnDebugEnterStm(&__stmt_2);
			((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tentity_child_list_id -=1;
			bbOnDebugLeaveScope();
		}
		bbOnDebugLeaveScope();
	}else{
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0xa6bea28b2db61a66, 477, 0};
		bbOnDebugEnterStm(&__stmt_0);
		if(((struct brl_linkedlist_TList_obj*)bbt_)==((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)openb3d_openb3dcore_TGlobal3D_root_ent))->_openb3d_openb3dcore_tentity_child_list ){
			struct BBDebugScope __scope = {
				BBDEBUGSCOPE_LOCALBLOCK,
				0,
				{
					{
						BBDEBUGDECL_END
					}
				}
			};
			bbOnDebugEnterScope((BBDebugScope *)&__scope);
			struct BBDebugStm __stmt_0 = {0xa6bea28b2db61a66, 478, 0};
			bbOnDebugEnterStm(&__stmt_0);
			EntityListRemoveEntity_(o->clas->f_GetInstance_pb_TTEntity((struct openb3d_openb3dcore_TEntity_obj*)((struct openb3d_openb3dcore_TEntity_obj*)bbObjectDowncast((BBOBJECT)openb3d_openb3dcore_TGlobal3D_root_ent,(BBClass*)&openb3d_openb3dcore_TEntity))),2,o->clas->f_GetInstance_pb_TTEntity((struct openb3d_openb3dcore_TEntity_obj*)o));
			struct BBDebugStm __stmt_1 = {0xa6bea28b2db61a66, 479, 0};
			bbOnDebugEnterStm(&__stmt_1);
			brl_linkedlist_ListRemove((struct brl_linkedlist_TList_obj*)bbt_list,(BBOBJECT)o);
			struct BBDebugStm __stmt_2 = {0xa6bea28b2db61a66, 479, 0};
			bbOnDebugEnterStm(&__stmt_2);
			((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)openb3d_openb3dcore_TGlobal3D_root_ent))->_openb3d_openb3dcore_tentity_child_list_id -=1;
			bbOnDebugLeaveScope();
		}else{
			struct BBDebugScope __scope = {
				BBDEBUGSCOPE_LOCALBLOCK,
				0,
				{
					{
						BBDEBUGDECL_END
					}
				}
			};
			bbOnDebugEnterScope((BBDebugScope *)&__scope);
			struct BBDebugStm __stmt_0 = {0xa6bea28b2db61a66, 480, 0};
			bbOnDebugEnterStm(&__stmt_0);
			if(((struct brl_linkedlist_TList_obj*)bbt_)==openb3d_openb3dcore_TEntity_entity_list){
				struct BBDebugScope __scope = {
					BBDEBUGSCOPE_LOCALBLOCK,
					0,
					{
						{
							BBDEBUGDECL_END
						}
					}
				};
				bbOnDebugEnterScope((BBDebugScope *)&__scope);
				struct BBDebugStm __stmt_0 = {0xa6bea28b2db61a66, 481, 0};
				bbOnDebugEnterStm(&__stmt_0);
				GlobalListRemoveEntity_(1,o->clas->f_GetInstance_pb_TTEntity((struct openb3d_openb3dcore_TEntity_obj*)o));
				struct BBDebugStm __stmt_1 = {0xa6bea28b2db61a66, 482, 0};
				bbOnDebugEnterStm(&__stmt_1);
				brl_linkedlist_ListRemove((struct brl_linkedlist_TList_obj*)bbt_list,(BBOBJECT)o);
				struct BBDebugStm __stmt_2 = {0xa6bea28b2db61a66, 482, 0};
				bbOnDebugEnterStm(&__stmt_2);
				openb3d_openb3dcore_TEntity_entity_list_id-=1;
				bbOnDebugLeaveScope();
			}else{
				struct BBDebugScope __scope = {
					BBDEBUGSCOPE_LOCALBLOCK,
					0,
					{
						{
							BBDEBUGDECL_END
						}
					}
				};
				bbOnDebugEnterScope((BBDebugScope *)&__scope);
				struct BBDebugStm __stmt_0 = {0xa6bea28b2db61a66, 483, 0};
				bbOnDebugEnterStm(&__stmt_0);
				if(((struct brl_linkedlist_TList_obj*)bbt_)==openb3d_openb3dcore_TEntity_animate_list){
					struct BBDebugScope __scope = {
						BBDEBUGSCOPE_LOCALBLOCK,
						0,
						{
							{
								BBDEBUGDECL_END
							}
						}
					};
					bbOnDebugEnterScope((BBDebugScope *)&__scope);
					struct BBDebugStm __stmt_0 = {0xa6bea28b2db61a66, 484, 0};
					bbOnDebugEnterStm(&__stmt_0);
					GlobalListRemoveEntity_(26,o->clas->f_GetInstance_pb_TTEntity((struct openb3d_openb3dcore_TEntity_obj*)o));
					struct BBDebugStm __stmt_1 = {0xa6bea28b2db61a66, 485, 0};
					bbOnDebugEnterStm(&__stmt_1);
					brl_linkedlist_ListRemove((struct brl_linkedlist_TList_obj*)bbt_list,(BBOBJECT)o);
					struct BBDebugStm __stmt_2 = {0xa6bea28b2db61a66, 485, 0};
					bbOnDebugEnterStm(&__stmt_2);
					openb3d_openb3dcore_TEntity_animate_list_id-=1;
					bbOnDebugLeaveScope();
				}
				bbOnDebugLeaveScope();
			}
			bbOnDebugLeaveScope();
		}
		bbOnDebugLeaveScope();
	}
	bbOnDebugLeaveScope();
	return 0;
}
BBINT _openb3d_openb3dcore_TEntity_AddAnimSeq_i(struct openb3d_openb3dcore_TEntity_obj* o,BBINT bbt_length){
	((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)o));
	BBINT bbt_seq=0;
	struct openb3d_openb3dcore_TMesh_obj* bbt_mesh=(struct openb3d_openb3dcore_TMesh_obj*)((struct openb3d_openb3dcore_TMesh_obj*)&bbNullObject);
	struct BBDebugScope_4 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"AddAnimSeq",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TEntity",
				.var_address=&o
			},
			{
				BBDEBUGDECL_LOCAL,
				"length",
				"i",
				.var_address=&bbt_length
			},
			{
				BBDEBUGDECL_LOCAL,
				"seq",
				"i",
				.var_address=&bbt_seq
			},
			{
				BBDEBUGDECL_LOCAL,
				"mesh",
				":TMesh",
				.var_address=&bbt_mesh
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0xa6bea28b2db61a66, 494, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbt_seq=AddAnimSeq_(o->clas->f_GetInstance_pb_TTEntity((struct openb3d_openb3dcore_TEntity_obj*)o),bbt_length);
	struct BBDebugStm __stmt_1 = {0xa6bea28b2db61a66, 495, 0};
	bbOnDebugEnterStm(&__stmt_1);
	bbt_mesh=(struct openb3d_openb3dcore_TMesh_obj*)((struct openb3d_openb3dcore_TMesh_obj*)bbObjectDowncast((BBOBJECT)o,(BBClass*)&openb3d_openb3dcore_TMesh));
	struct BBDebugStm __stmt_2 = {0xa6bea28b2db61a66, 496, 0};
	bbOnDebugEnterStm(&__stmt_2);
	if(((BBOBJECT)bbt_mesh)!=&bbNullObject){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0xa6bea28b2db61a66, 497, 0};
		bbOnDebugEnterStm(&__stmt_0);
		if(((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tentity_anim [0]==0){
			struct BBDebugScope __scope = {
				BBDEBUGSCOPE_LOCALBLOCK,
				0,
				{
					{
						BBDEBUGDECL_END
					}
				}
			};
			bbOnDebugEnterScope((BBDebugScope *)&__scope);
			struct BBDebugStm __stmt_0 = {0xa6bea28b2db61a66, 498, 0};
			bbOnDebugEnterStm(&__stmt_0);
			((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)o));
			((struct openb3d_openb3dcore_TEntity_obj*)o)->clas->m_CopyList_TTList((struct openb3d_openb3dcore_TEntity_obj*)o,(struct brl_linkedlist_TList_obj*)((struct openb3d_openb3dcore_TMesh_obj*)bbNullObjectTest((BBObject*)bbt_mesh))->_openb3d_openb3dcore_tmesh_surf_list );
			struct BBDebugStm __stmt_1 = {0xa6bea28b2db61a66, 499, 0};
			bbOnDebugEnterStm(&__stmt_1);
			((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)o));
			((struct openb3d_openb3dcore_TEntity_obj*)o)->clas->m_CopyList_TTList((struct openb3d_openb3dcore_TEntity_obj*)o,(struct brl_linkedlist_TList_obj*)((struct openb3d_openb3dcore_TMesh_obj*)bbNullObjectTest((BBObject*)bbt_mesh))->_openb3d_openb3dcore_tmesh_anim_surf_list );
			struct BBDebugStm __stmt_2 = {0xa6bea28b2db61a66, 500, 0};
			bbOnDebugEnterStm(&__stmt_2);
			struct brl_linkedlist_TList_obj* bbt_2;
			struct brl_linkedlist_TListEnum_obj* bbt_=(struct brl_linkedlist_TListEnum_obj*)(((struct brl_linkedlist_TList_obj*)((struct brl_linkedlist_TList_obj*)bbNullObjectTest((BBObject*)(bbt_2 = ((struct openb3d_openb3dcore_TMesh_obj*)bbNullObjectTest((BBObject*)bbt_mesh))->_openb3d_openb3dcore_tmesh_surf_list ))))->clas)->m_ObjectEnumerator((struct brl_linkedlist_TList_obj*)bbt_2);
			while(((struct brl_linkedlist_TListEnum_obj*)bbNullObjectTest((BBObject*)bbt_))->clas->m_HasNext((struct brl_linkedlist_TListEnum_obj*)bbt_)!=0){
				struct openb3d_openb3dcore_TSurface_obj* bbt_surf=(struct openb3d_openb3dcore_TSurface_obj*)((struct openb3d_openb3dcore_TSurface_obj*)&bbNullObject);
				struct BBDebugScope_1 __scope = {
					BBDEBUGSCOPE_LOCALBLOCK,
					0,
					{
						{
							BBDEBUGDECL_LOCAL,
							"surf",
							":TSurface",
							.var_address=&bbt_surf
						},
						{
							BBDEBUGDECL_END
						}
					}
				};
				bbOnDebugEnterScope((BBDebugScope *)&__scope);
				bbt_surf=(struct openb3d_openb3dcore_TSurface_obj*)((struct openb3d_openb3dcore_TSurface_obj*)bbObjectDowncast((BBOBJECT)((struct brl_linkedlist_TListEnum_obj*)bbNullObjectTest((BBObject*)bbt_))->clas->m_NextObject((struct brl_linkedlist_TListEnum_obj*)bbt_),(BBClass*)&openb3d_openb3dcore_TSurface));
				if(((BBOBJECT)bbt_surf)==&bbNullObject){
					bbOnDebugLeaveScope();
					continue;
				}
				struct BBDebugStm __stmt_0 = {0xa6bea28b2db61a66, 501, 0};
				bbOnDebugEnterStm(&__stmt_0);
				((struct openb3d_openb3dcore_TSurface_obj*)bbNullObjectTest((BBObject*)bbt_surf))->_openb3d_openb3dcore_tsurface_vert_coords =SurfaceFloat_(openb3d_openb3dcore_TSurface_GetInstance_pb_TTSurface((struct openb3d_openb3dcore_TSurface_obj*)bbt_surf),3);
				bbOnDebugLeaveScope();
			}
			struct BBDebugStm __stmt_3 = {0xa6bea28b2db61a66, 503, 0};
			bbOnDebugEnterStm(&__stmt_3);
			struct brl_linkedlist_TList_obj* bbt_4;
			struct brl_linkedlist_TListEnum_obj* bbt_3=(struct brl_linkedlist_TListEnum_obj*)(((struct brl_linkedlist_TList_obj*)((struct brl_linkedlist_TList_obj*)bbNullObjectTest((BBObject*)(bbt_4 = ((struct openb3d_openb3dcore_TMesh_obj*)bbNullObjectTest((BBObject*)bbt_mesh))->_openb3d_openb3dcore_tmesh_anim_surf_list ))))->clas)->m_ObjectEnumerator((struct brl_linkedlist_TList_obj*)bbt_4);
			while(((struct brl_linkedlist_TListEnum_obj*)bbNullObjectTest((BBObject*)bbt_3))->clas->m_HasNext((struct brl_linkedlist_TListEnum_obj*)bbt_3)!=0){
				struct openb3d_openb3dcore_TSurface_obj* bbt_surf2=(struct openb3d_openb3dcore_TSurface_obj*)((struct openb3d_openb3dcore_TSurface_obj*)&bbNullObject);
				struct BBDebugScope_1 __scope = {
					BBDEBUGSCOPE_LOCALBLOCK,
					0,
					{
						{
							BBDEBUGDECL_LOCAL,
							"surf",
							":TSurface",
							.var_address=&bbt_surf2
						},
						{
							BBDEBUGDECL_END
						}
					}
				};
				bbOnDebugEnterScope((BBDebugScope *)&__scope);
				bbt_surf2=(struct openb3d_openb3dcore_TSurface_obj*)((struct openb3d_openb3dcore_TSurface_obj*)bbObjectDowncast((BBOBJECT)((struct brl_linkedlist_TListEnum_obj*)bbNullObjectTest((BBObject*)bbt_3))->clas->m_NextObject((struct brl_linkedlist_TListEnum_obj*)bbt_3),(BBClass*)&openb3d_openb3dcore_TSurface));
				if(((BBOBJECT)bbt_surf2)==&bbNullObject){
					bbOnDebugLeaveScope();
					continue;
				}
				struct BBDebugStm __stmt_0 = {0xa6bea28b2db61a66, 504, 0};
				bbOnDebugEnterStm(&__stmt_0);
				((struct openb3d_openb3dcore_TSurface_obj*)bbNullObjectTest((BBObject*)bbt_surf2))->_openb3d_openb3dcore_tsurface_vert_coords =SurfaceFloat_(openb3d_openb3dcore_TSurface_GetInstance_pb_TTSurface((struct openb3d_openb3dcore_TSurface_obj*)bbt_surf2),3);
				struct BBDebugStm __stmt_1 = {0xa6bea28b2db61a66, 505, 0};
				bbOnDebugEnterStm(&__stmt_1);
				((struct openb3d_openb3dcore_TSurface_obj*)bbNullObjectTest((BBObject*)bbt_surf2))->_openb3d_openb3dcore_tsurface_vert_weight4 =SurfaceFloat_(openb3d_openb3dcore_TSurface_GetInstance_pb_TTSurface((struct openb3d_openb3dcore_TSurface_obj*)bbt_surf2),16);
				bbOnDebugLeaveScope();
			}
			bbOnDebugLeaveScope();
		}else{
			struct BBDebugScope __scope = {
				BBDEBUGSCOPE_LOCALBLOCK,
				0,
				{
					{
						BBDEBUGDECL_END
					}
				}
			};
			bbOnDebugEnterScope((BBDebugScope *)&__scope);
			struct BBDebugStm __stmt_0 = {0xa6bea28b2db61a66, 507, 0};
			bbOnDebugEnterStm(&__stmt_0);
			if(((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tentity_anim [0]==1){
				struct BBDebugScope __scope = {
					BBDEBUGSCOPE_LOCALBLOCK,
					0,
					{
						{
							BBDEBUGDECL_END
						}
					}
				};
				bbOnDebugEnterScope((BBDebugScope *)&__scope);
				struct BBDebugStm __stmt_0 = {0xa6bea28b2db61a66, 508, 0};
				bbOnDebugEnterStm(&__stmt_0);
				((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tentity_anim_seqs_first =EntityInt_(o->clas->f_GetInstance_pb_TTEntity((struct openb3d_openb3dcore_TEntity_obj*)o),35);
				struct BBDebugStm __stmt_1 = {0xa6bea28b2db61a66, 509, 0};
				bbOnDebugEnterStm(&__stmt_1);
				((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tentity_anim_seqs_last =EntityInt_(o->clas->f_GetInstance_pb_TTEntity((struct openb3d_openb3dcore_TEntity_obj*)o),36);
				struct BBDebugStm __stmt_2 = {0xa6bea28b2db61a66, 510, 0};
				bbOnDebugEnterStm(&__stmt_2);
				struct brl_linkedlist_TList_obj* bbt_6;
				struct brl_linkedlist_TListEnum_obj* bbt_5=(struct brl_linkedlist_TListEnum_obj*)(((struct brl_linkedlist_TList_obj*)((struct brl_linkedlist_TList_obj*)bbNullObjectTest((BBObject*)(bbt_6 = ((struct openb3d_openb3dcore_TMesh_obj*)bbNullObjectTest((BBObject*)bbt_mesh))->_openb3d_openb3dcore_tmesh_bones ))))->clas)->m_ObjectEnumerator((struct brl_linkedlist_TList_obj*)bbt_6);
				while(((struct brl_linkedlist_TListEnum_obj*)bbNullObjectTest((BBObject*)bbt_5))->clas->m_HasNext((struct brl_linkedlist_TListEnum_obj*)bbt_5)!=0){
					struct openb3d_openb3dcore_TBone_obj* bbt_bone=(struct openb3d_openb3dcore_TBone_obj*)((struct openb3d_openb3dcore_TBone_obj*)&bbNullObject);
					struct BBDebugScope_1 __scope = {
						BBDEBUGSCOPE_LOCALBLOCK,
						0,
						{
							{
								BBDEBUGDECL_LOCAL,
								"bone",
								":TBone",
								.var_address=&bbt_bone
							},
							{
								BBDEBUGDECL_END
							}
						}
					};
					bbOnDebugEnterScope((BBDebugScope *)&__scope);
					bbt_bone=(struct openb3d_openb3dcore_TBone_obj*)((struct openb3d_openb3dcore_TBone_obj*)bbObjectDowncast((BBOBJECT)((struct brl_linkedlist_TListEnum_obj*)bbNullObjectTest((BBObject*)bbt_5))->clas->m_NextObject((struct brl_linkedlist_TListEnum_obj*)bbt_5),(BBClass*)&openb3d_openb3dcore_TBone));
					if(((BBOBJECT)bbt_bone)==&bbNullObject){
						bbOnDebugLeaveScope();
						continue;
					}
					struct BBDebugStm __stmt_0 = {0xa6bea28b2db61a66, 511, 0};
					bbOnDebugEnterStm(&__stmt_0);
					((struct openb3d_openb3dcore_TAnimationKeys_obj*)bbNullObjectTest((BBObject*)((struct openb3d_openb3dcore_TBone_obj*)bbNullObjectTest((BBObject*)bbt_bone))->_openb3d_openb3dcore_tbone_keys ))->_openb3d_openb3dcore_tanimationkeys_flags =AnimationKeysInt_(openb3d_openb3dcore_TAnimationKeys_GetInstance_pb_TTAnimationKeys((struct openb3d_openb3dcore_TAnimationKeys_obj*)((struct openb3d_openb3dcore_TBone_obj*)bbNullObjectTest((BBObject*)bbt_bone))->_openb3d_openb3dcore_tbone_keys ),2);
					struct BBDebugStm __stmt_1 = {0xa6bea28b2db61a66, 512, 0};
					bbOnDebugEnterStm(&__stmt_1);
					((struct openb3d_openb3dcore_TAnimationKeys_obj*)bbNullObjectTest((BBObject*)((struct openb3d_openb3dcore_TBone_obj*)bbNullObjectTest((BBObject*)bbt_bone))->_openb3d_openb3dcore_tbone_keys ))->_openb3d_openb3dcore_tanimationkeys_px =AnimationKeysFloat_(openb3d_openb3dcore_TAnimationKeys_GetInstance_pb_TTAnimationKeys((struct openb3d_openb3dcore_TAnimationKeys_obj*)((struct openb3d_openb3dcore_TBone_obj*)bbNullObjectTest((BBObject*)bbt_bone))->_openb3d_openb3dcore_tbone_keys ),3);
					struct BBDebugStm __stmt_2 = {0xa6bea28b2db61a66, 513, 0};
					bbOnDebugEnterStm(&__stmt_2);
					((struct openb3d_openb3dcore_TAnimationKeys_obj*)bbNullObjectTest((BBObject*)((struct openb3d_openb3dcore_TBone_obj*)bbNullObjectTest((BBObject*)bbt_bone))->_openb3d_openb3dcore_tbone_keys ))->_openb3d_openb3dcore_tanimationkeys_py =AnimationKeysFloat_(openb3d_openb3dcore_TAnimationKeys_GetInstance_pb_TTAnimationKeys((struct openb3d_openb3dcore_TAnimationKeys_obj*)((struct openb3d_openb3dcore_TBone_obj*)bbNullObjectTest((BBObject*)bbt_bone))->_openb3d_openb3dcore_tbone_keys ),4);
					struct BBDebugStm __stmt_3 = {0xa6bea28b2db61a66, 514, 0};
					bbOnDebugEnterStm(&__stmt_3);
					((struct openb3d_openb3dcore_TAnimationKeys_obj*)bbNullObjectTest((BBObject*)((struct openb3d_openb3dcore_TBone_obj*)bbNullObjectTest((BBObject*)bbt_bone))->_openb3d_openb3dcore_tbone_keys ))->_openb3d_openb3dcore_tanimationkeys_pz =AnimationKeysFloat_(openb3d_openb3dcore_TAnimationKeys_GetInstance_pb_TTAnimationKeys((struct openb3d_openb3dcore_TAnimationKeys_obj*)((struct openb3d_openb3dcore_TBone_obj*)bbNullObjectTest((BBObject*)bbt_bone))->_openb3d_openb3dcore_tbone_keys ),5);
					struct BBDebugStm __stmt_4 = {0xa6bea28b2db61a66, 515, 0};
					bbOnDebugEnterStm(&__stmt_4);
					((struct openb3d_openb3dcore_TAnimationKeys_obj*)bbNullObjectTest((BBObject*)((struct openb3d_openb3dcore_TBone_obj*)bbNullObjectTest((BBObject*)bbt_bone))->_openb3d_openb3dcore_tbone_keys ))->_openb3d_openb3dcore_tanimationkeys_sx =AnimationKeysFloat_(openb3d_openb3dcore_TAnimationKeys_GetInstance_pb_TTAnimationKeys((struct openb3d_openb3dcore_TAnimationKeys_obj*)((struct openb3d_openb3dcore_TBone_obj*)bbNullObjectTest((BBObject*)bbt_bone))->_openb3d_openb3dcore_tbone_keys ),6);
					struct BBDebugStm __stmt_5 = {0xa6bea28b2db61a66, 516, 0};
					bbOnDebugEnterStm(&__stmt_5);
					((struct openb3d_openb3dcore_TAnimationKeys_obj*)bbNullObjectTest((BBObject*)((struct openb3d_openb3dcore_TBone_obj*)bbNullObjectTest((BBObject*)bbt_bone))->_openb3d_openb3dcore_tbone_keys ))->_openb3d_openb3dcore_tanimationkeys_sy =AnimationKeysFloat_(openb3d_openb3dcore_TAnimationKeys_GetInstance_pb_TTAnimationKeys((struct openb3d_openb3dcore_TAnimationKeys_obj*)((struct openb3d_openb3dcore_TBone_obj*)bbNullObjectTest((BBObject*)bbt_bone))->_openb3d_openb3dcore_tbone_keys ),7);
					struct BBDebugStm __stmt_6 = {0xa6bea28b2db61a66, 517, 0};
					bbOnDebugEnterStm(&__stmt_6);
					((struct openb3d_openb3dcore_TAnimationKeys_obj*)bbNullObjectTest((BBObject*)((struct openb3d_openb3dcore_TBone_obj*)bbNullObjectTest((BBObject*)bbt_bone))->_openb3d_openb3dcore_tbone_keys ))->_openb3d_openb3dcore_tanimationkeys_sz =AnimationKeysFloat_(openb3d_openb3dcore_TAnimationKeys_GetInstance_pb_TTAnimationKeys((struct openb3d_openb3dcore_TAnimationKeys_obj*)((struct openb3d_openb3dcore_TBone_obj*)bbNullObjectTest((BBObject*)bbt_bone))->_openb3d_openb3dcore_tbone_keys ),8);
					struct BBDebugStm __stmt_7 = {0xa6bea28b2db61a66, 518, 0};
					bbOnDebugEnterStm(&__stmt_7);
					((struct openb3d_openb3dcore_TAnimationKeys_obj*)bbNullObjectTest((BBObject*)((struct openb3d_openb3dcore_TBone_obj*)bbNullObjectTest((BBObject*)bbt_bone))->_openb3d_openb3dcore_tbone_keys ))->_openb3d_openb3dcore_tanimationkeys_qw =AnimationKeysFloat_(openb3d_openb3dcore_TAnimationKeys_GetInstance_pb_TTAnimationKeys((struct openb3d_openb3dcore_TAnimationKeys_obj*)((struct openb3d_openb3dcore_TBone_obj*)bbNullObjectTest((BBObject*)bbt_bone))->_openb3d_openb3dcore_tbone_keys ),9);
					struct BBDebugStm __stmt_8 = {0xa6bea28b2db61a66, 519, 0};
					bbOnDebugEnterStm(&__stmt_8);
					((struct openb3d_openb3dcore_TAnimationKeys_obj*)bbNullObjectTest((BBObject*)((struct openb3d_openb3dcore_TBone_obj*)bbNullObjectTest((BBObject*)bbt_bone))->_openb3d_openb3dcore_tbone_keys ))->_openb3d_openb3dcore_tanimationkeys_qx =AnimationKeysFloat_(openb3d_openb3dcore_TAnimationKeys_GetInstance_pb_TTAnimationKeys((struct openb3d_openb3dcore_TAnimationKeys_obj*)((struct openb3d_openb3dcore_TBone_obj*)bbNullObjectTest((BBObject*)bbt_bone))->_openb3d_openb3dcore_tbone_keys ),10);
					struct BBDebugStm __stmt_9 = {0xa6bea28b2db61a66, 520, 0};
					bbOnDebugEnterStm(&__stmt_9);
					((struct openb3d_openb3dcore_TAnimationKeys_obj*)bbNullObjectTest((BBObject*)((struct openb3d_openb3dcore_TBone_obj*)bbNullObjectTest((BBObject*)bbt_bone))->_openb3d_openb3dcore_tbone_keys ))->_openb3d_openb3dcore_tanimationkeys_qy =AnimationKeysFloat_(openb3d_openb3dcore_TAnimationKeys_GetInstance_pb_TTAnimationKeys((struct openb3d_openb3dcore_TAnimationKeys_obj*)((struct openb3d_openb3dcore_TBone_obj*)bbNullObjectTest((BBObject*)bbt_bone))->_openb3d_openb3dcore_tbone_keys ),11);
					struct BBDebugStm __stmt_10 = {0xa6bea28b2db61a66, 521, 0};
					bbOnDebugEnterStm(&__stmt_10);
					((struct openb3d_openb3dcore_TAnimationKeys_obj*)bbNullObjectTest((BBObject*)((struct openb3d_openb3dcore_TBone_obj*)bbNullObjectTest((BBObject*)bbt_bone))->_openb3d_openb3dcore_tbone_keys ))->_openb3d_openb3dcore_tanimationkeys_qz =AnimationKeysFloat_(openb3d_openb3dcore_TAnimationKeys_GetInstance_pb_TTAnimationKeys((struct openb3d_openb3dcore_TAnimationKeys_obj*)((struct openb3d_openb3dcore_TBone_obj*)bbNullObjectTest((BBObject*)bbt_bone))->_openb3d_openb3dcore_tbone_keys ),12);
					bbOnDebugLeaveScope();
				}
				bbOnDebugLeaveScope();
			}else{
				struct BBDebugScope __scope = {
					BBDEBUGSCOPE_LOCALBLOCK,
					0,
					{
						{
							BBDEBUGDECL_END
						}
					}
				};
				bbOnDebugEnterScope((BBDebugScope *)&__scope);
				struct BBDebugStm __stmt_0 = {0xa6bea28b2db61a66, 523, 0};
				bbOnDebugEnterStm(&__stmt_0);
				if(((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tentity_anim [0]==2){
					struct BBDebugScope __scope = {
						BBDEBUGSCOPE_LOCALBLOCK,
						0,
						{
							{
								BBDEBUGDECL_END
							}
						}
					};
					bbOnDebugEnterScope((BBDebugScope *)&__scope);
					struct BBDebugStm __stmt_0 = {0xa6bea28b2db61a66, 524, 0};
					bbOnDebugEnterStm(&__stmt_0);
					struct brl_linkedlist_TList_obj* bbt_8;
					struct brl_linkedlist_TListEnum_obj* bbt_7=(struct brl_linkedlist_TListEnum_obj*)(((struct brl_linkedlist_TList_obj*)((struct brl_linkedlist_TList_obj*)bbNullObjectTest((BBObject*)(bbt_8 = ((struct openb3d_openb3dcore_TMesh_obj*)bbNullObjectTest((BBObject*)bbt_mesh))->_openb3d_openb3dcore_tmesh_anim_surf_list ))))->clas)->m_ObjectEnumerator((struct brl_linkedlist_TList_obj*)bbt_8);
					while(((struct brl_linkedlist_TListEnum_obj*)bbNullObjectTest((BBObject*)bbt_7))->clas->m_HasNext((struct brl_linkedlist_TListEnum_obj*)bbt_7)!=0){
						struct openb3d_openb3dcore_TSurface_obj* bbt_surf3=(struct openb3d_openb3dcore_TSurface_obj*)((struct openb3d_openb3dcore_TSurface_obj*)&bbNullObject);
						struct BBDebugScope_1 __scope = {
							BBDEBUGSCOPE_LOCALBLOCK,
							0,
							{
								{
									BBDEBUGDECL_LOCAL,
									"surf",
									":TSurface",
									.var_address=&bbt_surf3
								},
								{
									BBDEBUGDECL_END
								}
							}
						};
						bbOnDebugEnterScope((BBDebugScope *)&__scope);
						bbt_surf3=(struct openb3d_openb3dcore_TSurface_obj*)((struct openb3d_openb3dcore_TSurface_obj*)bbObjectDowncast((BBOBJECT)((struct brl_linkedlist_TListEnum_obj*)bbNullObjectTest((BBObject*)bbt_7))->clas->m_NextObject((struct brl_linkedlist_TListEnum_obj*)bbt_7),(BBClass*)&openb3d_openb3dcore_TSurface));
						if(((BBOBJECT)bbt_surf3)==&bbNullObject){
							bbOnDebugLeaveScope();
							continue;
						}
						struct BBDebugStm __stmt_0 = {0xa6bea28b2db61a66, 525, 0};
						bbOnDebugEnterStm(&__stmt_0);
						((struct openb3d_openb3dcore_TSurface_obj*)bbNullObjectTest((BBObject*)bbt_surf3))->_openb3d_openb3dcore_tsurface_vert_weight4 =SurfaceFloat_(openb3d_openb3dcore_TSurface_GetInstance_pb_TTSurface((struct openb3d_openb3dcore_TSurface_obj*)bbt_surf3),16);
						bbOnDebugLeaveScope();
					}
					bbOnDebugLeaveScope();
				}
				bbOnDebugLeaveScope();
			}
			bbOnDebugLeaveScope();
		}
		bbOnDebugLeaveScope();
	}
	struct BBDebugStm __stmt_3 = {0xa6bea28b2db61a66, 529, 0};
	bbOnDebugEnterStm(&__stmt_3);
	bbOnDebugLeaveScope();
	return bbt_seq;
}
BBINT _openb3d_openb3dcore_TEntity_SetAnimKey_fiii(struct openb3d_openb3dcore_TEntity_obj* o,BBFLOAT bbt_frame,BBINT bbt_pos_key,BBINT bbt_rot_key,BBINT bbt_scale_key){
	((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)o));
	struct BBDebugScope_5 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"SetAnimKey",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TEntity",
				.var_address=&o
			},
			{
				BBDEBUGDECL_LOCAL,
				"frame",
				"f",
				.var_address=&bbt_frame
			},
			{
				BBDEBUGDECL_LOCAL,
				"pos_key",
				"i",
				.var_address=&bbt_pos_key
			},
			{
				BBDEBUGDECL_LOCAL,
				"rot_key",
				"i",
				.var_address=&bbt_rot_key
			},
			{
				BBDEBUGDECL_LOCAL,
				"scale_key",
				"i",
				.var_address=&bbt_scale_key
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0xa6bea28b2db61a66, 535, 0};
	bbOnDebugEnterStm(&__stmt_0);
	SetAnimKey_(o->clas->f_GetInstance_pb_TTEntity((struct openb3d_openb3dcore_TEntity_obj*)o),bbt_frame,bbt_pos_key,bbt_rot_key,bbt_scale_key);
	bbOnDebugLeaveScope();
	return 0;
}
BBINT _openb3d_openb3dcore_TEntity_AlignToVector_fffif(struct openb3d_openb3dcore_TEntity_obj* o,BBFLOAT bbt_x,BBFLOAT bbt_y,BBFLOAT bbt_z,BBINT bbt_axis,BBFLOAT bbt_rate){
	((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)o));
	struct BBDebugScope_6 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"AlignToVector",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TEntity",
				.var_address=&o
			},
			{
				BBDEBUGDECL_LOCAL,
				"x",
				"f",
				.var_address=&bbt_x
			},
			{
				BBDEBUGDECL_LOCAL,
				"y",
				"f",
				.var_address=&bbt_y
			},
			{
				BBDEBUGDECL_LOCAL,
				"z",
				"f",
				.var_address=&bbt_z
			},
			{
				BBDEBUGDECL_LOCAL,
				"axis",
				"i",
				.var_address=&bbt_axis
			},
			{
				BBDEBUGDECL_LOCAL,
				"rate",
				"f",
				.var_address=&bbt_rate
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0xa6bea28b2db61a66, 542, 0};
	bbOnDebugEnterStm(&__stmt_0);
	AlignToVector_(o->clas->f_GetInstance_pb_TTEntity((struct openb3d_openb3dcore_TEntity_obj*)o),bbt_x,bbt_y,bbt_z,bbt_axis,bbt_rate);
	bbOnDebugLeaveScope();
	return 0;
}
BBSTRING _openb3d_openb3dcore_TEntity_GetString_pb(struct openb3d_openb3dcore_TEntity_obj* o,BBBYTE* bbt_strPtr){
	((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)o));
	struct BBDebugScope_2 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"GetString",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TEntity",
				.var_address=&o
			},
			{
				BBDEBUGDECL_LOCAL,
				"strPtr",
				"*b",
				.var_address=&bbt_strPtr
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0xa6bea28b2db61a66, 550, 0};
	bbOnDebugEnterStm(&__stmt_0);
	BBBYTE* bbt_=bbt_strPtr;
	struct BBDebugStm __stmt_1 = {0xa6bea28b2db61a66, 551, 0};
	bbOnDebugEnterStm(&__stmt_1);
	if(bbt_==((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tentity_name ){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0xa6bea28b2db61a66, 552, 0};
		bbOnDebugEnterStm(&__stmt_0);
		bbOnDebugLeaveScope();
		bbOnDebugLeaveScope();
		return bbStringFromCString(EntityString_(o->clas->f_GetInstance_pb_TTEntity((struct openb3d_openb3dcore_TEntity_obj*)o),24));
	}else{
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0xa6bea28b2db61a66, 553, 0};
		bbOnDebugEnterStm(&__stmt_0);
		if(bbt_==((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tentity_class_name ){
			struct BBDebugScope __scope = {
				BBDEBUGSCOPE_LOCALBLOCK,
				0,
				{
					{
						BBDEBUGDECL_END
					}
				}
			};
			bbOnDebugEnterScope((BBDebugScope *)&__scope);
			struct BBDebugStm __stmt_0 = {0xa6bea28b2db61a66, 554, 0};
			bbOnDebugEnterStm(&__stmt_0);
			bbOnDebugLeaveScope();
			bbOnDebugLeaveScope();
			bbOnDebugLeaveScope();
			return bbStringFromCString(EntityString_(o->clas->f_GetInstance_pb_TTEntity((struct openb3d_openb3dcore_TEntity_obj*)o),25));
		}
		bbOnDebugLeaveScope();
	}
	bbOnDebugLeaveScope();
	return ((BBString*)&bbEmptyString);
}
BBINT _openb3d_openb3dcore_TEntity_SetString_pbS(struct openb3d_openb3dcore_TEntity_obj* o,BBBYTE* bbt_strPtr,BBSTRING bbt_strValue){
	((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)o));
	struct BBDebugScope_3 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"SetString",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TEntity",
				.var_address=&o
			},
			{
				BBDEBUGDECL_LOCAL,
				"strPtr",
				"*b",
				.var_address=&bbt_strPtr
			},
			{
				BBDEBUGDECL_LOCAL,
				"strValue",
				"$",
				.var_address=&bbt_strValue
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0xa6bea28b2db61a66, 561, 0};
	bbOnDebugEnterStm(&__stmt_0);
	BBBYTE* bbt_=bbt_strPtr;
	struct BBDebugStm __stmt_1 = {0xa6bea28b2db61a66, 562, 0};
	bbOnDebugEnterStm(&__stmt_1);
	if(bbt_==((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tentity_name ){
		BBBYTE* bbt_cString=0;
		struct BBDebugScope_1 __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_LOCAL,
					"cString",
					"*b",
					.var_address=&bbt_cString
				},
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0xa6bea28b2db61a66, 563, 0};
		bbOnDebugEnterStm(&__stmt_0);
		bbt_cString=bbStringToCString((BBSTRING)bbt_strValue);
		struct BBDebugStm __stmt_1 = {0xa6bea28b2db61a66, 564, 0};
		bbOnDebugEnterStm(&__stmt_1);
		SetEntityString_(o->clas->f_GetInstance_pb_TTEntity((struct openb3d_openb3dcore_TEntity_obj*)o),24,bbt_cString);
		struct BBDebugStm __stmt_2 = {0xa6bea28b2db61a66, 565, 0};
		bbOnDebugEnterStm(&__stmt_2);
		bbMemFree((void*)bbt_cString);
		struct BBDebugStm __stmt_3 = {0xa6bea28b2db61a66, 566, 0};
		bbOnDebugEnterStm(&__stmt_3);
		((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tentity_name =EntityString_(o->clas->f_GetInstance_pb_TTEntity((struct openb3d_openb3dcore_TEntity_obj*)o),24);
		bbOnDebugLeaveScope();
	}else{
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0xa6bea28b2db61a66, 567, 0};
		bbOnDebugEnterStm(&__stmt_0);
		if(bbt_==((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tentity_class_name ){
			BBBYTE* bbt_cString2=0;
			struct BBDebugScope_1 __scope = {
				BBDEBUGSCOPE_LOCALBLOCK,
				0,
				{
					{
						BBDEBUGDECL_LOCAL,
						"cString",
						"*b",
						.var_address=&bbt_cString2
					},
					{
						BBDEBUGDECL_END
					}
				}
			};
			bbOnDebugEnterScope((BBDebugScope *)&__scope);
			struct BBDebugStm __stmt_0 = {0xa6bea28b2db61a66, 568, 0};
			bbOnDebugEnterStm(&__stmt_0);
			bbt_cString2=bbStringToCString((BBSTRING)bbt_strValue);
			struct BBDebugStm __stmt_1 = {0xa6bea28b2db61a66, 569, 0};
			bbOnDebugEnterStm(&__stmt_1);
			SetEntityString_(o->clas->f_GetInstance_pb_TTEntity((struct openb3d_openb3dcore_TEntity_obj*)o),25,bbt_cString2);
			struct BBDebugStm __stmt_2 = {0xa6bea28b2db61a66, 570, 0};
			bbOnDebugEnterStm(&__stmt_2);
			bbMemFree((void*)bbt_cString2);
			struct BBDebugStm __stmt_3 = {0xa6bea28b2db61a66, 571, 0};
			bbOnDebugEnterStm(&__stmt_3);
			((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tentity_class_name =EntityString_(o->clas->f_GetInstance_pb_TTEntity((struct openb3d_openb3dcore_TEntity_obj*)o),25);
			bbOnDebugLeaveScope();
		}
		bbOnDebugLeaveScope();
	}
	bbOnDebugLeaveScope();
	return 0;
}
BBINT _openb3d_openb3dcore_TEntity_FreeEntity(struct openb3d_openb3dcore_TEntity_obj* o){
	((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)o));
	struct BBDebugScope_1 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"FreeEntity",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TEntity",
				.var_address=&o
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0xa6bea28b2db61a66, 596, 0};
	bbOnDebugEnterStm(&__stmt_0);
	if(((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tentity_exists !=0){
		BBBYTE* bbt_inst=0;
		struct BBDebugScope_1 __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_LOCAL,
					"inst",
					"*b",
					.var_address=&bbt_inst
				},
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0xa6bea28b2db61a66, 597, 0};
		bbOnDebugEnterStm(&__stmt_0);
		((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tentity_exists =0;
		struct BBDebugStm __stmt_1 = {0xa6bea28b2db61a66, 598, 0};
		bbOnDebugEnterStm(&__stmt_1);
		bbt_inst=o->clas->f_GetInstance_pb_TTEntity((struct openb3d_openb3dcore_TEntity_obj*)o);
		struct BBDebugStm __stmt_2 = {0xa6bea28b2db61a66, 599, 0};
		bbOnDebugEnterStm(&__stmt_2);
		((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)o));
		((struct openb3d_openb3dcore_TEntity_obj*)o)->clas->m_FreeEntityList((struct openb3d_openb3dcore_TEntity_obj*)o);
		struct BBDebugStm __stmt_3 = {0xa6bea28b2db61a66, 600, 0};
		bbOnDebugEnterStm(&__stmt_3);
		FreeEntity_(bbt_inst);
		bbOnDebugLeaveScope();
	}
	bbOnDebugLeaveScope();
	return 0;
}
BBINT _openb3d_openb3dcore_TEntity_FreeEntityList(struct openb3d_openb3dcore_TEntity_obj* o){
	((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)o));
	struct BBDebugScope_1 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"FreeEntityList",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TEntity",
				.var_address=&o
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0xa6bea28b2db61a66, 608, 0};
	bbOnDebugEnterStm(&__stmt_0);
	openb3d_openb3dcore_TMatPtr_FreeObject_i_pb(openb3d_openb3dcore_TMatPtr_GetInstance_pb_TTMatPtr((struct openb3d_openb3dcore_TMatPtr_obj*)((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tentity_mat ));
	struct BBDebugStm __stmt_1 = {0xa6bea28b2db61a66, 608, 0};
	bbOnDebugEnterStm(&__stmt_1);
	((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tentity_mat =(struct openb3d_openb3dcore_TMatPtr_obj*)&bbNullObject;
	struct BBDebugStm __stmt_2 = {0xa6bea28b2db61a66, 609, 0};
	bbOnDebugEnterStm(&__stmt_2);
	openb3d_openb3dcore_TMatPtr_FreeObject_i_pb(openb3d_openb3dcore_TMatPtr_GetInstance_pb_TTMatPtr((struct openb3d_openb3dcore_TMatPtr_obj*)((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tentity_rotmat ));
	struct BBDebugStm __stmt_3 = {0xa6bea28b2db61a66, 609, 0};
	bbOnDebugEnterStm(&__stmt_3);
	((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tentity_rotmat =(struct openb3d_openb3dcore_TMatPtr_obj*)&bbNullObject;
	struct BBDebugStm __stmt_4 = {0xa6bea28b2db61a66, 611, 0};
	bbOnDebugEnterStm(&__stmt_4);
	openb3d_openb3dcore_TBrush_FreeObject_i_pb(openb3d_openb3dcore_TBrush_GetInstance_pb_TTBrush((struct openb3d_openb3dcore_TBrush_obj*)((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tentity_brush ));
	struct BBDebugStm __stmt_5 = {0xa6bea28b2db61a66, 611, 0};
	bbOnDebugEnterStm(&__stmt_5);
	((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tentity_brush =(struct openb3d_openb3dcore_TBrush_obj*)&bbNullObject;
	struct BBDebugStm __stmt_6 = {0xa6bea28b2db61a66, 613, 0};
	bbOnDebugEnterStm(&__stmt_6);
	brl_linkedlist_ListRemove((struct brl_linkedlist_TList_obj*)openb3d_openb3dcore_TEntity_entity_list,(BBOBJECT)o);
	struct BBDebugStm __stmt_7 = {0xa6bea28b2db61a66, 613, 0};
	bbOnDebugEnterStm(&__stmt_7);
	openb3d_openb3dcore_TEntity_entity_list_id-=1;
	struct BBDebugStm __stmt_8 = {0xa6bea28b2db61a66, 614, 0};
	bbOnDebugEnterStm(&__stmt_8);
	if(((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tentity_anim_update [0]!=0){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0xa6bea28b2db61a66, 614, 0};
		bbOnDebugEnterStm(&__stmt_0);
		brl_linkedlist_ListRemove((struct brl_linkedlist_TList_obj*)openb3d_openb3dcore_TEntity_animate_list,(BBOBJECT)o);
		struct BBDebugStm __stmt_1 = {0xa6bea28b2db61a66, 614, 0};
		bbOnDebugEnterStm(&__stmt_1);
		openb3d_openb3dcore_TEntity_animate_list_id-=1;
		bbOnDebugLeaveScope();
	}
	struct BBDebugStm __stmt_9 = {0xa6bea28b2db61a66, 615, 0};
	bbOnDebugEnterStm(&__stmt_9);
	if(((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tentity_pick_mode [0]!=0){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0xa6bea28b2db61a66, 615, 0};
		bbOnDebugEnterStm(&__stmt_0);
		brl_linkedlist_ListRemove((struct brl_linkedlist_TList_obj*)openb3d_openb3dcore_TPick_ent_list,(BBOBJECT)o);
		struct BBDebugStm __stmt_1 = {0xa6bea28b2db61a66, 615, 0};
		bbOnDebugEnterStm(&__stmt_1);
		openb3d_openb3dcore_TPick_ent_list_id-=1;
		bbOnDebugLeaveScope();
	}
	struct BBDebugStm __stmt_10 = {0xa6bea28b2db61a66, 617, 0};
	bbOnDebugEnterStm(&__stmt_10);
	if(((BBObject*)((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tentity_parent )!= &bbNullObject){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0xa6bea28b2db61a66, 618, 0};
		bbOnDebugEnterStm(&__stmt_0);
		brl_linkedlist_ListRemove((struct brl_linkedlist_TList_obj*)((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tentity_parent ))->_openb3d_openb3dcore_tentity_child_list ,(BBOBJECT)o);
		struct BBDebugStm __stmt_1 = {0xa6bea28b2db61a66, 618, 0};
		bbOnDebugEnterStm(&__stmt_1);
		((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tentity_parent ))->_openb3d_openb3dcore_tentity_child_list_id -=1;
		bbOnDebugLeaveScope();
	}else{
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0xa6bea28b2db61a66, 619, 0};
		bbOnDebugEnterStm(&__stmt_0);
		if(brl_linkedlist_ListContains((struct brl_linkedlist_TList_obj*)((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)openb3d_openb3dcore_TGlobal3D_root_ent))->_openb3d_openb3dcore_tentity_child_list ,(BBOBJECT)o)!=0){
			struct BBDebugScope __scope = {
				BBDEBUGSCOPE_LOCALBLOCK,
				0,
				{
					{
						BBDEBUGDECL_END
					}
				}
			};
			bbOnDebugEnterScope((BBDebugScope *)&__scope);
			struct BBDebugStm __stmt_0 = {0xa6bea28b2db61a66, 620, 0};
			bbOnDebugEnterStm(&__stmt_0);
			brl_linkedlist_ListRemove((struct brl_linkedlist_TList_obj*)((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)openb3d_openb3dcore_TGlobal3D_root_ent))->_openb3d_openb3dcore_tentity_child_list ,(BBOBJECT)o);
			struct BBDebugStm __stmt_1 = {0xa6bea28b2db61a66, 620, 0};
			bbOnDebugEnterStm(&__stmt_1);
			((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)openb3d_openb3dcore_TGlobal3D_root_ent))->_openb3d_openb3dcore_tentity_child_list_id -=1;
			bbOnDebugLeaveScope();
		}
		bbOnDebugLeaveScope();
	}
	struct BBDebugStm __stmt_11 = {0xa6bea28b2db61a66, 623, 0};
	bbOnDebugEnterStm(&__stmt_11);
	struct brl_linkedlist_TListEnum_obj* bbt_=(struct brl_linkedlist_TListEnum_obj*)((struct brl_linkedlist_TList_obj*)bbNullObjectTest((BBObject*)((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tentity_child_list ))->clas->m_ObjectEnumerator((struct brl_linkedlist_TList_obj*)((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tentity_child_list );
	while(((struct brl_linkedlist_TListEnum_obj*)bbNullObjectTest((BBObject*)bbt_))->clas->m_HasNext((struct brl_linkedlist_TListEnum_obj*)bbt_)!=0){
		struct openb3d_openb3dcore_TEntity_obj* bbt_ent=(struct openb3d_openb3dcore_TEntity_obj*)((struct openb3d_openb3dcore_TEntity_obj*)&bbNullObject);
		struct BBDebugScope_1 __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_LOCAL,
					"ent",
					":TEntity",
					.var_address=&bbt_ent
				},
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		bbt_ent=(struct openb3d_openb3dcore_TEntity_obj*)((struct openb3d_openb3dcore_TEntity_obj*)bbObjectDowncast((BBOBJECT)((struct brl_linkedlist_TListEnum_obj*)bbNullObjectTest((BBObject*)bbt_))->clas->m_NextObject((struct brl_linkedlist_TListEnum_obj*)bbt_),(BBClass*)&openb3d_openb3dcore_TEntity));
		if(((BBOBJECT)bbt_ent)==&bbNullObject){
			bbOnDebugLeaveScope();
			continue;
		}
		struct BBDebugStm __stmt_0 = {0xa6bea28b2db61a66, 624, 0};
		bbOnDebugEnterStm(&__stmt_0);
		if(((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)bbt_ent))->_openb3d_openb3dcore_tentity_exists !=0){
			struct BBDebugScope __scope = {
				BBDEBUGSCOPE_LOCALBLOCK,
				0,
				{
					{
						BBDEBUGDECL_END
					}
				}
			};
			bbOnDebugEnterScope((BBDebugScope *)&__scope);
			struct BBDebugStm __stmt_0 = {0xa6bea28b2db61a66, 625, 0};
			bbOnDebugEnterStm(&__stmt_0);
			((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)bbt_ent))->_openb3d_openb3dcore_tentity_exists =0;
			struct BBDebugStm __stmt_1 = {0xa6bea28b2db61a66, 626, 0};
			bbOnDebugEnterStm(&__stmt_1);
			((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)bbt_ent))->clas->m_FreeEntityList((struct openb3d_openb3dcore_TEntity_obj*)bbt_ent);
			bbOnDebugLeaveScope();
		}
		bbOnDebugLeaveScope();
	}
	struct BBDebugStm __stmt_12 = {0xa6bea28b2db61a66, 630, 0};
	bbOnDebugEnterStm(&__stmt_12);
	brl_linkedlist_ClearList((struct brl_linkedlist_TList_obj*)((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tentity_child_list );
	struct BBDebugStm __stmt_13 = {0xa6bea28b2db61a66, 630, 0};
	bbOnDebugEnterStm(&__stmt_13);
	((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tentity_child_list_id =0;
	struct BBDebugStm __stmt_14 = {0xa6bea28b2db61a66, 631, 0};
	bbOnDebugEnterStm(&__stmt_14);
	o->clas->f_FreeObject_i_pb(o->clas->f_GetInstance_pb_TTEntity((struct openb3d_openb3dcore_TEntity_obj*)o));
	bbOnDebugLeaveScope();
	return 0;
}
BBINT _openb3d_openb3dcore_TEntity_SetParent_TTEntity(struct openb3d_openb3dcore_TEntity_obj* o,struct openb3d_openb3dcore_TEntity_obj* bbt_new_par){
	((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)o));
	struct BBDebugScope_2 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"SetParent",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TEntity",
				.var_address=&o
			},
			{
				BBDEBUGDECL_LOCAL,
				"new_par",
				":TEntity",
				.var_address=&bbt_new_par
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0xa6bea28b2db61a66, 638, 0};
	bbOnDebugEnterStm(&__stmt_0);
	if(((BBOBJECT)((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tentity_parent )!=&bbNullObject){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0xa6bea28b2db61a66, 639, 0};
		bbOnDebugEnterStm(&__stmt_0);
		((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tentity_parent ))->clas->m_EntityListRemove_TTListTObject((struct openb3d_openb3dcore_TEntity_obj*)((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tentity_parent ,(struct brl_linkedlist_TList_obj*)((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tentity_parent ))->_openb3d_openb3dcore_tentity_child_list ,(BBOBJECT)o);
		struct BBDebugStm __stmt_1 = {0xa6bea28b2db61a66, 640, 0};
		bbOnDebugEnterStm(&__stmt_1);
		((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tentity_parent =(struct openb3d_openb3dcore_TEntity_obj*)&bbNullObject;
		bbOnDebugLeaveScope();
	}else{
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0xa6bea28b2db61a66, 642, 0};
		bbOnDebugEnterStm(&__stmt_0);
		((struct openb3d_openb3dcore_TPivot_obj*)bbNullObjectTest((BBObject*)openb3d_openb3dcore_TGlobal3D_root_ent))->clas->m_EntityListRemove_TTListTObject((struct openb3d_openb3dcore_TEntity_obj*)openb3d_openb3dcore_TGlobal3D_root_ent,(struct brl_linkedlist_TList_obj*)((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)openb3d_openb3dcore_TGlobal3D_root_ent))->_openb3d_openb3dcore_tentity_child_list ,(BBOBJECT)o);
		bbOnDebugLeaveScope();
	}
	struct BBDebugStm __stmt_1 = {0xa6bea28b2db61a66, 645, 0};
	bbOnDebugEnterStm(&__stmt_1);
	((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)o));
	((struct openb3d_openb3dcore_TEntity_obj*)o)->clas->m_AddParent_TTEntity((struct openb3d_openb3dcore_TEntity_obj*)o,(struct openb3d_openb3dcore_TEntity_obj*)bbt_new_par);
	bbOnDebugLeaveScope();
	return 0;
}
BBINT _openb3d_openb3dcore_TEntity_PositionEntity_fffi(struct openb3d_openb3dcore_TEntity_obj* o,BBFLOAT bbt_x,BBFLOAT bbt_y,BBFLOAT bbt_z,BBINT bbt_glob){
	((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)o));
	struct BBDebugScope_5 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"PositionEntity",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TEntity",
				.var_address=&o
			},
			{
				BBDEBUGDECL_LOCAL,
				"x",
				"f",
				.var_address=&bbt_x
			},
			{
				BBDEBUGDECL_LOCAL,
				"y",
				"f",
				.var_address=&bbt_y
			},
			{
				BBDEBUGDECL_LOCAL,
				"z",
				"f",
				.var_address=&bbt_z
			},
			{
				BBDEBUGDECL_LOCAL,
				"glob",
				"i",
				.var_address=&bbt_glob
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0xa6bea28b2db61a66, 653, 0};
	bbOnDebugEnterStm(&__stmt_0);
	PositionEntity_(o->clas->f_GetInstance_pb_TTEntity((struct openb3d_openb3dcore_TEntity_obj*)o),bbt_x,bbt_y,bbt_z,bbt_glob);
	bbOnDebugLeaveScope();
	return 0;
}
BBINT _openb3d_openb3dcore_TEntity_MoveEntity_fff(struct openb3d_openb3dcore_TEntity_obj* o,BBFLOAT bbt_x,BBFLOAT bbt_y,BBFLOAT bbt_z){
	((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)o));
	struct BBDebugScope_4 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"MoveEntity",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TEntity",
				.var_address=&o
			},
			{
				BBDEBUGDECL_LOCAL,
				"x",
				"f",
				.var_address=&bbt_x
			},
			{
				BBDEBUGDECL_LOCAL,
				"y",
				"f",
				.var_address=&bbt_y
			},
			{
				BBDEBUGDECL_LOCAL,
				"z",
				"f",
				.var_address=&bbt_z
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0xa6bea28b2db61a66, 659, 0};
	bbOnDebugEnterStm(&__stmt_0);
	MoveEntity_(o->clas->f_GetInstance_pb_TTEntity((struct openb3d_openb3dcore_TEntity_obj*)o),bbt_x,bbt_y,bbt_z);
	bbOnDebugLeaveScope();
	return 0;
}
BBINT _openb3d_openb3dcore_TEntity_TranslateEntity_fffi(struct openb3d_openb3dcore_TEntity_obj* o,BBFLOAT bbt_x,BBFLOAT bbt_y,BBFLOAT bbt_z,BBINT bbt_glob){
	((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)o));
	struct BBDebugScope_5 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"TranslateEntity",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TEntity",
				.var_address=&o
			},
			{
				BBDEBUGDECL_LOCAL,
				"x",
				"f",
				.var_address=&bbt_x
			},
			{
				BBDEBUGDECL_LOCAL,
				"y",
				"f",
				.var_address=&bbt_y
			},
			{
				BBDEBUGDECL_LOCAL,
				"z",
				"f",
				.var_address=&bbt_z
			},
			{
				BBDEBUGDECL_LOCAL,
				"glob",
				"i",
				.var_address=&bbt_glob
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0xa6bea28b2db61a66, 665, 0};
	bbOnDebugEnterStm(&__stmt_0);
	TranslateEntity_(o->clas->f_GetInstance_pb_TTEntity((struct openb3d_openb3dcore_TEntity_obj*)o),bbt_x,bbt_y,bbt_z,bbt_glob);
	bbOnDebugLeaveScope();
	return 0;
}
BBINT _openb3d_openb3dcore_TEntity_ScaleEntity_fffi(struct openb3d_openb3dcore_TEntity_obj* o,BBFLOAT bbt_x,BBFLOAT bbt_y,BBFLOAT bbt_z,BBINT bbt_glob){
	((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)o));
	struct BBDebugScope_5 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"ScaleEntity",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TEntity",
				.var_address=&o
			},
			{
				BBDEBUGDECL_LOCAL,
				"x",
				"f",
				.var_address=&bbt_x
			},
			{
				BBDEBUGDECL_LOCAL,
				"y",
				"f",
				.var_address=&bbt_y
			},
			{
				BBDEBUGDECL_LOCAL,
				"z",
				"f",
				.var_address=&bbt_z
			},
			{
				BBDEBUGDECL_LOCAL,
				"glob",
				"i",
				.var_address=&bbt_glob
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0xa6bea28b2db61a66, 671, 0};
	bbOnDebugEnterStm(&__stmt_0);
	ScaleEntity_(o->clas->f_GetInstance_pb_TTEntity((struct openb3d_openb3dcore_TEntity_obj*)o),bbt_x,bbt_y,bbt_z,bbt_glob);
	bbOnDebugLeaveScope();
	return 0;
}
BBINT _openb3d_openb3dcore_TEntity_RotateEntity_fffi(struct openb3d_openb3dcore_TEntity_obj* o,BBFLOAT bbt_x,BBFLOAT bbt_y,BBFLOAT bbt_z,BBINT bbt_glob){
	((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)o));
	struct BBDebugScope_5 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"RotateEntity",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TEntity",
				.var_address=&o
			},
			{
				BBDEBUGDECL_LOCAL,
				"x",
				"f",
				.var_address=&bbt_x
			},
			{
				BBDEBUGDECL_LOCAL,
				"y",
				"f",
				.var_address=&bbt_y
			},
			{
				BBDEBUGDECL_LOCAL,
				"z",
				"f",
				.var_address=&bbt_z
			},
			{
				BBDEBUGDECL_LOCAL,
				"glob",
				"i",
				.var_address=&bbt_glob
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0xa6bea28b2db61a66, 677, 0};
	bbOnDebugEnterStm(&__stmt_0);
	RotateEntity_(o->clas->f_GetInstance_pb_TTEntity((struct openb3d_openb3dcore_TEntity_obj*)o),-bbt_x,bbt_y,bbt_z,bbt_glob);
	bbOnDebugLeaveScope();
	return 0;
}
BBINT _openb3d_openb3dcore_TEntity_TurnEntity_fffi(struct openb3d_openb3dcore_TEntity_obj* o,BBFLOAT bbt_x,BBFLOAT bbt_y,BBFLOAT bbt_z,BBINT bbt_glob){
	((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)o));
	struct BBDebugScope_5 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"TurnEntity",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TEntity",
				.var_address=&o
			},
			{
				BBDEBUGDECL_LOCAL,
				"x",
				"f",
				.var_address=&bbt_x
			},
			{
				BBDEBUGDECL_LOCAL,
				"y",
				"f",
				.var_address=&bbt_y
			},
			{
				BBDEBUGDECL_LOCAL,
				"z",
				"f",
				.var_address=&bbt_z
			},
			{
				BBDEBUGDECL_LOCAL,
				"glob",
				"i",
				.var_address=&bbt_glob
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0xa6bea28b2db61a66, 683, 0};
	bbOnDebugEnterStm(&__stmt_0);
	TurnEntity_(o->clas->f_GetInstance_pb_TTEntity((struct openb3d_openb3dcore_TEntity_obj*)o),-bbt_x,bbt_y,bbt_z,bbt_glob);
	bbOnDebugLeaveScope();
	return 0;
}
BBINT _openb3d_openb3dcore_TEntity_PointEntity_TTEntityf(struct openb3d_openb3dcore_TEntity_obj* o,struct openb3d_openb3dcore_TEntity_obj* bbt_target_ent,BBFLOAT bbt_roll){
	((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)o));
	struct BBDebugScope_3 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"PointEntity",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TEntity",
				.var_address=&o
			},
			{
				BBDEBUGDECL_LOCAL,
				"target_ent",
				":TEntity",
				.var_address=&bbt_target_ent
			},
			{
				BBDEBUGDECL_LOCAL,
				"roll",
				"f",
				.var_address=&bbt_roll
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0xa6bea28b2db61a66, 689, 0};
	bbOnDebugEnterStm(&__stmt_0);
	PointEntity_(o->clas->f_GetInstance_pb_TTEntity((struct openb3d_openb3dcore_TEntity_obj*)o),o->clas->f_GetInstance_pb_TTEntity((struct openb3d_openb3dcore_TEntity_obj*)bbt_target_ent),bbt_roll);
	bbOnDebugLeaveScope();
	return 0;
}
BBINT _openb3d_openb3dcore_TEntity_LoadAnimSeq_S(struct openb3d_openb3dcore_TEntity_obj* o,BBSTRING bbt_file){
	((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)o));
	BBBYTE* bbt_cString=0;
	BBINT bbt_seqnum=0;
	struct BBDebugScope_4 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"LoadAnimSeq",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TEntity",
				.var_address=&o
			},
			{
				BBDEBUGDECL_LOCAL,
				"file",
				"$",
				.var_address=&bbt_file
			},
			{
				BBDEBUGDECL_LOCAL,
				"cString",
				"*b",
				.var_address=&bbt_cString
			},
			{
				BBDEBUGDECL_LOCAL,
				"seqnum",
				"i",
				.var_address=&bbt_seqnum
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0xa6bea28b2db61a66, 698, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbt_cString=bbStringToCString((BBSTRING)bbt_file);
	struct BBDebugStm __stmt_1 = {0xa6bea28b2db61a66, 699, 0};
	bbOnDebugEnterStm(&__stmt_1);
	bbt_seqnum=LoadAnimSeq_(o->clas->f_GetInstance_pb_TTEntity((struct openb3d_openb3dcore_TEntity_obj*)o),bbt_cString);
	struct BBDebugStm __stmt_2 = {0xa6bea28b2db61a66, 700, 0};
	bbOnDebugEnterStm(&__stmt_2);
	bbMemFree((void*)bbt_cString);
	struct BBDebugStm __stmt_3 = {0xa6bea28b2db61a66, 701, 0};
	bbOnDebugEnterStm(&__stmt_3);
	bbOnDebugLeaveScope();
	return bbt_seqnum;
}
BBINT _openb3d_openb3dcore_TEntity_ExtractAnimSeq_iii(struct openb3d_openb3dcore_TEntity_obj* o,BBINT bbt_first_frame,BBINT bbt_last_frame,BBINT bbt_seq){
	((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)o));
	struct BBDebugScope_4 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"ExtractAnimSeq",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TEntity",
				.var_address=&o
			},
			{
				BBDEBUGDECL_LOCAL,
				"first_frame",
				"i",
				.var_address=&bbt_first_frame
			},
			{
				BBDEBUGDECL_LOCAL,
				"last_frame",
				"i",
				.var_address=&bbt_last_frame
			},
			{
				BBDEBUGDECL_LOCAL,
				"seq",
				"i",
				.var_address=&bbt_seq
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0xa6bea28b2db61a66, 707, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbOnDebugLeaveScope();
	return ExtractAnimSeq_(o->clas->f_GetInstance_pb_TTEntity((struct openb3d_openb3dcore_TEntity_obj*)o),bbt_first_frame,bbt_last_frame,bbt_seq);
}
BBINT _openb3d_openb3dcore_TEntity_Animate_ifii(struct openb3d_openb3dcore_TEntity_obj* o,BBINT bbt_Mode,BBFLOAT bbt_speed,BBINT bbt_seq,BBINT bbt_trans){
	((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)o));
	struct BBDebugScope_5 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"Animate",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TEntity",
				.var_address=&o
			},
			{
				BBDEBUGDECL_LOCAL,
				"Mode",
				"i",
				.var_address=&bbt_Mode
			},
			{
				BBDEBUGDECL_LOCAL,
				"speed",
				"f",
				.var_address=&bbt_speed
			},
			{
				BBDEBUGDECL_LOCAL,
				"seq",
				"i",
				.var_address=&bbt_seq
			},
			{
				BBDEBUGDECL_LOCAL,
				"trans",
				"i",
				.var_address=&bbt_trans
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0xa6bea28b2db61a66, 713, 0};
	bbOnDebugEnterStm(&__stmt_0);
	if(((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tentity_anim_list [0]==0){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0xa6bea28b2db61a66, 713, 0};
		bbOnDebugEnterStm(&__stmt_0);
		brl_linkedlist_ListAddLast((struct brl_linkedlist_TList_obj*)openb3d_openb3dcore_TEntity_animate_list,(BBOBJECT)o);
		struct BBDebugStm __stmt_1 = {0xa6bea28b2db61a66, 713, 0};
		bbOnDebugEnterStm(&__stmt_1);
		openb3d_openb3dcore_TEntity_animate_list_id+=1;
		bbOnDebugLeaveScope();
	}
	struct BBDebugStm __stmt_1 = {0xa6bea28b2db61a66, 715, 0};
	bbOnDebugEnterStm(&__stmt_1);
	Animate_(o->clas->f_GetInstance_pb_TTEntity((struct openb3d_openb3dcore_TEntity_obj*)o),bbt_Mode,bbt_speed,bbt_seq,bbt_trans);
	bbOnDebugLeaveScope();
	return 0;
}
BBINT _openb3d_openb3dcore_TEntity_SetAnimTime_fi(struct openb3d_openb3dcore_TEntity_obj* o,BBFLOAT bbt_time,BBINT bbt_seq){
	((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)o));
	struct BBDebugScope_3 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"SetAnimTime",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TEntity",
				.var_address=&o
			},
			{
				BBDEBUGDECL_LOCAL,
				"time",
				"f",
				.var_address=&bbt_time
			},
			{
				BBDEBUGDECL_LOCAL,
				"seq",
				"i",
				.var_address=&bbt_seq
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0xa6bea28b2db61a66, 721, 0};
	bbOnDebugEnterStm(&__stmt_0);
	SetAnimTime_(o->clas->f_GetInstance_pb_TTEntity((struct openb3d_openb3dcore_TEntity_obj*)o),bbt_time,bbt_seq);
	bbOnDebugLeaveScope();
	return 0;
}
BBINT _openb3d_openb3dcore_TEntity_AnimSeq(struct openb3d_openb3dcore_TEntity_obj* o){
	((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)o));
	struct BBDebugScope_1 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"AnimSeq",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TEntity",
				.var_address=&o
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0xa6bea28b2db61a66, 727, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbOnDebugLeaveScope();
	return AnimSeq_(o->clas->f_GetInstance_pb_TTEntity((struct openb3d_openb3dcore_TEntity_obj*)o));
}
BBINT _openb3d_openb3dcore_TEntity_AnimLength(struct openb3d_openb3dcore_TEntity_obj* o){
	((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)o));
	struct BBDebugScope_1 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"AnimLength",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TEntity",
				.var_address=&o
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0xa6bea28b2db61a66, 733, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbOnDebugLeaveScope();
	return AnimLength_(o->clas->f_GetInstance_pb_TTEntity((struct openb3d_openb3dcore_TEntity_obj*)o));
}
BBFLOAT _openb3d_openb3dcore_TEntity_AnimTime(struct openb3d_openb3dcore_TEntity_obj* o){
	((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)o));
	struct BBDebugScope_1 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"AnimTime",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TEntity",
				.var_address=&o
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0xa6bea28b2db61a66, 739, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbOnDebugLeaveScope();
	return AnimTime_(o->clas->f_GetInstance_pb_TTEntity((struct openb3d_openb3dcore_TEntity_obj*)o));
}
BBINT _openb3d_openb3dcore_TEntity_Animating(struct openb3d_openb3dcore_TEntity_obj* o){
	((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)o));
	struct BBDebugScope_1 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"Animating",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TEntity",
				.var_address=&o
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0xa6bea28b2db61a66, 745, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbOnDebugLeaveScope();
	return Animating_(o->clas->f_GetInstance_pb_TTEntity((struct openb3d_openb3dcore_TEntity_obj*)o));
}
BBINT _openb3d_openb3dcore_TEntity_EntityColor_fffi(struct openb3d_openb3dcore_TEntity_obj* o,BBFLOAT bbt_red,BBFLOAT bbt_green,BBFLOAT bbt_blue,BBINT bbt_recursive){
	((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)o));
	struct BBDebugScope_5 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"EntityColor",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TEntity",
				.var_address=&o
			},
			{
				BBDEBUGDECL_LOCAL,
				"red",
				"f",
				.var_address=&bbt_red
			},
			{
				BBDEBUGDECL_LOCAL,
				"green",
				"f",
				.var_address=&bbt_green
			},
			{
				BBDEBUGDECL_LOCAL,
				"blue",
				"f",
				.var_address=&bbt_blue
			},
			{
				BBDEBUGDECL_LOCAL,
				"recursive",
				"i",
				.var_address=&bbt_recursive
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0xa6bea28b2db61a66, 753, 0};
	bbOnDebugEnterStm(&__stmt_0);
	EntityColor_(o->clas->f_GetInstance_pb_TTEntity((struct openb3d_openb3dcore_TEntity_obj*)o),bbt_red,bbt_green,bbt_blue,bbt_recursive);
	bbOnDebugLeaveScope();
	return 0;
}
BBINT _openb3d_openb3dcore_TEntity_EntityAlpha_f(struct openb3d_openb3dcore_TEntity_obj* o,BBFLOAT bbt_alpha){
	((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)o));
	struct BBDebugScope_2 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"EntityAlpha",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TEntity",
				.var_address=&o
			},
			{
				BBDEBUGDECL_LOCAL,
				"alpha",
				"f",
				.var_address=&bbt_alpha
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0xa6bea28b2db61a66, 759, 0};
	bbOnDebugEnterStm(&__stmt_0);
	EntityAlpha_(o->clas->f_GetInstance_pb_TTEntity((struct openb3d_openb3dcore_TEntity_obj*)o),bbt_alpha);
	bbOnDebugLeaveScope();
	return 0;
}
BBINT _openb3d_openb3dcore_TEntity_EntityShininess_f(struct openb3d_openb3dcore_TEntity_obj* o,BBFLOAT bbt_shine){
	((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)o));
	struct BBDebugScope_2 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"EntityShininess",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TEntity",
				.var_address=&o
			},
			{
				BBDEBUGDECL_LOCAL,
				"shine",
				"f",
				.var_address=&bbt_shine
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0xa6bea28b2db61a66, 765, 0};
	bbOnDebugEnterStm(&__stmt_0);
	EntityShininess_(o->clas->f_GetInstance_pb_TTEntity((struct openb3d_openb3dcore_TEntity_obj*)o),bbt_shine);
	bbOnDebugLeaveScope();
	return 0;
}
BBINT _openb3d_openb3dcore_TEntity_EntityTexture_TTTextureii(struct openb3d_openb3dcore_TEntity_obj* o,struct openb3d_openb3dcore_TTexture_obj* bbt_tex,BBINT bbt_frame,BBINT bbt_index){
	((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)o));
	struct BBDebugScope_4 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"EntityTexture",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TEntity",
				.var_address=&o
			},
			{
				BBDEBUGDECL_LOCAL,
				"tex",
				":TTexture",
				.var_address=&bbt_tex
			},
			{
				BBDEBUGDECL_LOCAL,
				"frame",
				"i",
				.var_address=&bbt_frame
			},
			{
				BBDEBUGDECL_LOCAL,
				"index",
				"i",
				.var_address=&bbt_index
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0xa6bea28b2db61a66, 771, 0};
	bbOnDebugEnterStm(&__stmt_0);
	EntityTexture_(o->clas->f_GetInstance_pb_TTEntity((struct openb3d_openb3dcore_TEntity_obj*)o),openb3d_openb3dcore_TTexture_GetInstance_pb_TTTexture((struct openb3d_openb3dcore_TTexture_obj*)bbt_tex),bbt_frame,bbt_index);
	struct BBDebugStm __stmt_1 = {0xa6bea28b2db61a66, 773, 0};
	bbOnDebugEnterStm(&__stmt_1);
	if(((BBOBJECT)((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tentity_brush )!=&bbNullObject){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0xa6bea28b2db61a66, 773, 0};
		bbOnDebugEnterStm(&__stmt_0);
		((struct openb3d_openb3dcore_TBrush_obj*)bbNullObjectTest((BBObject*)((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tentity_brush ))->clas->m_InitFields((struct openb3d_openb3dcore_TBrush_obj*)((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tentity_brush );
		bbOnDebugLeaveScope();
	}
	struct BBDebugStm __stmt_2 = {0xa6bea28b2db61a66, 774, 0};
	bbOnDebugEnterStm(&__stmt_2);
	struct brl_linkedlist_TListEnum_obj* bbt_=(struct brl_linkedlist_TListEnum_obj*)((struct brl_linkedlist_TList_obj*)bbNullObjectTest((BBObject*)((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tentity_child_list ))->clas->m_ObjectEnumerator((struct brl_linkedlist_TList_obj*)((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tentity_child_list );
	while(((struct brl_linkedlist_TListEnum_obj*)bbNullObjectTest((BBObject*)bbt_))->clas->m_HasNext((struct brl_linkedlist_TListEnum_obj*)bbt_)!=0){
		struct openb3d_openb3dcore_TEntity_obj* bbt_ent=(struct openb3d_openb3dcore_TEntity_obj*)((struct openb3d_openb3dcore_TEntity_obj*)&bbNullObject);
		struct BBDebugScope_1 __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_LOCAL,
					"ent",
					":TEntity",
					.var_address=&bbt_ent
				},
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		bbt_ent=(struct openb3d_openb3dcore_TEntity_obj*)((struct openb3d_openb3dcore_TEntity_obj*)bbObjectDowncast((BBOBJECT)((struct brl_linkedlist_TListEnum_obj*)bbNullObjectTest((BBObject*)bbt_))->clas->m_NextObject((struct brl_linkedlist_TListEnum_obj*)bbt_),(BBClass*)&openb3d_openb3dcore_TEntity));
		if(((BBOBJECT)bbt_ent)==&bbNullObject){
			bbOnDebugLeaveScope();
			continue;
		}
		struct BBDebugStm __stmt_0 = {0xa6bea28b2db61a66, 775, 0};
		bbOnDebugEnterStm(&__stmt_0);
		if(((BBOBJECT)((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)bbt_ent))->_openb3d_openb3dcore_tentity_brush )!=&bbNullObject){
			struct BBDebugScope __scope = {
				BBDEBUGSCOPE_LOCALBLOCK,
				0,
				{
					{
						BBDEBUGDECL_END
					}
				}
			};
			bbOnDebugEnterScope((BBDebugScope *)&__scope);
			struct BBDebugStm __stmt_0 = {0xa6bea28b2db61a66, 775, 0};
			bbOnDebugEnterStm(&__stmt_0);
			struct openb3d_openb3dcore_TBrush_obj* bbt_2;
			(((struct openb3d_openb3dcore_TBrush_obj*)((struct openb3d_openb3dcore_TBrush_obj*)bbNullObjectTest((BBObject*)(bbt_2 = ((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)bbt_ent))->_openb3d_openb3dcore_tentity_brush ))))->clas)->m_InitFields((struct openb3d_openb3dcore_TBrush_obj*)bbt_2);
			bbOnDebugLeaveScope();
		}
		bbOnDebugLeaveScope();
	}
	bbOnDebugLeaveScope();
	return 0;
}
BBINT _openb3d_openb3dcore_TEntity_EntityBlend_i(struct openb3d_openb3dcore_TEntity_obj* o,BBINT bbt_blend){
	((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)o));
	struct BBDebugScope_2 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"EntityBlend",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TEntity",
				.var_address=&o
			},
			{
				BBDEBUGDECL_LOCAL,
				"blend",
				"i",
				.var_address=&bbt_blend
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0xa6bea28b2db61a66, 782, 0};
	bbOnDebugEnterStm(&__stmt_0);
	EntityBlend_(o->clas->f_GetInstance_pb_TTEntity((struct openb3d_openb3dcore_TEntity_obj*)o),bbt_blend);
	bbOnDebugLeaveScope();
	return 0;
}
BBINT _openb3d_openb3dcore_TEntity_EntityFX_i(struct openb3d_openb3dcore_TEntity_obj* o,BBINT bbt_fx){
	((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)o));
	struct BBDebugScope_2 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"EntityFX",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TEntity",
				.var_address=&o
			},
			{
				BBDEBUGDECL_LOCAL,
				"fx",
				"i",
				.var_address=&bbt_fx
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0xa6bea28b2db61a66, 788, 0};
	bbOnDebugEnterStm(&__stmt_0);
	EntityFX_(o->clas->f_GetInstance_pb_TTEntity((struct openb3d_openb3dcore_TEntity_obj*)o),bbt_fx);
	bbOnDebugLeaveScope();
	return 0;
}
BBINT _openb3d_openb3dcore_TEntity_PaintEntity_TTBrush(struct openb3d_openb3dcore_TEntity_obj* o,struct openb3d_openb3dcore_TBrush_obj* bbt_bru){
	((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)o));
	struct BBDebugScope_2 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"PaintEntity",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TEntity",
				.var_address=&o
			},
			{
				BBDEBUGDECL_LOCAL,
				"bru",
				":TBrush",
				.var_address=&bbt_bru
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0xa6bea28b2db61a66, 794, 0};
	bbOnDebugEnterStm(&__stmt_0);
	PaintEntity_(o->clas->f_GetInstance_pb_TTEntity((struct openb3d_openb3dcore_TEntity_obj*)o),openb3d_openb3dcore_TBrush_GetInstance_pb_TTBrush((struct openb3d_openb3dcore_TBrush_obj*)bbt_bru));
	struct BBDebugStm __stmt_1 = {0xa6bea28b2db61a66, 796, 0};
	bbOnDebugEnterStm(&__stmt_1);
	if(((BBOBJECT)((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tentity_brush )!=&bbNullObject){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0xa6bea28b2db61a66, 796, 0};
		bbOnDebugEnterStm(&__stmt_0);
		((struct openb3d_openb3dcore_TBrush_obj*)bbNullObjectTest((BBObject*)((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tentity_brush ))->clas->m_InitFields((struct openb3d_openb3dcore_TBrush_obj*)((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tentity_brush );
		bbOnDebugLeaveScope();
	}
	bbOnDebugLeaveScope();
	return 0;
}
struct openb3d_openb3dcore_TBrush_obj* _openb3d_openb3dcore_TEntity_GetEntityBrush(struct openb3d_openb3dcore_TEntity_obj* o){
	((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)o));
	BBBYTE* bbt_inst=0;
	struct openb3d_openb3dcore_TBrush_obj* bbt_brush=(struct openb3d_openb3dcore_TBrush_obj*)((struct openb3d_openb3dcore_TBrush_obj*)&bbNullObject);
	struct BBDebugScope_3 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"GetEntityBrush",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TEntity",
				.var_address=&o
			},
			{
				BBDEBUGDECL_LOCAL,
				"inst",
				"*b",
				.var_address=&bbt_inst
			},
			{
				BBDEBUGDECL_LOCAL,
				"brush",
				":TBrush",
				.var_address=&bbt_brush
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0xa6bea28b2db61a66, 802, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbt_inst=GetEntityBrush_(o->clas->f_GetInstance_pb_TTEntity((struct openb3d_openb3dcore_TEntity_obj*)o));
	struct BBDebugStm __stmt_1 = {0xa6bea28b2db61a66, 803, 0};
	bbOnDebugEnterStm(&__stmt_1);
	bbt_brush=(struct openb3d_openb3dcore_TBrush_obj*)openb3d_openb3dcore_TBrush_GetObject_TTBrush_pb(bbt_inst);
	struct BBDebugStm __stmt_2 = {0xa6bea28b2db61a66, 804, 0};
	bbOnDebugEnterStm(&__stmt_2);
	if((((BBOBJECT)bbt_brush)==&bbNullObject) && (bbt_inst!=0)){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0xa6bea28b2db61a66, 804, 0};
		bbOnDebugEnterStm(&__stmt_0);
		bbt_brush=(struct openb3d_openb3dcore_TBrush_obj*)openb3d_openb3dcore_TBrush_CreateObject_TTBrush_pb(bbt_inst);
		bbOnDebugLeaveScope();
	}
	struct BBDebugStm __stmt_3 = {0xa6bea28b2db61a66, 805, 0};
	bbOnDebugEnterStm(&__stmt_3);
	bbOnDebugLeaveScope();
	return (struct openb3d_openb3dcore_TBrush_obj*)bbt_brush;
}
BBINT _openb3d_openb3dcore_TEntity_EntityOrder_i(struct openb3d_openb3dcore_TEntity_obj* o,BBINT bbt_order){
	((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)o));
	struct BBDebugScope_2 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"EntityOrder",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TEntity",
				.var_address=&o
			},
			{
				BBDEBUGDECL_LOCAL,
				"order",
				"i",
				.var_address=&bbt_order
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0xa6bea28b2db61a66, 813, 0};
	bbOnDebugEnterStm(&__stmt_0);
	EntityOrder_(o->clas->f_GetInstance_pb_TTEntity((struct openb3d_openb3dcore_TEntity_obj*)o),bbt_order);
	bbOnDebugLeaveScope();
	return 0;
}
BBINT _openb3d_openb3dcore_TEntity_ShowEntity(struct openb3d_openb3dcore_TEntity_obj* o){
	((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)o));
	struct BBDebugScope_1 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"ShowEntity",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TEntity",
				.var_address=&o
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0xa6bea28b2db61a66, 819, 0};
	bbOnDebugEnterStm(&__stmt_0);
	if(((BBObject*)((struct openb3d_openb3dcore_TCamera_obj*)bbObjectDowncast((BBOBJECT)o,(BBClass*)&openb3d_openb3dcore_TCamera)))!= &bbNullObject){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0xa6bea28b2db61a66, 819, 0};
		bbOnDebugEnterStm(&__stmt_0);
		openb3d_openb3dcore_TGlobal3D_camera_in_use=(struct openb3d_openb3dcore_TCamera_obj*)((struct openb3d_openb3dcore_TCamera_obj*)bbObjectDowncast((BBOBJECT)o,(BBClass*)&openb3d_openb3dcore_TCamera));
		bbOnDebugLeaveScope();
	}
	struct BBDebugStm __stmt_1 = {0xa6bea28b2db61a66, 820, 0};
	bbOnDebugEnterStm(&__stmt_1);
	ShowEntity_(o->clas->f_GetInstance_pb_TTEntity((struct openb3d_openb3dcore_TEntity_obj*)o));
	bbOnDebugLeaveScope();
	return 0;
}
BBINT _openb3d_openb3dcore_TEntity_HideEntity(struct openb3d_openb3dcore_TEntity_obj* o){
	((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)o));
	struct BBDebugScope_1 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"HideEntity",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TEntity",
				.var_address=&o
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0xa6bea28b2db61a66, 826, 0};
	bbOnDebugEnterStm(&__stmt_0);
	HideEntity_(o->clas->f_GetInstance_pb_TTEntity((struct openb3d_openb3dcore_TEntity_obj*)o));
	bbOnDebugLeaveScope();
	return 0;
}
BBINT _openb3d_openb3dcore_TEntity_NameEntity_S(struct openb3d_openb3dcore_TEntity_obj* o,BBSTRING bbt_name){
	((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)o));
	BBBYTE* bbt_cString=0;
	struct BBDebugScope_3 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"NameEntity",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TEntity",
				.var_address=&o
			},
			{
				BBDEBUGDECL_LOCAL,
				"name",
				"$",
				.var_address=&bbt_name
			},
			{
				BBDEBUGDECL_LOCAL,
				"cString",
				"*b",
				.var_address=&bbt_cString
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0xa6bea28b2db61a66, 834, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbt_cString=bbStringToCString((BBSTRING)bbt_name);
	struct BBDebugStm __stmt_1 = {0xa6bea28b2db61a66, 835, 0};
	bbOnDebugEnterStm(&__stmt_1);
	NameEntity_(o->clas->f_GetInstance_pb_TTEntity((struct openb3d_openb3dcore_TEntity_obj*)o),bbt_cString);
	struct BBDebugStm __stmt_2 = {0xa6bea28b2db61a66, 836, 0};
	bbOnDebugEnterStm(&__stmt_2);
	bbMemFree((void*)bbt_cString);
	bbOnDebugLeaveScope();
	return 0;
}
BBINT _openb3d_openb3dcore_TEntity_EntityParent_TTEntityi(struct openb3d_openb3dcore_TEntity_obj* o,struct openb3d_openb3dcore_TEntity_obj* bbt_parent_ent,BBINT bbt_glob){
	((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)o));
	struct BBDebugScope_3 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"EntityParent",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TEntity",
				.var_address=&o
			},
			{
				BBDEBUGDECL_LOCAL,
				"parent_ent",
				":TEntity",
				.var_address=&bbt_parent_ent
			},
			{
				BBDEBUGDECL_LOCAL,
				"glob",
				"i",
				.var_address=&bbt_glob
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0xa6bea28b2db61a66, 844, 0};
	bbOnDebugEnterStm(&__stmt_0);
	EntityParent_(o->clas->f_GetInstance_pb_TTEntity((struct openb3d_openb3dcore_TEntity_obj*)o),o->clas->f_GetInstance_pb_TTEntity((struct openb3d_openb3dcore_TEntity_obj*)bbt_parent_ent),bbt_glob);
	bbOnDebugLeaveScope();
	return 0;
}
struct openb3d_openb3dcore_TEntity_obj* _openb3d_openb3dcore_TEntity_GetParent(struct openb3d_openb3dcore_TEntity_obj* o){
	((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)o));
	BBBYTE* bbt_inst=0;
	struct BBDebugScope_2 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"GetParent",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TEntity",
				.var_address=&o
			},
			{
				BBDEBUGDECL_LOCAL,
				"inst",
				"*b",
				.var_address=&bbt_inst
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0xa6bea28b2db61a66, 850, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbt_inst=GetParentEntity_(o->clas->f_GetInstance_pb_TTEntity((struct openb3d_openb3dcore_TEntity_obj*)o));
	struct BBDebugStm __stmt_1 = {0xa6bea28b2db61a66, 851, 0};
	bbOnDebugEnterStm(&__stmt_1);
	bbOnDebugLeaveScope();
	return (struct openb3d_openb3dcore_TEntity_obj*)o->clas->f_GetObject_TTEntity_pb(bbt_inst);
}
BBFLOAT _openb3d_openb3dcore_TEntity_EntityX_i(struct openb3d_openb3dcore_TEntity_obj* o,BBINT bbt_glob){
	((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)o));
	struct BBDebugScope_2 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"EntityX",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TEntity",
				.var_address=&o
			},
			{
				BBDEBUGDECL_LOCAL,
				"glob",
				"i",
				.var_address=&bbt_glob
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0xa6bea28b2db61a66, 859, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbOnDebugLeaveScope();
	return EntityX_(o->clas->f_GetInstance_pb_TTEntity((struct openb3d_openb3dcore_TEntity_obj*)o),bbt_glob);
}
BBFLOAT _openb3d_openb3dcore_TEntity_EntityY_i(struct openb3d_openb3dcore_TEntity_obj* o,BBINT bbt_glob){
	((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)o));
	struct BBDebugScope_2 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"EntityY",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TEntity",
				.var_address=&o
			},
			{
				BBDEBUGDECL_LOCAL,
				"glob",
				"i",
				.var_address=&bbt_glob
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0xa6bea28b2db61a66, 865, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbOnDebugLeaveScope();
	return EntityY_(o->clas->f_GetInstance_pb_TTEntity((struct openb3d_openb3dcore_TEntity_obj*)o),bbt_glob);
}
BBFLOAT _openb3d_openb3dcore_TEntity_EntityZ_i(struct openb3d_openb3dcore_TEntity_obj* o,BBINT bbt_glob){
	((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)o));
	struct BBDebugScope_2 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"EntityZ",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TEntity",
				.var_address=&o
			},
			{
				BBDEBUGDECL_LOCAL,
				"glob",
				"i",
				.var_address=&bbt_glob
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0xa6bea28b2db61a66, 871, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbOnDebugLeaveScope();
	return EntityZ_(o->clas->f_GetInstance_pb_TTEntity((struct openb3d_openb3dcore_TEntity_obj*)o),bbt_glob);
}
BBFLOAT _openb3d_openb3dcore_TEntity_EntityPitch_i(struct openb3d_openb3dcore_TEntity_obj* o,BBINT bbt_glob){
	((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)o));
	struct BBDebugScope_2 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"EntityPitch",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TEntity",
				.var_address=&o
			},
			{
				BBDEBUGDECL_LOCAL,
				"glob",
				"i",
				.var_address=&bbt_glob
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0xa6bea28b2db61a66, 877, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbOnDebugLeaveScope();
	return -EntityPitch_(o->clas->f_GetInstance_pb_TTEntity((struct openb3d_openb3dcore_TEntity_obj*)o),bbt_glob);
}
BBFLOAT _openb3d_openb3dcore_TEntity_EntityYaw_i(struct openb3d_openb3dcore_TEntity_obj* o,BBINT bbt_glob){
	((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)o));
	struct BBDebugScope_2 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"EntityYaw",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TEntity",
				.var_address=&o
			},
			{
				BBDEBUGDECL_LOCAL,
				"glob",
				"i",
				.var_address=&bbt_glob
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0xa6bea28b2db61a66, 883, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbOnDebugLeaveScope();
	return EntityYaw_(o->clas->f_GetInstance_pb_TTEntity((struct openb3d_openb3dcore_TEntity_obj*)o),bbt_glob);
}
BBFLOAT _openb3d_openb3dcore_TEntity_EntityRoll_i(struct openb3d_openb3dcore_TEntity_obj* o,BBINT bbt_glob){
	((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)o));
	struct BBDebugScope_2 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"EntityRoll",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TEntity",
				.var_address=&o
			},
			{
				BBDEBUGDECL_LOCAL,
				"glob",
				"i",
				.var_address=&bbt_glob
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0xa6bea28b2db61a66, 889, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbOnDebugLeaveScope();
	return EntityRoll_(o->clas->f_GetInstance_pb_TTEntity((struct openb3d_openb3dcore_TEntity_obj*)o),bbt_glob);
}
BBSTRING _openb3d_openb3dcore_TEntity_EntityClass(struct openb3d_openb3dcore_TEntity_obj* o){
	((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)o));
	struct BBDebugScope_1 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"EntityClass",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TEntity",
				.var_address=&o
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0xa6bea28b2db61a66, 897, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbOnDebugLeaveScope();
	return bbStringFromCString(EntityString_(o->clas->f_GetInstance_pb_TTEntity((struct openb3d_openb3dcore_TEntity_obj*)o),25));
}
BBSTRING _openb3d_openb3dcore_TEntity_EntityName(struct openb3d_openb3dcore_TEntity_obj* o){
	((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)o));
	struct BBDebugScope_1 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"EntityName",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TEntity",
				.var_address=&o
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0xa6bea28b2db61a66, 903, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbOnDebugLeaveScope();
	return bbStringFromCString(EntityString_(o->clas->f_GetInstance_pb_TTEntity((struct openb3d_openb3dcore_TEntity_obj*)o),24));
}
BBINT _openb3d_openb3dcore_TEntity_CountChildren(struct openb3d_openb3dcore_TEntity_obj* o){
	((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)o));
	struct BBDebugScope_1 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"CountChildren",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TEntity",
				.var_address=&o
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0xa6bea28b2db61a66, 911, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbOnDebugLeaveScope();
	return CountChildren_(o->clas->f_GetInstance_pb_TTEntity((struct openb3d_openb3dcore_TEntity_obj*)o));
}
struct openb3d_openb3dcore_TEntity_obj* _openb3d_openb3dcore_TEntity_GetChild_i(struct openb3d_openb3dcore_TEntity_obj* o,BBINT bbt_child_no){
	((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)o));
	BBBYTE* bbt_inst=0;
	struct BBDebugScope_3 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"GetChild",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TEntity",
				.var_address=&o
			},
			{
				BBDEBUGDECL_LOCAL,
				"child_no",
				"i",
				.var_address=&bbt_child_no
			},
			{
				BBDEBUGDECL_LOCAL,
				"inst",
				"*b",
				.var_address=&bbt_inst
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0xa6bea28b2db61a66, 917, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbt_inst=GetChild_(o->clas->f_GetInstance_pb_TTEntity((struct openb3d_openb3dcore_TEntity_obj*)o),bbt_child_no);
	struct BBDebugStm __stmt_1 = {0xa6bea28b2db61a66, 918, 0};
	bbOnDebugEnterStm(&__stmt_1);
	bbOnDebugLeaveScope();
	return (struct openb3d_openb3dcore_TEntity_obj*)o->clas->f_GetObject_TTEntity_pb(bbt_inst);
}
struct openb3d_openb3dcore_TEntity_obj* _openb3d_openb3dcore_TEntity_FindChild_S(struct openb3d_openb3dcore_TEntity_obj* o,BBSTRING bbt_child_name){
	((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)o));
	BBBYTE* bbt_cString=0;
	BBBYTE* bbt_inst=0;
	struct BBDebugScope_4 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"FindChild",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TEntity",
				.var_address=&o
			},
			{
				BBDEBUGDECL_LOCAL,
				"child_name",
				"$",
				.var_address=&bbt_child_name
			},
			{
				BBDEBUGDECL_LOCAL,
				"cString",
				"*b",
				.var_address=&bbt_cString
			},
			{
				BBDEBUGDECL_LOCAL,
				"inst",
				"*b",
				.var_address=&bbt_inst
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0xa6bea28b2db61a66, 924, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbt_cString=bbStringToCString((BBSTRING)bbt_child_name);
	struct BBDebugStm __stmt_1 = {0xa6bea28b2db61a66, 925, 0};
	bbOnDebugEnterStm(&__stmt_1);
	bbt_inst=FindChild_(o->clas->f_GetInstance_pb_TTEntity((struct openb3d_openb3dcore_TEntity_obj*)o),bbt_cString);
	struct BBDebugStm __stmt_2 = {0xa6bea28b2db61a66, 926, 0};
	bbOnDebugEnterStm(&__stmt_2);
	bbMemFree((void*)bbt_cString);
	struct BBDebugStm __stmt_3 = {0xa6bea28b2db61a66, 927, 0};
	bbOnDebugEnterStm(&__stmt_3);
	bbOnDebugLeaveScope();
	return (struct openb3d_openb3dcore_TEntity_obj*)o->clas->f_GetObject_TTEntity_pb(bbt_inst);
}
struct openb3d_openb3dcore_TEntity_obj* _openb3d_openb3dcore_TEntity_EntityPick_f(struct openb3d_openb3dcore_TEntity_obj* o,BBFLOAT bbt_Range){
	((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)o));
	BBBYTE* bbt_inst=0;
	struct BBDebugScope_3 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"EntityPick",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TEntity",
				.var_address=&o
			},
			{
				BBDEBUGDECL_LOCAL,
				"Range",
				"f",
				.var_address=&bbt_Range
			},
			{
				BBDEBUGDECL_LOCAL,
				"inst",
				"*b",
				.var_address=&bbt_inst
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0xa6bea28b2db61a66, 935, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbt_inst=EntityPick_(o->clas->f_GetInstance_pb_TTEntity((struct openb3d_openb3dcore_TEntity_obj*)o),bbt_Range);
	struct BBDebugStm __stmt_1 = {0xa6bea28b2db61a66, 936, 0};
	bbOnDebugEnterStm(&__stmt_1);
	bbOnDebugLeaveScope();
	return (struct openb3d_openb3dcore_TEntity_obj*)o->clas->f_GetObject_TTEntity_pb(bbt_inst);
}
struct openb3d_openb3dcore_TEntity_obj* _openb3d_openb3dcore_TEntity_LinePick_fffffff(struct openb3d_openb3dcore_TEntity_obj* o,BBFLOAT bbt_x,BBFLOAT bbt_y,BBFLOAT bbt_z,BBFLOAT bbt_dx,BBFLOAT bbt_dy,BBFLOAT bbt_dz,BBFLOAT bbt_radius){
	((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)o));
	BBBYTE* bbt_inst=0;
	struct BBDebugScope_9 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"LinePick",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TEntity",
				.var_address=&o
			},
			{
				BBDEBUGDECL_LOCAL,
				"x",
				"f",
				.var_address=&bbt_x
			},
			{
				BBDEBUGDECL_LOCAL,
				"y",
				"f",
				.var_address=&bbt_y
			},
			{
				BBDEBUGDECL_LOCAL,
				"z",
				"f",
				.var_address=&bbt_z
			},
			{
				BBDEBUGDECL_LOCAL,
				"dx",
				"f",
				.var_address=&bbt_dx
			},
			{
				BBDEBUGDECL_LOCAL,
				"dy",
				"f",
				.var_address=&bbt_dy
			},
			{
				BBDEBUGDECL_LOCAL,
				"dz",
				"f",
				.var_address=&bbt_dz
			},
			{
				BBDEBUGDECL_LOCAL,
				"radius",
				"f",
				.var_address=&bbt_radius
			},
			{
				BBDEBUGDECL_LOCAL,
				"inst",
				"*b",
				.var_address=&bbt_inst
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0xa6bea28b2db61a66, 943, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbt_inst=LinePick_(bbt_x,bbt_y,bbt_z,bbt_dx,bbt_dy,bbt_dz,bbt_radius);
	struct BBDebugStm __stmt_1 = {0xa6bea28b2db61a66, 944, 0};
	bbOnDebugEnterStm(&__stmt_1);
	bbOnDebugLeaveScope();
	return (struct openb3d_openb3dcore_TEntity_obj*)o->clas->f_GetObject_TTEntity_pb(bbt_inst);
}
BBINT _openb3d_openb3dcore_TEntity_EntityVisible_TTEntityTTEntity(struct openb3d_openb3dcore_TEntity_obj* o,struct openb3d_openb3dcore_TEntity_obj* bbt_src_ent,struct openb3d_openb3dcore_TEntity_obj* bbt_dest_ent){
	((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)o));
	struct BBDebugScope_3 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"EntityVisible",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TEntity",
				.var_address=&o
			},
			{
				BBDEBUGDECL_LOCAL,
				"src_ent",
				":TEntity",
				.var_address=&bbt_src_ent
			},
			{
				BBDEBUGDECL_LOCAL,
				"dest_ent",
				":TEntity",
				.var_address=&bbt_dest_ent
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0xa6bea28b2db61a66, 950, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbOnDebugLeaveScope();
	return EntityVisible_(o->clas->f_GetInstance_pb_TTEntity((struct openb3d_openb3dcore_TEntity_obj*)bbt_src_ent),o->clas->f_GetInstance_pb_TTEntity((struct openb3d_openb3dcore_TEntity_obj*)bbt_dest_ent));
}
BBFLOAT _openb3d_openb3dcore_TEntity_EntityDistance_TTEntity(struct openb3d_openb3dcore_TEntity_obj* o,struct openb3d_openb3dcore_TEntity_obj* bbt_ent2){
	((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)o));
	struct BBDebugScope_2 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"EntityDistance",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TEntity",
				.var_address=&o
			},
			{
				BBDEBUGDECL_LOCAL,
				"ent2",
				":TEntity",
				.var_address=&bbt_ent2
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0xa6bea28b2db61a66, 958, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbOnDebugLeaveScope();
	return EntityDistance_(o->clas->f_GetInstance_pb_TTEntity((struct openb3d_openb3dcore_TEntity_obj*)o),o->clas->f_GetInstance_pb_TTEntity((struct openb3d_openb3dcore_TEntity_obj*)bbt_ent2));
}
BBFLOAT _openb3d_openb3dcore_TEntity_DeltaYaw_TTEntity(struct openb3d_openb3dcore_TEntity_obj* o,struct openb3d_openb3dcore_TEntity_obj* bbt_ent2){
	((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)o));
	struct BBDebugScope_2 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"DeltaYaw",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TEntity",
				.var_address=&o
			},
			{
				BBDEBUGDECL_LOCAL,
				"ent2",
				":TEntity",
				.var_address=&bbt_ent2
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0xa6bea28b2db61a66, 964, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbOnDebugLeaveScope();
	return DeltaYaw_(o->clas->f_GetInstance_pb_TTEntity((struct openb3d_openb3dcore_TEntity_obj*)o),o->clas->f_GetInstance_pb_TTEntity((struct openb3d_openb3dcore_TEntity_obj*)bbt_ent2));
}
BBFLOAT _openb3d_openb3dcore_TEntity_DeltaPitch_TTEntity(struct openb3d_openb3dcore_TEntity_obj* o,struct openb3d_openb3dcore_TEntity_obj* bbt_ent2){
	((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)o));
	struct BBDebugScope_2 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"DeltaPitch",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TEntity",
				.var_address=&o
			},
			{
				BBDEBUGDECL_LOCAL,
				"ent2",
				":TEntity",
				.var_address=&bbt_ent2
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0xa6bea28b2db61a66, 970, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbOnDebugLeaveScope();
	return -DeltaPitch_(o->clas->f_GetInstance_pb_TTEntity((struct openb3d_openb3dcore_TEntity_obj*)o),o->clas->f_GetInstance_pb_TTEntity((struct openb3d_openb3dcore_TEntity_obj*)bbt_ent2));
}
BBINT openb3d_openb3dcore_TEntity_TFormPoint_i_fffTTEntityTTEntity(BBFLOAT bbt_x,BBFLOAT bbt_y,BBFLOAT bbt_z,struct openb3d_openb3dcore_TEntity_obj* bbt_src_ent,struct openb3d_openb3dcore_TEntity_obj* bbt_dest_ent){
	struct BBDebugScope_5 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"TFormPoint",
		{
			{
				BBDEBUGDECL_LOCAL,
				"x",
				"f",
				.var_address=&bbt_x
			},
			{
				BBDEBUGDECL_LOCAL,
				"y",
				"f",
				.var_address=&bbt_y
			},
			{
				BBDEBUGDECL_LOCAL,
				"z",
				"f",
				.var_address=&bbt_z
			},
			{
				BBDEBUGDECL_LOCAL,
				"src_ent",
				":TEntity",
				.var_address=&bbt_src_ent
			},
			{
				BBDEBUGDECL_LOCAL,
				"dest_ent",
				":TEntity",
				.var_address=&bbt_dest_ent
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0xa6bea28b2db61a66, 978, 0};
	bbOnDebugEnterStm(&__stmt_0);
	TFormPoint_(bbt_x,bbt_y,bbt_z,openb3d_openb3dcore_TEntity_GetInstance_pb_TTEntity((struct openb3d_openb3dcore_TEntity_obj*)bbt_src_ent),openb3d_openb3dcore_TEntity_GetInstance_pb_TTEntity((struct openb3d_openb3dcore_TEntity_obj*)bbt_dest_ent));
	bbOnDebugLeaveScope();
	return 0;
}
BBINT openb3d_openb3dcore_TEntity_TFormVector_i_fffTTEntityTTEntity(BBFLOAT bbt_x,BBFLOAT bbt_y,BBFLOAT bbt_z,struct openb3d_openb3dcore_TEntity_obj* bbt_src_ent,struct openb3d_openb3dcore_TEntity_obj* bbt_dest_ent){
	struct BBDebugScope_5 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"TFormVector",
		{
			{
				BBDEBUGDECL_LOCAL,
				"x",
				"f",
				.var_address=&bbt_x
			},
			{
				BBDEBUGDECL_LOCAL,
				"y",
				"f",
				.var_address=&bbt_y
			},
			{
				BBDEBUGDECL_LOCAL,
				"z",
				"f",
				.var_address=&bbt_z
			},
			{
				BBDEBUGDECL_LOCAL,
				"src_ent",
				":TEntity",
				.var_address=&bbt_src_ent
			},
			{
				BBDEBUGDECL_LOCAL,
				"dest_ent",
				":TEntity",
				.var_address=&bbt_dest_ent
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0xa6bea28b2db61a66, 984, 0};
	bbOnDebugEnterStm(&__stmt_0);
	TFormVector_(bbt_x,bbt_y,bbt_z,openb3d_openb3dcore_TEntity_GetInstance_pb_TTEntity((struct openb3d_openb3dcore_TEntity_obj*)bbt_src_ent),openb3d_openb3dcore_TEntity_GetInstance_pb_TTEntity((struct openb3d_openb3dcore_TEntity_obj*)bbt_dest_ent));
	bbOnDebugLeaveScope();
	return 0;
}
BBINT openb3d_openb3dcore_TEntity_TFormNormal_i_fffTTEntityTTEntity(BBFLOAT bbt_x,BBFLOAT bbt_y,BBFLOAT bbt_z,struct openb3d_openb3dcore_TEntity_obj* bbt_src_ent,struct openb3d_openb3dcore_TEntity_obj* bbt_dest_ent){
	struct BBDebugScope_5 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"TFormNormal",
		{
			{
				BBDEBUGDECL_LOCAL,
				"x",
				"f",
				.var_address=&bbt_x
			},
			{
				BBDEBUGDECL_LOCAL,
				"y",
				"f",
				.var_address=&bbt_y
			},
			{
				BBDEBUGDECL_LOCAL,
				"z",
				"f",
				.var_address=&bbt_z
			},
			{
				BBDEBUGDECL_LOCAL,
				"src_ent",
				":TEntity",
				.var_address=&bbt_src_ent
			},
			{
				BBDEBUGDECL_LOCAL,
				"dest_ent",
				":TEntity",
				.var_address=&bbt_dest_ent
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0xa6bea28b2db61a66, 990, 0};
	bbOnDebugEnterStm(&__stmt_0);
	TFormNormal_(bbt_x,bbt_y,bbt_z,openb3d_openb3dcore_TEntity_GetInstance_pb_TTEntity((struct openb3d_openb3dcore_TEntity_obj*)bbt_src_ent),openb3d_openb3dcore_TEntity_GetInstance_pb_TTEntity((struct openb3d_openb3dcore_TEntity_obj*)bbt_dest_ent));
	bbOnDebugLeaveScope();
	return 0;
}
BBFLOAT openb3d_openb3dcore_TEntity_TFormedX_f(){
	struct BBDebugScope __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"TFormedX",
		{
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0xa6bea28b2db61a66, 996, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbOnDebugLeaveScope();
	return TFormedX_();
}
BBFLOAT openb3d_openb3dcore_TEntity_TFormedY_f(){
	struct BBDebugScope __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"TFormedY",
		{
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0xa6bea28b2db61a66, 1002, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbOnDebugLeaveScope();
	return TFormedY_();
}
BBFLOAT openb3d_openb3dcore_TEntity_TFormedZ_f(){
	struct BBDebugScope __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"TFormedZ",
		{
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0xa6bea28b2db61a66, 1008, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbOnDebugLeaveScope();
	return TFormedZ_();
}
BBFLOAT _openb3d_openb3dcore_TEntity_GetMatElement_ii(struct openb3d_openb3dcore_TEntity_obj* o,BBINT bbt_row,BBINT bbt_col){
	((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)o));
	struct BBDebugScope_3 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"GetMatElement",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TEntity",
				.var_address=&o
			},
			{
				BBDEBUGDECL_LOCAL,
				"row",
				"i",
				.var_address=&bbt_row
			},
			{
				BBDEBUGDECL_LOCAL,
				"col",
				"i",
				.var_address=&bbt_col
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0xa6bea28b2db61a66, 1016, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbOnDebugLeaveScope();
	return ((struct openb3d_openb3dcore_TMatPtr_obj*)bbNullObjectTest((BBObject*)((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tentity_mat ))->_openb3d_openb3dcore_tmatptr_grid [((4*bbt_row)+bbt_col)];
}
BBINT _openb3d_openb3dcore_TEntity_ResetEntity(struct openb3d_openb3dcore_TEntity_obj* o){
	((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)o));
	struct BBDebugScope_1 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"ResetEntity",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TEntity",
				.var_address=&o
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0xa6bea28b2db61a66, 1024, 0};
	bbOnDebugEnterStm(&__stmt_0);
	ResetEntity_(o->clas->f_GetInstance_pb_TTEntity((struct openb3d_openb3dcore_TEntity_obj*)o));
	bbOnDebugLeaveScope();
	return 0;
}
BBINT _openb3d_openb3dcore_TEntity_EntityRadius_ff(struct openb3d_openb3dcore_TEntity_obj* o,BBFLOAT bbt_radius_x,BBFLOAT bbt_radius_y){
	((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)o));
	struct BBDebugScope_3 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"EntityRadius",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TEntity",
				.var_address=&o
			},
			{
				BBDEBUGDECL_LOCAL,
				"radius_x",
				"f",
				.var_address=&bbt_radius_x
			},
			{
				BBDEBUGDECL_LOCAL,
				"radius_y",
				"f",
				.var_address=&bbt_radius_y
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0xa6bea28b2db61a66, 1030, 0};
	bbOnDebugEnterStm(&__stmt_0);
	EntityRadius_(o->clas->f_GetInstance_pb_TTEntity((struct openb3d_openb3dcore_TEntity_obj*)o),bbt_radius_x,bbt_radius_y);
	bbOnDebugLeaveScope();
	return 0;
}
BBINT _openb3d_openb3dcore_TEntity_EntityBox_ffffff(struct openb3d_openb3dcore_TEntity_obj* o,BBFLOAT bbt_x,BBFLOAT bbt_y,BBFLOAT bbt_z,BBFLOAT bbt_w,BBFLOAT bbt_h,BBFLOAT bbt_d){
	((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)o));
	struct BBDebugScope_7 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"EntityBox",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TEntity",
				.var_address=&o
			},
			{
				BBDEBUGDECL_LOCAL,
				"x",
				"f",
				.var_address=&bbt_x
			},
			{
				BBDEBUGDECL_LOCAL,
				"y",
				"f",
				.var_address=&bbt_y
			},
			{
				BBDEBUGDECL_LOCAL,
				"z",
				"f",
				.var_address=&bbt_z
			},
			{
				BBDEBUGDECL_LOCAL,
				"w",
				"f",
				.var_address=&bbt_w
			},
			{
				BBDEBUGDECL_LOCAL,
				"h",
				"f",
				.var_address=&bbt_h
			},
			{
				BBDEBUGDECL_LOCAL,
				"d",
				"f",
				.var_address=&bbt_d
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0xa6bea28b2db61a66, 1036, 0};
	bbOnDebugEnterStm(&__stmt_0);
	EntityBox_(o->clas->f_GetInstance_pb_TTEntity((struct openb3d_openb3dcore_TEntity_obj*)o),bbt_x,bbt_y,bbt_z,bbt_w,bbt_h,bbt_d);
	bbOnDebugLeaveScope();
	return 0;
}
BBINT _openb3d_openb3dcore_TEntity_EntityType_ii(struct openb3d_openb3dcore_TEntity_obj* o,BBINT bbt_type_no,BBINT bbt_recursive){
	((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)o));
	struct BBDebugScope_3 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"EntityType",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TEntity",
				.var_address=&o
			},
			{
				BBDEBUGDECL_LOCAL,
				"type_no",
				"i",
				.var_address=&bbt_type_no
			},
			{
				BBDEBUGDECL_LOCAL,
				"recursive",
				"i",
				.var_address=&bbt_recursive
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0xa6bea28b2db61a66, 1042, 0};
	bbOnDebugEnterStm(&__stmt_0);
	EntityType_(o->clas->f_GetInstance_pb_TTEntity((struct openb3d_openb3dcore_TEntity_obj*)o),bbt_type_no,bbt_recursive);
	bbOnDebugLeaveScope();
	return 0;
}
BBINT _openb3d_openb3dcore_TEntity_EntityPickMode_ii(struct openb3d_openb3dcore_TEntity_obj* o,BBINT bbt_pick_mode_no,BBINT bbt_obscurer){
	((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)o));
	struct BBDebugScope_3 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"EntityPickMode",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TEntity",
				.var_address=&o
			},
			{
				BBDEBUGDECL_LOCAL,
				"pick_mode_no",
				"i",
				.var_address=&bbt_pick_mode_no
			},
			{
				BBDEBUGDECL_LOCAL,
				"obscurer",
				"i",
				.var_address=&bbt_obscurer
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0xa6bea28b2db61a66, 1050, 0};
	bbOnDebugEnterStm(&__stmt_0);
	EntityPickMode_(o->clas->f_GetInstance_pb_TTEntity((struct openb3d_openb3dcore_TEntity_obj*)o),bbt_pick_mode_no,bbt_obscurer);
	struct BBDebugStm __stmt_1 = {0xa6bea28b2db61a66, 1052, 0};
	bbOnDebugEnterStm(&__stmt_1);
	if(bbt_pick_mode_no!=0){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0xa6bea28b2db61a66, 1052, 0};
		bbOnDebugEnterStm(&__stmt_0);
		openb3d_openb3dcore_TPick_AddList__i_TTList((struct brl_linkedlist_TList_obj*)openb3d_openb3dcore_TPick_ent_list);
		bbOnDebugLeaveScope();
	}
	struct BBDebugStm __stmt_2 = {0xa6bea28b2db61a66, 1053, 0};
	bbOnDebugEnterStm(&__stmt_2);
	if(bbt_pick_mode_no==0){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0xa6bea28b2db61a66, 1053, 0};
		bbOnDebugEnterStm(&__stmt_0);
		brl_linkedlist_ListRemove((struct brl_linkedlist_TList_obj*)openb3d_openb3dcore_TPick_ent_list,(BBOBJECT)o);
		struct BBDebugStm __stmt_1 = {0xa6bea28b2db61a66, 1053, 0};
		bbOnDebugEnterStm(&__stmt_1);
		openb3d_openb3dcore_TPick_ent_list_id-=1;
		bbOnDebugLeaveScope();
	}
	bbOnDebugLeaveScope();
	return 0;
}
struct openb3d_openb3dcore_TEntity_obj* _openb3d_openb3dcore_TEntity_EntityCollided_i(struct openb3d_openb3dcore_TEntity_obj* o,BBINT bbt_type_no){
	((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)o));
	BBBYTE* bbt_inst=0;
	struct BBDebugScope_3 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"EntityCollided",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TEntity",
				.var_address=&o
			},
			{
				BBDEBUGDECL_LOCAL,
				"type_no",
				"i",
				.var_address=&bbt_type_no
			},
			{
				BBDEBUGDECL_LOCAL,
				"inst",
				"*b",
				.var_address=&bbt_inst
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0xa6bea28b2db61a66, 1061, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbt_inst=EntityCollided_(o->clas->f_GetInstance_pb_TTEntity((struct openb3d_openb3dcore_TEntity_obj*)o),bbt_type_no);
	struct BBDebugStm __stmt_1 = {0xa6bea28b2db61a66, 1062, 0};
	bbOnDebugEnterStm(&__stmt_1);
	bbOnDebugLeaveScope();
	return (struct openb3d_openb3dcore_TEntity_obj*)o->clas->f_GetObject_TTEntity_pb(bbt_inst);
}
BBINT _openb3d_openb3dcore_TEntity_CountCollisions(struct openb3d_openb3dcore_TEntity_obj* o){
	((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)o));
	struct BBDebugScope_1 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"CountCollisions",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TEntity",
				.var_address=&o
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0xa6bea28b2db61a66, 1068, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbOnDebugLeaveScope();
	return CountCollisions_(o->clas->f_GetInstance_pb_TTEntity((struct openb3d_openb3dcore_TEntity_obj*)o));
}
BBFLOAT _openb3d_openb3dcore_TEntity_CollisionX_i(struct openb3d_openb3dcore_TEntity_obj* o,BBINT bbt_index){
	((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)o));
	struct BBDebugScope_2 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"CollisionX",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TEntity",
				.var_address=&o
			},
			{
				BBDEBUGDECL_LOCAL,
				"index",
				"i",
				.var_address=&bbt_index
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0xa6bea28b2db61a66, 1074, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbOnDebugLeaveScope();
	return CollisionX_(o->clas->f_GetInstance_pb_TTEntity((struct openb3d_openb3dcore_TEntity_obj*)o),bbt_index);
}
BBFLOAT _openb3d_openb3dcore_TEntity_CollisionY_i(struct openb3d_openb3dcore_TEntity_obj* o,BBINT bbt_index){
	((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)o));
	struct BBDebugScope_2 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"CollisionY",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TEntity",
				.var_address=&o
			},
			{
				BBDEBUGDECL_LOCAL,
				"index",
				"i",
				.var_address=&bbt_index
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0xa6bea28b2db61a66, 1080, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbOnDebugLeaveScope();
	return CollisionY_(o->clas->f_GetInstance_pb_TTEntity((struct openb3d_openb3dcore_TEntity_obj*)o),bbt_index);
}
BBFLOAT _openb3d_openb3dcore_TEntity_CollisionZ_i(struct openb3d_openb3dcore_TEntity_obj* o,BBINT bbt_index){
	((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)o));
	struct BBDebugScope_2 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"CollisionZ",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TEntity",
				.var_address=&o
			},
			{
				BBDEBUGDECL_LOCAL,
				"index",
				"i",
				.var_address=&bbt_index
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0xa6bea28b2db61a66, 1086, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbOnDebugLeaveScope();
	return CollisionZ_(o->clas->f_GetInstance_pb_TTEntity((struct openb3d_openb3dcore_TEntity_obj*)o),bbt_index);
}
BBFLOAT _openb3d_openb3dcore_TEntity_CollisionNX_i(struct openb3d_openb3dcore_TEntity_obj* o,BBINT bbt_index){
	((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)o));
	struct BBDebugScope_2 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"CollisionNX",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TEntity",
				.var_address=&o
			},
			{
				BBDEBUGDECL_LOCAL,
				"index",
				"i",
				.var_address=&bbt_index
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0xa6bea28b2db61a66, 1092, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbOnDebugLeaveScope();
	return CollisionNX_(o->clas->f_GetInstance_pb_TTEntity((struct openb3d_openb3dcore_TEntity_obj*)o),bbt_index);
}
BBFLOAT _openb3d_openb3dcore_TEntity_CollisionNY_i(struct openb3d_openb3dcore_TEntity_obj* o,BBINT bbt_index){
	((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)o));
	struct BBDebugScope_2 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"CollisionNY",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TEntity",
				.var_address=&o
			},
			{
				BBDEBUGDECL_LOCAL,
				"index",
				"i",
				.var_address=&bbt_index
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0xa6bea28b2db61a66, 1098, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbOnDebugLeaveScope();
	return CollisionNY_(o->clas->f_GetInstance_pb_TTEntity((struct openb3d_openb3dcore_TEntity_obj*)o),bbt_index);
}
BBFLOAT _openb3d_openb3dcore_TEntity_CollisionNZ_i(struct openb3d_openb3dcore_TEntity_obj* o,BBINT bbt_index){
	((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)o));
	struct BBDebugScope_2 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"CollisionNZ",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TEntity",
				.var_address=&o
			},
			{
				BBDEBUGDECL_LOCAL,
				"index",
				"i",
				.var_address=&bbt_index
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0xa6bea28b2db61a66, 1104, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbOnDebugLeaveScope();
	return CollisionNZ_(o->clas->f_GetInstance_pb_TTEntity((struct openb3d_openb3dcore_TEntity_obj*)o),bbt_index);
}
BBFLOAT _openb3d_openb3dcore_TEntity_CollisionTime_i(struct openb3d_openb3dcore_TEntity_obj* o,BBINT bbt_index){
	((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)o));
	struct BBDebugScope_2 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"CollisionTime",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TEntity",
				.var_address=&o
			},
			{
				BBDEBUGDECL_LOCAL,
				"index",
				"i",
				.var_address=&bbt_index
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0xa6bea28b2db61a66, 1110, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbOnDebugLeaveScope();
	return CollisionTime_(o->clas->f_GetInstance_pb_TTEntity((struct openb3d_openb3dcore_TEntity_obj*)o),bbt_index);
}
struct openb3d_openb3dcore_TEntity_obj* _openb3d_openb3dcore_TEntity_CollisionEntity_i(struct openb3d_openb3dcore_TEntity_obj* o,BBINT bbt_index){
	((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)o));
	BBBYTE* bbt_inst=0;
	struct BBDebugScope_3 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"CollisionEntity",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TEntity",
				.var_address=&o
			},
			{
				BBDEBUGDECL_LOCAL,
				"index",
				"i",
				.var_address=&bbt_index
			},
			{
				BBDEBUGDECL_LOCAL,
				"inst",
				"*b",
				.var_address=&bbt_inst
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0xa6bea28b2db61a66, 1116, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbt_inst=CollisionEntity_(o->clas->f_GetInstance_pb_TTEntity((struct openb3d_openb3dcore_TEntity_obj*)o),bbt_index);
	struct BBDebugStm __stmt_1 = {0xa6bea28b2db61a66, 1117, 0};
	bbOnDebugEnterStm(&__stmt_1);
	bbOnDebugLeaveScope();
	return (struct openb3d_openb3dcore_TEntity_obj*)o->clas->f_GetObject_TTEntity_pb(bbt_inst);
}
struct openb3d_openb3dcore_TSurface_obj* _openb3d_openb3dcore_TEntity_CollisionSurface_i(struct openb3d_openb3dcore_TEntity_obj* o,BBINT bbt_index){
	((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)o));
	BBBYTE* bbt_inst=0;
	struct BBDebugScope_3 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"CollisionSurface",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TEntity",
				.var_address=&o
			},
			{
				BBDEBUGDECL_LOCAL,
				"index",
				"i",
				.var_address=&bbt_index
			},
			{
				BBDEBUGDECL_LOCAL,
				"inst",
				"*b",
				.var_address=&bbt_inst
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0xa6bea28b2db61a66, 1123, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbt_inst=CollisionSurface_(o->clas->f_GetInstance_pb_TTEntity((struct openb3d_openb3dcore_TEntity_obj*)o),bbt_index);
	struct BBDebugStm __stmt_1 = {0xa6bea28b2db61a66, 1124, 0};
	bbOnDebugEnterStm(&__stmt_1);
	bbOnDebugLeaveScope();
	return (struct openb3d_openb3dcore_TSurface_obj*)openb3d_openb3dcore_TSurface_GetObject_TTSurface_pb(bbt_inst);
}
BBINT _openb3d_openb3dcore_TEntity_CollisionTriangle_i(struct openb3d_openb3dcore_TEntity_obj* o,BBINT bbt_index){
	((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)o));
	struct BBDebugScope_2 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"CollisionTriangle",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TEntity",
				.var_address=&o
			},
			{
				BBDEBUGDECL_LOCAL,
				"index",
				"i",
				.var_address=&bbt_index
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0xa6bea28b2db61a66, 1130, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbOnDebugLeaveScope();
	return CollisionTriangle_(o->clas->f_GetInstance_pb_TTEntity((struct openb3d_openb3dcore_TEntity_obj*)o),bbt_index);
}
BBINT _openb3d_openb3dcore_TEntity_GetEntityType(struct openb3d_openb3dcore_TEntity_obj* o){
	((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)o));
	struct BBDebugScope_1 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"GetEntityType",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TEntity",
				.var_address=&o
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0xa6bea28b2db61a66, 1136, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbOnDebugLeaveScope();
	return GetEntityType_(o->clas->f_GetInstance_pb_TTEntity((struct openb3d_openb3dcore_TEntity_obj*)o));
}
BBINT _openb3d_openb3dcore_TEntity_MeshCullRadius_f(struct openb3d_openb3dcore_TEntity_obj* o,BBFLOAT bbt_radius){
	((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)o));
	struct BBDebugScope_2 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"MeshCullRadius",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TEntity",
				.var_address=&o
			},
			{
				BBDEBUGDECL_LOCAL,
				"radius",
				"f",
				.var_address=&bbt_radius
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0xa6bea28b2db61a66, 1143, 0};
	bbOnDebugEnterStm(&__stmt_0);
	MeshCullRadius_(o->clas->f_GetInstance_pb_TTEntity((struct openb3d_openb3dcore_TEntity_obj*)o),bbt_radius);
	bbOnDebugLeaveScope();
	return 0;
}
BBFLOAT _openb3d_openb3dcore_TEntity_EntityScaleX_i(struct openb3d_openb3dcore_TEntity_obj* o,BBINT bbt_glob){
	((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)o));
	struct BBDebugScope_2 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"EntityScaleX",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TEntity",
				.var_address=&o
			},
			{
				BBDEBUGDECL_LOCAL,
				"glob",
				"i",
				.var_address=&bbt_glob
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0xa6bea28b2db61a66, 1151, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbOnDebugLeaveScope();
	return EntityScaleX_(o->clas->f_GetInstance_pb_TTEntity((struct openb3d_openb3dcore_TEntity_obj*)o),bbt_glob);
}
BBFLOAT _openb3d_openb3dcore_TEntity_EntityScaleY_i(struct openb3d_openb3dcore_TEntity_obj* o,BBINT bbt_glob){
	((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)o));
	struct BBDebugScope_2 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"EntityScaleY",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TEntity",
				.var_address=&o
			},
			{
				BBDEBUGDECL_LOCAL,
				"glob",
				"i",
				.var_address=&bbt_glob
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0xa6bea28b2db61a66, 1157, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbOnDebugLeaveScope();
	return EntityScaleY_(o->clas->f_GetInstance_pb_TTEntity((struct openb3d_openb3dcore_TEntity_obj*)o),bbt_glob);
}
BBFLOAT _openb3d_openb3dcore_TEntity_EntityScaleZ_i(struct openb3d_openb3dcore_TEntity_obj* o,BBINT bbt_glob){
	((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)o));
	struct BBDebugScope_2 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"EntityScaleZ",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TEntity",
				.var_address=&o
			},
			{
				BBDEBUGDECL_LOCAL,
				"glob",
				"i",
				.var_address=&bbt_glob
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0xa6bea28b2db61a66, 1163, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbOnDebugLeaveScope();
	return EntityScaleZ_(o->clas->f_GetInstance_pb_TTEntity((struct openb3d_openb3dcore_TEntity_obj*)o),bbt_glob);
}
BBINT _openb3d_openb3dcore_TEntity_Hidden(struct openb3d_openb3dcore_TEntity_obj* o){
	((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)o));
	struct BBDebugScope_1 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"Hidden",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TEntity",
				.var_address=&o
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0xa6bea28b2db61a66, 1175, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbOnDebugLeaveScope();
	return Hidden_(o->clas->f_GetInstance_pb_TTEntity((struct openb3d_openb3dcore_TEntity_obj*)o));
}
BBINT openb3d_openb3dcore_TEntity_CountAllChildren_i_TTEntityi(struct openb3d_openb3dcore_TEntity_obj* bbt_ent,BBINT bbt_no_children){
	struct BBDebugScope_2 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"CountAllChildren",
		{
			{
				BBDEBUGDECL_LOCAL,
				"ent",
				":TEntity",
				.var_address=&bbt_ent
			},
			{
				BBDEBUGDECL_LOCAL,
				"no_children",
				"i",
				.var_address=&bbt_no_children
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0xa6bea28b2db61a66, 1182, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbOnDebugLeaveScope();
	return CountAllChildren_(openb3d_openb3dcore_TEntity_GetInstance_pb_TTEntity((struct openb3d_openb3dcore_TEntity_obj*)bbt_ent),bbt_no_children);
}
struct openb3d_openb3dcore_TEntity_obj* _openb3d_openb3dcore_TEntity_GetChildFromAll_iviTTEntity(struct openb3d_openb3dcore_TEntity_obj* o,BBINT bbt_child_no,BBINT* bbt_no_children,struct openb3d_openb3dcore_TEntity_obj* bbt_ent){
	((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)o));
	BBBYTE* bbt_inst=0;
	struct BBDebugScope_5 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"GetChildFromAll",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TEntity",
				.var_address=&o
			},
			{
				BBDEBUGDECL_LOCAL,
				"child_no",
				"i",
				.var_address=&bbt_child_no
			},
			{
				BBDEBUGDECL_VARPARAM,
				"no_children",
				"i",
				.var_address=&bbt_no_children
			},
			{
				BBDEBUGDECL_LOCAL,
				"ent",
				":TEntity",
				.var_address=&bbt_ent
			},
			{
				BBDEBUGDECL_LOCAL,
				"inst",
				"*b",
				.var_address=&bbt_inst
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0xa6bea28b2db61a66, 1189, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbt_inst=GetChildFromAll_(o->clas->f_GetInstance_pb_TTEntity((struct openb3d_openb3dcore_TEntity_obj*)o),bbt_child_no,&(*bbt_no_children),o->clas->f_GetInstance_pb_TTEntity((struct openb3d_openb3dcore_TEntity_obj*)bbt_ent));
	struct BBDebugStm __stmt_1 = {0xa6bea28b2db61a66, 1190, 0};
	bbOnDebugEnterStm(&__stmt_1);
	bbOnDebugLeaveScope();
	return (struct openb3d_openb3dcore_TEntity_obj*)o->clas->f_GetObject_TTEntity_pb(bbt_inst);
}
BBINT _openb3d_openb3dcore_TEntity_ListParents_TTList(struct openb3d_openb3dcore_TEntity_obj* o,struct brl_linkedlist_TList_obj* bbt_list){
	((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)o));
	struct openb3d_openb3dcore_TEntity_obj* bbt_parent=(struct openb3d_openb3dcore_TEntity_obj*)((struct openb3d_openb3dcore_TEntity_obj*)&bbNullObject);
	struct BBDebugScope_3 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"ListParents",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TEntity",
				.var_address=&o
			},
			{
				BBDEBUGDECL_LOCAL,
				"list",
				":TList",
				.var_address=&bbt_list
			},
			{
				BBDEBUGDECL_LOCAL,
				"parent",
				":TEntity",
				.var_address=&bbt_parent
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0xa6bea28b2db61a66, 1197, 0};
	bbOnDebugEnterStm(&__stmt_0);
	((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)o));
	bbt_parent=(struct openb3d_openb3dcore_TEntity_obj*)((struct openb3d_openb3dcore_TEntity_obj*)o)->clas->m_GetParent((struct openb3d_openb3dcore_TEntity_obj*)o);
	struct BBDebugStm __stmt_1 = {0xa6bea28b2db61a66, 1198, 0};
	bbOnDebugEnterStm(&__stmt_1);
	if(((BBObject*)bbt_parent)!= &bbNullObject){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0xa6bea28b2db61a66, 1199, 0};
		bbOnDebugEnterStm(&__stmt_0);
		brl_linkedlist_ListAddLast((struct brl_linkedlist_TList_obj*)bbt_list,(BBOBJECT)bbt_parent);
		struct BBDebugStm __stmt_1 = {0xa6bea28b2db61a66, 1200, 0};
		bbOnDebugEnterStm(&__stmt_1);
		((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)o));
		((struct openb3d_openb3dcore_TEntity_obj*)o)->clas->m_ListParents_TTList((struct openb3d_openb3dcore_TEntity_obj*)o,(struct brl_linkedlist_TList_obj*)bbt_list);
		bbOnDebugLeaveScope();
	}
	bbOnDebugLeaveScope();
	return 0;
}
BBINT _openb3d_openb3dcore_TEntity_UpdateMat_b(struct openb3d_openb3dcore_TEntity_obj* o,BBBYTE bbt_load_identity){
	((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)o));
	struct BBDebugScope_2 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"UpdateMat",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TEntity",
				.var_address=&o
			},
			{
				BBDEBUGDECL_LOCAL,
				"load_identity",
				"b",
				.var_address=&bbt_load_identity
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0xa6bea28b2db61a66, 1208, 0};
	bbOnDebugEnterStm(&__stmt_0);
	UpdateMat_(o->clas->f_GetInstance_pb_TTEntity((struct openb3d_openb3dcore_TEntity_obj*)o),bbt_load_identity);
	bbOnDebugLeaveScope();
	return 0;
}
BBINT _openb3d_openb3dcore_TEntity_AddParent_TTEntity(struct openb3d_openb3dcore_TEntity_obj* o,struct openb3d_openb3dcore_TEntity_obj* bbt_parent_ent){
	((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)o));
	BBBYTE* bbt_inst=0;
	struct BBDebugScope_3 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"AddParent",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TEntity",
				.var_address=&o
			},
			{
				BBDEBUGDECL_LOCAL,
				"parent_ent",
				":TEntity",
				.var_address=&bbt_parent_ent
			},
			{
				BBDEBUGDECL_LOCAL,
				"inst",
				"*b",
				.var_address=&bbt_inst
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0xa6bea28b2db61a66, 1215, 0};
	bbOnDebugEnterStm(&__stmt_0);
	AddParent_(o->clas->f_GetInstance_pb_TTEntity((struct openb3d_openb3dcore_TEntity_obj*)o),o->clas->f_GetInstance_pb_TTEntity((struct openb3d_openb3dcore_TEntity_obj*)bbt_parent_ent));
	struct BBDebugStm __stmt_1 = {0xa6bea28b2db61a66, 1217, 0};
	bbOnDebugEnterStm(&__stmt_1);
	bbt_inst=EntityEntity_(o->clas->f_GetInstance_pb_TTEntity((struct openb3d_openb3dcore_TEntity_obj*)o),3);
	struct BBDebugStm __stmt_2 = {0xa6bea28b2db61a66, 1218, 0};
	bbOnDebugEnterStm(&__stmt_2);
	((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tentity_parent =(struct openb3d_openb3dcore_TEntity_obj*)o->clas->f_GetObject_TTEntity_pb(bbt_inst);
	struct BBDebugStm __stmt_3 = {0xa6bea28b2db61a66, 1219, 0};
	bbOnDebugEnterStm(&__stmt_3);
	if(((BBOBJECT)((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tentity_parent )!=&bbNullObject){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0xa6bea28b2db61a66, 1220, 0};
		bbOnDebugEnterStm(&__stmt_0);
		((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tentity_parent ))->clas->m_CopyList_TTList((struct openb3d_openb3dcore_TEntity_obj*)((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tentity_parent ,(struct brl_linkedlist_TList_obj*)((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tentity_parent ))->_openb3d_openb3dcore_tentity_child_list );
		bbOnDebugLeaveScope();
	}else{
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0xa6bea28b2db61a66, 1222, 0};
		bbOnDebugEnterStm(&__stmt_0);
		((struct openb3d_openb3dcore_TPivot_obj*)bbNullObjectTest((BBObject*)openb3d_openb3dcore_TGlobal3D_root_ent))->clas->m_CopyList_TTList((struct openb3d_openb3dcore_TEntity_obj*)openb3d_openb3dcore_TGlobal3D_root_ent,(struct brl_linkedlist_TList_obj*)((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)openb3d_openb3dcore_TGlobal3D_root_ent))->_openb3d_openb3dcore_tentity_child_list );
		bbOnDebugLeaveScope();
	}
	bbOnDebugLeaveScope();
	return 0;
}
BBINT openb3d_openb3dcore_TEntity_UpdateChildren_i_TTEntity(struct openb3d_openb3dcore_TEntity_obj* bbt_ent_p){
	struct BBDebugScope_1 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"UpdateChildren",
		{
			{
				BBDEBUGDECL_LOCAL,
				"ent_p",
				":TEntity",
				.var_address=&bbt_ent_p
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0xa6bea28b2db61a66, 1230, 0};
	bbOnDebugEnterStm(&__stmt_0);
	UpdateChildren_(openb3d_openb3dcore_TEntity_GetInstance_pb_TTEntity((struct openb3d_openb3dcore_TEntity_obj*)bbt_ent_p));
	bbOnDebugLeaveScope();
	return 0;
}
BBFLOAT _openb3d_openb3dcore_TEntity_EntityDistanceSquared_TTEntity(struct openb3d_openb3dcore_TEntity_obj* o,struct openb3d_openb3dcore_TEntity_obj* bbt_ent2){
	((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)o));
	struct BBDebugScope_2 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"EntityDistanceSquared",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TEntity",
				.var_address=&o
			},
			{
				BBDEBUGDECL_LOCAL,
				"ent2",
				":TEntity",
				.var_address=&bbt_ent2
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0xa6bea28b2db61a66, 1237, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbOnDebugLeaveScope();
	return EntityDistanceSquared_(o->clas->f_GetInstance_pb_TTEntity((struct openb3d_openb3dcore_TEntity_obj*)o),o->clas->f_GetInstance_pb_TTEntity((struct openb3d_openb3dcore_TEntity_obj*)bbt_ent2));
}
BBINT _openb3d_openb3dcore_TEntity_MQ_Update(struct openb3d_openb3dcore_TEntity_obj* o){
	((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)o));
	struct BBDebugScope_1 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"MQ_Update",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TEntity",
				.var_address=&o
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0xa6bea28b2db61a66, 1244, 0};
	bbOnDebugEnterStm(&__stmt_0);
	MQ_Update_(o->clas->f_GetInstance_pb_TTEntity((struct openb3d_openb3dcore_TEntity_obj*)o));
	bbOnDebugLeaveScope();
	return 0;
}
BBINT _openb3d_openb3dcore_TEntity_MQ_GetInvMatrix_TTMatPtr(struct openb3d_openb3dcore_TEntity_obj* o,struct openb3d_openb3dcore_TMatPtr_obj* bbt_mat0){
	((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)o));
	struct BBDebugScope_2 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"MQ_GetInvMatrix",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TEntity",
				.var_address=&o
			},
			{
				BBDEBUGDECL_LOCAL,
				"mat0",
				":TMatPtr",
				.var_address=&bbt_mat0
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0xa6bea28b2db61a66, 1251, 0};
	bbOnDebugEnterStm(&__stmt_0);
	MQ_GetInvMatrix_(o->clas->f_GetInstance_pb_TTEntity((struct openb3d_openb3dcore_TEntity_obj*)o),openb3d_openb3dcore_TMatPtr_GetInstance_pb_TTMatPtr((struct openb3d_openb3dcore_TMatPtr_obj*)bbt_mat0));
	bbOnDebugLeaveScope();
	return 0;
}
BBINT _openb3d_openb3dcore_TEntity_MQ_GetMatrix_TTMatPtr(struct openb3d_openb3dcore_TEntity_obj* o,struct openb3d_openb3dcore_TMatPtr_obj* bbt_mat3){
	((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)o));
	struct BBDebugScope_2 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"MQ_GetMatrix",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TEntity",
				.var_address=&o
			},
			{
				BBDEBUGDECL_LOCAL,
				"mat3",
				":TMatPtr",
				.var_address=&bbt_mat3
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0xa6bea28b2db61a66, 1258, 0};
	bbOnDebugEnterStm(&__stmt_0);
	MQ_GetMatrix_(o->clas->f_GetInstance_pb_TTEntity((struct openb3d_openb3dcore_TEntity_obj*)o),openb3d_openb3dcore_TMatPtr_GetInstance_pb_TTMatPtr((struct openb3d_openb3dcore_TMatPtr_obj*)bbt_mat3));
	bbOnDebugLeaveScope();
	return 0;
}
BBINT _openb3d_openb3dcore_TEntity_MQ_GetScaleXYZ_vfvfvf(struct openb3d_openb3dcore_TEntity_obj* o,BBFLOAT* bbt_width,BBFLOAT* bbt_height,BBFLOAT* bbt_depth){
	((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)o));
	struct BBDebugScope_4 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"MQ_GetScaleXYZ",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TEntity",
				.var_address=&o
			},
			{
				BBDEBUGDECL_VARPARAM,
				"width",
				"f",
				.var_address=&bbt_width
			},
			{
				BBDEBUGDECL_VARPARAM,
				"height",
				"f",
				.var_address=&bbt_height
			},
			{
				BBDEBUGDECL_VARPARAM,
				"depth",
				"f",
				.var_address=&bbt_depth
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0xa6bea28b2db61a66, 1265, 0};
	bbOnDebugEnterStm(&__stmt_0);
	MQ_GetScaleXYZ_(o->clas->f_GetInstance_pb_TTEntity((struct openb3d_openb3dcore_TEntity_obj*)o),&(*bbt_width),&(*bbt_height),&(*bbt_depth));
	bbOnDebugLeaveScope();
	return 0;
}
BBINT _openb3d_openb3dcore_TEntity_MQ_Turn_ffffi(struct openb3d_openb3dcore_TEntity_obj* o,BBFLOAT bbt_ang,BBFLOAT bbt_vx,BBFLOAT bbt_vy,BBFLOAT bbt_vz,BBINT bbt_glob){
	((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)o));
	struct BBDebugScope_6 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"MQ_Turn",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TEntity",
				.var_address=&o
			},
			{
				BBDEBUGDECL_LOCAL,
				"ang",
				"f",
				.var_address=&bbt_ang
			},
			{
				BBDEBUGDECL_LOCAL,
				"vx",
				"f",
				.var_address=&bbt_vx
			},
			{
				BBDEBUGDECL_LOCAL,
				"vy",
				"f",
				.var_address=&bbt_vy
			},
			{
				BBDEBUGDECL_LOCAL,
				"vz",
				"f",
				.var_address=&bbt_vz
			},
			{
				BBDEBUGDECL_LOCAL,
				"glob",
				"i",
				.var_address=&bbt_glob
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0xa6bea28b2db61a66, 1272, 0};
	bbOnDebugEnterStm(&__stmt_0);
	MQ_Turn_(o->clas->f_GetInstance_pb_TTEntity((struct openb3d_openb3dcore_TEntity_obj*)o),bbt_ang,bbt_vx,bbt_vy,bbt_vz,bbt_glob);
	bbOnDebugLeaveScope();
	return 0;
}
struct brl_linkedlist_TList_obj* openb3d_openb3dcore_TEntity_entity_list;
BBINT openb3d_openb3dcore_TEntity_entity_list_id;
struct brl_map_ptrmap_TPtrMap_obj* openb3d_openb3dcore_TEntity_ent_map;
struct brl_linkedlist_TList_obj* openb3d_openb3dcore_TEntity_animate_list;
BBINT openb3d_openb3dcore_TEntity_animate_list_id;
struct brl_linkedlist_TList_obj* openb3d_openb3dcore_TEntity_child_list_queue;
BBFLOAT* openb3d_openb3dcore_TEntity_tformed_x;
BBFLOAT* openb3d_openb3dcore_TEntity_tformed_y;
BBFLOAT* openb3d_openb3dcore_TEntity_tformed_z;
struct BBDebugScope_171 openb3d_openb3dcore_TEntity_scope ={
	BBDEBUGSCOPE_USERTYPE,
	"TEntity",
	{
		{
			BBDEBUGDECL_FIELD,
			"child_list",
			":TList",
			.field_offset=offsetof(struct openb3d_openb3dcore_TEntity_obj,_openb3d_openb3dcore_tentity_child_list)
		},
		{
			BBDEBUGDECL_FIELD,
			"parent",
			":TEntity",
			.field_offset=offsetof(struct openb3d_openb3dcore_TEntity_obj,_openb3d_openb3dcore_tentity_parent)
		},
		{
			BBDEBUGDECL_FIELD,
			"mat",
			":TMatPtr",
			.field_offset=offsetof(struct openb3d_openb3dcore_TEntity_obj,_openb3d_openb3dcore_tentity_mat)
		},
		{
			BBDEBUGDECL_FIELD,
			"rotmat",
			":TMatPtr",
			.field_offset=offsetof(struct openb3d_openb3dcore_TEntity_obj,_openb3d_openb3dcore_tentity_rotmat)
		},
		{
			BBDEBUGDECL_FIELD,
			"px",
			"*f",
			.field_offset=offsetof(struct openb3d_openb3dcore_TEntity_obj,_openb3d_openb3dcore_tentity_px)
		},
		{
			BBDEBUGDECL_FIELD,
			"py",
			"*f",
			.field_offset=offsetof(struct openb3d_openb3dcore_TEntity_obj,_openb3d_openb3dcore_tentity_py)
		},
		{
			BBDEBUGDECL_FIELD,
			"pz",
			"*f",
			.field_offset=offsetof(struct openb3d_openb3dcore_TEntity_obj,_openb3d_openb3dcore_tentity_pz)
		},
		{
			BBDEBUGDECL_FIELD,
			"sx",
			"*f",
			.field_offset=offsetof(struct openb3d_openb3dcore_TEntity_obj,_openb3d_openb3dcore_tentity_sx)
		},
		{
			BBDEBUGDECL_FIELD,
			"sy",
			"*f",
			.field_offset=offsetof(struct openb3d_openb3dcore_TEntity_obj,_openb3d_openb3dcore_tentity_sy)
		},
		{
			BBDEBUGDECL_FIELD,
			"sz",
			"*f",
			.field_offset=offsetof(struct openb3d_openb3dcore_TEntity_obj,_openb3d_openb3dcore_tentity_sz)
		},
		{
			BBDEBUGDECL_FIELD,
			"rx",
			"*f",
			.field_offset=offsetof(struct openb3d_openb3dcore_TEntity_obj,_openb3d_openb3dcore_tentity_rx)
		},
		{
			BBDEBUGDECL_FIELD,
			"ry",
			"*f",
			.field_offset=offsetof(struct openb3d_openb3dcore_TEntity_obj,_openb3d_openb3dcore_tentity_ry)
		},
		{
			BBDEBUGDECL_FIELD,
			"rz",
			"*f",
			.field_offset=offsetof(struct openb3d_openb3dcore_TEntity_obj,_openb3d_openb3dcore_tentity_rz)
		},
		{
			BBDEBUGDECL_FIELD,
			"qw",
			"*f",
			.field_offset=offsetof(struct openb3d_openb3dcore_TEntity_obj,_openb3d_openb3dcore_tentity_qw)
		},
		{
			BBDEBUGDECL_FIELD,
			"qx",
			"*f",
			.field_offset=offsetof(struct openb3d_openb3dcore_TEntity_obj,_openb3d_openb3dcore_tentity_qx)
		},
		{
			BBDEBUGDECL_FIELD,
			"qy",
			"*f",
			.field_offset=offsetof(struct openb3d_openb3dcore_TEntity_obj,_openb3d_openb3dcore_tentity_qy)
		},
		{
			BBDEBUGDECL_FIELD,
			"qz",
			"*f",
			.field_offset=offsetof(struct openb3d_openb3dcore_TEntity_obj,_openb3d_openb3dcore_tentity_qz)
		},
		{
			BBDEBUGDECL_FIELD,
			"brush",
			":TBrush",
			.field_offset=offsetof(struct openb3d_openb3dcore_TEntity_obj,_openb3d_openb3dcore_tentity_brush)
		},
		{
			BBDEBUGDECL_FIELD,
			"order",
			"*i",
			.field_offset=offsetof(struct openb3d_openb3dcore_TEntity_obj,_openb3d_openb3dcore_tentity_order)
		},
		{
			BBDEBUGDECL_FIELD,
			"alpha_order",
			"*f",
			.field_offset=offsetof(struct openb3d_openb3dcore_TEntity_obj,_openb3d_openb3dcore_tentity_alpha_order)
		},
		{
			BBDEBUGDECL_FIELD,
			"hide",
			"*i",
			.field_offset=offsetof(struct openb3d_openb3dcore_TEntity_obj,_openb3d_openb3dcore_tentity_hide)
		},
		{
			BBDEBUGDECL_FIELD,
			"cull_radius",
			"*f",
			.field_offset=offsetof(struct openb3d_openb3dcore_TEntity_obj,_openb3d_openb3dcore_tentity_cull_radius)
		},
		{
			BBDEBUGDECL_FIELD,
			"name",
			"*b",
			.field_offset=offsetof(struct openb3d_openb3dcore_TEntity_obj,_openb3d_openb3dcore_tentity_name)
		},
		{
			BBDEBUGDECL_FIELD,
			"class_name",
			"*b",
			.field_offset=offsetof(struct openb3d_openb3dcore_TEntity_obj,_openb3d_openb3dcore_tentity_class_name)
		},
		{
			BBDEBUGDECL_FIELD,
			"anim",
			"*i",
			.field_offset=offsetof(struct openb3d_openb3dcore_TEntity_obj,_openb3d_openb3dcore_tentity_anim)
		},
		{
			BBDEBUGDECL_FIELD,
			"anim_render",
			"*i",
			.field_offset=offsetof(struct openb3d_openb3dcore_TEntity_obj,_openb3d_openb3dcore_tentity_anim_render)
		},
		{
			BBDEBUGDECL_FIELD,
			"anim_mode",
			"*i",
			.field_offset=offsetof(struct openb3d_openb3dcore_TEntity_obj,_openb3d_openb3dcore_tentity_anim_mode)
		},
		{
			BBDEBUGDECL_FIELD,
			"anim_time",
			"*f",
			.field_offset=offsetof(struct openb3d_openb3dcore_TEntity_obj,_openb3d_openb3dcore_tentity_anim_time)
		},
		{
			BBDEBUGDECL_FIELD,
			"anim_speed",
			"*f",
			.field_offset=offsetof(struct openb3d_openb3dcore_TEntity_obj,_openb3d_openb3dcore_tentity_anim_speed)
		},
		{
			BBDEBUGDECL_FIELD,
			"anim_seq",
			"*i",
			.field_offset=offsetof(struct openb3d_openb3dcore_TEntity_obj,_openb3d_openb3dcore_tentity_anim_seq)
		},
		{
			BBDEBUGDECL_FIELD,
			"anim_trans",
			"*i",
			.field_offset=offsetof(struct openb3d_openb3dcore_TEntity_obj,_openb3d_openb3dcore_tentity_anim_trans)
		},
		{
			BBDEBUGDECL_FIELD,
			"anim_dir",
			"*i",
			.field_offset=offsetof(struct openb3d_openb3dcore_TEntity_obj,_openb3d_openb3dcore_tentity_anim_dir)
		},
		{
			BBDEBUGDECL_FIELD,
			"anim_seqs_first",
			"*i",
			.field_offset=offsetof(struct openb3d_openb3dcore_TEntity_obj,_openb3d_openb3dcore_tentity_anim_seqs_first)
		},
		{
			BBDEBUGDECL_FIELD,
			"anim_seqs_last",
			"*i",
			.field_offset=offsetof(struct openb3d_openb3dcore_TEntity_obj,_openb3d_openb3dcore_tentity_anim_seqs_last)
		},
		{
			BBDEBUGDECL_FIELD,
			"no_seqs",
			"*i",
			.field_offset=offsetof(struct openb3d_openb3dcore_TEntity_obj,_openb3d_openb3dcore_tentity_no_seqs)
		},
		{
			BBDEBUGDECL_FIELD,
			"anim_update",
			"*i",
			.field_offset=offsetof(struct openb3d_openb3dcore_TEntity_obj,_openb3d_openb3dcore_tentity_anim_update)
		},
		{
			BBDEBUGDECL_FIELD,
			"anim_list",
			"*i",
			.field_offset=offsetof(struct openb3d_openb3dcore_TEntity_obj,_openb3d_openb3dcore_tentity_anim_list)
		},
		{
			BBDEBUGDECL_FIELD,
			"collision_type",
			"*i",
			.field_offset=offsetof(struct openb3d_openb3dcore_TEntity_obj,_openb3d_openb3dcore_tentity_collision_type)
		},
		{
			BBDEBUGDECL_FIELD,
			"radius_x",
			"*f",
			.field_offset=offsetof(struct openb3d_openb3dcore_TEntity_obj,_openb3d_openb3dcore_tentity_radius_x)
		},
		{
			BBDEBUGDECL_FIELD,
			"radius_y",
			"*f",
			.field_offset=offsetof(struct openb3d_openb3dcore_TEntity_obj,_openb3d_openb3dcore_tentity_radius_y)
		},
		{
			BBDEBUGDECL_FIELD,
			"box_x",
			"*f",
			.field_offset=offsetof(struct openb3d_openb3dcore_TEntity_obj,_openb3d_openb3dcore_tentity_box_x)
		},
		{
			BBDEBUGDECL_FIELD,
			"box_y",
			"*f",
			.field_offset=offsetof(struct openb3d_openb3dcore_TEntity_obj,_openb3d_openb3dcore_tentity_box_y)
		},
		{
			BBDEBUGDECL_FIELD,
			"box_z",
			"*f",
			.field_offset=offsetof(struct openb3d_openb3dcore_TEntity_obj,_openb3d_openb3dcore_tentity_box_z)
		},
		{
			BBDEBUGDECL_FIELD,
			"box_w",
			"*f",
			.field_offset=offsetof(struct openb3d_openb3dcore_TEntity_obj,_openb3d_openb3dcore_tentity_box_w)
		},
		{
			BBDEBUGDECL_FIELD,
			"box_h",
			"*f",
			.field_offset=offsetof(struct openb3d_openb3dcore_TEntity_obj,_openb3d_openb3dcore_tentity_box_h)
		},
		{
			BBDEBUGDECL_FIELD,
			"box_d",
			"*f",
			.field_offset=offsetof(struct openb3d_openb3dcore_TEntity_obj,_openb3d_openb3dcore_tentity_box_d)
		},
		{
			BBDEBUGDECL_FIELD,
			"no_collisions",
			"*i",
			.field_offset=offsetof(struct openb3d_openb3dcore_TEntity_obj,_openb3d_openb3dcore_tentity_no_collisions)
		},
		{
			BBDEBUGDECL_FIELD,
			"pick_mode",
			"*i",
			.field_offset=offsetof(struct openb3d_openb3dcore_TEntity_obj,_openb3d_openb3dcore_tentity_pick_mode)
		},
		{
			BBDEBUGDECL_FIELD,
			"obscurer",
			"*i",
			.field_offset=offsetof(struct openb3d_openb3dcore_TEntity_obj,_openb3d_openb3dcore_tentity_obscurer)
		},
		{
			BBDEBUGDECL_FIELD,
			"instance",
			"*b",
			.field_offset=offsetof(struct openb3d_openb3dcore_TEntity_obj,_openb3d_openb3dcore_tentity_instance)
		},
		{
			BBDEBUGDECL_FIELD,
			"child_list_id",
			"i",
			.field_offset=offsetof(struct openb3d_openb3dcore_TEntity_obj,_openb3d_openb3dcore_tentity_child_list_id)
		},
		{
			BBDEBUGDECL_FIELD,
			"exists",
			"i",
			.field_offset=offsetof(struct openb3d_openb3dcore_TEntity_obj,_openb3d_openb3dcore_tentity_exists)
		},
		{
			BBDEBUGDECL_FIELD,
			"is_anim",
			"i",
			.field_offset=offsetof(struct openb3d_openb3dcore_TEntity_obj,_openb3d_openb3dcore_tentity_is_anim)
		},
		{
			BBDEBUGDECL_GLOBAL,
			"entity_list",
			":TList",
			.var_address=(void*)&openb3d_openb3dcore_TEntity_entity_list
		},
		{
			BBDEBUGDECL_GLOBAL,
			"animate_list",
			":TList",
			.var_address=(void*)&openb3d_openb3dcore_TEntity_animate_list
		},
		{
			BBDEBUGDECL_GLOBAL,
			"tformed_x",
			"*f",
			.var_address=(void*)&openb3d_openb3dcore_TEntity_tformed_x
		},
		{
			BBDEBUGDECL_GLOBAL,
			"tformed_y",
			"*f",
			.var_address=(void*)&openb3d_openb3dcore_TEntity_tformed_y
		},
		{
			BBDEBUGDECL_GLOBAL,
			"tformed_z",
			"*f",
			.var_address=(void*)&openb3d_openb3dcore_TEntity_tformed_z
		},
		{
			BBDEBUGDECL_GLOBAL,
			"ent_map",
			":TPtrMap",
			.var_address=(void*)&openb3d_openb3dcore_TEntity_ent_map
		},
		{
			BBDEBUGDECL_GLOBAL,
			"entity_list_id",
			"i",
			.var_address=(void*)&openb3d_openb3dcore_TEntity_entity_list_id
		},
		{
			BBDEBUGDECL_GLOBAL,
			"animate_list_id",
			"i",
			.var_address=(void*)&openb3d_openb3dcore_TEntity_animate_list_id
		},
		{
			BBDEBUGDECL_GLOBAL,
			"child_list_queue",
			":TList",
			.var_address=(void*)&openb3d_openb3dcore_TEntity_child_list_queue
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"New",
			"()i",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_TEntity_New
		},
		{
			BBDEBUGDECL_TYPEFUNCTION,
			"FreeObject",
			"(*b)i",
			.func_ptr=(BBFuncPtr)&openb3d_openb3dcore_TEntity_FreeObject_i_pb
		},
		{
			BBDEBUGDECL_TYPEFUNCTION,
			"GetObject",
			"(*b):TEntity",
			.func_ptr=(BBFuncPtr)&openb3d_openb3dcore_TEntity_GetObject_TTEntity_pb
		},
		{
			BBDEBUGDECL_TYPEFUNCTION,
			"GetInstance",
			"(:TEntity)*b",
			.func_ptr=(BBFuncPtr)&openb3d_openb3dcore_TEntity_GetInstance_pb_TTEntity
		},
		{
			BBDEBUGDECL_TYPEFUNCTION,
			"InitGlobals",
			"()i",
			.func_ptr=(BBFuncPtr)&openb3d_openb3dcore_TEntity_InitGlobals_i
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"InitFields",
			"()i",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_TEntity_InitFields
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"DebugFields",
			"(i,i)i",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_TEntity_DebugFields_ii
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"AddList",
			"(:TList)i",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_TEntity_AddList_TTList
		},
		{
			BBDEBUGDECL_TYPEFUNCTION,
			"AddList_",
			"(:TList)i",
			.func_ptr=(BBFuncPtr)&openb3d_openb3dcore_TEntity_AddList__i_TTList
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"CopyList",
			"(:TList)i",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_TEntity_CopyList_TTList
		},
		{
			BBDEBUGDECL_TYPEFUNCTION,
			"CopyList_",
			"(:TList)i",
			.func_ptr=(BBFuncPtr)&openb3d_openb3dcore_TEntity_CopyList__i_TTList
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"EntityListAdd",
			"(:TList,:Object)i",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_TEntity_EntityListAdd_TTListTObject
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"EntityListRemove",
			"(:TList,:Object)i",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_TEntity_EntityListRemove_TTListTObject
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"AddAnimSeq",
			"(i)i",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_TEntity_AddAnimSeq_i
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"SetAnimKey",
			"(f,i,i,i)i",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_TEntity_SetAnimKey_fiii
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"AlignToVector",
			"(f,f,f,i,f)i",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_TEntity_AlignToVector_fffif
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"GetString",
			"(*b)$",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_TEntity_GetString_pb
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"SetString",
			"(*b,$)i",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_TEntity_SetString_pbS
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"FreeEntity",
			"()i",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_TEntity_FreeEntity
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"FreeEntityList",
			"()i",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_TEntity_FreeEntityList
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"SetParent",
			"(:TEntity)i",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_TEntity_SetParent_TTEntity
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"PositionEntity",
			"(f,f,f,i)i",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_TEntity_PositionEntity_fffi
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"MoveEntity",
			"(f,f,f)i",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_TEntity_MoveEntity_fff
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"TranslateEntity",
			"(f,f,f,i)i",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_TEntity_TranslateEntity_fffi
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"ScaleEntity",
			"(f,f,f,i)i",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_TEntity_ScaleEntity_fffi
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"RotateEntity",
			"(f,f,f,i)i",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_TEntity_RotateEntity_fffi
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"TurnEntity",
			"(f,f,f,i)i",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_TEntity_TurnEntity_fffi
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"PointEntity",
			"(:TEntity,f)i",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_TEntity_PointEntity_TTEntityf
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"LoadAnimSeq",
			"($)i",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_TEntity_LoadAnimSeq_S
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"ExtractAnimSeq",
			"(i,i,i)i",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_TEntity_ExtractAnimSeq_iii
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"Animate",
			"(i,f,i,i)i",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_TEntity_Animate_ifii
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"SetAnimTime",
			"(f,i)i",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_TEntity_SetAnimTime_fi
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"AnimSeq",
			"()i",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_TEntity_AnimSeq
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"AnimLength",
			"()i",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_TEntity_AnimLength
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"AnimTime",
			"()f",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_TEntity_AnimTime
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"Animating",
			"()i",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_TEntity_Animating
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"EntityColor",
			"(f,f,f,i)i",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_TEntity_EntityColor_fffi
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"EntityAlpha",
			"(f)i",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_TEntity_EntityAlpha_f
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"EntityShininess",
			"(f)i",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_TEntity_EntityShininess_f
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"EntityTexture",
			"(:TTexture,i,i)i",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_TEntity_EntityTexture_TTTextureii
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"EntityBlend",
			"(i)i",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_TEntity_EntityBlend_i
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"EntityFX",
			"(i)i",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_TEntity_EntityFX_i
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"PaintEntity",
			"(:TBrush)i",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_TEntity_PaintEntity_TTBrush
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"GetEntityBrush",
			"():TBrush",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_TEntity_GetEntityBrush
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"EntityOrder",
			"(i)i",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_TEntity_EntityOrder_i
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"ShowEntity",
			"()i",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_TEntity_ShowEntity
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"HideEntity",
			"()i",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_TEntity_HideEntity
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"NameEntity",
			"($)i",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_TEntity_NameEntity_S
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"EntityParent",
			"(:TEntity,i)i",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_TEntity_EntityParent_TTEntityi
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"GetParent",
			"():TEntity",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_TEntity_GetParent
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"EntityX",
			"(i)f",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_TEntity_EntityX_i
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"EntityY",
			"(i)f",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_TEntity_EntityY_i
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"EntityZ",
			"(i)f",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_TEntity_EntityZ_i
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"EntityPitch",
			"(i)f",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_TEntity_EntityPitch_i
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"EntityYaw",
			"(i)f",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_TEntity_EntityYaw_i
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"EntityRoll",
			"(i)f",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_TEntity_EntityRoll_i
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"EntityClass",
			"()$",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_TEntity_EntityClass
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"EntityName",
			"()$",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_TEntity_EntityName
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"CountChildren",
			"()i",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_TEntity_CountChildren
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"GetChild",
			"(i):TEntity",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_TEntity_GetChild_i
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"FindChild",
			"($):TEntity",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_TEntity_FindChild_S
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"EntityPick",
			"(f):TEntity",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_TEntity_EntityPick_f
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"LinePick",
			"(f,f,f,f,f,f,f):TEntity",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_TEntity_LinePick_fffffff
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"EntityVisible",
			"(:TEntity,:TEntity)i",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_TEntity_EntityVisible_TTEntityTTEntity
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"EntityDistance",
			"(:TEntity)f",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_TEntity_EntityDistance_TTEntity
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"DeltaYaw",
			"(:TEntity)f",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_TEntity_DeltaYaw_TTEntity
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"DeltaPitch",
			"(:TEntity)f",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_TEntity_DeltaPitch_TTEntity
		},
		{
			BBDEBUGDECL_TYPEFUNCTION,
			"TFormPoint",
			"(f,f,f,:TEntity,:TEntity)i",
			.func_ptr=(BBFuncPtr)&openb3d_openb3dcore_TEntity_TFormPoint_i_fffTTEntityTTEntity
		},
		{
			BBDEBUGDECL_TYPEFUNCTION,
			"TFormVector",
			"(f,f,f,:TEntity,:TEntity)i",
			.func_ptr=(BBFuncPtr)&openb3d_openb3dcore_TEntity_TFormVector_i_fffTTEntityTTEntity
		},
		{
			BBDEBUGDECL_TYPEFUNCTION,
			"TFormNormal",
			"(f,f,f,:TEntity,:TEntity)i",
			.func_ptr=(BBFuncPtr)&openb3d_openb3dcore_TEntity_TFormNormal_i_fffTTEntityTTEntity
		},
		{
			BBDEBUGDECL_TYPEFUNCTION,
			"TFormedX",
			"()f",
			.func_ptr=(BBFuncPtr)&openb3d_openb3dcore_TEntity_TFormedX_f
		},
		{
			BBDEBUGDECL_TYPEFUNCTION,
			"TFormedY",
			"()f",
			.func_ptr=(BBFuncPtr)&openb3d_openb3dcore_TEntity_TFormedY_f
		},
		{
			BBDEBUGDECL_TYPEFUNCTION,
			"TFormedZ",
			"()f",
			.func_ptr=(BBFuncPtr)&openb3d_openb3dcore_TEntity_TFormedZ_f
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"GetMatElement",
			"(i,i)f",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_TEntity_GetMatElement_ii
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"ResetEntity",
			"()i",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_TEntity_ResetEntity
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"EntityRadius",
			"(f,f)i",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_TEntity_EntityRadius_ff
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"EntityBox",
			"(f,f,f,f,f,f)i",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_TEntity_EntityBox_ffffff
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"EntityType",
			"(i,i)i",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_TEntity_EntityType_ii
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"EntityPickMode",
			"(i,i)i",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_TEntity_EntityPickMode_ii
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"EntityCollided",
			"(i):TEntity",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_TEntity_EntityCollided_i
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"CountCollisions",
			"()i",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_TEntity_CountCollisions
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"CollisionX",
			"(i)f",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_TEntity_CollisionX_i
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"CollisionY",
			"(i)f",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_TEntity_CollisionY_i
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"CollisionZ",
			"(i)f",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_TEntity_CollisionZ_i
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"CollisionNX",
			"(i)f",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_TEntity_CollisionNX_i
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"CollisionNY",
			"(i)f",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_TEntity_CollisionNY_i
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"CollisionNZ",
			"(i)f",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_TEntity_CollisionNZ_i
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"CollisionTime",
			"(i)f",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_TEntity_CollisionTime_i
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"CollisionEntity",
			"(i):TEntity",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_TEntity_CollisionEntity_i
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"CollisionSurface",
			"(i):TSurface",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_TEntity_CollisionSurface_i
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"CollisionTriangle",
			"(i)i",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_TEntity_CollisionTriangle_i
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"GetEntityType",
			"()i",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_TEntity_GetEntityType
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"MeshCullRadius",
			"(f)i",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_TEntity_MeshCullRadius_f
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"EntityScaleX",
			"(i)f",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_TEntity_EntityScaleX_i
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"EntityScaleY",
			"(i)f",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_TEntity_EntityScaleY_i
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"EntityScaleZ",
			"(i)f",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_TEntity_EntityScaleZ_i
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"Hidden",
			"()i",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_TEntity_Hidden
		},
		{
			BBDEBUGDECL_TYPEFUNCTION,
			"CountAllChildren",
			"(:TEntity,i)i",
			.func_ptr=(BBFuncPtr)&openb3d_openb3dcore_TEntity_CountAllChildren_i_TTEntityi
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"GetChildFromAll",
			"(i,i,:TEntity):TEntity",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_TEntity_GetChildFromAll_iviTTEntity
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"ListParents",
			"(:TList)i",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_TEntity_ListParents_TTList
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"UpdateMat",
			"(b)i",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_TEntity_UpdateMat_b
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"AddParent",
			"(:TEntity)i",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_TEntity_AddParent_TTEntity
		},
		{
			BBDEBUGDECL_TYPEFUNCTION,
			"UpdateChildren",
			"(:TEntity)i",
			.func_ptr=(BBFuncPtr)&openb3d_openb3dcore_TEntity_UpdateChildren_i_TTEntity
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"EntityDistanceSquared",
			"(:TEntity)f",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_TEntity_EntityDistanceSquared_TTEntity
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"MQ_Update",
			"()i",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_TEntity_MQ_Update
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"MQ_GetInvMatrix",
			"(:TMatPtr)i",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_TEntity_MQ_GetInvMatrix_TTMatPtr
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"MQ_GetMatrix",
			"(:TMatPtr)i",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_TEntity_MQ_GetMatrix_TTMatPtr
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"MQ_GetScaleXYZ",
			"(f,f,f)i",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_TEntity_MQ_GetScaleXYZ_vfvfvf
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"MQ_Turn",
			"(f,f,f,f,i)i",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_TEntity_MQ_Turn_ffffi
		},
		{
			BBDEBUGDECL_END
		}
	}
};
struct BBClass_openb3d_openb3dcore_TEntity openb3d_openb3dcore_TEntity={
	&bbObjectClass,
	bbObjectFree,
	(BBDebugScope*)&openb3d_openb3dcore_TEntity_scope,
	sizeof(struct openb3d_openb3dcore_TEntity_obj),
	(void (*)(BBOBJECT))_openb3d_openb3dcore_TEntity_New,
	(void (*)(BBOBJECT))_openb3d_openb3dcore_TEntity_Delete,
	bbObjectToString,
	bbObjectCompare,
	bbObjectSendMessage,
	0,
	0,
	offsetof(struct openb3d_openb3dcore_TEntity_obj,_openb3d_openb3dcore_tentity_is_anim) - offsetof(struct openb3d_openb3dcore_TEntity_obj,_openb3d_openb3dcore_tentity_child_list) + sizeof(BBINT)
	,0
	,offsetof(struct openb3d_openb3dcore_TEntity_obj,_openb3d_openb3dcore_tentity_child_list)
	,_openb3d_openb3dcore_TEntity_CopyEntity_TTEntity
	,_openb3d_openb3dcore_TEntity_Update
	,openb3d_openb3dcore_TEntity_FreeObject_i_pb
	,openb3d_openb3dcore_TEntity_GetObject_TTEntity_pb
	,openb3d_openb3dcore_TEntity_GetInstance_pb_TTEntity
	,openb3d_openb3dcore_TEntity_InitGlobals_i
	,_openb3d_openb3dcore_TEntity_InitFields
	,_openb3d_openb3dcore_TEntity_DebugFields_ii
	,_openb3d_openb3dcore_TEntity_AddList_TTList
	,openb3d_openb3dcore_TEntity_AddList__i_TTList
	,_openb3d_openb3dcore_TEntity_CopyList_TTList
	,openb3d_openb3dcore_TEntity_CopyList__i_TTList
	,_openb3d_openb3dcore_TEntity_EntityListAdd_TTListTObject
	,_openb3d_openb3dcore_TEntity_EntityListRemove_TTListTObject
	,_openb3d_openb3dcore_TEntity_AddAnimSeq_i
	,_openb3d_openb3dcore_TEntity_SetAnimKey_fiii
	,_openb3d_openb3dcore_TEntity_AlignToVector_fffif
	,_openb3d_openb3dcore_TEntity_GetString_pb
	,_openb3d_openb3dcore_TEntity_SetString_pbS
	,_openb3d_openb3dcore_TEntity_FreeEntity
	,_openb3d_openb3dcore_TEntity_FreeEntityList
	,_openb3d_openb3dcore_TEntity_SetParent_TTEntity
	,_openb3d_openb3dcore_TEntity_PositionEntity_fffi
	,_openb3d_openb3dcore_TEntity_MoveEntity_fff
	,_openb3d_openb3dcore_TEntity_TranslateEntity_fffi
	,_openb3d_openb3dcore_TEntity_ScaleEntity_fffi
	,_openb3d_openb3dcore_TEntity_RotateEntity_fffi
	,_openb3d_openb3dcore_TEntity_TurnEntity_fffi
	,_openb3d_openb3dcore_TEntity_PointEntity_TTEntityf
	,_openb3d_openb3dcore_TEntity_LoadAnimSeq_S
	,_openb3d_openb3dcore_TEntity_ExtractAnimSeq_iii
	,_openb3d_openb3dcore_TEntity_Animate_ifii
	,_openb3d_openb3dcore_TEntity_SetAnimTime_fi
	,_openb3d_openb3dcore_TEntity_AnimSeq
	,_openb3d_openb3dcore_TEntity_AnimLength
	,_openb3d_openb3dcore_TEntity_AnimTime
	,_openb3d_openb3dcore_TEntity_Animating
	,_openb3d_openb3dcore_TEntity_EntityColor_fffi
	,_openb3d_openb3dcore_TEntity_EntityAlpha_f
	,_openb3d_openb3dcore_TEntity_EntityShininess_f
	,_openb3d_openb3dcore_TEntity_EntityTexture_TTTextureii
	,_openb3d_openb3dcore_TEntity_EntityBlend_i
	,_openb3d_openb3dcore_TEntity_EntityFX_i
	,_openb3d_openb3dcore_TEntity_PaintEntity_TTBrush
	,_openb3d_openb3dcore_TEntity_GetEntityBrush
	,_openb3d_openb3dcore_TEntity_EntityOrder_i
	,_openb3d_openb3dcore_TEntity_ShowEntity
	,_openb3d_openb3dcore_TEntity_HideEntity
	,_openb3d_openb3dcore_TEntity_NameEntity_S
	,_openb3d_openb3dcore_TEntity_EntityParent_TTEntityi
	,_openb3d_openb3dcore_TEntity_GetParent
	,_openb3d_openb3dcore_TEntity_EntityX_i
	,_openb3d_openb3dcore_TEntity_EntityY_i
	,_openb3d_openb3dcore_TEntity_EntityZ_i
	,_openb3d_openb3dcore_TEntity_EntityPitch_i
	,_openb3d_openb3dcore_TEntity_EntityYaw_i
	,_openb3d_openb3dcore_TEntity_EntityRoll_i
	,_openb3d_openb3dcore_TEntity_EntityClass
	,_openb3d_openb3dcore_TEntity_EntityName
	,_openb3d_openb3dcore_TEntity_CountChildren
	,_openb3d_openb3dcore_TEntity_GetChild_i
	,_openb3d_openb3dcore_TEntity_FindChild_S
	,_openb3d_openb3dcore_TEntity_EntityPick_f
	,_openb3d_openb3dcore_TEntity_LinePick_fffffff
	,_openb3d_openb3dcore_TEntity_EntityVisible_TTEntityTTEntity
	,_openb3d_openb3dcore_TEntity_EntityDistance_TTEntity
	,_openb3d_openb3dcore_TEntity_DeltaYaw_TTEntity
	,_openb3d_openb3dcore_TEntity_DeltaPitch_TTEntity
	,openb3d_openb3dcore_TEntity_TFormPoint_i_fffTTEntityTTEntity
	,openb3d_openb3dcore_TEntity_TFormVector_i_fffTTEntityTTEntity
	,openb3d_openb3dcore_TEntity_TFormNormal_i_fffTTEntityTTEntity
	,openb3d_openb3dcore_TEntity_TFormedX_f
	,openb3d_openb3dcore_TEntity_TFormedY_f
	,openb3d_openb3dcore_TEntity_TFormedZ_f
	,_openb3d_openb3dcore_TEntity_GetMatElement_ii
	,_openb3d_openb3dcore_TEntity_ResetEntity
	,_openb3d_openb3dcore_TEntity_EntityRadius_ff
	,_openb3d_openb3dcore_TEntity_EntityBox_ffffff
	,_openb3d_openb3dcore_TEntity_EntityType_ii
	,_openb3d_openb3dcore_TEntity_EntityPickMode_ii
	,_openb3d_openb3dcore_TEntity_EntityCollided_i
	,_openb3d_openb3dcore_TEntity_CountCollisions
	,_openb3d_openb3dcore_TEntity_CollisionX_i
	,_openb3d_openb3dcore_TEntity_CollisionY_i
	,_openb3d_openb3dcore_TEntity_CollisionZ_i
	,_openb3d_openb3dcore_TEntity_CollisionNX_i
	,_openb3d_openb3dcore_TEntity_CollisionNY_i
	,_openb3d_openb3dcore_TEntity_CollisionNZ_i
	,_openb3d_openb3dcore_TEntity_CollisionTime_i
	,_openb3d_openb3dcore_TEntity_CollisionEntity_i
	,_openb3d_openb3dcore_TEntity_CollisionSurface_i
	,_openb3d_openb3dcore_TEntity_CollisionTriangle_i
	,_openb3d_openb3dcore_TEntity_GetEntityType
	,_openb3d_openb3dcore_TEntity_MeshCullRadius_f
	,_openb3d_openb3dcore_TEntity_EntityScaleX_i
	,_openb3d_openb3dcore_TEntity_EntityScaleY_i
	,_openb3d_openb3dcore_TEntity_EntityScaleZ_i
	,_openb3d_openb3dcore_TEntity_Hidden
	,openb3d_openb3dcore_TEntity_CountAllChildren_i_TTEntityi
	,_openb3d_openb3dcore_TEntity_GetChildFromAll_iviTTEntity
	,_openb3d_openb3dcore_TEntity_ListParents_TTList
	,_openb3d_openb3dcore_TEntity_UpdateMat_b
	,_openb3d_openb3dcore_TEntity_AddParent_TTEntity
	,openb3d_openb3dcore_TEntity_UpdateChildren_i_TTEntity
	,_openb3d_openb3dcore_TEntity_EntityDistanceSquared_TTEntity
	,_openb3d_openb3dcore_TEntity_MQ_Update
	,_openb3d_openb3dcore_TEntity_MQ_GetInvMatrix_TTMatPtr
	,_openb3d_openb3dcore_TEntity_MQ_GetMatrix_TTMatPtr
	,_openb3d_openb3dcore_TEntity_MQ_GetScaleXYZ_vfvfvf
	,_openb3d_openb3dcore_TEntity_MQ_Turn_ffffi
};

void _openb3d_openb3dcore_TCamera_New(struct openb3d_openb3dcore_TCamera_obj* o) {
	_openb3d_openb3dcore_TEntity_New((struct openb3d_openb3dcore_TEntity_obj*)o);
	o->clas = &openb3d_openb3dcore_TCamera;
	((struct openb3d_openb3dcore_TCamera_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tcamera_vx = 0;
	((struct openb3d_openb3dcore_TCamera_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tcamera_vy = 0;
	((struct openb3d_openb3dcore_TCamera_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tcamera_vwidth = 0;
	((struct openb3d_openb3dcore_TCamera_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tcamera_vheight = 0;
	((struct openb3d_openb3dcore_TCamera_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tcamera_cls_r = 0;
	((struct openb3d_openb3dcore_TCamera_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tcamera_cls_g = 0;
	((struct openb3d_openb3dcore_TCamera_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tcamera_cls_b = 0;
	((struct openb3d_openb3dcore_TCamera_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tcamera_cls_color = 0;
	((struct openb3d_openb3dcore_TCamera_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tcamera_cls_zbuffer = 0;
	((struct openb3d_openb3dcore_TCamera_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tcamera_range_near = 0;
	((struct openb3d_openb3dcore_TCamera_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tcamera_range_far = 0;
	((struct openb3d_openb3dcore_TCamera_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tcamera_zoom = 0;
	((struct openb3d_openb3dcore_TCamera_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tcamera_proj_mode = 0;
	((struct openb3d_openb3dcore_TCamera_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tcamera_fog_mode = 0;
	((struct openb3d_openb3dcore_TCamera_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tcamera_fog_r = 0;
	((struct openb3d_openb3dcore_TCamera_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tcamera_fog_g = 0;
	((struct openb3d_openb3dcore_TCamera_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tcamera_fog_b = 0;
	((struct openb3d_openb3dcore_TCamera_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tcamera_fog_range_near = 0;
	((struct openb3d_openb3dcore_TCamera_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tcamera_fog_range_far = 0;
	((struct openb3d_openb3dcore_TCamera_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tcamera_project_enabled = 0;
	((struct openb3d_openb3dcore_TCamera_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tcamera_mod_mat = 0;
	((struct openb3d_openb3dcore_TCamera_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tcamera_proj_mat = 0;
	((struct openb3d_openb3dcore_TCamera_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tcamera_viewport = 0;
	((struct openb3d_openb3dcore_TCamera_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tcamera_frustum = 0;
	struct BBDebugScope __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"New",
		{
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x96356c750530f2c5, 222, 0};
	bbOnDebugEnterStm(&__stmt_0);
	if(openb3d_openb3dcore_TGlobal3D_Log_New!=0){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x96356c750530f2c5, 223, 0};
		bbOnDebugEnterStm(&__stmt_0);
		brl_blitz_DebugLog((BBString*)&_s189);
		bbOnDebugLeaveScope();
	}
	bbOnDebugLeaveScope();
}
void _openb3d_openb3dcore_TCamera_Delete(struct openb3d_openb3dcore_TCamera_obj* o) {
	struct BBDebugScope_1 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"Delete",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TCamera",
				.var_address=&o
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x96356c750530f2c5, 230, 0};
	bbOnDebugEnterStm(&__stmt_0);
	if(openb3d_openb3dcore_TGlobal3D_Log_Del!=0){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x96356c750530f2c5, 231, 0};
		bbOnDebugEnterStm(&__stmt_0);
		brl_blitz_DebugLog((BBString*)&_s190);
		bbOnDebugLeaveScope();
	}
	bbOnDebugLeaveScope();
	_openb3d_openb3dcore_TEntity_Delete((struct openb3d_openb3dcore_TEntity_obj*)o);
}
struct openb3d_openb3dcore_TCamera_obj* openb3d_openb3dcore_TCamera_CreateObject_TTCamera_pb(BBBYTE* bbt_inst){
	struct openb3d_openb3dcore_TCamera_obj* bbt_obj=(struct openb3d_openb3dcore_TCamera_obj*)((struct openb3d_openb3dcore_TCamera_obj*)&bbNullObject);
	struct BBDebugScope_2 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"CreateObject",
		{
			{
				BBDEBUGDECL_LOCAL,
				"inst",
				"*b",
				.var_address=&bbt_inst
			},
			{
				BBDEBUGDECL_LOCAL,
				"obj",
				":TCamera",
				.var_address=&bbt_obj
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x96356c750530f2c5, 39, 0};
	bbOnDebugEnterStm(&__stmt_0);
	if(bbt_inst==0){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x96356c750530f2c5, 39, 0};
		bbOnDebugEnterStm(&__stmt_0);
		bbOnDebugLeaveScope();
		bbOnDebugLeaveScope();
		return (struct openb3d_openb3dcore_TCamera_obj*)&bbNullObject;
	}
	struct BBDebugStm __stmt_1 = {0x96356c750530f2c5, 40, 0};
	bbOnDebugEnterStm(&__stmt_1);
	bbt_obj=(struct openb3d_openb3dcore_TCamera_obj*)(struct openb3d_openb3dcore_TCamera_obj*)bbObjectNew((BBClass *)&openb3d_openb3dcore_TCamera);
	struct BBDebugStm __stmt_2 = {0x96356c750530f2c5, 42, 0};
	bbOnDebugEnterStm(&__stmt_2);
	((struct brl_map_ptrmap_TPtrMap_obj*)bbNullObjectTest((BBObject*)openb3d_openb3dcore_TEntity_ent_map))->clas->m_Insert_pbTObject((struct brl_map_ptrmap_TPtrMap_obj*)openb3d_openb3dcore_TEntity_ent_map,bbt_inst,(BBOBJECT)bbt_obj);
	struct BBDebugStm __stmt_3 = {0x96356c750530f2c5, 46, 0};
	bbOnDebugEnterStm(&__stmt_3);
	((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)bbt_obj))->_openb3d_openb3dcore_tentity_instance =bbt_inst;
	struct BBDebugStm __stmt_4 = {0x96356c750530f2c5, 47, 0};
	bbOnDebugEnterStm(&__stmt_4);
	((struct openb3d_openb3dcore_TCamera_obj*)bbNullObjectTest((BBObject*)bbt_obj))->clas->m_InitFields((struct openb3d_openb3dcore_TCamera_obj*)bbt_obj);
	struct BBDebugStm __stmt_5 = {0x96356c750530f2c5, 48, 0};
	bbOnDebugEnterStm(&__stmt_5);
	bbOnDebugLeaveScope();
	return (struct openb3d_openb3dcore_TCamera_obj*)bbt_obj;
}
BBINT openb3d_openb3dcore_TCamera_InitGlobals_i(){
	struct BBDebugScope __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"InitGlobals",
		{
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x96356c750530f2c5, 54, 0};
	bbOnDebugEnterStm(&__stmt_0);
	openb3d_openb3dcore_TCamera_projected_x=StaticFloat_(6,26);
	struct BBDebugStm __stmt_1 = {0x96356c750530f2c5, 55, 0};
	bbOnDebugEnterStm(&__stmt_1);
	openb3d_openb3dcore_TCamera_projected_y=StaticFloat_(6,27);
	struct BBDebugStm __stmt_2 = {0x96356c750530f2c5, 56, 0};
	bbOnDebugEnterStm(&__stmt_2);
	openb3d_openb3dcore_TCamera_projected_z=StaticFloat_(6,28);
	bbOnDebugLeaveScope();
	return 0;
}
BBINT _openb3d_openb3dcore_TCamera_InitFields(struct openb3d_openb3dcore_TCamera_obj* o){
	((struct openb3d_openb3dcore_TCamera_obj*)bbNullObjectTest((BBObject*)o));
	struct BBDebugScope_1 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"InitFields",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TCamera",
				.var_address=&o
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x96356c750530f2c5, 62, 0};
	bbOnDebugEnterStm(&__stmt_0);
	(&openb3d_openb3dcore_TCamera)->super->m_InitFields((struct openb3d_openb3dcore_TEntity_obj*)o);
	struct BBDebugStm __stmt_1 = {0x96356c750530f2c5, 65, 0};
	bbOnDebugEnterStm(&__stmt_1);
	((struct openb3d_openb3dcore_TCamera_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tcamera_cls_color =CameraBool_(openb3d_openb3dcore_TEntity_GetInstance_pb_TTEntity((struct openb3d_openb3dcore_TEntity_obj*)((struct openb3d_openb3dcore_TEntity_obj*)bbObjectDowncast((BBOBJECT)o,(BBClass*)&openb3d_openb3dcore_TEntity))),10);
	struct BBDebugStm __stmt_2 = {0x96356c750530f2c5, 66, 0};
	bbOnDebugEnterStm(&__stmt_2);
	((struct openb3d_openb3dcore_TCamera_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tcamera_cls_zbuffer =CameraBool_(openb3d_openb3dcore_TEntity_GetInstance_pb_TTEntity((struct openb3d_openb3dcore_TEntity_obj*)((struct openb3d_openb3dcore_TEntity_obj*)bbObjectDowncast((BBOBJECT)o,(BBClass*)&openb3d_openb3dcore_TEntity))),11);
	struct BBDebugStm __stmt_3 = {0x96356c750530f2c5, 69, 0};
	bbOnDebugEnterStm(&__stmt_3);
	((struct openb3d_openb3dcore_TCamera_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tcamera_vx =CameraInt_(openb3d_openb3dcore_TEntity_GetInstance_pb_TTEntity((struct openb3d_openb3dcore_TEntity_obj*)((struct openb3d_openb3dcore_TEntity_obj*)bbObjectDowncast((BBOBJECT)o,(BBClass*)&openb3d_openb3dcore_TEntity))),3);
	struct BBDebugStm __stmt_4 = {0x96356c750530f2c5, 70, 0};
	bbOnDebugEnterStm(&__stmt_4);
	((struct openb3d_openb3dcore_TCamera_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tcamera_vy =CameraInt_(openb3d_openb3dcore_TEntity_GetInstance_pb_TTEntity((struct openb3d_openb3dcore_TEntity_obj*)((struct openb3d_openb3dcore_TEntity_obj*)bbObjectDowncast((BBOBJECT)o,(BBClass*)&openb3d_openb3dcore_TEntity))),4);
	struct BBDebugStm __stmt_5 = {0x96356c750530f2c5, 71, 0};
	bbOnDebugEnterStm(&__stmt_5);
	((struct openb3d_openb3dcore_TCamera_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tcamera_vwidth =CameraInt_(openb3d_openb3dcore_TEntity_GetInstance_pb_TTEntity((struct openb3d_openb3dcore_TEntity_obj*)((struct openb3d_openb3dcore_TEntity_obj*)bbObjectDowncast((BBOBJECT)o,(BBClass*)&openb3d_openb3dcore_TEntity))),5);
	struct BBDebugStm __stmt_6 = {0x96356c750530f2c5, 72, 0};
	bbOnDebugEnterStm(&__stmt_6);
	((struct openb3d_openb3dcore_TCamera_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tcamera_vheight =CameraInt_(openb3d_openb3dcore_TEntity_GetInstance_pb_TTEntity((struct openb3d_openb3dcore_TEntity_obj*)((struct openb3d_openb3dcore_TEntity_obj*)bbObjectDowncast((BBOBJECT)o,(BBClass*)&openb3d_openb3dcore_TEntity))),6);
	struct BBDebugStm __stmt_7 = {0x96356c750530f2c5, 73, 0};
	bbOnDebugEnterStm(&__stmt_7);
	((struct openb3d_openb3dcore_TCamera_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tcamera_proj_mode =CameraInt_(openb3d_openb3dcore_TEntity_GetInstance_pb_TTEntity((struct openb3d_openb3dcore_TEntity_obj*)((struct openb3d_openb3dcore_TEntity_obj*)bbObjectDowncast((BBOBJECT)o,(BBClass*)&openb3d_openb3dcore_TEntity))),15);
	struct BBDebugStm __stmt_8 = {0x96356c750530f2c5, 74, 0};
	bbOnDebugEnterStm(&__stmt_8);
	((struct openb3d_openb3dcore_TCamera_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tcamera_fog_mode =CameraInt_(openb3d_openb3dcore_TEntity_GetInstance_pb_TTEntity((struct openb3d_openb3dcore_TEntity_obj*)((struct openb3d_openb3dcore_TEntity_obj*)bbObjectDowncast((BBOBJECT)o,(BBClass*)&openb3d_openb3dcore_TEntity))),16);
	struct BBDebugStm __stmt_9 = {0x96356c750530f2c5, 75, 0};
	bbOnDebugEnterStm(&__stmt_9);
	((struct openb3d_openb3dcore_TCamera_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tcamera_project_enabled =CameraInt_(openb3d_openb3dcore_TEntity_GetInstance_pb_TTEntity((struct openb3d_openb3dcore_TEntity_obj*)((struct openb3d_openb3dcore_TEntity_obj*)bbObjectDowncast((BBOBJECT)o,(BBClass*)&openb3d_openb3dcore_TEntity))),22);
	struct BBDebugStm __stmt_10 = {0x96356c750530f2c5, 76, 0};
	bbOnDebugEnterStm(&__stmt_10);
	((struct openb3d_openb3dcore_TCamera_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tcamera_viewport =CameraInt_(openb3d_openb3dcore_TEntity_GetInstance_pb_TTEntity((struct openb3d_openb3dcore_TEntity_obj*)((struct openb3d_openb3dcore_TEntity_obj*)bbObjectDowncast((BBOBJECT)o,(BBClass*)&openb3d_openb3dcore_TEntity))),25);
	struct BBDebugStm __stmt_11 = {0x96356c750530f2c5, 79, 0};
	bbOnDebugEnterStm(&__stmt_11);
	((struct openb3d_openb3dcore_TCamera_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tcamera_cls_r =CameraFloat_(openb3d_openb3dcore_TEntity_GetInstance_pb_TTEntity((struct openb3d_openb3dcore_TEntity_obj*)((struct openb3d_openb3dcore_TEntity_obj*)bbObjectDowncast((BBOBJECT)o,(BBClass*)&openb3d_openb3dcore_TEntity))),7);
	struct BBDebugStm __stmt_12 = {0x96356c750530f2c5, 80, 0};
	bbOnDebugEnterStm(&__stmt_12);
	((struct openb3d_openb3dcore_TCamera_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tcamera_cls_g =CameraFloat_(openb3d_openb3dcore_TEntity_GetInstance_pb_TTEntity((struct openb3d_openb3dcore_TEntity_obj*)((struct openb3d_openb3dcore_TEntity_obj*)bbObjectDowncast((BBOBJECT)o,(BBClass*)&openb3d_openb3dcore_TEntity))),8);
	struct BBDebugStm __stmt_13 = {0x96356c750530f2c5, 81, 0};
	bbOnDebugEnterStm(&__stmt_13);
	((struct openb3d_openb3dcore_TCamera_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tcamera_cls_b =CameraFloat_(openb3d_openb3dcore_TEntity_GetInstance_pb_TTEntity((struct openb3d_openb3dcore_TEntity_obj*)((struct openb3d_openb3dcore_TEntity_obj*)bbObjectDowncast((BBOBJECT)o,(BBClass*)&openb3d_openb3dcore_TEntity))),9);
	struct BBDebugStm __stmt_14 = {0x96356c750530f2c5, 82, 0};
	bbOnDebugEnterStm(&__stmt_14);
	((struct openb3d_openb3dcore_TCamera_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tcamera_range_near =CameraFloat_(openb3d_openb3dcore_TEntity_GetInstance_pb_TTEntity((struct openb3d_openb3dcore_TEntity_obj*)((struct openb3d_openb3dcore_TEntity_obj*)bbObjectDowncast((BBOBJECT)o,(BBClass*)&openb3d_openb3dcore_TEntity))),12);
	struct BBDebugStm __stmt_15 = {0x96356c750530f2c5, 83, 0};
	bbOnDebugEnterStm(&__stmt_15);
	((struct openb3d_openb3dcore_TCamera_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tcamera_range_far =CameraFloat_(openb3d_openb3dcore_TEntity_GetInstance_pb_TTEntity((struct openb3d_openb3dcore_TEntity_obj*)((struct openb3d_openb3dcore_TEntity_obj*)bbObjectDowncast((BBOBJECT)o,(BBClass*)&openb3d_openb3dcore_TEntity))),13);
	struct BBDebugStm __stmt_16 = {0x96356c750530f2c5, 84, 0};
	bbOnDebugEnterStm(&__stmt_16);
	((struct openb3d_openb3dcore_TCamera_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tcamera_zoom =CameraFloat_(openb3d_openb3dcore_TEntity_GetInstance_pb_TTEntity((struct openb3d_openb3dcore_TEntity_obj*)((struct openb3d_openb3dcore_TEntity_obj*)bbObjectDowncast((BBOBJECT)o,(BBClass*)&openb3d_openb3dcore_TEntity))),14);
	struct BBDebugStm __stmt_17 = {0x96356c750530f2c5, 85, 0};
	bbOnDebugEnterStm(&__stmt_17);
	((struct openb3d_openb3dcore_TCamera_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tcamera_fog_r =CameraFloat_(openb3d_openb3dcore_TEntity_GetInstance_pb_TTEntity((struct openb3d_openb3dcore_TEntity_obj*)((struct openb3d_openb3dcore_TEntity_obj*)bbObjectDowncast((BBOBJECT)o,(BBClass*)&openb3d_openb3dcore_TEntity))),17);
	struct BBDebugStm __stmt_18 = {0x96356c750530f2c5, 86, 0};
	bbOnDebugEnterStm(&__stmt_18);
	((struct openb3d_openb3dcore_TCamera_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tcamera_fog_g =CameraFloat_(openb3d_openb3dcore_TEntity_GetInstance_pb_TTEntity((struct openb3d_openb3dcore_TEntity_obj*)((struct openb3d_openb3dcore_TEntity_obj*)bbObjectDowncast((BBOBJECT)o,(BBClass*)&openb3d_openb3dcore_TEntity))),18);
	struct BBDebugStm __stmt_19 = {0x96356c750530f2c5, 87, 0};
	bbOnDebugEnterStm(&__stmt_19);
	((struct openb3d_openb3dcore_TCamera_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tcamera_fog_b =CameraFloat_(openb3d_openb3dcore_TEntity_GetInstance_pb_TTEntity((struct openb3d_openb3dcore_TEntity_obj*)((struct openb3d_openb3dcore_TEntity_obj*)bbObjectDowncast((BBOBJECT)o,(BBClass*)&openb3d_openb3dcore_TEntity))),19);
	struct BBDebugStm __stmt_20 = {0x96356c750530f2c5, 88, 0};
	bbOnDebugEnterStm(&__stmt_20);
	((struct openb3d_openb3dcore_TCamera_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tcamera_fog_range_near =CameraFloat_(openb3d_openb3dcore_TEntity_GetInstance_pb_TTEntity((struct openb3d_openb3dcore_TEntity_obj*)((struct openb3d_openb3dcore_TEntity_obj*)bbObjectDowncast((BBOBJECT)o,(BBClass*)&openb3d_openb3dcore_TEntity))),20);
	struct BBDebugStm __stmt_21 = {0x96356c750530f2c5, 89, 0};
	bbOnDebugEnterStm(&__stmt_21);
	((struct openb3d_openb3dcore_TCamera_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tcamera_fog_range_far =CameraFloat_(openb3d_openb3dcore_TEntity_GetInstance_pb_TTEntity((struct openb3d_openb3dcore_TEntity_obj*)((struct openb3d_openb3dcore_TEntity_obj*)bbObjectDowncast((BBOBJECT)o,(BBClass*)&openb3d_openb3dcore_TEntity))),21);
	struct BBDebugStm __stmt_22 = {0x96356c750530f2c5, 90, 0};
	bbOnDebugEnterStm(&__stmt_22);
	((struct openb3d_openb3dcore_TCamera_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tcamera_mod_mat =CameraFloat_(openb3d_openb3dcore_TEntity_GetInstance_pb_TTEntity((struct openb3d_openb3dcore_TEntity_obj*)((struct openb3d_openb3dcore_TEntity_obj*)bbObjectDowncast((BBOBJECT)o,(BBClass*)&openb3d_openb3dcore_TEntity))),23);
	struct BBDebugStm __stmt_23 = {0x96356c750530f2c5, 91, 0};
	bbOnDebugEnterStm(&__stmt_23);
	((struct openb3d_openb3dcore_TCamera_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tcamera_proj_mat =CameraFloat_(openb3d_openb3dcore_TEntity_GetInstance_pb_TTEntity((struct openb3d_openb3dcore_TEntity_obj*)((struct openb3d_openb3dcore_TEntity_obj*)bbObjectDowncast((BBOBJECT)o,(BBClass*)&openb3d_openb3dcore_TEntity))),24);
	struct BBDebugStm __stmt_24 = {0x96356c750530f2c5, 92, 0};
	bbOnDebugEnterStm(&__stmt_24);
	((struct openb3d_openb3dcore_TCamera_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tcamera_frustum =CameraFloat_(openb3d_openb3dcore_TEntity_GetInstance_pb_TTEntity((struct openb3d_openb3dcore_TEntity_obj*)((struct openb3d_openb3dcore_TEntity_obj*)bbObjectDowncast((BBOBJECT)o,(BBClass*)&openb3d_openb3dcore_TEntity))),29);
	struct BBDebugStm __stmt_25 = {0x96356c750530f2c5, 94, 0};
	bbOnDebugEnterStm(&__stmt_25);
	o->clas->f_CopyList__i_TTList((struct brl_linkedlist_TList_obj*)openb3d_openb3dcore_TCamera_cam_list);
	bbOnDebugLeaveScope();
	return 0;
}
BBINT _openb3d_openb3dcore_TCamera_DebugFields_ii(struct openb3d_openb3dcore_TCamera_obj* o,BBINT bbt_debug_subobjects,BBINT bbt_debug_base_types){
	((struct openb3d_openb3dcore_TCamera_obj*)bbNullObjectTest((BBObject*)o));
	BBSTRING bbt_pad=(&bbEmptyString);
	BBINT bbt_loop=0;
	struct BBDebugScope_5 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"DebugFields",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TCamera",
				.var_address=&o
			},
			{
				BBDEBUGDECL_LOCAL,
				"debug_subobjects",
				"i",
				.var_address=&bbt_debug_subobjects
			},
			{
				BBDEBUGDECL_LOCAL,
				"debug_base_types",
				"i",
				.var_address=&bbt_debug_base_types
			},
			{
				BBDEBUGDECL_LOCAL,
				"pad",
				"$",
				.var_address=&bbt_pad
			},
			{
				BBDEBUGDECL_LOCAL,
				"loop",
				"i",
				.var_address=&bbt_loop
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x96356c750530f2c5, 100, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbt_pad=((BBString*)&bbEmptyString);
	struct BBDebugStm __stmt_1 = {0x96356c750530f2c5, 101, 0};
	bbOnDebugEnterStm(&__stmt_1);
	bbt_loop=bbt_debug_subobjects;
	struct BBDebugStm __stmt_2 = {0x96356c750530f2c5, 102, 0};
	bbOnDebugEnterStm(&__stmt_2);
	if(bbt_debug_base_types>bbt_debug_subobjects){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x96356c750530f2c5, 102, 0};
		bbOnDebugEnterStm(&__stmt_0);
		bbt_loop=bbt_debug_base_types;
		bbOnDebugLeaveScope();
	}
	struct BBDebugStm __stmt_3 = {0x96356c750530f2c5, 103, 0};
	bbOnDebugEnterStm(&__stmt_3);
	{
		BBINT bbt_i=1;
		BBINT bbt_=bbt_loop;
		for(;(bbt_i<bbt_);bbt_i=(bbt_i+1)){
			struct BBDebugScope_1 __scope = {
				BBDEBUGSCOPE_LOCALBLOCK,
				0,
				{
					{
						BBDEBUGDECL_LOCAL,
						"i",
						"i",
						.var_address=&bbt_i
					},
					{
						BBDEBUGDECL_END
					}
				}
			};
			bbOnDebugEnterScope((BBDebugScope *)&__scope);
			struct BBDebugStm __stmt_0 = {0x96356c750530f2c5, 104, 0};
			bbOnDebugEnterStm(&__stmt_0);
			bbt_pad=bbStringConcat(bbt_pad,((BBString*)&_s0));
			bbOnDebugLeaveScope();
		}
	}
	struct BBDebugStm __stmt_4 = {0x96356c750530f2c5, 106, 0};
	bbOnDebugEnterStm(&__stmt_4);
	if(bbt_debug_subobjects!=0){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x96356c750530f2c5, 106, 0};
		bbOnDebugEnterStm(&__stmt_0);
		bbt_debug_subobjects+=1;
		bbOnDebugLeaveScope();
	}
	struct BBDebugStm __stmt_5 = {0x96356c750530f2c5, 107, 0};
	bbOnDebugEnterStm(&__stmt_5);
	if(bbt_debug_base_types!=0){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x96356c750530f2c5, 107, 0};
		bbOnDebugEnterStm(&__stmt_0);
		bbt_debug_base_types+=1;
		bbOnDebugLeaveScope();
	}
	struct BBDebugStm __stmt_6 = {0x96356c750530f2c5, 108, 0};
	bbOnDebugEnterStm(&__stmt_6);
	brl_blitz_DebugLog(bbStringConcat(bbStringConcat(bbt_pad,((BBString*)&_s142)),openb3d_openb3dcore_StringPtr(openb3d_openb3dcore_TEntity_GetInstance_pb_TTEntity((struct openb3d_openb3dcore_TEntity_obj*)((struct openb3d_openb3dcore_TEntity_obj*)bbObjectDowncast((BBOBJECT)o,(BBClass*)&openb3d_openb3dcore_TEntity))))));
	struct BBDebugStm __stmt_7 = {0x96356c750530f2c5, 111, 0};
	bbOnDebugEnterStm(&__stmt_7);
	if(((struct openb3d_openb3dcore_TCamera_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tcamera_cls_color !=0){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x96356c750530f2c5, 111, 0};
		bbOnDebugEnterStm(&__stmt_0);
		brl_blitz_DebugLog(bbStringConcat(bbStringConcat(bbt_pad,((BBString*)&_s143)),bbStringFromInt(((struct openb3d_openb3dcore_TCamera_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tcamera_cls_color [0])));
		bbOnDebugLeaveScope();
	}else{
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x96356c750530f2c5, 111, 0};
		bbOnDebugEnterStm(&__stmt_0);
		brl_blitz_DebugLog(bbStringConcat(bbt_pad,((BBString*)&_s144)));
		bbOnDebugLeaveScope();
	}
	struct BBDebugStm __stmt_8 = {0x96356c750530f2c5, 112, 0};
	bbOnDebugEnterStm(&__stmt_8);
	if(((struct openb3d_openb3dcore_TCamera_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tcamera_cls_zbuffer !=0){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x96356c750530f2c5, 112, 0};
		bbOnDebugEnterStm(&__stmt_0);
		brl_blitz_DebugLog(bbStringConcat(bbStringConcat(bbt_pad,((BBString*)&_s145)),bbStringFromInt(((struct openb3d_openb3dcore_TCamera_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tcamera_cls_zbuffer [0])));
		bbOnDebugLeaveScope();
	}else{
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x96356c750530f2c5, 112, 0};
		bbOnDebugEnterStm(&__stmt_0);
		brl_blitz_DebugLog(bbStringConcat(bbt_pad,((BBString*)&_s146)));
		bbOnDebugLeaveScope();
	}
	struct BBDebugStm __stmt_9 = {0x96356c750530f2c5, 115, 0};
	bbOnDebugEnterStm(&__stmt_9);
	if(((struct openb3d_openb3dcore_TCamera_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tcamera_vx !=0){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x96356c750530f2c5, 115, 0};
		bbOnDebugEnterStm(&__stmt_0);
		brl_blitz_DebugLog(bbStringConcat(bbStringConcat(bbt_pad,((BBString*)&_s147)),bbStringFromInt(((struct openb3d_openb3dcore_TCamera_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tcamera_vx [0])));
		bbOnDebugLeaveScope();
	}else{
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x96356c750530f2c5, 115, 0};
		bbOnDebugEnterStm(&__stmt_0);
		brl_blitz_DebugLog(bbStringConcat(bbt_pad,((BBString*)&_s148)));
		bbOnDebugLeaveScope();
	}
	struct BBDebugStm __stmt_10 = {0x96356c750530f2c5, 116, 0};
	bbOnDebugEnterStm(&__stmt_10);
	if(((struct openb3d_openb3dcore_TCamera_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tcamera_vy !=0){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x96356c750530f2c5, 116, 0};
		bbOnDebugEnterStm(&__stmt_0);
		brl_blitz_DebugLog(bbStringConcat(bbStringConcat(bbt_pad,((BBString*)&_s149)),bbStringFromInt(((struct openb3d_openb3dcore_TCamera_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tcamera_vy [0])));
		bbOnDebugLeaveScope();
	}else{
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x96356c750530f2c5, 116, 0};
		bbOnDebugEnterStm(&__stmt_0);
		brl_blitz_DebugLog(bbStringConcat(bbt_pad,((BBString*)&_s150)));
		bbOnDebugLeaveScope();
	}
	struct BBDebugStm __stmt_11 = {0x96356c750530f2c5, 117, 0};
	bbOnDebugEnterStm(&__stmt_11);
	if(((struct openb3d_openb3dcore_TCamera_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tcamera_vwidth !=0){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x96356c750530f2c5, 117, 0};
		bbOnDebugEnterStm(&__stmt_0);
		brl_blitz_DebugLog(bbStringConcat(bbStringConcat(bbt_pad,((BBString*)&_s151)),bbStringFromInt(((struct openb3d_openb3dcore_TCamera_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tcamera_vwidth [0])));
		bbOnDebugLeaveScope();
	}else{
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x96356c750530f2c5, 117, 0};
		bbOnDebugEnterStm(&__stmt_0);
		brl_blitz_DebugLog(bbStringConcat(bbt_pad,((BBString*)&_s152)));
		bbOnDebugLeaveScope();
	}
	struct BBDebugStm __stmt_12 = {0x96356c750530f2c5, 118, 0};
	bbOnDebugEnterStm(&__stmt_12);
	if(((struct openb3d_openb3dcore_TCamera_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tcamera_vheight !=0){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x96356c750530f2c5, 118, 0};
		bbOnDebugEnterStm(&__stmt_0);
		brl_blitz_DebugLog(bbStringConcat(bbStringConcat(bbt_pad,((BBString*)&_s153)),bbStringFromInt(((struct openb3d_openb3dcore_TCamera_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tcamera_vheight [0])));
		bbOnDebugLeaveScope();
	}else{
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x96356c750530f2c5, 118, 0};
		bbOnDebugEnterStm(&__stmt_0);
		brl_blitz_DebugLog(bbStringConcat(bbt_pad,((BBString*)&_s154)));
		bbOnDebugLeaveScope();
	}
	struct BBDebugStm __stmt_13 = {0x96356c750530f2c5, 119, 0};
	bbOnDebugEnterStm(&__stmt_13);
	if(((struct openb3d_openb3dcore_TCamera_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tcamera_proj_mode !=0){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x96356c750530f2c5, 119, 0};
		bbOnDebugEnterStm(&__stmt_0);
		brl_blitz_DebugLog(bbStringConcat(bbStringConcat(bbt_pad,((BBString*)&_s155)),bbStringFromInt(((struct openb3d_openb3dcore_TCamera_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tcamera_proj_mode [0])));
		bbOnDebugLeaveScope();
	}else{
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x96356c750530f2c5, 119, 0};
		bbOnDebugEnterStm(&__stmt_0);
		brl_blitz_DebugLog(bbStringConcat(bbt_pad,((BBString*)&_s156)));
		bbOnDebugLeaveScope();
	}
	struct BBDebugStm __stmt_14 = {0x96356c750530f2c5, 120, 0};
	bbOnDebugEnterStm(&__stmt_14);
	if(((struct openb3d_openb3dcore_TCamera_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tcamera_fog_mode !=0){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x96356c750530f2c5, 120, 0};
		bbOnDebugEnterStm(&__stmt_0);
		brl_blitz_DebugLog(bbStringConcat(bbStringConcat(bbt_pad,((BBString*)&_s157)),bbStringFromInt(((struct openb3d_openb3dcore_TCamera_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tcamera_fog_mode [0])));
		bbOnDebugLeaveScope();
	}else{
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x96356c750530f2c5, 120, 0};
		bbOnDebugEnterStm(&__stmt_0);
		brl_blitz_DebugLog(bbStringConcat(bbt_pad,((BBString*)&_s158)));
		bbOnDebugLeaveScope();
	}
	struct BBDebugStm __stmt_15 = {0x96356c750530f2c5, 121, 0};
	bbOnDebugEnterStm(&__stmt_15);
	if(((struct openb3d_openb3dcore_TCamera_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tcamera_project_enabled !=0){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x96356c750530f2c5, 121, 0};
		bbOnDebugEnterStm(&__stmt_0);
		brl_blitz_DebugLog(bbStringConcat(bbStringConcat(bbt_pad,((BBString*)&_s159)),bbStringFromInt(((struct openb3d_openb3dcore_TCamera_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tcamera_project_enabled [0])));
		bbOnDebugLeaveScope();
	}else{
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x96356c750530f2c5, 121, 0};
		bbOnDebugEnterStm(&__stmt_0);
		brl_blitz_DebugLog(bbStringConcat(bbt_pad,((BBString*)&_s160)));
		bbOnDebugLeaveScope();
	}
	struct BBDebugStm __stmt_16 = {0x96356c750530f2c5, 122, 0};
	bbOnDebugEnterStm(&__stmt_16);
	brl_blitz_DebugLog(bbStringConcat(bbStringConcat(bbt_pad,((BBString*)&_s161)),openb3d_openb3dcore_StringPtr((BBBYTE*)((struct openb3d_openb3dcore_TCamera_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tcamera_viewport )));
	struct BBDebugStm __stmt_17 = {0x96356c750530f2c5, 123, 0};
	bbOnDebugEnterStm(&__stmt_17);
	{
		BBINT bbt_id=0;
		for(;(bbt_id<=3);bbt_id=(bbt_id+1)){
			struct BBDebugScope_1 __scope = {
				BBDEBUGSCOPE_LOCALBLOCK,
				0,
				{
					{
						BBDEBUGDECL_LOCAL,
						"id",
						"i",
						.var_address=&bbt_id
					},
					{
						BBDEBUGDECL_END
					}
				}
			};
			bbOnDebugEnterScope((BBDebugScope *)&__scope);
			struct BBDebugStm __stmt_0 = {0x96356c750530f2c5, 124, 0};
			bbOnDebugEnterStm(&__stmt_0);
			brl_blitz_DebugLog(bbStringConcat(bbStringConcat(bbStringConcat(bbStringConcat(bbt_pad,((BBString*)&_s162)),bbStringFromInt(bbt_id)),((BBString*)&_s163)),bbStringFromInt(((struct openb3d_openb3dcore_TCamera_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tcamera_viewport [bbt_id])));
			bbOnDebugLeaveScope();
		}
	}
	struct BBDebugStm __stmt_18 = {0x96356c750530f2c5, 128, 0};
	bbOnDebugEnterStm(&__stmt_18);
	if(((struct openb3d_openb3dcore_TCamera_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tcamera_cls_r !=0){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x96356c750530f2c5, 128, 0};
		bbOnDebugEnterStm(&__stmt_0);
		brl_blitz_DebugLog(bbStringConcat(bbStringConcat(bbt_pad,((BBString*)&_s164)),bbStringFromFloat(((struct openb3d_openb3dcore_TCamera_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tcamera_cls_r [0])));
		bbOnDebugLeaveScope();
	}else{
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x96356c750530f2c5, 128, 0};
		bbOnDebugEnterStm(&__stmt_0);
		brl_blitz_DebugLog(bbStringConcat(bbt_pad,((BBString*)&_s165)));
		bbOnDebugLeaveScope();
	}
	struct BBDebugStm __stmt_19 = {0x96356c750530f2c5, 129, 0};
	bbOnDebugEnterStm(&__stmt_19);
	if(((struct openb3d_openb3dcore_TCamera_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tcamera_cls_g !=0){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x96356c750530f2c5, 129, 0};
		bbOnDebugEnterStm(&__stmt_0);
		brl_blitz_DebugLog(bbStringConcat(bbStringConcat(bbt_pad,((BBString*)&_s166)),bbStringFromFloat(((struct openb3d_openb3dcore_TCamera_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tcamera_cls_g [0])));
		bbOnDebugLeaveScope();
	}else{
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x96356c750530f2c5, 129, 0};
		bbOnDebugEnterStm(&__stmt_0);
		brl_blitz_DebugLog(bbStringConcat(bbt_pad,((BBString*)&_s167)));
		bbOnDebugLeaveScope();
	}
	struct BBDebugStm __stmt_20 = {0x96356c750530f2c5, 130, 0};
	bbOnDebugEnterStm(&__stmt_20);
	if(((struct openb3d_openb3dcore_TCamera_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tcamera_cls_b !=0){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x96356c750530f2c5, 130, 0};
		bbOnDebugEnterStm(&__stmt_0);
		brl_blitz_DebugLog(bbStringConcat(bbStringConcat(bbt_pad,((BBString*)&_s168)),bbStringFromFloat(((struct openb3d_openb3dcore_TCamera_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tcamera_cls_b [0])));
		bbOnDebugLeaveScope();
	}else{
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x96356c750530f2c5, 130, 0};
		bbOnDebugEnterStm(&__stmt_0);
		brl_blitz_DebugLog(bbStringConcat(bbt_pad,((BBString*)&_s169)));
		bbOnDebugLeaveScope();
	}
	struct BBDebugStm __stmt_21 = {0x96356c750530f2c5, 131, 0};
	bbOnDebugEnterStm(&__stmt_21);
	if(((struct openb3d_openb3dcore_TCamera_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tcamera_range_near !=0){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x96356c750530f2c5, 131, 0};
		bbOnDebugEnterStm(&__stmt_0);
		brl_blitz_DebugLog(bbStringConcat(bbStringConcat(bbt_pad,((BBString*)&_s170)),bbStringFromFloat(((struct openb3d_openb3dcore_TCamera_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tcamera_range_near [0])));
		bbOnDebugLeaveScope();
	}else{
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x96356c750530f2c5, 131, 0};
		bbOnDebugEnterStm(&__stmt_0);
		brl_blitz_DebugLog(bbStringConcat(bbt_pad,((BBString*)&_s171)));
		bbOnDebugLeaveScope();
	}
	struct BBDebugStm __stmt_22 = {0x96356c750530f2c5, 132, 0};
	bbOnDebugEnterStm(&__stmt_22);
	if(((struct openb3d_openb3dcore_TCamera_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tcamera_range_far !=0){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x96356c750530f2c5, 132, 0};
		bbOnDebugEnterStm(&__stmt_0);
		brl_blitz_DebugLog(bbStringConcat(bbStringConcat(bbt_pad,((BBString*)&_s172)),bbStringFromFloat(((struct openb3d_openb3dcore_TCamera_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tcamera_range_far [0])));
		bbOnDebugLeaveScope();
	}else{
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x96356c750530f2c5, 132, 0};
		bbOnDebugEnterStm(&__stmt_0);
		brl_blitz_DebugLog(bbStringConcat(bbt_pad,((BBString*)&_s173)));
		bbOnDebugLeaveScope();
	}
	struct BBDebugStm __stmt_23 = {0x96356c750530f2c5, 133, 0};
	bbOnDebugEnterStm(&__stmt_23);
	if(((struct openb3d_openb3dcore_TCamera_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tcamera_zoom !=0){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x96356c750530f2c5, 133, 0};
		bbOnDebugEnterStm(&__stmt_0);
		brl_blitz_DebugLog(bbStringConcat(bbStringConcat(bbt_pad,((BBString*)&_s174)),bbStringFromFloat(((struct openb3d_openb3dcore_TCamera_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tcamera_zoom [0])));
		bbOnDebugLeaveScope();
	}else{
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x96356c750530f2c5, 133, 0};
		bbOnDebugEnterStm(&__stmt_0);
		brl_blitz_DebugLog(bbStringConcat(bbt_pad,((BBString*)&_s175)));
		bbOnDebugLeaveScope();
	}
	struct BBDebugStm __stmt_24 = {0x96356c750530f2c5, 134, 0};
	bbOnDebugEnterStm(&__stmt_24);
	if(((struct openb3d_openb3dcore_TCamera_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tcamera_fog_r !=0){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x96356c750530f2c5, 134, 0};
		bbOnDebugEnterStm(&__stmt_0);
		brl_blitz_DebugLog(bbStringConcat(bbStringConcat(bbt_pad,((BBString*)&_s176)),bbStringFromFloat(((struct openb3d_openb3dcore_TCamera_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tcamera_fog_r [0])));
		bbOnDebugLeaveScope();
	}else{
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x96356c750530f2c5, 134, 0};
		bbOnDebugEnterStm(&__stmt_0);
		brl_blitz_DebugLog(bbStringConcat(bbt_pad,((BBString*)&_s177)));
		bbOnDebugLeaveScope();
	}
	struct BBDebugStm __stmt_25 = {0x96356c750530f2c5, 135, 0};
	bbOnDebugEnterStm(&__stmt_25);
	if(((struct openb3d_openb3dcore_TCamera_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tcamera_fog_g !=0){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x96356c750530f2c5, 135, 0};
		bbOnDebugEnterStm(&__stmt_0);
		brl_blitz_DebugLog(bbStringConcat(bbStringConcat(bbt_pad,((BBString*)&_s178)),bbStringFromFloat(((struct openb3d_openb3dcore_TCamera_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tcamera_fog_g [0])));
		bbOnDebugLeaveScope();
	}else{
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x96356c750530f2c5, 135, 0};
		bbOnDebugEnterStm(&__stmt_0);
		brl_blitz_DebugLog(bbStringConcat(bbt_pad,((BBString*)&_s179)));
		bbOnDebugLeaveScope();
	}
	struct BBDebugStm __stmt_26 = {0x96356c750530f2c5, 136, 0};
	bbOnDebugEnterStm(&__stmt_26);
	if(((struct openb3d_openb3dcore_TCamera_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tcamera_fog_b !=0){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x96356c750530f2c5, 136, 0};
		bbOnDebugEnterStm(&__stmt_0);
		brl_blitz_DebugLog(bbStringConcat(bbStringConcat(bbt_pad,((BBString*)&_s180)),bbStringFromFloat(((struct openb3d_openb3dcore_TCamera_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tcamera_fog_b [0])));
		bbOnDebugLeaveScope();
	}else{
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x96356c750530f2c5, 136, 0};
		bbOnDebugEnterStm(&__stmt_0);
		brl_blitz_DebugLog(bbStringConcat(bbt_pad,((BBString*)&_s181)));
		bbOnDebugLeaveScope();
	}
	struct BBDebugStm __stmt_27 = {0x96356c750530f2c5, 137, 0};
	bbOnDebugEnterStm(&__stmt_27);
	if(((struct openb3d_openb3dcore_TCamera_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tcamera_fog_range_near !=0){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x96356c750530f2c5, 137, 0};
		bbOnDebugEnterStm(&__stmt_0);
		brl_blitz_DebugLog(bbStringConcat(bbStringConcat(bbt_pad,((BBString*)&_s182)),bbStringFromFloat(((struct openb3d_openb3dcore_TCamera_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tcamera_fog_range_near [0])));
		bbOnDebugLeaveScope();
	}else{
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x96356c750530f2c5, 137, 0};
		bbOnDebugEnterStm(&__stmt_0);
		brl_blitz_DebugLog(bbStringConcat(bbt_pad,((BBString*)&_s183)));
		bbOnDebugLeaveScope();
	}
	struct BBDebugStm __stmt_28 = {0x96356c750530f2c5, 138, 0};
	bbOnDebugEnterStm(&__stmt_28);
	if(((struct openb3d_openb3dcore_TCamera_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tcamera_fog_range_far !=0){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x96356c750530f2c5, 138, 0};
		bbOnDebugEnterStm(&__stmt_0);
		brl_blitz_DebugLog(bbStringConcat(bbStringConcat(bbt_pad,((BBString*)&_s184)),bbStringFromFloat(((struct openb3d_openb3dcore_TCamera_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tcamera_fog_range_far [0])));
		bbOnDebugLeaveScope();
	}else{
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x96356c750530f2c5, 138, 0};
		bbOnDebugEnterStm(&__stmt_0);
		brl_blitz_DebugLog(bbStringConcat(bbt_pad,((BBString*)&_s185)));
		bbOnDebugLeaveScope();
	}
	struct BBDebugStm __stmt_29 = {0x96356c750530f2c5, 139, 0};
	bbOnDebugEnterStm(&__stmt_29);
	brl_blitz_DebugLog(bbStringConcat(bbStringConcat(bbt_pad,((BBString*)&_s186)),openb3d_openb3dcore_StringPtr((BBBYTE*)((struct openb3d_openb3dcore_TCamera_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tcamera_mod_mat )));
	struct BBDebugStm __stmt_30 = {0x96356c750530f2c5, 140, 0};
	bbOnDebugEnterStm(&__stmt_30);
	brl_blitz_DebugLog(bbStringConcat(bbStringConcat(bbt_pad,((BBString*)&_s187)),openb3d_openb3dcore_StringPtr((BBBYTE*)((struct openb3d_openb3dcore_TCamera_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tcamera_proj_mat )));
	struct BBDebugStm __stmt_31 = {0x96356c750530f2c5, 141, 0};
	bbOnDebugEnterStm(&__stmt_31);
	brl_blitz_DebugLog(bbStringConcat(bbStringConcat(bbt_pad,((BBString*)&_s188)),openb3d_openb3dcore_StringPtr((BBBYTE*)((struct openb3d_openb3dcore_TCamera_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tcamera_frustum )));
	struct BBDebugStm __stmt_32 = {0x96356c750530f2c5, 143, 0};
	bbOnDebugEnterStm(&__stmt_32);
	brl_blitz_DebugLog((BBString*)&bbEmptyString);
	struct BBDebugStm __stmt_33 = {0x96356c750530f2c5, 145, 0};
	bbOnDebugEnterStm(&__stmt_33);
	if(bbt_debug_base_types!=0){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x96356c750530f2c5, 145, 0};
		bbOnDebugEnterStm(&__stmt_0);
		(&openb3d_openb3dcore_TCamera)->super->m_DebugFields_ii((struct openb3d_openb3dcore_TEntity_obj*)o,bbt_debug_subobjects,bbt_debug_base_types);
		bbOnDebugLeaveScope();
	}
	bbOnDebugLeaveScope();
	return 0;
}
BBINT openb3d_openb3dcore_TCamera_AddList__i_TTList(struct brl_linkedlist_TList_obj* bbt_list){
	struct BBDebugScope_1 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"AddList_",
		{
			{
				BBDEBUGDECL_LOCAL,
				"list",
				":TList",
				.var_address=&bbt_list
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x96356c750530f2c5, 151, 0};
	bbOnDebugEnterStm(&__stmt_0);
	openb3d_openb3dcore_TEntity_AddList__i_TTList((struct brl_linkedlist_TList_obj*)bbt_list);
	struct BBDebugStm __stmt_1 = {0x96356c750530f2c5, 153, 0};
	bbOnDebugEnterStm(&__stmt_1);
	struct brl_linkedlist_TList_obj* bbt_=(struct brl_linkedlist_TList_obj*)bbt_list;
	struct BBDebugStm __stmt_2 = {0x96356c750530f2c5, 154, 0};
	bbOnDebugEnterStm(&__stmt_2);
	if(((struct brl_linkedlist_TList_obj*)bbt_)==openb3d_openb3dcore_TCamera_cam_list){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x96356c750530f2c5, 155, 0};
		bbOnDebugEnterStm(&__stmt_0);
		if(StaticListSize_(6,1)!=0){
			BBBYTE* bbt_inst=0;
			struct openb3d_openb3dcore_TCamera_obj* bbt_obj=(struct openb3d_openb3dcore_TCamera_obj*)((struct openb3d_openb3dcore_TCamera_obj*)&bbNullObject);
			struct BBDebugScope_2 __scope = {
				BBDEBUGSCOPE_LOCALBLOCK,
				0,
				{
					{
						BBDEBUGDECL_LOCAL,
						"inst",
						"*b",
						.var_address=&bbt_inst
					},
					{
						BBDEBUGDECL_LOCAL,
						"obj",
						":TCamera",
						.var_address=&bbt_obj
					},
					{
						BBDEBUGDECL_END
					}
				}
			};
			bbOnDebugEnterScope((BBDebugScope *)&__scope);
			struct BBDebugStm __stmt_0 = {0x96356c750530f2c5, 156, 0};
			bbOnDebugEnterStm(&__stmt_0);
			bbt_inst=StaticIterListCamera_(6,1,(&openb3d_openb3dcore_TCamera_cam_list_id));
			struct BBDebugStm __stmt_1 = {0x96356c750530f2c5, 157, 0};
			bbOnDebugEnterStm(&__stmt_1);
			bbt_obj=(struct openb3d_openb3dcore_TCamera_obj*)((struct openb3d_openb3dcore_TCamera_obj*)bbObjectDowncast((BBOBJECT)openb3d_openb3dcore_TEntity_GetObject_TTEntity_pb(bbt_inst),(BBClass*)&openb3d_openb3dcore_TCamera));
			struct BBDebugStm __stmt_2 = {0x96356c750530f2c5, 158, 0};
			bbOnDebugEnterStm(&__stmt_2);
			if(((BBObject*)bbt_obj)!= &bbNullObject){
				struct BBDebugScope __scope = {
					BBDEBUGSCOPE_LOCALBLOCK,
					0,
					{
						{
							BBDEBUGDECL_END
						}
					}
				};
				bbOnDebugEnterScope((BBDebugScope *)&__scope);
				struct BBDebugStm __stmt_0 = {0x96356c750530f2c5, 158, 0};
				bbOnDebugEnterStm(&__stmt_0);
				brl_linkedlist_ListAddLast((struct brl_linkedlist_TList_obj*)bbt_list,(BBOBJECT)bbt_obj);
				bbOnDebugLeaveScope();
			}
			bbOnDebugLeaveScope();
		}
		bbOnDebugLeaveScope();
	}
	bbOnDebugLeaveScope();
	return 0;
}
BBINT openb3d_openb3dcore_TCamera_CopyList__i_TTList(struct brl_linkedlist_TList_obj* bbt_list){
	struct BBDebugScope_1 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"CopyList_",
		{
			{
				BBDEBUGDECL_LOCAL,
				"list",
				":TList",
				.var_address=&bbt_list
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x96356c750530f2c5, 166, 0};
	bbOnDebugEnterStm(&__stmt_0);
	openb3d_openb3dcore_TEntity_CopyList__i_TTList((struct brl_linkedlist_TList_obj*)bbt_list);
	struct BBDebugStm __stmt_1 = {0x96356c750530f2c5, 168, 0};
	bbOnDebugEnterStm(&__stmt_1);
	struct brl_linkedlist_TList_obj* bbt_=(struct brl_linkedlist_TList_obj*)bbt_list;
	struct BBDebugStm __stmt_2 = {0x96356c750530f2c5, 169, 0};
	bbOnDebugEnterStm(&__stmt_2);
	if(((struct brl_linkedlist_TList_obj*)bbt_)==openb3d_openb3dcore_TCamera_cam_list){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x96356c750530f2c5, 170, 0};
		bbOnDebugEnterStm(&__stmt_0);
		openb3d_openb3dcore_TCamera_cam_list_id=0;
		struct BBDebugStm __stmt_1 = {0x96356c750530f2c5, 171, 0};
		bbOnDebugEnterStm(&__stmt_1);
		{
			BBINT bbt_id=0;
			BBINT bbt_2=(StaticListSize_(6,1)-1);
			for(;(bbt_id<=bbt_2);bbt_id=(bbt_id+1)){
				BBBYTE* bbt_inst=0;
				struct openb3d_openb3dcore_TCamera_obj* bbt_obj=(struct openb3d_openb3dcore_TCamera_obj*)((struct openb3d_openb3dcore_TCamera_obj*)&bbNullObject);
				struct BBDebugScope_3 __scope = {
					BBDEBUGSCOPE_LOCALBLOCK,
					0,
					{
						{
							BBDEBUGDECL_LOCAL,
							"id",
							"i",
							.var_address=&bbt_id
						},
						{
							BBDEBUGDECL_LOCAL,
							"inst",
							"*b",
							.var_address=&bbt_inst
						},
						{
							BBDEBUGDECL_LOCAL,
							"obj",
							":TCamera",
							.var_address=&bbt_obj
						},
						{
							BBDEBUGDECL_END
						}
					}
				};
				bbOnDebugEnterScope((BBDebugScope *)&__scope);
				struct BBDebugStm __stmt_0 = {0x96356c750530f2c5, 172, 0};
				bbOnDebugEnterStm(&__stmt_0);
				bbt_inst=StaticIterListCamera_(6,1,(&openb3d_openb3dcore_TCamera_cam_list_id));
				struct BBDebugStm __stmt_1 = {0x96356c750530f2c5, 173, 0};
				bbOnDebugEnterStm(&__stmt_1);
				bbt_obj=(struct openb3d_openb3dcore_TCamera_obj*)((struct openb3d_openb3dcore_TCamera_obj*)bbObjectDowncast((BBOBJECT)openb3d_openb3dcore_TEntity_GetObject_TTEntity_pb(bbt_inst),(BBClass*)&openb3d_openb3dcore_TCamera));
				struct BBDebugStm __stmt_2 = {0x96356c750530f2c5, 174, 0};
				bbOnDebugEnterStm(&__stmt_2);
				if(((BBObject*)bbt_obj)!= &bbNullObject){
					struct BBDebugScope __scope = {
						BBDEBUGSCOPE_LOCALBLOCK,
						0,
						{
							{
								BBDEBUGDECL_END
							}
						}
					};
					bbOnDebugEnterScope((BBDebugScope *)&__scope);
					struct BBDebugStm __stmt_0 = {0x96356c750530f2c5, 174, 0};
					bbOnDebugEnterStm(&__stmt_0);
					brl_linkedlist_ListAddLast((struct brl_linkedlist_TList_obj*)bbt_list,(BBOBJECT)bbt_obj);
					bbOnDebugLeaveScope();
				}
				bbOnDebugLeaveScope();
			}
		}
		bbOnDebugLeaveScope();
	}
	bbOnDebugLeaveScope();
	return 0;
}
BBINT _openb3d_openb3dcore_TCamera_CameraListAdd_TTList(struct openb3d_openb3dcore_TCamera_obj* o,struct brl_linkedlist_TList_obj* bbt_list){
	((struct openb3d_openb3dcore_TCamera_obj*)bbNullObjectTest((BBObject*)o));
	struct BBDebugScope_2 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"CameraListAdd",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TCamera",
				.var_address=&o
			},
			{
				BBDEBUGDECL_LOCAL,
				"list",
				":TList",
				.var_address=&bbt_list
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x96356c750530f2c5, 182, 0};
	bbOnDebugEnterStm(&__stmt_0);
	struct brl_linkedlist_TList_obj* bbt_=(struct brl_linkedlist_TList_obj*)bbt_list;
	struct BBDebugStm __stmt_1 = {0x96356c750530f2c5, 183, 0};
	bbOnDebugEnterStm(&__stmt_1);
	if(((struct brl_linkedlist_TList_obj*)bbt_)==openb3d_openb3dcore_TCamera_cam_list){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x96356c750530f2c5, 184, 0};
		bbOnDebugEnterStm(&__stmt_0);
		GlobalListPushBackCamera_(1,openb3d_openb3dcore_TEntity_GetInstance_pb_TTEntity((struct openb3d_openb3dcore_TEntity_obj*)((struct openb3d_openb3dcore_TEntity_obj*)bbObjectDowncast((BBOBJECT)o,(BBClass*)&openb3d_openb3dcore_TEntity))));
		struct BBDebugStm __stmt_1 = {0x96356c750530f2c5, 185, 0};
		bbOnDebugEnterStm(&__stmt_1);
		o->clas->f_AddList__i_TTList((struct brl_linkedlist_TList_obj*)bbt_list);
		bbOnDebugLeaveScope();
	}
	bbOnDebugLeaveScope();
	return 0;
}
BBINT _openb3d_openb3dcore_TCamera_CameraListRemove_TTList(struct openb3d_openb3dcore_TCamera_obj* o,struct brl_linkedlist_TList_obj* bbt_list){
	((struct openb3d_openb3dcore_TCamera_obj*)bbNullObjectTest((BBObject*)o));
	struct BBDebugScope_2 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"CameraListRemove",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TCamera",
				.var_address=&o
			},
			{
				BBDEBUGDECL_LOCAL,
				"list",
				":TList",
				.var_address=&bbt_list
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x96356c750530f2c5, 192, 0};
	bbOnDebugEnterStm(&__stmt_0);
	struct brl_linkedlist_TList_obj* bbt_=(struct brl_linkedlist_TList_obj*)bbt_list;
	struct BBDebugStm __stmt_1 = {0x96356c750530f2c5, 193, 0};
	bbOnDebugEnterStm(&__stmt_1);
	if(((struct brl_linkedlist_TList_obj*)bbt_)==openb3d_openb3dcore_TCamera_cam_list){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x96356c750530f2c5, 194, 0};
		bbOnDebugEnterStm(&__stmt_0);
		GlobalListRemoveCamera_(1,openb3d_openb3dcore_TEntity_GetInstance_pb_TTEntity((struct openb3d_openb3dcore_TEntity_obj*)((struct openb3d_openb3dcore_TEntity_obj*)bbObjectDowncast((BBOBJECT)o,(BBClass*)&openb3d_openb3dcore_TEntity))));
		struct BBDebugStm __stmt_1 = {0x96356c750530f2c5, 195, 0};
		bbOnDebugEnterStm(&__stmt_1);
		brl_linkedlist_ListRemove((struct brl_linkedlist_TList_obj*)bbt_list,(BBOBJECT)o);
		struct BBDebugStm __stmt_2 = {0x96356c750530f2c5, 195, 0};
		bbOnDebugEnterStm(&__stmt_2);
		openb3d_openb3dcore_TCamera_cam_list_id-=1;
		bbOnDebugLeaveScope();
	}
	bbOnDebugLeaveScope();
	return 0;
}
BBINT _openb3d_openb3dcore_TCamera_UpdateFog(struct openb3d_openb3dcore_TCamera_obj* o){
	((struct openb3d_openb3dcore_TCamera_obj*)bbNullObjectTest((BBObject*)o));
	struct BBDebugScope_1 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"UpdateFog",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TCamera",
				.var_address=&o
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x96356c750530f2c5, 205, 0};
	bbOnDebugEnterStm(&__stmt_0);
	if(openb3d_openb3dcore_TGlobal3D_fog_enabled[0]==1){
		BBARRAY bbt_rgb=(&bbEmptyArray);
		struct BBDebugScope_1 __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_LOCAL,
					"rgb",
					"[]f",
					.var_address=&bbt_rgb
				},
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x96356c750530f2c5, 206, 0};
		bbOnDebugEnterStm(&__stmt_0);
		glEnable((GLenum)2912);
		struct BBDebugStm __stmt_1 = {0x96356c750530f2c5, 207, 0};
		bbOnDebugEnterStm(&__stmt_1);
		glFogf((GLenum)2917,(GLfloat)9729.00000f);
		struct BBDebugStm __stmt_2 = {0x96356c750530f2c5, 208, 0};
		bbOnDebugEnterStm(&__stmt_2);
		glFogf((GLenum)2915,(GLfloat)((struct openb3d_openb3dcore_TCamera_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tcamera_fog_range_near [0]);
		struct BBDebugStm __stmt_3 = {0x96356c750530f2c5, 209, 0};
		bbOnDebugEnterStm(&__stmt_3);
		glFogf((GLenum)2916,(GLfloat)((struct openb3d_openb3dcore_TCamera_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tcamera_fog_range_far [0]);
		struct BBDebugStm __stmt_4 = {0x96356c750530f2c5, 210, 0};
		bbOnDebugEnterStm(&__stmt_4);
		BBFLOAT bbt_[]={((struct openb3d_openb3dcore_TCamera_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tcamera_fog_r [0],((struct openb3d_openb3dcore_TCamera_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tcamera_fog_g [0],((struct openb3d_openb3dcore_TCamera_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tcamera_fog_b [0]};
		BBARRAY bbt_2 = bbArrayFromData("f",3,bbt_);
		bbt_rgb=bbt_2;
		struct BBDebugStm __stmt_5 = {0x96356c750530f2c5, 211, 0};
		bbOnDebugEnterStm(&__stmt_5);
		glFogfv((GLenum)2918,(const GLfloat*)((BBFLOAT*)BBARRAYDATA(bbt_rgb,1)));
		bbOnDebugLeaveScope();
	}else{
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x96356c750530f2c5, 213, 0};
		bbOnDebugEnterStm(&__stmt_0);
		glDisable((GLenum)2912);
		bbOnDebugLeaveScope();
	}
	bbOnDebugLeaveScope();
	return 0;
}
BBINT _openb3d_openb3dcore_TCamera_FreeEntity(struct openb3d_openb3dcore_TCamera_obj* o){
	((struct openb3d_openb3dcore_TCamera_obj*)bbNullObjectTest((BBObject*)o));
	struct BBDebugScope_1 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"FreeEntity",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TCamera",
				.var_address=&o
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x96356c750530f2c5, 238, 0};
	bbOnDebugEnterStm(&__stmt_0);
	if(((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tentity_exists !=0){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x96356c750530f2c5, 239, 0};
		bbOnDebugEnterStm(&__stmt_0);
		brl_linkedlist_ListRemove((struct brl_linkedlist_TList_obj*)openb3d_openb3dcore_TCamera_cam_list,(BBOBJECT)o);
		struct BBDebugStm __stmt_1 = {0x96356c750530f2c5, 239, 0};
		bbOnDebugEnterStm(&__stmt_1);
		openb3d_openb3dcore_TCamera_cam_list_id-=1;
		struct BBDebugStm __stmt_2 = {0x96356c750530f2c5, 240, 0};
		bbOnDebugEnterStm(&__stmt_2);
		(&openb3d_openb3dcore_TCamera)->super->m_FreeEntity((struct openb3d_openb3dcore_TEntity_obj*)o);
		bbOnDebugLeaveScope();
	}
	bbOnDebugLeaveScope();
	return 0;
}
struct openb3d_openb3dcore_TCamera_obj* openb3d_openb3dcore_TCamera_CreateCamera_TTCamera_TTEntity(struct openb3d_openb3dcore_TEntity_obj* bbt_parent){
	BBBYTE* bbt_inst=0;
	struct openb3d_openb3dcore_TCamera_obj* bbt_cam=(struct openb3d_openb3dcore_TCamera_obj*)((struct openb3d_openb3dcore_TCamera_obj*)&bbNullObject);
	struct BBDebugScope_3 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"CreateCamera",
		{
			{
				BBDEBUGDECL_LOCAL,
				"parent",
				":TEntity",
				.var_address=&bbt_parent
			},
			{
				BBDEBUGDECL_LOCAL,
				"inst",
				"*b",
				.var_address=&bbt_inst
			},
			{
				BBDEBUGDECL_LOCAL,
				"cam",
				":TCamera",
				.var_address=&bbt_cam
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x96356c750530f2c5, 247, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbt_inst=CreateCamera_(openb3d_openb3dcore_TEntity_GetInstance_pb_TTEntity((struct openb3d_openb3dcore_TEntity_obj*)bbt_parent));
	struct BBDebugStm __stmt_1 = {0x96356c750530f2c5, 248, 0};
	bbOnDebugEnterStm(&__stmt_1);
	bbt_cam=(struct openb3d_openb3dcore_TCamera_obj*)openb3d_openb3dcore_TCamera_CreateObject_TTCamera_pb(bbt_inst);
	struct BBDebugStm __stmt_2 = {0x96356c750530f2c5, 249, 0};
	bbOnDebugEnterStm(&__stmt_2);
	openb3d_openb3dcore_TGlobal3D_camera_in_use=(struct openb3d_openb3dcore_TCamera_obj*)bbt_cam;
	struct BBDebugStm __stmt_3 = {0x96356c750530f2c5, 250, 0};
	bbOnDebugEnterStm(&__stmt_3);
	bbOnDebugLeaveScope();
	return (struct openb3d_openb3dcore_TCamera_obj*)bbt_cam;
}
BBINT _openb3d_openb3dcore_TCamera_CameraViewport_iiii(struct openb3d_openb3dcore_TCamera_obj* o,BBINT bbt_x,BBINT bbt_y,BBINT bbt_width,BBINT bbt_height){
	((struct openb3d_openb3dcore_TCamera_obj*)bbNullObjectTest((BBObject*)o));
	struct BBDebugScope_5 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"CameraViewport",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TCamera",
				.var_address=&o
			},
			{
				BBDEBUGDECL_LOCAL,
				"x",
				"i",
				.var_address=&bbt_x
			},
			{
				BBDEBUGDECL_LOCAL,
				"y",
				"i",
				.var_address=&bbt_y
			},
			{
				BBDEBUGDECL_LOCAL,
				"width",
				"i",
				.var_address=&bbt_width
			},
			{
				BBDEBUGDECL_LOCAL,
				"height",
				"i",
				.var_address=&bbt_height
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x96356c750530f2c5, 256, 0};
	bbOnDebugEnterStm(&__stmt_0);
	CameraViewport_(openb3d_openb3dcore_TEntity_GetInstance_pb_TTEntity((struct openb3d_openb3dcore_TEntity_obj*)((struct openb3d_openb3dcore_TEntity_obj*)bbObjectDowncast((BBOBJECT)o,(BBClass*)&openb3d_openb3dcore_TEntity))),bbt_x,bbt_y,bbt_width,bbt_height);
	bbOnDebugLeaveScope();
	return 0;
}
BBINT _openb3d_openb3dcore_TCamera_CameraClsColor_fff(struct openb3d_openb3dcore_TCamera_obj* o,BBFLOAT bbt_r,BBFLOAT bbt_g,BBFLOAT bbt_b){
	((struct openb3d_openb3dcore_TCamera_obj*)bbNullObjectTest((BBObject*)o));
	struct BBDebugScope_4 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"CameraClsColor",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TCamera",
				.var_address=&o
			},
			{
				BBDEBUGDECL_LOCAL,
				"r",
				"f",
				.var_address=&bbt_r
			},
			{
				BBDEBUGDECL_LOCAL,
				"g",
				"f",
				.var_address=&bbt_g
			},
			{
				BBDEBUGDECL_LOCAL,
				"b",
				"f",
				.var_address=&bbt_b
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x96356c750530f2c5, 262, 0};
	bbOnDebugEnterStm(&__stmt_0);
	CameraClsColor_(openb3d_openb3dcore_TEntity_GetInstance_pb_TTEntity((struct openb3d_openb3dcore_TEntity_obj*)((struct openb3d_openb3dcore_TEntity_obj*)bbObjectDowncast((BBOBJECT)o,(BBClass*)&openb3d_openb3dcore_TEntity))),bbt_r,bbt_g,bbt_b);
	bbOnDebugLeaveScope();
	return 0;
}
BBINT _openb3d_openb3dcore_TCamera_CameraClsMode_ii(struct openb3d_openb3dcore_TCamera_obj* o,BBINT bbt_cls_depth,BBINT bbt_cls_zbuffer){
	((struct openb3d_openb3dcore_TCamera_obj*)bbNullObjectTest((BBObject*)o));
	struct BBDebugScope_3 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"CameraClsMode",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TCamera",
				.var_address=&o
			},
			{
				BBDEBUGDECL_LOCAL,
				"cls_depth",
				"i",
				.var_address=&bbt_cls_depth
			},
			{
				BBDEBUGDECL_LOCAL,
				"cls_zbuffer",
				"i",
				.var_address=&bbt_cls_zbuffer
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x96356c750530f2c5, 268, 0};
	bbOnDebugEnterStm(&__stmt_0);
	CameraClsMode_(openb3d_openb3dcore_TEntity_GetInstance_pb_TTEntity((struct openb3d_openb3dcore_TEntity_obj*)((struct openb3d_openb3dcore_TEntity_obj*)bbObjectDowncast((BBOBJECT)o,(BBClass*)&openb3d_openb3dcore_TEntity))),bbt_cls_depth,bbt_cls_zbuffer);
	bbOnDebugLeaveScope();
	return 0;
}
BBINT _openb3d_openb3dcore_TCamera_CameraRange_ff(struct openb3d_openb3dcore_TCamera_obj* o,BBFLOAT bbt_nnear,BBFLOAT bbt_nfar){
	((struct openb3d_openb3dcore_TCamera_obj*)bbNullObjectTest((BBObject*)o));
	struct BBDebugScope_3 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"CameraRange",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TCamera",
				.var_address=&o
			},
			{
				BBDEBUGDECL_LOCAL,
				"nnear",
				"f",
				.var_address=&bbt_nnear
			},
			{
				BBDEBUGDECL_LOCAL,
				"nfar",
				"f",
				.var_address=&bbt_nfar
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x96356c750530f2c5, 274, 0};
	bbOnDebugEnterStm(&__stmt_0);
	CameraRange_(openb3d_openb3dcore_TEntity_GetInstance_pb_TTEntity((struct openb3d_openb3dcore_TEntity_obj*)((struct openb3d_openb3dcore_TEntity_obj*)bbObjectDowncast((BBOBJECT)o,(BBClass*)&openb3d_openb3dcore_TEntity))),bbt_nnear,bbt_nfar);
	bbOnDebugLeaveScope();
	return 0;
}
BBINT _openb3d_openb3dcore_TCamera_CameraZoom_f(struct openb3d_openb3dcore_TCamera_obj* o,BBFLOAT bbt_zoom){
	((struct openb3d_openb3dcore_TCamera_obj*)bbNullObjectTest((BBObject*)o));
	struct BBDebugScope_2 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"CameraZoom",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TCamera",
				.var_address=&o
			},
			{
				BBDEBUGDECL_LOCAL,
				"zoom",
				"f",
				.var_address=&bbt_zoom
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x96356c750530f2c5, 280, 0};
	bbOnDebugEnterStm(&__stmt_0);
	CameraZoom_(openb3d_openb3dcore_TEntity_GetInstance_pb_TTEntity((struct openb3d_openb3dcore_TEntity_obj*)((struct openb3d_openb3dcore_TEntity_obj*)bbObjectDowncast((BBOBJECT)o,(BBClass*)&openb3d_openb3dcore_TEntity))),bbt_zoom);
	bbOnDebugLeaveScope();
	return 0;
}
BBINT _openb3d_openb3dcore_TCamera_CameraProjMode_i(struct openb3d_openb3dcore_TCamera_obj* o,BBINT bbt_Mode){
	((struct openb3d_openb3dcore_TCamera_obj*)bbNullObjectTest((BBObject*)o));
	struct BBDebugScope_2 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"CameraProjMode",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TCamera",
				.var_address=&o
			},
			{
				BBDEBUGDECL_LOCAL,
				"Mode",
				"i",
				.var_address=&bbt_Mode
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x96356c750530f2c5, 286, 0};
	bbOnDebugEnterStm(&__stmt_0);
	CameraProjMode_(openb3d_openb3dcore_TEntity_GetInstance_pb_TTEntity((struct openb3d_openb3dcore_TEntity_obj*)((struct openb3d_openb3dcore_TEntity_obj*)bbObjectDowncast((BBOBJECT)o,(BBClass*)&openb3d_openb3dcore_TEntity))),bbt_Mode);
	bbOnDebugLeaveScope();
	return 0;
}
struct openb3d_openb3dcore_TEntity_obj* _openb3d_openb3dcore_TCamera_CameraPick_ff(struct openb3d_openb3dcore_TCamera_obj* o,BBFLOAT bbt_x,BBFLOAT bbt_y){
	((struct openb3d_openb3dcore_TCamera_obj*)bbNullObjectTest((BBObject*)o));
	BBBYTE* bbt_inst=0;
	struct BBDebugScope_4 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"CameraPick",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TCamera",
				.var_address=&o
			},
			{
				BBDEBUGDECL_LOCAL,
				"x",
				"f",
				.var_address=&bbt_x
			},
			{
				BBDEBUGDECL_LOCAL,
				"y",
				"f",
				.var_address=&bbt_y
			},
			{
				BBDEBUGDECL_LOCAL,
				"inst",
				"*b",
				.var_address=&bbt_inst
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x96356c750530f2c5, 292, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbt_inst=CameraPick_(openb3d_openb3dcore_TEntity_GetInstance_pb_TTEntity((struct openb3d_openb3dcore_TEntity_obj*)((struct openb3d_openb3dcore_TEntity_obj*)bbObjectDowncast((BBOBJECT)o,(BBClass*)&openb3d_openb3dcore_TEntity))),bbt_x,bbt_y);
	struct BBDebugStm __stmt_1 = {0x96356c750530f2c5, 293, 0};
	bbOnDebugEnterStm(&__stmt_1);
	bbOnDebugLeaveScope();
	return (struct openb3d_openb3dcore_TEntity_obj*)openb3d_openb3dcore_TEntity_GetObject_TTEntity_pb(bbt_inst);
}
BBINT _openb3d_openb3dcore_TCamera_CameraFogMode_i(struct openb3d_openb3dcore_TCamera_obj* o,BBINT bbt_Mode){
	((struct openb3d_openb3dcore_TCamera_obj*)bbNullObjectTest((BBObject*)o));
	struct BBDebugScope_2 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"CameraFogMode",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TCamera",
				.var_address=&o
			},
			{
				BBDEBUGDECL_LOCAL,
				"Mode",
				"i",
				.var_address=&bbt_Mode
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x96356c750530f2c5, 299, 0};
	bbOnDebugEnterStm(&__stmt_0);
	CameraFogMode_(openb3d_openb3dcore_TEntity_GetInstance_pb_TTEntity((struct openb3d_openb3dcore_TEntity_obj*)((struct openb3d_openb3dcore_TEntity_obj*)bbObjectDowncast((BBOBJECT)o,(BBClass*)&openb3d_openb3dcore_TEntity))),bbt_Mode);
	bbOnDebugLeaveScope();
	return 0;
}
BBINT _openb3d_openb3dcore_TCamera_CameraFogColor_fff(struct openb3d_openb3dcore_TCamera_obj* o,BBFLOAT bbt_r,BBFLOAT bbt_g,BBFLOAT bbt_b){
	((struct openb3d_openb3dcore_TCamera_obj*)bbNullObjectTest((BBObject*)o));
	struct BBDebugScope_4 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"CameraFogColor",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TCamera",
				.var_address=&o
			},
			{
				BBDEBUGDECL_LOCAL,
				"r",
				"f",
				.var_address=&bbt_r
			},
			{
				BBDEBUGDECL_LOCAL,
				"g",
				"f",
				.var_address=&bbt_g
			},
			{
				BBDEBUGDECL_LOCAL,
				"b",
				"f",
				.var_address=&bbt_b
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x96356c750530f2c5, 305, 0};
	bbOnDebugEnterStm(&__stmt_0);
	CameraFogColor_(openb3d_openb3dcore_TEntity_GetInstance_pb_TTEntity((struct openb3d_openb3dcore_TEntity_obj*)((struct openb3d_openb3dcore_TEntity_obj*)bbObjectDowncast((BBOBJECT)o,(BBClass*)&openb3d_openb3dcore_TEntity))),bbt_r,bbt_g,bbt_b);
	bbOnDebugLeaveScope();
	return 0;
}
BBINT _openb3d_openb3dcore_TCamera_CameraFogRange_ff(struct openb3d_openb3dcore_TCamera_obj* o,BBFLOAT bbt_nnear,BBFLOAT bbt_nfar){
	((struct openb3d_openb3dcore_TCamera_obj*)bbNullObjectTest((BBObject*)o));
	struct BBDebugScope_3 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"CameraFogRange",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TCamera",
				.var_address=&o
			},
			{
				BBDEBUGDECL_LOCAL,
				"nnear",
				"f",
				.var_address=&bbt_nnear
			},
			{
				BBDEBUGDECL_LOCAL,
				"nfar",
				"f",
				.var_address=&bbt_nfar
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x96356c750530f2c5, 311, 0};
	bbOnDebugEnterStm(&__stmt_0);
	CameraFogRange_(openb3d_openb3dcore_TEntity_GetInstance_pb_TTEntity((struct openb3d_openb3dcore_TEntity_obj*)((struct openb3d_openb3dcore_TEntity_obj*)bbObjectDowncast((BBOBJECT)o,(BBClass*)&openb3d_openb3dcore_TEntity))),bbt_nnear,bbt_nfar);
	bbOnDebugLeaveScope();
	return 0;
}
BBINT _openb3d_openb3dcore_TCamera_CameraProject_fff(struct openb3d_openb3dcore_TCamera_obj* o,BBFLOAT bbt_x,BBFLOAT bbt_y,BBFLOAT bbt_z){
	((struct openb3d_openb3dcore_TCamera_obj*)bbNullObjectTest((BBObject*)o));
	struct BBDebugScope_4 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"CameraProject",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TCamera",
				.var_address=&o
			},
			{
				BBDEBUGDECL_LOCAL,
				"x",
				"f",
				.var_address=&bbt_x
			},
			{
				BBDEBUGDECL_LOCAL,
				"y",
				"f",
				.var_address=&bbt_y
			},
			{
				BBDEBUGDECL_LOCAL,
				"z",
				"f",
				.var_address=&bbt_z
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x96356c750530f2c5, 317, 0};
	bbOnDebugEnterStm(&__stmt_0);
	CameraProject_(openb3d_openb3dcore_TEntity_GetInstance_pb_TTEntity((struct openb3d_openb3dcore_TEntity_obj*)((struct openb3d_openb3dcore_TEntity_obj*)bbObjectDowncast((BBOBJECT)o,(BBClass*)&openb3d_openb3dcore_TEntity))),bbt_x,bbt_y,bbt_z);
	bbOnDebugLeaveScope();
	return 0;
}
BBFLOAT openb3d_openb3dcore_TCamera_ProjectedX_f(){
	struct BBDebugScope __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"ProjectedX",
		{
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x96356c750530f2c5, 323, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbOnDebugLeaveScope();
	return ProjectedX_();
}
BBFLOAT openb3d_openb3dcore_TCamera_ProjectedY_f(){
	struct BBDebugScope __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"ProjectedY",
		{
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x96356c750530f2c5, 329, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbOnDebugLeaveScope();
	return ProjectedY_();
}
BBFLOAT openb3d_openb3dcore_TCamera_ProjectedZ_f(){
	struct BBDebugScope __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"ProjectedZ",
		{
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x96356c750530f2c5, 335, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbOnDebugLeaveScope();
	return ProjectedZ_();
}
BBINT _openb3d_openb3dcore_TCamera_EntityInView_TTEntity(struct openb3d_openb3dcore_TCamera_obj* o,struct openb3d_openb3dcore_TEntity_obj* bbt_ent){
	((struct openb3d_openb3dcore_TCamera_obj*)bbNullObjectTest((BBObject*)o));
	struct BBDebugScope_2 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"EntityInView",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TCamera",
				.var_address=&o
			},
			{
				BBDEBUGDECL_LOCAL,
				"ent",
				":TEntity",
				.var_address=&bbt_ent
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x96356c750530f2c5, 341, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbOnDebugLeaveScope();
	return EntityInView_(openb3d_openb3dcore_TEntity_GetInstance_pb_TTEntity((struct openb3d_openb3dcore_TEntity_obj*)bbt_ent),openb3d_openb3dcore_TEntity_GetInstance_pb_TTEntity((struct openb3d_openb3dcore_TEntity_obj*)((struct openb3d_openb3dcore_TEntity_obj*)bbObjectDowncast((BBOBJECT)o,(BBClass*)&openb3d_openb3dcore_TEntity))));
}
struct openb3d_openb3dcore_TCamera_obj* _openb3d_openb3dcore_TCamera_CopyEntity_TTEntity(struct openb3d_openb3dcore_TCamera_obj* o,struct openb3d_openb3dcore_TEntity_obj* bbt_parent){
	((struct openb3d_openb3dcore_TCamera_obj*)bbNullObjectTest((BBObject*)o));
	BBBYTE* bbt_inst=0;
	struct openb3d_openb3dcore_TCamera_obj* bbt_cam=(struct openb3d_openb3dcore_TCamera_obj*)((struct openb3d_openb3dcore_TCamera_obj*)&bbNullObject);
	struct BBDebugScope_4 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"CopyEntity",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TCamera",
				.var_address=&o
			},
			{
				BBDEBUGDECL_LOCAL,
				"parent",
				":TEntity",
				.var_address=&bbt_parent
			},
			{
				BBDEBUGDECL_LOCAL,
				"inst",
				"*b",
				.var_address=&bbt_inst
			},
			{
				BBDEBUGDECL_LOCAL,
				"cam",
				":TCamera",
				.var_address=&bbt_cam
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x96356c750530f2c5, 349, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbt_inst=CopyEntity_(openb3d_openb3dcore_TEntity_GetInstance_pb_TTEntity((struct openb3d_openb3dcore_TEntity_obj*)((struct openb3d_openb3dcore_TEntity_obj*)bbObjectDowncast((BBOBJECT)o,(BBClass*)&openb3d_openb3dcore_TEntity))),openb3d_openb3dcore_TEntity_GetInstance_pb_TTEntity((struct openb3d_openb3dcore_TEntity_obj*)bbt_parent));
	struct BBDebugStm __stmt_1 = {0x96356c750530f2c5, 350, 0};
	bbOnDebugEnterStm(&__stmt_1);
	bbt_cam=(struct openb3d_openb3dcore_TCamera_obj*)o->clas->f_CreateObject_TTCamera_pb(bbt_inst);
	struct BBDebugStm __stmt_2 = {0x96356c750530f2c5, 351, 0};
	bbOnDebugEnterStm(&__stmt_2);
	if(((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tentity_pick_mode [0]!=0){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x96356c750530f2c5, 351, 0};
		bbOnDebugEnterStm(&__stmt_0);
		openb3d_openb3dcore_TPick_AddList__i_TTList((struct brl_linkedlist_TList_obj*)openb3d_openb3dcore_TPick_ent_list);
		bbOnDebugLeaveScope();
	}
	struct BBDebugStm __stmt_3 = {0x96356c750530f2c5, 352, 0};
	bbOnDebugEnterStm(&__stmt_3);
	bbOnDebugLeaveScope();
	return (struct openb3d_openb3dcore_TCamera_obj*)bbt_cam;
}
BBINT _openb3d_openb3dcore_TCamera_Update(struct openb3d_openb3dcore_TCamera_obj* o){
	((struct openb3d_openb3dcore_TCamera_obj*)bbNullObjectTest((BBObject*)o));
	struct BBDebugScope_1 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"Update",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TCamera",
				.var_address=&o
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x96356c750530f2c5, 359, 0};
	bbOnDebugEnterStm(&__stmt_0);
	CameraUpdate_(openb3d_openb3dcore_TEntity_GetInstance_pb_TTEntity((struct openb3d_openb3dcore_TEntity_obj*)((struct openb3d_openb3dcore_TEntity_obj*)bbObjectDowncast((BBOBJECT)o,(BBClass*)&openb3d_openb3dcore_TEntity))));
	bbOnDebugLeaveScope();
	return 0;
}
BBINT _openb3d_openb3dcore_TCamera_Render(struct openb3d_openb3dcore_TCamera_obj* o){
	((struct openb3d_openb3dcore_TCamera_obj*)bbNullObjectTest((BBObject*)o));
	struct BBDebugScope_1 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"Render",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TCamera",
				.var_address=&o
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x96356c750530f2c5, 366, 0};
	bbOnDebugEnterStm(&__stmt_0);
	CameraRender_(openb3d_openb3dcore_TEntity_GetInstance_pb_TTEntity((struct openb3d_openb3dcore_TEntity_obj*)((struct openb3d_openb3dcore_TEntity_obj*)bbObjectDowncast((BBOBJECT)o,(BBClass*)&openb3d_openb3dcore_TEntity))));
	bbOnDebugLeaveScope();
	return 0;
}
BBINT _openb3d_openb3dcore_TCamera_UpdateSprite_TTSprite(struct openb3d_openb3dcore_TCamera_obj* o,struct openb3d_openb3dcore_TSprite_obj* bbt_sprite){
	((struct openb3d_openb3dcore_TCamera_obj*)bbNullObjectTest((BBObject*)o));
	struct BBDebugScope_2 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"UpdateSprite",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TCamera",
				.var_address=&o
			},
			{
				BBDEBUGDECL_LOCAL,
				"sprite",
				":TSprite",
				.var_address=&bbt_sprite
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x96356c750530f2c5, 373, 0};
	bbOnDebugEnterStm(&__stmt_0);
	UpdateSprite_(openb3d_openb3dcore_TEntity_GetInstance_pb_TTEntity((struct openb3d_openb3dcore_TEntity_obj*)((struct openb3d_openb3dcore_TEntity_obj*)bbObjectDowncast((BBOBJECT)o,(BBClass*)&openb3d_openb3dcore_TEntity))),openb3d_openb3dcore_TEntity_GetInstance_pb_TTEntity((struct openb3d_openb3dcore_TEntity_obj*)((struct openb3d_openb3dcore_TEntity_obj*)bbObjectDowncast((BBOBJECT)bbt_sprite,(BBClass*)&openb3d_openb3dcore_TEntity))));
	bbOnDebugLeaveScope();
	return 0;
}
BBINT _openb3d_openb3dcore_TCamera_AddTransformedSpriteToSurface_TTSpriteTTSurface(struct openb3d_openb3dcore_TCamera_obj* o,struct openb3d_openb3dcore_TSprite_obj* bbt_sprite,struct openb3d_openb3dcore_TSurface_obj* bbt_surf){
	((struct openb3d_openb3dcore_TCamera_obj*)bbNullObjectTest((BBObject*)o));
	struct BBDebugScope_3 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"AddTransformedSpriteToSurface",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TCamera",
				.var_address=&o
			},
			{
				BBDEBUGDECL_LOCAL,
				"sprite",
				":TSprite",
				.var_address=&bbt_sprite
			},
			{
				BBDEBUGDECL_LOCAL,
				"surf",
				":TSurface",
				.var_address=&bbt_surf
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x96356c750530f2c5, 380, 0};
	bbOnDebugEnterStm(&__stmt_0);
	AddTransformedSpriteToSurface_(openb3d_openb3dcore_TEntity_GetInstance_pb_TTEntity((struct openb3d_openb3dcore_TEntity_obj*)((struct openb3d_openb3dcore_TEntity_obj*)bbObjectDowncast((BBOBJECT)o,(BBClass*)&openb3d_openb3dcore_TEntity))),openb3d_openb3dcore_TEntity_GetInstance_pb_TTEntity((struct openb3d_openb3dcore_TEntity_obj*)((struct openb3d_openb3dcore_TEntity_obj*)bbObjectDowncast((BBOBJECT)bbt_sprite,(BBClass*)&openb3d_openb3dcore_TEntity))),openb3d_openb3dcore_TSurface_GetInstance_pb_TTSurface((struct openb3d_openb3dcore_TSurface_obj*)bbt_surf));
	bbOnDebugLeaveScope();
	return 0;
}
BBINT _openb3d_openb3dcore_TCamera_RenderListAdd_TTMesh(struct openb3d_openb3dcore_TCamera_obj* o,struct openb3d_openb3dcore_TMesh_obj* bbt_mesh){
	((struct openb3d_openb3dcore_TCamera_obj*)bbNullObjectTest((BBObject*)o));
	struct BBDebugScope_2 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"RenderListAdd",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TCamera",
				.var_address=&o
			},
			{
				BBDEBUGDECL_LOCAL,
				"mesh",
				":TMesh",
				.var_address=&bbt_mesh
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x96356c750530f2c5, 388, 0};
	bbOnDebugEnterStm(&__stmt_0);
	RenderListAdd_(openb3d_openb3dcore_TEntity_GetInstance_pb_TTEntity((struct openb3d_openb3dcore_TEntity_obj*)((struct openb3d_openb3dcore_TEntity_obj*)bbObjectDowncast((BBOBJECT)o,(BBClass*)&openb3d_openb3dcore_TEntity))),openb3d_openb3dcore_TEntity_GetInstance_pb_TTEntity((struct openb3d_openb3dcore_TEntity_obj*)((struct openb3d_openb3dcore_TEntity_obj*)bbObjectDowncast((BBOBJECT)bbt_mesh,(BBClass*)&openb3d_openb3dcore_TEntity))));
	bbOnDebugLeaveScope();
	return 0;
}
BBINT _openb3d_openb3dcore_TCamera_ExtractFrustum(struct openb3d_openb3dcore_TCamera_obj* o){
	((struct openb3d_openb3dcore_TCamera_obj*)bbNullObjectTest((BBObject*)o));
	struct BBDebugScope_1 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"ExtractFrustum",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TCamera",
				.var_address=&o
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x96356c750530f2c5, 395, 0};
	bbOnDebugEnterStm(&__stmt_0);
	ExtractFrustum_(openb3d_openb3dcore_TEntity_GetInstance_pb_TTEntity((struct openb3d_openb3dcore_TEntity_obj*)((struct openb3d_openb3dcore_TEntity_obj*)bbObjectDowncast((BBOBJECT)o,(BBClass*)&openb3d_openb3dcore_TEntity))));
	bbOnDebugLeaveScope();
	return 0;
}
BBFLOAT _openb3d_openb3dcore_TCamera_EntityInFrustum_TTEntity(struct openb3d_openb3dcore_TCamera_obj* o,struct openb3d_openb3dcore_TEntity_obj* bbt_ent){
	((struct openb3d_openb3dcore_TCamera_obj*)bbNullObjectTest((BBObject*)o));
	struct BBDebugScope_2 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"EntityInFrustum",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TCamera",
				.var_address=&o
			},
			{
				BBDEBUGDECL_LOCAL,
				"ent",
				":TEntity",
				.var_address=&bbt_ent
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x96356c750530f2c5, 402, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbOnDebugLeaveScope();
	return EntityInFrustum_(openb3d_openb3dcore_TEntity_GetInstance_pb_TTEntity((struct openb3d_openb3dcore_TEntity_obj*)((struct openb3d_openb3dcore_TEntity_obj*)bbObjectDowncast((BBOBJECT)o,(BBClass*)&openb3d_openb3dcore_TEntity))),openb3d_openb3dcore_TEntity_GetInstance_pb_TTEntity((struct openb3d_openb3dcore_TEntity_obj*)bbt_ent));
}
BBINT _openb3d_openb3dcore_TCamera_accPerspective_fffffffff(struct openb3d_openb3dcore_TCamera_obj* o,BBFLOAT bbt_fovy,BBFLOAT bbt_aspect,BBFLOAT bbt_zNear,BBFLOAT bbt_zFar,BBFLOAT bbt_pixdx,BBFLOAT bbt_pixdy,BBFLOAT bbt_eyedx,BBFLOAT bbt_eyedy,BBFLOAT bbt_focus){
	((struct openb3d_openb3dcore_TCamera_obj*)bbNullObjectTest((BBObject*)o));
	struct BBDebugScope_10 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"accPerspective",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TCamera",
				.var_address=&o
			},
			{
				BBDEBUGDECL_LOCAL,
				"fovy",
				"f",
				.var_address=&bbt_fovy
			},
			{
				BBDEBUGDECL_LOCAL,
				"aspect",
				"f",
				.var_address=&bbt_aspect
			},
			{
				BBDEBUGDECL_LOCAL,
				"zNear",
				"f",
				.var_address=&bbt_zNear
			},
			{
				BBDEBUGDECL_LOCAL,
				"zFar",
				"f",
				.var_address=&bbt_zFar
			},
			{
				BBDEBUGDECL_LOCAL,
				"pixdx",
				"f",
				.var_address=&bbt_pixdx
			},
			{
				BBDEBUGDECL_LOCAL,
				"pixdy",
				"f",
				.var_address=&bbt_pixdy
			},
			{
				BBDEBUGDECL_LOCAL,
				"eyedx",
				"f",
				.var_address=&bbt_eyedx
			},
			{
				BBDEBUGDECL_LOCAL,
				"eyedy",
				"f",
				.var_address=&bbt_eyedy
			},
			{
				BBDEBUGDECL_LOCAL,
				"focus",
				"f",
				.var_address=&bbt_focus
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x96356c750530f2c5, 409, 0};
	bbOnDebugEnterStm(&__stmt_0);
	accPerspective_(openb3d_openb3dcore_TEntity_GetInstance_pb_TTEntity((struct openb3d_openb3dcore_TEntity_obj*)((struct openb3d_openb3dcore_TEntity_obj*)bbObjectDowncast((BBOBJECT)o,(BBClass*)&openb3d_openb3dcore_TEntity))),bbt_fovy,bbt_aspect,bbt_zNear,bbt_zFar,bbt_pixdx,bbt_pixdy,bbt_eyedx,bbt_eyedy,bbt_focus);
	bbOnDebugLeaveScope();
	return 0;
}
BBINT _openb3d_openb3dcore_TCamera_accFrustum_fffffffffff(struct openb3d_openb3dcore_TCamera_obj* o,BBFLOAT bbt_left_,BBFLOAT bbt_right_,BBFLOAT bbt_bottom,BBFLOAT bbt_top,BBFLOAT bbt_zNear,BBFLOAT bbt_zFar,BBFLOAT bbt_pixdx,BBFLOAT bbt_pixdy,BBFLOAT bbt_eyedx,BBFLOAT bbt_eyedy,BBFLOAT bbt_focus){
	((struct openb3d_openb3dcore_TCamera_obj*)bbNullObjectTest((BBObject*)o));
	struct BBDebugScope_12 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"accFrustum",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TCamera",
				.var_address=&o
			},
			{
				BBDEBUGDECL_LOCAL,
				"left_",
				"f",
				.var_address=&bbt_left_
			},
			{
				BBDEBUGDECL_LOCAL,
				"right_",
				"f",
				.var_address=&bbt_right_
			},
			{
				BBDEBUGDECL_LOCAL,
				"bottom",
				"f",
				.var_address=&bbt_bottom
			},
			{
				BBDEBUGDECL_LOCAL,
				"top",
				"f",
				.var_address=&bbt_top
			},
			{
				BBDEBUGDECL_LOCAL,
				"zNear",
				"f",
				.var_address=&bbt_zNear
			},
			{
				BBDEBUGDECL_LOCAL,
				"zFar",
				"f",
				.var_address=&bbt_zFar
			},
			{
				BBDEBUGDECL_LOCAL,
				"pixdx",
				"f",
				.var_address=&bbt_pixdx
			},
			{
				BBDEBUGDECL_LOCAL,
				"pixdy",
				"f",
				.var_address=&bbt_pixdy
			},
			{
				BBDEBUGDECL_LOCAL,
				"eyedx",
				"f",
				.var_address=&bbt_eyedx
			},
			{
				BBDEBUGDECL_LOCAL,
				"eyedy",
				"f",
				.var_address=&bbt_eyedy
			},
			{
				BBDEBUGDECL_LOCAL,
				"focus",
				"f",
				.var_address=&bbt_focus
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x96356c750530f2c5, 416, 0};
	bbOnDebugEnterStm(&__stmt_0);
	accFrustum_(openb3d_openb3dcore_TEntity_GetInstance_pb_TTEntity((struct openb3d_openb3dcore_TEntity_obj*)((struct openb3d_openb3dcore_TEntity_obj*)bbObjectDowncast((BBOBJECT)o,(BBClass*)&openb3d_openb3dcore_TEntity))),bbt_left_,bbt_right_,bbt_bottom,bbt_top,bbt_zNear,bbt_zFar,bbt_pixdx,bbt_pixdy,bbt_eyedx,bbt_eyedy,bbt_focus);
	bbOnDebugLeaveScope();
	return 0;
}
BBINT _openb3d_openb3dcore_TCamera_UpdateProjMatrix(struct openb3d_openb3dcore_TCamera_obj* o){
	((struct openb3d_openb3dcore_TCamera_obj*)bbNullObjectTest((BBObject*)o));
	struct BBDebugScope_1 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"UpdateProjMatrix",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TCamera",
				.var_address=&o
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x96356c750530f2c5, 423, 0};
	bbOnDebugEnterStm(&__stmt_0);
	UpdateProjMatrix_(openb3d_openb3dcore_TEntity_GetInstance_pb_TTEntity((struct openb3d_openb3dcore_TEntity_obj*)((struct openb3d_openb3dcore_TEntity_obj*)bbObjectDowncast((BBOBJECT)o,(BBClass*)&openb3d_openb3dcore_TEntity))));
	bbOnDebugLeaveScope();
	return 0;
}
BBINT openb3d_openb3dcore_TCamera_UpdateEntityRender_i_TTEntityTTCamera(struct openb3d_openb3dcore_TEntity_obj* bbt_ent,struct openb3d_openb3dcore_TCamera_obj* bbt_cam){
	struct BBDebugScope_2 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"UpdateEntityRender",
		{
			{
				BBDEBUGDECL_LOCAL,
				"ent",
				":TEntity",
				.var_address=&bbt_ent
			},
			{
				BBDEBUGDECL_LOCAL,
				"cam",
				":TCamera",
				.var_address=&bbt_cam
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x96356c750530f2c5, 430, 0};
	bbOnDebugEnterStm(&__stmt_0);
	CameraUpdateEntityRender_(openb3d_openb3dcore_TEntity_GetInstance_pb_TTEntity((struct openb3d_openb3dcore_TEntity_obj*)bbt_ent),openb3d_openb3dcore_TEntity_GetInstance_pb_TTEntity((struct openb3d_openb3dcore_TEntity_obj*)((struct openb3d_openb3dcore_TEntity_obj*)bbObjectDowncast((BBOBJECT)bbt_cam,(BBClass*)&openb3d_openb3dcore_TEntity))));
	bbOnDebugLeaveScope();
	return 0;
}
struct brl_linkedlist_TList_obj* openb3d_openb3dcore_TCamera_cam_list;
BBINT openb3d_openb3dcore_TCamera_cam_list_id;
BBFLOAT* openb3d_openb3dcore_TCamera_projected_x;
BBFLOAT* openb3d_openb3dcore_TCamera_projected_y;
BBFLOAT* openb3d_openb3dcore_TCamera_projected_z;
struct BBDebugScope_68 openb3d_openb3dcore_TCamera_scope ={
	BBDEBUGSCOPE_USERTYPE,
	"TCamera",
	{
		{
			BBDEBUGDECL_FIELD,
			"vx",
			"*i",
			.field_offset=offsetof(struct openb3d_openb3dcore_TCamera_obj,_openb3d_openb3dcore_tcamera_vx)
		},
		{
			BBDEBUGDECL_FIELD,
			"vy",
			"*i",
			.field_offset=offsetof(struct openb3d_openb3dcore_TCamera_obj,_openb3d_openb3dcore_tcamera_vy)
		},
		{
			BBDEBUGDECL_FIELD,
			"vwidth",
			"*i",
			.field_offset=offsetof(struct openb3d_openb3dcore_TCamera_obj,_openb3d_openb3dcore_tcamera_vwidth)
		},
		{
			BBDEBUGDECL_FIELD,
			"vheight",
			"*i",
			.field_offset=offsetof(struct openb3d_openb3dcore_TCamera_obj,_openb3d_openb3dcore_tcamera_vheight)
		},
		{
			BBDEBUGDECL_FIELD,
			"cls_r",
			"*f",
			.field_offset=offsetof(struct openb3d_openb3dcore_TCamera_obj,_openb3d_openb3dcore_tcamera_cls_r)
		},
		{
			BBDEBUGDECL_FIELD,
			"cls_g",
			"*f",
			.field_offset=offsetof(struct openb3d_openb3dcore_TCamera_obj,_openb3d_openb3dcore_tcamera_cls_g)
		},
		{
			BBDEBUGDECL_FIELD,
			"cls_b",
			"*f",
			.field_offset=offsetof(struct openb3d_openb3dcore_TCamera_obj,_openb3d_openb3dcore_tcamera_cls_b)
		},
		{
			BBDEBUGDECL_FIELD,
			"cls_color",
			"*b",
			.field_offset=offsetof(struct openb3d_openb3dcore_TCamera_obj,_openb3d_openb3dcore_tcamera_cls_color)
		},
		{
			BBDEBUGDECL_FIELD,
			"cls_zbuffer",
			"*b",
			.field_offset=offsetof(struct openb3d_openb3dcore_TCamera_obj,_openb3d_openb3dcore_tcamera_cls_zbuffer)
		},
		{
			BBDEBUGDECL_FIELD,
			"range_near",
			"*f",
			.field_offset=offsetof(struct openb3d_openb3dcore_TCamera_obj,_openb3d_openb3dcore_tcamera_range_near)
		},
		{
			BBDEBUGDECL_FIELD,
			"range_far",
			"*f",
			.field_offset=offsetof(struct openb3d_openb3dcore_TCamera_obj,_openb3d_openb3dcore_tcamera_range_far)
		},
		{
			BBDEBUGDECL_FIELD,
			"zoom",
			"*f",
			.field_offset=offsetof(struct openb3d_openb3dcore_TCamera_obj,_openb3d_openb3dcore_tcamera_zoom)
		},
		{
			BBDEBUGDECL_FIELD,
			"proj_mode",
			"*i",
			.field_offset=offsetof(struct openb3d_openb3dcore_TCamera_obj,_openb3d_openb3dcore_tcamera_proj_mode)
		},
		{
			BBDEBUGDECL_FIELD,
			"fog_mode",
			"*i",
			.field_offset=offsetof(struct openb3d_openb3dcore_TCamera_obj,_openb3d_openb3dcore_tcamera_fog_mode)
		},
		{
			BBDEBUGDECL_FIELD,
			"fog_r",
			"*f",
			.field_offset=offsetof(struct openb3d_openb3dcore_TCamera_obj,_openb3d_openb3dcore_tcamera_fog_r)
		},
		{
			BBDEBUGDECL_FIELD,
			"fog_g",
			"*f",
			.field_offset=offsetof(struct openb3d_openb3dcore_TCamera_obj,_openb3d_openb3dcore_tcamera_fog_g)
		},
		{
			BBDEBUGDECL_FIELD,
			"fog_b",
			"*f",
			.field_offset=offsetof(struct openb3d_openb3dcore_TCamera_obj,_openb3d_openb3dcore_tcamera_fog_b)
		},
		{
			BBDEBUGDECL_FIELD,
			"fog_range_near",
			"*f",
			.field_offset=offsetof(struct openb3d_openb3dcore_TCamera_obj,_openb3d_openb3dcore_tcamera_fog_range_near)
		},
		{
			BBDEBUGDECL_FIELD,
			"fog_range_far",
			"*f",
			.field_offset=offsetof(struct openb3d_openb3dcore_TCamera_obj,_openb3d_openb3dcore_tcamera_fog_range_far)
		},
		{
			BBDEBUGDECL_FIELD,
			"project_enabled",
			"*i",
			.field_offset=offsetof(struct openb3d_openb3dcore_TCamera_obj,_openb3d_openb3dcore_tcamera_project_enabled)
		},
		{
			BBDEBUGDECL_FIELD,
			"mod_mat",
			"*f",
			.field_offset=offsetof(struct openb3d_openb3dcore_TCamera_obj,_openb3d_openb3dcore_tcamera_mod_mat)
		},
		{
			BBDEBUGDECL_FIELD,
			"proj_mat",
			"*f",
			.field_offset=offsetof(struct openb3d_openb3dcore_TCamera_obj,_openb3d_openb3dcore_tcamera_proj_mat)
		},
		{
			BBDEBUGDECL_FIELD,
			"Viewport",
			"*i",
			.field_offset=offsetof(struct openb3d_openb3dcore_TCamera_obj,_openb3d_openb3dcore_tcamera_viewport)
		},
		{
			BBDEBUGDECL_FIELD,
			"frustum",
			"*f",
			.field_offset=offsetof(struct openb3d_openb3dcore_TCamera_obj,_openb3d_openb3dcore_tcamera_frustum)
		},
		{
			BBDEBUGDECL_GLOBAL,
			"cam_list",
			":TList",
			.var_address=(void*)&openb3d_openb3dcore_TCamera_cam_list
		},
		{
			BBDEBUGDECL_GLOBAL,
			"projected_x",
			"*f",
			.var_address=(void*)&openb3d_openb3dcore_TCamera_projected_x
		},
		{
			BBDEBUGDECL_GLOBAL,
			"projected_y",
			"*f",
			.var_address=(void*)&openb3d_openb3dcore_TCamera_projected_y
		},
		{
			BBDEBUGDECL_GLOBAL,
			"projected_z",
			"*f",
			.var_address=(void*)&openb3d_openb3dcore_TCamera_projected_z
		},
		{
			BBDEBUGDECL_GLOBAL,
			"cam_list_id",
			"i",
			.var_address=(void*)&openb3d_openb3dcore_TCamera_cam_list_id
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"New",
			"()i",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_TCamera_New
		},
		{
			BBDEBUGDECL_TYPEFUNCTION,
			"CreateObject",
			"(*b):TCamera",
			.func_ptr=(BBFuncPtr)&openb3d_openb3dcore_TCamera_CreateObject_TTCamera_pb
		},
		{
			BBDEBUGDECL_TYPEFUNCTION,
			"InitGlobals",
			"()i",
			.func_ptr=(BBFuncPtr)&openb3d_openb3dcore_TCamera_InitGlobals_i
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"InitFields",
			"()i",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_TCamera_InitFields
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"DebugFields",
			"(i,i)i",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_TCamera_DebugFields_ii
		},
		{
			BBDEBUGDECL_TYPEFUNCTION,
			"AddList_",
			"(:TList)i",
			.func_ptr=(BBFuncPtr)&openb3d_openb3dcore_TCamera_AddList__i_TTList
		},
		{
			BBDEBUGDECL_TYPEFUNCTION,
			"CopyList_",
			"(:TList)i",
			.func_ptr=(BBFuncPtr)&openb3d_openb3dcore_TCamera_CopyList__i_TTList
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"CameraListAdd",
			"(:TList)i",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_TCamera_CameraListAdd_TTList
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"CameraListRemove",
			"(:TList)i",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_TCamera_CameraListRemove_TTList
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"UpdateFog",
			"()i",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_TCamera_UpdateFog
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"FreeEntity",
			"()i",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_TCamera_FreeEntity
		},
		{
			BBDEBUGDECL_TYPEFUNCTION,
			"CreateCamera",
			"(:TEntity):TCamera",
			.func_ptr=(BBFuncPtr)&openb3d_openb3dcore_TCamera_CreateCamera_TTCamera_TTEntity
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"CameraViewport",
			"(i,i,i,i)i",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_TCamera_CameraViewport_iiii
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"CameraClsColor",
			"(f,f,f)i",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_TCamera_CameraClsColor_fff
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"CameraClsMode",
			"(i,i)i",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_TCamera_CameraClsMode_ii
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"CameraRange",
			"(f,f)i",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_TCamera_CameraRange_ff
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"CameraZoom",
			"(f)i",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_TCamera_CameraZoom_f
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"CameraProjMode",
			"(i)i",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_TCamera_CameraProjMode_i
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"CameraPick",
			"(f,f):TEntity",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_TCamera_CameraPick_ff
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"CameraFogMode",
			"(i)i",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_TCamera_CameraFogMode_i
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"CameraFogColor",
			"(f,f,f)i",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_TCamera_CameraFogColor_fff
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"CameraFogRange",
			"(f,f)i",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_TCamera_CameraFogRange_ff
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"CameraProject",
			"(f,f,f)i",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_TCamera_CameraProject_fff
		},
		{
			BBDEBUGDECL_TYPEFUNCTION,
			"ProjectedX",
			"()f",
			.func_ptr=(BBFuncPtr)&openb3d_openb3dcore_TCamera_ProjectedX_f
		},
		{
			BBDEBUGDECL_TYPEFUNCTION,
			"ProjectedY",
			"()f",
			.func_ptr=(BBFuncPtr)&openb3d_openb3dcore_TCamera_ProjectedY_f
		},
		{
			BBDEBUGDECL_TYPEFUNCTION,
			"ProjectedZ",
			"()f",
			.func_ptr=(BBFuncPtr)&openb3d_openb3dcore_TCamera_ProjectedZ_f
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"EntityInView",
			"(:TEntity)i",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_TCamera_EntityInView_TTEntity
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"CopyEntity",
			"(:TEntity):TCamera",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_TCamera_CopyEntity_TTEntity
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"Update",
			"()i",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_TCamera_Update
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"Render",
			"()i",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_TCamera_Render
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"UpdateSprite",
			"(:TSprite)i",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_TCamera_UpdateSprite_TTSprite
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"AddTransformedSpriteToSurface",
			"(:TSprite,:TSurface)i",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_TCamera_AddTransformedSpriteToSurface_TTSpriteTTSurface
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"RenderListAdd",
			"(:TMesh)i",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_TCamera_RenderListAdd_TTMesh
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"ExtractFrustum",
			"()i",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_TCamera_ExtractFrustum
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"EntityInFrustum",
			"(:TEntity)f",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_TCamera_EntityInFrustum_TTEntity
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"accPerspective",
			"(f,f,f,f,f,f,f,f,f)i",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_TCamera_accPerspective_fffffffff
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"accFrustum",
			"(f,f,f,f,f,f,f,f,f,f,f)i",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_TCamera_accFrustum_fffffffffff
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"UpdateProjMatrix",
			"()i",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_TCamera_UpdateProjMatrix
		},
		{
			BBDEBUGDECL_TYPEFUNCTION,
			"UpdateEntityRender",
			"(:TEntity,:TCamera)i",
			.func_ptr=(BBFuncPtr)&openb3d_openb3dcore_TCamera_UpdateEntityRender_i_TTEntityTTCamera
		},
		{
			BBDEBUGDECL_END
		}
	}
};
struct BBClass_openb3d_openb3dcore_TCamera openb3d_openb3dcore_TCamera={
	&openb3d_openb3dcore_TEntity,
	bbObjectFree,
	(BBDebugScope*)&openb3d_openb3dcore_TCamera_scope,
	sizeof(struct openb3d_openb3dcore_TCamera_obj),
	(void (*)(BBOBJECT))_openb3d_openb3dcore_TCamera_New,
	(void (*)(BBOBJECT))_openb3d_openb3dcore_TCamera_Delete,
	bbObjectToString,
	bbObjectCompare,
	bbObjectSendMessage,
	0,
	0,
	offsetof(struct openb3d_openb3dcore_TCamera_obj,_openb3d_openb3dcore_tcamera_frustum) - offsetof(struct openb3d_openb3dcore_TCamera_obj,_openb3d_openb3dcore_tcamera_vx) + sizeof(BBFLOAT*)
	,0
	,offsetof(struct openb3d_openb3dcore_TCamera_obj,_openb3d_openb3dcore_tcamera_vx)
	,_openb3d_openb3dcore_TCamera_CopyEntity_TTEntity
	,_openb3d_openb3dcore_TCamera_Update
	,openb3d_openb3dcore_TEntity_FreeObject_i_pb
	,openb3d_openb3dcore_TEntity_GetObject_TTEntity_pb
	,openb3d_openb3dcore_TEntity_GetInstance_pb_TTEntity
	,openb3d_openb3dcore_TCamera_InitGlobals_i
	,_openb3d_openb3dcore_TCamera_InitFields
	,_openb3d_openb3dcore_TCamera_DebugFields_ii
	,_openb3d_openb3dcore_TEntity_AddList_TTList
	,openb3d_openb3dcore_TCamera_AddList__i_TTList
	,_openb3d_openb3dcore_TEntity_CopyList_TTList
	,openb3d_openb3dcore_TCamera_CopyList__i_TTList
	,_openb3d_openb3dcore_TEntity_EntityListAdd_TTListTObject
	,_openb3d_openb3dcore_TEntity_EntityListRemove_TTListTObject
	,_openb3d_openb3dcore_TEntity_AddAnimSeq_i
	,_openb3d_openb3dcore_TEntity_SetAnimKey_fiii
	,_openb3d_openb3dcore_TEntity_AlignToVector_fffif
	,_openb3d_openb3dcore_TEntity_GetString_pb
	,_openb3d_openb3dcore_TEntity_SetString_pbS
	,_openb3d_openb3dcore_TCamera_FreeEntity
	,_openb3d_openb3dcore_TEntity_FreeEntityList
	,_openb3d_openb3dcore_TEntity_SetParent_TTEntity
	,_openb3d_openb3dcore_TEntity_PositionEntity_fffi
	,_openb3d_openb3dcore_TEntity_MoveEntity_fff
	,_openb3d_openb3dcore_TEntity_TranslateEntity_fffi
	,_openb3d_openb3dcore_TEntity_ScaleEntity_fffi
	,_openb3d_openb3dcore_TEntity_RotateEntity_fffi
	,_openb3d_openb3dcore_TEntity_TurnEntity_fffi
	,_openb3d_openb3dcore_TEntity_PointEntity_TTEntityf
	,_openb3d_openb3dcore_TEntity_LoadAnimSeq_S
	,_openb3d_openb3dcore_TEntity_ExtractAnimSeq_iii
	,_openb3d_openb3dcore_TEntity_Animate_ifii
	,_openb3d_openb3dcore_TEntity_SetAnimTime_fi
	,_openb3d_openb3dcore_TEntity_AnimSeq
	,_openb3d_openb3dcore_TEntity_AnimLength
	,_openb3d_openb3dcore_TEntity_AnimTime
	,_openb3d_openb3dcore_TEntity_Animating
	,_openb3d_openb3dcore_TEntity_EntityColor_fffi
	,_openb3d_openb3dcore_TEntity_EntityAlpha_f
	,_openb3d_openb3dcore_TEntity_EntityShininess_f
	,_openb3d_openb3dcore_TEntity_EntityTexture_TTTextureii
	,_openb3d_openb3dcore_TEntity_EntityBlend_i
	,_openb3d_openb3dcore_TEntity_EntityFX_i
	,_openb3d_openb3dcore_TEntity_PaintEntity_TTBrush
	,_openb3d_openb3dcore_TEntity_GetEntityBrush
	,_openb3d_openb3dcore_TEntity_EntityOrder_i
	,_openb3d_openb3dcore_TEntity_ShowEntity
	,_openb3d_openb3dcore_TEntity_HideEntity
	,_openb3d_openb3dcore_TEntity_NameEntity_S
	,_openb3d_openb3dcore_TEntity_EntityParent_TTEntityi
	,_openb3d_openb3dcore_TEntity_GetParent
	,_openb3d_openb3dcore_TEntity_EntityX_i
	,_openb3d_openb3dcore_TEntity_EntityY_i
	,_openb3d_openb3dcore_TEntity_EntityZ_i
	,_openb3d_openb3dcore_TEntity_EntityPitch_i
	,_openb3d_openb3dcore_TEntity_EntityYaw_i
	,_openb3d_openb3dcore_TEntity_EntityRoll_i
	,_openb3d_openb3dcore_TEntity_EntityClass
	,_openb3d_openb3dcore_TEntity_EntityName
	,_openb3d_openb3dcore_TEntity_CountChildren
	,_openb3d_openb3dcore_TEntity_GetChild_i
	,_openb3d_openb3dcore_TEntity_FindChild_S
	,_openb3d_openb3dcore_TEntity_EntityPick_f
	,_openb3d_openb3dcore_TEntity_LinePick_fffffff
	,_openb3d_openb3dcore_TEntity_EntityVisible_TTEntityTTEntity
	,_openb3d_openb3dcore_TEntity_EntityDistance_TTEntity
	,_openb3d_openb3dcore_TEntity_DeltaYaw_TTEntity
	,_openb3d_openb3dcore_TEntity_DeltaPitch_TTEntity
	,openb3d_openb3dcore_TEntity_TFormPoint_i_fffTTEntityTTEntity
	,openb3d_openb3dcore_TEntity_TFormVector_i_fffTTEntityTTEntity
	,openb3d_openb3dcore_TEntity_TFormNormal_i_fffTTEntityTTEntity
	,openb3d_openb3dcore_TEntity_TFormedX_f
	,openb3d_openb3dcore_TEntity_TFormedY_f
	,openb3d_openb3dcore_TEntity_TFormedZ_f
	,_openb3d_openb3dcore_TEntity_GetMatElement_ii
	,_openb3d_openb3dcore_TEntity_ResetEntity
	,_openb3d_openb3dcore_TEntity_EntityRadius_ff
	,_openb3d_openb3dcore_TEntity_EntityBox_ffffff
	,_openb3d_openb3dcore_TEntity_EntityType_ii
	,_openb3d_openb3dcore_TEntity_EntityPickMode_ii
	,_openb3d_openb3dcore_TEntity_EntityCollided_i
	,_openb3d_openb3dcore_TEntity_CountCollisions
	,_openb3d_openb3dcore_TEntity_CollisionX_i
	,_openb3d_openb3dcore_TEntity_CollisionY_i
	,_openb3d_openb3dcore_TEntity_CollisionZ_i
	,_openb3d_openb3dcore_TEntity_CollisionNX_i
	,_openb3d_openb3dcore_TEntity_CollisionNY_i
	,_openb3d_openb3dcore_TEntity_CollisionNZ_i
	,_openb3d_openb3dcore_TEntity_CollisionTime_i
	,_openb3d_openb3dcore_TEntity_CollisionEntity_i
	,_openb3d_openb3dcore_TEntity_CollisionSurface_i
	,_openb3d_openb3dcore_TEntity_CollisionTriangle_i
	,_openb3d_openb3dcore_TEntity_GetEntityType
	,_openb3d_openb3dcore_TEntity_MeshCullRadius_f
	,_openb3d_openb3dcore_TEntity_EntityScaleX_i
	,_openb3d_openb3dcore_TEntity_EntityScaleY_i
	,_openb3d_openb3dcore_TEntity_EntityScaleZ_i
	,_openb3d_openb3dcore_TEntity_Hidden
	,openb3d_openb3dcore_TEntity_CountAllChildren_i_TTEntityi
	,_openb3d_openb3dcore_TEntity_GetChildFromAll_iviTTEntity
	,_openb3d_openb3dcore_TEntity_ListParents_TTList
	,_openb3d_openb3dcore_TEntity_UpdateMat_b
	,_openb3d_openb3dcore_TEntity_AddParent_TTEntity
	,openb3d_openb3dcore_TEntity_UpdateChildren_i_TTEntity
	,_openb3d_openb3dcore_TEntity_EntityDistanceSquared_TTEntity
	,_openb3d_openb3dcore_TEntity_MQ_Update
	,_openb3d_openb3dcore_TEntity_MQ_GetInvMatrix_TTMatPtr
	,_openb3d_openb3dcore_TEntity_MQ_GetMatrix_TTMatPtr
	,_openb3d_openb3dcore_TEntity_MQ_GetScaleXYZ_vfvfvf
	,_openb3d_openb3dcore_TEntity_MQ_Turn_ffffi
	,openb3d_openb3dcore_TCamera_CreateObject_TTCamera_pb
	,_openb3d_openb3dcore_TCamera_CameraListAdd_TTList
	,_openb3d_openb3dcore_TCamera_CameraListRemove_TTList
	,_openb3d_openb3dcore_TCamera_UpdateFog
	,openb3d_openb3dcore_TCamera_CreateCamera_TTCamera_TTEntity
	,_openb3d_openb3dcore_TCamera_CameraViewport_iiii
	,_openb3d_openb3dcore_TCamera_CameraClsColor_fff
	,_openb3d_openb3dcore_TCamera_CameraClsMode_ii
	,_openb3d_openb3dcore_TCamera_CameraRange_ff
	,_openb3d_openb3dcore_TCamera_CameraZoom_f
	,_openb3d_openb3dcore_TCamera_CameraProjMode_i
	,_openb3d_openb3dcore_TCamera_CameraPick_ff
	,_openb3d_openb3dcore_TCamera_CameraFogMode_i
	,_openb3d_openb3dcore_TCamera_CameraFogColor_fff
	,_openb3d_openb3dcore_TCamera_CameraFogRange_ff
	,_openb3d_openb3dcore_TCamera_CameraProject_fff
	,openb3d_openb3dcore_TCamera_ProjectedX_f
	,openb3d_openb3dcore_TCamera_ProjectedY_f
	,openb3d_openb3dcore_TCamera_ProjectedZ_f
	,_openb3d_openb3dcore_TCamera_EntityInView_TTEntity
	,_openb3d_openb3dcore_TCamera_Render
	,_openb3d_openb3dcore_TCamera_UpdateSprite_TTSprite
	,_openb3d_openb3dcore_TCamera_AddTransformedSpriteToSurface_TTSpriteTTSurface
	,_openb3d_openb3dcore_TCamera_RenderListAdd_TTMesh
	,_openb3d_openb3dcore_TCamera_ExtractFrustum
	,_openb3d_openb3dcore_TCamera_EntityInFrustum_TTEntity
	,_openb3d_openb3dcore_TCamera_accPerspective_fffffffff
	,_openb3d_openb3dcore_TCamera_accFrustum_fffffffffff
	,_openb3d_openb3dcore_TCamera_UpdateProjMatrix
	,openb3d_openb3dcore_TCamera_UpdateEntityRender_i_TTEntityTTCamera
};

void _openb3d_openb3dcore_TLight_New(struct openb3d_openb3dcore_TLight_obj* o) {
	_openb3d_openb3dcore_TEntity_New((struct openb3d_openb3dcore_TEntity_obj*)o);
	o->clas = &openb3d_openb3dcore_TLight;
	((struct openb3d_openb3dcore_TLight_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tlight_cast_shadow = 0;
	((struct openb3d_openb3dcore_TLight_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tlight_light_type = 0;
	((struct openb3d_openb3dcore_TLight_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tlight_range = 0;
	((struct openb3d_openb3dcore_TLight_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tlight_red = 0;
	((struct openb3d_openb3dcore_TLight_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tlight_green = 0;
	((struct openb3d_openb3dcore_TLight_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tlight_blue = 0;
	((struct openb3d_openb3dcore_TLight_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tlight_inner_ang = 0;
	((struct openb3d_openb3dcore_TLight_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tlight_outer_ang = 0;
	struct BBDebugScope __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"New",
		{
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x900be0a54b5d9948, 208, 0};
	bbOnDebugEnterStm(&__stmt_0);
	if(openb3d_openb3dcore_TGlobal3D_Log_New!=0){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x900be0a54b5d9948, 209, 0};
		bbOnDebugEnterStm(&__stmt_0);
		brl_blitz_DebugLog((BBString*)&_s216);
		bbOnDebugLeaveScope();
	}
	bbOnDebugLeaveScope();
}
void _openb3d_openb3dcore_TLight_Delete(struct openb3d_openb3dcore_TLight_obj* o) {
	struct BBDebugScope_1 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"Delete",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TLight",
				.var_address=&o
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x900be0a54b5d9948, 216, 0};
	bbOnDebugEnterStm(&__stmt_0);
	if(openb3d_openb3dcore_TGlobal3D_Log_Del!=0){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x900be0a54b5d9948, 217, 0};
		bbOnDebugEnterStm(&__stmt_0);
		brl_blitz_DebugLog((BBString*)&_s217);
		bbOnDebugLeaveScope();
	}
	bbOnDebugLeaveScope();
	_openb3d_openb3dcore_TEntity_Delete((struct openb3d_openb3dcore_TEntity_obj*)o);
}
struct openb3d_openb3dcore_TLight_obj* openb3d_openb3dcore_TLight_CreateObject_TTLight_pb(BBBYTE* bbt_inst){
	struct openb3d_openb3dcore_TLight_obj* bbt_obj=(struct openb3d_openb3dcore_TLight_obj*)((struct openb3d_openb3dcore_TLight_obj*)&bbNullObject);
	struct BBDebugScope_2 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"CreateObject",
		{
			{
				BBDEBUGDECL_LOCAL,
				"inst",
				"*b",
				.var_address=&bbt_inst
			},
			{
				BBDEBUGDECL_LOCAL,
				"obj",
				":TLight",
				.var_address=&bbt_obj
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x900be0a54b5d9948, 40, 0};
	bbOnDebugEnterStm(&__stmt_0);
	if(bbt_inst==0){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x900be0a54b5d9948, 40, 0};
		bbOnDebugEnterStm(&__stmt_0);
		bbOnDebugLeaveScope();
		bbOnDebugLeaveScope();
		return (struct openb3d_openb3dcore_TLight_obj*)&bbNullObject;
	}
	struct BBDebugStm __stmt_1 = {0x900be0a54b5d9948, 41, 0};
	bbOnDebugEnterStm(&__stmt_1);
	bbt_obj=(struct openb3d_openb3dcore_TLight_obj*)(struct openb3d_openb3dcore_TLight_obj*)bbObjectNew((BBClass *)&openb3d_openb3dcore_TLight);
	struct BBDebugStm __stmt_2 = {0x900be0a54b5d9948, 43, 0};
	bbOnDebugEnterStm(&__stmt_2);
	((struct brl_map_ptrmap_TPtrMap_obj*)bbNullObjectTest((BBObject*)openb3d_openb3dcore_TEntity_ent_map))->clas->m_Insert_pbTObject((struct brl_map_ptrmap_TPtrMap_obj*)openb3d_openb3dcore_TEntity_ent_map,bbt_inst,(BBOBJECT)bbt_obj);
	struct BBDebugStm __stmt_3 = {0x900be0a54b5d9948, 47, 0};
	bbOnDebugEnterStm(&__stmt_3);
	((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)bbt_obj))->_openb3d_openb3dcore_tentity_instance =bbt_inst;
	struct BBDebugStm __stmt_4 = {0x900be0a54b5d9948, 48, 0};
	bbOnDebugEnterStm(&__stmt_4);
	((struct openb3d_openb3dcore_TLight_obj*)bbNullObjectTest((BBObject*)bbt_obj))->clas->m_InitFields((struct openb3d_openb3dcore_TLight_obj*)bbt_obj);
	struct BBDebugStm __stmt_5 = {0x900be0a54b5d9948, 49, 0};
	bbOnDebugEnterStm(&__stmt_5);
	bbOnDebugLeaveScope();
	return (struct openb3d_openb3dcore_TLight_obj*)bbt_obj;
}
BBINT openb3d_openb3dcore_TLight_InitGlobals_i(){
	struct BBDebugScope __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"InitGlobals",
		{
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x900be0a54b5d9948, 56, 0};
	bbOnDebugEnterStm(&__stmt_0);
	openb3d_openb3dcore_TLight_light_no=StaticInt_(25,1);
	struct BBDebugStm __stmt_1 = {0x900be0a54b5d9948, 57, 0};
	bbOnDebugEnterStm(&__stmt_1);
	openb3d_openb3dcore_TLight_no_lights=StaticInt_(25,2);
	struct BBDebugStm __stmt_2 = {0x900be0a54b5d9948, 58, 0};
	bbOnDebugEnterStm(&__stmt_2);
	openb3d_openb3dcore_TLight_max_lights=StaticInt_(25,3);
	struct BBDebugStm __stmt_3 = {0x900be0a54b5d9948, 59, 0};
	bbOnDebugEnterStm(&__stmt_3);
	openb3d_openb3dcore_TLight_gl_light=StaticInt_(25,4);
	bbOnDebugLeaveScope();
	return 0;
}
BBINT _openb3d_openb3dcore_TLight_InitFields(struct openb3d_openb3dcore_TLight_obj* o){
	((struct openb3d_openb3dcore_TLight_obj*)bbNullObjectTest((BBObject*)o));
	struct BBDebugScope_1 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"InitFields",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TLight",
				.var_address=&o
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x900be0a54b5d9948, 65, 0};
	bbOnDebugEnterStm(&__stmt_0);
	(&openb3d_openb3dcore_TLight)->super->m_InitFields((struct openb3d_openb3dcore_TEntity_obj*)o);
	struct BBDebugStm __stmt_1 = {0x900be0a54b5d9948, 68, 0};
	bbOnDebugEnterStm(&__stmt_1);
	((struct openb3d_openb3dcore_TLight_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tlight_cast_shadow =LightChar_(openb3d_openb3dcore_TEntity_GetInstance_pb_TTEntity((struct openb3d_openb3dcore_TEntity_obj*)((struct openb3d_openb3dcore_TEntity_obj*)bbObjectDowncast((BBOBJECT)o,(BBClass*)&openb3d_openb3dcore_TEntity))),6);
	struct BBDebugStm __stmt_2 = {0x900be0a54b5d9948, 69, 0};
	bbOnDebugEnterStm(&__stmt_2);
	((struct openb3d_openb3dcore_TLight_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tlight_light_type =LightChar_(openb3d_openb3dcore_TEntity_GetInstance_pb_TTEntity((struct openb3d_openb3dcore_TEntity_obj*)((struct openb3d_openb3dcore_TEntity_obj*)bbObjectDowncast((BBOBJECT)o,(BBClass*)&openb3d_openb3dcore_TEntity))),7);
	struct BBDebugStm __stmt_3 = {0x900be0a54b5d9948, 72, 0};
	bbOnDebugEnterStm(&__stmt_3);
	((struct openb3d_openb3dcore_TLight_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tlight_range =LightFloat_(openb3d_openb3dcore_TEntity_GetInstance_pb_TTEntity((struct openb3d_openb3dcore_TEntity_obj*)((struct openb3d_openb3dcore_TEntity_obj*)bbObjectDowncast((BBOBJECT)o,(BBClass*)&openb3d_openb3dcore_TEntity))),8);
	struct BBDebugStm __stmt_4 = {0x900be0a54b5d9948, 73, 0};
	bbOnDebugEnterStm(&__stmt_4);
	((struct openb3d_openb3dcore_TLight_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tlight_red =LightFloat_(openb3d_openb3dcore_TEntity_GetInstance_pb_TTEntity((struct openb3d_openb3dcore_TEntity_obj*)((struct openb3d_openb3dcore_TEntity_obj*)bbObjectDowncast((BBOBJECT)o,(BBClass*)&openb3d_openb3dcore_TEntity))),9);
	struct BBDebugStm __stmt_5 = {0x900be0a54b5d9948, 74, 0};
	bbOnDebugEnterStm(&__stmt_5);
	((struct openb3d_openb3dcore_TLight_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tlight_green =LightFloat_(openb3d_openb3dcore_TEntity_GetInstance_pb_TTEntity((struct openb3d_openb3dcore_TEntity_obj*)((struct openb3d_openb3dcore_TEntity_obj*)bbObjectDowncast((BBOBJECT)o,(BBClass*)&openb3d_openb3dcore_TEntity))),10);
	struct BBDebugStm __stmt_6 = {0x900be0a54b5d9948, 75, 0};
	bbOnDebugEnterStm(&__stmt_6);
	((struct openb3d_openb3dcore_TLight_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tlight_blue =LightFloat_(openb3d_openb3dcore_TEntity_GetInstance_pb_TTEntity((struct openb3d_openb3dcore_TEntity_obj*)((struct openb3d_openb3dcore_TEntity_obj*)bbObjectDowncast((BBOBJECT)o,(BBClass*)&openb3d_openb3dcore_TEntity))),11);
	struct BBDebugStm __stmt_7 = {0x900be0a54b5d9948, 76, 0};
	bbOnDebugEnterStm(&__stmt_7);
	((struct openb3d_openb3dcore_TLight_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tlight_inner_ang =LightFloat_(openb3d_openb3dcore_TEntity_GetInstance_pb_TTEntity((struct openb3d_openb3dcore_TEntity_obj*)((struct openb3d_openb3dcore_TEntity_obj*)bbObjectDowncast((BBOBJECT)o,(BBClass*)&openb3d_openb3dcore_TEntity))),12);
	struct BBDebugStm __stmt_8 = {0x900be0a54b5d9948, 77, 0};
	bbOnDebugEnterStm(&__stmt_8);
	((struct openb3d_openb3dcore_TLight_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tlight_outer_ang =LightFloat_(openb3d_openb3dcore_TEntity_GetInstance_pb_TTEntity((struct openb3d_openb3dcore_TEntity_obj*)((struct openb3d_openb3dcore_TEntity_obj*)bbObjectDowncast((BBOBJECT)o,(BBClass*)&openb3d_openb3dcore_TEntity))),13);
	struct BBDebugStm __stmt_9 = {0x900be0a54b5d9948, 79, 0};
	bbOnDebugEnterStm(&__stmt_9);
	o->clas->f_CopyList__i_TTList((struct brl_linkedlist_TList_obj*)openb3d_openb3dcore_TLight_light_list);
	bbOnDebugLeaveScope();
	return 0;
}
BBINT openb3d_openb3dcore_TLight_DebugGlobals_i_ii(BBINT bbt_debug_subobjects,BBINT bbt_debug_base_types){
	BBSTRING bbt_pad=(&bbEmptyString);
	BBINT bbt_loop=0;
	struct BBDebugScope_4 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"DebugGlobals",
		{
			{
				BBDEBUGDECL_LOCAL,
				"debug_subobjects",
				"i",
				.var_address=&bbt_debug_subobjects
			},
			{
				BBDEBUGDECL_LOCAL,
				"debug_base_types",
				"i",
				.var_address=&bbt_debug_base_types
			},
			{
				BBDEBUGDECL_LOCAL,
				"pad",
				"$",
				.var_address=&bbt_pad
			},
			{
				BBDEBUGDECL_LOCAL,
				"loop",
				"i",
				.var_address=&bbt_loop
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x900be0a54b5d9948, 85, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbt_pad=((BBString*)&bbEmptyString);
	struct BBDebugStm __stmt_1 = {0x900be0a54b5d9948, 86, 0};
	bbOnDebugEnterStm(&__stmt_1);
	bbt_loop=bbt_debug_subobjects;
	struct BBDebugStm __stmt_2 = {0x900be0a54b5d9948, 87, 0};
	bbOnDebugEnterStm(&__stmt_2);
	if(bbt_debug_base_types>bbt_debug_subobjects){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x900be0a54b5d9948, 87, 0};
		bbOnDebugEnterStm(&__stmt_0);
		bbt_loop=bbt_debug_base_types;
		bbOnDebugLeaveScope();
	}
	struct BBDebugStm __stmt_3 = {0x900be0a54b5d9948, 88, 0};
	bbOnDebugEnterStm(&__stmt_3);
	{
		BBINT bbt_i=1;
		BBINT bbt_=bbt_loop;
		for(;(bbt_i<bbt_);bbt_i=(bbt_i+1)){
			struct BBDebugScope_1 __scope = {
				BBDEBUGSCOPE_LOCALBLOCK,
				0,
				{
					{
						BBDEBUGDECL_LOCAL,
						"i",
						"i",
						.var_address=&bbt_i
					},
					{
						BBDEBUGDECL_END
					}
				}
			};
			bbOnDebugEnterScope((BBDebugScope *)&__scope);
			struct BBDebugStm __stmt_0 = {0x900be0a54b5d9948, 89, 0};
			bbOnDebugEnterStm(&__stmt_0);
			bbt_pad=bbStringConcat(bbt_pad,((BBString*)&_s0));
			bbOnDebugLeaveScope();
		}
	}
	struct BBDebugStm __stmt_4 = {0x900be0a54b5d9948, 91, 0};
	bbOnDebugEnterStm(&__stmt_4);
	if(bbt_debug_subobjects!=0){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x900be0a54b5d9948, 91, 0};
		bbOnDebugEnterStm(&__stmt_0);
		bbt_debug_subobjects+=1;
		bbOnDebugLeaveScope();
	}
	struct BBDebugStm __stmt_5 = {0x900be0a54b5d9948, 92, 0};
	bbOnDebugEnterStm(&__stmt_5);
	if(bbt_debug_base_types!=0){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x900be0a54b5d9948, 92, 0};
		bbOnDebugEnterStm(&__stmt_0);
		bbt_debug_base_types+=1;
		bbOnDebugLeaveScope();
	}
	struct BBDebugStm __stmt_6 = {0x900be0a54b5d9948, 93, 0};
	bbOnDebugEnterStm(&__stmt_6);
	brl_blitz_DebugLog(bbStringConcat(bbt_pad,((BBString*)&_s191)));
	struct BBDebugStm __stmt_7 = {0x900be0a54b5d9948, 96, 0};
	bbOnDebugEnterStm(&__stmt_7);
	if(openb3d_openb3dcore_TLight_light_no!=0){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x900be0a54b5d9948, 96, 0};
		bbOnDebugEnterStm(&__stmt_0);
		brl_blitz_DebugLog(bbStringConcat(bbStringConcat(bbt_pad,((BBString*)&_s192)),bbStringFromInt(openb3d_openb3dcore_TLight_light_no[0])));
		bbOnDebugLeaveScope();
	}else{
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x900be0a54b5d9948, 96, 0};
		bbOnDebugEnterStm(&__stmt_0);
		brl_blitz_DebugLog(bbStringConcat(bbt_pad,((BBString*)&_s193)));
		bbOnDebugLeaveScope();
	}
	struct BBDebugStm __stmt_8 = {0x900be0a54b5d9948, 97, 0};
	bbOnDebugEnterStm(&__stmt_8);
	if(openb3d_openb3dcore_TLight_no_lights!=0){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x900be0a54b5d9948, 97, 0};
		bbOnDebugEnterStm(&__stmt_0);
		brl_blitz_DebugLog(bbStringConcat(bbStringConcat(bbt_pad,((BBString*)&_s194)),bbStringFromInt(openb3d_openb3dcore_TLight_no_lights[0])));
		bbOnDebugLeaveScope();
	}else{
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x900be0a54b5d9948, 97, 0};
		bbOnDebugEnterStm(&__stmt_0);
		brl_blitz_DebugLog(bbStringConcat(bbt_pad,((BBString*)&_s195)));
		bbOnDebugLeaveScope();
	}
	struct BBDebugStm __stmt_9 = {0x900be0a54b5d9948, 98, 0};
	bbOnDebugEnterStm(&__stmt_9);
	if(openb3d_openb3dcore_TLight_max_lights!=0){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x900be0a54b5d9948, 98, 0};
		bbOnDebugEnterStm(&__stmt_0);
		brl_blitz_DebugLog(bbStringConcat(bbStringConcat(bbt_pad,((BBString*)&_s196)),bbStringFromInt(openb3d_openb3dcore_TLight_max_lights[0])));
		bbOnDebugLeaveScope();
	}else{
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x900be0a54b5d9948, 98, 0};
		bbOnDebugEnterStm(&__stmt_0);
		brl_blitz_DebugLog(bbStringConcat(bbt_pad,((BBString*)&_s197)));
		bbOnDebugLeaveScope();
	}
	struct BBDebugStm __stmt_10 = {0x900be0a54b5d9948, 99, 0};
	bbOnDebugEnterStm(&__stmt_10);
	brl_blitz_DebugLog(bbStringConcat(bbStringConcat(bbt_pad,((BBString*)&_s198)),openb3d_openb3dcore_StringPtr((BBBYTE*)openb3d_openb3dcore_TLight_gl_light)));
	struct BBDebugStm __stmt_11 = {0x900be0a54b5d9948, 101, 0};
	bbOnDebugEnterStm(&__stmt_11);
	brl_blitz_DebugLog((BBString*)&bbEmptyString);
	bbOnDebugLeaveScope();
	return 0;
}
BBINT _openb3d_openb3dcore_TLight_DebugFields_ii(struct openb3d_openb3dcore_TLight_obj* o,BBINT bbt_debug_subobjects,BBINT bbt_debug_base_types){
	((struct openb3d_openb3dcore_TLight_obj*)bbNullObjectTest((BBObject*)o));
	BBSTRING bbt_pad=(&bbEmptyString);
	BBINT bbt_loop=0;
	struct BBDebugScope_5 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"DebugFields",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TLight",
				.var_address=&o
			},
			{
				BBDEBUGDECL_LOCAL,
				"debug_subobjects",
				"i",
				.var_address=&bbt_debug_subobjects
			},
			{
				BBDEBUGDECL_LOCAL,
				"debug_base_types",
				"i",
				.var_address=&bbt_debug_base_types
			},
			{
				BBDEBUGDECL_LOCAL,
				"pad",
				"$",
				.var_address=&bbt_pad
			},
			{
				BBDEBUGDECL_LOCAL,
				"loop",
				"i",
				.var_address=&bbt_loop
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x900be0a54b5d9948, 107, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbt_pad=((BBString*)&bbEmptyString);
	struct BBDebugStm __stmt_1 = {0x900be0a54b5d9948, 108, 0};
	bbOnDebugEnterStm(&__stmt_1);
	bbt_loop=bbt_debug_subobjects;
	struct BBDebugStm __stmt_2 = {0x900be0a54b5d9948, 109, 0};
	bbOnDebugEnterStm(&__stmt_2);
	if(bbt_debug_base_types>bbt_debug_subobjects){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x900be0a54b5d9948, 109, 0};
		bbOnDebugEnterStm(&__stmt_0);
		bbt_loop=bbt_debug_base_types;
		bbOnDebugLeaveScope();
	}
	struct BBDebugStm __stmt_3 = {0x900be0a54b5d9948, 110, 0};
	bbOnDebugEnterStm(&__stmt_3);
	{
		BBINT bbt_i=1;
		BBINT bbt_=bbt_loop;
		for(;(bbt_i<bbt_);bbt_i=(bbt_i+1)){
			struct BBDebugScope_1 __scope = {
				BBDEBUGSCOPE_LOCALBLOCK,
				0,
				{
					{
						BBDEBUGDECL_LOCAL,
						"i",
						"i",
						.var_address=&bbt_i
					},
					{
						BBDEBUGDECL_END
					}
				}
			};
			bbOnDebugEnterScope((BBDebugScope *)&__scope);
			struct BBDebugStm __stmt_0 = {0x900be0a54b5d9948, 111, 0};
			bbOnDebugEnterStm(&__stmt_0);
			bbt_pad=bbStringConcat(bbt_pad,((BBString*)&_s0));
			bbOnDebugLeaveScope();
		}
	}
	struct BBDebugStm __stmt_4 = {0x900be0a54b5d9948, 113, 0};
	bbOnDebugEnterStm(&__stmt_4);
	if(bbt_debug_subobjects!=0){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x900be0a54b5d9948, 113, 0};
		bbOnDebugEnterStm(&__stmt_0);
		bbt_debug_subobjects+=1;
		bbOnDebugLeaveScope();
	}
	struct BBDebugStm __stmt_5 = {0x900be0a54b5d9948, 114, 0};
	bbOnDebugEnterStm(&__stmt_5);
	if(bbt_debug_base_types!=0){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x900be0a54b5d9948, 114, 0};
		bbOnDebugEnterStm(&__stmt_0);
		bbt_debug_base_types+=1;
		bbOnDebugLeaveScope();
	}
	struct BBDebugStm __stmt_6 = {0x900be0a54b5d9948, 115, 0};
	bbOnDebugEnterStm(&__stmt_6);
	brl_blitz_DebugLog(bbStringConcat(bbStringConcat(bbt_pad,((BBString*)&_s199)),openb3d_openb3dcore_StringPtr(openb3d_openb3dcore_TEntity_GetInstance_pb_TTEntity((struct openb3d_openb3dcore_TEntity_obj*)((struct openb3d_openb3dcore_TEntity_obj*)bbObjectDowncast((BBOBJECT)o,(BBClass*)&openb3d_openb3dcore_TEntity))))));
	struct BBDebugStm __stmt_7 = {0x900be0a54b5d9948, 118, 0};
	bbOnDebugEnterStm(&__stmt_7);
	if(((struct openb3d_openb3dcore_TLight_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tlight_cast_shadow !=0){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x900be0a54b5d9948, 118, 0};
		bbOnDebugEnterStm(&__stmt_0);
		brl_blitz_DebugLog(bbStringConcat(bbStringConcat(bbt_pad,((BBString*)&_s200)),bbStringFromInt(((struct openb3d_openb3dcore_TLight_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tlight_cast_shadow [0])));
		bbOnDebugLeaveScope();
	}else{
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x900be0a54b5d9948, 118, 0};
		bbOnDebugEnterStm(&__stmt_0);
		brl_blitz_DebugLog(bbStringConcat(bbt_pad,((BBString*)&_s201)));
		bbOnDebugLeaveScope();
	}
	struct BBDebugStm __stmt_8 = {0x900be0a54b5d9948, 119, 0};
	bbOnDebugEnterStm(&__stmt_8);
	if(((struct openb3d_openb3dcore_TLight_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tlight_light_type !=0){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x900be0a54b5d9948, 119, 0};
		bbOnDebugEnterStm(&__stmt_0);
		brl_blitz_DebugLog(bbStringConcat(bbStringConcat(bbt_pad,((BBString*)&_s202)),bbStringFromInt(((struct openb3d_openb3dcore_TLight_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tlight_light_type [0])));
		bbOnDebugLeaveScope();
	}else{
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x900be0a54b5d9948, 119, 0};
		bbOnDebugEnterStm(&__stmt_0);
		brl_blitz_DebugLog(bbStringConcat(bbt_pad,((BBString*)&_s203)));
		bbOnDebugLeaveScope();
	}
	struct BBDebugStm __stmt_9 = {0x900be0a54b5d9948, 122, 0};
	bbOnDebugEnterStm(&__stmt_9);
	if(((struct openb3d_openb3dcore_TLight_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tlight_range !=0){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x900be0a54b5d9948, 122, 0};
		bbOnDebugEnterStm(&__stmt_0);
		brl_blitz_DebugLog(bbStringConcat(bbStringConcat(bbt_pad,((BBString*)&_s204)),bbStringFromFloat(((struct openb3d_openb3dcore_TLight_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tlight_range [0])));
		bbOnDebugLeaveScope();
	}else{
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x900be0a54b5d9948, 122, 0};
		bbOnDebugEnterStm(&__stmt_0);
		brl_blitz_DebugLog(bbStringConcat(bbt_pad,((BBString*)&_s205)));
		bbOnDebugLeaveScope();
	}
	struct BBDebugStm __stmt_10 = {0x900be0a54b5d9948, 123, 0};
	bbOnDebugEnterStm(&__stmt_10);
	if(((struct openb3d_openb3dcore_TLight_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tlight_red !=0){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x900be0a54b5d9948, 123, 0};
		bbOnDebugEnterStm(&__stmt_0);
		brl_blitz_DebugLog(bbStringConcat(bbStringConcat(bbt_pad,((BBString*)&_s206)),bbStringFromFloat(((struct openb3d_openb3dcore_TLight_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tlight_red [0])));
		bbOnDebugLeaveScope();
	}else{
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x900be0a54b5d9948, 123, 0};
		bbOnDebugEnterStm(&__stmt_0);
		brl_blitz_DebugLog(bbStringConcat(bbt_pad,((BBString*)&_s207)));
		bbOnDebugLeaveScope();
	}
	struct BBDebugStm __stmt_11 = {0x900be0a54b5d9948, 124, 0};
	bbOnDebugEnterStm(&__stmt_11);
	if(((struct openb3d_openb3dcore_TLight_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tlight_green !=0){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x900be0a54b5d9948, 124, 0};
		bbOnDebugEnterStm(&__stmt_0);
		brl_blitz_DebugLog(bbStringConcat(bbStringConcat(bbt_pad,((BBString*)&_s208)),bbStringFromFloat(((struct openb3d_openb3dcore_TLight_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tlight_green [0])));
		bbOnDebugLeaveScope();
	}else{
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x900be0a54b5d9948, 124, 0};
		bbOnDebugEnterStm(&__stmt_0);
		brl_blitz_DebugLog(bbStringConcat(bbt_pad,((BBString*)&_s209)));
		bbOnDebugLeaveScope();
	}
	struct BBDebugStm __stmt_12 = {0x900be0a54b5d9948, 125, 0};
	bbOnDebugEnterStm(&__stmt_12);
	if(((struct openb3d_openb3dcore_TLight_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tlight_blue !=0){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x900be0a54b5d9948, 125, 0};
		bbOnDebugEnterStm(&__stmt_0);
		brl_blitz_DebugLog(bbStringConcat(bbStringConcat(bbt_pad,((BBString*)&_s210)),bbStringFromFloat(((struct openb3d_openb3dcore_TLight_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tlight_blue [0])));
		bbOnDebugLeaveScope();
	}else{
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x900be0a54b5d9948, 125, 0};
		bbOnDebugEnterStm(&__stmt_0);
		brl_blitz_DebugLog(bbStringConcat(bbt_pad,((BBString*)&_s211)));
		bbOnDebugLeaveScope();
	}
	struct BBDebugStm __stmt_13 = {0x900be0a54b5d9948, 126, 0};
	bbOnDebugEnterStm(&__stmt_13);
	if(((struct openb3d_openb3dcore_TLight_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tlight_inner_ang !=0){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x900be0a54b5d9948, 126, 0};
		bbOnDebugEnterStm(&__stmt_0);
		brl_blitz_DebugLog(bbStringConcat(bbStringConcat(bbt_pad,((BBString*)&_s212)),bbStringFromFloat(((struct openb3d_openb3dcore_TLight_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tlight_inner_ang [0])));
		bbOnDebugLeaveScope();
	}else{
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x900be0a54b5d9948, 126, 0};
		bbOnDebugEnterStm(&__stmt_0);
		brl_blitz_DebugLog(bbStringConcat(bbt_pad,((BBString*)&_s213)));
		bbOnDebugLeaveScope();
	}
	struct BBDebugStm __stmt_14 = {0x900be0a54b5d9948, 127, 0};
	bbOnDebugEnterStm(&__stmt_14);
	if(((struct openb3d_openb3dcore_TLight_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tlight_outer_ang !=0){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x900be0a54b5d9948, 127, 0};
		bbOnDebugEnterStm(&__stmt_0);
		brl_blitz_DebugLog(bbStringConcat(bbStringConcat(bbt_pad,((BBString*)&_s214)),bbStringFromFloat(((struct openb3d_openb3dcore_TLight_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tlight_outer_ang [0])));
		bbOnDebugLeaveScope();
	}else{
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x900be0a54b5d9948, 127, 0};
		bbOnDebugEnterStm(&__stmt_0);
		brl_blitz_DebugLog(bbStringConcat(bbt_pad,((BBString*)&_s215)));
		bbOnDebugLeaveScope();
	}
	struct BBDebugStm __stmt_15 = {0x900be0a54b5d9948, 129, 0};
	bbOnDebugEnterStm(&__stmt_15);
	brl_blitz_DebugLog((BBString*)&bbEmptyString);
	struct BBDebugStm __stmt_16 = {0x900be0a54b5d9948, 131, 0};
	bbOnDebugEnterStm(&__stmt_16);
	if(bbt_debug_base_types!=0){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x900be0a54b5d9948, 131, 0};
		bbOnDebugEnterStm(&__stmt_0);
		(&openb3d_openb3dcore_TLight)->super->m_DebugFields_ii((struct openb3d_openb3dcore_TEntity_obj*)o,bbt_debug_subobjects,bbt_debug_base_types);
		bbOnDebugLeaveScope();
	}
	bbOnDebugLeaveScope();
	return 0;
}
BBINT openb3d_openb3dcore_TLight_AddList__i_TTList(struct brl_linkedlist_TList_obj* bbt_list){
	struct BBDebugScope_1 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"AddList_",
		{
			{
				BBDEBUGDECL_LOCAL,
				"list",
				":TList",
				.var_address=&bbt_list
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x900be0a54b5d9948, 137, 0};
	bbOnDebugEnterStm(&__stmt_0);
	openb3d_openb3dcore_TEntity_AddList__i_TTList((struct brl_linkedlist_TList_obj*)bbt_list);
	struct BBDebugStm __stmt_1 = {0x900be0a54b5d9948, 139, 0};
	bbOnDebugEnterStm(&__stmt_1);
	struct brl_linkedlist_TList_obj* bbt_=(struct brl_linkedlist_TList_obj*)bbt_list;
	struct BBDebugStm __stmt_2 = {0x900be0a54b5d9948, 140, 0};
	bbOnDebugEnterStm(&__stmt_2);
	if(((struct brl_linkedlist_TList_obj*)bbt_)==openb3d_openb3dcore_TLight_light_list){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x900be0a54b5d9948, 141, 0};
		bbOnDebugEnterStm(&__stmt_0);
		if(StaticListSize_(25,5)!=0){
			BBBYTE* bbt_inst=0;
			struct openb3d_openb3dcore_TLight_obj* bbt_obj=(struct openb3d_openb3dcore_TLight_obj*)((struct openb3d_openb3dcore_TLight_obj*)&bbNullObject);
			struct BBDebugScope_2 __scope = {
				BBDEBUGSCOPE_LOCALBLOCK,
				0,
				{
					{
						BBDEBUGDECL_LOCAL,
						"inst",
						"*b",
						.var_address=&bbt_inst
					},
					{
						BBDEBUGDECL_LOCAL,
						"obj",
						":TLight",
						.var_address=&bbt_obj
					},
					{
						BBDEBUGDECL_END
					}
				}
			};
			bbOnDebugEnterScope((BBDebugScope *)&__scope);
			struct BBDebugStm __stmt_0 = {0x900be0a54b5d9948, 142, 0};
			bbOnDebugEnterStm(&__stmt_0);
			bbt_inst=StaticIterVectorLight_(25,5,(&openb3d_openb3dcore_TLight_light_list_id));
			struct BBDebugStm __stmt_1 = {0x900be0a54b5d9948, 143, 0};
			bbOnDebugEnterStm(&__stmt_1);
			bbt_obj=(struct openb3d_openb3dcore_TLight_obj*)((struct openb3d_openb3dcore_TLight_obj*)bbObjectDowncast((BBOBJECT)openb3d_openb3dcore_TEntity_GetObject_TTEntity_pb(bbt_inst),(BBClass*)&openb3d_openb3dcore_TLight));
			struct BBDebugStm __stmt_2 = {0x900be0a54b5d9948, 144, 0};
			bbOnDebugEnterStm(&__stmt_2);
			if(((BBObject*)bbt_obj)!= &bbNullObject){
				struct BBDebugScope __scope = {
					BBDEBUGSCOPE_LOCALBLOCK,
					0,
					{
						{
							BBDEBUGDECL_END
						}
					}
				};
				bbOnDebugEnterScope((BBDebugScope *)&__scope);
				struct BBDebugStm __stmt_0 = {0x900be0a54b5d9948, 144, 0};
				bbOnDebugEnterStm(&__stmt_0);
				brl_linkedlist_ListAddLast((struct brl_linkedlist_TList_obj*)bbt_list,(BBOBJECT)bbt_obj);
				bbOnDebugLeaveScope();
			}
			bbOnDebugLeaveScope();
		}
		bbOnDebugLeaveScope();
	}
	bbOnDebugLeaveScope();
	return 0;
}
BBINT openb3d_openb3dcore_TLight_CopyList__i_TTList(struct brl_linkedlist_TList_obj* bbt_list){
	struct BBDebugScope_1 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"CopyList_",
		{
			{
				BBDEBUGDECL_LOCAL,
				"list",
				":TList",
				.var_address=&bbt_list
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x900be0a54b5d9948, 152, 0};
	bbOnDebugEnterStm(&__stmt_0);
	openb3d_openb3dcore_TEntity_CopyList__i_TTList((struct brl_linkedlist_TList_obj*)bbt_list);
	struct BBDebugStm __stmt_1 = {0x900be0a54b5d9948, 154, 0};
	bbOnDebugEnterStm(&__stmt_1);
	struct brl_linkedlist_TList_obj* bbt_=(struct brl_linkedlist_TList_obj*)bbt_list;
	struct BBDebugStm __stmt_2 = {0x900be0a54b5d9948, 155, 0};
	bbOnDebugEnterStm(&__stmt_2);
	if(((struct brl_linkedlist_TList_obj*)bbt_)==openb3d_openb3dcore_TLight_light_list){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x900be0a54b5d9948, 156, 0};
		bbOnDebugEnterStm(&__stmt_0);
		openb3d_openb3dcore_TLight_light_list_id=0;
		struct BBDebugStm __stmt_1 = {0x900be0a54b5d9948, 157, 0};
		bbOnDebugEnterStm(&__stmt_1);
		{
			BBINT bbt_id=0;
			BBINT bbt_2=(StaticListSize_(25,5)-1);
			for(;(bbt_id<=bbt_2);bbt_id=(bbt_id+1)){
				BBBYTE* bbt_inst=0;
				struct openb3d_openb3dcore_TLight_obj* bbt_obj=(struct openb3d_openb3dcore_TLight_obj*)((struct openb3d_openb3dcore_TLight_obj*)&bbNullObject);
				struct BBDebugScope_3 __scope = {
					BBDEBUGSCOPE_LOCALBLOCK,
					0,
					{
						{
							BBDEBUGDECL_LOCAL,
							"id",
							"i",
							.var_address=&bbt_id
						},
						{
							BBDEBUGDECL_LOCAL,
							"inst",
							"*b",
							.var_address=&bbt_inst
						},
						{
							BBDEBUGDECL_LOCAL,
							"obj",
							":TLight",
							.var_address=&bbt_obj
						},
						{
							BBDEBUGDECL_END
						}
					}
				};
				bbOnDebugEnterScope((BBDebugScope *)&__scope);
				struct BBDebugStm __stmt_0 = {0x900be0a54b5d9948, 158, 0};
				bbOnDebugEnterStm(&__stmt_0);
				bbt_inst=StaticIterVectorLight_(25,5,(&openb3d_openb3dcore_TLight_light_list_id));
				struct BBDebugStm __stmt_1 = {0x900be0a54b5d9948, 159, 0};
				bbOnDebugEnterStm(&__stmt_1);
				bbt_obj=(struct openb3d_openb3dcore_TLight_obj*)((struct openb3d_openb3dcore_TLight_obj*)bbObjectDowncast((BBOBJECT)openb3d_openb3dcore_TEntity_GetObject_TTEntity_pb(bbt_inst),(BBClass*)&openb3d_openb3dcore_TLight));
				struct BBDebugStm __stmt_2 = {0x900be0a54b5d9948, 160, 0};
				bbOnDebugEnterStm(&__stmt_2);
				if(((BBObject*)bbt_obj)!= &bbNullObject){
					struct BBDebugScope __scope = {
						BBDEBUGSCOPE_LOCALBLOCK,
						0,
						{
							{
								BBDEBUGDECL_END
							}
						}
					};
					bbOnDebugEnterScope((BBDebugScope *)&__scope);
					struct BBDebugStm __stmt_0 = {0x900be0a54b5d9948, 160, 0};
					bbOnDebugEnterStm(&__stmt_0);
					brl_linkedlist_ListAddLast((struct brl_linkedlist_TList_obj*)bbt_list,(BBOBJECT)bbt_obj);
					bbOnDebugLeaveScope();
				}
				bbOnDebugLeaveScope();
			}
		}
		bbOnDebugLeaveScope();
	}
	bbOnDebugLeaveScope();
	return 0;
}
BBINT openb3d_openb3dcore_TLight_GetLightValues_i(){
	struct BBDebugScope __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"GetLightValues",
		{
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x900be0a54b5d9948, 171, 0};
	bbOnDebugEnterStm(&__stmt_0);
	{
		BBINT bbt_i=0;
		BBINT bbt_=(openb3d_openb3dcore_TLight_no_lights[0]-1);
		for(;(bbt_i<=bbt_);bbt_i=(bbt_i+1)){
			struct BBDebugScope_1 __scope = {
				BBDEBUGSCOPE_LOCALBLOCK,
				0,
				{
					{
						BBDEBUGDECL_LOCAL,
						"i",
						"i",
						.var_address=&bbt_i
					},
					{
						BBDEBUGDECL_END
					}
				}
			};
			bbOnDebugEnterScope((BBDebugScope *)&__scope);
			struct BBDebugStm __stmt_0 = {0x900be0a54b5d9948, 172, 0};
			bbOnDebugEnterStm(&__stmt_0);
			BBUINT* bbt_2=((BBARRAY)openb3d_openb3dcore_TLight_ambient)->scales + 1;
			glGetLightfv((GLenum)(16384+bbt_i),(GLenum)4608,(GLfloat*)(&((BBFLOAT*)BBARRAYDATAINDEX((openb3d_openb3dcore_TLight_ambient),(openb3d_openb3dcore_TLight_ambient)->dims,(*(bbt_2)) * ((BBUINT)bbt_i) + 0U))[(*(bbt_2)) * ((BBUINT)bbt_i) + 0U]));
			struct BBDebugStm __stmt_1 = {0x900be0a54b5d9948, 173, 0};
			bbOnDebugEnterStm(&__stmt_1);
			BBUINT* bbt_3=((BBARRAY)openb3d_openb3dcore_TLight_diffuse)->scales + 1;
			glGetLightfv((GLenum)(16384+bbt_i),(GLenum)4609,(GLfloat*)(&((BBFLOAT*)BBARRAYDATAINDEX((openb3d_openb3dcore_TLight_diffuse),(openb3d_openb3dcore_TLight_diffuse)->dims,(*(bbt_3)) * ((BBUINT)bbt_i) + 0U))[(*(bbt_3)) * ((BBUINT)bbt_i) + 0U]));
			struct BBDebugStm __stmt_2 = {0x900be0a54b5d9948, 174, 0};
			bbOnDebugEnterStm(&__stmt_2);
			BBUINT* bbt_4=((BBARRAY)openb3d_openb3dcore_TLight_specular)->scales + 1;
			glGetLightfv((GLenum)(16384+bbt_i),(GLenum)4610,(GLfloat*)(&((BBFLOAT*)BBARRAYDATAINDEX((openb3d_openb3dcore_TLight_specular),(openb3d_openb3dcore_TLight_specular)->dims,(*(bbt_4)) * ((BBUINT)bbt_i) + 0U))[(*(bbt_4)) * ((BBUINT)bbt_i) + 0U]));
			struct BBDebugStm __stmt_3 = {0x900be0a54b5d9948, 175, 0};
			bbOnDebugEnterStm(&__stmt_3);
			BBUINT* bbt_5=((BBARRAY)openb3d_openb3dcore_TLight_position)->scales + 1;
			glGetLightfv((GLenum)(16384+bbt_i),(GLenum)4611,(GLfloat*)(&((BBFLOAT*)BBARRAYDATAINDEX((openb3d_openb3dcore_TLight_position),(openb3d_openb3dcore_TLight_position)->dims,(*(bbt_5)) * ((BBUINT)bbt_i) + 0U))[(*(bbt_5)) * ((BBUINT)bbt_i) + 0U]));
			struct BBDebugStm __stmt_4 = {0x900be0a54b5d9948, 176, 0};
			bbOnDebugEnterStm(&__stmt_4);
			BBUINT* bbt_6=((BBARRAY)openb3d_openb3dcore_TLight_spotDirection)->scales + 1;
			glGetLightfv((GLenum)(16384+bbt_i),(GLenum)4612,(GLfloat*)(&((BBFLOAT*)BBARRAYDATAINDEX((openb3d_openb3dcore_TLight_spotDirection),(openb3d_openb3dcore_TLight_spotDirection)->dims,(*(bbt_6)) * ((BBUINT)bbt_i) + 0U))[(*(bbt_6)) * ((BBUINT)bbt_i) + 0U]));
			struct BBDebugStm __stmt_5 = {0x900be0a54b5d9948, 177, 0};
			bbOnDebugEnterStm(&__stmt_5);
			BBUINT* bbt_7=((BBARRAY)openb3d_openb3dcore_TLight_spotExponent)->scales + 1;
			glGetLightfv((GLenum)(16384+bbt_i),(GLenum)4613,(GLfloat*)(&((BBFLOAT*)BBARRAYDATAINDEX((openb3d_openb3dcore_TLight_spotExponent),(openb3d_openb3dcore_TLight_spotExponent)->dims,(*(bbt_7)) * ((BBUINT)bbt_i) + 0U))[(*(bbt_7)) * ((BBUINT)bbt_i) + 0U]));
			struct BBDebugStm __stmt_6 = {0x900be0a54b5d9948, 178, 0};
			bbOnDebugEnterStm(&__stmt_6);
			BBUINT* bbt_8=((BBARRAY)openb3d_openb3dcore_TLight_spotCutoff)->scales + 1;
			glGetLightfv((GLenum)(16384+bbt_i),(GLenum)4614,(GLfloat*)(&((BBFLOAT*)BBARRAYDATAINDEX((openb3d_openb3dcore_TLight_spotCutoff),(openb3d_openb3dcore_TLight_spotCutoff)->dims,(*(bbt_8)) * ((BBUINT)bbt_i) + 0U))[(*(bbt_8)) * ((BBUINT)bbt_i) + 0U]));
			struct BBDebugStm __stmt_7 = {0x900be0a54b5d9948, 179, 0};
			bbOnDebugEnterStm(&__stmt_7);
			BBUINT* bbt_9=((BBARRAY)openb3d_openb3dcore_TLight_constantAtt)->scales + 1;
			glGetLightfv((GLenum)(16384+bbt_i),(GLenum)4615,(GLfloat*)(&((BBFLOAT*)BBARRAYDATAINDEX((openb3d_openb3dcore_TLight_constantAtt),(openb3d_openb3dcore_TLight_constantAtt)->dims,(*(bbt_9)) * ((BBUINT)bbt_i) + 0U))[(*(bbt_9)) * ((BBUINT)bbt_i) + 0U]));
			struct BBDebugStm __stmt_8 = {0x900be0a54b5d9948, 180, 0};
			bbOnDebugEnterStm(&__stmt_8);
			BBUINT* bbt_10=((BBARRAY)openb3d_openb3dcore_TLight_linearAtt)->scales + 1;
			glGetLightfv((GLenum)(16384+bbt_i),(GLenum)4616,(GLfloat*)(&((BBFLOAT*)BBARRAYDATAINDEX((openb3d_openb3dcore_TLight_linearAtt),(openb3d_openb3dcore_TLight_linearAtt)->dims,(*(bbt_10)) * ((BBUINT)bbt_i) + 0U))[(*(bbt_10)) * ((BBUINT)bbt_i) + 0U]));
			struct BBDebugStm __stmt_9 = {0x900be0a54b5d9948, 181, 0};
			bbOnDebugEnterStm(&__stmt_9);
			BBUINT* bbt_11=((BBARRAY)openb3d_openb3dcore_TLight_quadraticAtt)->scales + 1;
			glGetLightfv((GLenum)(16384+bbt_i),(GLenum)4617,(GLfloat*)(&((BBFLOAT*)BBARRAYDATAINDEX((openb3d_openb3dcore_TLight_quadraticAtt),(openb3d_openb3dcore_TLight_quadraticAtt)->dims,(*(bbt_11)) * ((BBUINT)bbt_i) + 0U))[(*(bbt_11)) * ((BBUINT)bbt_i) + 0U]));
			bbOnDebugLeaveScope();
		}
	}
	bbOnDebugLeaveScope();
	return 0;
}
BBINT openb3d_openb3dcore_TLight_SetLightValues_i(){
	struct BBDebugScope __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"SetLightValues",
		{
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x900be0a54b5d9948, 189, 0};
	bbOnDebugEnterStm(&__stmt_0);
	{
		BBINT bbt_i=0;
		BBINT bbt_=(openb3d_openb3dcore_TLight_no_lights[0]-1);
		for(;(bbt_i<=bbt_);bbt_i=(bbt_i+1)){
			struct BBDebugScope_1 __scope = {
				BBDEBUGSCOPE_LOCALBLOCK,
				0,
				{
					{
						BBDEBUGDECL_LOCAL,
						"i",
						"i",
						.var_address=&bbt_i
					},
					{
						BBDEBUGDECL_END
					}
				}
			};
			bbOnDebugEnterScope((BBDebugScope *)&__scope);
			struct BBDebugStm __stmt_0 = {0x900be0a54b5d9948, 190, 0};
			bbOnDebugEnterStm(&__stmt_0);
			BBUINT* bbt_2=((BBARRAY)openb3d_openb3dcore_TLight_ambient)->scales + 1;
			glLightfv((GLenum)(16384+bbt_i),(GLenum)4608,(const GLfloat*)(&((BBFLOAT*)BBARRAYDATAINDEX((openb3d_openb3dcore_TLight_ambient),(openb3d_openb3dcore_TLight_ambient)->dims,(*(bbt_2)) * ((BBUINT)bbt_i) + 0U))[(*(bbt_2)) * ((BBUINT)bbt_i) + 0U]));
			struct BBDebugStm __stmt_1 = {0x900be0a54b5d9948, 191, 0};
			bbOnDebugEnterStm(&__stmt_1);
			BBUINT* bbt_3=((BBARRAY)openb3d_openb3dcore_TLight_diffuse)->scales + 1;
			glLightfv((GLenum)(16384+bbt_i),(GLenum)4609,(const GLfloat*)(&((BBFLOAT*)BBARRAYDATAINDEX((openb3d_openb3dcore_TLight_diffuse),(openb3d_openb3dcore_TLight_diffuse)->dims,(*(bbt_3)) * ((BBUINT)bbt_i) + 0U))[(*(bbt_3)) * ((BBUINT)bbt_i) + 0U]));
			struct BBDebugStm __stmt_2 = {0x900be0a54b5d9948, 192, 0};
			bbOnDebugEnterStm(&__stmt_2);
			BBUINT* bbt_4=((BBARRAY)openb3d_openb3dcore_TLight_specular)->scales + 1;
			glLightfv((GLenum)(16384+bbt_i),(GLenum)4610,(const GLfloat*)(&((BBFLOAT*)BBARRAYDATAINDEX((openb3d_openb3dcore_TLight_specular),(openb3d_openb3dcore_TLight_specular)->dims,(*(bbt_4)) * ((BBUINT)bbt_i) + 0U))[(*(bbt_4)) * ((BBUINT)bbt_i) + 0U]));
			struct BBDebugStm __stmt_3 = {0x900be0a54b5d9948, 193, 0};
			bbOnDebugEnterStm(&__stmt_3);
			BBUINT* bbt_5=((BBARRAY)openb3d_openb3dcore_TLight_position)->scales + 1;
			glLightfv((GLenum)(16384+bbt_i),(GLenum)4611,(const GLfloat*)(&((BBFLOAT*)BBARRAYDATAINDEX((openb3d_openb3dcore_TLight_position),(openb3d_openb3dcore_TLight_position)->dims,(*(bbt_5)) * ((BBUINT)bbt_i) + 0U))[(*(bbt_5)) * ((BBUINT)bbt_i) + 0U]));
			struct BBDebugStm __stmt_4 = {0x900be0a54b5d9948, 194, 0};
			bbOnDebugEnterStm(&__stmt_4);
			BBUINT* bbt_6=((BBARRAY)openb3d_openb3dcore_TLight_spotDirection)->scales + 1;
			glLightfv((GLenum)(16384+bbt_i),(GLenum)4612,(const GLfloat*)(&((BBFLOAT*)BBARRAYDATAINDEX((openb3d_openb3dcore_TLight_spotDirection),(openb3d_openb3dcore_TLight_spotDirection)->dims,(*(bbt_6)) * ((BBUINT)bbt_i) + 0U))[(*(bbt_6)) * ((BBUINT)bbt_i) + 0U]));
			struct BBDebugStm __stmt_5 = {0x900be0a54b5d9948, 195, 0};
			bbOnDebugEnterStm(&__stmt_5);
			BBUINT* bbt_7=((BBARRAY)openb3d_openb3dcore_TLight_spotExponent)->scales + 1;
			glLightfv((GLenum)(16384+bbt_i),(GLenum)4613,(const GLfloat*)(&((BBFLOAT*)BBARRAYDATAINDEX((openb3d_openb3dcore_TLight_spotExponent),(openb3d_openb3dcore_TLight_spotExponent)->dims,(*(bbt_7)) * ((BBUINT)bbt_i) + 0U))[(*(bbt_7)) * ((BBUINT)bbt_i) + 0U]));
			struct BBDebugStm __stmt_6 = {0x900be0a54b5d9948, 196, 0};
			bbOnDebugEnterStm(&__stmt_6);
			BBUINT* bbt_8=((BBARRAY)openb3d_openb3dcore_TLight_spotCutoff)->scales + 1;
			glLightfv((GLenum)(16384+bbt_i),(GLenum)4614,(const GLfloat*)(&((BBFLOAT*)BBARRAYDATAINDEX((openb3d_openb3dcore_TLight_spotCutoff),(openb3d_openb3dcore_TLight_spotCutoff)->dims,(*(bbt_8)) * ((BBUINT)bbt_i) + 0U))[(*(bbt_8)) * ((BBUINT)bbt_i) + 0U]));
			struct BBDebugStm __stmt_7 = {0x900be0a54b5d9948, 197, 0};
			bbOnDebugEnterStm(&__stmt_7);
			BBUINT* bbt_9=((BBARRAY)openb3d_openb3dcore_TLight_constantAtt)->scales + 1;
			glLightfv((GLenum)(16384+bbt_i),(GLenum)4615,(const GLfloat*)(&((BBFLOAT*)BBARRAYDATAINDEX((openb3d_openb3dcore_TLight_constantAtt),(openb3d_openb3dcore_TLight_constantAtt)->dims,(*(bbt_9)) * ((BBUINT)bbt_i) + 0U))[(*(bbt_9)) * ((BBUINT)bbt_i) + 0U]));
			struct BBDebugStm __stmt_8 = {0x900be0a54b5d9948, 198, 0};
			bbOnDebugEnterStm(&__stmt_8);
			BBUINT* bbt_10=((BBARRAY)openb3d_openb3dcore_TLight_linearAtt)->scales + 1;
			glLightfv((GLenum)(16384+bbt_i),(GLenum)4616,(const GLfloat*)(&((BBFLOAT*)BBARRAYDATAINDEX((openb3d_openb3dcore_TLight_linearAtt),(openb3d_openb3dcore_TLight_linearAtt)->dims,(*(bbt_10)) * ((BBUINT)bbt_i) + 0U))[(*(bbt_10)) * ((BBUINT)bbt_i) + 0U]));
			struct BBDebugStm __stmt_9 = {0x900be0a54b5d9948, 199, 0};
			bbOnDebugEnterStm(&__stmt_9);
			BBUINT* bbt_11=((BBARRAY)openb3d_openb3dcore_TLight_quadraticAtt)->scales + 1;
			glLightfv((GLenum)(16384+bbt_i),(GLenum)4617,(const GLfloat*)(&((BBFLOAT*)BBARRAYDATAINDEX((openb3d_openb3dcore_TLight_quadraticAtt),(openb3d_openb3dcore_TLight_quadraticAtt)->dims,(*(bbt_11)) * ((BBUINT)bbt_i) + 0U))[(*(bbt_11)) * ((BBUINT)bbt_i) + 0U]));
			bbOnDebugLeaveScope();
		}
	}
	bbOnDebugLeaveScope();
	return 0;
}
BBINT _openb3d_openb3dcore_TLight_FreeEntity(struct openb3d_openb3dcore_TLight_obj* o){
	((struct openb3d_openb3dcore_TLight_obj*)bbNullObjectTest((BBObject*)o));
	struct BBDebugScope_1 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"FreeEntity",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TLight",
				.var_address=&o
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x900be0a54b5d9948, 224, 0};
	bbOnDebugEnterStm(&__stmt_0);
	if(((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tentity_exists !=0){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x900be0a54b5d9948, 225, 0};
		bbOnDebugEnterStm(&__stmt_0);
		brl_linkedlist_ListRemove((struct brl_linkedlist_TList_obj*)openb3d_openb3dcore_TLight_light_list,(BBOBJECT)o);
		struct BBDebugStm __stmt_1 = {0x900be0a54b5d9948, 225, 0};
		bbOnDebugEnterStm(&__stmt_1);
		openb3d_openb3dcore_TLight_light_list_id-=1;
		struct BBDebugStm __stmt_2 = {0x900be0a54b5d9948, 226, 0};
		bbOnDebugEnterStm(&__stmt_2);
		(&openb3d_openb3dcore_TLight)->super->m_FreeEntity((struct openb3d_openb3dcore_TEntity_obj*)o);
		bbOnDebugLeaveScope();
	}
	bbOnDebugLeaveScope();
	return 0;
}
struct openb3d_openb3dcore_TLight_obj* openb3d_openb3dcore_TLight_CreateLight_TTLight_iTTEntity(BBINT bbt_light_type,struct openb3d_openb3dcore_TEntity_obj* bbt_parent){
	BBBYTE* bbt_inst=0;
	struct BBDebugScope_3 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"CreateLight",
		{
			{
				BBDEBUGDECL_LOCAL,
				"light_type",
				"i",
				.var_address=&bbt_light_type
			},
			{
				BBDEBUGDECL_LOCAL,
				"parent",
				":TEntity",
				.var_address=&bbt_parent
			},
			{
				BBDEBUGDECL_LOCAL,
				"inst",
				"*b",
				.var_address=&bbt_inst
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x900be0a54b5d9948, 233, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbt_inst=CreateLight_(bbt_light_type,openb3d_openb3dcore_TEntity_GetInstance_pb_TTEntity((struct openb3d_openb3dcore_TEntity_obj*)bbt_parent));
	struct BBDebugStm __stmt_1 = {0x900be0a54b5d9948, 234, 0};
	bbOnDebugEnterStm(&__stmt_1);
	bbOnDebugLeaveScope();
	return (struct openb3d_openb3dcore_TLight_obj*)openb3d_openb3dcore_TLight_CreateObject_TTLight_pb(bbt_inst);
}
BBINT _openb3d_openb3dcore_TLight_LightRange_f(struct openb3d_openb3dcore_TLight_obj* o,BBFLOAT bbt_Range){
	((struct openb3d_openb3dcore_TLight_obj*)bbNullObjectTest((BBObject*)o));
	struct BBDebugScope_2 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"LightRange",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TLight",
				.var_address=&o
			},
			{
				BBDEBUGDECL_LOCAL,
				"Range",
				"f",
				.var_address=&bbt_Range
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x900be0a54b5d9948, 240, 0};
	bbOnDebugEnterStm(&__stmt_0);
	LightRange_(openb3d_openb3dcore_TEntity_GetInstance_pb_TTEntity((struct openb3d_openb3dcore_TEntity_obj*)((struct openb3d_openb3dcore_TEntity_obj*)bbObjectDowncast((BBOBJECT)o,(BBClass*)&openb3d_openb3dcore_TEntity))),bbt_Range);
	bbOnDebugLeaveScope();
	return 0;
}
BBINT _openb3d_openb3dcore_TLight_LightColor_fff(struct openb3d_openb3dcore_TLight_obj* o,BBFLOAT bbt_red,BBFLOAT bbt_green,BBFLOAT bbt_blue){
	((struct openb3d_openb3dcore_TLight_obj*)bbNullObjectTest((BBObject*)o));
	struct BBDebugScope_4 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"LightColor",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TLight",
				.var_address=&o
			},
			{
				BBDEBUGDECL_LOCAL,
				"red",
				"f",
				.var_address=&bbt_red
			},
			{
				BBDEBUGDECL_LOCAL,
				"green",
				"f",
				.var_address=&bbt_green
			},
			{
				BBDEBUGDECL_LOCAL,
				"blue",
				"f",
				.var_address=&bbt_blue
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x900be0a54b5d9948, 246, 0};
	bbOnDebugEnterStm(&__stmt_0);
	LightColor_(openb3d_openb3dcore_TEntity_GetInstance_pb_TTEntity((struct openb3d_openb3dcore_TEntity_obj*)((struct openb3d_openb3dcore_TEntity_obj*)bbObjectDowncast((BBOBJECT)o,(BBClass*)&openb3d_openb3dcore_TEntity))),bbt_red,bbt_green,bbt_blue);
	bbOnDebugLeaveScope();
	return 0;
}
BBINT _openb3d_openb3dcore_TLight_LightConeAngles_ff(struct openb3d_openb3dcore_TLight_obj* o,BBFLOAT bbt_inner_ang,BBFLOAT bbt_outer_ang){
	((struct openb3d_openb3dcore_TLight_obj*)bbNullObjectTest((BBObject*)o));
	struct BBDebugScope_3 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"LightConeAngles",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TLight",
				.var_address=&o
			},
			{
				BBDEBUGDECL_LOCAL,
				"inner_ang",
				"f",
				.var_address=&bbt_inner_ang
			},
			{
				BBDEBUGDECL_LOCAL,
				"outer_ang",
				"f",
				.var_address=&bbt_outer_ang
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x900be0a54b5d9948, 252, 0};
	bbOnDebugEnterStm(&__stmt_0);
	LightConeAngles_(openb3d_openb3dcore_TEntity_GetInstance_pb_TTEntity((struct openb3d_openb3dcore_TEntity_obj*)((struct openb3d_openb3dcore_TEntity_obj*)bbObjectDowncast((BBOBJECT)o,(BBClass*)&openb3d_openb3dcore_TEntity))),bbt_inner_ang,bbt_outer_ang);
	bbOnDebugLeaveScope();
	return 0;
}
struct openb3d_openb3dcore_TLight_obj* _openb3d_openb3dcore_TLight_CopyEntity_TTEntity(struct openb3d_openb3dcore_TLight_obj* o,struct openb3d_openb3dcore_TEntity_obj* bbt_parent){
	((struct openb3d_openb3dcore_TLight_obj*)bbNullObjectTest((BBObject*)o));
	BBBYTE* bbt_inst=0;
	struct openb3d_openb3dcore_TLight_obj* bbt_light=(struct openb3d_openb3dcore_TLight_obj*)((struct openb3d_openb3dcore_TLight_obj*)&bbNullObject);
	struct BBDebugScope_4 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"CopyEntity",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TLight",
				.var_address=&o
			},
			{
				BBDEBUGDECL_LOCAL,
				"parent",
				":TEntity",
				.var_address=&bbt_parent
			},
			{
				BBDEBUGDECL_LOCAL,
				"inst",
				"*b",
				.var_address=&bbt_inst
			},
			{
				BBDEBUGDECL_LOCAL,
				"light",
				":TLight",
				.var_address=&bbt_light
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x900be0a54b5d9948, 260, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbt_inst=CopyEntity_(openb3d_openb3dcore_TEntity_GetInstance_pb_TTEntity((struct openb3d_openb3dcore_TEntity_obj*)((struct openb3d_openb3dcore_TEntity_obj*)bbObjectDowncast((BBOBJECT)o,(BBClass*)&openb3d_openb3dcore_TEntity))),openb3d_openb3dcore_TEntity_GetInstance_pb_TTEntity((struct openb3d_openb3dcore_TEntity_obj*)bbt_parent));
	struct BBDebugStm __stmt_1 = {0x900be0a54b5d9948, 261, 0};
	bbOnDebugEnterStm(&__stmt_1);
	bbt_light=(struct openb3d_openb3dcore_TLight_obj*)o->clas->f_CreateObject_TTLight_pb(bbt_inst);
	struct BBDebugStm __stmt_2 = {0x900be0a54b5d9948, 262, 0};
	bbOnDebugEnterStm(&__stmt_2);
	if(((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tentity_pick_mode [0]!=0){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x900be0a54b5d9948, 262, 0};
		bbOnDebugEnterStm(&__stmt_0);
		openb3d_openb3dcore_TPick_AddList__i_TTList((struct brl_linkedlist_TList_obj*)openb3d_openb3dcore_TPick_ent_list);
		bbOnDebugLeaveScope();
	}
	struct BBDebugStm __stmt_3 = {0x900be0a54b5d9948, 263, 0};
	bbOnDebugEnterStm(&__stmt_3);
	bbOnDebugLeaveScope();
	return (struct openb3d_openb3dcore_TLight_obj*)bbt_light;
}
BBINT _openb3d_openb3dcore_TLight_Update(struct openb3d_openb3dcore_TLight_obj* o){
	((struct openb3d_openb3dcore_TLight_obj*)bbNullObjectTest((BBObject*)o));
	struct BBDebugScope_1 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"Update",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TLight",
				.var_address=&o
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x900be0a54b5d9948, 270, 0};
	bbOnDebugEnterStm(&__stmt_0);
	LightUpdate_(openb3d_openb3dcore_TEntity_GetInstance_pb_TTEntity((struct openb3d_openb3dcore_TEntity_obj*)((struct openb3d_openb3dcore_TEntity_obj*)bbObjectDowncast((BBOBJECT)o,(BBClass*)&openb3d_openb3dcore_TEntity))));
	bbOnDebugLeaveScope();
	return 0;
}
struct brl_linkedlist_TList_obj* openb3d_openb3dcore_TLight_light_list;
BBINT openb3d_openb3dcore_TLight_light_list_id;
BBINT* openb3d_openb3dcore_TLight_light_no;
BBINT* openb3d_openb3dcore_TLight_no_lights;
BBINT* openb3d_openb3dcore_TLight_max_lights;
BBINT* openb3d_openb3dcore_TLight_gl_light;
BBARRAY openb3d_openb3dcore_TLight_ambient;
BBARRAY openb3d_openb3dcore_TLight_diffuse;
BBARRAY openb3d_openb3dcore_TLight_specular;
BBARRAY openb3d_openb3dcore_TLight_position;
BBARRAY openb3d_openb3dcore_TLight_spotDirection;
BBARRAY openb3d_openb3dcore_TLight_spotExponent;
BBARRAY openb3d_openb3dcore_TLight_spotCutoff;
BBARRAY openb3d_openb3dcore_TLight_constantAtt;
BBARRAY openb3d_openb3dcore_TLight_linearAtt;
BBARRAY openb3d_openb3dcore_TLight_quadraticAtt;
struct BBDebugScope_41 openb3d_openb3dcore_TLight_scope ={
	BBDEBUGSCOPE_USERTYPE,
	"TLight",
	{
		{
			BBDEBUGDECL_FIELD,
			"cast_shadow",
			"*b",
			.field_offset=offsetof(struct openb3d_openb3dcore_TLight_obj,_openb3d_openb3dcore_tlight_cast_shadow)
		},
		{
			BBDEBUGDECL_FIELD,
			"light_type",
			"*b",
			.field_offset=offsetof(struct openb3d_openb3dcore_TLight_obj,_openb3d_openb3dcore_tlight_light_type)
		},
		{
			BBDEBUGDECL_FIELD,
			"Range",
			"*f",
			.field_offset=offsetof(struct openb3d_openb3dcore_TLight_obj,_openb3d_openb3dcore_tlight_range)
		},
		{
			BBDEBUGDECL_FIELD,
			"red",
			"*f",
			.field_offset=offsetof(struct openb3d_openb3dcore_TLight_obj,_openb3d_openb3dcore_tlight_red)
		},
		{
			BBDEBUGDECL_FIELD,
			"green",
			"*f",
			.field_offset=offsetof(struct openb3d_openb3dcore_TLight_obj,_openb3d_openb3dcore_tlight_green)
		},
		{
			BBDEBUGDECL_FIELD,
			"blue",
			"*f",
			.field_offset=offsetof(struct openb3d_openb3dcore_TLight_obj,_openb3d_openb3dcore_tlight_blue)
		},
		{
			BBDEBUGDECL_FIELD,
			"inner_ang",
			"*f",
			.field_offset=offsetof(struct openb3d_openb3dcore_TLight_obj,_openb3d_openb3dcore_tlight_inner_ang)
		},
		{
			BBDEBUGDECL_FIELD,
			"outer_ang",
			"*f",
			.field_offset=offsetof(struct openb3d_openb3dcore_TLight_obj,_openb3d_openb3dcore_tlight_outer_ang)
		},
		{
			BBDEBUGDECL_GLOBAL,
			"light_no",
			"*i",
			.var_address=(void*)&openb3d_openb3dcore_TLight_light_no
		},
		{
			BBDEBUGDECL_GLOBAL,
			"no_lights",
			"*i",
			.var_address=(void*)&openb3d_openb3dcore_TLight_no_lights
		},
		{
			BBDEBUGDECL_GLOBAL,
			"max_lights",
			"*i",
			.var_address=(void*)&openb3d_openb3dcore_TLight_max_lights
		},
		{
			BBDEBUGDECL_GLOBAL,
			"gl_light",
			"*i",
			.var_address=(void*)&openb3d_openb3dcore_TLight_gl_light
		},
		{
			BBDEBUGDECL_GLOBAL,
			"light_list",
			":TList",
			.var_address=(void*)&openb3d_openb3dcore_TLight_light_list
		},
		{
			BBDEBUGDECL_GLOBAL,
			"ambient",
			"[,]f",
			.var_address=(void*)&openb3d_openb3dcore_TLight_ambient
		},
		{
			BBDEBUGDECL_GLOBAL,
			"diffuse",
			"[,]f",
			.var_address=(void*)&openb3d_openb3dcore_TLight_diffuse
		},
		{
			BBDEBUGDECL_GLOBAL,
			"specular",
			"[,]f",
			.var_address=(void*)&openb3d_openb3dcore_TLight_specular
		},
		{
			BBDEBUGDECL_GLOBAL,
			"position",
			"[,]f",
			.var_address=(void*)&openb3d_openb3dcore_TLight_position
		},
		{
			BBDEBUGDECL_GLOBAL,
			"spotDirection",
			"[,]f",
			.var_address=(void*)&openb3d_openb3dcore_TLight_spotDirection
		},
		{
			BBDEBUGDECL_GLOBAL,
			"spotExponent",
			"[,]f",
			.var_address=(void*)&openb3d_openb3dcore_TLight_spotExponent
		},
		{
			BBDEBUGDECL_GLOBAL,
			"spotCutoff",
			"[,]f",
			.var_address=(void*)&openb3d_openb3dcore_TLight_spotCutoff
		},
		{
			BBDEBUGDECL_GLOBAL,
			"constantAtt",
			"[,]f",
			.var_address=(void*)&openb3d_openb3dcore_TLight_constantAtt
		},
		{
			BBDEBUGDECL_GLOBAL,
			"linearAtt",
			"[,]f",
			.var_address=(void*)&openb3d_openb3dcore_TLight_linearAtt
		},
		{
			BBDEBUGDECL_GLOBAL,
			"quadraticAtt",
			"[,]f",
			.var_address=(void*)&openb3d_openb3dcore_TLight_quadraticAtt
		},
		{
			BBDEBUGDECL_GLOBAL,
			"light_list_id",
			"i",
			.var_address=(void*)&openb3d_openb3dcore_TLight_light_list_id
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"New",
			"()i",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_TLight_New
		},
		{
			BBDEBUGDECL_TYPEFUNCTION,
			"CreateObject",
			"(*b):TLight",
			.func_ptr=(BBFuncPtr)&openb3d_openb3dcore_TLight_CreateObject_TTLight_pb
		},
		{
			BBDEBUGDECL_TYPEFUNCTION,
			"InitGlobals",
			"()i",
			.func_ptr=(BBFuncPtr)&openb3d_openb3dcore_TLight_InitGlobals_i
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"InitFields",
			"()i",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_TLight_InitFields
		},
		{
			BBDEBUGDECL_TYPEFUNCTION,
			"DebugGlobals",
			"(i,i)i",
			.func_ptr=(BBFuncPtr)&openb3d_openb3dcore_TLight_DebugGlobals_i_ii
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"DebugFields",
			"(i,i)i",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_TLight_DebugFields_ii
		},
		{
			BBDEBUGDECL_TYPEFUNCTION,
			"AddList_",
			"(:TList)i",
			.func_ptr=(BBFuncPtr)&openb3d_openb3dcore_TLight_AddList__i_TTList
		},
		{
			BBDEBUGDECL_TYPEFUNCTION,
			"CopyList_",
			"(:TList)i",
			.func_ptr=(BBFuncPtr)&openb3d_openb3dcore_TLight_CopyList__i_TTList
		},
		{
			BBDEBUGDECL_TYPEFUNCTION,
			"GetLightValues",
			"()i",
			.func_ptr=(BBFuncPtr)&openb3d_openb3dcore_TLight_GetLightValues_i
		},
		{
			BBDEBUGDECL_TYPEFUNCTION,
			"SetLightValues",
			"()i",
			.func_ptr=(BBFuncPtr)&openb3d_openb3dcore_TLight_SetLightValues_i
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"FreeEntity",
			"()i",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_TLight_FreeEntity
		},
		{
			BBDEBUGDECL_TYPEFUNCTION,
			"CreateLight",
			"(i,:TEntity):TLight",
			.func_ptr=(BBFuncPtr)&openb3d_openb3dcore_TLight_CreateLight_TTLight_iTTEntity
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"LightRange",
			"(f)i",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_TLight_LightRange_f
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"LightColor",
			"(f,f,f)i",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_TLight_LightColor_fff
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"LightConeAngles",
			"(f,f)i",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_TLight_LightConeAngles_ff
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"CopyEntity",
			"(:TEntity):TLight",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_TLight_CopyEntity_TTEntity
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"Update",
			"()i",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_TLight_Update
		},
		{
			BBDEBUGDECL_END
		}
	}
};
struct BBClass_openb3d_openb3dcore_TLight openb3d_openb3dcore_TLight={
	&openb3d_openb3dcore_TEntity,
	bbObjectFree,
	(BBDebugScope*)&openb3d_openb3dcore_TLight_scope,
	sizeof(struct openb3d_openb3dcore_TLight_obj),
	(void (*)(BBOBJECT))_openb3d_openb3dcore_TLight_New,
	(void (*)(BBOBJECT))_openb3d_openb3dcore_TLight_Delete,
	bbObjectToString,
	bbObjectCompare,
	bbObjectSendMessage,
	0,
	0,
	offsetof(struct openb3d_openb3dcore_TLight_obj,_openb3d_openb3dcore_tlight_outer_ang) - offsetof(struct openb3d_openb3dcore_TLight_obj,_openb3d_openb3dcore_tlight_cast_shadow) + sizeof(BBFLOAT*)
	,0
	,offsetof(struct openb3d_openb3dcore_TLight_obj,_openb3d_openb3dcore_tlight_cast_shadow)
	,_openb3d_openb3dcore_TLight_CopyEntity_TTEntity
	,_openb3d_openb3dcore_TLight_Update
	,openb3d_openb3dcore_TEntity_FreeObject_i_pb
	,openb3d_openb3dcore_TEntity_GetObject_TTEntity_pb
	,openb3d_openb3dcore_TEntity_GetInstance_pb_TTEntity
	,openb3d_openb3dcore_TLight_InitGlobals_i
	,_openb3d_openb3dcore_TLight_InitFields
	,_openb3d_openb3dcore_TLight_DebugFields_ii
	,_openb3d_openb3dcore_TEntity_AddList_TTList
	,openb3d_openb3dcore_TLight_AddList__i_TTList
	,_openb3d_openb3dcore_TEntity_CopyList_TTList
	,openb3d_openb3dcore_TLight_CopyList__i_TTList
	,_openb3d_openb3dcore_TEntity_EntityListAdd_TTListTObject
	,_openb3d_openb3dcore_TEntity_EntityListRemove_TTListTObject
	,_openb3d_openb3dcore_TEntity_AddAnimSeq_i
	,_openb3d_openb3dcore_TEntity_SetAnimKey_fiii
	,_openb3d_openb3dcore_TEntity_AlignToVector_fffif
	,_openb3d_openb3dcore_TEntity_GetString_pb
	,_openb3d_openb3dcore_TEntity_SetString_pbS
	,_openb3d_openb3dcore_TLight_FreeEntity
	,_openb3d_openb3dcore_TEntity_FreeEntityList
	,_openb3d_openb3dcore_TEntity_SetParent_TTEntity
	,_openb3d_openb3dcore_TEntity_PositionEntity_fffi
	,_openb3d_openb3dcore_TEntity_MoveEntity_fff
	,_openb3d_openb3dcore_TEntity_TranslateEntity_fffi
	,_openb3d_openb3dcore_TEntity_ScaleEntity_fffi
	,_openb3d_openb3dcore_TEntity_RotateEntity_fffi
	,_openb3d_openb3dcore_TEntity_TurnEntity_fffi
	,_openb3d_openb3dcore_TEntity_PointEntity_TTEntityf
	,_openb3d_openb3dcore_TEntity_LoadAnimSeq_S
	,_openb3d_openb3dcore_TEntity_ExtractAnimSeq_iii
	,_openb3d_openb3dcore_TEntity_Animate_ifii
	,_openb3d_openb3dcore_TEntity_SetAnimTime_fi
	,_openb3d_openb3dcore_TEntity_AnimSeq
	,_openb3d_openb3dcore_TEntity_AnimLength
	,_openb3d_openb3dcore_TEntity_AnimTime
	,_openb3d_openb3dcore_TEntity_Animating
	,_openb3d_openb3dcore_TEntity_EntityColor_fffi
	,_openb3d_openb3dcore_TEntity_EntityAlpha_f
	,_openb3d_openb3dcore_TEntity_EntityShininess_f
	,_openb3d_openb3dcore_TEntity_EntityTexture_TTTextureii
	,_openb3d_openb3dcore_TEntity_EntityBlend_i
	,_openb3d_openb3dcore_TEntity_EntityFX_i
	,_openb3d_openb3dcore_TEntity_PaintEntity_TTBrush
	,_openb3d_openb3dcore_TEntity_GetEntityBrush
	,_openb3d_openb3dcore_TEntity_EntityOrder_i
	,_openb3d_openb3dcore_TEntity_ShowEntity
	,_openb3d_openb3dcore_TEntity_HideEntity
	,_openb3d_openb3dcore_TEntity_NameEntity_S
	,_openb3d_openb3dcore_TEntity_EntityParent_TTEntityi
	,_openb3d_openb3dcore_TEntity_GetParent
	,_openb3d_openb3dcore_TEntity_EntityX_i
	,_openb3d_openb3dcore_TEntity_EntityY_i
	,_openb3d_openb3dcore_TEntity_EntityZ_i
	,_openb3d_openb3dcore_TEntity_EntityPitch_i
	,_openb3d_openb3dcore_TEntity_EntityYaw_i
	,_openb3d_openb3dcore_TEntity_EntityRoll_i
	,_openb3d_openb3dcore_TEntity_EntityClass
	,_openb3d_openb3dcore_TEntity_EntityName
	,_openb3d_openb3dcore_TEntity_CountChildren
	,_openb3d_openb3dcore_TEntity_GetChild_i
	,_openb3d_openb3dcore_TEntity_FindChild_S
	,_openb3d_openb3dcore_TEntity_EntityPick_f
	,_openb3d_openb3dcore_TEntity_LinePick_fffffff
	,_openb3d_openb3dcore_TEntity_EntityVisible_TTEntityTTEntity
	,_openb3d_openb3dcore_TEntity_EntityDistance_TTEntity
	,_openb3d_openb3dcore_TEntity_DeltaYaw_TTEntity
	,_openb3d_openb3dcore_TEntity_DeltaPitch_TTEntity
	,openb3d_openb3dcore_TEntity_TFormPoint_i_fffTTEntityTTEntity
	,openb3d_openb3dcore_TEntity_TFormVector_i_fffTTEntityTTEntity
	,openb3d_openb3dcore_TEntity_TFormNormal_i_fffTTEntityTTEntity
	,openb3d_openb3dcore_TEntity_TFormedX_f
	,openb3d_openb3dcore_TEntity_TFormedY_f
	,openb3d_openb3dcore_TEntity_TFormedZ_f
	,_openb3d_openb3dcore_TEntity_GetMatElement_ii
	,_openb3d_openb3dcore_TEntity_ResetEntity
	,_openb3d_openb3dcore_TEntity_EntityRadius_ff
	,_openb3d_openb3dcore_TEntity_EntityBox_ffffff
	,_openb3d_openb3dcore_TEntity_EntityType_ii
	,_openb3d_openb3dcore_TEntity_EntityPickMode_ii
	,_openb3d_openb3dcore_TEntity_EntityCollided_i
	,_openb3d_openb3dcore_TEntity_CountCollisions
	,_openb3d_openb3dcore_TEntity_CollisionX_i
	,_openb3d_openb3dcore_TEntity_CollisionY_i
	,_openb3d_openb3dcore_TEntity_CollisionZ_i
	,_openb3d_openb3dcore_TEntity_CollisionNX_i
	,_openb3d_openb3dcore_TEntity_CollisionNY_i
	,_openb3d_openb3dcore_TEntity_CollisionNZ_i
	,_openb3d_openb3dcore_TEntity_CollisionTime_i
	,_openb3d_openb3dcore_TEntity_CollisionEntity_i
	,_openb3d_openb3dcore_TEntity_CollisionSurface_i
	,_openb3d_openb3dcore_TEntity_CollisionTriangle_i
	,_openb3d_openb3dcore_TEntity_GetEntityType
	,_openb3d_openb3dcore_TEntity_MeshCullRadius_f
	,_openb3d_openb3dcore_TEntity_EntityScaleX_i
	,_openb3d_openb3dcore_TEntity_EntityScaleY_i
	,_openb3d_openb3dcore_TEntity_EntityScaleZ_i
	,_openb3d_openb3dcore_TEntity_Hidden
	,openb3d_openb3dcore_TEntity_CountAllChildren_i_TTEntityi
	,_openb3d_openb3dcore_TEntity_GetChildFromAll_iviTTEntity
	,_openb3d_openb3dcore_TEntity_ListParents_TTList
	,_openb3d_openb3dcore_TEntity_UpdateMat_b
	,_openb3d_openb3dcore_TEntity_AddParent_TTEntity
	,openb3d_openb3dcore_TEntity_UpdateChildren_i_TTEntity
	,_openb3d_openb3dcore_TEntity_EntityDistanceSquared_TTEntity
	,_openb3d_openb3dcore_TEntity_MQ_Update
	,_openb3d_openb3dcore_TEntity_MQ_GetInvMatrix_TTMatPtr
	,_openb3d_openb3dcore_TEntity_MQ_GetMatrix_TTMatPtr
	,_openb3d_openb3dcore_TEntity_MQ_GetScaleXYZ_vfvfvf
	,_openb3d_openb3dcore_TEntity_MQ_Turn_ffffi
	,openb3d_openb3dcore_TLight_CreateObject_TTLight_pb
	,openb3d_openb3dcore_TLight_DebugGlobals_i_ii
	,openb3d_openb3dcore_TLight_GetLightValues_i
	,openb3d_openb3dcore_TLight_SetLightValues_i
	,openb3d_openb3dcore_TLight_CreateLight_TTLight_iTTEntity
	,_openb3d_openb3dcore_TLight_LightRange_f
	,_openb3d_openb3dcore_TLight_LightColor_fff
	,_openb3d_openb3dcore_TLight_LightConeAngles_ff
};

void _openb3d_openb3dcore_TPivot_New(struct openb3d_openb3dcore_TPivot_obj* o) {
	_openb3d_openb3dcore_TEntity_New((struct openb3d_openb3dcore_TEntity_obj*)o);
	o->clas = &openb3d_openb3dcore_TPivot;
	struct BBDebugScope __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"New",
		{
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x6618501f9a9db79b, 50, 0};
	bbOnDebugEnterStm(&__stmt_0);
	if(openb3d_openb3dcore_TGlobal3D_Log_New!=0){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x6618501f9a9db79b, 51, 0};
		bbOnDebugEnterStm(&__stmt_0);
		brl_blitz_DebugLog((BBString*)&_s219);
		bbOnDebugLeaveScope();
	}
	bbOnDebugLeaveScope();
}
void _openb3d_openb3dcore_TPivot_Delete(struct openb3d_openb3dcore_TPivot_obj* o) {
	struct BBDebugScope_1 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"Delete",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TPivot",
				.var_address=&o
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x6618501f9a9db79b, 58, 0};
	bbOnDebugEnterStm(&__stmt_0);
	if(openb3d_openb3dcore_TGlobal3D_Log_Del!=0){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x6618501f9a9db79b, 59, 0};
		bbOnDebugEnterStm(&__stmt_0);
		brl_blitz_DebugLog((BBString*)&_s220);
		bbOnDebugLeaveScope();
	}
	bbOnDebugLeaveScope();
	_openb3d_openb3dcore_TEntity_Delete((struct openb3d_openb3dcore_TEntity_obj*)o);
}
struct openb3d_openb3dcore_TPivot_obj* openb3d_openb3dcore_TPivot_CreateObject_TTPivot_pb(BBBYTE* bbt_inst){
	struct openb3d_openb3dcore_TPivot_obj* bbt_obj=(struct openb3d_openb3dcore_TPivot_obj*)((struct openb3d_openb3dcore_TPivot_obj*)&bbNullObject);
	struct BBDebugScope_2 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"CreateObject",
		{
			{
				BBDEBUGDECL_LOCAL,
				"inst",
				"*b",
				.var_address=&bbt_inst
			},
			{
				BBDEBUGDECL_LOCAL,
				"obj",
				":TPivot",
				.var_address=&bbt_obj
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x6618501f9a9db79b, 9, 0};
	bbOnDebugEnterStm(&__stmt_0);
	if(bbt_inst==0){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x6618501f9a9db79b, 9, 0};
		bbOnDebugEnterStm(&__stmt_0);
		bbOnDebugLeaveScope();
		bbOnDebugLeaveScope();
		return (struct openb3d_openb3dcore_TPivot_obj*)&bbNullObject;
	}
	struct BBDebugStm __stmt_1 = {0x6618501f9a9db79b, 10, 0};
	bbOnDebugEnterStm(&__stmt_1);
	bbt_obj=(struct openb3d_openb3dcore_TPivot_obj*)(struct openb3d_openb3dcore_TPivot_obj*)bbObjectNew((BBClass *)&openb3d_openb3dcore_TPivot);
	struct BBDebugStm __stmt_2 = {0x6618501f9a9db79b, 12, 0};
	bbOnDebugEnterStm(&__stmt_2);
	((struct brl_map_ptrmap_TPtrMap_obj*)bbNullObjectTest((BBObject*)openb3d_openb3dcore_TEntity_ent_map))->clas->m_Insert_pbTObject((struct brl_map_ptrmap_TPtrMap_obj*)openb3d_openb3dcore_TEntity_ent_map,bbt_inst,(BBOBJECT)bbt_obj);
	struct BBDebugStm __stmt_3 = {0x6618501f9a9db79b, 16, 0};
	bbOnDebugEnterStm(&__stmt_3);
	((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)bbt_obj))->_openb3d_openb3dcore_tentity_instance =bbt_inst;
	struct BBDebugStm __stmt_4 = {0x6618501f9a9db79b, 17, 0};
	bbOnDebugEnterStm(&__stmt_4);
	((struct openb3d_openb3dcore_TPivot_obj*)bbNullObjectTest((BBObject*)bbt_obj))->clas->m_InitFields((struct openb3d_openb3dcore_TPivot_obj*)bbt_obj);
	struct BBDebugStm __stmt_5 = {0x6618501f9a9db79b, 18, 0};
	bbOnDebugEnterStm(&__stmt_5);
	bbOnDebugLeaveScope();
	return (struct openb3d_openb3dcore_TPivot_obj*)bbt_obj;
}
BBINT _openb3d_openb3dcore_TPivot_InitFields(struct openb3d_openb3dcore_TPivot_obj* o){
	((struct openb3d_openb3dcore_TPivot_obj*)bbNullObjectTest((BBObject*)o));
	struct BBDebugScope_1 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"InitFields",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TPivot",
				.var_address=&o
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x6618501f9a9db79b, 24, 0};
	bbOnDebugEnterStm(&__stmt_0);
	(&openb3d_openb3dcore_TPivot)->super->m_InitFields((struct openb3d_openb3dcore_TEntity_obj*)o);
	bbOnDebugLeaveScope();
	return 0;
}
BBINT _openb3d_openb3dcore_TPivot_DebugFields_ii(struct openb3d_openb3dcore_TPivot_obj* o,BBINT bbt_debug_subobjects,BBINT bbt_debug_base_types){
	((struct openb3d_openb3dcore_TPivot_obj*)bbNullObjectTest((BBObject*)o));
	BBSTRING bbt_pad=(&bbEmptyString);
	BBINT bbt_loop=0;
	struct BBDebugScope_5 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"DebugFields",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TPivot",
				.var_address=&o
			},
			{
				BBDEBUGDECL_LOCAL,
				"debug_subobjects",
				"i",
				.var_address=&bbt_debug_subobjects
			},
			{
				BBDEBUGDECL_LOCAL,
				"debug_base_types",
				"i",
				.var_address=&bbt_debug_base_types
			},
			{
				BBDEBUGDECL_LOCAL,
				"pad",
				"$",
				.var_address=&bbt_pad
			},
			{
				BBDEBUGDECL_LOCAL,
				"loop",
				"i",
				.var_address=&bbt_loop
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x6618501f9a9db79b, 30, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbt_pad=((BBString*)&bbEmptyString);
	struct BBDebugStm __stmt_1 = {0x6618501f9a9db79b, 31, 0};
	bbOnDebugEnterStm(&__stmt_1);
	bbt_loop=bbt_debug_subobjects;
	struct BBDebugStm __stmt_2 = {0x6618501f9a9db79b, 32, 0};
	bbOnDebugEnterStm(&__stmt_2);
	if(bbt_debug_base_types>bbt_debug_subobjects){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x6618501f9a9db79b, 32, 0};
		bbOnDebugEnterStm(&__stmt_0);
		bbt_loop=bbt_debug_base_types;
		bbOnDebugLeaveScope();
	}
	struct BBDebugStm __stmt_3 = {0x6618501f9a9db79b, 33, 0};
	bbOnDebugEnterStm(&__stmt_3);
	{
		BBINT bbt_i=1;
		BBINT bbt_=bbt_loop;
		for(;(bbt_i<bbt_);bbt_i=(bbt_i+1)){
			struct BBDebugScope_1 __scope = {
				BBDEBUGSCOPE_LOCALBLOCK,
				0,
				{
					{
						BBDEBUGDECL_LOCAL,
						"i",
						"i",
						.var_address=&bbt_i
					},
					{
						BBDEBUGDECL_END
					}
				}
			};
			bbOnDebugEnterScope((BBDebugScope *)&__scope);
			struct BBDebugStm __stmt_0 = {0x6618501f9a9db79b, 34, 0};
			bbOnDebugEnterStm(&__stmt_0);
			bbt_pad=bbStringConcat(bbt_pad,((BBString*)&_s0));
			bbOnDebugLeaveScope();
		}
	}
	struct BBDebugStm __stmt_4 = {0x6618501f9a9db79b, 36, 0};
	bbOnDebugEnterStm(&__stmt_4);
	if(bbt_debug_subobjects!=0){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x6618501f9a9db79b, 36, 0};
		bbOnDebugEnterStm(&__stmt_0);
		bbt_debug_subobjects+=1;
		bbOnDebugLeaveScope();
	}
	struct BBDebugStm __stmt_5 = {0x6618501f9a9db79b, 37, 0};
	bbOnDebugEnterStm(&__stmt_5);
	if(bbt_debug_base_types!=0){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x6618501f9a9db79b, 37, 0};
		bbOnDebugEnterStm(&__stmt_0);
		bbt_debug_base_types+=1;
		bbOnDebugLeaveScope();
	}
	struct BBDebugStm __stmt_6 = {0x6618501f9a9db79b, 38, 0};
	bbOnDebugEnterStm(&__stmt_6);
	brl_blitz_DebugLog(bbStringConcat(bbStringConcat(bbt_pad,((BBString*)&_s218)),openb3d_openb3dcore_StringPtr(openb3d_openb3dcore_TEntity_GetInstance_pb_TTEntity((struct openb3d_openb3dcore_TEntity_obj*)((struct openb3d_openb3dcore_TEntity_obj*)bbObjectDowncast((BBOBJECT)o,(BBClass*)&openb3d_openb3dcore_TEntity))))));
	struct BBDebugStm __stmt_7 = {0x6618501f9a9db79b, 40, 0};
	bbOnDebugEnterStm(&__stmt_7);
	brl_blitz_DebugLog((BBString*)&bbEmptyString);
	struct BBDebugStm __stmt_8 = {0x6618501f9a9db79b, 42, 0};
	bbOnDebugEnterStm(&__stmt_8);
	if(bbt_debug_base_types!=0){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x6618501f9a9db79b, 42, 0};
		bbOnDebugEnterStm(&__stmt_0);
		(&openb3d_openb3dcore_TPivot)->super->m_DebugFields_ii((struct openb3d_openb3dcore_TEntity_obj*)o,bbt_debug_subobjects,bbt_debug_base_types);
		bbOnDebugLeaveScope();
	}
	bbOnDebugLeaveScope();
	return 0;
}
BBINT _openb3d_openb3dcore_TPivot_FreeEntity(struct openb3d_openb3dcore_TPivot_obj* o){
	((struct openb3d_openb3dcore_TPivot_obj*)bbNullObjectTest((BBObject*)o));
	struct BBDebugScope_1 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"FreeEntity",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TPivot",
				.var_address=&o
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x6618501f9a9db79b, 66, 0};
	bbOnDebugEnterStm(&__stmt_0);
	(&openb3d_openb3dcore_TPivot)->super->m_FreeEntity((struct openb3d_openb3dcore_TEntity_obj*)o);
	bbOnDebugLeaveScope();
	return 0;
}
struct openb3d_openb3dcore_TPivot_obj* openb3d_openb3dcore_TPivot_CreatePivot_TTPivot_TTEntity(struct openb3d_openb3dcore_TEntity_obj* bbt_parent){
	BBBYTE* bbt_inst=0;
	struct BBDebugScope_2 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"CreatePivot",
		{
			{
				BBDEBUGDECL_LOCAL,
				"parent",
				":TEntity",
				.var_address=&bbt_parent
			},
			{
				BBDEBUGDECL_LOCAL,
				"inst",
				"*b",
				.var_address=&bbt_inst
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x6618501f9a9db79b, 72, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbt_inst=CreatePivot_(openb3d_openb3dcore_TEntity_GetInstance_pb_TTEntity((struct openb3d_openb3dcore_TEntity_obj*)bbt_parent));
	struct BBDebugStm __stmt_1 = {0x6618501f9a9db79b, 73, 0};
	bbOnDebugEnterStm(&__stmt_1);
	bbOnDebugLeaveScope();
	return (struct openb3d_openb3dcore_TPivot_obj*)openb3d_openb3dcore_TPivot_CreateObject_TTPivot_pb(bbt_inst);
}
struct openb3d_openb3dcore_TPivot_obj* _openb3d_openb3dcore_TPivot_CopyEntity_TTEntity(struct openb3d_openb3dcore_TPivot_obj* o,struct openb3d_openb3dcore_TEntity_obj* bbt_parent){
	((struct openb3d_openb3dcore_TPivot_obj*)bbNullObjectTest((BBObject*)o));
	BBBYTE* bbt_inst=0;
	struct openb3d_openb3dcore_TPivot_obj* bbt_pivot=(struct openb3d_openb3dcore_TPivot_obj*)((struct openb3d_openb3dcore_TPivot_obj*)&bbNullObject);
	struct BBDebugScope_4 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"CopyEntity",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TPivot",
				.var_address=&o
			},
			{
				BBDEBUGDECL_LOCAL,
				"parent",
				":TEntity",
				.var_address=&bbt_parent
			},
			{
				BBDEBUGDECL_LOCAL,
				"inst",
				"*b",
				.var_address=&bbt_inst
			},
			{
				BBDEBUGDECL_LOCAL,
				"pivot",
				":TPivot",
				.var_address=&bbt_pivot
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x6618501f9a9db79b, 81, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbt_inst=CopyEntity_(openb3d_openb3dcore_TEntity_GetInstance_pb_TTEntity((struct openb3d_openb3dcore_TEntity_obj*)((struct openb3d_openb3dcore_TEntity_obj*)bbObjectDowncast((BBOBJECT)o,(BBClass*)&openb3d_openb3dcore_TEntity))),openb3d_openb3dcore_TEntity_GetInstance_pb_TTEntity((struct openb3d_openb3dcore_TEntity_obj*)bbt_parent));
	struct BBDebugStm __stmt_1 = {0x6618501f9a9db79b, 82, 0};
	bbOnDebugEnterStm(&__stmt_1);
	bbt_pivot=(struct openb3d_openb3dcore_TPivot_obj*)o->clas->f_CreateObject_TTPivot_pb(bbt_inst);
	struct BBDebugStm __stmt_2 = {0x6618501f9a9db79b, 83, 0};
	bbOnDebugEnterStm(&__stmt_2);
	if(((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tentity_pick_mode [0]!=0){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x6618501f9a9db79b, 83, 0};
		bbOnDebugEnterStm(&__stmt_0);
		openb3d_openb3dcore_TPick_AddList__i_TTList((struct brl_linkedlist_TList_obj*)openb3d_openb3dcore_TPick_ent_list);
		bbOnDebugLeaveScope();
	}
	struct BBDebugStm __stmt_3 = {0x6618501f9a9db79b, 84, 0};
	bbOnDebugEnterStm(&__stmt_3);
	bbOnDebugLeaveScope();
	return (struct openb3d_openb3dcore_TPivot_obj*)bbt_pivot;
}
BBINT _openb3d_openb3dcore_TPivot_Update(struct openb3d_openb3dcore_TPivot_obj* o){
	((struct openb3d_openb3dcore_TPivot_obj*)bbNullObjectTest((BBObject*)o));
	struct BBDebugScope_1 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"Update",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TPivot",
				.var_address=&o
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	bbOnDebugLeaveScope();
	return 0;
}
struct BBDebugScope_8 openb3d_openb3dcore_TPivot_scope ={
	BBDEBUGSCOPE_USERTYPE,
	"TPivot",
	{
		{
			BBDEBUGDECL_TYPEMETHOD,
			"New",
			"()i",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_TPivot_New
		},
		{
			BBDEBUGDECL_TYPEFUNCTION,
			"CreateObject",
			"(*b):TPivot",
			.func_ptr=(BBFuncPtr)&openb3d_openb3dcore_TPivot_CreateObject_TTPivot_pb
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"InitFields",
			"()i",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_TPivot_InitFields
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"DebugFields",
			"(i,i)i",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_TPivot_DebugFields_ii
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"FreeEntity",
			"()i",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_TPivot_FreeEntity
		},
		{
			BBDEBUGDECL_TYPEFUNCTION,
			"CreatePivot",
			"(:TEntity):TPivot",
			.func_ptr=(BBFuncPtr)&openb3d_openb3dcore_TPivot_CreatePivot_TTPivot_TTEntity
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"CopyEntity",
			"(:TEntity):TPivot",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_TPivot_CopyEntity_TTEntity
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"Update",
			"()i",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_TPivot_Update
		},
		{
			BBDEBUGDECL_END
		}
	}
};
struct BBClass_openb3d_openb3dcore_TPivot openb3d_openb3dcore_TPivot={
	&openb3d_openb3dcore_TEntity,
	bbObjectFree,
	(BBDebugScope*)&openb3d_openb3dcore_TPivot_scope,
	sizeof(struct openb3d_openb3dcore_TPivot_obj),
	(void (*)(BBOBJECT))_openb3d_openb3dcore_TPivot_New,
	(void (*)(BBOBJECT))_openb3d_openb3dcore_TPivot_Delete,
	bbObjectToString,
	bbObjectCompare,
	bbObjectSendMessage,
	0,
	0,
	0
	,0
	,sizeof(void*)
	,_openb3d_openb3dcore_TPivot_CopyEntity_TTEntity
	,_openb3d_openb3dcore_TPivot_Update
	,openb3d_openb3dcore_TEntity_FreeObject_i_pb
	,openb3d_openb3dcore_TEntity_GetObject_TTEntity_pb
	,openb3d_openb3dcore_TEntity_GetInstance_pb_TTEntity
	,openb3d_openb3dcore_TEntity_InitGlobals_i
	,_openb3d_openb3dcore_TPivot_InitFields
	,_openb3d_openb3dcore_TPivot_DebugFields_ii
	,_openb3d_openb3dcore_TEntity_AddList_TTList
	,openb3d_openb3dcore_TEntity_AddList__i_TTList
	,_openb3d_openb3dcore_TEntity_CopyList_TTList
	,openb3d_openb3dcore_TEntity_CopyList__i_TTList
	,_openb3d_openb3dcore_TEntity_EntityListAdd_TTListTObject
	,_openb3d_openb3dcore_TEntity_EntityListRemove_TTListTObject
	,_openb3d_openb3dcore_TEntity_AddAnimSeq_i
	,_openb3d_openb3dcore_TEntity_SetAnimKey_fiii
	,_openb3d_openb3dcore_TEntity_AlignToVector_fffif
	,_openb3d_openb3dcore_TEntity_GetString_pb
	,_openb3d_openb3dcore_TEntity_SetString_pbS
	,_openb3d_openb3dcore_TPivot_FreeEntity
	,_openb3d_openb3dcore_TEntity_FreeEntityList
	,_openb3d_openb3dcore_TEntity_SetParent_TTEntity
	,_openb3d_openb3dcore_TEntity_PositionEntity_fffi
	,_openb3d_openb3dcore_TEntity_MoveEntity_fff
	,_openb3d_openb3dcore_TEntity_TranslateEntity_fffi
	,_openb3d_openb3dcore_TEntity_ScaleEntity_fffi
	,_openb3d_openb3dcore_TEntity_RotateEntity_fffi
	,_openb3d_openb3dcore_TEntity_TurnEntity_fffi
	,_openb3d_openb3dcore_TEntity_PointEntity_TTEntityf
	,_openb3d_openb3dcore_TEntity_LoadAnimSeq_S
	,_openb3d_openb3dcore_TEntity_ExtractAnimSeq_iii
	,_openb3d_openb3dcore_TEntity_Animate_ifii
	,_openb3d_openb3dcore_TEntity_SetAnimTime_fi
	,_openb3d_openb3dcore_TEntity_AnimSeq
	,_openb3d_openb3dcore_TEntity_AnimLength
	,_openb3d_openb3dcore_TEntity_AnimTime
	,_openb3d_openb3dcore_TEntity_Animating
	,_openb3d_openb3dcore_TEntity_EntityColor_fffi
	,_openb3d_openb3dcore_TEntity_EntityAlpha_f
	,_openb3d_openb3dcore_TEntity_EntityShininess_f
	,_openb3d_openb3dcore_TEntity_EntityTexture_TTTextureii
	,_openb3d_openb3dcore_TEntity_EntityBlend_i
	,_openb3d_openb3dcore_TEntity_EntityFX_i
	,_openb3d_openb3dcore_TEntity_PaintEntity_TTBrush
	,_openb3d_openb3dcore_TEntity_GetEntityBrush
	,_openb3d_openb3dcore_TEntity_EntityOrder_i
	,_openb3d_openb3dcore_TEntity_ShowEntity
	,_openb3d_openb3dcore_TEntity_HideEntity
	,_openb3d_openb3dcore_TEntity_NameEntity_S
	,_openb3d_openb3dcore_TEntity_EntityParent_TTEntityi
	,_openb3d_openb3dcore_TEntity_GetParent
	,_openb3d_openb3dcore_TEntity_EntityX_i
	,_openb3d_openb3dcore_TEntity_EntityY_i
	,_openb3d_openb3dcore_TEntity_EntityZ_i
	,_openb3d_openb3dcore_TEntity_EntityPitch_i
	,_openb3d_openb3dcore_TEntity_EntityYaw_i
	,_openb3d_openb3dcore_TEntity_EntityRoll_i
	,_openb3d_openb3dcore_TEntity_EntityClass
	,_openb3d_openb3dcore_TEntity_EntityName
	,_openb3d_openb3dcore_TEntity_CountChildren
	,_openb3d_openb3dcore_TEntity_GetChild_i
	,_openb3d_openb3dcore_TEntity_FindChild_S
	,_openb3d_openb3dcore_TEntity_EntityPick_f
	,_openb3d_openb3dcore_TEntity_LinePick_fffffff
	,_openb3d_openb3dcore_TEntity_EntityVisible_TTEntityTTEntity
	,_openb3d_openb3dcore_TEntity_EntityDistance_TTEntity
	,_openb3d_openb3dcore_TEntity_DeltaYaw_TTEntity
	,_openb3d_openb3dcore_TEntity_DeltaPitch_TTEntity
	,openb3d_openb3dcore_TEntity_TFormPoint_i_fffTTEntityTTEntity
	,openb3d_openb3dcore_TEntity_TFormVector_i_fffTTEntityTTEntity
	,openb3d_openb3dcore_TEntity_TFormNormal_i_fffTTEntityTTEntity
	,openb3d_openb3dcore_TEntity_TFormedX_f
	,openb3d_openb3dcore_TEntity_TFormedY_f
	,openb3d_openb3dcore_TEntity_TFormedZ_f
	,_openb3d_openb3dcore_TEntity_GetMatElement_ii
	,_openb3d_openb3dcore_TEntity_ResetEntity
	,_openb3d_openb3dcore_TEntity_EntityRadius_ff
	,_openb3d_openb3dcore_TEntity_EntityBox_ffffff
	,_openb3d_openb3dcore_TEntity_EntityType_ii
	,_openb3d_openb3dcore_TEntity_EntityPickMode_ii
	,_openb3d_openb3dcore_TEntity_EntityCollided_i
	,_openb3d_openb3dcore_TEntity_CountCollisions
	,_openb3d_openb3dcore_TEntity_CollisionX_i
	,_openb3d_openb3dcore_TEntity_CollisionY_i
	,_openb3d_openb3dcore_TEntity_CollisionZ_i
	,_openb3d_openb3dcore_TEntity_CollisionNX_i
	,_openb3d_openb3dcore_TEntity_CollisionNY_i
	,_openb3d_openb3dcore_TEntity_CollisionNZ_i
	,_openb3d_openb3dcore_TEntity_CollisionTime_i
	,_openb3d_openb3dcore_TEntity_CollisionEntity_i
	,_openb3d_openb3dcore_TEntity_CollisionSurface_i
	,_openb3d_openb3dcore_TEntity_CollisionTriangle_i
	,_openb3d_openb3dcore_TEntity_GetEntityType
	,_openb3d_openb3dcore_TEntity_MeshCullRadius_f
	,_openb3d_openb3dcore_TEntity_EntityScaleX_i
	,_openb3d_openb3dcore_TEntity_EntityScaleY_i
	,_openb3d_openb3dcore_TEntity_EntityScaleZ_i
	,_openb3d_openb3dcore_TEntity_Hidden
	,openb3d_openb3dcore_TEntity_CountAllChildren_i_TTEntityi
	,_openb3d_openb3dcore_TEntity_GetChildFromAll_iviTTEntity
	,_openb3d_openb3dcore_TEntity_ListParents_TTList
	,_openb3d_openb3dcore_TEntity_UpdateMat_b
	,_openb3d_openb3dcore_TEntity_AddParent_TTEntity
	,openb3d_openb3dcore_TEntity_UpdateChildren_i_TTEntity
	,_openb3d_openb3dcore_TEntity_EntityDistanceSquared_TTEntity
	,_openb3d_openb3dcore_TEntity_MQ_Update
	,_openb3d_openb3dcore_TEntity_MQ_GetInvMatrix_TTMatPtr
	,_openb3d_openb3dcore_TEntity_MQ_GetMatrix_TTMatPtr
	,_openb3d_openb3dcore_TEntity_MQ_GetScaleXYZ_vfvfvf
	,_openb3d_openb3dcore_TEntity_MQ_Turn_ffffi
	,openb3d_openb3dcore_TPivot_CreateObject_TTPivot_pb
	,openb3d_openb3dcore_TPivot_CreatePivot_TTPivot_TTEntity
};

void _openb3d_openb3dcore_TMesh_New(struct openb3d_openb3dcore_TMesh_obj* o) {
	_openb3d_openb3dcore_TEntity_New((struct openb3d_openb3dcore_TEntity_obj*)o);
	o->clas = &openb3d_openb3dcore_TMesh;
	((struct openb3d_openb3dcore_TMesh_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmesh_no_surfs = 0;
	((struct openb3d_openb3dcore_TMesh_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmesh_surf_list = (struct brl_linkedlist_TList_obj*)brl_linkedlist_CreateList();
	((struct openb3d_openb3dcore_TMesh_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmesh_anim_surf_list = (struct brl_linkedlist_TList_obj*)brl_linkedlist_CreateList();
	((struct openb3d_openb3dcore_TMesh_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmesh_bones = (struct brl_linkedlist_TList_obj*)brl_linkedlist_CreateList();
	((struct openb3d_openb3dcore_TMesh_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmesh_mat_sp = (struct openb3d_openb3dcore_TMatPtr_obj*)((struct openb3d_openb3dcore_TMatPtr_obj*)&bbNullObject);
	((struct openb3d_openb3dcore_TMesh_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmesh_reset_col_tree = 0;
	((struct openb3d_openb3dcore_TMesh_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmesh_reset_bounds = 0;
	((struct openb3d_openb3dcore_TMesh_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmesh_min_x = 0;
	((struct openb3d_openb3dcore_TMesh_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmesh_min_y = 0;
	((struct openb3d_openb3dcore_TMesh_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmesh_min_z = 0;
	((struct openb3d_openb3dcore_TMesh_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmesh_max_x = 0;
	((struct openb3d_openb3dcore_TMesh_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmesh_max_y = 0;
	((struct openb3d_openb3dcore_TMesh_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmesh_max_z = 0;
	((struct openb3d_openb3dcore_TMesh_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmesh_shared_surf = 0;
	((struct openb3d_openb3dcore_TMesh_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmesh_shared_anim_surf = 0;
	((struct openb3d_openb3dcore_TMesh_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmesh_plane_divisions = 1;
	((struct openb3d_openb3dcore_TMesh_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmesh_surf_list_id = 0;
	((struct openb3d_openb3dcore_TMesh_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmesh_anim_surf_list_id = 0;
	((struct openb3d_openb3dcore_TMesh_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmesh_bones_id = 0;
	struct BBDebugScope __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"New",
		{
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x852c1a4e4bd2c08d, 644, 0};
	bbOnDebugEnterStm(&__stmt_0);
	if(openb3d_openb3dcore_TGlobal3D_Log_New!=0){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x852c1a4e4bd2c08d, 645, 0};
		bbOnDebugEnterStm(&__stmt_0);
		brl_blitz_DebugLog((BBString*)&_s244);
		bbOnDebugLeaveScope();
	}
	bbOnDebugLeaveScope();
}
void _openb3d_openb3dcore_TMesh_Delete(struct openb3d_openb3dcore_TMesh_obj* o) {
	struct BBDebugScope_1 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"Delete",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TMesh",
				.var_address=&o
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x852c1a4e4bd2c08d, 652, 0};
	bbOnDebugEnterStm(&__stmt_0);
	if(openb3d_openb3dcore_TGlobal3D_Log_Del!=0){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x852c1a4e4bd2c08d, 653, 0};
		bbOnDebugEnterStm(&__stmt_0);
		brl_blitz_DebugLog((BBString*)&_s245);
		bbOnDebugLeaveScope();
	}
	bbOnDebugLeaveScope();
	_openb3d_openb3dcore_TEntity_Delete((struct openb3d_openb3dcore_TEntity_obj*)o);
}
struct openb3d_openb3dcore_TMesh_obj* openb3d_openb3dcore_TMesh_CreateObject_TTMesh_pb(BBBYTE* bbt_inst){
	struct openb3d_openb3dcore_TMesh_obj* bbt_obj=(struct openb3d_openb3dcore_TMesh_obj*)((struct openb3d_openb3dcore_TMesh_obj*)&bbNullObject);
	struct BBDebugScope_2 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"CreateObject",
		{
			{
				BBDEBUGDECL_LOCAL,
				"inst",
				"*b",
				.var_address=&bbt_inst
			},
			{
				BBDEBUGDECL_LOCAL,
				"obj",
				":TMesh",
				.var_address=&bbt_obj
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x852c1a4e4bd2c08d, 42, 0};
	bbOnDebugEnterStm(&__stmt_0);
	if(bbt_inst==0){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x852c1a4e4bd2c08d, 42, 0};
		bbOnDebugEnterStm(&__stmt_0);
		bbOnDebugLeaveScope();
		bbOnDebugLeaveScope();
		return (struct openb3d_openb3dcore_TMesh_obj*)&bbNullObject;
	}
	struct BBDebugStm __stmt_1 = {0x852c1a4e4bd2c08d, 43, 0};
	bbOnDebugEnterStm(&__stmt_1);
	bbt_obj=(struct openb3d_openb3dcore_TMesh_obj*)(struct openb3d_openb3dcore_TMesh_obj*)bbObjectNew((BBClass *)&openb3d_openb3dcore_TMesh);
	struct BBDebugStm __stmt_2 = {0x852c1a4e4bd2c08d, 45, 0};
	bbOnDebugEnterStm(&__stmt_2);
	((struct brl_map_ptrmap_TPtrMap_obj*)bbNullObjectTest((BBObject*)openb3d_openb3dcore_TEntity_ent_map))->clas->m_Insert_pbTObject((struct brl_map_ptrmap_TPtrMap_obj*)openb3d_openb3dcore_TEntity_ent_map,bbt_inst,(BBOBJECT)bbt_obj);
	struct BBDebugStm __stmt_3 = {0x852c1a4e4bd2c08d, 49, 0};
	bbOnDebugEnterStm(&__stmt_3);
	((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)bbt_obj))->_openb3d_openb3dcore_tentity_instance =bbt_inst;
	struct BBDebugStm __stmt_4 = {0x852c1a4e4bd2c08d, 50, 0};
	bbOnDebugEnterStm(&__stmt_4);
	((struct openb3d_openb3dcore_TMesh_obj*)bbNullObjectTest((BBObject*)bbt_obj))->clas->m_InitFields((struct openb3d_openb3dcore_TMesh_obj*)bbt_obj);
	struct BBDebugStm __stmt_5 = {0x852c1a4e4bd2c08d, 51, 0};
	bbOnDebugEnterStm(&__stmt_5);
	bbOnDebugLeaveScope();
	return (struct openb3d_openb3dcore_TMesh_obj*)bbt_obj;
}
BBINT _openb3d_openb3dcore_TMesh_InitFields(struct openb3d_openb3dcore_TMesh_obj* o){
	((struct openb3d_openb3dcore_TMesh_obj*)bbNullObjectTest((BBObject*)o));
	BBBYTE* bbt_inst=0;
	struct BBDebugScope_2 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"InitFields",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TMesh",
				.var_address=&o
			},
			{
				BBDEBUGDECL_LOCAL,
				"inst",
				"*b",
				.var_address=&bbt_inst
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x852c1a4e4bd2c08d, 57, 0};
	bbOnDebugEnterStm(&__stmt_0);
	((struct openb3d_openb3dcore_TMesh_obj*)bbNullObjectTest((BBObject*)o));
	((struct openb3d_openb3dcore_TMesh_obj*)o)->clas->m_CopyList_TTList((struct openb3d_openb3dcore_TMesh_obj*)o,(struct brl_linkedlist_TList_obj*)((struct openb3d_openb3dcore_TMesh_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmesh_surf_list );
	struct BBDebugStm __stmt_1 = {0x852c1a4e4bd2c08d, 58, 0};
	bbOnDebugEnterStm(&__stmt_1);
	((struct openb3d_openb3dcore_TMesh_obj*)bbNullObjectTest((BBObject*)o));
	((struct openb3d_openb3dcore_TMesh_obj*)o)->clas->m_CopyList_TTList((struct openb3d_openb3dcore_TMesh_obj*)o,(struct brl_linkedlist_TList_obj*)((struct openb3d_openb3dcore_TMesh_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmesh_anim_surf_list );
	struct BBDebugStm __stmt_2 = {0x852c1a4e4bd2c08d, 59, 0};
	bbOnDebugEnterStm(&__stmt_2);
	((struct openb3d_openb3dcore_TMesh_obj*)bbNullObjectTest((BBObject*)o));
	((struct openb3d_openb3dcore_TMesh_obj*)o)->clas->m_CopyList_TTList((struct openb3d_openb3dcore_TMesh_obj*)o,(struct brl_linkedlist_TList_obj*)((struct openb3d_openb3dcore_TMesh_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmesh_bones );
	struct BBDebugStm __stmt_3 = {0x852c1a4e4bd2c08d, 61, 0};
	bbOnDebugEnterStm(&__stmt_3);
	(&openb3d_openb3dcore_TMesh)->super->m_InitFields((struct openb3d_openb3dcore_TEntity_obj*)o);
	struct BBDebugStm __stmt_4 = {0x852c1a4e4bd2c08d, 64, 0};
	bbOnDebugEnterStm(&__stmt_4);
	((struct openb3d_openb3dcore_TMesh_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmesh_no_surfs =MeshInt_(openb3d_openb3dcore_TEntity_GetInstance_pb_TTEntity((struct openb3d_openb3dcore_TEntity_obj*)((struct openb3d_openb3dcore_TEntity_obj*)bbObjectDowncast((BBOBJECT)o,(BBClass*)&openb3d_openb3dcore_TEntity))),1);
	struct BBDebugStm __stmt_5 = {0x852c1a4e4bd2c08d, 65, 0};
	bbOnDebugEnterStm(&__stmt_5);
	((struct openb3d_openb3dcore_TMesh_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmesh_reset_col_tree =MeshInt_(openb3d_openb3dcore_TEntity_GetInstance_pb_TTEntity((struct openb3d_openb3dcore_TEntity_obj*)((struct openb3d_openb3dcore_TEntity_obj*)bbObjectDowncast((BBOBJECT)o,(BBClass*)&openb3d_openb3dcore_TEntity))),7);
	struct BBDebugStm __stmt_6 = {0x852c1a4e4bd2c08d, 66, 0};
	bbOnDebugEnterStm(&__stmt_6);
	((struct openb3d_openb3dcore_TMesh_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmesh_reset_bounds =MeshInt_(openb3d_openb3dcore_TEntity_GetInstance_pb_TTEntity((struct openb3d_openb3dcore_TEntity_obj*)((struct openb3d_openb3dcore_TEntity_obj*)bbObjectDowncast((BBOBJECT)o,(BBClass*)&openb3d_openb3dcore_TEntity))),8);
	struct BBDebugStm __stmt_7 = {0x852c1a4e4bd2c08d, 67, 0};
	bbOnDebugEnterStm(&__stmt_7);
	((struct openb3d_openb3dcore_TMesh_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmesh_shared_surf =MeshInt_(openb3d_openb3dcore_TEntity_GetInstance_pb_TTEntity((struct openb3d_openb3dcore_TEntity_obj*)((struct openb3d_openb3dcore_TEntity_obj*)bbObjectDowncast((BBOBJECT)o,(BBClass*)&openb3d_openb3dcore_TEntity))),15);
	struct BBDebugStm __stmt_8 = {0x852c1a4e4bd2c08d, 68, 0};
	bbOnDebugEnterStm(&__stmt_8);
	((struct openb3d_openb3dcore_TMesh_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmesh_shared_anim_surf =MeshInt_(openb3d_openb3dcore_TEntity_GetInstance_pb_TTEntity((struct openb3d_openb3dcore_TEntity_obj*)((struct openb3d_openb3dcore_TEntity_obj*)bbObjectDowncast((BBOBJECT)o,(BBClass*)&openb3d_openb3dcore_TEntity))),16);
	struct BBDebugStm __stmt_9 = {0x852c1a4e4bd2c08d, 71, 0};
	bbOnDebugEnterStm(&__stmt_9);
	((struct openb3d_openb3dcore_TMesh_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmesh_min_x =MeshFloat_(openb3d_openb3dcore_TEntity_GetInstance_pb_TTEntity((struct openb3d_openb3dcore_TEntity_obj*)((struct openb3d_openb3dcore_TEntity_obj*)bbObjectDowncast((BBOBJECT)o,(BBClass*)&openb3d_openb3dcore_TEntity))),9);
	struct BBDebugStm __stmt_10 = {0x852c1a4e4bd2c08d, 72, 0};
	bbOnDebugEnterStm(&__stmt_10);
	((struct openb3d_openb3dcore_TMesh_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmesh_min_y =MeshFloat_(openb3d_openb3dcore_TEntity_GetInstance_pb_TTEntity((struct openb3d_openb3dcore_TEntity_obj*)((struct openb3d_openb3dcore_TEntity_obj*)bbObjectDowncast((BBOBJECT)o,(BBClass*)&openb3d_openb3dcore_TEntity))),10);
	struct BBDebugStm __stmt_11 = {0x852c1a4e4bd2c08d, 73, 0};
	bbOnDebugEnterStm(&__stmt_11);
	((struct openb3d_openb3dcore_TMesh_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmesh_min_z =MeshFloat_(openb3d_openb3dcore_TEntity_GetInstance_pb_TTEntity((struct openb3d_openb3dcore_TEntity_obj*)((struct openb3d_openb3dcore_TEntity_obj*)bbObjectDowncast((BBOBJECT)o,(BBClass*)&openb3d_openb3dcore_TEntity))),11);
	struct BBDebugStm __stmt_12 = {0x852c1a4e4bd2c08d, 74, 0};
	bbOnDebugEnterStm(&__stmt_12);
	((struct openb3d_openb3dcore_TMesh_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmesh_max_x =MeshFloat_(openb3d_openb3dcore_TEntity_GetInstance_pb_TTEntity((struct openb3d_openb3dcore_TEntity_obj*)((struct openb3d_openb3dcore_TEntity_obj*)bbObjectDowncast((BBOBJECT)o,(BBClass*)&openb3d_openb3dcore_TEntity))),12);
	struct BBDebugStm __stmt_13 = {0x852c1a4e4bd2c08d, 75, 0};
	bbOnDebugEnterStm(&__stmt_13);
	((struct openb3d_openb3dcore_TMesh_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmesh_max_y =MeshFloat_(openb3d_openb3dcore_TEntity_GetInstance_pb_TTEntity((struct openb3d_openb3dcore_TEntity_obj*)((struct openb3d_openb3dcore_TEntity_obj*)bbObjectDowncast((BBOBJECT)o,(BBClass*)&openb3d_openb3dcore_TEntity))),13);
	struct BBDebugStm __stmt_14 = {0x852c1a4e4bd2c08d, 76, 0};
	bbOnDebugEnterStm(&__stmt_14);
	((struct openb3d_openb3dcore_TMesh_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmesh_max_z =MeshFloat_(openb3d_openb3dcore_TEntity_GetInstance_pb_TTEntity((struct openb3d_openb3dcore_TEntity_obj*)((struct openb3d_openb3dcore_TEntity_obj*)bbObjectDowncast((BBOBJECT)o,(BBClass*)&openb3d_openb3dcore_TEntity))),14);
	struct BBDebugStm __stmt_15 = {0x852c1a4e4bd2c08d, 79, 0};
	bbOnDebugEnterStm(&__stmt_15);
	bbt_inst=MeshMatrix_(openb3d_openb3dcore_TEntity_GetInstance_pb_TTEntity((struct openb3d_openb3dcore_TEntity_obj*)((struct openb3d_openb3dcore_TEntity_obj*)bbObjectDowncast((BBOBJECT)o,(BBClass*)&openb3d_openb3dcore_TEntity))),5);
	struct BBDebugStm __stmt_16 = {0x852c1a4e4bd2c08d, 80, 0};
	bbOnDebugEnterStm(&__stmt_16);
	((struct openb3d_openb3dcore_TMesh_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmesh_mat_sp =(struct openb3d_openb3dcore_TMatPtr_obj*)openb3d_openb3dcore_TMatPtr_GetObject_TTMatPtr_pb(bbt_inst);
	struct BBDebugStm __stmt_17 = {0x852c1a4e4bd2c08d, 81, 0};
	bbOnDebugEnterStm(&__stmt_17);
	if((((BBOBJECT)((struct openb3d_openb3dcore_TMesh_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmesh_mat_sp )==&bbNullObject) && (bbt_inst!=0)){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x852c1a4e4bd2c08d, 81, 0};
		bbOnDebugEnterStm(&__stmt_0);
		((struct openb3d_openb3dcore_TMesh_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmesh_mat_sp =(struct openb3d_openb3dcore_TMatPtr_obj*)openb3d_openb3dcore_TMatPtr_CreateObject_TTMatPtr_pb(bbt_inst);
		bbOnDebugLeaveScope();
	}
	bbOnDebugLeaveScope();
	return 0;
}
BBINT _openb3d_openb3dcore_TMesh_DebugFields_ii(struct openb3d_openb3dcore_TMesh_obj* o,BBINT bbt_debug_subobjects,BBINT bbt_debug_base_types){
	((struct openb3d_openb3dcore_TMesh_obj*)bbNullObjectTest((BBObject*)o));
	BBSTRING bbt_pad=(&bbEmptyString);
	BBINT bbt_loop=0;
	struct BBDebugScope_5 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"DebugFields",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TMesh",
				.var_address=&o
			},
			{
				BBDEBUGDECL_LOCAL,
				"debug_subobjects",
				"i",
				.var_address=&bbt_debug_subobjects
			},
			{
				BBDEBUGDECL_LOCAL,
				"debug_base_types",
				"i",
				.var_address=&bbt_debug_base_types
			},
			{
				BBDEBUGDECL_LOCAL,
				"pad",
				"$",
				.var_address=&bbt_pad
			},
			{
				BBDEBUGDECL_LOCAL,
				"loop",
				"i",
				.var_address=&bbt_loop
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x852c1a4e4bd2c08d, 87, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbt_pad=((BBString*)&bbEmptyString);
	struct BBDebugStm __stmt_1 = {0x852c1a4e4bd2c08d, 88, 0};
	bbOnDebugEnterStm(&__stmt_1);
	bbt_loop=bbt_debug_subobjects;
	struct BBDebugStm __stmt_2 = {0x852c1a4e4bd2c08d, 89, 0};
	bbOnDebugEnterStm(&__stmt_2);
	if(bbt_debug_base_types>bbt_debug_subobjects){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x852c1a4e4bd2c08d, 89, 0};
		bbOnDebugEnterStm(&__stmt_0);
		bbt_loop=bbt_debug_base_types;
		bbOnDebugLeaveScope();
	}
	struct BBDebugStm __stmt_3 = {0x852c1a4e4bd2c08d, 90, 0};
	bbOnDebugEnterStm(&__stmt_3);
	{
		BBINT bbt_i=1;
		BBINT bbt_=bbt_loop;
		for(;(bbt_i<bbt_);bbt_i=(bbt_i+1)){
			struct BBDebugScope_1 __scope = {
				BBDEBUGSCOPE_LOCALBLOCK,
				0,
				{
					{
						BBDEBUGDECL_LOCAL,
						"i",
						"i",
						.var_address=&bbt_i
					},
					{
						BBDEBUGDECL_END
					}
				}
			};
			bbOnDebugEnterScope((BBDebugScope *)&__scope);
			struct BBDebugStm __stmt_0 = {0x852c1a4e4bd2c08d, 91, 0};
			bbOnDebugEnterStm(&__stmt_0);
			bbt_pad=bbStringConcat(bbt_pad,((BBString*)&_s0));
			bbOnDebugLeaveScope();
		}
	}
	struct BBDebugStm __stmt_4 = {0x852c1a4e4bd2c08d, 93, 0};
	bbOnDebugEnterStm(&__stmt_4);
	if(bbt_debug_subobjects!=0){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x852c1a4e4bd2c08d, 93, 0};
		bbOnDebugEnterStm(&__stmt_0);
		bbt_debug_subobjects+=1;
		bbOnDebugLeaveScope();
	}
	struct BBDebugStm __stmt_5 = {0x852c1a4e4bd2c08d, 94, 0};
	bbOnDebugEnterStm(&__stmt_5);
	if(bbt_debug_base_types!=0){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x852c1a4e4bd2c08d, 94, 0};
		bbOnDebugEnterStm(&__stmt_0);
		bbt_debug_base_types+=1;
		bbOnDebugLeaveScope();
	}
	struct BBDebugStm __stmt_6 = {0x852c1a4e4bd2c08d, 95, 0};
	bbOnDebugEnterStm(&__stmt_6);
	brl_blitz_DebugLog(bbStringConcat(bbStringConcat(bbt_pad,((BBString*)&_s221)),openb3d_openb3dcore_StringPtr(openb3d_openb3dcore_TEntity_GetInstance_pb_TTEntity((struct openb3d_openb3dcore_TEntity_obj*)((struct openb3d_openb3dcore_TEntity_obj*)bbObjectDowncast((BBOBJECT)o,(BBClass*)&openb3d_openb3dcore_TEntity))))));
	struct BBDebugStm __stmt_7 = {0x852c1a4e4bd2c08d, 98, 0};
	bbOnDebugEnterStm(&__stmt_7);
	if(((struct openb3d_openb3dcore_TMesh_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmesh_no_surfs !=0){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x852c1a4e4bd2c08d, 98, 0};
		bbOnDebugEnterStm(&__stmt_0);
		brl_blitz_DebugLog(bbStringConcat(bbStringConcat(bbt_pad,((BBString*)&_s222)),bbStringFromInt(((struct openb3d_openb3dcore_TMesh_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmesh_no_surfs [0])));
		bbOnDebugLeaveScope();
	}else{
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x852c1a4e4bd2c08d, 98, 0};
		bbOnDebugEnterStm(&__stmt_0);
		brl_blitz_DebugLog(bbStringConcat(bbt_pad,((BBString*)&_s223)));
		bbOnDebugLeaveScope();
	}
	struct BBDebugStm __stmt_8 = {0x852c1a4e4bd2c08d, 99, 0};
	bbOnDebugEnterStm(&__stmt_8);
	if(((struct openb3d_openb3dcore_TMesh_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmesh_reset_col_tree !=0){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x852c1a4e4bd2c08d, 99, 0};
		bbOnDebugEnterStm(&__stmt_0);
		brl_blitz_DebugLog(bbStringConcat(bbStringConcat(bbt_pad,((BBString*)&_s224)),bbStringFromInt(((struct openb3d_openb3dcore_TMesh_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmesh_reset_col_tree [0])));
		bbOnDebugLeaveScope();
	}else{
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x852c1a4e4bd2c08d, 99, 0};
		bbOnDebugEnterStm(&__stmt_0);
		brl_blitz_DebugLog(bbStringConcat(bbt_pad,((BBString*)&_s225)));
		bbOnDebugLeaveScope();
	}
	struct BBDebugStm __stmt_9 = {0x852c1a4e4bd2c08d, 100, 0};
	bbOnDebugEnterStm(&__stmt_9);
	if(((struct openb3d_openb3dcore_TMesh_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmesh_reset_bounds !=0){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x852c1a4e4bd2c08d, 100, 0};
		bbOnDebugEnterStm(&__stmt_0);
		brl_blitz_DebugLog(bbStringConcat(bbStringConcat(bbt_pad,((BBString*)&_s226)),bbStringFromInt(((struct openb3d_openb3dcore_TMesh_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmesh_reset_bounds [0])));
		bbOnDebugLeaveScope();
	}else{
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x852c1a4e4bd2c08d, 100, 0};
		bbOnDebugEnterStm(&__stmt_0);
		brl_blitz_DebugLog(bbStringConcat(bbt_pad,((BBString*)&_s227)));
		bbOnDebugLeaveScope();
	}
	struct BBDebugStm __stmt_10 = {0x852c1a4e4bd2c08d, 103, 0};
	bbOnDebugEnterStm(&__stmt_10);
	if(((struct openb3d_openb3dcore_TMesh_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmesh_min_x !=0){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x852c1a4e4bd2c08d, 103, 0};
		bbOnDebugEnterStm(&__stmt_0);
		brl_blitz_DebugLog(bbStringConcat(bbStringConcat(bbt_pad,((BBString*)&_s228)),bbStringFromFloat(((struct openb3d_openb3dcore_TMesh_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmesh_min_x [0])));
		bbOnDebugLeaveScope();
	}else{
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x852c1a4e4bd2c08d, 103, 0};
		bbOnDebugEnterStm(&__stmt_0);
		brl_blitz_DebugLog(bbStringConcat(bbt_pad,((BBString*)&_s229)));
		bbOnDebugLeaveScope();
	}
	struct BBDebugStm __stmt_11 = {0x852c1a4e4bd2c08d, 104, 0};
	bbOnDebugEnterStm(&__stmt_11);
	if(((struct openb3d_openb3dcore_TMesh_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmesh_min_y !=0){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x852c1a4e4bd2c08d, 104, 0};
		bbOnDebugEnterStm(&__stmt_0);
		brl_blitz_DebugLog(bbStringConcat(bbStringConcat(bbt_pad,((BBString*)&_s230)),bbStringFromFloat(((struct openb3d_openb3dcore_TMesh_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmesh_min_y [0])));
		bbOnDebugLeaveScope();
	}else{
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x852c1a4e4bd2c08d, 104, 0};
		bbOnDebugEnterStm(&__stmt_0);
		brl_blitz_DebugLog(bbStringConcat(bbt_pad,((BBString*)&_s231)));
		bbOnDebugLeaveScope();
	}
	struct BBDebugStm __stmt_12 = {0x852c1a4e4bd2c08d, 105, 0};
	bbOnDebugEnterStm(&__stmt_12);
	if(((struct openb3d_openb3dcore_TMesh_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmesh_min_z !=0){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x852c1a4e4bd2c08d, 105, 0};
		bbOnDebugEnterStm(&__stmt_0);
		brl_blitz_DebugLog(bbStringConcat(bbStringConcat(bbt_pad,((BBString*)&_s232)),bbStringFromFloat(((struct openb3d_openb3dcore_TMesh_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmesh_min_z [0])));
		bbOnDebugLeaveScope();
	}else{
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x852c1a4e4bd2c08d, 105, 0};
		bbOnDebugEnterStm(&__stmt_0);
		brl_blitz_DebugLog(bbStringConcat(bbt_pad,((BBString*)&_s233)));
		bbOnDebugLeaveScope();
	}
	struct BBDebugStm __stmt_13 = {0x852c1a4e4bd2c08d, 106, 0};
	bbOnDebugEnterStm(&__stmt_13);
	if(((struct openb3d_openb3dcore_TMesh_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmesh_max_x !=0){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x852c1a4e4bd2c08d, 106, 0};
		bbOnDebugEnterStm(&__stmt_0);
		brl_blitz_DebugLog(bbStringConcat(bbStringConcat(bbt_pad,((BBString*)&_s234)),bbStringFromFloat(((struct openb3d_openb3dcore_TMesh_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmesh_max_x [0])));
		bbOnDebugLeaveScope();
	}else{
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x852c1a4e4bd2c08d, 106, 0};
		bbOnDebugEnterStm(&__stmt_0);
		brl_blitz_DebugLog(bbStringConcat(bbt_pad,((BBString*)&_s235)));
		bbOnDebugLeaveScope();
	}
	struct BBDebugStm __stmt_14 = {0x852c1a4e4bd2c08d, 107, 0};
	bbOnDebugEnterStm(&__stmt_14);
	if(((struct openb3d_openb3dcore_TMesh_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmesh_max_y !=0){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x852c1a4e4bd2c08d, 107, 0};
		bbOnDebugEnterStm(&__stmt_0);
		brl_blitz_DebugLog(bbStringConcat(bbStringConcat(bbt_pad,((BBString*)&_s236)),bbStringFromFloat(((struct openb3d_openb3dcore_TMesh_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmesh_max_y [0])));
		bbOnDebugLeaveScope();
	}else{
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x852c1a4e4bd2c08d, 107, 0};
		bbOnDebugEnterStm(&__stmt_0);
		brl_blitz_DebugLog(bbStringConcat(bbt_pad,((BBString*)&_s237)));
		bbOnDebugLeaveScope();
	}
	struct BBDebugStm __stmt_15 = {0x852c1a4e4bd2c08d, 108, 0};
	bbOnDebugEnterStm(&__stmt_15);
	if(((struct openb3d_openb3dcore_TMesh_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmesh_max_z !=0){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x852c1a4e4bd2c08d, 108, 0};
		bbOnDebugEnterStm(&__stmt_0);
		brl_blitz_DebugLog(bbStringConcat(bbStringConcat(bbt_pad,((BBString*)&_s238)),bbStringFromFloat(((struct openb3d_openb3dcore_TMesh_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmesh_max_z [0])));
		bbOnDebugLeaveScope();
	}else{
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x852c1a4e4bd2c08d, 108, 0};
		bbOnDebugEnterStm(&__stmt_0);
		brl_blitz_DebugLog(bbStringConcat(bbt_pad,((BBString*)&_s239)));
		bbOnDebugLeaveScope();
	}
	struct BBDebugStm __stmt_16 = {0x852c1a4e4bd2c08d, 111, 0};
	bbOnDebugEnterStm(&__stmt_16);
	brl_blitz_DebugLog(bbStringConcat(bbStringConcat(bbt_pad,((BBString*)&_s240)),openb3d_openb3dcore_StringPtr(openb3d_openb3dcore_TMatPtr_GetInstance_pb_TTMatPtr((struct openb3d_openb3dcore_TMatPtr_obj*)((struct openb3d_openb3dcore_TMesh_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmesh_mat_sp ))));
	struct BBDebugStm __stmt_17 = {0x852c1a4e4bd2c08d, 112, 0};
	bbOnDebugEnterStm(&__stmt_17);
	if((bbt_debug_subobjects!=0) && (((BBOBJECT)((struct openb3d_openb3dcore_TMesh_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmesh_mat_sp )!=&bbNullObject)){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x852c1a4e4bd2c08d, 112, 0};
		bbOnDebugEnterStm(&__stmt_0);
		((struct openb3d_openb3dcore_TMatPtr_obj*)bbNullObjectTest((BBObject*)((struct openb3d_openb3dcore_TMesh_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmesh_mat_sp ))->clas->m_DebugFields_ii((struct openb3d_openb3dcore_TMatPtr_obj*)((struct openb3d_openb3dcore_TMesh_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmesh_mat_sp ,bbt_debug_subobjects,bbt_debug_base_types);
		bbOnDebugLeaveScope();
	}
	struct BBDebugStm __stmt_18 = {0x852c1a4e4bd2c08d, 115, 0};
	bbOnDebugEnterStm(&__stmt_18);
	struct brl_linkedlist_TListEnum_obj* bbt_2=(struct brl_linkedlist_TListEnum_obj*)((struct brl_linkedlist_TList_obj*)bbNullObjectTest((BBObject*)((struct openb3d_openb3dcore_TMesh_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmesh_surf_list ))->clas->m_ObjectEnumerator((struct brl_linkedlist_TList_obj*)((struct openb3d_openb3dcore_TMesh_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmesh_surf_list );
	while(((struct brl_linkedlist_TListEnum_obj*)bbNullObjectTest((BBObject*)bbt_2))->clas->m_HasNext((struct brl_linkedlist_TListEnum_obj*)bbt_2)!=0){
		struct openb3d_openb3dcore_TSurface_obj* bbt_surf=(struct openb3d_openb3dcore_TSurface_obj*)((struct openb3d_openb3dcore_TSurface_obj*)&bbNullObject);
		struct BBDebugScope_1 __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_LOCAL,
					"surf",
					":TSurface",
					.var_address=&bbt_surf
				},
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		bbt_surf=(struct openb3d_openb3dcore_TSurface_obj*)((struct openb3d_openb3dcore_TSurface_obj*)bbObjectDowncast((BBOBJECT)((struct brl_linkedlist_TListEnum_obj*)bbNullObjectTest((BBObject*)bbt_2))->clas->m_NextObject((struct brl_linkedlist_TListEnum_obj*)bbt_2),(BBClass*)&openb3d_openb3dcore_TSurface));
		if(((BBOBJECT)bbt_surf)==&bbNullObject){
			bbOnDebugLeaveScope();
			continue;
		}
		struct BBDebugStm __stmt_0 = {0x852c1a4e4bd2c08d, 116, 0};
		bbOnDebugEnterStm(&__stmt_0);
		brl_blitz_DebugLog(bbStringConcat(bbStringConcat(bbt_pad,((BBString*)&_s241)),openb3d_openb3dcore_StringPtr(openb3d_openb3dcore_TSurface_GetInstance_pb_TTSurface((struct openb3d_openb3dcore_TSurface_obj*)bbt_surf))));
		struct BBDebugStm __stmt_1 = {0x852c1a4e4bd2c08d, 117, 0};
		bbOnDebugEnterStm(&__stmt_1);
		if((bbt_debug_subobjects!=0) && (((BBOBJECT)bbt_surf)!=&bbNullObject)){
			struct BBDebugScope __scope = {
				BBDEBUGSCOPE_LOCALBLOCK,
				0,
				{
					{
						BBDEBUGDECL_END
					}
				}
			};
			bbOnDebugEnterScope((BBDebugScope *)&__scope);
			struct BBDebugStm __stmt_0 = {0x852c1a4e4bd2c08d, 117, 0};
			bbOnDebugEnterStm(&__stmt_0);
			((struct openb3d_openb3dcore_TSurface_obj*)bbNullObjectTest((BBObject*)bbt_surf))->clas->m_DebugFields_ii((struct openb3d_openb3dcore_TSurface_obj*)bbt_surf,bbt_debug_subobjects,bbt_debug_base_types);
			bbOnDebugLeaveScope();
		}
		bbOnDebugLeaveScope();
	}
	struct BBDebugStm __stmt_19 = {0x852c1a4e4bd2c08d, 119, 0};
	bbOnDebugEnterStm(&__stmt_19);
	struct brl_linkedlist_TListEnum_obj* bbt_3=(struct brl_linkedlist_TListEnum_obj*)((struct brl_linkedlist_TList_obj*)bbNullObjectTest((BBObject*)((struct openb3d_openb3dcore_TMesh_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmesh_anim_surf_list ))->clas->m_ObjectEnumerator((struct brl_linkedlist_TList_obj*)((struct openb3d_openb3dcore_TMesh_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmesh_anim_surf_list );
	while(((struct brl_linkedlist_TListEnum_obj*)bbNullObjectTest((BBObject*)bbt_3))->clas->m_HasNext((struct brl_linkedlist_TListEnum_obj*)bbt_3)!=0){
		struct openb3d_openb3dcore_TSurface_obj* bbt_anim_surf=(struct openb3d_openb3dcore_TSurface_obj*)((struct openb3d_openb3dcore_TSurface_obj*)&bbNullObject);
		struct BBDebugScope_1 __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_LOCAL,
					"anim_surf",
					":TSurface",
					.var_address=&bbt_anim_surf
				},
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		bbt_anim_surf=(struct openb3d_openb3dcore_TSurface_obj*)((struct openb3d_openb3dcore_TSurface_obj*)bbObjectDowncast((BBOBJECT)((struct brl_linkedlist_TListEnum_obj*)bbNullObjectTest((BBObject*)bbt_3))->clas->m_NextObject((struct brl_linkedlist_TListEnum_obj*)bbt_3),(BBClass*)&openb3d_openb3dcore_TSurface));
		if(((BBOBJECT)bbt_anim_surf)==&bbNullObject){
			bbOnDebugLeaveScope();
			continue;
		}
		struct BBDebugStm __stmt_0 = {0x852c1a4e4bd2c08d, 120, 0};
		bbOnDebugEnterStm(&__stmt_0);
		brl_blitz_DebugLog(bbStringConcat(bbStringConcat(bbt_pad,((BBString*)&_s242)),openb3d_openb3dcore_StringPtr(openb3d_openb3dcore_TSurface_GetInstance_pb_TTSurface((struct openb3d_openb3dcore_TSurface_obj*)bbt_anim_surf))));
		struct BBDebugStm __stmt_1 = {0x852c1a4e4bd2c08d, 121, 0};
		bbOnDebugEnterStm(&__stmt_1);
		if((bbt_debug_subobjects!=0) && (((BBOBJECT)bbt_anim_surf)!=&bbNullObject)){
			struct BBDebugScope __scope = {
				BBDEBUGSCOPE_LOCALBLOCK,
				0,
				{
					{
						BBDEBUGDECL_END
					}
				}
			};
			bbOnDebugEnterScope((BBDebugScope *)&__scope);
			struct BBDebugStm __stmt_0 = {0x852c1a4e4bd2c08d, 121, 0};
			bbOnDebugEnterStm(&__stmt_0);
			((struct openb3d_openb3dcore_TSurface_obj*)bbNullObjectTest((BBObject*)bbt_anim_surf))->clas->m_DebugFields_ii((struct openb3d_openb3dcore_TSurface_obj*)bbt_anim_surf,bbt_debug_subobjects,bbt_debug_base_types);
			bbOnDebugLeaveScope();
		}
		bbOnDebugLeaveScope();
	}
	struct BBDebugStm __stmt_20 = {0x852c1a4e4bd2c08d, 123, 0};
	bbOnDebugEnterStm(&__stmt_20);
	struct brl_linkedlist_TListEnum_obj* bbt_4=(struct brl_linkedlist_TListEnum_obj*)((struct brl_linkedlist_TList_obj*)bbNullObjectTest((BBObject*)((struct openb3d_openb3dcore_TMesh_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmesh_bones ))->clas->m_ObjectEnumerator((struct brl_linkedlist_TList_obj*)((struct openb3d_openb3dcore_TMesh_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmesh_bones );
	while(((struct brl_linkedlist_TListEnum_obj*)bbNullObjectTest((BBObject*)bbt_4))->clas->m_HasNext((struct brl_linkedlist_TListEnum_obj*)bbt_4)!=0){
		struct openb3d_openb3dcore_TBone_obj* bbt_bone=(struct openb3d_openb3dcore_TBone_obj*)((struct openb3d_openb3dcore_TBone_obj*)&bbNullObject);
		struct BBDebugScope_1 __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_LOCAL,
					"bone",
					":TBone",
					.var_address=&bbt_bone
				},
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		bbt_bone=(struct openb3d_openb3dcore_TBone_obj*)((struct openb3d_openb3dcore_TBone_obj*)bbObjectDowncast((BBOBJECT)((struct brl_linkedlist_TListEnum_obj*)bbNullObjectTest((BBObject*)bbt_4))->clas->m_NextObject((struct brl_linkedlist_TListEnum_obj*)bbt_4),(BBClass*)&openb3d_openb3dcore_TBone));
		if(((BBOBJECT)bbt_bone)==&bbNullObject){
			bbOnDebugLeaveScope();
			continue;
		}
		struct BBDebugStm __stmt_0 = {0x852c1a4e4bd2c08d, 124, 0};
		bbOnDebugEnterStm(&__stmt_0);
		brl_blitz_DebugLog(bbStringConcat(bbStringConcat(bbt_pad,((BBString*)&_s243)),openb3d_openb3dcore_StringPtr(openb3d_openb3dcore_TEntity_GetInstance_pb_TTEntity((struct openb3d_openb3dcore_TEntity_obj*)((struct openb3d_openb3dcore_TEntity_obj*)bbObjectDowncast((BBOBJECT)bbt_bone,(BBClass*)&openb3d_openb3dcore_TEntity))))));
		struct BBDebugStm __stmt_1 = {0x852c1a4e4bd2c08d, 125, 0};
		bbOnDebugEnterStm(&__stmt_1);
		if((bbt_debug_subobjects!=0) && (((BBOBJECT)bbt_bone)!=&bbNullObject)){
			struct BBDebugScope __scope = {
				BBDEBUGSCOPE_LOCALBLOCK,
				0,
				{
					{
						BBDEBUGDECL_END
					}
				}
			};
			bbOnDebugEnterScope((BBDebugScope *)&__scope);
			struct BBDebugStm __stmt_0 = {0x852c1a4e4bd2c08d, 125, 0};
			bbOnDebugEnterStm(&__stmt_0);
			((struct openb3d_openb3dcore_TBone_obj*)bbNullObjectTest((BBObject*)bbt_bone))->clas->m_DebugFields_ii((struct openb3d_openb3dcore_TBone_obj*)bbt_bone,bbt_debug_subobjects,bbt_debug_base_types);
			bbOnDebugLeaveScope();
		}
		bbOnDebugLeaveScope();
	}
	struct BBDebugStm __stmt_21 = {0x852c1a4e4bd2c08d, 128, 0};
	bbOnDebugEnterStm(&__stmt_21);
	brl_blitz_DebugLog((BBString*)&bbEmptyString);
	struct BBDebugStm __stmt_22 = {0x852c1a4e4bd2c08d, 130, 0};
	bbOnDebugEnterStm(&__stmt_22);
	if(bbt_debug_base_types!=0){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x852c1a4e4bd2c08d, 130, 0};
		bbOnDebugEnterStm(&__stmt_0);
		(&openb3d_openb3dcore_TMesh)->super->m_DebugFields_ii((struct openb3d_openb3dcore_TEntity_obj*)o,bbt_debug_subobjects,bbt_debug_base_types);
		bbOnDebugLeaveScope();
	}
	bbOnDebugLeaveScope();
	return 0;
}
BBINT _openb3d_openb3dcore_TMesh_AddList_TTList(struct openb3d_openb3dcore_TMesh_obj* o,struct brl_linkedlist_TList_obj* bbt_list){
	((struct openb3d_openb3dcore_TMesh_obj*)bbNullObjectTest((BBObject*)o));
	struct BBDebugScope_2 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"AddList",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TMesh",
				.var_address=&o
			},
			{
				BBDEBUGDECL_LOCAL,
				"list",
				":TList",
				.var_address=&bbt_list
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x852c1a4e4bd2c08d, 136, 0};
	bbOnDebugEnterStm(&__stmt_0);
	(&openb3d_openb3dcore_TMesh)->super->m_AddList_TTList((struct openb3d_openb3dcore_TEntity_obj*)o,(struct brl_linkedlist_TList_obj*)bbt_list);
	struct BBDebugStm __stmt_1 = {0x852c1a4e4bd2c08d, 138, 0};
	bbOnDebugEnterStm(&__stmt_1);
	struct brl_linkedlist_TList_obj* bbt_=(struct brl_linkedlist_TList_obj*)bbt_list;
	struct BBDebugStm __stmt_2 = {0x852c1a4e4bd2c08d, 139, 0};
	bbOnDebugEnterStm(&__stmt_2);
	if(((struct brl_linkedlist_TList_obj*)bbt_)==((struct openb3d_openb3dcore_TMesh_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmesh_surf_list ){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x852c1a4e4bd2c08d, 140, 0};
		bbOnDebugEnterStm(&__stmt_0);
		if(MeshListSize_(openb3d_openb3dcore_TEntity_GetInstance_pb_TTEntity((struct openb3d_openb3dcore_TEntity_obj*)((struct openb3d_openb3dcore_TEntity_obj*)bbObjectDowncast((BBOBJECT)o,(BBClass*)&openb3d_openb3dcore_TEntity))),2)!=0){
			BBBYTE* bbt_inst=0;
			struct openb3d_openb3dcore_TSurface_obj* bbt_obj=(struct openb3d_openb3dcore_TSurface_obj*)((struct openb3d_openb3dcore_TSurface_obj*)&bbNullObject);
			struct BBDebugScope_2 __scope = {
				BBDEBUGSCOPE_LOCALBLOCK,
				0,
				{
					{
						BBDEBUGDECL_LOCAL,
						"inst",
						"*b",
						.var_address=&bbt_inst
					},
					{
						BBDEBUGDECL_LOCAL,
						"obj",
						":TSurface",
						.var_address=&bbt_obj
					},
					{
						BBDEBUGDECL_END
					}
				}
			};
			bbOnDebugEnterScope((BBDebugScope *)&__scope);
			struct BBDebugStm __stmt_0 = {0x852c1a4e4bd2c08d, 141, 0};
			bbOnDebugEnterStm(&__stmt_0);
			bbt_inst=MeshIterListSurface_(openb3d_openb3dcore_TEntity_GetInstance_pb_TTEntity((struct openb3d_openb3dcore_TEntity_obj*)((struct openb3d_openb3dcore_TEntity_obj*)bbObjectDowncast((BBOBJECT)o,(BBClass*)&openb3d_openb3dcore_TEntity))),2,(&((struct openb3d_openb3dcore_TMesh_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmesh_surf_list_id ));
			struct BBDebugStm __stmt_1 = {0x852c1a4e4bd2c08d, 142, 0};
			bbOnDebugEnterStm(&__stmt_1);
			bbt_obj=(struct openb3d_openb3dcore_TSurface_obj*)openb3d_openb3dcore_TSurface_GetObject_TTSurface_pb(bbt_inst);
			struct BBDebugStm __stmt_2 = {0x852c1a4e4bd2c08d, 143, 0};
			bbOnDebugEnterStm(&__stmt_2);
			if((((BBOBJECT)bbt_obj)==&bbNullObject) && (bbt_inst!=0)){
				struct BBDebugScope __scope = {
					BBDEBUGSCOPE_LOCALBLOCK,
					0,
					{
						{
							BBDEBUGDECL_END
						}
					}
				};
				bbOnDebugEnterScope((BBDebugScope *)&__scope);
				struct BBDebugStm __stmt_0 = {0x852c1a4e4bd2c08d, 143, 0};
				bbOnDebugEnterStm(&__stmt_0);
				bbt_obj=(struct openb3d_openb3dcore_TSurface_obj*)openb3d_openb3dcore_TSurface_CreateObject_TTSurface_pb(bbt_inst);
				bbOnDebugLeaveScope();
			}
			struct BBDebugStm __stmt_3 = {0x852c1a4e4bd2c08d, 144, 0};
			bbOnDebugEnterStm(&__stmt_3);
			if(((BBObject*)bbt_obj)!= &bbNullObject){
				struct BBDebugScope __scope = {
					BBDEBUGSCOPE_LOCALBLOCK,
					0,
					{
						{
							BBDEBUGDECL_END
						}
					}
				};
				bbOnDebugEnterScope((BBDebugScope *)&__scope);
				struct BBDebugStm __stmt_0 = {0x852c1a4e4bd2c08d, 144, 0};
				bbOnDebugEnterStm(&__stmt_0);
				brl_linkedlist_ListAddLast((struct brl_linkedlist_TList_obj*)bbt_list,(BBOBJECT)bbt_obj);
				bbOnDebugLeaveScope();
			}
			bbOnDebugLeaveScope();
		}
		bbOnDebugLeaveScope();
	}else{
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x852c1a4e4bd2c08d, 146, 0};
		bbOnDebugEnterStm(&__stmt_0);
		if(((struct brl_linkedlist_TList_obj*)bbt_)==((struct openb3d_openb3dcore_TMesh_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmesh_anim_surf_list ){
			struct BBDebugScope __scope = {
				BBDEBUGSCOPE_LOCALBLOCK,
				0,
				{
					{
						BBDEBUGDECL_END
					}
				}
			};
			bbOnDebugEnterScope((BBDebugScope *)&__scope);
			struct BBDebugStm __stmt_0 = {0x852c1a4e4bd2c08d, 147, 0};
			bbOnDebugEnterStm(&__stmt_0);
			if(MeshListSize_(openb3d_openb3dcore_TEntity_GetInstance_pb_TTEntity((struct openb3d_openb3dcore_TEntity_obj*)((struct openb3d_openb3dcore_TEntity_obj*)bbObjectDowncast((BBOBJECT)o,(BBClass*)&openb3d_openb3dcore_TEntity))),3)!=0){
				BBBYTE* bbt_inst2=0;
				struct openb3d_openb3dcore_TSurface_obj* bbt_obj2=(struct openb3d_openb3dcore_TSurface_obj*)((struct openb3d_openb3dcore_TSurface_obj*)&bbNullObject);
				struct BBDebugScope_2 __scope = {
					BBDEBUGSCOPE_LOCALBLOCK,
					0,
					{
						{
							BBDEBUGDECL_LOCAL,
							"inst",
							"*b",
							.var_address=&bbt_inst2
						},
						{
							BBDEBUGDECL_LOCAL,
							"obj",
							":TSurface",
							.var_address=&bbt_obj2
						},
						{
							BBDEBUGDECL_END
						}
					}
				};
				bbOnDebugEnterScope((BBDebugScope *)&__scope);
				struct BBDebugStm __stmt_0 = {0x852c1a4e4bd2c08d, 148, 0};
				bbOnDebugEnterStm(&__stmt_0);
				bbt_inst2=MeshIterListSurface_(openb3d_openb3dcore_TEntity_GetInstance_pb_TTEntity((struct openb3d_openb3dcore_TEntity_obj*)((struct openb3d_openb3dcore_TEntity_obj*)bbObjectDowncast((BBOBJECT)o,(BBClass*)&openb3d_openb3dcore_TEntity))),3,(&((struct openb3d_openb3dcore_TMesh_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmesh_anim_surf_list_id ));
				struct BBDebugStm __stmt_1 = {0x852c1a4e4bd2c08d, 149, 0};
				bbOnDebugEnterStm(&__stmt_1);
				bbt_obj2=(struct openb3d_openb3dcore_TSurface_obj*)openb3d_openb3dcore_TSurface_GetObject_TTSurface_pb(bbt_inst2);
				struct BBDebugStm __stmt_2 = {0x852c1a4e4bd2c08d, 150, 0};
				bbOnDebugEnterStm(&__stmt_2);
				if((((BBOBJECT)bbt_obj2)==&bbNullObject) && (bbt_inst2!=0)){
					struct BBDebugScope __scope = {
						BBDEBUGSCOPE_LOCALBLOCK,
						0,
						{
							{
								BBDEBUGDECL_END
							}
						}
					};
					bbOnDebugEnterScope((BBDebugScope *)&__scope);
					struct BBDebugStm __stmt_0 = {0x852c1a4e4bd2c08d, 150, 0};
					bbOnDebugEnterStm(&__stmt_0);
					bbt_obj2=(struct openb3d_openb3dcore_TSurface_obj*)openb3d_openb3dcore_TSurface_CreateObject_TTSurface_pb(bbt_inst2);
					bbOnDebugLeaveScope();
				}
				struct BBDebugStm __stmt_3 = {0x852c1a4e4bd2c08d, 151, 0};
				bbOnDebugEnterStm(&__stmt_3);
				if(((BBObject*)bbt_obj2)!= &bbNullObject){
					struct BBDebugScope __scope = {
						BBDEBUGSCOPE_LOCALBLOCK,
						0,
						{
							{
								BBDEBUGDECL_END
							}
						}
					};
					bbOnDebugEnterScope((BBDebugScope *)&__scope);
					struct BBDebugStm __stmt_0 = {0x852c1a4e4bd2c08d, 151, 0};
					bbOnDebugEnterStm(&__stmt_0);
					brl_linkedlist_ListAddLast((struct brl_linkedlist_TList_obj*)bbt_list,(BBOBJECT)bbt_obj2);
					bbOnDebugLeaveScope();
				}
				bbOnDebugLeaveScope();
			}
			bbOnDebugLeaveScope();
		}else{
			struct BBDebugScope __scope = {
				BBDEBUGSCOPE_LOCALBLOCK,
				0,
				{
					{
						BBDEBUGDECL_END
					}
				}
			};
			bbOnDebugEnterScope((BBDebugScope *)&__scope);
			struct BBDebugStm __stmt_0 = {0x852c1a4e4bd2c08d, 153, 0};
			bbOnDebugEnterStm(&__stmt_0);
			if(((struct brl_linkedlist_TList_obj*)bbt_)==((struct openb3d_openb3dcore_TMesh_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmesh_bones ){
				struct BBDebugScope __scope = {
					BBDEBUGSCOPE_LOCALBLOCK,
					0,
					{
						{
							BBDEBUGDECL_END
						}
					}
				};
				bbOnDebugEnterScope((BBDebugScope *)&__scope);
				struct BBDebugStm __stmt_0 = {0x852c1a4e4bd2c08d, 154, 0};
				bbOnDebugEnterStm(&__stmt_0);
				if(MeshListSize_(openb3d_openb3dcore_TEntity_GetInstance_pb_TTEntity((struct openb3d_openb3dcore_TEntity_obj*)((struct openb3d_openb3dcore_TEntity_obj*)bbObjectDowncast((BBOBJECT)o,(BBClass*)&openb3d_openb3dcore_TEntity))),4)!=0){
					BBBYTE* bbt_inst3=0;
					struct openb3d_openb3dcore_TBone_obj* bbt_obj3=(struct openb3d_openb3dcore_TBone_obj*)((struct openb3d_openb3dcore_TBone_obj*)&bbNullObject);
					struct BBDebugScope_2 __scope = {
						BBDEBUGSCOPE_LOCALBLOCK,
						0,
						{
							{
								BBDEBUGDECL_LOCAL,
								"inst",
								"*b",
								.var_address=&bbt_inst3
							},
							{
								BBDEBUGDECL_LOCAL,
								"obj",
								":TBone",
								.var_address=&bbt_obj3
							},
							{
								BBDEBUGDECL_END
							}
						}
					};
					bbOnDebugEnterScope((BBDebugScope *)&__scope);
					struct BBDebugStm __stmt_0 = {0x852c1a4e4bd2c08d, 155, 0};
					bbOnDebugEnterStm(&__stmt_0);
					bbt_inst3=MeshIterVectorBone_(openb3d_openb3dcore_TEntity_GetInstance_pb_TTEntity((struct openb3d_openb3dcore_TEntity_obj*)((struct openb3d_openb3dcore_TEntity_obj*)bbObjectDowncast((BBOBJECT)o,(BBClass*)&openb3d_openb3dcore_TEntity))),4,(&((struct openb3d_openb3dcore_TMesh_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmesh_bones_id ));
					struct BBDebugStm __stmt_1 = {0x852c1a4e4bd2c08d, 156, 0};
					bbOnDebugEnterStm(&__stmt_1);
					bbt_obj3=(struct openb3d_openb3dcore_TBone_obj*)((struct openb3d_openb3dcore_TBone_obj*)bbObjectDowncast((BBOBJECT)openb3d_openb3dcore_TEntity_GetObject_TTEntity_pb(bbt_inst3),(BBClass*)&openb3d_openb3dcore_TBone));
					struct BBDebugStm __stmt_2 = {0x852c1a4e4bd2c08d, 157, 0};
					bbOnDebugEnterStm(&__stmt_2);
					if((((BBOBJECT)bbt_obj3)==&bbNullObject) && (bbt_inst3!=0)){
						struct BBDebugScope __scope = {
							BBDEBUGSCOPE_LOCALBLOCK,
							0,
							{
								{
									BBDEBUGDECL_END
								}
							}
						};
						bbOnDebugEnterScope((BBDebugScope *)&__scope);
						struct BBDebugStm __stmt_0 = {0x852c1a4e4bd2c08d, 157, 0};
						bbOnDebugEnterStm(&__stmt_0);
						bbt_obj3=(struct openb3d_openb3dcore_TBone_obj*)openb3d_openb3dcore_TBone_CreateObject_TTBone_pb(bbt_inst3);
						bbOnDebugLeaveScope();
					}
					struct BBDebugStm __stmt_3 = {0x852c1a4e4bd2c08d, 158, 0};
					bbOnDebugEnterStm(&__stmt_3);
					if(((BBObject*)bbt_obj3)!= &bbNullObject){
						struct BBDebugScope __scope = {
							BBDEBUGSCOPE_LOCALBLOCK,
							0,
							{
								{
									BBDEBUGDECL_END
								}
							}
						};
						bbOnDebugEnterScope((BBDebugScope *)&__scope);
						struct BBDebugStm __stmt_0 = {0x852c1a4e4bd2c08d, 158, 0};
						bbOnDebugEnterStm(&__stmt_0);
						brl_linkedlist_ListAddLast((struct brl_linkedlist_TList_obj*)bbt_list,(BBOBJECT)bbt_obj3);
						bbOnDebugLeaveScope();
					}
					bbOnDebugLeaveScope();
				}
				bbOnDebugLeaveScope();
			}
			bbOnDebugLeaveScope();
		}
		bbOnDebugLeaveScope();
	}
	bbOnDebugLeaveScope();
	return 0;
}
BBINT _openb3d_openb3dcore_TMesh_CopyList_TTList(struct openb3d_openb3dcore_TMesh_obj* o,struct brl_linkedlist_TList_obj* bbt_list){
	((struct openb3d_openb3dcore_TMesh_obj*)bbNullObjectTest((BBObject*)o));
	struct BBDebugScope_2 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"CopyList",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TMesh",
				.var_address=&o
			},
			{
				BBDEBUGDECL_LOCAL,
				"list",
				":TList",
				.var_address=&bbt_list
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x852c1a4e4bd2c08d, 166, 0};
	bbOnDebugEnterStm(&__stmt_0);
	(&openb3d_openb3dcore_TMesh)->super->m_CopyList_TTList((struct openb3d_openb3dcore_TEntity_obj*)o,(struct brl_linkedlist_TList_obj*)bbt_list);
	struct BBDebugStm __stmt_1 = {0x852c1a4e4bd2c08d, 168, 0};
	bbOnDebugEnterStm(&__stmt_1);
	struct brl_linkedlist_TList_obj* bbt_=(struct brl_linkedlist_TList_obj*)bbt_list;
	struct BBDebugStm __stmt_2 = {0x852c1a4e4bd2c08d, 169, 0};
	bbOnDebugEnterStm(&__stmt_2);
	if(((struct brl_linkedlist_TList_obj*)bbt_)==((struct openb3d_openb3dcore_TMesh_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmesh_surf_list ){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x852c1a4e4bd2c08d, 170, 0};
		bbOnDebugEnterStm(&__stmt_0);
		((struct openb3d_openb3dcore_TMesh_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmesh_surf_list_id =0;
		struct BBDebugStm __stmt_1 = {0x852c1a4e4bd2c08d, 171, 0};
		bbOnDebugEnterStm(&__stmt_1);
		{
			BBINT bbt_id=0;
			BBINT bbt_2=(MeshListSize_(openb3d_openb3dcore_TEntity_GetInstance_pb_TTEntity((struct openb3d_openb3dcore_TEntity_obj*)((struct openb3d_openb3dcore_TEntity_obj*)bbObjectDowncast((BBOBJECT)o,(BBClass*)&openb3d_openb3dcore_TEntity))),2)-1);
			for(;(bbt_id<=bbt_2);bbt_id=(bbt_id+1)){
				BBBYTE* bbt_inst=0;
				struct openb3d_openb3dcore_TSurface_obj* bbt_obj=(struct openb3d_openb3dcore_TSurface_obj*)((struct openb3d_openb3dcore_TSurface_obj*)&bbNullObject);
				struct BBDebugScope_3 __scope = {
					BBDEBUGSCOPE_LOCALBLOCK,
					0,
					{
						{
							BBDEBUGDECL_LOCAL,
							"id",
							"i",
							.var_address=&bbt_id
						},
						{
							BBDEBUGDECL_LOCAL,
							"inst",
							"*b",
							.var_address=&bbt_inst
						},
						{
							BBDEBUGDECL_LOCAL,
							"obj",
							":TSurface",
							.var_address=&bbt_obj
						},
						{
							BBDEBUGDECL_END
						}
					}
				};
				bbOnDebugEnterScope((BBDebugScope *)&__scope);
				struct BBDebugStm __stmt_0 = {0x852c1a4e4bd2c08d, 172, 0};
				bbOnDebugEnterStm(&__stmt_0);
				bbt_inst=MeshIterListSurface_(openb3d_openb3dcore_TEntity_GetInstance_pb_TTEntity((struct openb3d_openb3dcore_TEntity_obj*)((struct openb3d_openb3dcore_TEntity_obj*)bbObjectDowncast((BBOBJECT)o,(BBClass*)&openb3d_openb3dcore_TEntity))),2,(&((struct openb3d_openb3dcore_TMesh_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmesh_surf_list_id ));
				struct BBDebugStm __stmt_1 = {0x852c1a4e4bd2c08d, 173, 0};
				bbOnDebugEnterStm(&__stmt_1);
				bbt_obj=(struct openb3d_openb3dcore_TSurface_obj*)openb3d_openb3dcore_TSurface_GetObject_TTSurface_pb(bbt_inst);
				struct BBDebugStm __stmt_2 = {0x852c1a4e4bd2c08d, 174, 0};
				bbOnDebugEnterStm(&__stmt_2);
				if((((BBOBJECT)bbt_obj)==&bbNullObject) && (bbt_inst!=0)){
					struct BBDebugScope __scope = {
						BBDEBUGSCOPE_LOCALBLOCK,
						0,
						{
							{
								BBDEBUGDECL_END
							}
						}
					};
					bbOnDebugEnterScope((BBDebugScope *)&__scope);
					struct BBDebugStm __stmt_0 = {0x852c1a4e4bd2c08d, 174, 0};
					bbOnDebugEnterStm(&__stmt_0);
					bbt_obj=(struct openb3d_openb3dcore_TSurface_obj*)openb3d_openb3dcore_TSurface_CreateObject_TTSurface_pb(bbt_inst);
					bbOnDebugLeaveScope();
				}
				struct BBDebugStm __stmt_3 = {0x852c1a4e4bd2c08d, 175, 0};
				bbOnDebugEnterStm(&__stmt_3);
				if(((BBObject*)bbt_obj)!= &bbNullObject){
					struct BBDebugScope __scope = {
						BBDEBUGSCOPE_LOCALBLOCK,
						0,
						{
							{
								BBDEBUGDECL_END
							}
						}
					};
					bbOnDebugEnterScope((BBDebugScope *)&__scope);
					struct BBDebugStm __stmt_0 = {0x852c1a4e4bd2c08d, 175, 0};
					bbOnDebugEnterStm(&__stmt_0);
					brl_linkedlist_ListAddLast((struct brl_linkedlist_TList_obj*)bbt_list,(BBOBJECT)bbt_obj);
					bbOnDebugLeaveScope();
				}
				bbOnDebugLeaveScope();
			}
		}
		bbOnDebugLeaveScope();
	}else{
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x852c1a4e4bd2c08d, 177, 0};
		bbOnDebugEnterStm(&__stmt_0);
		if(((struct brl_linkedlist_TList_obj*)bbt_)==((struct openb3d_openb3dcore_TMesh_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmesh_anim_surf_list ){
			struct BBDebugScope __scope = {
				BBDEBUGSCOPE_LOCALBLOCK,
				0,
				{
					{
						BBDEBUGDECL_END
					}
				}
			};
			bbOnDebugEnterScope((BBDebugScope *)&__scope);
			struct BBDebugStm __stmt_0 = {0x852c1a4e4bd2c08d, 178, 0};
			bbOnDebugEnterStm(&__stmt_0);
			((struct openb3d_openb3dcore_TMesh_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmesh_anim_surf_list_id =0;
			struct BBDebugStm __stmt_1 = {0x852c1a4e4bd2c08d, 179, 0};
			bbOnDebugEnterStm(&__stmt_1);
			{
				BBINT bbt_id2=0;
				BBINT bbt_3=(MeshListSize_(openb3d_openb3dcore_TEntity_GetInstance_pb_TTEntity((struct openb3d_openb3dcore_TEntity_obj*)((struct openb3d_openb3dcore_TEntity_obj*)bbObjectDowncast((BBOBJECT)o,(BBClass*)&openb3d_openb3dcore_TEntity))),3)-1);
				for(;(bbt_id2<=bbt_3);bbt_id2=(bbt_id2+1)){
					BBBYTE* bbt_inst2=0;
					struct openb3d_openb3dcore_TSurface_obj* bbt_obj2=(struct openb3d_openb3dcore_TSurface_obj*)((struct openb3d_openb3dcore_TSurface_obj*)&bbNullObject);
					struct BBDebugScope_3 __scope = {
						BBDEBUGSCOPE_LOCALBLOCK,
						0,
						{
							{
								BBDEBUGDECL_LOCAL,
								"id",
								"i",
								.var_address=&bbt_id2
							},
							{
								BBDEBUGDECL_LOCAL,
								"inst",
								"*b",
								.var_address=&bbt_inst2
							},
							{
								BBDEBUGDECL_LOCAL,
								"obj",
								":TSurface",
								.var_address=&bbt_obj2
							},
							{
								BBDEBUGDECL_END
							}
						}
					};
					bbOnDebugEnterScope((BBDebugScope *)&__scope);
					struct BBDebugStm __stmt_0 = {0x852c1a4e4bd2c08d, 180, 0};
					bbOnDebugEnterStm(&__stmt_0);
					bbt_inst2=MeshIterListSurface_(openb3d_openb3dcore_TEntity_GetInstance_pb_TTEntity((struct openb3d_openb3dcore_TEntity_obj*)((struct openb3d_openb3dcore_TEntity_obj*)bbObjectDowncast((BBOBJECT)o,(BBClass*)&openb3d_openb3dcore_TEntity))),3,(&((struct openb3d_openb3dcore_TMesh_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmesh_anim_surf_list_id ));
					struct BBDebugStm __stmt_1 = {0x852c1a4e4bd2c08d, 181, 0};
					bbOnDebugEnterStm(&__stmt_1);
					bbt_obj2=(struct openb3d_openb3dcore_TSurface_obj*)openb3d_openb3dcore_TSurface_GetObject_TTSurface_pb(bbt_inst2);
					struct BBDebugStm __stmt_2 = {0x852c1a4e4bd2c08d, 182, 0};
					bbOnDebugEnterStm(&__stmt_2);
					if((((BBOBJECT)bbt_obj2)==&bbNullObject) && (bbt_inst2!=0)){
						struct BBDebugScope __scope = {
							BBDEBUGSCOPE_LOCALBLOCK,
							0,
							{
								{
									BBDEBUGDECL_END
								}
							}
						};
						bbOnDebugEnterScope((BBDebugScope *)&__scope);
						struct BBDebugStm __stmt_0 = {0x852c1a4e4bd2c08d, 182, 0};
						bbOnDebugEnterStm(&__stmt_0);
						bbt_obj2=(struct openb3d_openb3dcore_TSurface_obj*)openb3d_openb3dcore_TSurface_CreateObject_TTSurface_pb(bbt_inst2);
						bbOnDebugLeaveScope();
					}
					struct BBDebugStm __stmt_3 = {0x852c1a4e4bd2c08d, 183, 0};
					bbOnDebugEnterStm(&__stmt_3);
					if(((BBObject*)bbt_obj2)!= &bbNullObject){
						struct BBDebugScope __scope = {
							BBDEBUGSCOPE_LOCALBLOCK,
							0,
							{
								{
									BBDEBUGDECL_END
								}
							}
						};
						bbOnDebugEnterScope((BBDebugScope *)&__scope);
						struct BBDebugStm __stmt_0 = {0x852c1a4e4bd2c08d, 183, 0};
						bbOnDebugEnterStm(&__stmt_0);
						brl_linkedlist_ListAddLast((struct brl_linkedlist_TList_obj*)bbt_list,(BBOBJECT)bbt_obj2);
						bbOnDebugLeaveScope();
					}
					bbOnDebugLeaveScope();
				}
			}
			bbOnDebugLeaveScope();
		}else{
			struct BBDebugScope __scope = {
				BBDEBUGSCOPE_LOCALBLOCK,
				0,
				{
					{
						BBDEBUGDECL_END
					}
				}
			};
			bbOnDebugEnterScope((BBDebugScope *)&__scope);
			struct BBDebugStm __stmt_0 = {0x852c1a4e4bd2c08d, 185, 0};
			bbOnDebugEnterStm(&__stmt_0);
			if(((struct brl_linkedlist_TList_obj*)bbt_)==((struct openb3d_openb3dcore_TMesh_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmesh_bones ){
				struct BBDebugScope __scope = {
					BBDEBUGSCOPE_LOCALBLOCK,
					0,
					{
						{
							BBDEBUGDECL_END
						}
					}
				};
				bbOnDebugEnterScope((BBDebugScope *)&__scope);
				struct BBDebugStm __stmt_0 = {0x852c1a4e4bd2c08d, 186, 0};
				bbOnDebugEnterStm(&__stmt_0);
				((struct openb3d_openb3dcore_TMesh_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmesh_bones_id =0;
				struct BBDebugStm __stmt_1 = {0x852c1a4e4bd2c08d, 187, 0};
				bbOnDebugEnterStm(&__stmt_1);
				{
					BBINT bbt_id3=0;
					BBINT bbt_4=(MeshListSize_(openb3d_openb3dcore_TEntity_GetInstance_pb_TTEntity((struct openb3d_openb3dcore_TEntity_obj*)((struct openb3d_openb3dcore_TEntity_obj*)bbObjectDowncast((BBOBJECT)o,(BBClass*)&openb3d_openb3dcore_TEntity))),4)-1);
					for(;(bbt_id3<=bbt_4);bbt_id3=(bbt_id3+1)){
						BBBYTE* bbt_inst3=0;
						struct openb3d_openb3dcore_TBone_obj* bbt_obj3=(struct openb3d_openb3dcore_TBone_obj*)((struct openb3d_openb3dcore_TBone_obj*)&bbNullObject);
						struct BBDebugScope_3 __scope = {
							BBDEBUGSCOPE_LOCALBLOCK,
							0,
							{
								{
									BBDEBUGDECL_LOCAL,
									"id",
									"i",
									.var_address=&bbt_id3
								},
								{
									BBDEBUGDECL_LOCAL,
									"inst",
									"*b",
									.var_address=&bbt_inst3
								},
								{
									BBDEBUGDECL_LOCAL,
									"obj",
									":TBone",
									.var_address=&bbt_obj3
								},
								{
									BBDEBUGDECL_END
								}
							}
						};
						bbOnDebugEnterScope((BBDebugScope *)&__scope);
						struct BBDebugStm __stmt_0 = {0x852c1a4e4bd2c08d, 188, 0};
						bbOnDebugEnterStm(&__stmt_0);
						bbt_inst3=MeshIterVectorBone_(openb3d_openb3dcore_TEntity_GetInstance_pb_TTEntity((struct openb3d_openb3dcore_TEntity_obj*)((struct openb3d_openb3dcore_TEntity_obj*)bbObjectDowncast((BBOBJECT)o,(BBClass*)&openb3d_openb3dcore_TEntity))),4,(&((struct openb3d_openb3dcore_TMesh_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmesh_bones_id ));
						struct BBDebugStm __stmt_1 = {0x852c1a4e4bd2c08d, 189, 0};
						bbOnDebugEnterStm(&__stmt_1);
						bbt_obj3=(struct openb3d_openb3dcore_TBone_obj*)((struct openb3d_openb3dcore_TBone_obj*)bbObjectDowncast((BBOBJECT)openb3d_openb3dcore_TEntity_GetObject_TTEntity_pb(bbt_inst3),(BBClass*)&openb3d_openb3dcore_TBone));
						struct BBDebugStm __stmt_2 = {0x852c1a4e4bd2c08d, 190, 0};
						bbOnDebugEnterStm(&__stmt_2);
						if((((BBOBJECT)bbt_obj3)==&bbNullObject) && (bbt_inst3!=0)){
							struct BBDebugScope __scope = {
								BBDEBUGSCOPE_LOCALBLOCK,
								0,
								{
									{
										BBDEBUGDECL_END
									}
								}
							};
							bbOnDebugEnterScope((BBDebugScope *)&__scope);
							struct BBDebugStm __stmt_0 = {0x852c1a4e4bd2c08d, 190, 0};
							bbOnDebugEnterStm(&__stmt_0);
							bbt_obj3=(struct openb3d_openb3dcore_TBone_obj*)openb3d_openb3dcore_TBone_CreateObject_TTBone_pb(bbt_inst3);
							bbOnDebugLeaveScope();
						}
						struct BBDebugStm __stmt_3 = {0x852c1a4e4bd2c08d, 191, 0};
						bbOnDebugEnterStm(&__stmt_3);
						if(((BBObject*)bbt_obj3)!= &bbNullObject){
							struct BBDebugScope __scope = {
								BBDEBUGSCOPE_LOCALBLOCK,
								0,
								{
									{
										BBDEBUGDECL_END
									}
								}
							};
							bbOnDebugEnterScope((BBDebugScope *)&__scope);
							struct BBDebugStm __stmt_0 = {0x852c1a4e4bd2c08d, 191, 0};
							bbOnDebugEnterStm(&__stmt_0);
							brl_linkedlist_ListAddLast((struct brl_linkedlist_TList_obj*)bbt_list,(BBOBJECT)bbt_obj3);
							bbOnDebugLeaveScope();
						}
						bbOnDebugLeaveScope();
					}
				}
				bbOnDebugLeaveScope();
			}
			bbOnDebugLeaveScope();
		}
		bbOnDebugLeaveScope();
	}
	bbOnDebugLeaveScope();
	return 0;
}
BBINT _openb3d_openb3dcore_TMesh_MeshListAdd_TTListTObject(struct openb3d_openb3dcore_TMesh_obj* o,struct brl_linkedlist_TList_obj* bbt_list,BBOBJECT bbt_value){
	((struct openb3d_openb3dcore_TMesh_obj*)bbNullObjectTest((BBObject*)o));
	struct openb3d_openb3dcore_TSurface_obj* bbt_surf=(struct openb3d_openb3dcore_TSurface_obj*)((struct openb3d_openb3dcore_TSurface_obj*)&bbNullObject);
	struct openb3d_openb3dcore_TBone_obj* bbt_bone=(struct openb3d_openb3dcore_TBone_obj*)((struct openb3d_openb3dcore_TBone_obj*)&bbNullObject);
	struct BBDebugScope_5 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"MeshListAdd",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TMesh",
				.var_address=&o
			},
			{
				BBDEBUGDECL_LOCAL,
				"list",
				":TList",
				.var_address=&bbt_list
			},
			{
				BBDEBUGDECL_LOCAL,
				"value",
				":Object",
				.var_address=&bbt_value
			},
			{
				BBDEBUGDECL_LOCAL,
				"surf",
				":TSurface",
				.var_address=&bbt_surf
			},
			{
				BBDEBUGDECL_LOCAL,
				"bone",
				":TBone",
				.var_address=&bbt_bone
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x852c1a4e4bd2c08d, 199, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbt_surf=(struct openb3d_openb3dcore_TSurface_obj*)((struct openb3d_openb3dcore_TSurface_obj*)bbObjectDowncast((BBOBJECT)bbt_value,(BBClass*)&openb3d_openb3dcore_TSurface));
	struct BBDebugStm __stmt_1 = {0x852c1a4e4bd2c08d, 200, 0};
	bbOnDebugEnterStm(&__stmt_1);
	bbt_bone=(struct openb3d_openb3dcore_TBone_obj*)((struct openb3d_openb3dcore_TBone_obj*)bbObjectDowncast((BBOBJECT)bbt_value,(BBClass*)&openb3d_openb3dcore_TBone));
	struct BBDebugStm __stmt_2 = {0x852c1a4e4bd2c08d, 202, 0};
	bbOnDebugEnterStm(&__stmt_2);
	struct brl_linkedlist_TList_obj* bbt_=(struct brl_linkedlist_TList_obj*)bbt_list;
	struct BBDebugStm __stmt_3 = {0x852c1a4e4bd2c08d, 203, 0};
	bbOnDebugEnterStm(&__stmt_3);
	if(((struct brl_linkedlist_TList_obj*)bbt_)==((struct openb3d_openb3dcore_TMesh_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmesh_surf_list ){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x852c1a4e4bd2c08d, 204, 0};
		bbOnDebugEnterStm(&__stmt_0);
		if(((BBObject*)bbt_surf)!= &bbNullObject){
			struct BBDebugScope __scope = {
				BBDEBUGSCOPE_LOCALBLOCK,
				0,
				{
					{
						BBDEBUGDECL_END
					}
				}
			};
			bbOnDebugEnterScope((BBDebugScope *)&__scope);
			struct BBDebugStm __stmt_0 = {0x852c1a4e4bd2c08d, 205, 0};
			bbOnDebugEnterStm(&__stmt_0);
			MeshListPushBackSurface_(openb3d_openb3dcore_TEntity_GetInstance_pb_TTEntity((struct openb3d_openb3dcore_TEntity_obj*)((struct openb3d_openb3dcore_TEntity_obj*)bbObjectDowncast((BBOBJECT)o,(BBClass*)&openb3d_openb3dcore_TEntity))),2,openb3d_openb3dcore_TSurface_GetInstance_pb_TTSurface((struct openb3d_openb3dcore_TSurface_obj*)bbt_surf));
			struct BBDebugStm __stmt_1 = {0x852c1a4e4bd2c08d, 206, 0};
			bbOnDebugEnterStm(&__stmt_1);
			((struct openb3d_openb3dcore_TMesh_obj*)bbNullObjectTest((BBObject*)o));
			((struct openb3d_openb3dcore_TMesh_obj*)o)->clas->m_AddList_TTList((struct openb3d_openb3dcore_TMesh_obj*)o,(struct brl_linkedlist_TList_obj*)bbt_list);
			bbOnDebugLeaveScope();
		}
		bbOnDebugLeaveScope();
	}else{
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x852c1a4e4bd2c08d, 208, 0};
		bbOnDebugEnterStm(&__stmt_0);
		if(((struct brl_linkedlist_TList_obj*)bbt_)==((struct openb3d_openb3dcore_TMesh_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmesh_anim_surf_list ){
			struct BBDebugScope __scope = {
				BBDEBUGSCOPE_LOCALBLOCK,
				0,
				{
					{
						BBDEBUGDECL_END
					}
				}
			};
			bbOnDebugEnterScope((BBDebugScope *)&__scope);
			struct BBDebugStm __stmt_0 = {0x852c1a4e4bd2c08d, 209, 0};
			bbOnDebugEnterStm(&__stmt_0);
			if(((BBObject*)bbt_surf)!= &bbNullObject){
				struct BBDebugScope __scope = {
					BBDEBUGSCOPE_LOCALBLOCK,
					0,
					{
						{
							BBDEBUGDECL_END
						}
					}
				};
				bbOnDebugEnterScope((BBDebugScope *)&__scope);
				struct BBDebugStm __stmt_0 = {0x852c1a4e4bd2c08d, 210, 0};
				bbOnDebugEnterStm(&__stmt_0);
				MeshListPushBackSurface_(openb3d_openb3dcore_TEntity_GetInstance_pb_TTEntity((struct openb3d_openb3dcore_TEntity_obj*)((struct openb3d_openb3dcore_TEntity_obj*)bbObjectDowncast((BBOBJECT)o,(BBClass*)&openb3d_openb3dcore_TEntity))),3,openb3d_openb3dcore_TSurface_GetInstance_pb_TTSurface((struct openb3d_openb3dcore_TSurface_obj*)bbt_surf));
				struct BBDebugStm __stmt_1 = {0x852c1a4e4bd2c08d, 211, 0};
				bbOnDebugEnterStm(&__stmt_1);
				((struct openb3d_openb3dcore_TMesh_obj*)bbNullObjectTest((BBObject*)o));
				((struct openb3d_openb3dcore_TMesh_obj*)o)->clas->m_AddList_TTList((struct openb3d_openb3dcore_TMesh_obj*)o,(struct brl_linkedlist_TList_obj*)bbt_list);
				bbOnDebugLeaveScope();
			}
			bbOnDebugLeaveScope();
		}else{
			struct BBDebugScope __scope = {
				BBDEBUGSCOPE_LOCALBLOCK,
				0,
				{
					{
						BBDEBUGDECL_END
					}
				}
			};
			bbOnDebugEnterScope((BBDebugScope *)&__scope);
			struct BBDebugStm __stmt_0 = {0x852c1a4e4bd2c08d, 213, 0};
			bbOnDebugEnterStm(&__stmt_0);
			if(((struct brl_linkedlist_TList_obj*)bbt_)==((struct openb3d_openb3dcore_TMesh_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmesh_bones ){
				struct BBDebugScope __scope = {
					BBDEBUGSCOPE_LOCALBLOCK,
					0,
					{
						{
							BBDEBUGDECL_END
						}
					}
				};
				bbOnDebugEnterScope((BBDebugScope *)&__scope);
				struct BBDebugStm __stmt_0 = {0x852c1a4e4bd2c08d, 214, 0};
				bbOnDebugEnterStm(&__stmt_0);
				if(((BBObject*)bbt_bone)!= &bbNullObject){
					struct BBDebugScope __scope = {
						BBDEBUGSCOPE_LOCALBLOCK,
						0,
						{
							{
								BBDEBUGDECL_END
							}
						}
					};
					bbOnDebugEnterScope((BBDebugScope *)&__scope);
					struct BBDebugStm __stmt_0 = {0x852c1a4e4bd2c08d, 215, 0};
					bbOnDebugEnterStm(&__stmt_0);
					MeshListPushBackBone_(openb3d_openb3dcore_TEntity_GetInstance_pb_TTEntity((struct openb3d_openb3dcore_TEntity_obj*)((struct openb3d_openb3dcore_TEntity_obj*)bbObjectDowncast((BBOBJECT)o,(BBClass*)&openb3d_openb3dcore_TEntity))),4,openb3d_openb3dcore_TEntity_GetInstance_pb_TTEntity((struct openb3d_openb3dcore_TEntity_obj*)((struct openb3d_openb3dcore_TEntity_obj*)bbObjectDowncast((BBOBJECT)bbt_bone,(BBClass*)&openb3d_openb3dcore_TEntity))));
					struct BBDebugStm __stmt_1 = {0x852c1a4e4bd2c08d, 216, 0};
					bbOnDebugEnterStm(&__stmt_1);
					((struct openb3d_openb3dcore_TMesh_obj*)bbNullObjectTest((BBObject*)o));
					((struct openb3d_openb3dcore_TMesh_obj*)o)->clas->m_AddList_TTList((struct openb3d_openb3dcore_TMesh_obj*)o,(struct brl_linkedlist_TList_obj*)bbt_list);
					bbOnDebugLeaveScope();
				}
				bbOnDebugLeaveScope();
			}
			bbOnDebugLeaveScope();
		}
		bbOnDebugLeaveScope();
	}
	bbOnDebugLeaveScope();
	return 0;
}
BBINT _openb3d_openb3dcore_TMesh_MeshListRemove_TTListTObject(struct openb3d_openb3dcore_TMesh_obj* o,struct brl_linkedlist_TList_obj* bbt_list,BBOBJECT bbt_value){
	((struct openb3d_openb3dcore_TMesh_obj*)bbNullObjectTest((BBObject*)o));
	struct openb3d_openb3dcore_TSurface_obj* bbt_surf=(struct openb3d_openb3dcore_TSurface_obj*)((struct openb3d_openb3dcore_TSurface_obj*)&bbNullObject);
	struct openb3d_openb3dcore_TBone_obj* bbt_bone=(struct openb3d_openb3dcore_TBone_obj*)((struct openb3d_openb3dcore_TBone_obj*)&bbNullObject);
	struct BBDebugScope_5 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"MeshListRemove",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TMesh",
				.var_address=&o
			},
			{
				BBDEBUGDECL_LOCAL,
				"list",
				":TList",
				.var_address=&bbt_list
			},
			{
				BBDEBUGDECL_LOCAL,
				"value",
				":Object",
				.var_address=&bbt_value
			},
			{
				BBDEBUGDECL_LOCAL,
				"surf",
				":TSurface",
				.var_address=&bbt_surf
			},
			{
				BBDEBUGDECL_LOCAL,
				"bone",
				":TBone",
				.var_address=&bbt_bone
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x852c1a4e4bd2c08d, 224, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbt_surf=(struct openb3d_openb3dcore_TSurface_obj*)((struct openb3d_openb3dcore_TSurface_obj*)bbObjectDowncast((BBOBJECT)bbt_value,(BBClass*)&openb3d_openb3dcore_TSurface));
	struct BBDebugStm __stmt_1 = {0x852c1a4e4bd2c08d, 225, 0};
	bbOnDebugEnterStm(&__stmt_1);
	bbt_bone=(struct openb3d_openb3dcore_TBone_obj*)((struct openb3d_openb3dcore_TBone_obj*)bbObjectDowncast((BBOBJECT)bbt_value,(BBClass*)&openb3d_openb3dcore_TBone));
	struct BBDebugStm __stmt_2 = {0x852c1a4e4bd2c08d, 227, 0};
	bbOnDebugEnterStm(&__stmt_2);
	struct brl_linkedlist_TList_obj* bbt_=(struct brl_linkedlist_TList_obj*)bbt_list;
	struct BBDebugStm __stmt_3 = {0x852c1a4e4bd2c08d, 228, 0};
	bbOnDebugEnterStm(&__stmt_3);
	if(((struct brl_linkedlist_TList_obj*)bbt_)==((struct openb3d_openb3dcore_TMesh_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmesh_surf_list ){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x852c1a4e4bd2c08d, 229, 0};
		bbOnDebugEnterStm(&__stmt_0);
		if(((BBObject*)bbt_surf)!= &bbNullObject){
			struct BBDebugScope __scope = {
				BBDEBUGSCOPE_LOCALBLOCK,
				0,
				{
					{
						BBDEBUGDECL_END
					}
				}
			};
			bbOnDebugEnterScope((BBDebugScope *)&__scope);
			struct BBDebugStm __stmt_0 = {0x852c1a4e4bd2c08d, 230, 0};
			bbOnDebugEnterStm(&__stmt_0);
			MeshListRemoveSurface_(openb3d_openb3dcore_TEntity_GetInstance_pb_TTEntity((struct openb3d_openb3dcore_TEntity_obj*)((struct openb3d_openb3dcore_TEntity_obj*)bbObjectDowncast((BBOBJECT)o,(BBClass*)&openb3d_openb3dcore_TEntity))),2,openb3d_openb3dcore_TSurface_GetInstance_pb_TTSurface((struct openb3d_openb3dcore_TSurface_obj*)bbt_surf));
			struct BBDebugStm __stmt_1 = {0x852c1a4e4bd2c08d, 231, 0};
			bbOnDebugEnterStm(&__stmt_1);
			brl_linkedlist_ListRemove((struct brl_linkedlist_TList_obj*)bbt_list,(BBOBJECT)bbt_value);
			struct BBDebugStm __stmt_2 = {0x852c1a4e4bd2c08d, 231, 0};
			bbOnDebugEnterStm(&__stmt_2);
			((struct openb3d_openb3dcore_TMesh_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmesh_surf_list_id -=1;
			bbOnDebugLeaveScope();
		}
		bbOnDebugLeaveScope();
	}else{
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x852c1a4e4bd2c08d, 233, 0};
		bbOnDebugEnterStm(&__stmt_0);
		if(((struct brl_linkedlist_TList_obj*)bbt_)==((struct openb3d_openb3dcore_TMesh_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmesh_anim_surf_list ){
			struct BBDebugScope __scope = {
				BBDEBUGSCOPE_LOCALBLOCK,
				0,
				{
					{
						BBDEBUGDECL_END
					}
				}
			};
			bbOnDebugEnterScope((BBDebugScope *)&__scope);
			struct BBDebugStm __stmt_0 = {0x852c1a4e4bd2c08d, 234, 0};
			bbOnDebugEnterStm(&__stmt_0);
			if(((BBObject*)bbt_surf)!= &bbNullObject){
				struct BBDebugScope __scope = {
					BBDEBUGSCOPE_LOCALBLOCK,
					0,
					{
						{
							BBDEBUGDECL_END
						}
					}
				};
				bbOnDebugEnterScope((BBDebugScope *)&__scope);
				struct BBDebugStm __stmt_0 = {0x852c1a4e4bd2c08d, 235, 0};
				bbOnDebugEnterStm(&__stmt_0);
				MeshListRemoveSurface_(openb3d_openb3dcore_TEntity_GetInstance_pb_TTEntity((struct openb3d_openb3dcore_TEntity_obj*)((struct openb3d_openb3dcore_TEntity_obj*)bbObjectDowncast((BBOBJECT)o,(BBClass*)&openb3d_openb3dcore_TEntity))),3,openb3d_openb3dcore_TSurface_GetInstance_pb_TTSurface((struct openb3d_openb3dcore_TSurface_obj*)bbt_surf));
				struct BBDebugStm __stmt_1 = {0x852c1a4e4bd2c08d, 236, 0};
				bbOnDebugEnterStm(&__stmt_1);
				brl_linkedlist_ListRemove((struct brl_linkedlist_TList_obj*)bbt_list,(BBOBJECT)bbt_value);
				struct BBDebugStm __stmt_2 = {0x852c1a4e4bd2c08d, 236, 0};
				bbOnDebugEnterStm(&__stmt_2);
				((struct openb3d_openb3dcore_TMesh_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmesh_anim_surf_list_id -=1;
				bbOnDebugLeaveScope();
			}
			bbOnDebugLeaveScope();
		}else{
			struct BBDebugScope __scope = {
				BBDEBUGSCOPE_LOCALBLOCK,
				0,
				{
					{
						BBDEBUGDECL_END
					}
				}
			};
			bbOnDebugEnterScope((BBDebugScope *)&__scope);
			struct BBDebugStm __stmt_0 = {0x852c1a4e4bd2c08d, 238, 0};
			bbOnDebugEnterStm(&__stmt_0);
			if(((struct brl_linkedlist_TList_obj*)bbt_)==((struct openb3d_openb3dcore_TMesh_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmesh_bones ){
				struct BBDebugScope __scope = {
					BBDEBUGSCOPE_LOCALBLOCK,
					0,
					{
						{
							BBDEBUGDECL_END
						}
					}
				};
				bbOnDebugEnterScope((BBDebugScope *)&__scope);
				struct BBDebugStm __stmt_0 = {0x852c1a4e4bd2c08d, 239, 0};
				bbOnDebugEnterStm(&__stmt_0);
				if(((BBObject*)bbt_bone)!= &bbNullObject){
					struct BBDebugScope __scope = {
						BBDEBUGSCOPE_LOCALBLOCK,
						0,
						{
							{
								BBDEBUGDECL_END
							}
						}
					};
					bbOnDebugEnterScope((BBDebugScope *)&__scope);
					struct BBDebugStm __stmt_0 = {0x852c1a4e4bd2c08d, 240, 0};
					bbOnDebugEnterStm(&__stmt_0);
					MeshListRemoveBone_(openb3d_openb3dcore_TEntity_GetInstance_pb_TTEntity((struct openb3d_openb3dcore_TEntity_obj*)((struct openb3d_openb3dcore_TEntity_obj*)bbObjectDowncast((BBOBJECT)o,(BBClass*)&openb3d_openb3dcore_TEntity))),4,openb3d_openb3dcore_TEntity_GetInstance_pb_TTEntity((struct openb3d_openb3dcore_TEntity_obj*)((struct openb3d_openb3dcore_TEntity_obj*)bbObjectDowncast((BBOBJECT)bbt_bone,(BBClass*)&openb3d_openb3dcore_TEntity))));
					struct BBDebugStm __stmt_1 = {0x852c1a4e4bd2c08d, 241, 0};
					bbOnDebugEnterStm(&__stmt_1);
					brl_linkedlist_ListRemove((struct brl_linkedlist_TList_obj*)bbt_list,(BBOBJECT)bbt_value);
					struct BBDebugStm __stmt_2 = {0x852c1a4e4bd2c08d, 241, 0};
					bbOnDebugEnterStm(&__stmt_2);
					((struct openb3d_openb3dcore_TMesh_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmesh_bones_id -=1;
					bbOnDebugLeaveScope();
				}
				bbOnDebugLeaveScope();
			}
			bbOnDebugLeaveScope();
		}
		bbOnDebugLeaveScope();
	}
	bbOnDebugLeaveScope();
	return 0;
}
BBINT _openb3d_openb3dcore_TMesh_MeshArrayResize_ii(struct openb3d_openb3dcore_TMesh_obj* o,BBINT bbt_varid,BBINT bbt_size){
	((struct openb3d_openb3dcore_TMesh_obj*)bbNullObjectTest((BBObject*)o));
	struct BBDebugScope_3 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"MeshArrayResize",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TMesh",
				.var_address=&o
			},
			{
				BBDEBUGDECL_LOCAL,
				"varid",
				"i",
				.var_address=&bbt_varid
			},
			{
				BBDEBUGDECL_LOCAL,
				"size",
				"i",
				.var_address=&bbt_size
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x852c1a4e4bd2c08d, 249, 0};
	bbOnDebugEnterStm(&__stmt_0);
	BBINT bbt_=bbt_varid;
	struct BBDebugStm __stmt_1 = {0x852c1a4e4bd2c08d, 250, 0};
	bbOnDebugEnterStm(&__stmt_1);
	if(bbt_==4){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x852c1a4e4bd2c08d, 251, 0};
		bbOnDebugEnterStm(&__stmt_0);
		MeshResizeBoneVector_(openb3d_openb3dcore_TEntity_GetInstance_pb_TTEntity((struct openb3d_openb3dcore_TEntity_obj*)((struct openb3d_openb3dcore_TEntity_obj*)bbObjectDowncast((BBOBJECT)o,(BBClass*)&openb3d_openb3dcore_TEntity))),4,bbt_size);
		struct BBDebugStm __stmt_1 = {0x852c1a4e4bd2c08d, 252, 0};
		bbOnDebugEnterStm(&__stmt_1);
		((struct openb3d_openb3dcore_TMesh_obj*)bbNullObjectTest((BBObject*)o));
		((struct openb3d_openb3dcore_TMesh_obj*)o)->clas->m_CopyList_TTList((struct openb3d_openb3dcore_TMesh_obj*)o,(struct brl_linkedlist_TList_obj*)((struct openb3d_openb3dcore_TMesh_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmesh_bones );
		bbOnDebugLeaveScope();
	}
	bbOnDebugLeaveScope();
	return 0;
}
BBINT _openb3d_openb3dcore_TMesh_MeshArraySet_iiTObject(struct openb3d_openb3dcore_TMesh_obj* o,BBINT bbt_varid,BBINT bbt_pos,BBOBJECT bbt_value){
	((struct openb3d_openb3dcore_TMesh_obj*)bbNullObjectTest((BBObject*)o));
	struct openb3d_openb3dcore_TBone_obj* bbt_bone=(struct openb3d_openb3dcore_TBone_obj*)((struct openb3d_openb3dcore_TBone_obj*)&bbNullObject);
	struct BBDebugScope_5 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"MeshArraySet",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TMesh",
				.var_address=&o
			},
			{
				BBDEBUGDECL_LOCAL,
				"varid",
				"i",
				.var_address=&bbt_varid
			},
			{
				BBDEBUGDECL_LOCAL,
				"pos",
				"i",
				.var_address=&bbt_pos
			},
			{
				BBDEBUGDECL_LOCAL,
				"value",
				":Object",
				.var_address=&bbt_value
			},
			{
				BBDEBUGDECL_LOCAL,
				"bone",
				":TBone",
				.var_address=&bbt_bone
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x852c1a4e4bd2c08d, 259, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbt_bone=(struct openb3d_openb3dcore_TBone_obj*)((struct openb3d_openb3dcore_TBone_obj*)bbObjectDowncast((BBOBJECT)bbt_value,(BBClass*)&openb3d_openb3dcore_TBone));
	struct BBDebugStm __stmt_1 = {0x852c1a4e4bd2c08d, 261, 0};
	bbOnDebugEnterStm(&__stmt_1);
	BBINT bbt_=bbt_varid;
	struct BBDebugStm __stmt_2 = {0x852c1a4e4bd2c08d, 262, 0};
	bbOnDebugEnterStm(&__stmt_2);
	if(bbt_==4){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x852c1a4e4bd2c08d, 263, 0};
		bbOnDebugEnterStm(&__stmt_0);
		if(((BBObject*)bbt_bone)!= &bbNullObject){
			struct BBDebugScope __scope = {
				BBDEBUGSCOPE_LOCALBLOCK,
				0,
				{
					{
						BBDEBUGDECL_END
					}
				}
			};
			bbOnDebugEnterScope((BBDebugScope *)&__scope);
			struct BBDebugStm __stmt_0 = {0x852c1a4e4bd2c08d, 264, 0};
			bbOnDebugEnterStm(&__stmt_0);
			MeshSetBoneVector_(openb3d_openb3dcore_TEntity_GetInstance_pb_TTEntity((struct openb3d_openb3dcore_TEntity_obj*)((struct openb3d_openb3dcore_TEntity_obj*)bbObjectDowncast((BBOBJECT)o,(BBClass*)&openb3d_openb3dcore_TEntity))),4,bbt_pos,openb3d_openb3dcore_TEntity_GetInstance_pb_TTEntity((struct openb3d_openb3dcore_TEntity_obj*)((struct openb3d_openb3dcore_TEntity_obj*)bbObjectDowncast((BBOBJECT)bbt_bone,(BBClass*)&openb3d_openb3dcore_TEntity))));
			bbOnDebugLeaveScope();
		}
		bbOnDebugLeaveScope();
	}
	bbOnDebugLeaveScope();
	return 0;
}
struct openb3d_openb3dcore_TMesh_obj* openb3d_openb3dcore_TMesh_NewMesh_TTMesh(){
	BBBYTE* bbt_inst=0;
	struct BBDebugScope_1 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"NewMesh",
		{
			{
				BBDEBUGDECL_LOCAL,
				"inst",
				"*b",
				.var_address=&bbt_inst
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x852c1a4e4bd2c08d, 272, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbt_inst=NewMesh_();
	struct BBDebugStm __stmt_1 = {0x852c1a4e4bd2c08d, 273, 0};
	bbOnDebugEnterStm(&__stmt_1);
	bbOnDebugLeaveScope();
	return (struct openb3d_openb3dcore_TMesh_obj*)openb3d_openb3dcore_TMesh_CreateObject_TTMesh_pb(bbt_inst);
}
struct openb3d_openb3dcore_TMesh_obj* openb3d_openb3dcore_TMesh_Create_TTMesh(){
	BBBYTE* bbt_inst=0;
	struct BBDebugScope_1 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"Create",
		{
			{
				BBDEBUGDECL_LOCAL,
				"inst",
				"*b",
				.var_address=&bbt_inst
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x852c1a4e4bd2c08d, 279, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbt_inst=NewMesh_();
	struct BBDebugStm __stmt_1 = {0x852c1a4e4bd2c08d, 280, 0};
	bbOnDebugEnterStm(&__stmt_1);
	bbOnDebugLeaveScope();
	return (struct openb3d_openb3dcore_TMesh_obj*)openb3d_openb3dcore_TMesh_CreateObject_TTMesh_pb(bbt_inst);
}
BBINT _openb3d_openb3dcore_TMesh_LightMesh_fffffff(struct openb3d_openb3dcore_TMesh_obj* o,BBFLOAT bbt_red,BBFLOAT bbt_green,BBFLOAT bbt_blue,BBFLOAT bbt_range,BBFLOAT bbt_light_x,BBFLOAT bbt_light_y,BBFLOAT bbt_light_z){
	((struct openb3d_openb3dcore_TMesh_obj*)bbNullObjectTest((BBObject*)o));
	struct BBDebugScope_8 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"LightMesh",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TMesh",
				.var_address=&o
			},
			{
				BBDEBUGDECL_LOCAL,
				"red",
				"f",
				.var_address=&bbt_red
			},
			{
				BBDEBUGDECL_LOCAL,
				"green",
				"f",
				.var_address=&bbt_green
			},
			{
				BBDEBUGDECL_LOCAL,
				"blue",
				"f",
				.var_address=&bbt_blue
			},
			{
				BBDEBUGDECL_LOCAL,
				"range",
				"f",
				.var_address=&bbt_range
			},
			{
				BBDEBUGDECL_LOCAL,
				"light_x",
				"f",
				.var_address=&bbt_light_x
			},
			{
				BBDEBUGDECL_LOCAL,
				"light_y",
				"f",
				.var_address=&bbt_light_y
			},
			{
				BBDEBUGDECL_LOCAL,
				"light_z",
				"f",
				.var_address=&bbt_light_z
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x852c1a4e4bd2c08d, 304, 0};
	bbOnDebugEnterStm(&__stmt_0);
	LightMesh_(openb3d_openb3dcore_TEntity_GetInstance_pb_TTEntity((struct openb3d_openb3dcore_TEntity_obj*)((struct openb3d_openb3dcore_TEntity_obj*)bbObjectDowncast((BBOBJECT)o,(BBClass*)&openb3d_openb3dcore_TEntity))),bbt_red,bbt_green,bbt_blue,bbt_range,bbt_light_x,bbt_light_y,bbt_light_z);
	bbOnDebugLeaveScope();
	return 0;
}
BBINT _openb3d_openb3dcore_TMesh_CreateAllChildren(struct openb3d_openb3dcore_TMesh_obj* o){
	((struct openb3d_openb3dcore_TMesh_obj*)bbNullObjectTest((BBObject*)o));
	BBINT bbt_child_no=0;
	BBINT bbt_count_children=0;
	struct BBDebugScope_3 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"CreateAllChildren",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TMesh",
				.var_address=&o
			},
			{
				BBDEBUGDECL_LOCAL,
				"child_no",
				"i",
				.var_address=&bbt_child_no
			},
			{
				BBDEBUGDECL_LOCAL,
				"count_children",
				"i",
				.var_address=&bbt_count_children
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x852c1a4e4bd2c08d, 310, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbt_child_no=1;
	struct BBDebugStm __stmt_1 = {0x852c1a4e4bd2c08d, 311, 0};
	bbOnDebugEnterStm(&__stmt_1);
	bbt_count_children=openb3d_openb3dcore_TEntity_CountAllChildren_i_TTEntityi((struct openb3d_openb3dcore_TEntity_obj*)((struct openb3d_openb3dcore_TEntity_obj*)bbObjectDowncast((BBOBJECT)o,(BBClass*)&openb3d_openb3dcore_TEntity)),0);
	struct BBDebugStm __stmt_2 = {0x852c1a4e4bd2c08d, 312, 0};
	bbOnDebugEnterStm(&__stmt_2);
	{
		BBINT bbt_child_no2=1;
		BBINT bbt_=bbt_count_children;
		for(;(bbt_child_no2<=bbt_);bbt_child_no2=(bbt_child_no2+1)){
			BBINT bbt_count=0;
			BBBYTE* bbt_inst=0;
			struct openb3d_openb3dcore_TEntity_obj* bbt_child_ent=(struct openb3d_openb3dcore_TEntity_obj*)((struct openb3d_openb3dcore_TEntity_obj*)&bbNullObject);
			struct BBDebugScope_4 __scope = {
				BBDEBUGSCOPE_LOCALBLOCK,
				0,
				{
					{
						BBDEBUGDECL_LOCAL,
						"child_no",
						"i",
						.var_address=&bbt_child_no2
					},
					{
						BBDEBUGDECL_LOCAL,
						"count",
						"i",
						.var_address=&bbt_count
					},
					{
						BBDEBUGDECL_LOCAL,
						"inst",
						"*b",
						.var_address=&bbt_inst
					},
					{
						BBDEBUGDECL_LOCAL,
						"child_ent",
						":TEntity",
						.var_address=&bbt_child_ent
					},
					{
						BBDEBUGDECL_END
					}
				}
			};
			bbOnDebugEnterScope((BBDebugScope *)&__scope);
			struct BBDebugStm __stmt_0 = {0x852c1a4e4bd2c08d, 313, 0};
			bbOnDebugEnterStm(&__stmt_0);
			bbt_count=0;
			struct BBDebugStm __stmt_1 = {0x852c1a4e4bd2c08d, 314, 0};
			bbOnDebugEnterStm(&__stmt_1);
			bbt_inst=GetChildFromAll_(openb3d_openb3dcore_TEntity_GetInstance_pb_TTEntity((struct openb3d_openb3dcore_TEntity_obj*)((struct openb3d_openb3dcore_TEntity_obj*)bbObjectDowncast((BBOBJECT)o,(BBClass*)&openb3d_openb3dcore_TEntity))),bbt_child_no2,(&bbt_count),0);
			struct BBDebugStm __stmt_2 = {0x852c1a4e4bd2c08d, 315, 0};
			bbOnDebugEnterStm(&__stmt_2);
			bbt_child_ent=(struct openb3d_openb3dcore_TEntity_obj*)openb3d_openb3dcore_TEntity_GetObject_TTEntity_pb(bbt_inst);
			struct BBDebugStm __stmt_3 = {0x852c1a4e4bd2c08d, 316, 0};
			bbOnDebugEnterStm(&__stmt_3);
			if((((BBOBJECT)bbt_child_ent)==&bbNullObject) && (bbt_inst!=0)){
				struct BBDebugScope __scope = {
					BBDEBUGSCOPE_LOCALBLOCK,
					0,
					{
						{
							BBDEBUGDECL_END
						}
					}
				};
				bbOnDebugEnterScope((BBDebugScope *)&__scope);
				struct BBDebugStm __stmt_0 = {0x852c1a4e4bd2c08d, 316, 0};
				bbOnDebugEnterStm(&__stmt_0);
				bbt_child_ent=(struct openb3d_openb3dcore_TEntity_obj*)((struct openb3d_openb3dcore_TEntity_obj*)bbObjectDowncast((BBOBJECT)o->clas->f_CreateObject_TTMesh_pb(bbt_inst),(BBClass*)&openb3d_openb3dcore_TEntity));
				bbOnDebugLeaveScope();
			}
			bbOnDebugLeaveScope();
		}
	}
	bbOnDebugLeaveScope();
	return 0;
}
struct openb3d_openb3dcore_TMesh_obj* openb3d_openb3dcore_TMesh_CreatePlane_TTMesh_iTTEntity(BBINT bbt_divisions,struct openb3d_openb3dcore_TEntity_obj* bbt_parent){
	struct openb3d_openb3dcore_TMesh_obj* bbt_mesh=(struct openb3d_openb3dcore_TMesh_obj*)((struct openb3d_openb3dcore_TMesh_obj*)&bbNullObject);
	struct openb3d_openb3dcore_TSurface_obj* bbt_surf=(struct openb3d_openb3dcore_TSurface_obj*)((struct openb3d_openb3dcore_TSurface_obj*)&bbNullObject);
	struct BBDebugScope_4 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"CreatePlane",
		{
			{
				BBDEBUGDECL_LOCAL,
				"divisions",
				"i",
				.var_address=&bbt_divisions
			},
			{
				BBDEBUGDECL_LOCAL,
				"parent",
				":TEntity",
				.var_address=&bbt_parent
			},
			{
				BBDEBUGDECL_LOCAL,
				"mesh",
				":TMesh",
				.var_address=&bbt_mesh
			},
			{
				BBDEBUGDECL_LOCAL,
				"surf",
				":TSurface",
				.var_address=&bbt_surf
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x852c1a4e4bd2c08d, 323, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbt_mesh=(struct openb3d_openb3dcore_TMesh_obj*)openb3d_openb3dcore_TMesh_CreateMesh_TTMesh_TTEntity((struct openb3d_openb3dcore_TEntity_obj*)bbt_parent);
	struct BBDebugStm __stmt_1 = {0x852c1a4e4bd2c08d, 324, 0};
	bbOnDebugEnterStm(&__stmt_1);
	bbt_surf=(struct openb3d_openb3dcore_TSurface_obj*)openb3d_openb3dcore_CreateSurface((struct openb3d_openb3dcore_TMesh_obj*)bbt_mesh,(struct openb3d_openb3dcore_TBrush_obj*)&bbNullObject);
	struct BBDebugStm __stmt_2 = {0x852c1a4e4bd2c08d, 325, 0};
	bbOnDebugEnterStm(&__stmt_2);
	((struct openb3d_openb3dcore_TMesh_obj*)bbNullObjectTest((BBObject*)bbt_mesh))->_openb3d_openb3dcore_tmesh_plane_divisions =bbt_divisions;
	struct BBDebugStm __stmt_3 = {0x852c1a4e4bd2c08d, 326, 0};
	bbOnDebugEnterStm(&__stmt_3);
	brl_linkedlist_ListAddLast((struct brl_linkedlist_TList_obj*)openb3d_openb3dcore_TMesh_plane_list,(BBOBJECT)bbt_mesh);
	struct BBDebugStm __stmt_4 = {0x852c1a4e4bd2c08d, 327, 0};
	bbOnDebugEnterStm(&__stmt_4);
	bbOnDebugLeaveScope();
	return (struct openb3d_openb3dcore_TMesh_obj*)bbt_mesh;
}
BBINT openb3d_openb3dcore_TMesh_UpdatePlane_i_TTMesh(struct openb3d_openb3dcore_TMesh_obj* bbt_mesh){
	BBINT bbt_iv=0;
	BBINT bbt_ix=0;
	BBINT bbt_iz=0;
	BBFLOAT bbt_ptx=0;
	BBFLOAT bbt_ptz=0;
	struct openb3d_openb3dcore_TCamera_obj* bbt_camera=(struct openb3d_openb3dcore_TCamera_obj*)((struct openb3d_openb3dcore_TCamera_obj*)&bbNullObject);
	BBFLOAT bbt_size=0;
	struct openb3d_openb3dcore_TSurface_obj* bbt_surf=(struct openb3d_openb3dcore_TSurface_obj*)((struct openb3d_openb3dcore_TSurface_obj*)&bbNullObject);
	BBINT bbt_divisions=0;
	BBFLOAT bbt_subsize=0;
	BBFLOAT bbt_cx=0;
	BBFLOAT bbt_cz=0;
	struct openb3d_openb3dcore_TTexture_obj* bbt_tex=(struct openb3d_openb3dcore_TTexture_obj*)((struct openb3d_openb3dcore_TTexture_obj*)&bbNullObject);
	struct BBDebugScope_14 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"UpdatePlane",
		{
			{
				BBDEBUGDECL_LOCAL,
				"mesh",
				":TMesh",
				.var_address=&bbt_mesh
			},
			{
				BBDEBUGDECL_LOCAL,
				"iv",
				"i",
				.var_address=&bbt_iv
			},
			{
				BBDEBUGDECL_LOCAL,
				"ix",
				"i",
				.var_address=&bbt_ix
			},
			{
				BBDEBUGDECL_LOCAL,
				"iz",
				"i",
				.var_address=&bbt_iz
			},
			{
				BBDEBUGDECL_LOCAL,
				"ptx",
				"f",
				.var_address=&bbt_ptx
			},
			{
				BBDEBUGDECL_LOCAL,
				"ptz",
				"f",
				.var_address=&bbt_ptz
			},
			{
				BBDEBUGDECL_LOCAL,
				"camera",
				":TCamera",
				.var_address=&bbt_camera
			},
			{
				BBDEBUGDECL_LOCAL,
				"size",
				"f",
				.var_address=&bbt_size
			},
			{
				BBDEBUGDECL_LOCAL,
				"surf",
				":TSurface",
				.var_address=&bbt_surf
			},
			{
				BBDEBUGDECL_LOCAL,
				"divisions",
				"i",
				.var_address=&bbt_divisions
			},
			{
				BBDEBUGDECL_LOCAL,
				"subsize",
				"f",
				.var_address=&bbt_subsize
			},
			{
				BBDEBUGDECL_LOCAL,
				"cx",
				"f",
				.var_address=&bbt_cx
			},
			{
				BBDEBUGDECL_LOCAL,
				"cz",
				"f",
				.var_address=&bbt_cz
			},
			{
				BBDEBUGDECL_LOCAL,
				"tex",
				":TTexture",
				.var_address=&bbt_tex
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x852c1a4e4bd2c08d, 334, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbt_iv=0;
	struct BBDebugStm __stmt_1 = {0x852c1a4e4bd2c08d, 334, 0};
	bbOnDebugEnterStm(&__stmt_1);
	bbt_ix=0;
	struct BBDebugStm __stmt_2 = {0x852c1a4e4bd2c08d, 334, 0};
	bbOnDebugEnterStm(&__stmt_2);
	bbt_iz=0;
	struct BBDebugStm __stmt_3 = {0x852c1a4e4bd2c08d, 334, 0};
	bbOnDebugEnterStm(&__stmt_3);
	bbt_ptx=.00000000f;
	struct BBDebugStm __stmt_4 = {0x852c1a4e4bd2c08d, 334, 0};
	bbOnDebugEnterStm(&__stmt_4);
	bbt_ptz=.00000000f;
	struct BBDebugStm __stmt_5 = {0x852c1a4e4bd2c08d, 335, 0};
	bbOnDebugEnterStm(&__stmt_5);
	bbt_camera=(struct openb3d_openb3dcore_TCamera_obj*)openb3d_openb3dcore_TGlobal3D_camera_in_use;
	struct BBDebugStm __stmt_6 = {0x852c1a4e4bd2c08d, 336, 0};
	bbOnDebugEnterStm(&__stmt_6);
	bbt_size=(((struct openb3d_openb3dcore_TCamera_obj*)bbNullObjectTest((BBObject*)bbt_camera))->_openb3d_openb3dcore_tcamera_range_far [0]*1.5f);
	struct BBDebugStm __stmt_7 = {0x852c1a4e4bd2c08d, 337, 0};
	bbOnDebugEnterStm(&__stmt_7);
	bbt_surf=(struct openb3d_openb3dcore_TSurface_obj*)openb3d_openb3dcore_GetSurface((struct openb3d_openb3dcore_TMesh_obj*)bbt_mesh,1);
	struct BBDebugStm __stmt_8 = {0x852c1a4e4bd2c08d, 338, 0};
	bbOnDebugEnterStm(&__stmt_8);
	if(openb3d_openb3dcore_CountVertices((struct openb3d_openb3dcore_TSurface_obj*)bbt_surf)>0){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x852c1a4e4bd2c08d, 338, 0};
		bbOnDebugEnterStm(&__stmt_0);
		openb3d_openb3dcore_ClearSurface((struct openb3d_openb3dcore_TSurface_obj*)bbt_surf,1,1);
		bbOnDebugLeaveScope();
	}
	struct BBDebugStm __stmt_9 = {0x852c1a4e4bd2c08d, 340, 0};
	bbOnDebugEnterStm(&__stmt_9);
	bbt_divisions=((struct openb3d_openb3dcore_TMesh_obj*)bbNullObjectTest((BBObject*)bbt_mesh))->_openb3d_openb3dcore_tmesh_plane_divisions ;
	struct BBDebugStm __stmt_10 = {0x852c1a4e4bd2c08d, 341, 0};
	bbOnDebugEnterStm(&__stmt_10);
	if(bbt_divisions>64){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x852c1a4e4bd2c08d, 341, 0};
		bbOnDebugEnterStm(&__stmt_0);
		bbt_divisions=64;
		bbOnDebugLeaveScope();
	}
	struct BBDebugStm __stmt_11 = {0x852c1a4e4bd2c08d, 342, 0};
	bbOnDebugEnterStm(&__stmt_11);
	if(bbt_divisions<1){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x852c1a4e4bd2c08d, 342, 0};
		bbOnDebugEnterStm(&__stmt_0);
		bbt_divisions=1;
		bbOnDebugLeaveScope();
	}
	struct BBDebugStm __stmt_12 = {0x852c1a4e4bd2c08d, 343, 0};
	bbOnDebugEnterStm(&__stmt_12);
	bbt_subsize=(bbt_size/((BBFLOAT)bbt_divisions));
	struct BBDebugStm __stmt_13 = {0x852c1a4e4bd2c08d, 345, 0};
	bbOnDebugEnterStm(&__stmt_13);
	BBINT bbt_=bbt_divisions;
	for(bbt_iz=0;(bbt_iz<=bbt_);bbt_iz=(bbt_iz+1)){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x852c1a4e4bd2c08d, 346, 0};
		bbOnDebugEnterStm(&__stmt_0);
		BBINT bbt_2=bbt_divisions;
		for(bbt_ix=0;(bbt_ix<=bbt_2);bbt_ix=(bbt_ix+1)){
			struct BBDebugScope __scope = {
				BBDEBUGSCOPE_LOCALBLOCK,
				0,
				{
					{
						BBDEBUGDECL_END
					}
				}
			};
			bbOnDebugEnterScope((BBDebugScope *)&__scope);
			struct BBDebugStm __stmt_0 = {0x852c1a4e4bd2c08d, 347, 0};
			bbOnDebugEnterStm(&__stmt_0);
			bbt_ptx=(((((BBFLOAT)bbt_ix)*bbt_subsize)-(((BBFLOAT)(bbt_divisions/2))*bbt_subsize))*2.00000000f);
			struct BBDebugStm __stmt_1 = {0x852c1a4e4bd2c08d, 348, 0};
			bbOnDebugEnterStm(&__stmt_1);
			bbt_ptz=(((((BBFLOAT)bbt_iz)*bbt_subsize)-(((BBFLOAT)(bbt_divisions/2))*bbt_subsize))*2.00000000f);
			struct BBDebugStm __stmt_2 = {0x852c1a4e4bd2c08d, 349, 0};
			bbOnDebugEnterStm(&__stmt_2);
			bbt_iv=(bbt_ix+(bbt_iz*(bbt_divisions+1)));
			struct BBDebugStm __stmt_3 = {0x852c1a4e4bd2c08d, 350, 0};
			bbOnDebugEnterStm(&__stmt_3);
			((struct openb3d_openb3dcore_TSurface_obj*)bbNullObjectTest((BBObject*)bbt_surf))->clas->m_AddVertex_ffffff((struct openb3d_openb3dcore_TSurface_obj*)bbt_surf,bbt_ptx,0.00000000f,bbt_ptz,bbt_ptx,-bbt_ptz,0.00000000f);
			struct BBDebugStm __stmt_4 = {0x852c1a4e4bd2c08d, 351, 0};
			bbOnDebugEnterStm(&__stmt_4);
			((struct openb3d_openb3dcore_TSurface_obj*)bbNullObjectTest((BBObject*)bbt_surf))->clas->m_VertexNormal_ifff((struct openb3d_openb3dcore_TSurface_obj*)bbt_surf,bbt_iv,0.00000000f,1.00000000f,0.00000000f);
			bbOnDebugLeaveScope();
		}
		bbOnDebugLeaveScope();
	}
	struct BBDebugStm __stmt_14 = {0x852c1a4e4bd2c08d, 355, 0};
	bbOnDebugEnterStm(&__stmt_14);
	BBINT bbt_3=(bbt_divisions-1);
	for(bbt_iz=0;(bbt_iz<=bbt_3);bbt_iz=(bbt_iz+1)){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x852c1a4e4bd2c08d, 356, 0};
		bbOnDebugEnterStm(&__stmt_0);
		BBINT bbt_4=(bbt_divisions-1);
		for(bbt_ix=0;(bbt_ix<=bbt_4);bbt_ix=(bbt_ix+1)){
			struct BBDebugScope __scope = {
				BBDEBUGSCOPE_LOCALBLOCK,
				0,
				{
					{
						BBDEBUGDECL_END
					}
				}
			};
			bbOnDebugEnterScope((BBDebugScope *)&__scope);
			struct BBDebugStm __stmt_0 = {0x852c1a4e4bd2c08d, 357, 0};
			bbOnDebugEnterStm(&__stmt_0);
			bbt_iv=(bbt_ix+(bbt_iz*(bbt_divisions+1)));
			struct BBDebugStm __stmt_1 = {0x852c1a4e4bd2c08d, 358, 0};
			bbOnDebugEnterStm(&__stmt_1);
			((struct openb3d_openb3dcore_TSurface_obj*)bbNullObjectTest((BBObject*)bbt_surf))->clas->m_AddTriangle_iii((struct openb3d_openb3dcore_TSurface_obj*)bbt_surf,bbt_iv,((bbt_iv+bbt_divisions)+1),((bbt_iv+bbt_divisions)+2));
			struct BBDebugStm __stmt_2 = {0x852c1a4e4bd2c08d, 359, 0};
			bbOnDebugEnterStm(&__stmt_2);
			((struct openb3d_openb3dcore_TSurface_obj*)bbNullObjectTest((BBObject*)bbt_surf))->clas->m_AddTriangle_iii((struct openb3d_openb3dcore_TSurface_obj*)bbt_surf,((bbt_iv+bbt_divisions)+2),(bbt_iv+1),bbt_iv);
			bbOnDebugLeaveScope();
		}
		bbOnDebugLeaveScope();
	}
	struct BBDebugStm __stmt_15 = {0x852c1a4e4bd2c08d, 378, 0};
	bbOnDebugEnterStm(&__stmt_15);
	bbt_cx=openb3d_openb3dcore_EntityX((struct openb3d_openb3dcore_TEntity_obj*)((struct openb3d_openb3dcore_TEntity_obj*)bbObjectDowncast((BBOBJECT)bbt_camera,(BBClass*)&openb3d_openb3dcore_TEntity)),1);
	struct BBDebugStm __stmt_16 = {0x852c1a4e4bd2c08d, 379, 0};
	bbOnDebugEnterStm(&__stmt_16);
	bbt_cz=openb3d_openb3dcore_EntityZ((struct openb3d_openb3dcore_TEntity_obj*)((struct openb3d_openb3dcore_TEntity_obj*)bbObjectDowncast((BBOBJECT)bbt_camera,(BBClass*)&openb3d_openb3dcore_TEntity)),1);
	struct BBDebugStm __stmt_17 = {0x852c1a4e4bd2c08d, 380, 0};
	bbOnDebugEnterStm(&__stmt_17);
	bbt_tex=(struct openb3d_openb3dcore_TTexture_obj*)((struct openb3d_openb3dcore_TTexture_obj**)BBARRAYDATAINDEX((((struct openb3d_openb3dcore_TBrush_obj*)bbNullObjectTest((BBObject*)((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)bbt_mesh))->_openb3d_openb3dcore_tentity_brush ))->_openb3d_openb3dcore_tbrush_tex ),(((struct openb3d_openb3dcore_TBrush_obj*)bbNullObjectTest((BBObject*)((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)bbt_mesh))->_openb3d_openb3dcore_tentity_brush ))->_openb3d_openb3dcore_tbrush_tex )->dims,0U))[0U];
	struct BBDebugStm __stmt_18 = {0x852c1a4e4bd2c08d, 382, 0};
	bbOnDebugEnterStm(&__stmt_18);
	if(((BBOBJECT)bbt_tex)!=&bbNullObject){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x852c1a4e4bd2c08d, 382, 0};
		bbOnDebugEnterStm(&__stmt_0);
		openb3d_openb3dcore_PositionTexture((struct openb3d_openb3dcore_TTexture_obj*)bbt_tex,(-bbt_cx*((struct openb3d_openb3dcore_TTexture_obj*)bbNullObjectTest((BBObject*)bbt_tex))->_openb3d_openb3dcore_ttexture_u_scale [0]),(bbt_cz*((struct openb3d_openb3dcore_TTexture_obj*)bbNullObjectTest((BBObject*)bbt_tex))->_openb3d_openb3dcore_ttexture_v_scale [0]));
		bbOnDebugLeaveScope();
	}
	struct BBDebugStm __stmt_19 = {0x852c1a4e4bd2c08d, 383, 0};
	bbOnDebugEnterStm(&__stmt_19);
	openb3d_openb3dcore_PositionEntity((struct openb3d_openb3dcore_TEntity_obj*)((struct openb3d_openb3dcore_TEntity_obj*)bbObjectDowncast((BBOBJECT)bbt_mesh,(BBClass*)&openb3d_openb3dcore_TEntity)),bbt_cx,0.00000000f,bbt_cz,0);
	bbOnDebugLeaveScope();
	return 0;
}
struct openb3d_openb3dcore_TBone_obj* _openb3d_openb3dcore_TMesh_CreateBone_TTEntity(struct openb3d_openb3dcore_TMesh_obj* o,struct openb3d_openb3dcore_TEntity_obj* bbt_parent_ent){
	((struct openb3d_openb3dcore_TMesh_obj*)bbNullObjectTest((BBObject*)o));
	BBBYTE* bbt_inst=0;
	struct BBDebugScope_3 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"CreateBone",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TMesh",
				.var_address=&o
			},
			{
				BBDEBUGDECL_LOCAL,
				"parent_ent",
				":TEntity",
				.var_address=&bbt_parent_ent
			},
			{
				BBDEBUGDECL_LOCAL,
				"inst",
				"*b",
				.var_address=&bbt_inst
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x852c1a4e4bd2c08d, 391, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbt_inst=CreateBone_(openb3d_openb3dcore_TEntity_GetInstance_pb_TTEntity((struct openb3d_openb3dcore_TEntity_obj*)((struct openb3d_openb3dcore_TEntity_obj*)bbObjectDowncast((BBOBJECT)o,(BBClass*)&openb3d_openb3dcore_TEntity))),openb3d_openb3dcore_TEntity_GetInstance_pb_TTEntity((struct openb3d_openb3dcore_TEntity_obj*)bbt_parent_ent));
	struct BBDebugStm __stmt_1 = {0x852c1a4e4bd2c08d, 392, 0};
	bbOnDebugEnterStm(&__stmt_1);
	((struct openb3d_openb3dcore_TMesh_obj*)bbNullObjectTest((BBObject*)o));
	((struct openb3d_openb3dcore_TMesh_obj*)o)->clas->m_CopyList_TTList((struct openb3d_openb3dcore_TMesh_obj*)o,(struct brl_linkedlist_TList_obj*)((struct openb3d_openb3dcore_TMesh_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmesh_bones );
	struct BBDebugStm __stmt_2 = {0x852c1a4e4bd2c08d, 393, 0};
	bbOnDebugEnterStm(&__stmt_2);
	if(((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tentity_is_anim ==0){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x852c1a4e4bd2c08d, 394, 0};
		bbOnDebugEnterStm(&__stmt_0);
		((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tentity_is_anim =1;
		struct BBDebugStm __stmt_1 = {0x852c1a4e4bd2c08d, 395, 0};
		bbOnDebugEnterStm(&__stmt_1);
		((struct openb3d_openb3dcore_TMesh_obj*)bbNullObjectTest((BBObject*)o));
		((struct openb3d_openb3dcore_TMesh_obj*)o)->clas->m_CopyList_TTList((struct openb3d_openb3dcore_TMesh_obj*)o,(struct brl_linkedlist_TList_obj*)((struct openb3d_openb3dcore_TMesh_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmesh_anim_surf_list );
		struct BBDebugStm __stmt_2 = {0x852c1a4e4bd2c08d, 396, 0};
		bbOnDebugEnterStm(&__stmt_2);
		struct brl_linkedlist_TListEnum_obj* bbt_=(struct brl_linkedlist_TListEnum_obj*)((struct brl_linkedlist_TList_obj*)bbNullObjectTest((BBObject*)((struct openb3d_openb3dcore_TMesh_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmesh_anim_surf_list ))->clas->m_ObjectEnumerator((struct brl_linkedlist_TList_obj*)((struct openb3d_openb3dcore_TMesh_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmesh_anim_surf_list );
		while(((struct brl_linkedlist_TListEnum_obj*)bbNullObjectTest((BBObject*)bbt_))->clas->m_HasNext((struct brl_linkedlist_TListEnum_obj*)bbt_)!=0){
			struct openb3d_openb3dcore_TSurface_obj* bbt_surf=(struct openb3d_openb3dcore_TSurface_obj*)((struct openb3d_openb3dcore_TSurface_obj*)&bbNullObject);
			struct BBDebugScope_1 __scope = {
				BBDEBUGSCOPE_LOCALBLOCK,
				0,
				{
					{
						BBDEBUGDECL_LOCAL,
						"surf",
						":TSurface",
						.var_address=&bbt_surf
					},
					{
						BBDEBUGDECL_END
					}
				}
			};
			bbOnDebugEnterScope((BBDebugScope *)&__scope);
			bbt_surf=(struct openb3d_openb3dcore_TSurface_obj*)((struct openb3d_openb3dcore_TSurface_obj*)bbObjectDowncast((BBOBJECT)((struct brl_linkedlist_TListEnum_obj*)bbNullObjectTest((BBObject*)bbt_))->clas->m_NextObject((struct brl_linkedlist_TListEnum_obj*)bbt_),(BBClass*)&openb3d_openb3dcore_TSurface));
			if(((BBOBJECT)bbt_surf)==&bbNullObject){
				bbOnDebugLeaveScope();
				continue;
			}
			struct BBDebugStm __stmt_0 = {0x852c1a4e4bd2c08d, 397, 0};
			bbOnDebugEnterStm(&__stmt_0);
			((struct openb3d_openb3dcore_TSurface_obj*)bbNullObjectTest((BBObject*)bbt_surf))->_openb3d_openb3dcore_tsurface_vert_coords =SurfaceFloat_(openb3d_openb3dcore_TSurface_GetInstance_pb_TTSurface((struct openb3d_openb3dcore_TSurface_obj*)bbt_surf),3);
			struct BBDebugStm __stmt_1 = {0x852c1a4e4bd2c08d, 398, 0};
			bbOnDebugEnterStm(&__stmt_1);
			((struct openb3d_openb3dcore_TSurface_obj*)bbNullObjectTest((BBObject*)bbt_surf))->_openb3d_openb3dcore_tsurface_vert_bone1_no =SurfaceInt_(openb3d_openb3dcore_TSurface_GetInstance_pb_TTSurface((struct openb3d_openb3dcore_TSurface_obj*)bbt_surf),9);
			struct BBDebugStm __stmt_2 = {0x852c1a4e4bd2c08d, 399, 0};
			bbOnDebugEnterStm(&__stmt_2);
			((struct openb3d_openb3dcore_TSurface_obj*)bbNullObjectTest((BBObject*)bbt_surf))->_openb3d_openb3dcore_tsurface_vert_bone2_no =SurfaceInt_(openb3d_openb3dcore_TSurface_GetInstance_pb_TTSurface((struct openb3d_openb3dcore_TSurface_obj*)bbt_surf),10);
			struct BBDebugStm __stmt_3 = {0x852c1a4e4bd2c08d, 400, 0};
			bbOnDebugEnterStm(&__stmt_3);
			((struct openb3d_openb3dcore_TSurface_obj*)bbNullObjectTest((BBObject*)bbt_surf))->_openb3d_openb3dcore_tsurface_vert_bone3_no =SurfaceInt_(openb3d_openb3dcore_TSurface_GetInstance_pb_TTSurface((struct openb3d_openb3dcore_TSurface_obj*)bbt_surf),11);
			struct BBDebugStm __stmt_4 = {0x852c1a4e4bd2c08d, 401, 0};
			bbOnDebugEnterStm(&__stmt_4);
			((struct openb3d_openb3dcore_TSurface_obj*)bbNullObjectTest((BBObject*)bbt_surf))->_openb3d_openb3dcore_tsurface_vert_bone4_no =SurfaceInt_(openb3d_openb3dcore_TSurface_GetInstance_pb_TTSurface((struct openb3d_openb3dcore_TSurface_obj*)bbt_surf),12);
			struct BBDebugStm __stmt_5 = {0x852c1a4e4bd2c08d, 402, 0};
			bbOnDebugEnterStm(&__stmt_5);
			((struct openb3d_openb3dcore_TSurface_obj*)bbNullObjectTest((BBObject*)bbt_surf))->_openb3d_openb3dcore_tsurface_vert_weight1 =SurfaceFloat_(openb3d_openb3dcore_TSurface_GetInstance_pb_TTSurface((struct openb3d_openb3dcore_TSurface_obj*)bbt_surf),13);
			struct BBDebugStm __stmt_6 = {0x852c1a4e4bd2c08d, 403, 0};
			bbOnDebugEnterStm(&__stmt_6);
			((struct openb3d_openb3dcore_TSurface_obj*)bbNullObjectTest((BBObject*)bbt_surf))->_openb3d_openb3dcore_tsurface_vert_weight2 =SurfaceFloat_(openb3d_openb3dcore_TSurface_GetInstance_pb_TTSurface((struct openb3d_openb3dcore_TSurface_obj*)bbt_surf),14);
			struct BBDebugStm __stmt_7 = {0x852c1a4e4bd2c08d, 404, 0};
			bbOnDebugEnterStm(&__stmt_7);
			((struct openb3d_openb3dcore_TSurface_obj*)bbNullObjectTest((BBObject*)bbt_surf))->_openb3d_openb3dcore_tsurface_vert_weight3 =SurfaceFloat_(openb3d_openb3dcore_TSurface_GetInstance_pb_TTSurface((struct openb3d_openb3dcore_TSurface_obj*)bbt_surf),15);
			struct BBDebugStm __stmt_8 = {0x852c1a4e4bd2c08d, 405, 0};
			bbOnDebugEnterStm(&__stmt_8);
			((struct openb3d_openb3dcore_TSurface_obj*)bbNullObjectTest((BBObject*)bbt_surf))->_openb3d_openb3dcore_tsurface_vert_weight4 =SurfaceFloat_(openb3d_openb3dcore_TSurface_GetInstance_pb_TTSurface((struct openb3d_openb3dcore_TSurface_obj*)bbt_surf),16);
			bbOnDebugLeaveScope();
		}
		bbOnDebugLeaveScope();
	}
	struct BBDebugStm __stmt_3 = {0x852c1a4e4bd2c08d, 408, 0};
	bbOnDebugEnterStm(&__stmt_3);
	bbOnDebugLeaveScope();
	return (struct openb3d_openb3dcore_TBone_obj*)openb3d_openb3dcore_TBone_CreateObject_TTBone_pb(bbt_inst);
}
struct openb3d_openb3dcore_TMesh_obj* openb3d_openb3dcore_TMesh_CreateQuad_TTMesh_TTEntity(struct openb3d_openb3dcore_TEntity_obj* bbt_parent){
	BBBYTE* bbt_inst=0;
	struct BBDebugScope_2 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"CreateQuad",
		{
			{
				BBDEBUGDECL_LOCAL,
				"parent",
				":TEntity",
				.var_address=&bbt_parent
			},
			{
				BBDEBUGDECL_LOCAL,
				"inst",
				"*b",
				.var_address=&bbt_inst
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x852c1a4e4bd2c08d, 414, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbt_inst=CreateQuad_(openb3d_openb3dcore_TEntity_GetInstance_pb_TTEntity((struct openb3d_openb3dcore_TEntity_obj*)bbt_parent));
	struct BBDebugStm __stmt_1 = {0x852c1a4e4bd2c08d, 415, 0};
	bbOnDebugEnterStm(&__stmt_1);
	bbOnDebugLeaveScope();
	return (struct openb3d_openb3dcore_TMesh_obj*)openb3d_openb3dcore_TMesh_CreateObject_TTMesh_pb(bbt_inst);
}
struct openb3d_openb3dcore_TMesh_obj* openb3d_openb3dcore_TMesh_MeshCSG_TTMesh_TTMeshTTMeshi(struct openb3d_openb3dcore_TMesh_obj* bbt_m1,struct openb3d_openb3dcore_TMesh_obj* bbt_m2,BBINT bbt_method_no){
	BBBYTE* bbt_inst=0;
	struct BBDebugScope_4 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"MeshCSG",
		{
			{
				BBDEBUGDECL_LOCAL,
				"m1",
				":TMesh",
				.var_address=&bbt_m1
			},
			{
				BBDEBUGDECL_LOCAL,
				"m2",
				":TMesh",
				.var_address=&bbt_m2
			},
			{
				BBDEBUGDECL_LOCAL,
				"method_no",
				"i",
				.var_address=&bbt_method_no
			},
			{
				BBDEBUGDECL_LOCAL,
				"inst",
				"*b",
				.var_address=&bbt_inst
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x852c1a4e4bd2c08d, 421, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbt_inst=MeshCSG_(openb3d_openb3dcore_TEntity_GetInstance_pb_TTEntity((struct openb3d_openb3dcore_TEntity_obj*)((struct openb3d_openb3dcore_TEntity_obj*)bbObjectDowncast((BBOBJECT)bbt_m1,(BBClass*)&openb3d_openb3dcore_TEntity))),openb3d_openb3dcore_TEntity_GetInstance_pb_TTEntity((struct openb3d_openb3dcore_TEntity_obj*)((struct openb3d_openb3dcore_TEntity_obj*)bbObjectDowncast((BBOBJECT)bbt_m2,(BBClass*)&openb3d_openb3dcore_TEntity))),bbt_method_no);
	struct BBDebugStm __stmt_1 = {0x852c1a4e4bd2c08d, 422, 0};
	bbOnDebugEnterStm(&__stmt_1);
	bbOnDebugLeaveScope();
	return (struct openb3d_openb3dcore_TMesh_obj*)openb3d_openb3dcore_TMesh_CreateObject_TTMesh_pb(bbt_inst);
}
BBINT _openb3d_openb3dcore_TMesh_MeshesIntersect_TTMesh(struct openb3d_openb3dcore_TMesh_obj* o,struct openb3d_openb3dcore_TMesh_obj* bbt_mesh2){
	((struct openb3d_openb3dcore_TMesh_obj*)bbNullObjectTest((BBObject*)o));
	struct BBDebugScope_2 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"MeshesIntersect",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TMesh",
				.var_address=&o
			},
			{
				BBDEBUGDECL_LOCAL,
				"mesh2",
				":TMesh",
				.var_address=&bbt_mesh2
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x852c1a4e4bd2c08d, 428, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbOnDebugLeaveScope();
	return MeshesIntersect_(openb3d_openb3dcore_TEntity_GetInstance_pb_TTEntity((struct openb3d_openb3dcore_TEntity_obj*)((struct openb3d_openb3dcore_TEntity_obj*)bbObjectDowncast((BBOBJECT)o,(BBClass*)&openb3d_openb3dcore_TEntity))),openb3d_openb3dcore_TEntity_GetInstance_pb_TTEntity((struct openb3d_openb3dcore_TEntity_obj*)((struct openb3d_openb3dcore_TEntity_obj*)bbObjectDowncast((BBOBJECT)bbt_mesh2,(BBClass*)&openb3d_openb3dcore_TEntity))));
}
struct openb3d_openb3dcore_TMesh_obj* _openb3d_openb3dcore_TMesh_RepeatMesh_TTEntity(struct openb3d_openb3dcore_TMesh_obj* o,struct openb3d_openb3dcore_TEntity_obj* bbt_parent){
	((struct openb3d_openb3dcore_TMesh_obj*)bbNullObjectTest((BBObject*)o));
	BBBYTE* bbt_inst=0;
	struct openb3d_openb3dcore_TMesh_obj* bbt_mesh=(struct openb3d_openb3dcore_TMesh_obj*)((struct openb3d_openb3dcore_TMesh_obj*)&bbNullObject);
	struct BBDebugScope_4 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"RepeatMesh",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TMesh",
				.var_address=&o
			},
			{
				BBDEBUGDECL_LOCAL,
				"parent",
				":TEntity",
				.var_address=&bbt_parent
			},
			{
				BBDEBUGDECL_LOCAL,
				"inst",
				"*b",
				.var_address=&bbt_inst
			},
			{
				BBDEBUGDECL_LOCAL,
				"mesh",
				":TMesh",
				.var_address=&bbt_mesh
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x852c1a4e4bd2c08d, 434, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbt_inst=RepeatMesh_(openb3d_openb3dcore_TEntity_GetInstance_pb_TTEntity((struct openb3d_openb3dcore_TEntity_obj*)((struct openb3d_openb3dcore_TEntity_obj*)bbObjectDowncast((BBOBJECT)o,(BBClass*)&openb3d_openb3dcore_TEntity))),openb3d_openb3dcore_TEntity_GetInstance_pb_TTEntity((struct openb3d_openb3dcore_TEntity_obj*)bbt_parent));
	struct BBDebugStm __stmt_1 = {0x852c1a4e4bd2c08d, 435, 0};
	bbOnDebugEnterStm(&__stmt_1);
	bbt_mesh=(struct openb3d_openb3dcore_TMesh_obj*)o->clas->f_CreateObject_TTMesh_pb(bbt_inst);
	struct BBDebugStm __stmt_2 = {0x852c1a4e4bd2c08d, 436, 0};
	bbOnDebugEnterStm(&__stmt_2);
	if(((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tentity_pick_mode [0]!=0){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x852c1a4e4bd2c08d, 436, 0};
		bbOnDebugEnterStm(&__stmt_0);
		openb3d_openb3dcore_TPick_AddList__i_TTList((struct brl_linkedlist_TList_obj*)openb3d_openb3dcore_TPick_ent_list);
		bbOnDebugLeaveScope();
	}
	struct BBDebugStm __stmt_3 = {0x852c1a4e4bd2c08d, 437, 0};
	bbOnDebugEnterStm(&__stmt_3);
	bbOnDebugLeaveScope();
	return (struct openb3d_openb3dcore_TMesh_obj*)bbt_mesh;
}
BBINT _openb3d_openb3dcore_TMesh_SkinMesh_iiifififif(struct openb3d_openb3dcore_TMesh_obj* o,BBINT bbt_surf_no_get,BBINT bbt_vid,BBINT bbt_bone1,BBFLOAT bbt_weight1,BBINT bbt_bone2,BBFLOAT bbt_weight2,BBINT bbt_bone3,BBFLOAT bbt_weight3,BBINT bbt_bone4,BBFLOAT bbt_weight4){
	((struct openb3d_openb3dcore_TMesh_obj*)bbNullObjectTest((BBObject*)o));
	struct BBDebugScope_11 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"SkinMesh",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TMesh",
				.var_address=&o
			},
			{
				BBDEBUGDECL_LOCAL,
				"surf_no_get",
				"i",
				.var_address=&bbt_surf_no_get
			},
			{
				BBDEBUGDECL_LOCAL,
				"vid",
				"i",
				.var_address=&bbt_vid
			},
			{
				BBDEBUGDECL_LOCAL,
				"bone1",
				"i",
				.var_address=&bbt_bone1
			},
			{
				BBDEBUGDECL_LOCAL,
				"weight1",
				"f",
				.var_address=&bbt_weight1
			},
			{
				BBDEBUGDECL_LOCAL,
				"bone2",
				"i",
				.var_address=&bbt_bone2
			},
			{
				BBDEBUGDECL_LOCAL,
				"weight2",
				"f",
				.var_address=&bbt_weight2
			},
			{
				BBDEBUGDECL_LOCAL,
				"bone3",
				"i",
				.var_address=&bbt_bone3
			},
			{
				BBDEBUGDECL_LOCAL,
				"weight3",
				"f",
				.var_address=&bbt_weight3
			},
			{
				BBDEBUGDECL_LOCAL,
				"bone4",
				"i",
				.var_address=&bbt_bone4
			},
			{
				BBDEBUGDECL_LOCAL,
				"weight4",
				"f",
				.var_address=&bbt_weight4
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x852c1a4e4bd2c08d, 443, 0};
	bbOnDebugEnterStm(&__stmt_0);
	SkinMesh_(openb3d_openb3dcore_TEntity_GetInstance_pb_TTEntity((struct openb3d_openb3dcore_TEntity_obj*)((struct openb3d_openb3dcore_TEntity_obj*)bbObjectDowncast((BBOBJECT)o,(BBClass*)&openb3d_openb3dcore_TEntity))),bbt_surf_no_get,bbt_vid,bbt_bone1,bbt_weight1,bbt_bone2,bbt_weight2,bbt_bone3,bbt_weight3,bbt_bone4,bbt_weight4);
	bbOnDebugLeaveScope();
	return 0;
}
BBINT _openb3d_openb3dcore_TMesh_PositionAnimMesh_fff(struct openb3d_openb3dcore_TMesh_obj* o,BBFLOAT bbt_px,BBFLOAT bbt_py,BBFLOAT bbt_pz){
	((struct openb3d_openb3dcore_TMesh_obj*)bbNullObjectTest((BBObject*)o));
	BBINT bbt_count_children=0;
	struct BBDebugScope_5 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"PositionAnimMesh",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TMesh",
				.var_address=&o
			},
			{
				BBDEBUGDECL_LOCAL,
				"px",
				"f",
				.var_address=&bbt_px
			},
			{
				BBDEBUGDECL_LOCAL,
				"py",
				"f",
				.var_address=&bbt_py
			},
			{
				BBDEBUGDECL_LOCAL,
				"pz",
				"f",
				.var_address=&bbt_pz
			},
			{
				BBDEBUGDECL_LOCAL,
				"count_children",
				"i",
				.var_address=&bbt_count_children
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x852c1a4e4bd2c08d, 451, 0};
	bbOnDebugEnterStm(&__stmt_0);
	((struct openb3d_openb3dcore_TMesh_obj*)bbNullObjectTest((BBObject*)o));
	((struct openb3d_openb3dcore_TMesh_obj*)o)->clas->m_PositionMesh_fff((struct openb3d_openb3dcore_TMesh_obj*)o,bbt_px,bbt_py,bbt_pz);
	struct BBDebugStm __stmt_1 = {0x852c1a4e4bd2c08d, 452, 0};
	bbOnDebugEnterStm(&__stmt_1);
	bbt_count_children=openb3d_openb3dcore_TEntity_CountAllChildren_i_TTEntityi((struct openb3d_openb3dcore_TEntity_obj*)((struct openb3d_openb3dcore_TEntity_obj*)bbObjectDowncast((BBOBJECT)o,(BBClass*)&openb3d_openb3dcore_TEntity)),0);
	struct BBDebugStm __stmt_2 = {0x852c1a4e4bd2c08d, 453, 0};
	bbOnDebugEnterStm(&__stmt_2);
	{
		BBINT bbt_child_no=1;
		BBINT bbt_=bbt_count_children;
		for(;(bbt_child_no<=bbt_);bbt_child_no=(bbt_child_no+1)){
			BBINT bbt_count=0;
			struct openb3d_openb3dcore_TEntity_obj* bbt_child_ent=(struct openb3d_openb3dcore_TEntity_obj*)((struct openb3d_openb3dcore_TEntity_obj*)&bbNullObject);
			struct BBDebugScope_3 __scope = {
				BBDEBUGSCOPE_LOCALBLOCK,
				0,
				{
					{
						BBDEBUGDECL_LOCAL,
						"child_no",
						"i",
						.var_address=&bbt_child_no
					},
					{
						BBDEBUGDECL_LOCAL,
						"count",
						"i",
						.var_address=&bbt_count
					},
					{
						BBDEBUGDECL_LOCAL,
						"child_ent",
						":TEntity",
						.var_address=&bbt_child_ent
					},
					{
						BBDEBUGDECL_END
					}
				}
			};
			bbOnDebugEnterScope((BBDebugScope *)&__scope);
			struct BBDebugStm __stmt_0 = {0x852c1a4e4bd2c08d, 454, 0};
			bbOnDebugEnterStm(&__stmt_0);
			bbt_count=0;
			struct BBDebugStm __stmt_1 = {0x852c1a4e4bd2c08d, 455, 0};
			bbOnDebugEnterStm(&__stmt_1);
			((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)o));
			bbt_child_ent=(struct openb3d_openb3dcore_TEntity_obj*)((struct openb3d_openb3dcore_TEntity_obj*)o)->clas->m_GetChildFromAll_iviTTEntity((struct openb3d_openb3dcore_TEntity_obj*)o,bbt_child_no,(&bbt_count),(struct openb3d_openb3dcore_TEntity_obj*)&bbNullObject);
			struct BBDebugStm __stmt_2 = {0x852c1a4e4bd2c08d, 456, 0};
			bbOnDebugEnterStm(&__stmt_2);
			struct openb3d_openb3dcore_TMesh_obj* bbt_2;
			(((struct openb3d_openb3dcore_TMesh_obj*)((struct openb3d_openb3dcore_TMesh_obj*)bbNullObjectTest((BBObject*)(bbt_2 = ((struct openb3d_openb3dcore_TMesh_obj*)bbObjectDowncast((BBOBJECT)bbt_child_ent,(BBClass*)&openb3d_openb3dcore_TMesh))))))->clas)->m_PositionMesh_fff((struct openb3d_openb3dcore_TMesh_obj*)bbt_2,bbt_px,bbt_py,bbt_pz);
			bbOnDebugLeaveScope();
		}
	}
	bbOnDebugLeaveScope();
	return 0;
}
BBINT _openb3d_openb3dcore_TMesh_RotateAnimMesh_fff(struct openb3d_openb3dcore_TMesh_obj* o,BBFLOAT bbt_rx,BBFLOAT bbt_ry,BBFLOAT bbt_rz){
	((struct openb3d_openb3dcore_TMesh_obj*)bbNullObjectTest((BBObject*)o));
	BBINT bbt_count_children=0;
	struct BBDebugScope_5 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"RotateAnimMesh",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TMesh",
				.var_address=&o
			},
			{
				BBDEBUGDECL_LOCAL,
				"rx",
				"f",
				.var_address=&bbt_rx
			},
			{
				BBDEBUGDECL_LOCAL,
				"ry",
				"f",
				.var_address=&bbt_ry
			},
			{
				BBDEBUGDECL_LOCAL,
				"rz",
				"f",
				.var_address=&bbt_rz
			},
			{
				BBDEBUGDECL_LOCAL,
				"count_children",
				"i",
				.var_address=&bbt_count_children
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x852c1a4e4bd2c08d, 463, 0};
	bbOnDebugEnterStm(&__stmt_0);
	((struct openb3d_openb3dcore_TMesh_obj*)bbNullObjectTest((BBObject*)o));
	((struct openb3d_openb3dcore_TMesh_obj*)o)->clas->m_RotateMesh_fff((struct openb3d_openb3dcore_TMesh_obj*)o,bbt_rx,bbt_ry,bbt_rz);
	struct BBDebugStm __stmt_1 = {0x852c1a4e4bd2c08d, 464, 0};
	bbOnDebugEnterStm(&__stmt_1);
	bbt_count_children=openb3d_openb3dcore_TEntity_CountAllChildren_i_TTEntityi((struct openb3d_openb3dcore_TEntity_obj*)((struct openb3d_openb3dcore_TEntity_obj*)bbObjectDowncast((BBOBJECT)o,(BBClass*)&openb3d_openb3dcore_TEntity)),0);
	struct BBDebugStm __stmt_2 = {0x852c1a4e4bd2c08d, 465, 0};
	bbOnDebugEnterStm(&__stmt_2);
	{
		BBINT bbt_child_no=1;
		BBINT bbt_=bbt_count_children;
		for(;(bbt_child_no<=bbt_);bbt_child_no=(bbt_child_no+1)){
			BBINT bbt_count=0;
			struct openb3d_openb3dcore_TEntity_obj* bbt_child_ent=(struct openb3d_openb3dcore_TEntity_obj*)((struct openb3d_openb3dcore_TEntity_obj*)&bbNullObject);
			struct BBDebugScope_3 __scope = {
				BBDEBUGSCOPE_LOCALBLOCK,
				0,
				{
					{
						BBDEBUGDECL_LOCAL,
						"child_no",
						"i",
						.var_address=&bbt_child_no
					},
					{
						BBDEBUGDECL_LOCAL,
						"count",
						"i",
						.var_address=&bbt_count
					},
					{
						BBDEBUGDECL_LOCAL,
						"child_ent",
						":TEntity",
						.var_address=&bbt_child_ent
					},
					{
						BBDEBUGDECL_END
					}
				}
			};
			bbOnDebugEnterScope((BBDebugScope *)&__scope);
			struct BBDebugStm __stmt_0 = {0x852c1a4e4bd2c08d, 466, 0};
			bbOnDebugEnterStm(&__stmt_0);
			bbt_count=0;
			struct BBDebugStm __stmt_1 = {0x852c1a4e4bd2c08d, 467, 0};
			bbOnDebugEnterStm(&__stmt_1);
			((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)o));
			bbt_child_ent=(struct openb3d_openb3dcore_TEntity_obj*)((struct openb3d_openb3dcore_TEntity_obj*)o)->clas->m_GetChildFromAll_iviTTEntity((struct openb3d_openb3dcore_TEntity_obj*)o,bbt_child_no,(&bbt_count),(struct openb3d_openb3dcore_TEntity_obj*)&bbNullObject);
			struct BBDebugStm __stmt_2 = {0x852c1a4e4bd2c08d, 468, 0};
			bbOnDebugEnterStm(&__stmt_2);
			struct openb3d_openb3dcore_TMesh_obj* bbt_2;
			(((struct openb3d_openb3dcore_TMesh_obj*)((struct openb3d_openb3dcore_TMesh_obj*)bbNullObjectTest((BBObject*)(bbt_2 = ((struct openb3d_openb3dcore_TMesh_obj*)bbObjectDowncast((BBOBJECT)bbt_child_ent,(BBClass*)&openb3d_openb3dcore_TMesh))))))->clas)->m_RotateMesh_fff((struct openb3d_openb3dcore_TMesh_obj*)bbt_2,bbt_rx,bbt_ry,bbt_rz);
			bbOnDebugLeaveScope();
		}
	}
	bbOnDebugLeaveScope();
	return 0;
}
BBINT _openb3d_openb3dcore_TMesh_ScaleAnimMesh_fff(struct openb3d_openb3dcore_TMesh_obj* o,BBFLOAT bbt_sx,BBFLOAT bbt_sy,BBFLOAT bbt_sz){
	((struct openb3d_openb3dcore_TMesh_obj*)bbNullObjectTest((BBObject*)o));
	BBINT bbt_count_children=0;
	struct BBDebugScope_5 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"ScaleAnimMesh",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TMesh",
				.var_address=&o
			},
			{
				BBDEBUGDECL_LOCAL,
				"sx",
				"f",
				.var_address=&bbt_sx
			},
			{
				BBDEBUGDECL_LOCAL,
				"sy",
				"f",
				.var_address=&bbt_sy
			},
			{
				BBDEBUGDECL_LOCAL,
				"sz",
				"f",
				.var_address=&bbt_sz
			},
			{
				BBDEBUGDECL_LOCAL,
				"count_children",
				"i",
				.var_address=&bbt_count_children
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x852c1a4e4bd2c08d, 475, 0};
	bbOnDebugEnterStm(&__stmt_0);
	((struct openb3d_openb3dcore_TMesh_obj*)bbNullObjectTest((BBObject*)o));
	((struct openb3d_openb3dcore_TMesh_obj*)o)->clas->m_ScaleMesh_fff((struct openb3d_openb3dcore_TMesh_obj*)o,bbt_sx,bbt_sy,bbt_sz);
	struct BBDebugStm __stmt_1 = {0x852c1a4e4bd2c08d, 476, 0};
	bbOnDebugEnterStm(&__stmt_1);
	bbt_count_children=openb3d_openb3dcore_TEntity_CountAllChildren_i_TTEntityi((struct openb3d_openb3dcore_TEntity_obj*)((struct openb3d_openb3dcore_TEntity_obj*)bbObjectDowncast((BBOBJECT)o,(BBClass*)&openb3d_openb3dcore_TEntity)),0);
	struct BBDebugStm __stmt_2 = {0x852c1a4e4bd2c08d, 477, 0};
	bbOnDebugEnterStm(&__stmt_2);
	{
		BBINT bbt_child_no=1;
		BBINT bbt_=bbt_count_children;
		for(;(bbt_child_no<=bbt_);bbt_child_no=(bbt_child_no+1)){
			BBINT bbt_count=0;
			struct openb3d_openb3dcore_TEntity_obj* bbt_child_ent=(struct openb3d_openb3dcore_TEntity_obj*)((struct openb3d_openb3dcore_TEntity_obj*)&bbNullObject);
			struct BBDebugScope_3 __scope = {
				BBDEBUGSCOPE_LOCALBLOCK,
				0,
				{
					{
						BBDEBUGDECL_LOCAL,
						"child_no",
						"i",
						.var_address=&bbt_child_no
					},
					{
						BBDEBUGDECL_LOCAL,
						"count",
						"i",
						.var_address=&bbt_count
					},
					{
						BBDEBUGDECL_LOCAL,
						"child_ent",
						":TEntity",
						.var_address=&bbt_child_ent
					},
					{
						BBDEBUGDECL_END
					}
				}
			};
			bbOnDebugEnterScope((BBDebugScope *)&__scope);
			struct BBDebugStm __stmt_0 = {0x852c1a4e4bd2c08d, 478, 0};
			bbOnDebugEnterStm(&__stmt_0);
			bbt_count=0;
			struct BBDebugStm __stmt_1 = {0x852c1a4e4bd2c08d, 479, 0};
			bbOnDebugEnterStm(&__stmt_1);
			((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)o));
			bbt_child_ent=(struct openb3d_openb3dcore_TEntity_obj*)((struct openb3d_openb3dcore_TEntity_obj*)o)->clas->m_GetChildFromAll_iviTTEntity((struct openb3d_openb3dcore_TEntity_obj*)o,bbt_child_no,(&bbt_count),(struct openb3d_openb3dcore_TEntity_obj*)&bbNullObject);
			struct BBDebugStm __stmt_2 = {0x852c1a4e4bd2c08d, 480, 0};
			bbOnDebugEnterStm(&__stmt_2);
			struct openb3d_openb3dcore_TMesh_obj* bbt_2;
			(((struct openb3d_openb3dcore_TMesh_obj*)((struct openb3d_openb3dcore_TMesh_obj*)bbNullObjectTest((BBObject*)(bbt_2 = ((struct openb3d_openb3dcore_TMesh_obj*)bbObjectDowncast((BBOBJECT)bbt_child_ent,(BBClass*)&openb3d_openb3dcore_TMesh))))))->clas)->m_ScaleMesh_fff((struct openb3d_openb3dcore_TMesh_obj*)bbt_2,bbt_sx,bbt_sy,bbt_sz);
			bbOnDebugLeaveScope();
		}
	}
	bbOnDebugLeaveScope();
	return 0;
}
BBINT _openb3d_openb3dcore_TMesh_TransformVertices_TTMatPtr(struct openb3d_openb3dcore_TMesh_obj* o,struct openb3d_openb3dcore_TMatPtr_obj* bbt_matrix){
	((struct openb3d_openb3dcore_TMesh_obj*)bbNullObjectTest((BBObject*)o));
	BBFLOAT bbt_px=0;
	BBFLOAT bbt_py=0;
	BBFLOAT bbt_pz=0;
	struct BBDebugScope_5 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"TransformVertices",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TMesh",
				.var_address=&o
			},
			{
				BBDEBUGDECL_LOCAL,
				"matrix",
				":TMatPtr",
				.var_address=&bbt_matrix
			},
			{
				BBDEBUGDECL_LOCAL,
				"px",
				"f",
				.var_address=&bbt_px
			},
			{
				BBDEBUGDECL_LOCAL,
				"py",
				"f",
				.var_address=&bbt_py
			},
			{
				BBDEBUGDECL_LOCAL,
				"pz",
				"f",
				.var_address=&bbt_pz
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x852c1a4e4bd2c08d, 487, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbt_px=.00000000f;
	struct BBDebugStm __stmt_1 = {0x852c1a4e4bd2c08d, 487, 0};
	bbOnDebugEnterStm(&__stmt_1);
	bbt_py=.00000000f;
	struct BBDebugStm __stmt_2 = {0x852c1a4e4bd2c08d, 487, 0};
	bbOnDebugEnterStm(&__stmt_2);
	bbt_pz=.00000000f;
	struct BBDebugStm __stmt_3 = {0x852c1a4e4bd2c08d, 488, 0};
	bbOnDebugEnterStm(&__stmt_3);
	struct brl_linkedlist_TListEnum_obj* bbt_=(struct brl_linkedlist_TListEnum_obj*)((struct brl_linkedlist_TList_obj*)bbNullObjectTest((BBObject*)((struct openb3d_openb3dcore_TMesh_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmesh_surf_list ))->clas->m_ObjectEnumerator((struct brl_linkedlist_TList_obj*)((struct openb3d_openb3dcore_TMesh_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmesh_surf_list );
	while(((struct brl_linkedlist_TListEnum_obj*)bbNullObjectTest((BBObject*)bbt_))->clas->m_HasNext((struct brl_linkedlist_TListEnum_obj*)bbt_)!=0){
		struct openb3d_openb3dcore_TSurface_obj* bbt_surf=(struct openb3d_openb3dcore_TSurface_obj*)((struct openb3d_openb3dcore_TSurface_obj*)&bbNullObject);
		struct BBDebugScope_1 __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_LOCAL,
					"surf",
					":TSurface",
					.var_address=&bbt_surf
				},
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		bbt_surf=(struct openb3d_openb3dcore_TSurface_obj*)((struct openb3d_openb3dcore_TSurface_obj*)bbObjectDowncast((BBOBJECT)((struct brl_linkedlist_TListEnum_obj*)bbNullObjectTest((BBObject*)bbt_))->clas->m_NextObject((struct brl_linkedlist_TListEnum_obj*)bbt_),(BBClass*)&openb3d_openb3dcore_TSurface));
		if(((BBOBJECT)bbt_surf)==&bbNullObject){
			bbOnDebugLeaveScope();
			continue;
		}
		struct BBDebugStm __stmt_0 = {0x852c1a4e4bd2c08d, 489, 0};
		bbOnDebugEnterStm(&__stmt_0);
		{
			BBINT bbt_v=0;
			BBINT bbt_2=((struct openb3d_openb3dcore_TSurface_obj*)bbNullObjectTest((BBObject*)bbt_surf))->clas->m_CountVertices((struct openb3d_openb3dcore_TSurface_obj*)bbt_surf);
			for(;(bbt_v<bbt_2);bbt_v=(bbt_v+1)){
				struct BBDebugScope_1 __scope = {
					BBDEBUGSCOPE_LOCALBLOCK,
					0,
					{
						{
							BBDEBUGDECL_LOCAL,
							"v",
							"i",
							.var_address=&bbt_v
						},
						{
							BBDEBUGDECL_END
						}
					}
				};
				bbOnDebugEnterScope((BBDebugScope *)&__scope);
				struct BBDebugStm __stmt_0 = {0x852c1a4e4bd2c08d, 490, 0};
				bbOnDebugEnterStm(&__stmt_0);
				bbt_px=((struct openb3d_openb3dcore_TSurface_obj*)bbNullObjectTest((BBObject*)bbt_surf))->_openb3d_openb3dcore_tsurface_vert_coords [((bbt_v*3)+0)];
				struct BBDebugStm __stmt_1 = {0x852c1a4e4bd2c08d, 491, 0};
				bbOnDebugEnterStm(&__stmt_1);
				bbt_py=((struct openb3d_openb3dcore_TSurface_obj*)bbNullObjectTest((BBObject*)bbt_surf))->_openb3d_openb3dcore_tsurface_vert_coords [((bbt_v*3)+1)];
				struct BBDebugStm __stmt_2 = {0x852c1a4e4bd2c08d, 492, 0};
				bbOnDebugEnterStm(&__stmt_2);
				bbt_pz=((struct openb3d_openb3dcore_TSurface_obj*)bbNullObjectTest((BBObject*)bbt_surf))->_openb3d_openb3dcore_tsurface_vert_coords [((bbt_v*3)+2)];
				struct BBDebugStm __stmt_3 = {0x852c1a4e4bd2c08d, 494, 0};
				bbOnDebugEnterStm(&__stmt_3);
				((struct openb3d_openb3dcore_TMatPtr_obj*)bbNullObjectTest((BBObject*)bbt_matrix))->clas->m_TransformVec_vfvfvfi((struct openb3d_openb3dcore_TMatPtr_obj*)bbt_matrix,(&bbt_px),(&bbt_py),(&bbt_pz),1);
				struct BBDebugStm __stmt_4 = {0x852c1a4e4bd2c08d, 496, 0};
				bbOnDebugEnterStm(&__stmt_4);
				((struct openb3d_openb3dcore_TSurface_obj*)bbNullObjectTest((BBObject*)bbt_surf))->_openb3d_openb3dcore_tsurface_vert_coords [((bbt_v*3)+0)]=bbt_px;
				struct BBDebugStm __stmt_5 = {0x852c1a4e4bd2c08d, 497, 0};
				bbOnDebugEnterStm(&__stmt_5);
				((struct openb3d_openb3dcore_TSurface_obj*)bbNullObjectTest((BBObject*)bbt_surf))->_openb3d_openb3dcore_tsurface_vert_coords [((bbt_v*3)+1)]=bbt_py;
				struct BBDebugStm __stmt_6 = {0x852c1a4e4bd2c08d, 498, 0};
				bbOnDebugEnterStm(&__stmt_6);
				((struct openb3d_openb3dcore_TSurface_obj*)bbNullObjectTest((BBObject*)bbt_surf))->_openb3d_openb3dcore_tsurface_vert_coords [((bbt_v*3)+2)]=bbt_pz;
				bbOnDebugLeaveScope();
			}
		}
		bbOnDebugLeaveScope();
	}
	bbOnDebugLeaveScope();
	return 0;
}
BBINT _openb3d_openb3dcore_TMesh_UpdateVerticesNormals_TTSurface(struct openb3d_openb3dcore_TMesh_obj* o,struct openb3d_openb3dcore_TSurface_obj* bbt_Surface){
	((struct openb3d_openb3dcore_TMesh_obj*)bbNullObjectTest((BBObject*)o));
	BBINT bbt_NumTris=0;
	BBINT bbt_TempsCount=0;
	BBARRAY bbt_TempI=(&bbEmptyArray);
	BBINT bbt_TrianglesCount=0;
	BBARRAY bbt_TriangleNX=(&bbEmptyArray);
	BBARRAY bbt_TriangleNY=(&bbEmptyArray);
	BBARRAY bbt_TriangleNZ=(&bbEmptyArray);
	BBINT bbt_NormalsCount=0;
	BBARRAY bbt_NormalNX=(&bbEmptyArray);
	BBARRAY bbt_NormalNY=(&bbEmptyArray);
	BBARRAY bbt_NormalNZ=(&bbEmptyArray);
	struct BBDebugScope_13 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"UpdateVerticesNormals",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TMesh",
				.var_address=&o
			},
			{
				BBDEBUGDECL_LOCAL,
				"Surface",
				":TSurface",
				.var_address=&bbt_Surface
			},
			{
				BBDEBUGDECL_LOCAL,
				"NumTris",
				"i",
				.var_address=&bbt_NumTris
			},
			{
				BBDEBUGDECL_LOCAL,
				"TempsCount",
				"i",
				.var_address=&bbt_TempsCount
			},
			{
				BBDEBUGDECL_LOCAL,
				"TempI",
				"[]i",
				.var_address=&bbt_TempI
			},
			{
				BBDEBUGDECL_LOCAL,
				"TrianglesCount",
				"i",
				.var_address=&bbt_TrianglesCount
			},
			{
				BBDEBUGDECL_LOCAL,
				"TriangleNX",
				"[]f",
				.var_address=&bbt_TriangleNX
			},
			{
				BBDEBUGDECL_LOCAL,
				"TriangleNY",
				"[]f",
				.var_address=&bbt_TriangleNY
			},
			{
				BBDEBUGDECL_LOCAL,
				"TriangleNZ",
				"[]f",
				.var_address=&bbt_TriangleNZ
			},
			{
				BBDEBUGDECL_LOCAL,
				"NormalsCount",
				"i",
				.var_address=&bbt_NormalsCount
			},
			{
				BBDEBUGDECL_LOCAL,
				"NormalNX",
				"[]f",
				.var_address=&bbt_NormalNX
			},
			{
				BBDEBUGDECL_LOCAL,
				"NormalNY",
				"[]f",
				.var_address=&bbt_NormalNY
			},
			{
				BBDEBUGDECL_LOCAL,
				"NormalNZ",
				"[]f",
				.var_address=&bbt_NormalNZ
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x852c1a4e4bd2c08d, 509, 0};
	bbOnDebugEnterStm(&__stmt_0);
	if(((BBOBJECT)bbt_Surface)==&bbNullObject){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x852c1a4e4bd2c08d, 509, 0};
		bbOnDebugEnterStm(&__stmt_0);
		bbOnDebugLeaveScope();
		bbOnDebugLeaveScope();
		return 0;
	}
	struct BBDebugStm __stmt_1 = {0x852c1a4e4bd2c08d, 512, 0};
	bbOnDebugEnterStm(&__stmt_1);
	bbt_NumTris=((struct openb3d_openb3dcore_TSurface_obj*)bbNullObjectTest((BBObject*)bbt_Surface))->clas->m_CountTriangles((struct openb3d_openb3dcore_TSurface_obj*)bbt_Surface);
	struct BBDebugStm __stmt_2 = {0x852c1a4e4bd2c08d, 513, 0};
	bbOnDebugEnterStm(&__stmt_2);
	bbt_TempsCount=0;
	struct BBDebugStm __stmt_3 = {0x852c1a4e4bd2c08d, 514, 0};
	bbOnDebugEnterStm(&__stmt_3);
	bbt_TempI=bbArrayNew1D("i", bbt_NumTris);
	struct BBDebugStm __stmt_4 = {0x852c1a4e4bd2c08d, 517, 0};
	bbOnDebugEnterStm(&__stmt_4);
	bbt_TrianglesCount=0;
	struct BBDebugStm __stmt_5 = {0x852c1a4e4bd2c08d, 518, 0};
	bbOnDebugEnterStm(&__stmt_5);
	bbt_TriangleNX=bbArrayNew1D("f", (bbt_NumTris+1));
	struct BBDebugStm __stmt_6 = {0x852c1a4e4bd2c08d, 519, 0};
	bbOnDebugEnterStm(&__stmt_6);
	bbt_TriangleNY=bbArrayNew1D("f", (bbt_NumTris+1));
	struct BBDebugStm __stmt_7 = {0x852c1a4e4bd2c08d, 520, 0};
	bbOnDebugEnterStm(&__stmt_7);
	bbt_TriangleNZ=bbArrayNew1D("f", (bbt_NumTris+1));
	struct BBDebugStm __stmt_8 = {0x852c1a4e4bd2c08d, 523, 0};
	bbOnDebugEnterStm(&__stmt_8);
	bbt_NormalsCount=0;
	struct BBDebugStm __stmt_9 = {0x852c1a4e4bd2c08d, 524, 0};
	bbOnDebugEnterStm(&__stmt_9);
	bbt_NormalNX=(&bbEmptyArray);
	struct BBDebugStm __stmt_10 = {0x852c1a4e4bd2c08d, 525, 0};
	bbOnDebugEnterStm(&__stmt_10);
	bbt_NormalNY=(&bbEmptyArray);
	struct BBDebugStm __stmt_11 = {0x852c1a4e4bd2c08d, 526, 0};
	bbOnDebugEnterStm(&__stmt_11);
	bbt_NormalNZ=(&bbEmptyArray);
	struct BBDebugStm __stmt_12 = {0x852c1a4e4bd2c08d, 529, 0};
	bbOnDebugEnterStm(&__stmt_12);
	bbt_TrianglesCount=0;
	struct BBDebugStm __stmt_13 = {0x852c1a4e4bd2c08d, 530, 0};
	bbOnDebugEnterStm(&__stmt_13);
	{
		BBINT bbt_TI=0;
		BBINT bbt_=(((struct openb3d_openb3dcore_TSurface_obj*)bbNullObjectTest((BBObject*)bbt_Surface))->clas->m_CountTriangles((struct openb3d_openb3dcore_TSurface_obj*)bbt_Surface)-1);
		for(;(bbt_TI<=bbt_);bbt_TI=(bbt_TI+1)){
			BBINT bbt_V0I=0;
			BBFLOAT bbt_V0GX=0;
			BBFLOAT bbt_V0GY=0;
			BBFLOAT bbt_V0GZ=0;
			BBINT bbt_V1I=0;
			BBFLOAT bbt_V1GX=0;
			BBFLOAT bbt_V1GY=0;
			BBFLOAT bbt_V1GZ=0;
			BBINT bbt_V2I=0;
			BBFLOAT bbt_V2GX=0;
			BBFLOAT bbt_V2GY=0;
			BBFLOAT bbt_V2GZ=0;
			BBFLOAT bbt_Vec01X=0;
			BBFLOAT bbt_Vec01Y=0;
			BBFLOAT bbt_Vec01Z=0;
			BBFLOAT bbt_Vec02X=0;
			BBFLOAT bbt_Vec02Y=0;
			BBFLOAT bbt_Vec02Z=0;
			BBFLOAT bbt_CPX=0;
			BBFLOAT bbt_CPY=0;
			BBFLOAT bbt_CPZ=0;
			BBFLOAT bbt_Length=0;
			BBFLOAT bbt_NX=0;
			BBFLOAT bbt_NY=0;
			BBFLOAT bbt_NZ=0;
			BBINT bbt_TriI=0;
			struct BBDebugScope_27 __scope = {
				BBDEBUGSCOPE_LOCALBLOCK,
				0,
				{
					{
						BBDEBUGDECL_LOCAL,
						"TI",
						"i",
						.var_address=&bbt_TI
					},
					{
						BBDEBUGDECL_LOCAL,
						"V0I",
						"i",
						.var_address=&bbt_V0I
					},
					{
						BBDEBUGDECL_LOCAL,
						"V0GX",
						"f",
						.var_address=&bbt_V0GX
					},
					{
						BBDEBUGDECL_LOCAL,
						"V0GY",
						"f",
						.var_address=&bbt_V0GY
					},
					{
						BBDEBUGDECL_LOCAL,
						"V0GZ",
						"f",
						.var_address=&bbt_V0GZ
					},
					{
						BBDEBUGDECL_LOCAL,
						"V1I",
						"i",
						.var_address=&bbt_V1I
					},
					{
						BBDEBUGDECL_LOCAL,
						"V1GX",
						"f",
						.var_address=&bbt_V1GX
					},
					{
						BBDEBUGDECL_LOCAL,
						"V1GY",
						"f",
						.var_address=&bbt_V1GY
					},
					{
						BBDEBUGDECL_LOCAL,
						"V1GZ",
						"f",
						.var_address=&bbt_V1GZ
					},
					{
						BBDEBUGDECL_LOCAL,
						"V2I",
						"i",
						.var_address=&bbt_V2I
					},
					{
						BBDEBUGDECL_LOCAL,
						"V2GX",
						"f",
						.var_address=&bbt_V2GX
					},
					{
						BBDEBUGDECL_LOCAL,
						"V2GY",
						"f",
						.var_address=&bbt_V2GY
					},
					{
						BBDEBUGDECL_LOCAL,
						"V2GZ",
						"f",
						.var_address=&bbt_V2GZ
					},
					{
						BBDEBUGDECL_LOCAL,
						"Vec01X",
						"f",
						.var_address=&bbt_Vec01X
					},
					{
						BBDEBUGDECL_LOCAL,
						"Vec01Y",
						"f",
						.var_address=&bbt_Vec01Y
					},
					{
						BBDEBUGDECL_LOCAL,
						"Vec01Z",
						"f",
						.var_address=&bbt_Vec01Z
					},
					{
						BBDEBUGDECL_LOCAL,
						"Vec02X",
						"f",
						.var_address=&bbt_Vec02X
					},
					{
						BBDEBUGDECL_LOCAL,
						"Vec02Y",
						"f",
						.var_address=&bbt_Vec02Y
					},
					{
						BBDEBUGDECL_LOCAL,
						"Vec02Z",
						"f",
						.var_address=&bbt_Vec02Z
					},
					{
						BBDEBUGDECL_LOCAL,
						"CPX",
						"f",
						.var_address=&bbt_CPX
					},
					{
						BBDEBUGDECL_LOCAL,
						"CPY",
						"f",
						.var_address=&bbt_CPY
					},
					{
						BBDEBUGDECL_LOCAL,
						"CPZ",
						"f",
						.var_address=&bbt_CPZ
					},
					{
						BBDEBUGDECL_LOCAL,
						"Length",
						"f",
						.var_address=&bbt_Length
					},
					{
						BBDEBUGDECL_LOCAL,
						"NX",
						"f",
						.var_address=&bbt_NX
					},
					{
						BBDEBUGDECL_LOCAL,
						"NY",
						"f",
						.var_address=&bbt_NY
					},
					{
						BBDEBUGDECL_LOCAL,
						"NZ",
						"f",
						.var_address=&bbt_NZ
					},
					{
						BBDEBUGDECL_LOCAL,
						"TriI",
						"i",
						.var_address=&bbt_TriI
					},
					{
						BBDEBUGDECL_END
					}
				}
			};
			bbOnDebugEnterScope((BBDebugScope *)&__scope);
			struct BBDebugStm __stmt_0 = {0x852c1a4e4bd2c08d, 534, 0};
			bbOnDebugEnterStm(&__stmt_0);
			bbt_V0I=openb3d_openb3dcore_TriangleVertex((struct openb3d_openb3dcore_TSurface_obj*)bbt_Surface,bbt_TI,0);
			struct BBDebugStm __stmt_1 = {0x852c1a4e4bd2c08d, 535, 0};
			bbOnDebugEnterStm(&__stmt_1);
			openb3d_openb3dcore_TEntity_TFormPoint_i_fffTTEntityTTEntity(openb3d_openb3dcore_VertexX((struct openb3d_openb3dcore_TSurface_obj*)bbt_Surface,bbt_V0I),openb3d_openb3dcore_VertexY((struct openb3d_openb3dcore_TSurface_obj*)bbt_Surface,bbt_V0I),openb3d_openb3dcore_VertexZ((struct openb3d_openb3dcore_TSurface_obj*)bbt_Surface,bbt_V0I),(struct openb3d_openb3dcore_TEntity_obj*)((struct openb3d_openb3dcore_TEntity_obj*)bbObjectDowncast((BBOBJECT)o,(BBClass*)&openb3d_openb3dcore_TEntity)),(struct openb3d_openb3dcore_TEntity_obj*)&bbNullObject);
			struct BBDebugStm __stmt_2 = {0x852c1a4e4bd2c08d, 536, 0};
			bbOnDebugEnterStm(&__stmt_2);
			bbt_V0GX=openb3d_openb3dcore_TEntity_TFormedX_f();
			struct BBDebugStm __stmt_3 = {0x852c1a4e4bd2c08d, 537, 0};
			bbOnDebugEnterStm(&__stmt_3);
			bbt_V0GY=openb3d_openb3dcore_TEntity_TFormedY_f();
			struct BBDebugStm __stmt_4 = {0x852c1a4e4bd2c08d, 538, 0};
			bbOnDebugEnterStm(&__stmt_4);
			bbt_V0GZ=openb3d_openb3dcore_TEntity_TFormedZ_f();
			struct BBDebugStm __stmt_5 = {0x852c1a4e4bd2c08d, 540, 0};
			bbOnDebugEnterStm(&__stmt_5);
			bbt_V1I=openb3d_openb3dcore_TriangleVertex((struct openb3d_openb3dcore_TSurface_obj*)bbt_Surface,bbt_TI,1);
			struct BBDebugStm __stmt_6 = {0x852c1a4e4bd2c08d, 541, 0};
			bbOnDebugEnterStm(&__stmt_6);
			openb3d_openb3dcore_TEntity_TFormPoint_i_fffTTEntityTTEntity(openb3d_openb3dcore_VertexX((struct openb3d_openb3dcore_TSurface_obj*)bbt_Surface,bbt_V1I),openb3d_openb3dcore_VertexY((struct openb3d_openb3dcore_TSurface_obj*)bbt_Surface,bbt_V1I),openb3d_openb3dcore_VertexZ((struct openb3d_openb3dcore_TSurface_obj*)bbt_Surface,bbt_V1I),(struct openb3d_openb3dcore_TEntity_obj*)((struct openb3d_openb3dcore_TEntity_obj*)bbObjectDowncast((BBOBJECT)o,(BBClass*)&openb3d_openb3dcore_TEntity)),(struct openb3d_openb3dcore_TEntity_obj*)&bbNullObject);
			struct BBDebugStm __stmt_7 = {0x852c1a4e4bd2c08d, 542, 0};
			bbOnDebugEnterStm(&__stmt_7);
			bbt_V1GX=openb3d_openb3dcore_TEntity_TFormedX_f();
			struct BBDebugStm __stmt_8 = {0x852c1a4e4bd2c08d, 543, 0};
			bbOnDebugEnterStm(&__stmt_8);
			bbt_V1GY=openb3d_openb3dcore_TEntity_TFormedY_f();
			struct BBDebugStm __stmt_9 = {0x852c1a4e4bd2c08d, 544, 0};
			bbOnDebugEnterStm(&__stmt_9);
			bbt_V1GZ=openb3d_openb3dcore_TEntity_TFormedZ_f();
			struct BBDebugStm __stmt_10 = {0x852c1a4e4bd2c08d, 546, 0};
			bbOnDebugEnterStm(&__stmt_10);
			bbt_V2I=openb3d_openb3dcore_TriangleVertex((struct openb3d_openb3dcore_TSurface_obj*)bbt_Surface,bbt_TI,2);
			struct BBDebugStm __stmt_11 = {0x852c1a4e4bd2c08d, 547, 0};
			bbOnDebugEnterStm(&__stmt_11);
			openb3d_openb3dcore_TEntity_TFormPoint_i_fffTTEntityTTEntity(openb3d_openb3dcore_VertexX((struct openb3d_openb3dcore_TSurface_obj*)bbt_Surface,bbt_V2I),openb3d_openb3dcore_VertexY((struct openb3d_openb3dcore_TSurface_obj*)bbt_Surface,bbt_V2I),openb3d_openb3dcore_VertexZ((struct openb3d_openb3dcore_TSurface_obj*)bbt_Surface,bbt_V2I),(struct openb3d_openb3dcore_TEntity_obj*)((struct openb3d_openb3dcore_TEntity_obj*)bbObjectDowncast((BBOBJECT)o,(BBClass*)&openb3d_openb3dcore_TEntity)),(struct openb3d_openb3dcore_TEntity_obj*)&bbNullObject);
			struct BBDebugStm __stmt_12 = {0x852c1a4e4bd2c08d, 548, 0};
			bbOnDebugEnterStm(&__stmt_12);
			bbt_V2GX=openb3d_openb3dcore_TEntity_TFormedX_f();
			struct BBDebugStm __stmt_13 = {0x852c1a4e4bd2c08d, 549, 0};
			bbOnDebugEnterStm(&__stmt_13);
			bbt_V2GY=openb3d_openb3dcore_TEntity_TFormedY_f();
			struct BBDebugStm __stmt_14 = {0x852c1a4e4bd2c08d, 550, 0};
			bbOnDebugEnterStm(&__stmt_14);
			bbt_V2GZ=openb3d_openb3dcore_TEntity_TFormedZ_f();
			struct BBDebugStm __stmt_15 = {0x852c1a4e4bd2c08d, 554, 0};
			bbOnDebugEnterStm(&__stmt_15);
			bbt_Vec01X=(bbt_V0GX-bbt_V1GX);
			struct BBDebugStm __stmt_16 = {0x852c1a4e4bd2c08d, 555, 0};
			bbOnDebugEnterStm(&__stmt_16);
			bbt_Vec01Y=(bbt_V0GY-bbt_V1GY);
			struct BBDebugStm __stmt_17 = {0x852c1a4e4bd2c08d, 556, 0};
			bbOnDebugEnterStm(&__stmt_17);
			bbt_Vec01Z=(bbt_V0GZ-bbt_V1GZ);
			struct BBDebugStm __stmt_18 = {0x852c1a4e4bd2c08d, 558, 0};
			bbOnDebugEnterStm(&__stmt_18);
			bbt_Vec02X=(bbt_V0GX-bbt_V2GX);
			struct BBDebugStm __stmt_19 = {0x852c1a4e4bd2c08d, 559, 0};
			bbOnDebugEnterStm(&__stmt_19);
			bbt_Vec02Y=(bbt_V0GY-bbt_V2GY);
			struct BBDebugStm __stmt_20 = {0x852c1a4e4bd2c08d, 560, 0};
			bbOnDebugEnterStm(&__stmt_20);
			bbt_Vec02Z=(bbt_V0GZ-bbt_V2GZ);
			struct BBDebugStm __stmt_21 = {0x852c1a4e4bd2c08d, 562, 0};
			bbOnDebugEnterStm(&__stmt_21);
			bbt_CPX=((bbt_Vec01Y*bbt_Vec02Z)-(bbt_Vec01Z*bbt_Vec02Y));
			struct BBDebugStm __stmt_22 = {0x852c1a4e4bd2c08d, 563, 0};
			bbOnDebugEnterStm(&__stmt_22);
			bbt_CPY=((bbt_Vec01Z*bbt_Vec02X)-(bbt_Vec01X*bbt_Vec02Z));
			struct BBDebugStm __stmt_23 = {0x852c1a4e4bd2c08d, 564, 0};
			bbOnDebugEnterStm(&__stmt_23);
			bbt_CPZ=((bbt_Vec01X*bbt_Vec02Y)-(bbt_Vec01Y*bbt_Vec02X));
			struct BBDebugStm __stmt_24 = {0x852c1a4e4bd2c08d, 566, 0};
			bbOnDebugEnterStm(&__stmt_24);
			bbt_Length=((BBFLOAT)bbSqr((double)((BBDOUBLE)(((bbt_CPX*bbt_CPX)+(bbt_CPY*bbt_CPY))+(bbt_CPZ*bbt_CPZ)))));
			struct BBDebugStm __stmt_25 = {0x852c1a4e4bd2c08d, 568, 0};
			bbOnDebugEnterStm(&__stmt_25);
			bbt_NX=(bbt_CPX/bbt_Length);
			struct BBDebugStm __stmt_26 = {0x852c1a4e4bd2c08d, 569, 0};
			bbOnDebugEnterStm(&__stmt_26);
			bbt_NY=(bbt_CPY/bbt_Length);
			struct BBDebugStm __stmt_27 = {0x852c1a4e4bd2c08d, 570, 0};
			bbOnDebugEnterStm(&__stmt_27);
			bbt_NZ=(bbt_CPZ/bbt_Length);
			struct BBDebugStm __stmt_28 = {0x852c1a4e4bd2c08d, 573, 0};
			bbOnDebugEnterStm(&__stmt_28);
			bbt_TrianglesCount=(bbt_TrianglesCount+1);
			struct BBDebugStm __stmt_29 = {0x852c1a4e4bd2c08d, 574, 0};
			bbOnDebugEnterStm(&__stmt_29);
			bbt_TriI=bbt_TrianglesCount;
			struct BBDebugStm __stmt_30 = {0x852c1a4e4bd2c08d, 575, 0};
			bbOnDebugEnterStm(&__stmt_30);
			((BBFLOAT*)BBARRAYDATAINDEX((bbt_TriangleNX),(bbt_TriangleNX)->dims,((BBUINT)bbt_TriI)))[((BBUINT)bbt_TriI)]=bbt_NX;
			struct BBDebugStm __stmt_31 = {0x852c1a4e4bd2c08d, 576, 0};
			bbOnDebugEnterStm(&__stmt_31);
			((BBFLOAT*)BBARRAYDATAINDEX((bbt_TriangleNY),(bbt_TriangleNY)->dims,((BBUINT)bbt_TriI)))[((BBUINT)bbt_TriI)]=bbt_NY;
			struct BBDebugStm __stmt_32 = {0x852c1a4e4bd2c08d, 577, 0};
			bbOnDebugEnterStm(&__stmt_32);
			((BBFLOAT*)BBARRAYDATAINDEX((bbt_TriangleNZ),(bbt_TriangleNZ)->dims,((BBUINT)bbt_TriI)))[((BBUINT)bbt_TriI)]=bbt_NZ;
			bbOnDebugLeaveScope();
		}
	}
	struct BBDebugStm __stmt_14 = {0x852c1a4e4bd2c08d, 582, 0};
	bbOnDebugEnterStm(&__stmt_14);
	{
		BBINT bbt_VI=0;
		BBINT bbt_2=(((struct openb3d_openb3dcore_TSurface_obj*)bbNullObjectTest((BBObject*)bbt_Surface))->clas->m_CountVertices((struct openb3d_openb3dcore_TSurface_obj*)bbt_Surface)-1);
		for(;(bbt_VI<=bbt_2);bbt_VI=(bbt_VI+1)){
			BBINT bbt_TempsCount2=0;
			BBINT bbt_NormalsCount2=0;
			BBFLOAT bbt_VNX=0;
			BBFLOAT bbt_VNY=0;
			BBFLOAT bbt_VNZ=0;
			struct BBDebugScope_6 __scope = {
				BBDEBUGSCOPE_LOCALBLOCK,
				0,
				{
					{
						BBDEBUGDECL_LOCAL,
						"VI",
						"i",
						.var_address=&bbt_VI
					},
					{
						BBDEBUGDECL_LOCAL,
						"TempsCount",
						"i",
						.var_address=&bbt_TempsCount2
					},
					{
						BBDEBUGDECL_LOCAL,
						"NormalsCount",
						"i",
						.var_address=&bbt_NormalsCount2
					},
					{
						BBDEBUGDECL_LOCAL,
						"VNX",
						"f",
						.var_address=&bbt_VNX
					},
					{
						BBDEBUGDECL_LOCAL,
						"VNY",
						"f",
						.var_address=&bbt_VNY
					},
					{
						BBDEBUGDECL_LOCAL,
						"VNZ",
						"f",
						.var_address=&bbt_VNZ
					},
					{
						BBDEBUGDECL_END
					}
				}
			};
			bbOnDebugEnterScope((BBDebugScope *)&__scope);
			struct BBDebugStm __stmt_0 = {0x852c1a4e4bd2c08d, 585, 0};
			bbOnDebugEnterStm(&__stmt_0);
			bbt_TempsCount2=0;
			struct BBDebugStm __stmt_1 = {0x852c1a4e4bd2c08d, 586, 0};
			bbOnDebugEnterStm(&__stmt_1);
			{
				BBINT bbt_TI2=0;
				BBINT bbt_3=(((struct openb3d_openb3dcore_TSurface_obj*)bbNullObjectTest((BBObject*)bbt_Surface))->clas->m_CountTriangles((struct openb3d_openb3dcore_TSurface_obj*)bbt_Surface)-1);
				for(;(bbt_TI2<=bbt_3);bbt_TI2=(bbt_TI2+1)){
					struct BBDebugScope_1 __scope = {
						BBDEBUGSCOPE_LOCALBLOCK,
						0,
						{
							{
								BBDEBUGDECL_LOCAL,
								"TI",
								"i",
								.var_address=&bbt_TI2
							},
							{
								BBDEBUGDECL_END
							}
						}
					};
					bbOnDebugEnterScope((BBDebugScope *)&__scope);
					struct BBDebugStm __stmt_0 = {0x852c1a4e4bd2c08d, 587, 0};
					bbOnDebugEnterStm(&__stmt_0);
					if(((openb3d_openb3dcore_TriangleVertex((struct openb3d_openb3dcore_TSurface_obj*)bbt_Surface,bbt_TI2,0)==bbt_VI) || (openb3d_openb3dcore_TriangleVertex((struct openb3d_openb3dcore_TSurface_obj*)bbt_Surface,bbt_TI2,1)==bbt_VI)) || (openb3d_openb3dcore_TriangleVertex((struct openb3d_openb3dcore_TSurface_obj*)bbt_Surface,bbt_TI2,2)==bbt_VI)){
						BBINT bbt_TemI=0;
						struct BBDebugScope_1 __scope = {
							BBDEBUGSCOPE_LOCALBLOCK,
							0,
							{
								{
									BBDEBUGDECL_LOCAL,
									"TemI",
									"i",
									.var_address=&bbt_TemI
								},
								{
									BBDEBUGDECL_END
								}
							}
						};
						bbOnDebugEnterScope((BBDebugScope *)&__scope);
						struct BBDebugStm __stmt_0 = {0x852c1a4e4bd2c08d, 589, 0};
						bbOnDebugEnterStm(&__stmt_0);
						bbt_TempsCount2=(bbt_TempsCount2+1);
						struct BBDebugStm __stmt_1 = {0x852c1a4e4bd2c08d, 590, 0};
						bbOnDebugEnterStm(&__stmt_1);
						bbt_TemI=bbt_TempsCount2;
						struct BBDebugStm __stmt_2 = {0x852c1a4e4bd2c08d, 591, 0};
						bbOnDebugEnterStm(&__stmt_2);
						((BBINT*)BBARRAYDATAINDEX((bbt_TempI),(bbt_TempI)->dims,((BBUINT)bbt_TemI)))[((BBUINT)bbt_TemI)]=bbt_TI2;
						bbOnDebugLeaveScope();
					}
					bbOnDebugLeaveScope();
				}
			}
			struct BBDebugStm __stmt_2 = {0x852c1a4e4bd2c08d, 596, 0};
			bbOnDebugEnterStm(&__stmt_2);
			bbt_NormalsCount2=0;
			struct BBDebugStm __stmt_3 = {0x852c1a4e4bd2c08d, 597, 0};
			bbOnDebugEnterStm(&__stmt_3);
			{
				BBINT bbt_TemI2=1;
				BBINT bbt_4=bbt_TempsCount2;
				for(;(bbt_TemI2<=bbt_4);bbt_TemI2=(bbt_TemI2+1)){
					BBINT bbt_TI3=0;
					BBFLOAT bbt_NX2=0;
					BBFLOAT bbt_NY2=0;
					BBFLOAT bbt_NZ2=0;
					BBINT bbt_NorI=0;
					struct BBDebugScope_6 __scope = {
						BBDEBUGSCOPE_LOCALBLOCK,
						0,
						{
							{
								BBDEBUGDECL_LOCAL,
								"TemI",
								"i",
								.var_address=&bbt_TemI2
							},
							{
								BBDEBUGDECL_LOCAL,
								"TI",
								"i",
								.var_address=&bbt_TI3
							},
							{
								BBDEBUGDECL_LOCAL,
								"NX",
								"f",
								.var_address=&bbt_NX2
							},
							{
								BBDEBUGDECL_LOCAL,
								"NY",
								"f",
								.var_address=&bbt_NY2
							},
							{
								BBDEBUGDECL_LOCAL,
								"NZ",
								"f",
								.var_address=&bbt_NZ2
							},
							{
								BBDEBUGDECL_LOCAL,
								"NorI",
								"i",
								.var_address=&bbt_NorI
							},
							{
								BBDEBUGDECL_END
							}
						}
					};
					bbOnDebugEnterScope((BBDebugScope *)&__scope);
					struct BBDebugStm __stmt_0 = {0x852c1a4e4bd2c08d, 598, 0};
					bbOnDebugEnterStm(&__stmt_0);
					bbt_TI3=((BBINT*)BBARRAYDATAINDEX((bbt_TempI),(bbt_TempI)->dims,((BBUINT)bbt_TemI2)))[((BBUINT)bbt_TemI2)];
					struct BBDebugStm __stmt_1 = {0x852c1a4e4bd2c08d, 601, 0};
					bbOnDebugEnterStm(&__stmt_1);
					bbt_NX2=((BBFLOAT*)BBARRAYDATAINDEX((bbt_TriangleNX),(bbt_TriangleNX)->dims,((BBUINT)(bbt_TI3+1))))[((BBUINT)(bbt_TI3+1))];
					struct BBDebugStm __stmt_2 = {0x852c1a4e4bd2c08d, 602, 0};
					bbOnDebugEnterStm(&__stmt_2);
					bbt_NY2=((BBFLOAT*)BBARRAYDATAINDEX((bbt_TriangleNY),(bbt_TriangleNY)->dims,((BBUINT)(bbt_TI3+1))))[((BBUINT)(bbt_TI3+1))];
					struct BBDebugStm __stmt_3 = {0x852c1a4e4bd2c08d, 603, 0};
					bbOnDebugEnterStm(&__stmt_3);
					bbt_NZ2=((BBFLOAT*)BBARRAYDATAINDEX((bbt_TriangleNZ),(bbt_TriangleNZ)->dims,((BBUINT)(bbt_TI3+1))))[((BBUINT)(bbt_TI3+1))];
					struct BBDebugStm __stmt_4 = {0x852c1a4e4bd2c08d, 606, 0};
					bbOnDebugEnterStm(&__stmt_4);
					bbt_NormalsCount2=(bbt_NormalsCount2+1);
					struct BBDebugStm __stmt_5 = {0x852c1a4e4bd2c08d, 607, 0};
					bbOnDebugEnterStm(&__stmt_5);
					bbt_NormalNX=bbArraySlice("f",bbt_NormalNX,0,(bbt_NormalsCount2+1));
					struct BBDebugStm __stmt_6 = {0x852c1a4e4bd2c08d, 608, 0};
					bbOnDebugEnterStm(&__stmt_6);
					bbt_NormalNY=bbArraySlice("f",bbt_NormalNY,0,(bbt_NormalsCount2+1));
					struct BBDebugStm __stmt_7 = {0x852c1a4e4bd2c08d, 609, 0};
					bbOnDebugEnterStm(&__stmt_7);
					bbt_NormalNZ=bbArraySlice("f",bbt_NormalNZ,0,(bbt_NormalsCount2+1));
					struct BBDebugStm __stmt_8 = {0x852c1a4e4bd2c08d, 611, 0};
					bbOnDebugEnterStm(&__stmt_8);
					bbt_NorI=bbt_NormalsCount2;
					struct BBDebugStm __stmt_9 = {0x852c1a4e4bd2c08d, 612, 0};
					bbOnDebugEnterStm(&__stmt_9);
					((BBFLOAT*)BBARRAYDATAINDEX((bbt_NormalNX),(bbt_NormalNX)->dims,((BBUINT)bbt_NorI)))[((BBUINT)bbt_NorI)]=bbt_NX2;
					struct BBDebugStm __stmt_10 = {0x852c1a4e4bd2c08d, 613, 0};
					bbOnDebugEnterStm(&__stmt_10);
					((BBFLOAT*)BBARRAYDATAINDEX((bbt_NormalNY),(bbt_NormalNY)->dims,((BBUINT)bbt_NorI)))[((BBUINT)bbt_NorI)]=bbt_NY2;
					struct BBDebugStm __stmt_11 = {0x852c1a4e4bd2c08d, 614, 0};
					bbOnDebugEnterStm(&__stmt_11);
					((BBFLOAT*)BBARRAYDATAINDEX((bbt_NormalNZ),(bbt_NormalNZ)->dims,((BBUINT)bbt_NorI)))[((BBUINT)bbt_NorI)]=bbt_NZ2;
					bbOnDebugLeaveScope();
				}
			}
			struct BBDebugStm __stmt_4 = {0x852c1a4e4bd2c08d, 618, 0};
			bbOnDebugEnterStm(&__stmt_4);
			bbt_VNX=0.00000000f;
			struct BBDebugStm __stmt_5 = {0x852c1a4e4bd2c08d, 619, 0};
			bbOnDebugEnterStm(&__stmt_5);
			bbt_VNY=0.00000000f;
			struct BBDebugStm __stmt_6 = {0x852c1a4e4bd2c08d, 620, 0};
			bbOnDebugEnterStm(&__stmt_6);
			bbt_VNZ=0.00000000f;
			struct BBDebugStm __stmt_7 = {0x852c1a4e4bd2c08d, 621, 0};
			bbOnDebugEnterStm(&__stmt_7);
			{
				BBINT bbt_NorI2=1;
				BBINT bbt_5=bbt_NormalsCount2;
				for(;(bbt_NorI2<=bbt_5);bbt_NorI2=(bbt_NorI2+1)){
					struct BBDebugScope_1 __scope = {
						BBDEBUGSCOPE_LOCALBLOCK,
						0,
						{
							{
								BBDEBUGDECL_LOCAL,
								"NorI",
								"i",
								.var_address=&bbt_NorI2
							},
							{
								BBDEBUGDECL_END
							}
						}
					};
					bbOnDebugEnterScope((BBDebugScope *)&__scope);
					struct BBDebugStm __stmt_0 = {0x852c1a4e4bd2c08d, 622, 0};
					bbOnDebugEnterStm(&__stmt_0);
					bbt_VNX=(bbt_VNX+((BBFLOAT*)BBARRAYDATAINDEX((bbt_NormalNX),(bbt_NormalNX)->dims,((BBUINT)bbt_NorI2)))[((BBUINT)bbt_NorI2)]);
					struct BBDebugStm __stmt_1 = {0x852c1a4e4bd2c08d, 623, 0};
					bbOnDebugEnterStm(&__stmt_1);
					bbt_VNY=(bbt_VNY+((BBFLOAT*)BBARRAYDATAINDEX((bbt_NormalNY),(bbt_NormalNY)->dims,((BBUINT)bbt_NorI2)))[((BBUINT)bbt_NorI2)]);
					struct BBDebugStm __stmt_2 = {0x852c1a4e4bd2c08d, 624, 0};
					bbOnDebugEnterStm(&__stmt_2);
					bbt_VNZ=(bbt_VNZ+((BBFLOAT*)BBARRAYDATAINDEX((bbt_NormalNZ),(bbt_NormalNZ)->dims,((BBUINT)bbt_NorI2)))[((BBUINT)bbt_NorI2)]);
					bbOnDebugLeaveScope();
				}
			}
			struct BBDebugStm __stmt_8 = {0x852c1a4e4bd2c08d, 627, 0};
			bbOnDebugEnterStm(&__stmt_8);
			bbt_VNX=(bbt_VNX/((BBFLOAT)bbt_NormalsCount2));
			struct BBDebugStm __stmt_9 = {0x852c1a4e4bd2c08d, 628, 0};
			bbOnDebugEnterStm(&__stmt_9);
			bbt_VNY=(bbt_VNY/((BBFLOAT)bbt_NormalsCount2));
			struct BBDebugStm __stmt_10 = {0x852c1a4e4bd2c08d, 629, 0};
			bbOnDebugEnterStm(&__stmt_10);
			bbt_VNZ=(bbt_VNZ/((BBFLOAT)bbt_NormalsCount2));
			struct BBDebugStm __stmt_11 = {0x852c1a4e4bd2c08d, 632, 0};
			bbOnDebugEnterStm(&__stmt_11);
			openb3d_openb3dcore_VertexNormal((struct openb3d_openb3dcore_TSurface_obj*)bbt_Surface,bbt_VI,bbt_VNX,bbt_VNY,bbt_VNZ);
			bbOnDebugLeaveScope();
		}
	}
	struct BBDebugStm __stmt_15 = {0x852c1a4e4bd2c08d, 636, 0};
	bbOnDebugEnterStm(&__stmt_15);
	bbOnDebugLeaveScope();
	return 1;
}
BBINT _openb3d_openb3dcore_TMesh_FreeEntity(struct openb3d_openb3dcore_TMesh_obj* o){
	((struct openb3d_openb3dcore_TMesh_obj*)bbNullObjectTest((BBObject*)o));
	struct BBDebugScope_1 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"FreeEntity",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TMesh",
				.var_address=&o
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x852c1a4e4bd2c08d, 660, 0};
	bbOnDebugEnterStm(&__stmt_0);
	if(((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tentity_exists !=0){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x852c1a4e4bd2c08d, 661, 0};
		bbOnDebugEnterStm(&__stmt_0);
		openb3d_openb3dcore_TMatPtr_FreeObject_i_pb(openb3d_openb3dcore_TMatPtr_GetInstance_pb_TTMatPtr((struct openb3d_openb3dcore_TMatPtr_obj*)((struct openb3d_openb3dcore_TMesh_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmesh_mat_sp ));
		struct BBDebugStm __stmt_1 = {0x852c1a4e4bd2c08d, 661, 0};
		bbOnDebugEnterStm(&__stmt_1);
		((struct openb3d_openb3dcore_TMesh_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmesh_mat_sp =(struct openb3d_openb3dcore_TMatPtr_obj*)&bbNullObject;
		struct BBDebugStm __stmt_2 = {0x852c1a4e4bd2c08d, 663, 0};
		bbOnDebugEnterStm(&__stmt_2);
		struct brl_linkedlist_TListEnum_obj* bbt_=(struct brl_linkedlist_TListEnum_obj*)((struct brl_linkedlist_TList_obj*)bbNullObjectTest((BBObject*)((struct openb3d_openb3dcore_TMesh_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmesh_surf_list ))->clas->m_ObjectEnumerator((struct brl_linkedlist_TList_obj*)((struct openb3d_openb3dcore_TMesh_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmesh_surf_list );
		while(((struct brl_linkedlist_TListEnum_obj*)bbNullObjectTest((BBObject*)bbt_))->clas->m_HasNext((struct brl_linkedlist_TListEnum_obj*)bbt_)!=0){
			struct openb3d_openb3dcore_TSurface_obj* bbt_surf=(struct openb3d_openb3dcore_TSurface_obj*)((struct openb3d_openb3dcore_TSurface_obj*)&bbNullObject);
			struct BBDebugScope_1 __scope = {
				BBDEBUGSCOPE_LOCALBLOCK,
				0,
				{
					{
						BBDEBUGDECL_LOCAL,
						"surf",
						":TSurface",
						.var_address=&bbt_surf
					},
					{
						BBDEBUGDECL_END
					}
				}
			};
			bbOnDebugEnterScope((BBDebugScope *)&__scope);
			bbt_surf=(struct openb3d_openb3dcore_TSurface_obj*)((struct openb3d_openb3dcore_TSurface_obj*)bbObjectDowncast((BBOBJECT)((struct brl_linkedlist_TListEnum_obj*)bbNullObjectTest((BBObject*)bbt_))->clas->m_NextObject((struct brl_linkedlist_TListEnum_obj*)bbt_),(BBClass*)&openb3d_openb3dcore_TSurface));
			if(((BBOBJECT)bbt_surf)==&bbNullObject){
				bbOnDebugLeaveScope();
				continue;
			}
			struct BBDebugStm __stmt_0 = {0x852c1a4e4bd2c08d, 664, 0};
			bbOnDebugEnterStm(&__stmt_0);
			openb3d_openb3dcore_TBrush_FreeObject_i_pb(openb3d_openb3dcore_TBrush_GetInstance_pb_TTBrush((struct openb3d_openb3dcore_TBrush_obj*)((struct openb3d_openb3dcore_TSurface_obj*)bbNullObjectTest((BBObject*)bbt_surf))->_openb3d_openb3dcore_tsurface_brush ));
			struct BBDebugStm __stmt_1 = {0x852c1a4e4bd2c08d, 664, 0};
			bbOnDebugEnterStm(&__stmt_1);
			((struct openb3d_openb3dcore_TSurface_obj*)bbNullObjectTest((BBObject*)bbt_surf))->_openb3d_openb3dcore_tsurface_brush =(struct openb3d_openb3dcore_TBrush_obj*)&bbNullObject;
			struct BBDebugStm __stmt_2 = {0x852c1a4e4bd2c08d, 665, 0};
			bbOnDebugEnterStm(&__stmt_2);
			openb3d_openb3dcore_TSurface_FreeObject_i_pb(openb3d_openb3dcore_TSurface_GetInstance_pb_TTSurface((struct openb3d_openb3dcore_TSurface_obj*)bbt_surf));
			struct BBDebugStm __stmt_3 = {0x852c1a4e4bd2c08d, 665, 0};
			bbOnDebugEnterStm(&__stmt_3);
			bbt_surf=(struct openb3d_openb3dcore_TSurface_obj*)&bbNullObject;
			bbOnDebugLeaveScope();
		}
		struct BBDebugStm __stmt_3 = {0x852c1a4e4bd2c08d, 668, 0};
		bbOnDebugEnterStm(&__stmt_3);
		brl_linkedlist_ClearList((struct brl_linkedlist_TList_obj*)((struct openb3d_openb3dcore_TMesh_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmesh_surf_list );
		struct BBDebugStm __stmt_4 = {0x852c1a4e4bd2c08d, 668, 0};
		bbOnDebugEnterStm(&__stmt_4);
		((struct openb3d_openb3dcore_TMesh_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmesh_surf_list_id =0;
		struct BBDebugStm __stmt_5 = {0x852c1a4e4bd2c08d, 670, 0};
		bbOnDebugEnterStm(&__stmt_5);
		struct brl_linkedlist_TListEnum_obj* bbt_2=(struct brl_linkedlist_TListEnum_obj*)((struct brl_linkedlist_TList_obj*)bbNullObjectTest((BBObject*)((struct openb3d_openb3dcore_TMesh_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmesh_anim_surf_list ))->clas->m_ObjectEnumerator((struct brl_linkedlist_TList_obj*)((struct openb3d_openb3dcore_TMesh_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmesh_anim_surf_list );
		while(((struct brl_linkedlist_TListEnum_obj*)bbNullObjectTest((BBObject*)bbt_2))->clas->m_HasNext((struct brl_linkedlist_TListEnum_obj*)bbt_2)!=0){
			struct openb3d_openb3dcore_TSurface_obj* bbt_anim_surf=(struct openb3d_openb3dcore_TSurface_obj*)((struct openb3d_openb3dcore_TSurface_obj*)&bbNullObject);
			struct BBDebugScope_1 __scope = {
				BBDEBUGSCOPE_LOCALBLOCK,
				0,
				{
					{
						BBDEBUGDECL_LOCAL,
						"anim_surf",
						":TSurface",
						.var_address=&bbt_anim_surf
					},
					{
						BBDEBUGDECL_END
					}
				}
			};
			bbOnDebugEnterScope((BBDebugScope *)&__scope);
			bbt_anim_surf=(struct openb3d_openb3dcore_TSurface_obj*)((struct openb3d_openb3dcore_TSurface_obj*)bbObjectDowncast((BBOBJECT)((struct brl_linkedlist_TListEnum_obj*)bbNullObjectTest((BBObject*)bbt_2))->clas->m_NextObject((struct brl_linkedlist_TListEnum_obj*)bbt_2),(BBClass*)&openb3d_openb3dcore_TSurface));
			if(((BBOBJECT)bbt_anim_surf)==&bbNullObject){
				bbOnDebugLeaveScope();
				continue;
			}
			struct BBDebugStm __stmt_0 = {0x852c1a4e4bd2c08d, 671, 0};
			bbOnDebugEnterStm(&__stmt_0);
			openb3d_openb3dcore_TBrush_FreeObject_i_pb(openb3d_openb3dcore_TBrush_GetInstance_pb_TTBrush((struct openb3d_openb3dcore_TBrush_obj*)((struct openb3d_openb3dcore_TSurface_obj*)bbNullObjectTest((BBObject*)bbt_anim_surf))->_openb3d_openb3dcore_tsurface_brush ));
			struct BBDebugStm __stmt_1 = {0x852c1a4e4bd2c08d, 671, 0};
			bbOnDebugEnterStm(&__stmt_1);
			((struct openb3d_openb3dcore_TSurface_obj*)bbNullObjectTest((BBObject*)bbt_anim_surf))->_openb3d_openb3dcore_tsurface_brush =(struct openb3d_openb3dcore_TBrush_obj*)&bbNullObject;
			struct BBDebugStm __stmt_2 = {0x852c1a4e4bd2c08d, 672, 0};
			bbOnDebugEnterStm(&__stmt_2);
			openb3d_openb3dcore_TSurface_FreeObject_i_pb(openb3d_openb3dcore_TSurface_GetInstance_pb_TTSurface((struct openb3d_openb3dcore_TSurface_obj*)bbt_anim_surf));
			struct BBDebugStm __stmt_3 = {0x852c1a4e4bd2c08d, 672, 0};
			bbOnDebugEnterStm(&__stmt_3);
			bbt_anim_surf=(struct openb3d_openb3dcore_TSurface_obj*)&bbNullObject;
			bbOnDebugLeaveScope();
		}
		struct BBDebugStm __stmt_6 = {0x852c1a4e4bd2c08d, 675, 0};
		bbOnDebugEnterStm(&__stmt_6);
		brl_linkedlist_ClearList((struct brl_linkedlist_TList_obj*)((struct openb3d_openb3dcore_TMesh_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmesh_anim_surf_list );
		struct BBDebugStm __stmt_7 = {0x852c1a4e4bd2c08d, 675, 0};
		bbOnDebugEnterStm(&__stmt_7);
		((struct openb3d_openb3dcore_TMesh_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmesh_anim_surf_list_id =0;
		struct BBDebugStm __stmt_8 = {0x852c1a4e4bd2c08d, 677, 0};
		bbOnDebugEnterStm(&__stmt_8);
		struct brl_linkedlist_TListEnum_obj* bbt_3=(struct brl_linkedlist_TListEnum_obj*)((struct brl_linkedlist_TList_obj*)bbNullObjectTest((BBObject*)((struct openb3d_openb3dcore_TMesh_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmesh_bones ))->clas->m_ObjectEnumerator((struct brl_linkedlist_TList_obj*)((struct openb3d_openb3dcore_TMesh_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmesh_bones );
		while(((struct brl_linkedlist_TListEnum_obj*)bbNullObjectTest((BBObject*)bbt_3))->clas->m_HasNext((struct brl_linkedlist_TListEnum_obj*)bbt_3)!=0){
			struct openb3d_openb3dcore_TBone_obj* bbt_bone=(struct openb3d_openb3dcore_TBone_obj*)((struct openb3d_openb3dcore_TBone_obj*)&bbNullObject);
			struct BBDebugScope_1 __scope = {
				BBDEBUGSCOPE_LOCALBLOCK,
				0,
				{
					{
						BBDEBUGDECL_LOCAL,
						"bone",
						":TBone",
						.var_address=&bbt_bone
					},
					{
						BBDEBUGDECL_END
					}
				}
			};
			bbOnDebugEnterScope((BBDebugScope *)&__scope);
			bbt_bone=(struct openb3d_openb3dcore_TBone_obj*)((struct openb3d_openb3dcore_TBone_obj*)bbObjectDowncast((BBOBJECT)((struct brl_linkedlist_TListEnum_obj*)bbNullObjectTest((BBObject*)bbt_3))->clas->m_NextObject((struct brl_linkedlist_TListEnum_obj*)bbt_3),(BBClass*)&openb3d_openb3dcore_TBone));
			if(((BBOBJECT)bbt_bone)==&bbNullObject){
				bbOnDebugLeaveScope();
				continue;
			}
			struct BBDebugStm __stmt_0 = {0x852c1a4e4bd2c08d, 678, 0};
			bbOnDebugEnterStm(&__stmt_0);
			((struct openb3d_openb3dcore_TBone_obj*)bbNullObjectTest((BBObject*)bbt_bone))->clas->m_FreeEntity((struct openb3d_openb3dcore_TBone_obj*)bbt_bone);
			bbOnDebugLeaveScope();
		}
		struct BBDebugStm __stmt_9 = {0x852c1a4e4bd2c08d, 681, 0};
		bbOnDebugEnterStm(&__stmt_9);
		brl_linkedlist_ClearList((struct brl_linkedlist_TList_obj*)((struct openb3d_openb3dcore_TMesh_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmesh_bones );
		struct BBDebugStm __stmt_10 = {0x852c1a4e4bd2c08d, 681, 0};
		bbOnDebugEnterStm(&__stmt_10);
		((struct openb3d_openb3dcore_TMesh_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmesh_bones_id =0;
		struct BBDebugStm __stmt_11 = {0x852c1a4e4bd2c08d, 683, 0};
		bbOnDebugEnterStm(&__stmt_11);
		(&openb3d_openb3dcore_TMesh)->super->m_FreeEntity((struct openb3d_openb3dcore_TEntity_obj*)o);
		bbOnDebugLeaveScope();
	}
	bbOnDebugLeaveScope();
	return 0;
}
struct openb3d_openb3dcore_TMesh_obj* openb3d_openb3dcore_TMesh_CreateMesh_TTMesh_TTEntity(struct openb3d_openb3dcore_TEntity_obj* bbt_parent){
	BBBYTE* bbt_inst=0;
	struct BBDebugScope_2 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"CreateMesh",
		{
			{
				BBDEBUGDECL_LOCAL,
				"parent",
				":TEntity",
				.var_address=&bbt_parent
			},
			{
				BBDEBUGDECL_LOCAL,
				"inst",
				"*b",
				.var_address=&bbt_inst
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x852c1a4e4bd2c08d, 690, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbt_inst=CreateMesh_(openb3d_openb3dcore_TEntity_GetInstance_pb_TTEntity((struct openb3d_openb3dcore_TEntity_obj*)bbt_parent));
	struct BBDebugStm __stmt_1 = {0x852c1a4e4bd2c08d, 691, 0};
	bbOnDebugEnterStm(&__stmt_1);
	bbOnDebugLeaveScope();
	return (struct openb3d_openb3dcore_TMesh_obj*)openb3d_openb3dcore_TMesh_CreateObject_TTMesh_pb(bbt_inst);
}
struct openb3d_openb3dcore_TMesh_obj* openb3d_openb3dcore_TMesh_CreateCube_TTMesh_TTEntity(struct openb3d_openb3dcore_TEntity_obj* bbt_parent){
	BBBYTE* bbt_inst=0;
	struct BBDebugScope_2 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"CreateCube",
		{
			{
				BBDEBUGDECL_LOCAL,
				"parent",
				":TEntity",
				.var_address=&bbt_parent
			},
			{
				BBDEBUGDECL_LOCAL,
				"inst",
				"*b",
				.var_address=&bbt_inst
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x852c1a4e4bd2c08d, 697, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbt_inst=CreateCube_(openb3d_openb3dcore_TEntity_GetInstance_pb_TTEntity((struct openb3d_openb3dcore_TEntity_obj*)bbt_parent));
	struct BBDebugStm __stmt_1 = {0x852c1a4e4bd2c08d, 698, 0};
	bbOnDebugEnterStm(&__stmt_1);
	bbOnDebugLeaveScope();
	return (struct openb3d_openb3dcore_TMesh_obj*)openb3d_openb3dcore_TMesh_CreateObject_TTMesh_pb(bbt_inst);
}
struct openb3d_openb3dcore_TMesh_obj* openb3d_openb3dcore_TMesh_CreateSphere_TTMesh_iTTEntity(BBINT bbt_segments,struct openb3d_openb3dcore_TEntity_obj* bbt_parent){
	BBBYTE* bbt_inst=0;
	struct BBDebugScope_3 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"CreateSphere",
		{
			{
				BBDEBUGDECL_LOCAL,
				"segments",
				"i",
				.var_address=&bbt_segments
			},
			{
				BBDEBUGDECL_LOCAL,
				"parent",
				":TEntity",
				.var_address=&bbt_parent
			},
			{
				BBDEBUGDECL_LOCAL,
				"inst",
				"*b",
				.var_address=&bbt_inst
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x852c1a4e4bd2c08d, 704, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbt_inst=CreateSphere_(bbt_segments,openb3d_openb3dcore_TEntity_GetInstance_pb_TTEntity((struct openb3d_openb3dcore_TEntity_obj*)bbt_parent));
	struct BBDebugStm __stmt_1 = {0x852c1a4e4bd2c08d, 705, 0};
	bbOnDebugEnterStm(&__stmt_1);
	bbOnDebugLeaveScope();
	return (struct openb3d_openb3dcore_TMesh_obj*)openb3d_openb3dcore_TMesh_CreateObject_TTMesh_pb(bbt_inst);
}
struct openb3d_openb3dcore_TMesh_obj* openb3d_openb3dcore_TMesh_CreateCylinder_TTMesh_iiTTEntity(BBINT bbt_segments,BBINT bbt_solid,struct openb3d_openb3dcore_TEntity_obj* bbt_parent){
	BBBYTE* bbt_inst=0;
	struct BBDebugScope_4 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"CreateCylinder",
		{
			{
				BBDEBUGDECL_LOCAL,
				"segments",
				"i",
				.var_address=&bbt_segments
			},
			{
				BBDEBUGDECL_LOCAL,
				"solid",
				"i",
				.var_address=&bbt_solid
			},
			{
				BBDEBUGDECL_LOCAL,
				"parent",
				":TEntity",
				.var_address=&bbt_parent
			},
			{
				BBDEBUGDECL_LOCAL,
				"inst",
				"*b",
				.var_address=&bbt_inst
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x852c1a4e4bd2c08d, 711, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbt_inst=CreateCylinder_(bbt_segments,bbt_solid,openb3d_openb3dcore_TEntity_GetInstance_pb_TTEntity((struct openb3d_openb3dcore_TEntity_obj*)bbt_parent));
	struct BBDebugStm __stmt_1 = {0x852c1a4e4bd2c08d, 712, 0};
	bbOnDebugEnterStm(&__stmt_1);
	bbOnDebugLeaveScope();
	return (struct openb3d_openb3dcore_TMesh_obj*)openb3d_openb3dcore_TMesh_CreateObject_TTMesh_pb(bbt_inst);
}
struct openb3d_openb3dcore_TMesh_obj* openb3d_openb3dcore_TMesh_CreateCone_TTMesh_iiTTEntity(BBINT bbt_segments,BBINT bbt_solid,struct openb3d_openb3dcore_TEntity_obj* bbt_parent){
	BBBYTE* bbt_inst=0;
	struct BBDebugScope_4 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"CreateCone",
		{
			{
				BBDEBUGDECL_LOCAL,
				"segments",
				"i",
				.var_address=&bbt_segments
			},
			{
				BBDEBUGDECL_LOCAL,
				"solid",
				"i",
				.var_address=&bbt_solid
			},
			{
				BBDEBUGDECL_LOCAL,
				"parent",
				":TEntity",
				.var_address=&bbt_parent
			},
			{
				BBDEBUGDECL_LOCAL,
				"inst",
				"*b",
				.var_address=&bbt_inst
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x852c1a4e4bd2c08d, 718, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbt_inst=CreateCone_(bbt_segments,bbt_solid,openb3d_openb3dcore_TEntity_GetInstance_pb_TTEntity((struct openb3d_openb3dcore_TEntity_obj*)bbt_parent));
	struct BBDebugStm __stmt_1 = {0x852c1a4e4bd2c08d, 719, 0};
	bbOnDebugEnterStm(&__stmt_1);
	bbOnDebugLeaveScope();
	return (struct openb3d_openb3dcore_TMesh_obj*)openb3d_openb3dcore_TMesh_CreateObject_TTMesh_pb(bbt_inst);
}
struct openb3d_openb3dcore_TMesh_obj* _openb3d_openb3dcore_TMesh_CopyMesh_TTEntity(struct openb3d_openb3dcore_TMesh_obj* o,struct openb3d_openb3dcore_TEntity_obj* bbt_parent){
	((struct openb3d_openb3dcore_TMesh_obj*)bbNullObjectTest((BBObject*)o));
	BBBYTE* bbt_inst=0;
	struct BBDebugScope_3 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"CopyMesh",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TMesh",
				.var_address=&o
			},
			{
				BBDEBUGDECL_LOCAL,
				"parent",
				":TEntity",
				.var_address=&bbt_parent
			},
			{
				BBDEBUGDECL_LOCAL,
				"inst",
				"*b",
				.var_address=&bbt_inst
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x852c1a4e4bd2c08d, 725, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbt_inst=CopyMesh_(openb3d_openb3dcore_TEntity_GetInstance_pb_TTEntity((struct openb3d_openb3dcore_TEntity_obj*)((struct openb3d_openb3dcore_TEntity_obj*)bbObjectDowncast((BBOBJECT)o,(BBClass*)&openb3d_openb3dcore_TEntity))),openb3d_openb3dcore_TEntity_GetInstance_pb_TTEntity((struct openb3d_openb3dcore_TEntity_obj*)bbt_parent));
	struct BBDebugStm __stmt_1 = {0x852c1a4e4bd2c08d, 726, 0};
	bbOnDebugEnterStm(&__stmt_1);
	bbOnDebugLeaveScope();
	return (struct openb3d_openb3dcore_TMesh_obj*)o->clas->f_CreateObject_TTMesh_pb(bbt_inst);
}
BBINT _openb3d_openb3dcore_TMesh_AddMesh_TTMesh(struct openb3d_openb3dcore_TMesh_obj* o,struct openb3d_openb3dcore_TMesh_obj* bbt_mesh2){
	((struct openb3d_openb3dcore_TMesh_obj*)bbNullObjectTest((BBObject*)o));
	struct BBDebugScope_2 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"AddMesh",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TMesh",
				.var_address=&o
			},
			{
				BBDEBUGDECL_LOCAL,
				"mesh2",
				":TMesh",
				.var_address=&bbt_mesh2
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x852c1a4e4bd2c08d, 732, 0};
	bbOnDebugEnterStm(&__stmt_0);
	AddMesh_(openb3d_openb3dcore_TEntity_GetInstance_pb_TTEntity((struct openb3d_openb3dcore_TEntity_obj*)((struct openb3d_openb3dcore_TEntity_obj*)bbObjectDowncast((BBOBJECT)o,(BBClass*)&openb3d_openb3dcore_TEntity))),openb3d_openb3dcore_TEntity_GetInstance_pb_TTEntity((struct openb3d_openb3dcore_TEntity_obj*)((struct openb3d_openb3dcore_TEntity_obj*)bbObjectDowncast((BBOBJECT)bbt_mesh2,(BBClass*)&openb3d_openb3dcore_TEntity))));
	bbOnDebugLeaveScope();
	return 0;
}
BBINT _openb3d_openb3dcore_TMesh_FlipMesh(struct openb3d_openb3dcore_TMesh_obj* o){
	((struct openb3d_openb3dcore_TMesh_obj*)bbNullObjectTest((BBObject*)o));
	struct BBDebugScope_1 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"FlipMesh",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TMesh",
				.var_address=&o
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x852c1a4e4bd2c08d, 738, 0};
	bbOnDebugEnterStm(&__stmt_0);
	FlipMesh_(openb3d_openb3dcore_TEntity_GetInstance_pb_TTEntity((struct openb3d_openb3dcore_TEntity_obj*)((struct openb3d_openb3dcore_TEntity_obj*)bbObjectDowncast((BBOBJECT)o,(BBClass*)&openb3d_openb3dcore_TEntity))));
	bbOnDebugLeaveScope();
	return 0;
}
BBINT _openb3d_openb3dcore_TMesh_PaintMesh_TTBrush(struct openb3d_openb3dcore_TMesh_obj* o,struct openb3d_openb3dcore_TBrush_obj* bbt_bru){
	((struct openb3d_openb3dcore_TMesh_obj*)bbNullObjectTest((BBObject*)o));
	struct BBDebugScope_2 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"PaintMesh",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TMesh",
				.var_address=&o
			},
			{
				BBDEBUGDECL_LOCAL,
				"bru",
				":TBrush",
				.var_address=&bbt_bru
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x852c1a4e4bd2c08d, 744, 0};
	bbOnDebugEnterStm(&__stmt_0);
	PaintMesh_(openb3d_openb3dcore_TEntity_GetInstance_pb_TTEntity((struct openb3d_openb3dcore_TEntity_obj*)((struct openb3d_openb3dcore_TEntity_obj*)bbObjectDowncast((BBOBJECT)o,(BBClass*)&openb3d_openb3dcore_TEntity))),openb3d_openb3dcore_TBrush_GetInstance_pb_TTBrush((struct openb3d_openb3dcore_TBrush_obj*)bbt_bru));
	struct BBDebugStm __stmt_1 = {0x852c1a4e4bd2c08d, 746, 0};
	bbOnDebugEnterStm(&__stmt_1);
	struct brl_linkedlist_TListEnum_obj* bbt_=(struct brl_linkedlist_TListEnum_obj*)((struct brl_linkedlist_TList_obj*)bbNullObjectTest((BBObject*)((struct openb3d_openb3dcore_TMesh_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmesh_surf_list ))->clas->m_ObjectEnumerator((struct brl_linkedlist_TList_obj*)((struct openb3d_openb3dcore_TMesh_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmesh_surf_list );
	while(((struct brl_linkedlist_TListEnum_obj*)bbNullObjectTest((BBObject*)bbt_))->clas->m_HasNext((struct brl_linkedlist_TListEnum_obj*)bbt_)!=0){
		struct openb3d_openb3dcore_TSurface_obj* bbt_surf=(struct openb3d_openb3dcore_TSurface_obj*)((struct openb3d_openb3dcore_TSurface_obj*)&bbNullObject);
		struct BBDebugScope_1 __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_LOCAL,
					"surf",
					":TSurface",
					.var_address=&bbt_surf
				},
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		bbt_surf=(struct openb3d_openb3dcore_TSurface_obj*)((struct openb3d_openb3dcore_TSurface_obj*)bbObjectDowncast((BBOBJECT)((struct brl_linkedlist_TListEnum_obj*)bbNullObjectTest((BBObject*)bbt_))->clas->m_NextObject((struct brl_linkedlist_TListEnum_obj*)bbt_),(BBClass*)&openb3d_openb3dcore_TSurface));
		if(((BBOBJECT)bbt_surf)==&bbNullObject){
			bbOnDebugLeaveScope();
			continue;
		}
		struct BBDebugStm __stmt_0 = {0x852c1a4e4bd2c08d, 747, 0};
		bbOnDebugEnterStm(&__stmt_0);
		if(((BBOBJECT)((struct openb3d_openb3dcore_TSurface_obj*)bbNullObjectTest((BBObject*)bbt_surf))->_openb3d_openb3dcore_tsurface_brush )!=&bbNullObject){
			struct BBDebugScope __scope = {
				BBDEBUGSCOPE_LOCALBLOCK,
				0,
				{
					{
						BBDEBUGDECL_END
					}
				}
			};
			bbOnDebugEnterScope((BBDebugScope *)&__scope);
			struct BBDebugStm __stmt_0 = {0x852c1a4e4bd2c08d, 747, 0};
			bbOnDebugEnterStm(&__stmt_0);
			struct openb3d_openb3dcore_TBrush_obj* bbt_2;
			(((struct openb3d_openb3dcore_TBrush_obj*)((struct openb3d_openb3dcore_TBrush_obj*)bbNullObjectTest((BBObject*)(bbt_2 = ((struct openb3d_openb3dcore_TSurface_obj*)bbNullObjectTest((BBObject*)bbt_surf))->_openb3d_openb3dcore_tsurface_brush ))))->clas)->m_InitFields((struct openb3d_openb3dcore_TBrush_obj*)bbt_2);
			bbOnDebugLeaveScope();
		}
		bbOnDebugLeaveScope();
	}
	bbOnDebugLeaveScope();
	return 0;
}
BBINT _openb3d_openb3dcore_TMesh_FitMesh_ffffffi(struct openb3d_openb3dcore_TMesh_obj* o,BBFLOAT bbt_x,BBFLOAT bbt_y,BBFLOAT bbt_z,BBFLOAT bbt_width,BBFLOAT bbt_height,BBFLOAT bbt_depth,BBINT bbt_uniform){
	((struct openb3d_openb3dcore_TMesh_obj*)bbNullObjectTest((BBObject*)o));
	struct BBDebugScope_8 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"FitMesh",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TMesh",
				.var_address=&o
			},
			{
				BBDEBUGDECL_LOCAL,
				"x",
				"f",
				.var_address=&bbt_x
			},
			{
				BBDEBUGDECL_LOCAL,
				"y",
				"f",
				.var_address=&bbt_y
			},
			{
				BBDEBUGDECL_LOCAL,
				"z",
				"f",
				.var_address=&bbt_z
			},
			{
				BBDEBUGDECL_LOCAL,
				"width",
				"f",
				.var_address=&bbt_width
			},
			{
				BBDEBUGDECL_LOCAL,
				"height",
				"f",
				.var_address=&bbt_height
			},
			{
				BBDEBUGDECL_LOCAL,
				"depth",
				"f",
				.var_address=&bbt_depth
			},
			{
				BBDEBUGDECL_LOCAL,
				"uniform",
				"i",
				.var_address=&bbt_uniform
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x852c1a4e4bd2c08d, 754, 0};
	bbOnDebugEnterStm(&__stmt_0);
	FitMesh_(openb3d_openb3dcore_TEntity_GetInstance_pb_TTEntity((struct openb3d_openb3dcore_TEntity_obj*)((struct openb3d_openb3dcore_TEntity_obj*)bbObjectDowncast((BBOBJECT)o,(BBClass*)&openb3d_openb3dcore_TEntity))),bbt_x,bbt_y,bbt_z,bbt_width,bbt_height,bbt_depth,bbt_uniform);
	bbOnDebugLeaveScope();
	return 0;
}
BBINT _openb3d_openb3dcore_TMesh_ScaleMesh_fff(struct openb3d_openb3dcore_TMesh_obj* o,BBFLOAT bbt_sx,BBFLOAT bbt_sy,BBFLOAT bbt_sz){
	((struct openb3d_openb3dcore_TMesh_obj*)bbNullObjectTest((BBObject*)o));
	struct BBDebugScope_4 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"ScaleMesh",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TMesh",
				.var_address=&o
			},
			{
				BBDEBUGDECL_LOCAL,
				"sx",
				"f",
				.var_address=&bbt_sx
			},
			{
				BBDEBUGDECL_LOCAL,
				"sy",
				"f",
				.var_address=&bbt_sy
			},
			{
				BBDEBUGDECL_LOCAL,
				"sz",
				"f",
				.var_address=&bbt_sz
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x852c1a4e4bd2c08d, 760, 0};
	bbOnDebugEnterStm(&__stmt_0);
	ScaleMesh_(openb3d_openb3dcore_TEntity_GetInstance_pb_TTEntity((struct openb3d_openb3dcore_TEntity_obj*)((struct openb3d_openb3dcore_TEntity_obj*)bbObjectDowncast((BBOBJECT)o,(BBClass*)&openb3d_openb3dcore_TEntity))),bbt_sx,bbt_sy,bbt_sz);
	bbOnDebugLeaveScope();
	return 0;
}
BBINT _openb3d_openb3dcore_TMesh_RotateMesh_fff(struct openb3d_openb3dcore_TMesh_obj* o,BBFLOAT bbt_pitch,BBFLOAT bbt_yaw,BBFLOAT bbt_roll){
	((struct openb3d_openb3dcore_TMesh_obj*)bbNullObjectTest((BBObject*)o));
	struct BBDebugScope_4 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"RotateMesh",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TMesh",
				.var_address=&o
			},
			{
				BBDEBUGDECL_LOCAL,
				"pitch",
				"f",
				.var_address=&bbt_pitch
			},
			{
				BBDEBUGDECL_LOCAL,
				"yaw",
				"f",
				.var_address=&bbt_yaw
			},
			{
				BBDEBUGDECL_LOCAL,
				"roll",
				"f",
				.var_address=&bbt_roll
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x852c1a4e4bd2c08d, 766, 0};
	bbOnDebugEnterStm(&__stmt_0);
	RotateMesh_(openb3d_openb3dcore_TEntity_GetInstance_pb_TTEntity((struct openb3d_openb3dcore_TEntity_obj*)((struct openb3d_openb3dcore_TEntity_obj*)bbObjectDowncast((BBOBJECT)o,(BBClass*)&openb3d_openb3dcore_TEntity))),-bbt_pitch,bbt_yaw,bbt_roll);
	bbOnDebugLeaveScope();
	return 0;
}
BBINT _openb3d_openb3dcore_TMesh_PositionMesh_fff(struct openb3d_openb3dcore_TMesh_obj* o,BBFLOAT bbt_px,BBFLOAT bbt_py,BBFLOAT bbt_pz){
	((struct openb3d_openb3dcore_TMesh_obj*)bbNullObjectTest((BBObject*)o));
	struct BBDebugScope_4 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"PositionMesh",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TMesh",
				.var_address=&o
			},
			{
				BBDEBUGDECL_LOCAL,
				"px",
				"f",
				.var_address=&bbt_px
			},
			{
				BBDEBUGDECL_LOCAL,
				"py",
				"f",
				.var_address=&bbt_py
			},
			{
				BBDEBUGDECL_LOCAL,
				"pz",
				"f",
				.var_address=&bbt_pz
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x852c1a4e4bd2c08d, 772, 0};
	bbOnDebugEnterStm(&__stmt_0);
	PositionMesh_(openb3d_openb3dcore_TEntity_GetInstance_pb_TTEntity((struct openb3d_openb3dcore_TEntity_obj*)((struct openb3d_openb3dcore_TEntity_obj*)bbObjectDowncast((BBOBJECT)o,(BBClass*)&openb3d_openb3dcore_TEntity))),bbt_px,bbt_py,bbt_pz);
	bbOnDebugLeaveScope();
	return 0;
}
BBINT _openb3d_openb3dcore_TMesh_UpdateNormals(struct openb3d_openb3dcore_TMesh_obj* o){
	((struct openb3d_openb3dcore_TMesh_obj*)bbNullObjectTest((BBObject*)o));
	struct BBDebugScope_1 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"UpdateNormals",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TMesh",
				.var_address=&o
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x852c1a4e4bd2c08d, 778, 0};
	bbOnDebugEnterStm(&__stmt_0);
	UpdateNormals_(openb3d_openb3dcore_TEntity_GetInstance_pb_TTEntity((struct openb3d_openb3dcore_TEntity_obj*)((struct openb3d_openb3dcore_TEntity_obj*)bbObjectDowncast((BBOBJECT)o,(BBClass*)&openb3d_openb3dcore_TEntity))));
	bbOnDebugLeaveScope();
	return 0;
}
struct openb3d_openb3dcore_TSurface_obj* _openb3d_openb3dcore_TMesh_CreateSurface_TTBrush(struct openb3d_openb3dcore_TMesh_obj* o,struct openb3d_openb3dcore_TBrush_obj* bbt_brush){
	((struct openb3d_openb3dcore_TMesh_obj*)bbNullObjectTest((BBObject*)o));
	BBBYTE* bbt_inst=0;
	struct openb3d_openb3dcore_TSurface_obj* bbt_surf=(struct openb3d_openb3dcore_TSurface_obj*)((struct openb3d_openb3dcore_TSurface_obj*)&bbNullObject);
	struct BBDebugScope_4 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"CreateSurface",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TMesh",
				.var_address=&o
			},
			{
				BBDEBUGDECL_LOCAL,
				"brush",
				":TBrush",
				.var_address=&bbt_brush
			},
			{
				BBDEBUGDECL_LOCAL,
				"inst",
				"*b",
				.var_address=&bbt_inst
			},
			{
				BBDEBUGDECL_LOCAL,
				"surf",
				":TSurface",
				.var_address=&bbt_surf
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x852c1a4e4bd2c08d, 784, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbt_inst=CreateSurface_(openb3d_openb3dcore_TEntity_GetInstance_pb_TTEntity((struct openb3d_openb3dcore_TEntity_obj*)((struct openb3d_openb3dcore_TEntity_obj*)bbObjectDowncast((BBOBJECT)o,(BBClass*)&openb3d_openb3dcore_TEntity))),openb3d_openb3dcore_TBrush_GetInstance_pb_TTBrush((struct openb3d_openb3dcore_TBrush_obj*)bbt_brush));
	struct BBDebugStm __stmt_1 = {0x852c1a4e4bd2c08d, 785, 0};
	bbOnDebugEnterStm(&__stmt_1);
	bbt_surf=(struct openb3d_openb3dcore_TSurface_obj*)openb3d_openb3dcore_TSurface_CreateObject_TTSurface_pb(bbt_inst);
	struct BBDebugStm __stmt_2 = {0x852c1a4e4bd2c08d, 786, 0};
	bbOnDebugEnterStm(&__stmt_2);
	((struct openb3d_openb3dcore_TMesh_obj*)bbNullObjectTest((BBObject*)o));
	((struct openb3d_openb3dcore_TMesh_obj*)o)->clas->m_CopyList_TTList((struct openb3d_openb3dcore_TMesh_obj*)o,(struct brl_linkedlist_TList_obj*)((struct openb3d_openb3dcore_TMesh_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmesh_surf_list );
	struct BBDebugStm __stmt_3 = {0x852c1a4e4bd2c08d, 787, 0};
	bbOnDebugEnterStm(&__stmt_3);
	bbOnDebugLeaveScope();
	return (struct openb3d_openb3dcore_TSurface_obj*)bbt_surf;
}
BBFLOAT _openb3d_openb3dcore_TMesh_MeshWidth(struct openb3d_openb3dcore_TMesh_obj* o){
	((struct openb3d_openb3dcore_TMesh_obj*)bbNullObjectTest((BBObject*)o));
	struct BBDebugScope_1 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"MeshWidth",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TMesh",
				.var_address=&o
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x852c1a4e4bd2c08d, 793, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbOnDebugLeaveScope();
	return MeshWidth_(openb3d_openb3dcore_TEntity_GetInstance_pb_TTEntity((struct openb3d_openb3dcore_TEntity_obj*)((struct openb3d_openb3dcore_TEntity_obj*)bbObjectDowncast((BBOBJECT)o,(BBClass*)&openb3d_openb3dcore_TEntity))));
}
BBFLOAT _openb3d_openb3dcore_TMesh_MeshHeight(struct openb3d_openb3dcore_TMesh_obj* o){
	((struct openb3d_openb3dcore_TMesh_obj*)bbNullObjectTest((BBObject*)o));
	struct BBDebugScope_1 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"MeshHeight",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TMesh",
				.var_address=&o
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x852c1a4e4bd2c08d, 799, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbOnDebugLeaveScope();
	return MeshHeight_(openb3d_openb3dcore_TEntity_GetInstance_pb_TTEntity((struct openb3d_openb3dcore_TEntity_obj*)((struct openb3d_openb3dcore_TEntity_obj*)bbObjectDowncast((BBOBJECT)o,(BBClass*)&openb3d_openb3dcore_TEntity))));
}
BBFLOAT _openb3d_openb3dcore_TMesh_MeshDepth(struct openb3d_openb3dcore_TMesh_obj* o){
	((struct openb3d_openb3dcore_TMesh_obj*)bbNullObjectTest((BBObject*)o));
	struct BBDebugScope_1 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"MeshDepth",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TMesh",
				.var_address=&o
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x852c1a4e4bd2c08d, 805, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbOnDebugLeaveScope();
	return MeshDepth_(openb3d_openb3dcore_TEntity_GetInstance_pb_TTEntity((struct openb3d_openb3dcore_TEntity_obj*)((struct openb3d_openb3dcore_TEntity_obj*)bbObjectDowncast((BBOBJECT)o,(BBClass*)&openb3d_openb3dcore_TEntity))));
}
BBINT _openb3d_openb3dcore_TMesh_CountSurfaces(struct openb3d_openb3dcore_TMesh_obj* o){
	((struct openb3d_openb3dcore_TMesh_obj*)bbNullObjectTest((BBObject*)o));
	struct BBDebugScope_1 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"CountSurfaces",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TMesh",
				.var_address=&o
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x852c1a4e4bd2c08d, 811, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbOnDebugLeaveScope();
	return CountSurfaces_(openb3d_openb3dcore_TEntity_GetInstance_pb_TTEntity((struct openb3d_openb3dcore_TEntity_obj*)((struct openb3d_openb3dcore_TEntity_obj*)bbObjectDowncast((BBOBJECT)o,(BBClass*)&openb3d_openb3dcore_TEntity))));
}
struct openb3d_openb3dcore_TSurface_obj* _openb3d_openb3dcore_TMesh_GetSurface_i(struct openb3d_openb3dcore_TMesh_obj* o,BBINT bbt_surf_no){
	((struct openb3d_openb3dcore_TMesh_obj*)bbNullObjectTest((BBObject*)o));
	BBBYTE* bbt_inst=0;
	struct BBDebugScope_3 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"GetSurface",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TMesh",
				.var_address=&o
			},
			{
				BBDEBUGDECL_LOCAL,
				"surf_no",
				"i",
				.var_address=&bbt_surf_no
			},
			{
				BBDEBUGDECL_LOCAL,
				"inst",
				"*b",
				.var_address=&bbt_inst
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x852c1a4e4bd2c08d, 817, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbt_inst=GetSurface_(openb3d_openb3dcore_TEntity_GetInstance_pb_TTEntity((struct openb3d_openb3dcore_TEntity_obj*)((struct openb3d_openb3dcore_TEntity_obj*)bbObjectDowncast((BBOBJECT)o,(BBClass*)&openb3d_openb3dcore_TEntity))),bbt_surf_no);
	struct BBDebugStm __stmt_1 = {0x852c1a4e4bd2c08d, 818, 0};
	bbOnDebugEnterStm(&__stmt_1);
	bbOnDebugLeaveScope();
	return (struct openb3d_openb3dcore_TSurface_obj*)openb3d_openb3dcore_TSurface_GetObject_TTSurface_pb(bbt_inst);
}
struct openb3d_openb3dcore_TSurface_obj* _openb3d_openb3dcore_TMesh_FindSurface_TTBrush(struct openb3d_openb3dcore_TMesh_obj* o,struct openb3d_openb3dcore_TBrush_obj* bbt_brush){
	((struct openb3d_openb3dcore_TMesh_obj*)bbNullObjectTest((BBObject*)o));
	struct BBDebugScope_2 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"FindSurface",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TMesh",
				.var_address=&o
			},
			{
				BBDEBUGDECL_LOCAL,
				"brush",
				":TBrush",
				.var_address=&bbt_brush
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x852c1a4e4bd2c08d, 825, 0};
	bbOnDebugEnterStm(&__stmt_0);
	struct brl_linkedlist_TListEnum_obj* bbt_=(struct brl_linkedlist_TListEnum_obj*)((struct brl_linkedlist_TList_obj*)bbNullObjectTest((BBObject*)((struct openb3d_openb3dcore_TMesh_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmesh_surf_list ))->clas->m_ObjectEnumerator((struct brl_linkedlist_TList_obj*)((struct openb3d_openb3dcore_TMesh_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmesh_surf_list );
	while(((struct brl_linkedlist_TListEnum_obj*)bbNullObjectTest((BBObject*)bbt_))->clas->m_HasNext((struct brl_linkedlist_TListEnum_obj*)bbt_)!=0){
		struct openb3d_openb3dcore_TSurface_obj* bbt_surf=(struct openb3d_openb3dcore_TSurface_obj*)((struct openb3d_openb3dcore_TSurface_obj*)&bbNullObject);
		struct BBDebugScope_1 __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_LOCAL,
					"surf",
					":TSurface",
					.var_address=&bbt_surf
				},
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		bbt_surf=(struct openb3d_openb3dcore_TSurface_obj*)((struct openb3d_openb3dcore_TSurface_obj*)bbObjectDowncast((BBOBJECT)((struct brl_linkedlist_TListEnum_obj*)bbNullObjectTest((BBObject*)bbt_))->clas->m_NextObject((struct brl_linkedlist_TListEnum_obj*)bbt_),(BBClass*)&openb3d_openb3dcore_TSurface));
		if(((BBOBJECT)bbt_surf)==&bbNullObject){
			bbOnDebugLeaveScope();
			continue;
		}
		struct BBDebugStm __stmt_0 = {0x852c1a4e4bd2c08d, 826, 0};
		bbOnDebugEnterStm(&__stmt_0);
		if(openb3d_openb3dcore_TBrush_CompareBrushes_i_TTBrushTTBrush((struct openb3d_openb3dcore_TBrush_obj*)bbt_brush,(struct openb3d_openb3dcore_TBrush_obj*)((struct openb3d_openb3dcore_TSurface_obj*)bbNullObjectTest((BBObject*)bbt_surf))->_openb3d_openb3dcore_tsurface_brush )==1){
			struct BBDebugScope __scope = {
				BBDEBUGSCOPE_LOCALBLOCK,
				0,
				{
					{
						BBDEBUGDECL_END
					}
				}
			};
			bbOnDebugEnterScope((BBDebugScope *)&__scope);
			struct BBDebugStm __stmt_0 = {0x852c1a4e4bd2c08d, 826, 0};
			bbOnDebugEnterStm(&__stmt_0);
			bbOnDebugLeaveScope();
			bbOnDebugLeaveScope();
			bbOnDebugLeaveScope();
			return (struct openb3d_openb3dcore_TSurface_obj*)bbt_surf;
		}
		bbOnDebugLeaveScope();
	}
	struct BBDebugStm __stmt_1 = {0x852c1a4e4bd2c08d, 828, 0};
	bbOnDebugEnterStm(&__stmt_1);
	bbOnDebugLeaveScope();
	return (struct openb3d_openb3dcore_TSurface_obj*)&bbNullObject;
}
struct openb3d_openb3dcore_TMesh_obj* _openb3d_openb3dcore_TMesh_CopyEntity_TTEntity(struct openb3d_openb3dcore_TMesh_obj* o,struct openb3d_openb3dcore_TEntity_obj* bbt_parent){
	((struct openb3d_openb3dcore_TMesh_obj*)bbNullObjectTest((BBObject*)o));
	BBBYTE* bbt_inst=0;
	struct openb3d_openb3dcore_TMesh_obj* bbt_mesh=(struct openb3d_openb3dcore_TMesh_obj*)((struct openb3d_openb3dcore_TMesh_obj*)&bbNullObject);
	struct BBDebugScope_4 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"CopyEntity",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TMesh",
				.var_address=&o
			},
			{
				BBDEBUGDECL_LOCAL,
				"parent",
				":TEntity",
				.var_address=&bbt_parent
			},
			{
				BBDEBUGDECL_LOCAL,
				"inst",
				"*b",
				.var_address=&bbt_inst
			},
			{
				BBDEBUGDECL_LOCAL,
				"mesh",
				":TMesh",
				.var_address=&bbt_mesh
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x852c1a4e4bd2c08d, 836, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbt_inst=CopyEntity_(openb3d_openb3dcore_TEntity_GetInstance_pb_TTEntity((struct openb3d_openb3dcore_TEntity_obj*)((struct openb3d_openb3dcore_TEntity_obj*)bbObjectDowncast((BBOBJECT)o,(BBClass*)&openb3d_openb3dcore_TEntity))),openb3d_openb3dcore_TEntity_GetInstance_pb_TTEntity((struct openb3d_openb3dcore_TEntity_obj*)bbt_parent));
	struct BBDebugStm __stmt_1 = {0x852c1a4e4bd2c08d, 837, 0};
	bbOnDebugEnterStm(&__stmt_1);
	bbt_mesh=(struct openb3d_openb3dcore_TMesh_obj*)o->clas->f_CreateObject_TTMesh_pb(bbt_inst);
	struct BBDebugStm __stmt_2 = {0x852c1a4e4bd2c08d, 838, 0};
	bbOnDebugEnterStm(&__stmt_2);
	if(((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tentity_pick_mode [0]!=0){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x852c1a4e4bd2c08d, 838, 0};
		bbOnDebugEnterStm(&__stmt_0);
		openb3d_openb3dcore_TPick_AddList__i_TTList((struct brl_linkedlist_TList_obj*)openb3d_openb3dcore_TPick_ent_list);
		bbOnDebugLeaveScope();
	}
	struct BBDebugStm __stmt_3 = {0x852c1a4e4bd2c08d, 839, 0};
	bbOnDebugEnterStm(&__stmt_3);
	bbOnDebugLeaveScope();
	return (struct openb3d_openb3dcore_TMesh_obj*)bbt_mesh;
}
BBINT _openb3d_openb3dcore_TMesh_Update(struct openb3d_openb3dcore_TMesh_obj* o){
	((struct openb3d_openb3dcore_TMesh_obj*)bbNullObjectTest((BBObject*)o));
	struct BBDebugScope_1 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"Update",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TMesh",
				.var_address=&o
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x852c1a4e4bd2c08d, 846, 0};
	bbOnDebugEnterStm(&__stmt_0);
	MeshRender_(openb3d_openb3dcore_TEntity_GetInstance_pb_TTEntity((struct openb3d_openb3dcore_TEntity_obj*)((struct openb3d_openb3dcore_TEntity_obj*)bbObjectDowncast((BBOBJECT)o,(BBClass*)&openb3d_openb3dcore_TEntity))));
	bbOnDebugLeaveScope();
	return 0;
}
BBINT _openb3d_openb3dcore_TMesh_CountVertices(struct openb3d_openb3dcore_TMesh_obj* o){
	((struct openb3d_openb3dcore_TMesh_obj*)bbNullObjectTest((BBObject*)o));
	BBINT bbt_verts=0;
	struct BBDebugScope_2 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"CountVertices",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TMesh",
				.var_address=&o
			},
			{
				BBDEBUGDECL_LOCAL,
				"verts",
				"i",
				.var_address=&bbt_verts
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x852c1a4e4bd2c08d, 853, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbt_verts=0;
	struct BBDebugStm __stmt_1 = {0x852c1a4e4bd2c08d, 855, 0};
	bbOnDebugEnterStm(&__stmt_1);
	{
		BBINT bbt_s=1;
		((struct openb3d_openb3dcore_TMesh_obj*)bbNullObjectTest((BBObject*)o));
		BBINT bbt_=((struct openb3d_openb3dcore_TMesh_obj*)o)->clas->m_CountSurfaces((struct openb3d_openb3dcore_TMesh_obj*)o);
		for(;(bbt_s<=bbt_);bbt_s=(bbt_s+1)){
			struct openb3d_openb3dcore_TSurface_obj* bbt_surf=(struct openb3d_openb3dcore_TSurface_obj*)((struct openb3d_openb3dcore_TSurface_obj*)&bbNullObject);
			struct BBDebugScope_2 __scope = {
				BBDEBUGSCOPE_LOCALBLOCK,
				0,
				{
					{
						BBDEBUGDECL_LOCAL,
						"s",
						"i",
						.var_address=&bbt_s
					},
					{
						BBDEBUGDECL_LOCAL,
						"surf",
						":TSurface",
						.var_address=&bbt_surf
					},
					{
						BBDEBUGDECL_END
					}
				}
			};
			bbOnDebugEnterScope((BBDebugScope *)&__scope);
			struct BBDebugStm __stmt_0 = {0x852c1a4e4bd2c08d, 856, 0};
			bbOnDebugEnterStm(&__stmt_0);
			((struct openb3d_openb3dcore_TMesh_obj*)bbNullObjectTest((BBObject*)o));
			bbt_surf=(struct openb3d_openb3dcore_TSurface_obj*)((struct openb3d_openb3dcore_TMesh_obj*)o)->clas->m_GetSurface_i((struct openb3d_openb3dcore_TMesh_obj*)o,bbt_s);
			struct BBDebugStm __stmt_1 = {0x852c1a4e4bd2c08d, 857, 0};
			bbOnDebugEnterStm(&__stmt_1);
			bbt_verts=(bbt_verts+((struct openb3d_openb3dcore_TSurface_obj*)bbNullObjectTest((BBObject*)bbt_surf))->clas->m_CountVertices((struct openb3d_openb3dcore_TSurface_obj*)bbt_surf));
			bbOnDebugLeaveScope();
		}
	}
	struct BBDebugStm __stmt_2 = {0x852c1a4e4bd2c08d, 860, 0};
	bbOnDebugEnterStm(&__stmt_2);
	bbOnDebugLeaveScope();
	return bbt_verts;
}
BBINT _openb3d_openb3dcore_TMesh_CountTriangles(struct openb3d_openb3dcore_TMesh_obj* o){
	((struct openb3d_openb3dcore_TMesh_obj*)bbNullObjectTest((BBObject*)o));
	BBINT bbt_tris=0;
	struct BBDebugScope_2 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"CountTriangles",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TMesh",
				.var_address=&o
			},
			{
				BBDEBUGDECL_LOCAL,
				"tris",
				"i",
				.var_address=&bbt_tris
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x852c1a4e4bd2c08d, 867, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbt_tris=0;
	struct BBDebugStm __stmt_1 = {0x852c1a4e4bd2c08d, 869, 0};
	bbOnDebugEnterStm(&__stmt_1);
	{
		BBINT bbt_s=1;
		((struct openb3d_openb3dcore_TMesh_obj*)bbNullObjectTest((BBObject*)o));
		BBINT bbt_=((struct openb3d_openb3dcore_TMesh_obj*)o)->clas->m_CountSurfaces((struct openb3d_openb3dcore_TMesh_obj*)o);
		for(;(bbt_s<=bbt_);bbt_s=(bbt_s+1)){
			struct openb3d_openb3dcore_TSurface_obj* bbt_surf=(struct openb3d_openb3dcore_TSurface_obj*)((struct openb3d_openb3dcore_TSurface_obj*)&bbNullObject);
			struct BBDebugScope_2 __scope = {
				BBDEBUGSCOPE_LOCALBLOCK,
				0,
				{
					{
						BBDEBUGDECL_LOCAL,
						"s",
						"i",
						.var_address=&bbt_s
					},
					{
						BBDEBUGDECL_LOCAL,
						"surf",
						":TSurface",
						.var_address=&bbt_surf
					},
					{
						BBDEBUGDECL_END
					}
				}
			};
			bbOnDebugEnterScope((BBDebugScope *)&__scope);
			struct BBDebugStm __stmt_0 = {0x852c1a4e4bd2c08d, 870, 0};
			bbOnDebugEnterStm(&__stmt_0);
			((struct openb3d_openb3dcore_TMesh_obj*)bbNullObjectTest((BBObject*)o));
			bbt_surf=(struct openb3d_openb3dcore_TSurface_obj*)((struct openb3d_openb3dcore_TMesh_obj*)o)->clas->m_GetSurface_i((struct openb3d_openb3dcore_TMesh_obj*)o,bbt_s);
			struct BBDebugStm __stmt_1 = {0x852c1a4e4bd2c08d, 871, 0};
			bbOnDebugEnterStm(&__stmt_1);
			bbt_tris=(bbt_tris+((struct openb3d_openb3dcore_TSurface_obj*)bbNullObjectTest((BBObject*)bbt_surf))->clas->m_CountTriangles((struct openb3d_openb3dcore_TSurface_obj*)bbt_surf));
			bbOnDebugLeaveScope();
		}
	}
	struct BBDebugStm __stmt_2 = {0x852c1a4e4bd2c08d, 874, 0};
	bbOnDebugEnterStm(&__stmt_2);
	bbOnDebugLeaveScope();
	return bbt_tris;
}
BBINT openb3d_openb3dcore_TMesh_CopyBonesList_i_TTEntity(struct openb3d_openb3dcore_TEntity_obj* bbt_ent){
	BBBYTE* bbt_inst=0;
	struct BBDebugScope_2 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"CopyBonesList",
		{
			{
				BBDEBUGDECL_LOCAL,
				"ent",
				":TEntity",
				.var_address=&bbt_ent
			},
			{
				BBDEBUGDECL_LOCAL,
				"inst",
				"*b",
				.var_address=&bbt_inst
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x852c1a4e4bd2c08d, 881, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbt_inst=MeshVectorBone_(openb3d_openb3dcore_TEntity_GetInstance_pb_TTEntity((struct openb3d_openb3dcore_TEntity_obj*)bbt_ent),4);
	struct BBDebugStm __stmt_1 = {0x852c1a4e4bd2c08d, 882, 0};
	bbOnDebugEnterStm(&__stmt_1);
	CopyBonesList_(openb3d_openb3dcore_TEntity_GetInstance_pb_TTEntity((struct openb3d_openb3dcore_TEntity_obj*)bbt_ent),bbt_inst);
	bbOnDebugLeaveScope();
	return 0;
}
struct openb3d_openb3dcore_TMesh_obj* _openb3d_openb3dcore_TMesh_CollapseAnimMesh(struct openb3d_openb3dcore_TMesh_obj* o){
	((struct openb3d_openb3dcore_TMesh_obj*)bbNullObjectTest((BBObject*)o));
	struct openb3d_openb3dcore_TMesh_obj* bbt_new_mesh=(struct openb3d_openb3dcore_TMesh_obj*)((struct openb3d_openb3dcore_TMesh_obj*)&bbNullObject);
	struct openb3d_openb3dcore_TEntity_obj* bbt_child_ent=(struct openb3d_openb3dcore_TEntity_obj*)((struct openb3d_openb3dcore_TEntity_obj*)&bbNullObject);
	BBINT bbt_count_children=0;
	struct BBDebugScope_4 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"CollapseAnimMesh",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TMesh",
				.var_address=&o
			},
			{
				BBDEBUGDECL_LOCAL,
				"new_mesh",
				":TMesh",
				.var_address=&bbt_new_mesh
			},
			{
				BBDEBUGDECL_LOCAL,
				"child_ent",
				":TEntity",
				.var_address=&bbt_child_ent
			},
			{
				BBDEBUGDECL_LOCAL,
				"count_children",
				"i",
				.var_address=&bbt_count_children
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x852c1a4e4bd2c08d, 900, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbt_new_mesh=(struct openb3d_openb3dcore_TMesh_obj*)o->clas->f_Create_TTMesh();
	struct BBDebugStm __stmt_1 = {0x852c1a4e4bd2c08d, 901, 0};
	bbOnDebugEnterStm(&__stmt_1);
	bbt_child_ent=(struct openb3d_openb3dcore_TEntity_obj*)&bbNullObject;
	struct BBDebugStm __stmt_2 = {0x852c1a4e4bd2c08d, 902, 0};
	bbOnDebugEnterStm(&__stmt_2);
	bbt_count_children=openb3d_openb3dcore_TEntity_CountAllChildren_i_TTEntityi((struct openb3d_openb3dcore_TEntity_obj*)((struct openb3d_openb3dcore_TEntity_obj*)bbObjectDowncast((BBOBJECT)o,(BBClass*)&openb3d_openb3dcore_TEntity)),0);
	struct BBDebugStm __stmt_3 = {0x852c1a4e4bd2c08d, 903, 0};
	bbOnDebugEnterStm(&__stmt_3);
	{
		BBINT bbt_child_no=0;
		BBINT bbt_=bbt_count_children;
		for(;(bbt_child_no<=bbt_);bbt_child_no=(bbt_child_no+1)){
			BBINT bbt_count=0;
			struct BBDebugScope_2 __scope = {
				BBDEBUGSCOPE_LOCALBLOCK,
				0,
				{
					{
						BBDEBUGDECL_LOCAL,
						"child_no",
						"i",
						.var_address=&bbt_child_no
					},
					{
						BBDEBUGDECL_LOCAL,
						"count",
						"i",
						.var_address=&bbt_count
					},
					{
						BBDEBUGDECL_END
					}
				}
			};
			bbOnDebugEnterScope((BBDebugScope *)&__scope);
			struct BBDebugStm __stmt_0 = {0x852c1a4e4bd2c08d, 904, 0};
			bbOnDebugEnterStm(&__stmt_0);
			bbt_count=0;
			struct BBDebugStm __stmt_1 = {0x852c1a4e4bd2c08d, 905, 0};
			bbOnDebugEnterStm(&__stmt_1);
			if(bbt_child_no==0){
				struct BBDebugScope __scope = {
					BBDEBUGSCOPE_LOCALBLOCK,
					0,
					{
						{
							BBDEBUGDECL_END
						}
					}
				};
				bbOnDebugEnterScope((BBDebugScope *)&__scope);
				struct BBDebugStm __stmt_0 = {0x852c1a4e4bd2c08d, 906, 0};
				bbOnDebugEnterStm(&__stmt_0);
				bbt_child_ent=(struct openb3d_openb3dcore_TEntity_obj*)((struct openb3d_openb3dcore_TEntity_obj*)bbObjectDowncast((BBOBJECT)o,(BBClass*)&openb3d_openb3dcore_TEntity));
				bbOnDebugLeaveScope();
			}else{
				struct BBDebugScope __scope = {
					BBDEBUGSCOPE_LOCALBLOCK,
					0,
					{
						{
							BBDEBUGDECL_END
						}
					}
				};
				bbOnDebugEnterScope((BBDebugScope *)&__scope);
				struct BBDebugStm __stmt_0 = {0x852c1a4e4bd2c08d, 908, 0};
				bbOnDebugEnterStm(&__stmt_0);
				((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)o));
				bbt_child_ent=(struct openb3d_openb3dcore_TEntity_obj*)((struct openb3d_openb3dcore_TEntity_obj*)o)->clas->m_GetChildFromAll_iviTTEntity((struct openb3d_openb3dcore_TEntity_obj*)o,bbt_child_no,(&bbt_count),(struct openb3d_openb3dcore_TEntity_obj*)&bbNullObject);
				bbOnDebugLeaveScope();
			}
			struct BBDebugStm __stmt_2 = {0x852c1a4e4bd2c08d, 910, 0};
			bbOnDebugEnterStm(&__stmt_2);
			if(((BBOBJECT)((struct openb3d_openb3dcore_TMesh_obj*)bbObjectDowncast((BBOBJECT)bbt_child_ent,(BBClass*)&openb3d_openb3dcore_TMesh)))!=&bbNullObject){
				struct BBDebugScope __scope = {
					BBDEBUGSCOPE_LOCALBLOCK,
					0,
					{
						{
							BBDEBUGDECL_END
						}
					}
				};
				bbOnDebugEnterScope((BBDebugScope *)&__scope);
				struct BBDebugStm __stmt_0 = {0x852c1a4e4bd2c08d, 911, 0};
				bbOnDebugEnterStm(&__stmt_0);
				struct openb3d_openb3dcore_TMesh_obj* bbt_2;
				(((struct openb3d_openb3dcore_TMesh_obj*)((struct openb3d_openb3dcore_TMesh_obj*)bbNullObjectTest((BBObject*)(bbt_2 = ((struct openb3d_openb3dcore_TMesh_obj*)bbObjectDowncast((BBOBJECT)bbt_child_ent,(BBClass*)&openb3d_openb3dcore_TMesh))))))->clas)->m_TransformMesh_TTMatPtr((struct openb3d_openb3dcore_TMesh_obj*)bbt_2,(struct openb3d_openb3dcore_TMatPtr_obj*)((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)bbt_child_ent))->_openb3d_openb3dcore_tentity_mat );
				struct BBDebugStm __stmt_1 = {0x852c1a4e4bd2c08d, 913, 0};
				bbOnDebugEnterStm(&__stmt_1);
				struct brl_linkedlist_TList_obj* bbt_4;
				struct brl_linkedlist_TListEnum_obj* bbt_3=(struct brl_linkedlist_TListEnum_obj*)(((struct brl_linkedlist_TList_obj*)((struct brl_linkedlist_TList_obj*)bbNullObjectTest((BBObject*)(bbt_4 = ((struct openb3d_openb3dcore_TMesh_obj*)bbNullObjectTest((BBObject*)((struct openb3d_openb3dcore_TMesh_obj*)bbObjectDowncast((BBOBJECT)bbt_child_ent,(BBClass*)&openb3d_openb3dcore_TMesh))))->_openb3d_openb3dcore_tmesh_surf_list ))))->clas)->m_ObjectEnumerator((struct brl_linkedlist_TList_obj*)bbt_4);
				while(((struct brl_linkedlist_TListEnum_obj*)bbNullObjectTest((BBObject*)bbt_3))->clas->m_HasNext((struct brl_linkedlist_TListEnum_obj*)bbt_3)!=0){
					struct openb3d_openb3dcore_TSurface_obj* bbt_surf=(struct openb3d_openb3dcore_TSurface_obj*)((struct openb3d_openb3dcore_TSurface_obj*)&bbNullObject);
					struct openb3d_openb3dcore_TSurface_obj* bbt_new_surf=(struct openb3d_openb3dcore_TSurface_obj*)((struct openb3d_openb3dcore_TSurface_obj*)&bbNullObject);
					struct BBDebugScope_2 __scope = {
						BBDEBUGSCOPE_LOCALBLOCK,
						0,
						{
							{
								BBDEBUGDECL_LOCAL,
								"surf",
								":TSurface",
								.var_address=&bbt_surf
							},
							{
								BBDEBUGDECL_LOCAL,
								"new_surf",
								":TSurface",
								.var_address=&bbt_new_surf
							},
							{
								BBDEBUGDECL_END
							}
						}
					};
					bbOnDebugEnterScope((BBDebugScope *)&__scope);
					bbt_surf=(struct openb3d_openb3dcore_TSurface_obj*)((struct openb3d_openb3dcore_TSurface_obj*)bbObjectDowncast((BBOBJECT)((struct brl_linkedlist_TListEnum_obj*)bbNullObjectTest((BBObject*)bbt_3))->clas->m_NextObject((struct brl_linkedlist_TListEnum_obj*)bbt_3),(BBClass*)&openb3d_openb3dcore_TSurface));
					if(((BBOBJECT)bbt_surf)==&bbNullObject){
						bbOnDebugLeaveScope();
						continue;
					}
					struct BBDebugStm __stmt_0 = {0x852c1a4e4bd2c08d, 914, 0};
					bbOnDebugEnterStm(&__stmt_0);
					bbt_new_surf=(struct openb3d_openb3dcore_TSurface_obj*)((struct openb3d_openb3dcore_TSurface_obj*)bbNullObjectTest((BBObject*)bbt_surf))->clas->m_Copy((struct openb3d_openb3dcore_TSurface_obj*)bbt_surf);
					struct BBDebugStm __stmt_1 = {0x852c1a4e4bd2c08d, 916, 0};
					bbOnDebugEnterStm(&__stmt_1);
					((struct openb3d_openb3dcore_TMesh_obj*)bbNullObjectTest((BBObject*)bbt_new_mesh))->clas->m_MeshListAdd_TTListTObject((struct openb3d_openb3dcore_TMesh_obj*)bbt_new_mesh,(struct brl_linkedlist_TList_obj*)((struct openb3d_openb3dcore_TMesh_obj*)bbNullObjectTest((BBObject*)bbt_new_mesh))->_openb3d_openb3dcore_tmesh_surf_list ,(BBOBJECT)bbt_new_surf);
					struct BBDebugStm __stmt_2 = {0x852c1a4e4bd2c08d, 917, 0};
					bbOnDebugEnterStm(&__stmt_2);
					((struct openb3d_openb3dcore_TMesh_obj*)bbNullObjectTest((BBObject*)bbt_new_mesh))->_openb3d_openb3dcore_tmesh_no_surfs [0]=(((struct openb3d_openb3dcore_TMesh_obj*)bbNullObjectTest((BBObject*)bbt_new_mesh))->_openb3d_openb3dcore_tmesh_no_surfs [0]+1);
					bbOnDebugLeaveScope();
				}
				bbOnDebugLeaveScope();
			}
			bbOnDebugLeaveScope();
		}
	}
	struct BBDebugStm __stmt_4 = {0x852c1a4e4bd2c08d, 922, 0};
	bbOnDebugEnterStm(&__stmt_4);
	bbOnDebugLeaveScope();
	return (struct openb3d_openb3dcore_TMesh_obj*)bbt_new_mesh;
}
struct openb3d_openb3dcore_TMesh_obj* _openb3d_openb3dcore_TMesh_CollapseChildren_TTEntityTTMesh(struct openb3d_openb3dcore_TMesh_obj* o,struct openb3d_openb3dcore_TEntity_obj* bbt_ent0,struct openb3d_openb3dcore_TMesh_obj* bbt_mesh){
	((struct openb3d_openb3dcore_TMesh_obj*)bbNullObjectTest((BBObject*)o));
	BBBYTE* bbt_inst=0;
	struct openb3d_openb3dcore_TMesh_obj* bbt_mesh2=(struct openb3d_openb3dcore_TMesh_obj*)((struct openb3d_openb3dcore_TMesh_obj*)&bbNullObject);
	struct BBDebugScope_5 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"CollapseChildren",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TMesh",
				.var_address=&o
			},
			{
				BBDEBUGDECL_LOCAL,
				"ent0",
				":TEntity",
				.var_address=&bbt_ent0
			},
			{
				BBDEBUGDECL_LOCAL,
				"mesh",
				":TMesh",
				.var_address=&bbt_mesh
			},
			{
				BBDEBUGDECL_LOCAL,
				"inst",
				"*b",
				.var_address=&bbt_inst
			},
			{
				BBDEBUGDECL_LOCAL,
				"mesh2",
				":TMesh",
				.var_address=&bbt_mesh2
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x852c1a4e4bd2c08d, 929, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbt_inst=CollapseChildren_(openb3d_openb3dcore_TEntity_GetInstance_pb_TTEntity((struct openb3d_openb3dcore_TEntity_obj*)((struct openb3d_openb3dcore_TEntity_obj*)bbObjectDowncast((BBOBJECT)o,(BBClass*)&openb3d_openb3dcore_TEntity))),openb3d_openb3dcore_TEntity_GetInstance_pb_TTEntity((struct openb3d_openb3dcore_TEntity_obj*)bbt_ent0),openb3d_openb3dcore_TEntity_GetInstance_pb_TTEntity((struct openb3d_openb3dcore_TEntity_obj*)((struct openb3d_openb3dcore_TEntity_obj*)bbObjectDowncast((BBOBJECT)bbt_mesh,(BBClass*)&openb3d_openb3dcore_TEntity))));
	struct BBDebugStm __stmt_1 = {0x852c1a4e4bd2c08d, 930, 0};
	bbOnDebugEnterStm(&__stmt_1);
	bbt_mesh2=(struct openb3d_openb3dcore_TMesh_obj*)((struct openb3d_openb3dcore_TMesh_obj*)bbObjectDowncast((BBOBJECT)openb3d_openb3dcore_TEntity_GetObject_TTEntity_pb(bbt_inst),(BBClass*)&openb3d_openb3dcore_TMesh));
	struct BBDebugStm __stmt_2 = {0x852c1a4e4bd2c08d, 931, 0};
	bbOnDebugEnterStm(&__stmt_2);
	if((((BBOBJECT)bbt_mesh2)==&bbNullObject) && (bbt_inst!=0)){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x852c1a4e4bd2c08d, 931, 0};
		bbOnDebugEnterStm(&__stmt_0);
		bbt_mesh2=(struct openb3d_openb3dcore_TMesh_obj*)o->clas->f_CreateObject_TTMesh_pb(bbt_inst);
		bbOnDebugLeaveScope();
	}
	struct BBDebugStm __stmt_3 = {0x852c1a4e4bd2c08d, 932, 0};
	bbOnDebugEnterStm(&__stmt_3);
	bbOnDebugLeaveScope();
	return (struct openb3d_openb3dcore_TMesh_obj*)bbt_mesh2;
}
BBINT _openb3d_openb3dcore_TMesh_TransformMesh_TTMatPtr(struct openb3d_openb3dcore_TMesh_obj* o,struct openb3d_openb3dcore_TMatPtr_obj* bbt_mat){
	((struct openb3d_openb3dcore_TMesh_obj*)bbNullObjectTest((BBObject*)o));
	struct BBDebugScope_2 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"TransformMesh",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TMesh",
				.var_address=&o
			},
			{
				BBDEBUGDECL_LOCAL,
				"mat",
				":TMatPtr",
				.var_address=&bbt_mat
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x852c1a4e4bd2c08d, 939, 0};
	bbOnDebugEnterStm(&__stmt_0);
	TransformMesh_(openb3d_openb3dcore_TEntity_GetInstance_pb_TTEntity((struct openb3d_openb3dcore_TEntity_obj*)((struct openb3d_openb3dcore_TEntity_obj*)bbObjectDowncast((BBOBJECT)o,(BBClass*)&openb3d_openb3dcore_TEntity))),openb3d_openb3dcore_TMatPtr_GetInstance_pb_TTMatPtr((struct openb3d_openb3dcore_TMatPtr_obj*)bbt_mat));
	bbOnDebugLeaveScope();
	return 0;
}
BBINT _openb3d_openb3dcore_TMesh_GetBounds(struct openb3d_openb3dcore_TMesh_obj* o){
	((struct openb3d_openb3dcore_TMesh_obj*)bbNullObjectTest((BBObject*)o));
	struct BBDebugScope_1 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"GetBounds",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TMesh",
				.var_address=&o
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x852c1a4e4bd2c08d, 946, 0};
	bbOnDebugEnterStm(&__stmt_0);
	GetBounds_(openb3d_openb3dcore_TEntity_GetInstance_pb_TTEntity((struct openb3d_openb3dcore_TEntity_obj*)((struct openb3d_openb3dcore_TEntity_obj*)bbObjectDowncast((BBOBJECT)o,(BBClass*)&openb3d_openb3dcore_TEntity))));
	bbOnDebugLeaveScope();
	return 0;
}
BBINT _openb3d_openb3dcore_TMesh_Alpha(struct openb3d_openb3dcore_TMesh_obj* o){
	((struct openb3d_openb3dcore_TMesh_obj*)bbNullObjectTest((BBObject*)o));
	struct BBDebugScope_1 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"Alpha",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TMesh",
				.var_address=&o
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x852c1a4e4bd2c08d, 956, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbOnDebugLeaveScope();
	return Alpha_(openb3d_openb3dcore_TEntity_GetInstance_pb_TTEntity((struct openb3d_openb3dcore_TEntity_obj*)((struct openb3d_openb3dcore_TEntity_obj*)bbObjectDowncast((BBOBJECT)o,(BBClass*)&openb3d_openb3dcore_TEntity))));
}
BBINT _openb3d_openb3dcore_TMesh_MeshColor_ffff(struct openb3d_openb3dcore_TMesh_obj* o,BBFLOAT bbt_r,BBFLOAT bbt_g,BBFLOAT bbt_b,BBFLOAT bbt_a){
	((struct openb3d_openb3dcore_TMesh_obj*)bbNullObjectTest((BBObject*)o));
	struct BBDebugScope_5 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"MeshColor",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TMesh",
				.var_address=&o
			},
			{
				BBDEBUGDECL_LOCAL,
				"r",
				"f",
				.var_address=&bbt_r
			},
			{
				BBDEBUGDECL_LOCAL,
				"g",
				"f",
				.var_address=&bbt_g
			},
			{
				BBDEBUGDECL_LOCAL,
				"b",
				"f",
				.var_address=&bbt_b
			},
			{
				BBDEBUGDECL_LOCAL,
				"a",
				"f",
				.var_address=&bbt_a
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x852c1a4e4bd2c08d, 965, 0};
	bbOnDebugEnterStm(&__stmt_0);
	MeshColor_(openb3d_openb3dcore_TEntity_GetInstance_pb_TTEntity((struct openb3d_openb3dcore_TEntity_obj*)((struct openb3d_openb3dcore_TEntity_obj*)bbObjectDowncast((BBOBJECT)o,(BBClass*)&openb3d_openb3dcore_TEntity))),bbt_r,bbt_g,bbt_b,bbt_a);
	bbOnDebugLeaveScope();
	return 0;
}
BBINT _openb3d_openb3dcore_TMesh_MeshRed_f(struct openb3d_openb3dcore_TMesh_obj* o,BBFLOAT bbt_r){
	((struct openb3d_openb3dcore_TMesh_obj*)bbNullObjectTest((BBObject*)o));
	struct BBDebugScope_2 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"MeshRed",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TMesh",
				.var_address=&o
			},
			{
				BBDEBUGDECL_LOCAL,
				"r",
				"f",
				.var_address=&bbt_r
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x852c1a4e4bd2c08d, 972, 0};
	bbOnDebugEnterStm(&__stmt_0);
	MeshRed_(openb3d_openb3dcore_TEntity_GetInstance_pb_TTEntity((struct openb3d_openb3dcore_TEntity_obj*)((struct openb3d_openb3dcore_TEntity_obj*)bbObjectDowncast((BBOBJECT)o,(BBClass*)&openb3d_openb3dcore_TEntity))),bbt_r);
	bbOnDebugLeaveScope();
	return 0;
}
BBINT _openb3d_openb3dcore_TMesh_MeshGreen_f(struct openb3d_openb3dcore_TMesh_obj* o,BBFLOAT bbt_g){
	((struct openb3d_openb3dcore_TMesh_obj*)bbNullObjectTest((BBObject*)o));
	struct BBDebugScope_2 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"MeshGreen",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TMesh",
				.var_address=&o
			},
			{
				BBDEBUGDECL_LOCAL,
				"g",
				"f",
				.var_address=&bbt_g
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x852c1a4e4bd2c08d, 979, 0};
	bbOnDebugEnterStm(&__stmt_0);
	MeshGreen_(openb3d_openb3dcore_TEntity_GetInstance_pb_TTEntity((struct openb3d_openb3dcore_TEntity_obj*)((struct openb3d_openb3dcore_TEntity_obj*)bbObjectDowncast((BBOBJECT)o,(BBClass*)&openb3d_openb3dcore_TEntity))),bbt_g);
	bbOnDebugLeaveScope();
	return 0;
}
BBINT _openb3d_openb3dcore_TMesh_MeshBlue_f(struct openb3d_openb3dcore_TMesh_obj* o,BBFLOAT bbt_b){
	((struct openb3d_openb3dcore_TMesh_obj*)bbNullObjectTest((BBObject*)o));
	struct BBDebugScope_2 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"MeshBlue",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TMesh",
				.var_address=&o
			},
			{
				BBDEBUGDECL_LOCAL,
				"b",
				"f",
				.var_address=&bbt_b
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x852c1a4e4bd2c08d, 986, 0};
	bbOnDebugEnterStm(&__stmt_0);
	MeshBlue_(openb3d_openb3dcore_TEntity_GetInstance_pb_TTEntity((struct openb3d_openb3dcore_TEntity_obj*)((struct openb3d_openb3dcore_TEntity_obj*)bbObjectDowncast((BBOBJECT)o,(BBClass*)&openb3d_openb3dcore_TEntity))),bbt_b);
	bbOnDebugLeaveScope();
	return 0;
}
BBINT _openb3d_openb3dcore_TMesh_MeshAlpha_f(struct openb3d_openb3dcore_TMesh_obj* o,BBFLOAT bbt_a){
	((struct openb3d_openb3dcore_TMesh_obj*)bbNullObjectTest((BBObject*)o));
	struct BBDebugScope_2 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"MeshAlpha",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TMesh",
				.var_address=&o
			},
			{
				BBDEBUGDECL_LOCAL,
				"a",
				"f",
				.var_address=&bbt_a
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x852c1a4e4bd2c08d, 993, 0};
	bbOnDebugEnterStm(&__stmt_0);
	MeshAlpha_(openb3d_openb3dcore_TEntity_GetInstance_pb_TTEntity((struct openb3d_openb3dcore_TEntity_obj*)((struct openb3d_openb3dcore_TEntity_obj*)bbObjectDowncast((BBOBJECT)o,(BBClass*)&openb3d_openb3dcore_TEntity))),bbt_a);
	bbOnDebugLeaveScope();
	return 0;
}
BBINT _openb3d_openb3dcore_TMesh_TreeCheck(struct openb3d_openb3dcore_TMesh_obj* o){
	((struct openb3d_openb3dcore_TMesh_obj*)bbNullObjectTest((BBObject*)o));
	struct BBDebugScope_1 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"TreeCheck",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TMesh",
				.var_address=&o
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x852c1a4e4bd2c08d, 1000, 0};
	bbOnDebugEnterStm(&__stmt_0);
	TreeCheck_(openb3d_openb3dcore_TEntity_GetInstance_pb_TTEntity((struct openb3d_openb3dcore_TEntity_obj*)((struct openb3d_openb3dcore_TEntity_obj*)bbObjectDowncast((BBOBJECT)o,(BBClass*)&openb3d_openb3dcore_TEntity))));
	bbOnDebugLeaveScope();
	return 0;
}
BBINT _openb3d_openb3dcore_TMesh_Render(struct openb3d_openb3dcore_TMesh_obj* o){
	((struct openb3d_openb3dcore_TMesh_obj*)bbNullObjectTest((BBObject*)o));
	struct BBDebugScope_1 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"Render",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TMesh",
				.var_address=&o
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x852c1a4e4bd2c08d, 1007, 0};
	bbOnDebugEnterStm(&__stmt_0);
	MeshRender_(openb3d_openb3dcore_TEntity_GetInstance_pb_TTEntity((struct openb3d_openb3dcore_TEntity_obj*)((struct openb3d_openb3dcore_TEntity_obj*)bbObjectDowncast((BBOBJECT)o,(BBClass*)&openb3d_openb3dcore_TEntity))));
	bbOnDebugLeaveScope();
	return 0;
}
BBINT _openb3d_openb3dcore_TMesh_UpdateShadow(struct openb3d_openb3dcore_TMesh_obj* o){
	((struct openb3d_openb3dcore_TMesh_obj*)bbNullObjectTest((BBObject*)o));
	struct BBDebugScope_1 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"UpdateShadow",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TMesh",
				.var_address=&o
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x852c1a4e4bd2c08d, 1014, 0};
	bbOnDebugEnterStm(&__stmt_0);
	UpdateShadow_(openb3d_openb3dcore_TEntity_GetInstance_pb_TTEntity((struct openb3d_openb3dcore_TEntity_obj*)((struct openb3d_openb3dcore_TEntity_obj*)bbObjectDowncast((BBOBJECT)o,(BBClass*)&openb3d_openb3dcore_TEntity))));
	bbOnDebugLeaveScope();
	return 0;
}
struct brl_linkedlist_TList_obj* openb3d_openb3dcore_TMesh_plane_list;
struct BBDebugScope_87 openb3d_openb3dcore_TMesh_scope ={
	BBDEBUGSCOPE_USERTYPE,
	"TMesh",
	{
		{
			BBDEBUGDECL_FIELD,
			"no_surfs",
			"*i",
			.field_offset=offsetof(struct openb3d_openb3dcore_TMesh_obj,_openb3d_openb3dcore_tmesh_no_surfs)
		},
		{
			BBDEBUGDECL_FIELD,
			"surf_list",
			":TList",
			.field_offset=offsetof(struct openb3d_openb3dcore_TMesh_obj,_openb3d_openb3dcore_tmesh_surf_list)
		},
		{
			BBDEBUGDECL_FIELD,
			"anim_surf_list",
			":TList",
			.field_offset=offsetof(struct openb3d_openb3dcore_TMesh_obj,_openb3d_openb3dcore_tmesh_anim_surf_list)
		},
		{
			BBDEBUGDECL_FIELD,
			"bones",
			":TList",
			.field_offset=offsetof(struct openb3d_openb3dcore_TMesh_obj,_openb3d_openb3dcore_tmesh_bones)
		},
		{
			BBDEBUGDECL_FIELD,
			"mat_sp",
			":TMatPtr",
			.field_offset=offsetof(struct openb3d_openb3dcore_TMesh_obj,_openb3d_openb3dcore_tmesh_mat_sp)
		},
		{
			BBDEBUGDECL_FIELD,
			"reset_col_tree",
			"*i",
			.field_offset=offsetof(struct openb3d_openb3dcore_TMesh_obj,_openb3d_openb3dcore_tmesh_reset_col_tree)
		},
		{
			BBDEBUGDECL_FIELD,
			"reset_bounds",
			"*i",
			.field_offset=offsetof(struct openb3d_openb3dcore_TMesh_obj,_openb3d_openb3dcore_tmesh_reset_bounds)
		},
		{
			BBDEBUGDECL_FIELD,
			"min_x",
			"*f",
			.field_offset=offsetof(struct openb3d_openb3dcore_TMesh_obj,_openb3d_openb3dcore_tmesh_min_x)
		},
		{
			BBDEBUGDECL_FIELD,
			"min_y",
			"*f",
			.field_offset=offsetof(struct openb3d_openb3dcore_TMesh_obj,_openb3d_openb3dcore_tmesh_min_y)
		},
		{
			BBDEBUGDECL_FIELD,
			"min_z",
			"*f",
			.field_offset=offsetof(struct openb3d_openb3dcore_TMesh_obj,_openb3d_openb3dcore_tmesh_min_z)
		},
		{
			BBDEBUGDECL_FIELD,
			"max_x",
			"*f",
			.field_offset=offsetof(struct openb3d_openb3dcore_TMesh_obj,_openb3d_openb3dcore_tmesh_max_x)
		},
		{
			BBDEBUGDECL_FIELD,
			"max_y",
			"*f",
			.field_offset=offsetof(struct openb3d_openb3dcore_TMesh_obj,_openb3d_openb3dcore_tmesh_max_y)
		},
		{
			BBDEBUGDECL_FIELD,
			"max_z",
			"*f",
			.field_offset=offsetof(struct openb3d_openb3dcore_TMesh_obj,_openb3d_openb3dcore_tmesh_max_z)
		},
		{
			BBDEBUGDECL_FIELD,
			"shared_surf",
			"*i",
			.field_offset=offsetof(struct openb3d_openb3dcore_TMesh_obj,_openb3d_openb3dcore_tmesh_shared_surf)
		},
		{
			BBDEBUGDECL_FIELD,
			"shared_anim_surf",
			"*i",
			.field_offset=offsetof(struct openb3d_openb3dcore_TMesh_obj,_openb3d_openb3dcore_tmesh_shared_anim_surf)
		},
		{
			BBDEBUGDECL_FIELD,
			"plane_divisions",
			"i",
			.field_offset=offsetof(struct openb3d_openb3dcore_TMesh_obj,_openb3d_openb3dcore_tmesh_plane_divisions)
		},
		{
			BBDEBUGDECL_FIELD,
			"surf_list_id",
			"i",
			.field_offset=offsetof(struct openb3d_openb3dcore_TMesh_obj,_openb3d_openb3dcore_tmesh_surf_list_id)
		},
		{
			BBDEBUGDECL_FIELD,
			"anim_surf_list_id",
			"i",
			.field_offset=offsetof(struct openb3d_openb3dcore_TMesh_obj,_openb3d_openb3dcore_tmesh_anim_surf_list_id)
		},
		{
			BBDEBUGDECL_FIELD,
			"bones_id",
			"i",
			.field_offset=offsetof(struct openb3d_openb3dcore_TMesh_obj,_openb3d_openb3dcore_tmesh_bones_id)
		},
		{
			BBDEBUGDECL_GLOBAL,
			"plane_list",
			":TList",
			.var_address=(void*)&openb3d_openb3dcore_TMesh_plane_list
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"New",
			"()i",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_TMesh_New
		},
		{
			BBDEBUGDECL_TYPEFUNCTION,
			"CreateObject",
			"(*b):TMesh",
			.func_ptr=(BBFuncPtr)&openb3d_openb3dcore_TMesh_CreateObject_TTMesh_pb
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"InitFields",
			"()i",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_TMesh_InitFields
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"DebugFields",
			"(i,i)i",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_TMesh_DebugFields_ii
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"AddList",
			"(:TList)i",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_TMesh_AddList_TTList
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"CopyList",
			"(:TList)i",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_TMesh_CopyList_TTList
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"MeshListAdd",
			"(:TList,:Object)i",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_TMesh_MeshListAdd_TTListTObject
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"MeshListRemove",
			"(:TList,:Object)i",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_TMesh_MeshListRemove_TTListTObject
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"MeshArrayResize",
			"(i,i)i",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_TMesh_MeshArrayResize_ii
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"MeshArraySet",
			"(i,i,:Object)i",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_TMesh_MeshArraySet_iiTObject
		},
		{
			BBDEBUGDECL_TYPEFUNCTION,
			"NewMesh",
			"():TMesh",
			.func_ptr=(BBFuncPtr)&openb3d_openb3dcore_TMesh_NewMesh_TTMesh
		},
		{
			BBDEBUGDECL_TYPEFUNCTION,
			"Create",
			"():TMesh",
			.func_ptr=(BBFuncPtr)&openb3d_openb3dcore_TMesh_Create_TTMesh
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"LightMesh",
			"(f,f,f,f,f,f,f)i",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_TMesh_LightMesh_fffffff
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"CreateAllChildren",
			"()i",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_TMesh_CreateAllChildren
		},
		{
			BBDEBUGDECL_TYPEFUNCTION,
			"CreatePlane",
			"(i,:TEntity):TMesh",
			.func_ptr=(BBFuncPtr)&openb3d_openb3dcore_TMesh_CreatePlane_TTMesh_iTTEntity
		},
		{
			BBDEBUGDECL_TYPEFUNCTION,
			"UpdatePlane",
			"(:TMesh)i",
			.func_ptr=(BBFuncPtr)&openb3d_openb3dcore_TMesh_UpdatePlane_i_TTMesh
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"CreateBone",
			"(:TEntity):TBone",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_TMesh_CreateBone_TTEntity
		},
		{
			BBDEBUGDECL_TYPEFUNCTION,
			"CreateQuad",
			"(:TEntity):TMesh",
			.func_ptr=(BBFuncPtr)&openb3d_openb3dcore_TMesh_CreateQuad_TTMesh_TTEntity
		},
		{
			BBDEBUGDECL_TYPEFUNCTION,
			"MeshCSG",
			"(:TMesh,:TMesh,i):TMesh",
			.func_ptr=(BBFuncPtr)&openb3d_openb3dcore_TMesh_MeshCSG_TTMesh_TTMeshTTMeshi
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"MeshesIntersect",
			"(:TMesh)i",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_TMesh_MeshesIntersect_TTMesh
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"RepeatMesh",
			"(:TEntity):TMesh",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_TMesh_RepeatMesh_TTEntity
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"SkinMesh",
			"(i,i,i,f,i,f,i,f,i,f)i",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_TMesh_SkinMesh_iiifififif
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"PositionAnimMesh",
			"(f,f,f)i",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_TMesh_PositionAnimMesh_fff
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"RotateAnimMesh",
			"(f,f,f)i",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_TMesh_RotateAnimMesh_fff
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"ScaleAnimMesh",
			"(f,f,f)i",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_TMesh_ScaleAnimMesh_fff
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"TransformVertices",
			"(:TMatPtr)i",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_TMesh_TransformVertices_TTMatPtr
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"UpdateVerticesNormals",
			"(:TSurface)i",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_TMesh_UpdateVerticesNormals_TTSurface
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"FreeEntity",
			"()i",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_TMesh_FreeEntity
		},
		{
			BBDEBUGDECL_TYPEFUNCTION,
			"CreateMesh",
			"(:TEntity):TMesh",
			.func_ptr=(BBFuncPtr)&openb3d_openb3dcore_TMesh_CreateMesh_TTMesh_TTEntity
		},
		{
			BBDEBUGDECL_TYPEFUNCTION,
			"CreateCube",
			"(:TEntity):TMesh",
			.func_ptr=(BBFuncPtr)&openb3d_openb3dcore_TMesh_CreateCube_TTMesh_TTEntity
		},
		{
			BBDEBUGDECL_TYPEFUNCTION,
			"CreateSphere",
			"(i,:TEntity):TMesh",
			.func_ptr=(BBFuncPtr)&openb3d_openb3dcore_TMesh_CreateSphere_TTMesh_iTTEntity
		},
		{
			BBDEBUGDECL_TYPEFUNCTION,
			"CreateCylinder",
			"(i,i,:TEntity):TMesh",
			.func_ptr=(BBFuncPtr)&openb3d_openb3dcore_TMesh_CreateCylinder_TTMesh_iiTTEntity
		},
		{
			BBDEBUGDECL_TYPEFUNCTION,
			"CreateCone",
			"(i,i,:TEntity):TMesh",
			.func_ptr=(BBFuncPtr)&openb3d_openb3dcore_TMesh_CreateCone_TTMesh_iiTTEntity
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"CopyMesh",
			"(:TEntity):TMesh",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_TMesh_CopyMesh_TTEntity
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"AddMesh",
			"(:TMesh)i",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_TMesh_AddMesh_TTMesh
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"FlipMesh",
			"()i",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_TMesh_FlipMesh
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"PaintMesh",
			"(:TBrush)i",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_TMesh_PaintMesh_TTBrush
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"FitMesh",
			"(f,f,f,f,f,f,i)i",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_TMesh_FitMesh_ffffffi
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"ScaleMesh",
			"(f,f,f)i",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_TMesh_ScaleMesh_fff
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"RotateMesh",
			"(f,f,f)i",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_TMesh_RotateMesh_fff
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"PositionMesh",
			"(f,f,f)i",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_TMesh_PositionMesh_fff
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"UpdateNormals",
			"()i",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_TMesh_UpdateNormals
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"CreateSurface",
			"(:TBrush):TSurface",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_TMesh_CreateSurface_TTBrush
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"MeshWidth",
			"()f",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_TMesh_MeshWidth
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"MeshHeight",
			"()f",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_TMesh_MeshHeight
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"MeshDepth",
			"()f",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_TMesh_MeshDepth
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"CountSurfaces",
			"()i",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_TMesh_CountSurfaces
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"GetSurface",
			"(i):TSurface",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_TMesh_GetSurface_i
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"FindSurface",
			"(:TBrush):TSurface",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_TMesh_FindSurface_TTBrush
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"CopyEntity",
			"(:TEntity):TMesh",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_TMesh_CopyEntity_TTEntity
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"Update",
			"()i",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_TMesh_Update
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"CountVertices",
			"()i",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_TMesh_CountVertices
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"CountTriangles",
			"()i",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_TMesh_CountTriangles
		},
		{
			BBDEBUGDECL_TYPEFUNCTION,
			"CopyBonesList",
			"(:TEntity)i",
			.func_ptr=(BBFuncPtr)&openb3d_openb3dcore_TMesh_CopyBonesList_i_TTEntity
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"CollapseAnimMesh",
			"():TMesh",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_TMesh_CollapseAnimMesh
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"CollapseChildren",
			"(:TEntity,:TMesh):TMesh",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_TMesh_CollapseChildren_TTEntityTTMesh
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"TransformMesh",
			"(:TMatPtr)i",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_TMesh_TransformMesh_TTMatPtr
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"GetBounds",
			"()i",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_TMesh_GetBounds
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"Alpha",
			"()i",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_TMesh_Alpha
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"MeshColor",
			"(f,f,f,f)i",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_TMesh_MeshColor_ffff
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"MeshRed",
			"(f)i",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_TMesh_MeshRed_f
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"MeshGreen",
			"(f)i",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_TMesh_MeshGreen_f
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"MeshBlue",
			"(f)i",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_TMesh_MeshBlue_f
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"MeshAlpha",
			"(f)i",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_TMesh_MeshAlpha_f
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"TreeCheck",
			"()i",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_TMesh_TreeCheck
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"Render",
			"()i",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_TMesh_Render
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"UpdateShadow",
			"()i",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_TMesh_UpdateShadow
		},
		{
			BBDEBUGDECL_END
		}
	}
};
struct BBClass_openb3d_openb3dcore_TMesh openb3d_openb3dcore_TMesh={
	&openb3d_openb3dcore_TEntity,
	bbObjectFree,
	(BBDebugScope*)&openb3d_openb3dcore_TMesh_scope,
	sizeof(struct openb3d_openb3dcore_TMesh_obj),
	(void (*)(BBOBJECT))_openb3d_openb3dcore_TMesh_New,
	(void (*)(BBOBJECT))_openb3d_openb3dcore_TMesh_Delete,
	bbObjectToString,
	bbObjectCompare,
	bbObjectSendMessage,
	0,
	0,
	offsetof(struct openb3d_openb3dcore_TMesh_obj,_openb3d_openb3dcore_tmesh_bones_id) - offsetof(struct openb3d_openb3dcore_TMesh_obj,_openb3d_openb3dcore_tmesh_no_surfs) + sizeof(BBINT)
	,0
	,offsetof(struct openb3d_openb3dcore_TMesh_obj,_openb3d_openb3dcore_tmesh_no_surfs)
	,_openb3d_openb3dcore_TMesh_CopyEntity_TTEntity
	,_openb3d_openb3dcore_TMesh_Update
	,openb3d_openb3dcore_TEntity_FreeObject_i_pb
	,openb3d_openb3dcore_TEntity_GetObject_TTEntity_pb
	,openb3d_openb3dcore_TEntity_GetInstance_pb_TTEntity
	,openb3d_openb3dcore_TEntity_InitGlobals_i
	,_openb3d_openb3dcore_TMesh_InitFields
	,_openb3d_openb3dcore_TMesh_DebugFields_ii
	,_openb3d_openb3dcore_TMesh_AddList_TTList
	,openb3d_openb3dcore_TEntity_AddList__i_TTList
	,_openb3d_openb3dcore_TMesh_CopyList_TTList
	,openb3d_openb3dcore_TEntity_CopyList__i_TTList
	,_openb3d_openb3dcore_TEntity_EntityListAdd_TTListTObject
	,_openb3d_openb3dcore_TEntity_EntityListRemove_TTListTObject
	,_openb3d_openb3dcore_TEntity_AddAnimSeq_i
	,_openb3d_openb3dcore_TEntity_SetAnimKey_fiii
	,_openb3d_openb3dcore_TEntity_AlignToVector_fffif
	,_openb3d_openb3dcore_TEntity_GetString_pb
	,_openb3d_openb3dcore_TEntity_SetString_pbS
	,_openb3d_openb3dcore_TMesh_FreeEntity
	,_openb3d_openb3dcore_TEntity_FreeEntityList
	,_openb3d_openb3dcore_TEntity_SetParent_TTEntity
	,_openb3d_openb3dcore_TEntity_PositionEntity_fffi
	,_openb3d_openb3dcore_TEntity_MoveEntity_fff
	,_openb3d_openb3dcore_TEntity_TranslateEntity_fffi
	,_openb3d_openb3dcore_TEntity_ScaleEntity_fffi
	,_openb3d_openb3dcore_TEntity_RotateEntity_fffi
	,_openb3d_openb3dcore_TEntity_TurnEntity_fffi
	,_openb3d_openb3dcore_TEntity_PointEntity_TTEntityf
	,_openb3d_openb3dcore_TEntity_LoadAnimSeq_S
	,_openb3d_openb3dcore_TEntity_ExtractAnimSeq_iii
	,_openb3d_openb3dcore_TEntity_Animate_ifii
	,_openb3d_openb3dcore_TEntity_SetAnimTime_fi
	,_openb3d_openb3dcore_TEntity_AnimSeq
	,_openb3d_openb3dcore_TEntity_AnimLength
	,_openb3d_openb3dcore_TEntity_AnimTime
	,_openb3d_openb3dcore_TEntity_Animating
	,_openb3d_openb3dcore_TEntity_EntityColor_fffi
	,_openb3d_openb3dcore_TEntity_EntityAlpha_f
	,_openb3d_openb3dcore_TEntity_EntityShininess_f
	,_openb3d_openb3dcore_TEntity_EntityTexture_TTTextureii
	,_openb3d_openb3dcore_TEntity_EntityBlend_i
	,_openb3d_openb3dcore_TEntity_EntityFX_i
	,_openb3d_openb3dcore_TEntity_PaintEntity_TTBrush
	,_openb3d_openb3dcore_TEntity_GetEntityBrush
	,_openb3d_openb3dcore_TEntity_EntityOrder_i
	,_openb3d_openb3dcore_TEntity_ShowEntity
	,_openb3d_openb3dcore_TEntity_HideEntity
	,_openb3d_openb3dcore_TEntity_NameEntity_S
	,_openb3d_openb3dcore_TEntity_EntityParent_TTEntityi
	,_openb3d_openb3dcore_TEntity_GetParent
	,_openb3d_openb3dcore_TEntity_EntityX_i
	,_openb3d_openb3dcore_TEntity_EntityY_i
	,_openb3d_openb3dcore_TEntity_EntityZ_i
	,_openb3d_openb3dcore_TEntity_EntityPitch_i
	,_openb3d_openb3dcore_TEntity_EntityYaw_i
	,_openb3d_openb3dcore_TEntity_EntityRoll_i
	,_openb3d_openb3dcore_TEntity_EntityClass
	,_openb3d_openb3dcore_TEntity_EntityName
	,_openb3d_openb3dcore_TEntity_CountChildren
	,_openb3d_openb3dcore_TEntity_GetChild_i
	,_openb3d_openb3dcore_TEntity_FindChild_S
	,_openb3d_openb3dcore_TEntity_EntityPick_f
	,_openb3d_openb3dcore_TEntity_LinePick_fffffff
	,_openb3d_openb3dcore_TEntity_EntityVisible_TTEntityTTEntity
	,_openb3d_openb3dcore_TEntity_EntityDistance_TTEntity
	,_openb3d_openb3dcore_TEntity_DeltaYaw_TTEntity
	,_openb3d_openb3dcore_TEntity_DeltaPitch_TTEntity
	,openb3d_openb3dcore_TEntity_TFormPoint_i_fffTTEntityTTEntity
	,openb3d_openb3dcore_TEntity_TFormVector_i_fffTTEntityTTEntity
	,openb3d_openb3dcore_TEntity_TFormNormal_i_fffTTEntityTTEntity
	,openb3d_openb3dcore_TEntity_TFormedX_f
	,openb3d_openb3dcore_TEntity_TFormedY_f
	,openb3d_openb3dcore_TEntity_TFormedZ_f
	,_openb3d_openb3dcore_TEntity_GetMatElement_ii
	,_openb3d_openb3dcore_TEntity_ResetEntity
	,_openb3d_openb3dcore_TEntity_EntityRadius_ff
	,_openb3d_openb3dcore_TEntity_EntityBox_ffffff
	,_openb3d_openb3dcore_TEntity_EntityType_ii
	,_openb3d_openb3dcore_TEntity_EntityPickMode_ii
	,_openb3d_openb3dcore_TEntity_EntityCollided_i
	,_openb3d_openb3dcore_TEntity_CountCollisions
	,_openb3d_openb3dcore_TEntity_CollisionX_i
	,_openb3d_openb3dcore_TEntity_CollisionY_i
	,_openb3d_openb3dcore_TEntity_CollisionZ_i
	,_openb3d_openb3dcore_TEntity_CollisionNX_i
	,_openb3d_openb3dcore_TEntity_CollisionNY_i
	,_openb3d_openb3dcore_TEntity_CollisionNZ_i
	,_openb3d_openb3dcore_TEntity_CollisionTime_i
	,_openb3d_openb3dcore_TEntity_CollisionEntity_i
	,_openb3d_openb3dcore_TEntity_CollisionSurface_i
	,_openb3d_openb3dcore_TEntity_CollisionTriangle_i
	,_openb3d_openb3dcore_TEntity_GetEntityType
	,_openb3d_openb3dcore_TEntity_MeshCullRadius_f
	,_openb3d_openb3dcore_TEntity_EntityScaleX_i
	,_openb3d_openb3dcore_TEntity_EntityScaleY_i
	,_openb3d_openb3dcore_TEntity_EntityScaleZ_i
	,_openb3d_openb3dcore_TEntity_Hidden
	,openb3d_openb3dcore_TEntity_CountAllChildren_i_TTEntityi
	,_openb3d_openb3dcore_TEntity_GetChildFromAll_iviTTEntity
	,_openb3d_openb3dcore_TEntity_ListParents_TTList
	,_openb3d_openb3dcore_TEntity_UpdateMat_b
	,_openb3d_openb3dcore_TEntity_AddParent_TTEntity
	,openb3d_openb3dcore_TEntity_UpdateChildren_i_TTEntity
	,_openb3d_openb3dcore_TEntity_EntityDistanceSquared_TTEntity
	,_openb3d_openb3dcore_TEntity_MQ_Update
	,_openb3d_openb3dcore_TEntity_MQ_GetInvMatrix_TTMatPtr
	,_openb3d_openb3dcore_TEntity_MQ_GetMatrix_TTMatPtr
	,_openb3d_openb3dcore_TEntity_MQ_GetScaleXYZ_vfvfvf
	,_openb3d_openb3dcore_TEntity_MQ_Turn_ffffi
	,openb3d_openb3dcore_TMesh_CreateObject_TTMesh_pb
	,_openb3d_openb3dcore_TMesh_MeshListAdd_TTListTObject
	,_openb3d_openb3dcore_TMesh_MeshListRemove_TTListTObject
	,_openb3d_openb3dcore_TMesh_MeshArrayResize_ii
	,_openb3d_openb3dcore_TMesh_MeshArraySet_iiTObject
	,openb3d_openb3dcore_TMesh_NewMesh_TTMesh
	,openb3d_openb3dcore_TMesh_Create_TTMesh
	,_openb3d_openb3dcore_TMesh_LightMesh_fffffff
	,_openb3d_openb3dcore_TMesh_CreateAllChildren
	,openb3d_openb3dcore_TMesh_CreatePlane_TTMesh_iTTEntity
	,openb3d_openb3dcore_TMesh_UpdatePlane_i_TTMesh
	,_openb3d_openb3dcore_TMesh_CreateBone_TTEntity
	,openb3d_openb3dcore_TMesh_CreateQuad_TTMesh_TTEntity
	,openb3d_openb3dcore_TMesh_MeshCSG_TTMesh_TTMeshTTMeshi
	,_openb3d_openb3dcore_TMesh_MeshesIntersect_TTMesh
	,_openb3d_openb3dcore_TMesh_RepeatMesh_TTEntity
	,_openb3d_openb3dcore_TMesh_SkinMesh_iiifififif
	,_openb3d_openb3dcore_TMesh_PositionAnimMesh_fff
	,_openb3d_openb3dcore_TMesh_RotateAnimMesh_fff
	,_openb3d_openb3dcore_TMesh_ScaleAnimMesh_fff
	,_openb3d_openb3dcore_TMesh_TransformVertices_TTMatPtr
	,_openb3d_openb3dcore_TMesh_UpdateVerticesNormals_TTSurface
	,openb3d_openb3dcore_TMesh_CreateMesh_TTMesh_TTEntity
	,openb3d_openb3dcore_TMesh_CreateCube_TTMesh_TTEntity
	,openb3d_openb3dcore_TMesh_CreateSphere_TTMesh_iTTEntity
	,openb3d_openb3dcore_TMesh_CreateCylinder_TTMesh_iiTTEntity
	,openb3d_openb3dcore_TMesh_CreateCone_TTMesh_iiTTEntity
	,_openb3d_openb3dcore_TMesh_CopyMesh_TTEntity
	,_openb3d_openb3dcore_TMesh_AddMesh_TTMesh
	,_openb3d_openb3dcore_TMesh_FlipMesh
	,_openb3d_openb3dcore_TMesh_PaintMesh_TTBrush
	,_openb3d_openb3dcore_TMesh_FitMesh_ffffffi
	,_openb3d_openb3dcore_TMesh_ScaleMesh_fff
	,_openb3d_openb3dcore_TMesh_RotateMesh_fff
	,_openb3d_openb3dcore_TMesh_PositionMesh_fff
	,_openb3d_openb3dcore_TMesh_UpdateNormals
	,_openb3d_openb3dcore_TMesh_CreateSurface_TTBrush
	,_openb3d_openb3dcore_TMesh_MeshWidth
	,_openb3d_openb3dcore_TMesh_MeshHeight
	,_openb3d_openb3dcore_TMesh_MeshDepth
	,_openb3d_openb3dcore_TMesh_CountSurfaces
	,_openb3d_openb3dcore_TMesh_GetSurface_i
	,_openb3d_openb3dcore_TMesh_FindSurface_TTBrush
	,_openb3d_openb3dcore_TMesh_CountVertices
	,_openb3d_openb3dcore_TMesh_CountTriangles
	,openb3d_openb3dcore_TMesh_CopyBonesList_i_TTEntity
	,_openb3d_openb3dcore_TMesh_CollapseAnimMesh
	,_openb3d_openb3dcore_TMesh_CollapseChildren_TTEntityTTMesh
	,_openb3d_openb3dcore_TMesh_TransformMesh_TTMatPtr
	,_openb3d_openb3dcore_TMesh_GetBounds
	,_openb3d_openb3dcore_TMesh_Alpha
	,_openb3d_openb3dcore_TMesh_MeshColor_ffff
	,_openb3d_openb3dcore_TMesh_MeshRed_f
	,_openb3d_openb3dcore_TMesh_MeshGreen_f
	,_openb3d_openb3dcore_TMesh_MeshBlue_f
	,_openb3d_openb3dcore_TMesh_MeshAlpha_f
	,_openb3d_openb3dcore_TMesh_TreeCheck
	,_openb3d_openb3dcore_TMesh_Render
	,_openb3d_openb3dcore_TMesh_UpdateShadow
};

void _openb3d_openb3dcore_TSprite_New(struct openb3d_openb3dcore_TSprite_obj* o) {
	_openb3d_openb3dcore_TMesh_New((struct openb3d_openb3dcore_TMesh_obj*)o);
	o->clas = &openb3d_openb3dcore_TSprite;
	((struct openb3d_openb3dcore_TSprite_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tsprite_angle = 0;
	((struct openb3d_openb3dcore_TSprite_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tsprite_scale_x = 0;
	((struct openb3d_openb3dcore_TSprite_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tsprite_scale_y = 0;
	((struct openb3d_openb3dcore_TSprite_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tsprite_handle_x = 0;
	((struct openb3d_openb3dcore_TSprite_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tsprite_handle_y = 0;
	((struct openb3d_openb3dcore_TSprite_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tsprite_view_mode = 0;
	((struct openb3d_openb3dcore_TSprite_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tsprite_render_mode = 0;
	struct BBDebugScope __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"New",
		{
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0xe183483c4d7176e5, 100, 0};
	bbOnDebugEnterStm(&__stmt_0);
	if(openb3d_openb3dcore_TGlobal3D_Log_New!=0){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0xe183483c4d7176e5, 101, 0};
		bbOnDebugEnterStm(&__stmt_0);
		brl_blitz_DebugLog((BBString*)&_s261);
		bbOnDebugLeaveScope();
	}
	bbOnDebugLeaveScope();
}
void _openb3d_openb3dcore_TSprite_Delete(struct openb3d_openb3dcore_TSprite_obj* o) {
	struct BBDebugScope_1 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"Delete",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TSprite",
				.var_address=&o
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0xe183483c4d7176e5, 108, 0};
	bbOnDebugEnterStm(&__stmt_0);
	if(openb3d_openb3dcore_TGlobal3D_Log_Del!=0){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0xe183483c4d7176e5, 109, 0};
		bbOnDebugEnterStm(&__stmt_0);
		brl_blitz_DebugLog((BBString*)&_s262);
		bbOnDebugLeaveScope();
	}
	bbOnDebugLeaveScope();
	_openb3d_openb3dcore_TMesh_Delete((struct openb3d_openb3dcore_TMesh_obj*)o);
}
struct openb3d_openb3dcore_TSprite_obj* openb3d_openb3dcore_TSprite_CreateObject_TTSprite_pb(BBBYTE* bbt_inst){
	struct openb3d_openb3dcore_TSprite_obj* bbt_obj=(struct openb3d_openb3dcore_TSprite_obj*)((struct openb3d_openb3dcore_TSprite_obj*)&bbNullObject);
	struct BBDebugScope_2 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"CreateObject",
		{
			{
				BBDEBUGDECL_LOCAL,
				"inst",
				"*b",
				.var_address=&bbt_inst
			},
			{
				BBDEBUGDECL_LOCAL,
				"obj",
				":TSprite",
				.var_address=&bbt_obj
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0xe183483c4d7176e5, 15, 0};
	bbOnDebugEnterStm(&__stmt_0);
	if(bbt_inst==0){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0xe183483c4d7176e5, 15, 0};
		bbOnDebugEnterStm(&__stmt_0);
		bbOnDebugLeaveScope();
		bbOnDebugLeaveScope();
		return (struct openb3d_openb3dcore_TSprite_obj*)&bbNullObject;
	}
	struct BBDebugStm __stmt_1 = {0xe183483c4d7176e5, 16, 0};
	bbOnDebugEnterStm(&__stmt_1);
	bbt_obj=(struct openb3d_openb3dcore_TSprite_obj*)(struct openb3d_openb3dcore_TSprite_obj*)bbObjectNew((BBClass *)&openb3d_openb3dcore_TSprite);
	struct BBDebugStm __stmt_2 = {0xe183483c4d7176e5, 18, 0};
	bbOnDebugEnterStm(&__stmt_2);
	((struct brl_map_ptrmap_TPtrMap_obj*)bbNullObjectTest((BBObject*)openb3d_openb3dcore_TEntity_ent_map))->clas->m_Insert_pbTObject((struct brl_map_ptrmap_TPtrMap_obj*)openb3d_openb3dcore_TEntity_ent_map,bbt_inst,(BBOBJECT)bbt_obj);
	struct BBDebugStm __stmt_3 = {0xe183483c4d7176e5, 22, 0};
	bbOnDebugEnterStm(&__stmt_3);
	((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)bbt_obj))->_openb3d_openb3dcore_tentity_instance =bbt_inst;
	struct BBDebugStm __stmt_4 = {0xe183483c4d7176e5, 23, 0};
	bbOnDebugEnterStm(&__stmt_4);
	((struct openb3d_openb3dcore_TSprite_obj*)bbNullObjectTest((BBObject*)bbt_obj))->clas->m_InitFields((struct openb3d_openb3dcore_TSprite_obj*)bbt_obj);
	struct BBDebugStm __stmt_5 = {0xe183483c4d7176e5, 24, 0};
	bbOnDebugEnterStm(&__stmt_5);
	bbOnDebugLeaveScope();
	return (struct openb3d_openb3dcore_TSprite_obj*)bbt_obj;
}
BBINT _openb3d_openb3dcore_TSprite_InitFields(struct openb3d_openb3dcore_TSprite_obj* o){
	((struct openb3d_openb3dcore_TSprite_obj*)bbNullObjectTest((BBObject*)o));
	struct BBDebugScope_1 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"InitFields",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TSprite",
				.var_address=&o
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0xe183483c4d7176e5, 30, 0};
	bbOnDebugEnterStm(&__stmt_0);
	(&openb3d_openb3dcore_TSprite)->super->m_InitFields((struct openb3d_openb3dcore_TMesh_obj*)o);
	struct BBDebugStm __stmt_1 = {0xe183483c4d7176e5, 33, 0};
	bbOnDebugEnterStm(&__stmt_1);
	((struct openb3d_openb3dcore_TSprite_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tsprite_view_mode =SpriteInt_(openb3d_openb3dcore_TEntity_GetInstance_pb_TTEntity((struct openb3d_openb3dcore_TEntity_obj*)((struct openb3d_openb3dcore_TEntity_obj*)bbObjectDowncast((BBOBJECT)o,(BBClass*)&openb3d_openb3dcore_TEntity))),6);
	struct BBDebugStm __stmt_2 = {0xe183483c4d7176e5, 34, 0};
	bbOnDebugEnterStm(&__stmt_2);
	((struct openb3d_openb3dcore_TSprite_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tsprite_render_mode =SpriteInt_(openb3d_openb3dcore_TEntity_GetInstance_pb_TTEntity((struct openb3d_openb3dcore_TEntity_obj*)((struct openb3d_openb3dcore_TEntity_obj*)bbObjectDowncast((BBOBJECT)o,(BBClass*)&openb3d_openb3dcore_TEntity))),7);
	struct BBDebugStm __stmt_3 = {0xe183483c4d7176e5, 37, 0};
	bbOnDebugEnterStm(&__stmt_3);
	((struct openb3d_openb3dcore_TSprite_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tsprite_angle =SpriteFloat_(openb3d_openb3dcore_TEntity_GetInstance_pb_TTEntity((struct openb3d_openb3dcore_TEntity_obj*)((struct openb3d_openb3dcore_TEntity_obj*)bbObjectDowncast((BBOBJECT)o,(BBClass*)&openb3d_openb3dcore_TEntity))),1);
	struct BBDebugStm __stmt_4 = {0xe183483c4d7176e5, 38, 0};
	bbOnDebugEnterStm(&__stmt_4);
	((struct openb3d_openb3dcore_TSprite_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tsprite_scale_x =SpriteFloat_(openb3d_openb3dcore_TEntity_GetInstance_pb_TTEntity((struct openb3d_openb3dcore_TEntity_obj*)((struct openb3d_openb3dcore_TEntity_obj*)bbObjectDowncast((BBOBJECT)o,(BBClass*)&openb3d_openb3dcore_TEntity))),2);
	struct BBDebugStm __stmt_5 = {0xe183483c4d7176e5, 39, 0};
	bbOnDebugEnterStm(&__stmt_5);
	((struct openb3d_openb3dcore_TSprite_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tsprite_scale_y =SpriteFloat_(openb3d_openb3dcore_TEntity_GetInstance_pb_TTEntity((struct openb3d_openb3dcore_TEntity_obj*)((struct openb3d_openb3dcore_TEntity_obj*)bbObjectDowncast((BBOBJECT)o,(BBClass*)&openb3d_openb3dcore_TEntity))),3);
	struct BBDebugStm __stmt_6 = {0xe183483c4d7176e5, 40, 0};
	bbOnDebugEnterStm(&__stmt_6);
	((struct openb3d_openb3dcore_TSprite_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tsprite_handle_x =SpriteFloat_(openb3d_openb3dcore_TEntity_GetInstance_pb_TTEntity((struct openb3d_openb3dcore_TEntity_obj*)((struct openb3d_openb3dcore_TEntity_obj*)bbObjectDowncast((BBOBJECT)o,(BBClass*)&openb3d_openb3dcore_TEntity))),4);
	struct BBDebugStm __stmt_7 = {0xe183483c4d7176e5, 41, 0};
	bbOnDebugEnterStm(&__stmt_7);
	((struct openb3d_openb3dcore_TSprite_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tsprite_handle_y =SpriteFloat_(openb3d_openb3dcore_TEntity_GetInstance_pb_TTEntity((struct openb3d_openb3dcore_TEntity_obj*)((struct openb3d_openb3dcore_TEntity_obj*)bbObjectDowncast((BBOBJECT)o,(BBClass*)&openb3d_openb3dcore_TEntity))),5);
	bbOnDebugLeaveScope();
	return 0;
}
BBINT _openb3d_openb3dcore_TSprite_DebugFields_ii(struct openb3d_openb3dcore_TSprite_obj* o,BBINT bbt_debug_subobjects,BBINT bbt_debug_base_types){
	((struct openb3d_openb3dcore_TSprite_obj*)bbNullObjectTest((BBObject*)o));
	BBSTRING bbt_pad=(&bbEmptyString);
	BBINT bbt_loop=0;
	struct BBDebugScope_5 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"DebugFields",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TSprite",
				.var_address=&o
			},
			{
				BBDEBUGDECL_LOCAL,
				"debug_subobjects",
				"i",
				.var_address=&bbt_debug_subobjects
			},
			{
				BBDEBUGDECL_LOCAL,
				"debug_base_types",
				"i",
				.var_address=&bbt_debug_base_types
			},
			{
				BBDEBUGDECL_LOCAL,
				"pad",
				"$",
				.var_address=&bbt_pad
			},
			{
				BBDEBUGDECL_LOCAL,
				"loop",
				"i",
				.var_address=&bbt_loop
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0xe183483c4d7176e5, 47, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbt_pad=((BBString*)&bbEmptyString);
	struct BBDebugStm __stmt_1 = {0xe183483c4d7176e5, 48, 0};
	bbOnDebugEnterStm(&__stmt_1);
	bbt_loop=bbt_debug_subobjects;
	struct BBDebugStm __stmt_2 = {0xe183483c4d7176e5, 49, 0};
	bbOnDebugEnterStm(&__stmt_2);
	if(bbt_debug_base_types>bbt_debug_subobjects){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0xe183483c4d7176e5, 49, 0};
		bbOnDebugEnterStm(&__stmt_0);
		bbt_loop=bbt_debug_base_types;
		bbOnDebugLeaveScope();
	}
	struct BBDebugStm __stmt_3 = {0xe183483c4d7176e5, 50, 0};
	bbOnDebugEnterStm(&__stmt_3);
	{
		BBINT bbt_i=1;
		BBINT bbt_=bbt_loop;
		for(;(bbt_i<bbt_);bbt_i=(bbt_i+1)){
			struct BBDebugScope_1 __scope = {
				BBDEBUGSCOPE_LOCALBLOCK,
				0,
				{
					{
						BBDEBUGDECL_LOCAL,
						"i",
						"i",
						.var_address=&bbt_i
					},
					{
						BBDEBUGDECL_END
					}
				}
			};
			bbOnDebugEnterScope((BBDebugScope *)&__scope);
			struct BBDebugStm __stmt_0 = {0xe183483c4d7176e5, 51, 0};
			bbOnDebugEnterStm(&__stmt_0);
			bbt_pad=bbStringConcat(bbt_pad,((BBString*)&_s0));
			bbOnDebugLeaveScope();
		}
	}
	struct BBDebugStm __stmt_4 = {0xe183483c4d7176e5, 53, 0};
	bbOnDebugEnterStm(&__stmt_4);
	if(bbt_debug_subobjects!=0){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0xe183483c4d7176e5, 53, 0};
		bbOnDebugEnterStm(&__stmt_0);
		bbt_debug_subobjects+=1;
		bbOnDebugLeaveScope();
	}
	struct BBDebugStm __stmt_5 = {0xe183483c4d7176e5, 54, 0};
	bbOnDebugEnterStm(&__stmt_5);
	if(bbt_debug_base_types!=0){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0xe183483c4d7176e5, 54, 0};
		bbOnDebugEnterStm(&__stmt_0);
		bbt_debug_base_types+=1;
		bbOnDebugLeaveScope();
	}
	struct BBDebugStm __stmt_6 = {0xe183483c4d7176e5, 55, 0};
	bbOnDebugEnterStm(&__stmt_6);
	brl_blitz_DebugLog(bbStringConcat(bbStringConcat(bbt_pad,((BBString*)&_s246)),openb3d_openb3dcore_StringPtr(openb3d_openb3dcore_TEntity_GetInstance_pb_TTEntity((struct openb3d_openb3dcore_TEntity_obj*)((struct openb3d_openb3dcore_TEntity_obj*)bbObjectDowncast((BBOBJECT)o,(BBClass*)&openb3d_openb3dcore_TEntity))))));
	struct BBDebugStm __stmt_7 = {0xe183483c4d7176e5, 58, 0};
	bbOnDebugEnterStm(&__stmt_7);
	if(((struct openb3d_openb3dcore_TSprite_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tsprite_view_mode !=0){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0xe183483c4d7176e5, 58, 0};
		bbOnDebugEnterStm(&__stmt_0);
		brl_blitz_DebugLog(bbStringConcat(bbStringConcat(bbt_pad,((BBString*)&_s247)),bbStringFromInt(((struct openb3d_openb3dcore_TSprite_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tsprite_view_mode [0])));
		bbOnDebugLeaveScope();
	}else{
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0xe183483c4d7176e5, 58, 0};
		bbOnDebugEnterStm(&__stmt_0);
		brl_blitz_DebugLog(bbStringConcat(bbt_pad,((BBString*)&_s248)));
		bbOnDebugLeaveScope();
	}
	struct BBDebugStm __stmt_8 = {0xe183483c4d7176e5, 59, 0};
	bbOnDebugEnterStm(&__stmt_8);
	if(((struct openb3d_openb3dcore_TSprite_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tsprite_render_mode !=0){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0xe183483c4d7176e5, 59, 0};
		bbOnDebugEnterStm(&__stmt_0);
		brl_blitz_DebugLog(bbStringConcat(bbStringConcat(bbt_pad,((BBString*)&_s249)),bbStringFromInt(((struct openb3d_openb3dcore_TSprite_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tsprite_render_mode [0])));
		bbOnDebugLeaveScope();
	}else{
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0xe183483c4d7176e5, 59, 0};
		bbOnDebugEnterStm(&__stmt_0);
		brl_blitz_DebugLog(bbStringConcat(bbt_pad,((BBString*)&_s250)));
		bbOnDebugLeaveScope();
	}
	struct BBDebugStm __stmt_9 = {0xe183483c4d7176e5, 62, 0};
	bbOnDebugEnterStm(&__stmt_9);
	if(((struct openb3d_openb3dcore_TSprite_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tsprite_angle !=0){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0xe183483c4d7176e5, 62, 0};
		bbOnDebugEnterStm(&__stmt_0);
		brl_blitz_DebugLog(bbStringConcat(bbStringConcat(bbt_pad,((BBString*)&_s251)),bbStringFromFloat(((struct openb3d_openb3dcore_TSprite_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tsprite_angle [0])));
		bbOnDebugLeaveScope();
	}else{
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0xe183483c4d7176e5, 62, 0};
		bbOnDebugEnterStm(&__stmt_0);
		brl_blitz_DebugLog(bbStringConcat(bbt_pad,((BBString*)&_s252)));
		bbOnDebugLeaveScope();
	}
	struct BBDebugStm __stmt_10 = {0xe183483c4d7176e5, 63, 0};
	bbOnDebugEnterStm(&__stmt_10);
	if(((struct openb3d_openb3dcore_TSprite_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tsprite_scale_x !=0){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0xe183483c4d7176e5, 63, 0};
		bbOnDebugEnterStm(&__stmt_0);
		brl_blitz_DebugLog(bbStringConcat(bbStringConcat(bbt_pad,((BBString*)&_s253)),bbStringFromFloat(((struct openb3d_openb3dcore_TSprite_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tsprite_scale_x [0])));
		bbOnDebugLeaveScope();
	}else{
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0xe183483c4d7176e5, 63, 0};
		bbOnDebugEnterStm(&__stmt_0);
		brl_blitz_DebugLog(bbStringConcat(bbt_pad,((BBString*)&_s254)));
		bbOnDebugLeaveScope();
	}
	struct BBDebugStm __stmt_11 = {0xe183483c4d7176e5, 64, 0};
	bbOnDebugEnterStm(&__stmt_11);
	if(((struct openb3d_openb3dcore_TSprite_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tsprite_scale_y !=0){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0xe183483c4d7176e5, 64, 0};
		bbOnDebugEnterStm(&__stmt_0);
		brl_blitz_DebugLog(bbStringConcat(bbStringConcat(bbt_pad,((BBString*)&_s255)),bbStringFromFloat(((struct openb3d_openb3dcore_TSprite_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tsprite_scale_y [0])));
		bbOnDebugLeaveScope();
	}else{
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0xe183483c4d7176e5, 64, 0};
		bbOnDebugEnterStm(&__stmt_0);
		brl_blitz_DebugLog(bbStringConcat(bbt_pad,((BBString*)&_s256)));
		bbOnDebugLeaveScope();
	}
	struct BBDebugStm __stmt_12 = {0xe183483c4d7176e5, 65, 0};
	bbOnDebugEnterStm(&__stmt_12);
	if(((struct openb3d_openb3dcore_TSprite_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tsprite_handle_x !=0){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0xe183483c4d7176e5, 65, 0};
		bbOnDebugEnterStm(&__stmt_0);
		brl_blitz_DebugLog(bbStringConcat(bbStringConcat(bbt_pad,((BBString*)&_s257)),bbStringFromFloat(((struct openb3d_openb3dcore_TSprite_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tsprite_handle_x [0])));
		bbOnDebugLeaveScope();
	}else{
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0xe183483c4d7176e5, 65, 0};
		bbOnDebugEnterStm(&__stmt_0);
		brl_blitz_DebugLog(bbStringConcat(bbt_pad,((BBString*)&_s258)));
		bbOnDebugLeaveScope();
	}
	struct BBDebugStm __stmt_13 = {0xe183483c4d7176e5, 66, 0};
	bbOnDebugEnterStm(&__stmt_13);
	if(((struct openb3d_openb3dcore_TSprite_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tsprite_handle_y !=0){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0xe183483c4d7176e5, 66, 0};
		bbOnDebugEnterStm(&__stmt_0);
		brl_blitz_DebugLog(bbStringConcat(bbStringConcat(bbt_pad,((BBString*)&_s259)),bbStringFromFloat(((struct openb3d_openb3dcore_TSprite_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tsprite_handle_y [0])));
		bbOnDebugLeaveScope();
	}else{
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0xe183483c4d7176e5, 66, 0};
		bbOnDebugEnterStm(&__stmt_0);
		brl_blitz_DebugLog(bbStringConcat(bbt_pad,((BBString*)&_s260)));
		bbOnDebugLeaveScope();
	}
	struct BBDebugStm __stmt_14 = {0xe183483c4d7176e5, 68, 0};
	bbOnDebugEnterStm(&__stmt_14);
	brl_blitz_DebugLog((BBString*)&bbEmptyString);
	struct BBDebugStm __stmt_15 = {0xe183483c4d7176e5, 70, 0};
	bbOnDebugEnterStm(&__stmt_15);
	if(bbt_debug_base_types!=0){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0xe183483c4d7176e5, 70, 0};
		bbOnDebugEnterStm(&__stmt_0);
		(&openb3d_openb3dcore_TSprite)->super->m_DebugFields_ii((struct openb3d_openb3dcore_TMesh_obj*)o,bbt_debug_subobjects,bbt_debug_base_types);
		bbOnDebugLeaveScope();
	}
	bbOnDebugLeaveScope();
	return 0;
}
struct openb3d_openb3dcore_TSprite_obj* openb3d_openb3dcore_TSprite_NewSprite_TTSprite(){
	BBBYTE* bbt_inst=0;
	struct BBDebugScope_1 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"NewSprite",
		{
			{
				BBDEBUGDECL_LOCAL,
				"inst",
				"*b",
				.var_address=&bbt_inst
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0xe183483c4d7176e5, 76, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbt_inst=NewSprite_();
	struct BBDebugStm __stmt_1 = {0xe183483c4d7176e5, 77, 0};
	bbOnDebugEnterStm(&__stmt_1);
	bbOnDebugLeaveScope();
	return (struct openb3d_openb3dcore_TSprite_obj*)openb3d_openb3dcore_TSprite_CreateObject_TTSprite_pb(bbt_inst);
}
struct openb3d_openb3dcore_TSprite_obj* openb3d_openb3dcore_TSprite_Create_TTSprite(){
	BBBYTE* bbt_inst=0;
	struct BBDebugScope_1 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"Create",
		{
			{
				BBDEBUGDECL_LOCAL,
				"inst",
				"*b",
				.var_address=&bbt_inst
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0xe183483c4d7176e5, 83, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbt_inst=NewSprite_();
	struct BBDebugStm __stmt_1 = {0xe183483c4d7176e5, 84, 0};
	bbOnDebugEnterStm(&__stmt_1);
	bbOnDebugLeaveScope();
	return (struct openb3d_openb3dcore_TSprite_obj*)openb3d_openb3dcore_TSprite_CreateObject_TTSprite_pb(bbt_inst);
}
BBINT _openb3d_openb3dcore_TSprite_SpriteRenderMode_i(struct openb3d_openb3dcore_TSprite_obj* o,BBINT bbt_Mode){
	((struct openb3d_openb3dcore_TSprite_obj*)bbNullObjectTest((BBObject*)o));
	struct BBDebugScope_2 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"SpriteRenderMode",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TSprite",
				.var_address=&o
			},
			{
				BBDEBUGDECL_LOCAL,
				"Mode",
				"i",
				.var_address=&bbt_Mode
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0xe183483c4d7176e5, 92, 0};
	bbOnDebugEnterStm(&__stmt_0);
	SpriteRenderMode_(openb3d_openb3dcore_TEntity_GetInstance_pb_TTEntity((struct openb3d_openb3dcore_TEntity_obj*)((struct openb3d_openb3dcore_TEntity_obj*)bbObjectDowncast((BBOBJECT)o,(BBClass*)&openb3d_openb3dcore_TEntity))),bbt_Mode);
	bbOnDebugLeaveScope();
	return 0;
}
struct openb3d_openb3dcore_TSprite_obj* openb3d_openb3dcore_TSprite_CreateSprite_TTSprite_TTEntity(struct openb3d_openb3dcore_TEntity_obj* bbt_parent){
	BBBYTE* bbt_inst=0;
	struct BBDebugScope_2 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"CreateSprite",
		{
			{
				BBDEBUGDECL_LOCAL,
				"parent",
				":TEntity",
				.var_address=&bbt_parent
			},
			{
				BBDEBUGDECL_LOCAL,
				"inst",
				"*b",
				.var_address=&bbt_inst
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0xe183483c4d7176e5, 116, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbt_inst=CreateSprite_(openb3d_openb3dcore_TEntity_GetInstance_pb_TTEntity((struct openb3d_openb3dcore_TEntity_obj*)bbt_parent));
	struct BBDebugStm __stmt_1 = {0xe183483c4d7176e5, 117, 0};
	bbOnDebugEnterStm(&__stmt_1);
	bbOnDebugLeaveScope();
	return (struct openb3d_openb3dcore_TSprite_obj*)openb3d_openb3dcore_TSprite_CreateObject_TTSprite_pb(bbt_inst);
}
struct openb3d_openb3dcore_TSprite_obj* openb3d_openb3dcore_TSprite_LoadSprite_TTSprite_SiTTEntity(BBSTRING bbt_tex_file,BBINT bbt_tex_flag,struct openb3d_openb3dcore_TEntity_obj* bbt_parent){
	BBBYTE* bbt_cString=0;
	BBBYTE* bbt_inst=0;
	struct openb3d_openb3dcore_TSprite_obj* bbt_sprite=(struct openb3d_openb3dcore_TSprite_obj*)((struct openb3d_openb3dcore_TSprite_obj*)&bbNullObject);
	struct BBDebugScope_6 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"LoadSprite",
		{
			{
				BBDEBUGDECL_LOCAL,
				"tex_file",
				"$",
				.var_address=&bbt_tex_file
			},
			{
				BBDEBUGDECL_LOCAL,
				"tex_flag",
				"i",
				.var_address=&bbt_tex_flag
			},
			{
				BBDEBUGDECL_LOCAL,
				"parent",
				":TEntity",
				.var_address=&bbt_parent
			},
			{
				BBDEBUGDECL_LOCAL,
				"cString",
				"*b",
				.var_address=&bbt_cString
			},
			{
				BBDEBUGDECL_LOCAL,
				"inst",
				"*b",
				.var_address=&bbt_inst
			},
			{
				BBDEBUGDECL_LOCAL,
				"sprite",
				":TSprite",
				.var_address=&bbt_sprite
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0xe183483c4d7176e5, 123, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbt_cString=bbStringToCString((BBSTRING)bbt_tex_file);
	struct BBDebugStm __stmt_1 = {0xe183483c4d7176e5, 124, 0};
	bbOnDebugEnterStm(&__stmt_1);
	bbt_inst=LoadSprite_(bbt_cString,bbt_tex_flag,openb3d_openb3dcore_TEntity_GetInstance_pb_TTEntity((struct openb3d_openb3dcore_TEntity_obj*)bbt_parent));
	struct BBDebugStm __stmt_2 = {0xe183483c4d7176e5, 125, 0};
	bbOnDebugEnterStm(&__stmt_2);
	bbt_sprite=(struct openb3d_openb3dcore_TSprite_obj*)openb3d_openb3dcore_TSprite_CreateObject_TTSprite_pb(bbt_inst);
	struct BBDebugStm __stmt_3 = {0xe183483c4d7176e5, 126, 0};
	bbOnDebugEnterStm(&__stmt_3);
	bbMemFree((void*)bbt_cString);
	struct BBDebugStm __stmt_4 = {0xe183483c4d7176e5, 127, 0};
	bbOnDebugEnterStm(&__stmt_4);
	bbOnDebugLeaveScope();
	return (struct openb3d_openb3dcore_TSprite_obj*)bbt_sprite;
}
BBINT _openb3d_openb3dcore_TSprite_RotateSprite_f(struct openb3d_openb3dcore_TSprite_obj* o,BBFLOAT bbt_ang){
	((struct openb3d_openb3dcore_TSprite_obj*)bbNullObjectTest((BBObject*)o));
	struct BBDebugScope_2 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"RotateSprite",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TSprite",
				.var_address=&o
			},
			{
				BBDEBUGDECL_LOCAL,
				"ang",
				"f",
				.var_address=&bbt_ang
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0xe183483c4d7176e5, 133, 0};
	bbOnDebugEnterStm(&__stmt_0);
	RotateSprite_(openb3d_openb3dcore_TEntity_GetInstance_pb_TTEntity((struct openb3d_openb3dcore_TEntity_obj*)((struct openb3d_openb3dcore_TEntity_obj*)bbObjectDowncast((BBOBJECT)o,(BBClass*)&openb3d_openb3dcore_TEntity))),bbt_ang);
	bbOnDebugLeaveScope();
	return 0;
}
BBINT _openb3d_openb3dcore_TSprite_ScaleSprite_ff(struct openb3d_openb3dcore_TSprite_obj* o,BBFLOAT bbt_s_x,BBFLOAT bbt_s_y){
	((struct openb3d_openb3dcore_TSprite_obj*)bbNullObjectTest((BBObject*)o));
	struct BBDebugScope_3 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"ScaleSprite",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TSprite",
				.var_address=&o
			},
			{
				BBDEBUGDECL_LOCAL,
				"s_x",
				"f",
				.var_address=&bbt_s_x
			},
			{
				BBDEBUGDECL_LOCAL,
				"s_y",
				"f",
				.var_address=&bbt_s_y
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0xe183483c4d7176e5, 139, 0};
	bbOnDebugEnterStm(&__stmt_0);
	ScaleSprite_(openb3d_openb3dcore_TEntity_GetInstance_pb_TTEntity((struct openb3d_openb3dcore_TEntity_obj*)((struct openb3d_openb3dcore_TEntity_obj*)bbObjectDowncast((BBOBJECT)o,(BBClass*)&openb3d_openb3dcore_TEntity))),bbt_s_x,bbt_s_y);
	bbOnDebugLeaveScope();
	return 0;
}
BBINT _openb3d_openb3dcore_TSprite_HandleSprite_ff(struct openb3d_openb3dcore_TSprite_obj* o,BBFLOAT bbt_h_x,BBFLOAT bbt_h_y){
	((struct openb3d_openb3dcore_TSprite_obj*)bbNullObjectTest((BBObject*)o));
	struct BBDebugScope_3 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"HandleSprite",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TSprite",
				.var_address=&o
			},
			{
				BBDEBUGDECL_LOCAL,
				"h_x",
				"f",
				.var_address=&bbt_h_x
			},
			{
				BBDEBUGDECL_LOCAL,
				"h_y",
				"f",
				.var_address=&bbt_h_y
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0xe183483c4d7176e5, 145, 0};
	bbOnDebugEnterStm(&__stmt_0);
	HandleSprite_(openb3d_openb3dcore_TEntity_GetInstance_pb_TTEntity((struct openb3d_openb3dcore_TEntity_obj*)((struct openb3d_openb3dcore_TEntity_obj*)bbObjectDowncast((BBOBJECT)o,(BBClass*)&openb3d_openb3dcore_TEntity))),bbt_h_x,bbt_h_y);
	bbOnDebugLeaveScope();
	return 0;
}
BBINT _openb3d_openb3dcore_TSprite_SpriteViewMode_i(struct openb3d_openb3dcore_TSprite_obj* o,BBINT bbt_Mode){
	((struct openb3d_openb3dcore_TSprite_obj*)bbNullObjectTest((BBObject*)o));
	struct BBDebugScope_2 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"SpriteViewMode",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TSprite",
				.var_address=&o
			},
			{
				BBDEBUGDECL_LOCAL,
				"Mode",
				"i",
				.var_address=&bbt_Mode
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0xe183483c4d7176e5, 151, 0};
	bbOnDebugEnterStm(&__stmt_0);
	SpriteViewMode_(openb3d_openb3dcore_TEntity_GetInstance_pb_TTEntity((struct openb3d_openb3dcore_TEntity_obj*)((struct openb3d_openb3dcore_TEntity_obj*)bbObjectDowncast((BBOBJECT)o,(BBClass*)&openb3d_openb3dcore_TEntity))),bbt_Mode);
	bbOnDebugLeaveScope();
	return 0;
}
struct openb3d_openb3dcore_TSprite_obj* _openb3d_openb3dcore_TSprite_CopyEntity_TTEntity(struct openb3d_openb3dcore_TSprite_obj* o,struct openb3d_openb3dcore_TEntity_obj* bbt_parent){
	((struct openb3d_openb3dcore_TSprite_obj*)bbNullObjectTest((BBObject*)o));
	BBBYTE* bbt_inst=0;
	struct openb3d_openb3dcore_TSprite_obj* bbt_sprite=(struct openb3d_openb3dcore_TSprite_obj*)((struct openb3d_openb3dcore_TSprite_obj*)&bbNullObject);
	struct BBDebugScope_4 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"CopyEntity",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TSprite",
				.var_address=&o
			},
			{
				BBDEBUGDECL_LOCAL,
				"parent",
				":TEntity",
				.var_address=&bbt_parent
			},
			{
				BBDEBUGDECL_LOCAL,
				"inst",
				"*b",
				.var_address=&bbt_inst
			},
			{
				BBDEBUGDECL_LOCAL,
				"sprite",
				":TSprite",
				.var_address=&bbt_sprite
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0xe183483c4d7176e5, 159, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbt_inst=CopyEntity_(openb3d_openb3dcore_TEntity_GetInstance_pb_TTEntity((struct openb3d_openb3dcore_TEntity_obj*)((struct openb3d_openb3dcore_TEntity_obj*)bbObjectDowncast((BBOBJECT)o,(BBClass*)&openb3d_openb3dcore_TEntity))),openb3d_openb3dcore_TEntity_GetInstance_pb_TTEntity((struct openb3d_openb3dcore_TEntity_obj*)bbt_parent));
	struct BBDebugStm __stmt_1 = {0xe183483c4d7176e5, 160, 0};
	bbOnDebugEnterStm(&__stmt_1);
	bbt_sprite=(struct openb3d_openb3dcore_TSprite_obj*)o->clas->f_CreateObject_TTSprite_pb(bbt_inst);
	struct BBDebugStm __stmt_2 = {0xe183483c4d7176e5, 161, 0};
	bbOnDebugEnterStm(&__stmt_2);
	if(((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tentity_pick_mode [0]!=0){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0xe183483c4d7176e5, 161, 0};
		bbOnDebugEnterStm(&__stmt_0);
		openb3d_openb3dcore_TPick_AddList__i_TTList((struct brl_linkedlist_TList_obj*)openb3d_openb3dcore_TPick_ent_list);
		bbOnDebugLeaveScope();
	}
	struct BBDebugStm __stmt_3 = {0xe183483c4d7176e5, 162, 0};
	bbOnDebugEnterStm(&__stmt_3);
	bbOnDebugLeaveScope();
	return (struct openb3d_openb3dcore_TSprite_obj*)bbt_sprite;
}
BBINT _openb3d_openb3dcore_TSprite_SpriteTexCoords_iiiiiii(struct openb3d_openb3dcore_TSprite_obj* o,BBINT bbt_cell_x,BBINT bbt_cell_y,BBINT bbt_cell_w,BBINT bbt_cell_h,BBINT bbt_tex_w,BBINT bbt_tex_h,BBINT bbt_uv_set){
	((struct openb3d_openb3dcore_TSprite_obj*)bbNullObjectTest((BBObject*)o));
	struct BBDebugScope_8 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"SpriteTexCoords",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TSprite",
				.var_address=&o
			},
			{
				BBDEBUGDECL_LOCAL,
				"cell_x",
				"i",
				.var_address=&bbt_cell_x
			},
			{
				BBDEBUGDECL_LOCAL,
				"cell_y",
				"i",
				.var_address=&bbt_cell_y
			},
			{
				BBDEBUGDECL_LOCAL,
				"cell_w",
				"i",
				.var_address=&bbt_cell_w
			},
			{
				BBDEBUGDECL_LOCAL,
				"cell_h",
				"i",
				.var_address=&bbt_cell_h
			},
			{
				BBDEBUGDECL_LOCAL,
				"tex_w",
				"i",
				.var_address=&bbt_tex_w
			},
			{
				BBDEBUGDECL_LOCAL,
				"tex_h",
				"i",
				.var_address=&bbt_tex_h
			},
			{
				BBDEBUGDECL_LOCAL,
				"uv_set",
				"i",
				.var_address=&bbt_uv_set
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0xe183483c4d7176e5, 169, 0};
	bbOnDebugEnterStm(&__stmt_0);
	SpriteTexCoords_(openb3d_openb3dcore_TEntity_GetInstance_pb_TTEntity((struct openb3d_openb3dcore_TEntity_obj*)((struct openb3d_openb3dcore_TEntity_obj*)bbObjectDowncast((BBOBJECT)o,(BBClass*)&openb3d_openb3dcore_TEntity))),bbt_cell_x,bbt_cell_y,bbt_cell_w,bbt_cell_h,bbt_tex_w,bbt_tex_h,bbt_uv_set);
	bbOnDebugLeaveScope();
	return 0;
}
BBINT _openb3d_openb3dcore_TSprite_SpriteVertexColor_ifff(struct openb3d_openb3dcore_TSprite_obj* o,BBINT bbt_v,BBFLOAT bbt_r,BBFLOAT bbt_g,BBFLOAT bbt_b){
	((struct openb3d_openb3dcore_TSprite_obj*)bbNullObjectTest((BBObject*)o));
	struct BBDebugScope_5 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"SpriteVertexColor",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TSprite",
				.var_address=&o
			},
			{
				BBDEBUGDECL_LOCAL,
				"v",
				"i",
				.var_address=&bbt_v
			},
			{
				BBDEBUGDECL_LOCAL,
				"r",
				"f",
				.var_address=&bbt_r
			},
			{
				BBDEBUGDECL_LOCAL,
				"g",
				"f",
				.var_address=&bbt_g
			},
			{
				BBDEBUGDECL_LOCAL,
				"b",
				"f",
				.var_address=&bbt_b
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0xe183483c4d7176e5, 176, 0};
	bbOnDebugEnterStm(&__stmt_0);
	SpriteVertexColor_(openb3d_openb3dcore_TEntity_GetInstance_pb_TTEntity((struct openb3d_openb3dcore_TEntity_obj*)((struct openb3d_openb3dcore_TEntity_obj*)bbObjectDowncast((BBOBJECT)o,(BBClass*)&openb3d_openb3dcore_TEntity))),bbt_v,bbt_r,bbt_g,bbt_b);
	bbOnDebugLeaveScope();
	return 0;
}
struct BBDebugScope_23 openb3d_openb3dcore_TSprite_scope ={
	BBDEBUGSCOPE_USERTYPE,
	"TSprite",
	{
		{
			BBDEBUGDECL_FIELD,
			"angle",
			"*f",
			.field_offset=offsetof(struct openb3d_openb3dcore_TSprite_obj,_openb3d_openb3dcore_tsprite_angle)
		},
		{
			BBDEBUGDECL_FIELD,
			"scale_x",
			"*f",
			.field_offset=offsetof(struct openb3d_openb3dcore_TSprite_obj,_openb3d_openb3dcore_tsprite_scale_x)
		},
		{
			BBDEBUGDECL_FIELD,
			"scale_y",
			"*f",
			.field_offset=offsetof(struct openb3d_openb3dcore_TSprite_obj,_openb3d_openb3dcore_tsprite_scale_y)
		},
		{
			BBDEBUGDECL_FIELD,
			"handle_x",
			"*f",
			.field_offset=offsetof(struct openb3d_openb3dcore_TSprite_obj,_openb3d_openb3dcore_tsprite_handle_x)
		},
		{
			BBDEBUGDECL_FIELD,
			"handle_y",
			"*f",
			.field_offset=offsetof(struct openb3d_openb3dcore_TSprite_obj,_openb3d_openb3dcore_tsprite_handle_y)
		},
		{
			BBDEBUGDECL_FIELD,
			"view_mode",
			"*i",
			.field_offset=offsetof(struct openb3d_openb3dcore_TSprite_obj,_openb3d_openb3dcore_tsprite_view_mode)
		},
		{
			BBDEBUGDECL_FIELD,
			"render_mode",
			"*i",
			.field_offset=offsetof(struct openb3d_openb3dcore_TSprite_obj,_openb3d_openb3dcore_tsprite_render_mode)
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"New",
			"()i",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_TSprite_New
		},
		{
			BBDEBUGDECL_TYPEFUNCTION,
			"CreateObject",
			"(*b):TSprite",
			.func_ptr=(BBFuncPtr)&openb3d_openb3dcore_TSprite_CreateObject_TTSprite_pb
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"InitFields",
			"()i",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_TSprite_InitFields
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"DebugFields",
			"(i,i)i",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_TSprite_DebugFields_ii
		},
		{
			BBDEBUGDECL_TYPEFUNCTION,
			"NewSprite",
			"():TSprite",
			.func_ptr=(BBFuncPtr)&openb3d_openb3dcore_TSprite_NewSprite_TTSprite
		},
		{
			BBDEBUGDECL_TYPEFUNCTION,
			"Create",
			"():TSprite",
			.func_ptr=(BBFuncPtr)&openb3d_openb3dcore_TSprite_Create_TTSprite
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"SpriteRenderMode",
			"(i)i",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_TSprite_SpriteRenderMode_i
		},
		{
			BBDEBUGDECL_TYPEFUNCTION,
			"CreateSprite",
			"(:TEntity):TSprite",
			.func_ptr=(BBFuncPtr)&openb3d_openb3dcore_TSprite_CreateSprite_TTSprite_TTEntity
		},
		{
			BBDEBUGDECL_TYPEFUNCTION,
			"LoadSprite",
			"($,i,:TEntity):TSprite",
			.func_ptr=(BBFuncPtr)&openb3d_openb3dcore_TSprite_LoadSprite_TTSprite_SiTTEntity
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"RotateSprite",
			"(f)i",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_TSprite_RotateSprite_f
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"ScaleSprite",
			"(f,f)i",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_TSprite_ScaleSprite_ff
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"HandleSprite",
			"(f,f)i",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_TSprite_HandleSprite_ff
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"SpriteViewMode",
			"(i)i",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_TSprite_SpriteViewMode_i
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"CopyEntity",
			"(:TEntity):TSprite",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_TSprite_CopyEntity_TTEntity
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"SpriteTexCoords",
			"(i,i,i,i,i,i,i)i",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_TSprite_SpriteTexCoords_iiiiiii
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"SpriteVertexColor",
			"(i,f,f,f)i",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_TSprite_SpriteVertexColor_ifff
		},
		{
			BBDEBUGDECL_END
		}
	}
};
struct BBClass_openb3d_openb3dcore_TSprite openb3d_openb3dcore_TSprite={
	&openb3d_openb3dcore_TMesh,
	bbObjectFree,
	(BBDebugScope*)&openb3d_openb3dcore_TSprite_scope,
	sizeof(struct openb3d_openb3dcore_TSprite_obj),
	(void (*)(BBOBJECT))_openb3d_openb3dcore_TSprite_New,
	(void (*)(BBOBJECT))_openb3d_openb3dcore_TSprite_Delete,
	bbObjectToString,
	bbObjectCompare,
	bbObjectSendMessage,
	0,
	0,
	offsetof(struct openb3d_openb3dcore_TSprite_obj,_openb3d_openb3dcore_tsprite_render_mode) - offsetof(struct openb3d_openb3dcore_TSprite_obj,_openb3d_openb3dcore_tsprite_angle) + sizeof(BBINT*)
	,0
	,offsetof(struct openb3d_openb3dcore_TSprite_obj,_openb3d_openb3dcore_tsprite_angle)
	,_openb3d_openb3dcore_TSprite_CopyEntity_TTEntity
	,_openb3d_openb3dcore_TMesh_Update
	,openb3d_openb3dcore_TEntity_FreeObject_i_pb
	,openb3d_openb3dcore_TEntity_GetObject_TTEntity_pb
	,openb3d_openb3dcore_TEntity_GetInstance_pb_TTEntity
	,openb3d_openb3dcore_TEntity_InitGlobals_i
	,_openb3d_openb3dcore_TSprite_InitFields
	,_openb3d_openb3dcore_TSprite_DebugFields_ii
	,_openb3d_openb3dcore_TMesh_AddList_TTList
	,openb3d_openb3dcore_TEntity_AddList__i_TTList
	,_openb3d_openb3dcore_TMesh_CopyList_TTList
	,openb3d_openb3dcore_TEntity_CopyList__i_TTList
	,_openb3d_openb3dcore_TEntity_EntityListAdd_TTListTObject
	,_openb3d_openb3dcore_TEntity_EntityListRemove_TTListTObject
	,_openb3d_openb3dcore_TEntity_AddAnimSeq_i
	,_openb3d_openb3dcore_TEntity_SetAnimKey_fiii
	,_openb3d_openb3dcore_TEntity_AlignToVector_fffif
	,_openb3d_openb3dcore_TEntity_GetString_pb
	,_openb3d_openb3dcore_TEntity_SetString_pbS
	,_openb3d_openb3dcore_TMesh_FreeEntity
	,_openb3d_openb3dcore_TEntity_FreeEntityList
	,_openb3d_openb3dcore_TEntity_SetParent_TTEntity
	,_openb3d_openb3dcore_TEntity_PositionEntity_fffi
	,_openb3d_openb3dcore_TEntity_MoveEntity_fff
	,_openb3d_openb3dcore_TEntity_TranslateEntity_fffi
	,_openb3d_openb3dcore_TEntity_ScaleEntity_fffi
	,_openb3d_openb3dcore_TEntity_RotateEntity_fffi
	,_openb3d_openb3dcore_TEntity_TurnEntity_fffi
	,_openb3d_openb3dcore_TEntity_PointEntity_TTEntityf
	,_openb3d_openb3dcore_TEntity_LoadAnimSeq_S
	,_openb3d_openb3dcore_TEntity_ExtractAnimSeq_iii
	,_openb3d_openb3dcore_TEntity_Animate_ifii
	,_openb3d_openb3dcore_TEntity_SetAnimTime_fi
	,_openb3d_openb3dcore_TEntity_AnimSeq
	,_openb3d_openb3dcore_TEntity_AnimLength
	,_openb3d_openb3dcore_TEntity_AnimTime
	,_openb3d_openb3dcore_TEntity_Animating
	,_openb3d_openb3dcore_TEntity_EntityColor_fffi
	,_openb3d_openb3dcore_TEntity_EntityAlpha_f
	,_openb3d_openb3dcore_TEntity_EntityShininess_f
	,_openb3d_openb3dcore_TEntity_EntityTexture_TTTextureii
	,_openb3d_openb3dcore_TEntity_EntityBlend_i
	,_openb3d_openb3dcore_TEntity_EntityFX_i
	,_openb3d_openb3dcore_TEntity_PaintEntity_TTBrush
	,_openb3d_openb3dcore_TEntity_GetEntityBrush
	,_openb3d_openb3dcore_TEntity_EntityOrder_i
	,_openb3d_openb3dcore_TEntity_ShowEntity
	,_openb3d_openb3dcore_TEntity_HideEntity
	,_openb3d_openb3dcore_TEntity_NameEntity_S
	,_openb3d_openb3dcore_TEntity_EntityParent_TTEntityi
	,_openb3d_openb3dcore_TEntity_GetParent
	,_openb3d_openb3dcore_TEntity_EntityX_i
	,_openb3d_openb3dcore_TEntity_EntityY_i
	,_openb3d_openb3dcore_TEntity_EntityZ_i
	,_openb3d_openb3dcore_TEntity_EntityPitch_i
	,_openb3d_openb3dcore_TEntity_EntityYaw_i
	,_openb3d_openb3dcore_TEntity_EntityRoll_i
	,_openb3d_openb3dcore_TEntity_EntityClass
	,_openb3d_openb3dcore_TEntity_EntityName
	,_openb3d_openb3dcore_TEntity_CountChildren
	,_openb3d_openb3dcore_TEntity_GetChild_i
	,_openb3d_openb3dcore_TEntity_FindChild_S
	,_openb3d_openb3dcore_TEntity_EntityPick_f
	,_openb3d_openb3dcore_TEntity_LinePick_fffffff
	,_openb3d_openb3dcore_TEntity_EntityVisible_TTEntityTTEntity
	,_openb3d_openb3dcore_TEntity_EntityDistance_TTEntity
	,_openb3d_openb3dcore_TEntity_DeltaYaw_TTEntity
	,_openb3d_openb3dcore_TEntity_DeltaPitch_TTEntity
	,openb3d_openb3dcore_TEntity_TFormPoint_i_fffTTEntityTTEntity
	,openb3d_openb3dcore_TEntity_TFormVector_i_fffTTEntityTTEntity
	,openb3d_openb3dcore_TEntity_TFormNormal_i_fffTTEntityTTEntity
	,openb3d_openb3dcore_TEntity_TFormedX_f
	,openb3d_openb3dcore_TEntity_TFormedY_f
	,openb3d_openb3dcore_TEntity_TFormedZ_f
	,_openb3d_openb3dcore_TEntity_GetMatElement_ii
	,_openb3d_openb3dcore_TEntity_ResetEntity
	,_openb3d_openb3dcore_TEntity_EntityRadius_ff
	,_openb3d_openb3dcore_TEntity_EntityBox_ffffff
	,_openb3d_openb3dcore_TEntity_EntityType_ii
	,_openb3d_openb3dcore_TEntity_EntityPickMode_ii
	,_openb3d_openb3dcore_TEntity_EntityCollided_i
	,_openb3d_openb3dcore_TEntity_CountCollisions
	,_openb3d_openb3dcore_TEntity_CollisionX_i
	,_openb3d_openb3dcore_TEntity_CollisionY_i
	,_openb3d_openb3dcore_TEntity_CollisionZ_i
	,_openb3d_openb3dcore_TEntity_CollisionNX_i
	,_openb3d_openb3dcore_TEntity_CollisionNY_i
	,_openb3d_openb3dcore_TEntity_CollisionNZ_i
	,_openb3d_openb3dcore_TEntity_CollisionTime_i
	,_openb3d_openb3dcore_TEntity_CollisionEntity_i
	,_openb3d_openb3dcore_TEntity_CollisionSurface_i
	,_openb3d_openb3dcore_TEntity_CollisionTriangle_i
	,_openb3d_openb3dcore_TEntity_GetEntityType
	,_openb3d_openb3dcore_TEntity_MeshCullRadius_f
	,_openb3d_openb3dcore_TEntity_EntityScaleX_i
	,_openb3d_openb3dcore_TEntity_EntityScaleY_i
	,_openb3d_openb3dcore_TEntity_EntityScaleZ_i
	,_openb3d_openb3dcore_TEntity_Hidden
	,openb3d_openb3dcore_TEntity_CountAllChildren_i_TTEntityi
	,_openb3d_openb3dcore_TEntity_GetChildFromAll_iviTTEntity
	,_openb3d_openb3dcore_TEntity_ListParents_TTList
	,_openb3d_openb3dcore_TEntity_UpdateMat_b
	,_openb3d_openb3dcore_TEntity_AddParent_TTEntity
	,openb3d_openb3dcore_TEntity_UpdateChildren_i_TTEntity
	,_openb3d_openb3dcore_TEntity_EntityDistanceSquared_TTEntity
	,_openb3d_openb3dcore_TEntity_MQ_Update
	,_openb3d_openb3dcore_TEntity_MQ_GetInvMatrix_TTMatPtr
	,_openb3d_openb3dcore_TEntity_MQ_GetMatrix_TTMatPtr
	,_openb3d_openb3dcore_TEntity_MQ_GetScaleXYZ_vfvfvf
	,_openb3d_openb3dcore_TEntity_MQ_Turn_ffffi
	,openb3d_openb3dcore_TSprite_CreateObject_TTSprite_pb
	,_openb3d_openb3dcore_TMesh_MeshListAdd_TTListTObject
	,_openb3d_openb3dcore_TMesh_MeshListRemove_TTListTObject
	,_openb3d_openb3dcore_TMesh_MeshArrayResize_ii
	,_openb3d_openb3dcore_TMesh_MeshArraySet_iiTObject
	,openb3d_openb3dcore_TMesh_NewMesh_TTMesh
	,openb3d_openb3dcore_TSprite_Create_TTSprite
	,_openb3d_openb3dcore_TMesh_LightMesh_fffffff
	,_openb3d_openb3dcore_TMesh_CreateAllChildren
	,openb3d_openb3dcore_TMesh_CreatePlane_TTMesh_iTTEntity
	,openb3d_openb3dcore_TMesh_UpdatePlane_i_TTMesh
	,_openb3d_openb3dcore_TMesh_CreateBone_TTEntity
	,openb3d_openb3dcore_TMesh_CreateQuad_TTMesh_TTEntity
	,openb3d_openb3dcore_TMesh_MeshCSG_TTMesh_TTMeshTTMeshi
	,_openb3d_openb3dcore_TMesh_MeshesIntersect_TTMesh
	,_openb3d_openb3dcore_TMesh_RepeatMesh_TTEntity
	,_openb3d_openb3dcore_TMesh_SkinMesh_iiifififif
	,_openb3d_openb3dcore_TMesh_PositionAnimMesh_fff
	,_openb3d_openb3dcore_TMesh_RotateAnimMesh_fff
	,_openb3d_openb3dcore_TMesh_ScaleAnimMesh_fff
	,_openb3d_openb3dcore_TMesh_TransformVertices_TTMatPtr
	,_openb3d_openb3dcore_TMesh_UpdateVerticesNormals_TTSurface
	,openb3d_openb3dcore_TMesh_CreateMesh_TTMesh_TTEntity
	,openb3d_openb3dcore_TMesh_CreateCube_TTMesh_TTEntity
	,openb3d_openb3dcore_TMesh_CreateSphere_TTMesh_iTTEntity
	,openb3d_openb3dcore_TMesh_CreateCylinder_TTMesh_iiTTEntity
	,openb3d_openb3dcore_TMesh_CreateCone_TTMesh_iiTTEntity
	,_openb3d_openb3dcore_TMesh_CopyMesh_TTEntity
	,_openb3d_openb3dcore_TMesh_AddMesh_TTMesh
	,_openb3d_openb3dcore_TMesh_FlipMesh
	,_openb3d_openb3dcore_TMesh_PaintMesh_TTBrush
	,_openb3d_openb3dcore_TMesh_FitMesh_ffffffi
	,_openb3d_openb3dcore_TMesh_ScaleMesh_fff
	,_openb3d_openb3dcore_TMesh_RotateMesh_fff
	,_openb3d_openb3dcore_TMesh_PositionMesh_fff
	,_openb3d_openb3dcore_TMesh_UpdateNormals
	,_openb3d_openb3dcore_TMesh_CreateSurface_TTBrush
	,_openb3d_openb3dcore_TMesh_MeshWidth
	,_openb3d_openb3dcore_TMesh_MeshHeight
	,_openb3d_openb3dcore_TMesh_MeshDepth
	,_openb3d_openb3dcore_TMesh_CountSurfaces
	,_openb3d_openb3dcore_TMesh_GetSurface_i
	,_openb3d_openb3dcore_TMesh_FindSurface_TTBrush
	,_openb3d_openb3dcore_TMesh_CountVertices
	,_openb3d_openb3dcore_TMesh_CountTriangles
	,openb3d_openb3dcore_TMesh_CopyBonesList_i_TTEntity
	,_openb3d_openb3dcore_TMesh_CollapseAnimMesh
	,_openb3d_openb3dcore_TMesh_CollapseChildren_TTEntityTTMesh
	,_openb3d_openb3dcore_TMesh_TransformMesh_TTMatPtr
	,_openb3d_openb3dcore_TMesh_GetBounds
	,_openb3d_openb3dcore_TMesh_Alpha
	,_openb3d_openb3dcore_TMesh_MeshColor_ffff
	,_openb3d_openb3dcore_TMesh_MeshRed_f
	,_openb3d_openb3dcore_TMesh_MeshGreen_f
	,_openb3d_openb3dcore_TMesh_MeshBlue_f
	,_openb3d_openb3dcore_TMesh_MeshAlpha_f
	,_openb3d_openb3dcore_TMesh_TreeCheck
	,_openb3d_openb3dcore_TMesh_Render
	,_openb3d_openb3dcore_TMesh_UpdateShadow
	,openb3d_openb3dcore_TSprite_NewSprite_TTSprite
	,_openb3d_openb3dcore_TSprite_SpriteRenderMode_i
	,openb3d_openb3dcore_TSprite_CreateSprite_TTSprite_TTEntity
	,openb3d_openb3dcore_TSprite_LoadSprite_TTSprite_SiTTEntity
	,_openb3d_openb3dcore_TSprite_RotateSprite_f
	,_openb3d_openb3dcore_TSprite_ScaleSprite_ff
	,_openb3d_openb3dcore_TSprite_HandleSprite_ff
	,_openb3d_openb3dcore_TSprite_SpriteViewMode_i
	,_openb3d_openb3dcore_TSprite_SpriteTexCoords_iiiiiii
	,_openb3d_openb3dcore_TSprite_SpriteVertexColor_ifff
};

void _openb3d_openb3dcore_TBone_New(struct openb3d_openb3dcore_TBone_obj* o) {
	_openb3d_openb3dcore_TEntity_New((struct openb3d_openb3dcore_TEntity_obj*)o);
	o->clas = &openb3d_openb3dcore_TBone;
	((struct openb3d_openb3dcore_TBone_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tbone_n_px = 0;
	((struct openb3d_openb3dcore_TBone_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tbone_n_py = 0;
	((struct openb3d_openb3dcore_TBone_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tbone_n_pz = 0;
	((struct openb3d_openb3dcore_TBone_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tbone_n_sx = 0;
	((struct openb3d_openb3dcore_TBone_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tbone_n_sy = 0;
	((struct openb3d_openb3dcore_TBone_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tbone_n_sz = 0;
	((struct openb3d_openb3dcore_TBone_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tbone_n_rx = 0;
	((struct openb3d_openb3dcore_TBone_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tbone_n_ry = 0;
	((struct openb3d_openb3dcore_TBone_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tbone_n_rz = 0;
	((struct openb3d_openb3dcore_TBone_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tbone_n_qx = 0;
	((struct openb3d_openb3dcore_TBone_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tbone_n_qy = 0;
	((struct openb3d_openb3dcore_TBone_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tbone_n_qz = 0;
	((struct openb3d_openb3dcore_TBone_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tbone_n_qw = 0;
	((struct openb3d_openb3dcore_TBone_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tbone_keys = (struct openb3d_openb3dcore_TAnimationKeys_obj*)((struct openb3d_openb3dcore_TAnimationKeys_obj*)&bbNullObject);
	((struct openb3d_openb3dcore_TBone_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tbone_mat2 = (struct openb3d_openb3dcore_TMatPtr_obj*)((struct openb3d_openb3dcore_TMatPtr_obj*)&bbNullObject);
	((struct openb3d_openb3dcore_TBone_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tbone_inv_mat = (struct openb3d_openb3dcore_TMatPtr_obj*)((struct openb3d_openb3dcore_TMatPtr_obj*)&bbNullObject);
	((struct openb3d_openb3dcore_TBone_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tbone_tform_mat = (struct openb3d_openb3dcore_TMatPtr_obj*)((struct openb3d_openb3dcore_TMatPtr_obj*)&bbNullObject);
	((struct openb3d_openb3dcore_TBone_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tbone_kx = 0;
	((struct openb3d_openb3dcore_TBone_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tbone_ky = 0;
	((struct openb3d_openb3dcore_TBone_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tbone_kz = 0;
	((struct openb3d_openb3dcore_TBone_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tbone_kqx = 0;
	((struct openb3d_openb3dcore_TBone_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tbone_kqy = 0;
	((struct openb3d_openb3dcore_TBone_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tbone_kqz = 0;
	((struct openb3d_openb3dcore_TBone_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tbone_kqw = 0;
	struct BBDebugScope __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"New",
		{
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x2ca3aa87d9b50d36, 175, 0};
	bbOnDebugEnterStm(&__stmt_0);
	if(openb3d_openb3dcore_TGlobal3D_Log_New!=0){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x2ca3aa87d9b50d36, 176, 0};
		bbOnDebugEnterStm(&__stmt_0);
		brl_blitz_DebugLog((BBString*)&_s308);
		bbOnDebugLeaveScope();
	}
	bbOnDebugLeaveScope();
}
void _openb3d_openb3dcore_TBone_Delete(struct openb3d_openb3dcore_TBone_obj* o) {
	struct BBDebugScope_1 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"Delete",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TBone",
				.var_address=&o
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x2ca3aa87d9b50d36, 183, 0};
	bbOnDebugEnterStm(&__stmt_0);
	if(openb3d_openb3dcore_TGlobal3D_Log_Del!=0){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x2ca3aa87d9b50d36, 184, 0};
		bbOnDebugEnterStm(&__stmt_0);
		brl_blitz_DebugLog((BBString*)&_s309);
		bbOnDebugLeaveScope();
	}
	bbOnDebugLeaveScope();
	_openb3d_openb3dcore_TEntity_Delete((struct openb3d_openb3dcore_TEntity_obj*)o);
}
struct openb3d_openb3dcore_TBone_obj* openb3d_openb3dcore_TBone_CreateObject_TTBone_pb(BBBYTE* bbt_inst){
	struct openb3d_openb3dcore_TBone_obj* bbt_obj=(struct openb3d_openb3dcore_TBone_obj*)((struct openb3d_openb3dcore_TBone_obj*)&bbNullObject);
	struct BBDebugScope_2 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"CreateObject",
		{
			{
				BBDEBUGDECL_LOCAL,
				"inst",
				"*b",
				.var_address=&bbt_inst
			},
			{
				BBDEBUGDECL_LOCAL,
				"obj",
				":TBone",
				.var_address=&bbt_obj
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x2ca3aa87d9b50d36, 25, 0};
	bbOnDebugEnterStm(&__stmt_0);
	if(bbt_inst==0){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x2ca3aa87d9b50d36, 25, 0};
		bbOnDebugEnterStm(&__stmt_0);
		bbOnDebugLeaveScope();
		bbOnDebugLeaveScope();
		return (struct openb3d_openb3dcore_TBone_obj*)&bbNullObject;
	}
	struct BBDebugStm __stmt_1 = {0x2ca3aa87d9b50d36, 26, 0};
	bbOnDebugEnterStm(&__stmt_1);
	bbt_obj=(struct openb3d_openb3dcore_TBone_obj*)(struct openb3d_openb3dcore_TBone_obj*)bbObjectNew((BBClass *)&openb3d_openb3dcore_TBone);
	struct BBDebugStm __stmt_2 = {0x2ca3aa87d9b50d36, 28, 0};
	bbOnDebugEnterStm(&__stmt_2);
	((struct brl_map_ptrmap_TPtrMap_obj*)bbNullObjectTest((BBObject*)openb3d_openb3dcore_TEntity_ent_map))->clas->m_Insert_pbTObject((struct brl_map_ptrmap_TPtrMap_obj*)openb3d_openb3dcore_TEntity_ent_map,bbt_inst,(BBOBJECT)bbt_obj);
	struct BBDebugStm __stmt_3 = {0x2ca3aa87d9b50d36, 32, 0};
	bbOnDebugEnterStm(&__stmt_3);
	((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)bbt_obj))->_openb3d_openb3dcore_tentity_instance =bbt_inst;
	struct BBDebugStm __stmt_4 = {0x2ca3aa87d9b50d36, 33, 0};
	bbOnDebugEnterStm(&__stmt_4);
	((struct openb3d_openb3dcore_TBone_obj*)bbNullObjectTest((BBObject*)bbt_obj))->clas->m_InitFields((struct openb3d_openb3dcore_TBone_obj*)bbt_obj);
	struct BBDebugStm __stmt_5 = {0x2ca3aa87d9b50d36, 34, 0};
	bbOnDebugEnterStm(&__stmt_5);
	bbOnDebugLeaveScope();
	return (struct openb3d_openb3dcore_TBone_obj*)bbt_obj;
}
BBINT _openb3d_openb3dcore_TBone_InitFields(struct openb3d_openb3dcore_TBone_obj* o){
	((struct openb3d_openb3dcore_TBone_obj*)bbNullObjectTest((BBObject*)o));
	BBBYTE* bbt_inst=0;
	struct BBDebugScope_2 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"InitFields",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TBone",
				.var_address=&o
			},
			{
				BBDEBUGDECL_LOCAL,
				"inst",
				"*b",
				.var_address=&bbt_inst
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x2ca3aa87d9b50d36, 40, 0};
	bbOnDebugEnterStm(&__stmt_0);
	(&openb3d_openb3dcore_TBone)->super->m_InitFields((struct openb3d_openb3dcore_TEntity_obj*)o);
	struct BBDebugStm __stmt_1 = {0x2ca3aa87d9b50d36, 43, 0};
	bbOnDebugEnterStm(&__stmt_1);
	((struct openb3d_openb3dcore_TBone_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tbone_n_px =BoneFloat_(openb3d_openb3dcore_TEntity_GetInstance_pb_TTEntity((struct openb3d_openb3dcore_TEntity_obj*)((struct openb3d_openb3dcore_TEntity_obj*)bbObjectDowncast((BBOBJECT)o,(BBClass*)&openb3d_openb3dcore_TEntity))),1);
	struct BBDebugStm __stmt_2 = {0x2ca3aa87d9b50d36, 44, 0};
	bbOnDebugEnterStm(&__stmt_2);
	((struct openb3d_openb3dcore_TBone_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tbone_n_py =BoneFloat_(openb3d_openb3dcore_TEntity_GetInstance_pb_TTEntity((struct openb3d_openb3dcore_TEntity_obj*)((struct openb3d_openb3dcore_TEntity_obj*)bbObjectDowncast((BBOBJECT)o,(BBClass*)&openb3d_openb3dcore_TEntity))),2);
	struct BBDebugStm __stmt_3 = {0x2ca3aa87d9b50d36, 45, 0};
	bbOnDebugEnterStm(&__stmt_3);
	((struct openb3d_openb3dcore_TBone_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tbone_n_pz =BoneFloat_(openb3d_openb3dcore_TEntity_GetInstance_pb_TTEntity((struct openb3d_openb3dcore_TEntity_obj*)((struct openb3d_openb3dcore_TEntity_obj*)bbObjectDowncast((BBOBJECT)o,(BBClass*)&openb3d_openb3dcore_TEntity))),3);
	struct BBDebugStm __stmt_4 = {0x2ca3aa87d9b50d36, 46, 0};
	bbOnDebugEnterStm(&__stmt_4);
	((struct openb3d_openb3dcore_TBone_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tbone_n_sx =BoneFloat_(openb3d_openb3dcore_TEntity_GetInstance_pb_TTEntity((struct openb3d_openb3dcore_TEntity_obj*)((struct openb3d_openb3dcore_TEntity_obj*)bbObjectDowncast((BBOBJECT)o,(BBClass*)&openb3d_openb3dcore_TEntity))),4);
	struct BBDebugStm __stmt_5 = {0x2ca3aa87d9b50d36, 47, 0};
	bbOnDebugEnterStm(&__stmt_5);
	((struct openb3d_openb3dcore_TBone_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tbone_n_sy =BoneFloat_(openb3d_openb3dcore_TEntity_GetInstance_pb_TTEntity((struct openb3d_openb3dcore_TEntity_obj*)((struct openb3d_openb3dcore_TEntity_obj*)bbObjectDowncast((BBOBJECT)o,(BBClass*)&openb3d_openb3dcore_TEntity))),5);
	struct BBDebugStm __stmt_6 = {0x2ca3aa87d9b50d36, 48, 0};
	bbOnDebugEnterStm(&__stmt_6);
	((struct openb3d_openb3dcore_TBone_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tbone_n_sz =BoneFloat_(openb3d_openb3dcore_TEntity_GetInstance_pb_TTEntity((struct openb3d_openb3dcore_TEntity_obj*)((struct openb3d_openb3dcore_TEntity_obj*)bbObjectDowncast((BBOBJECT)o,(BBClass*)&openb3d_openb3dcore_TEntity))),6);
	struct BBDebugStm __stmt_7 = {0x2ca3aa87d9b50d36, 49, 0};
	bbOnDebugEnterStm(&__stmt_7);
	((struct openb3d_openb3dcore_TBone_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tbone_n_rx =BoneFloat_(openb3d_openb3dcore_TEntity_GetInstance_pb_TTEntity((struct openb3d_openb3dcore_TEntity_obj*)((struct openb3d_openb3dcore_TEntity_obj*)bbObjectDowncast((BBOBJECT)o,(BBClass*)&openb3d_openb3dcore_TEntity))),7);
	struct BBDebugStm __stmt_8 = {0x2ca3aa87d9b50d36, 50, 0};
	bbOnDebugEnterStm(&__stmt_8);
	((struct openb3d_openb3dcore_TBone_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tbone_n_ry =BoneFloat_(openb3d_openb3dcore_TEntity_GetInstance_pb_TTEntity((struct openb3d_openb3dcore_TEntity_obj*)((struct openb3d_openb3dcore_TEntity_obj*)bbObjectDowncast((BBOBJECT)o,(BBClass*)&openb3d_openb3dcore_TEntity))),8);
	struct BBDebugStm __stmt_9 = {0x2ca3aa87d9b50d36, 51, 0};
	bbOnDebugEnterStm(&__stmt_9);
	((struct openb3d_openb3dcore_TBone_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tbone_n_rz =BoneFloat_(openb3d_openb3dcore_TEntity_GetInstance_pb_TTEntity((struct openb3d_openb3dcore_TEntity_obj*)((struct openb3d_openb3dcore_TEntity_obj*)bbObjectDowncast((BBOBJECT)o,(BBClass*)&openb3d_openb3dcore_TEntity))),9);
	struct BBDebugStm __stmt_10 = {0x2ca3aa87d9b50d36, 52, 0};
	bbOnDebugEnterStm(&__stmt_10);
	((struct openb3d_openb3dcore_TBone_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tbone_n_qx =BoneFloat_(openb3d_openb3dcore_TEntity_GetInstance_pb_TTEntity((struct openb3d_openb3dcore_TEntity_obj*)((struct openb3d_openb3dcore_TEntity_obj*)bbObjectDowncast((BBOBJECT)o,(BBClass*)&openb3d_openb3dcore_TEntity))),11);
	struct BBDebugStm __stmt_11 = {0x2ca3aa87d9b50d36, 53, 0};
	bbOnDebugEnterStm(&__stmt_11);
	((struct openb3d_openb3dcore_TBone_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tbone_n_qy =BoneFloat_(openb3d_openb3dcore_TEntity_GetInstance_pb_TTEntity((struct openb3d_openb3dcore_TEntity_obj*)((struct openb3d_openb3dcore_TEntity_obj*)bbObjectDowncast((BBOBJECT)o,(BBClass*)&openb3d_openb3dcore_TEntity))),12);
	struct BBDebugStm __stmt_12 = {0x2ca3aa87d9b50d36, 54, 0};
	bbOnDebugEnterStm(&__stmt_12);
	((struct openb3d_openb3dcore_TBone_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tbone_n_qz =BoneFloat_(openb3d_openb3dcore_TEntity_GetInstance_pb_TTEntity((struct openb3d_openb3dcore_TEntity_obj*)((struct openb3d_openb3dcore_TEntity_obj*)bbObjectDowncast((BBOBJECT)o,(BBClass*)&openb3d_openb3dcore_TEntity))),13);
	struct BBDebugStm __stmt_13 = {0x2ca3aa87d9b50d36, 55, 0};
	bbOnDebugEnterStm(&__stmt_13);
	((struct openb3d_openb3dcore_TBone_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tbone_n_qw =BoneFloat_(openb3d_openb3dcore_TEntity_GetInstance_pb_TTEntity((struct openb3d_openb3dcore_TEntity_obj*)((struct openb3d_openb3dcore_TEntity_obj*)bbObjectDowncast((BBOBJECT)o,(BBClass*)&openb3d_openb3dcore_TEntity))),10);
	struct BBDebugStm __stmt_14 = {0x2ca3aa87d9b50d36, 56, 0};
	bbOnDebugEnterStm(&__stmt_14);
	((struct openb3d_openb3dcore_TBone_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tbone_kx =BoneFloat_(openb3d_openb3dcore_TEntity_GetInstance_pb_TTEntity((struct openb3d_openb3dcore_TEntity_obj*)((struct openb3d_openb3dcore_TEntity_obj*)bbObjectDowncast((BBOBJECT)o,(BBClass*)&openb3d_openb3dcore_TEntity))),18);
	struct BBDebugStm __stmt_15 = {0x2ca3aa87d9b50d36, 57, 0};
	bbOnDebugEnterStm(&__stmt_15);
	((struct openb3d_openb3dcore_TBone_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tbone_ky =BoneFloat_(openb3d_openb3dcore_TEntity_GetInstance_pb_TTEntity((struct openb3d_openb3dcore_TEntity_obj*)((struct openb3d_openb3dcore_TEntity_obj*)bbObjectDowncast((BBOBJECT)o,(BBClass*)&openb3d_openb3dcore_TEntity))),19);
	struct BBDebugStm __stmt_16 = {0x2ca3aa87d9b50d36, 58, 0};
	bbOnDebugEnterStm(&__stmt_16);
	((struct openb3d_openb3dcore_TBone_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tbone_kz =BoneFloat_(openb3d_openb3dcore_TEntity_GetInstance_pb_TTEntity((struct openb3d_openb3dcore_TEntity_obj*)((struct openb3d_openb3dcore_TEntity_obj*)bbObjectDowncast((BBOBJECT)o,(BBClass*)&openb3d_openb3dcore_TEntity))),20);
	struct BBDebugStm __stmt_17 = {0x2ca3aa87d9b50d36, 59, 0};
	bbOnDebugEnterStm(&__stmt_17);
	((struct openb3d_openb3dcore_TBone_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tbone_kqx =BoneFloat_(openb3d_openb3dcore_TEntity_GetInstance_pb_TTEntity((struct openb3d_openb3dcore_TEntity_obj*)((struct openb3d_openb3dcore_TEntity_obj*)bbObjectDowncast((BBOBJECT)o,(BBClass*)&openb3d_openb3dcore_TEntity))),22);
	struct BBDebugStm __stmt_18 = {0x2ca3aa87d9b50d36, 60, 0};
	bbOnDebugEnterStm(&__stmt_18);
	((struct openb3d_openb3dcore_TBone_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tbone_kqy =BoneFloat_(openb3d_openb3dcore_TEntity_GetInstance_pb_TTEntity((struct openb3d_openb3dcore_TEntity_obj*)((struct openb3d_openb3dcore_TEntity_obj*)bbObjectDowncast((BBOBJECT)o,(BBClass*)&openb3d_openb3dcore_TEntity))),23);
	struct BBDebugStm __stmt_19 = {0x2ca3aa87d9b50d36, 61, 0};
	bbOnDebugEnterStm(&__stmt_19);
	((struct openb3d_openb3dcore_TBone_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tbone_kqz =BoneFloat_(openb3d_openb3dcore_TEntity_GetInstance_pb_TTEntity((struct openb3d_openb3dcore_TEntity_obj*)((struct openb3d_openb3dcore_TEntity_obj*)bbObjectDowncast((BBOBJECT)o,(BBClass*)&openb3d_openb3dcore_TEntity))),24);
	struct BBDebugStm __stmt_20 = {0x2ca3aa87d9b50d36, 62, 0};
	bbOnDebugEnterStm(&__stmt_20);
	((struct openb3d_openb3dcore_TBone_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tbone_kqw =BoneFloat_(openb3d_openb3dcore_TEntity_GetInstance_pb_TTEntity((struct openb3d_openb3dcore_TEntity_obj*)((struct openb3d_openb3dcore_TEntity_obj*)bbObjectDowncast((BBOBJECT)o,(BBClass*)&openb3d_openb3dcore_TEntity))),21);
	struct BBDebugStm __stmt_21 = {0x2ca3aa87d9b50d36, 65, 0};
	bbOnDebugEnterStm(&__stmt_21);
	bbt_inst=BoneAnimationKeys_(openb3d_openb3dcore_TEntity_GetInstance_pb_TTEntity((struct openb3d_openb3dcore_TEntity_obj*)((struct openb3d_openb3dcore_TEntity_obj*)bbObjectDowncast((BBOBJECT)o,(BBClass*)&openb3d_openb3dcore_TEntity))),14);
	struct BBDebugStm __stmt_22 = {0x2ca3aa87d9b50d36, 66, 0};
	bbOnDebugEnterStm(&__stmt_22);
	((struct openb3d_openb3dcore_TBone_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tbone_keys =(struct openb3d_openb3dcore_TAnimationKeys_obj*)openb3d_openb3dcore_TAnimationKeys_GetObject_TTAnimationKeys_pb(bbt_inst);
	struct BBDebugStm __stmt_23 = {0x2ca3aa87d9b50d36, 67, 0};
	bbOnDebugEnterStm(&__stmt_23);
	if((((BBOBJECT)((struct openb3d_openb3dcore_TBone_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tbone_keys )==&bbNullObject) && (bbt_inst!=0)){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x2ca3aa87d9b50d36, 67, 0};
		bbOnDebugEnterStm(&__stmt_0);
		((struct openb3d_openb3dcore_TBone_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tbone_keys =(struct openb3d_openb3dcore_TAnimationKeys_obj*)openb3d_openb3dcore_TAnimationKeys_CreateObject_TTAnimationKeys_pb(bbt_inst);
		bbOnDebugLeaveScope();
	}
	struct BBDebugStm __stmt_24 = {0x2ca3aa87d9b50d36, 70, 0};
	bbOnDebugEnterStm(&__stmt_24);
	bbt_inst=BoneMatrix_(openb3d_openb3dcore_TEntity_GetInstance_pb_TTEntity((struct openb3d_openb3dcore_TEntity_obj*)((struct openb3d_openb3dcore_TEntity_obj*)bbObjectDowncast((BBOBJECT)o,(BBClass*)&openb3d_openb3dcore_TEntity))),15);
	struct BBDebugStm __stmt_25 = {0x2ca3aa87d9b50d36, 71, 0};
	bbOnDebugEnterStm(&__stmt_25);
	((struct openb3d_openb3dcore_TBone_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tbone_mat2 =(struct openb3d_openb3dcore_TMatPtr_obj*)openb3d_openb3dcore_TMatPtr_GetObject_TTMatPtr_pb(bbt_inst);
	struct BBDebugStm __stmt_26 = {0x2ca3aa87d9b50d36, 72, 0};
	bbOnDebugEnterStm(&__stmt_26);
	if((((BBOBJECT)((struct openb3d_openb3dcore_TBone_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tbone_mat2 )==&bbNullObject) && (bbt_inst!=0)){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x2ca3aa87d9b50d36, 72, 0};
		bbOnDebugEnterStm(&__stmt_0);
		((struct openb3d_openb3dcore_TBone_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tbone_mat2 =(struct openb3d_openb3dcore_TMatPtr_obj*)openb3d_openb3dcore_TMatPtr_CreateObject_TTMatPtr_pb(bbt_inst);
		bbOnDebugLeaveScope();
	}
	struct BBDebugStm __stmt_27 = {0x2ca3aa87d9b50d36, 73, 0};
	bbOnDebugEnterStm(&__stmt_27);
	bbt_inst=BoneMatrix_(openb3d_openb3dcore_TEntity_GetInstance_pb_TTEntity((struct openb3d_openb3dcore_TEntity_obj*)((struct openb3d_openb3dcore_TEntity_obj*)bbObjectDowncast((BBOBJECT)o,(BBClass*)&openb3d_openb3dcore_TEntity))),16);
	struct BBDebugStm __stmt_28 = {0x2ca3aa87d9b50d36, 74, 0};
	bbOnDebugEnterStm(&__stmt_28);
	((struct openb3d_openb3dcore_TBone_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tbone_inv_mat =(struct openb3d_openb3dcore_TMatPtr_obj*)openb3d_openb3dcore_TMatPtr_GetObject_TTMatPtr_pb(bbt_inst);
	struct BBDebugStm __stmt_29 = {0x2ca3aa87d9b50d36, 75, 0};
	bbOnDebugEnterStm(&__stmt_29);
	if((((BBOBJECT)((struct openb3d_openb3dcore_TBone_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tbone_inv_mat )==&bbNullObject) && (bbt_inst!=0)){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x2ca3aa87d9b50d36, 75, 0};
		bbOnDebugEnterStm(&__stmt_0);
		((struct openb3d_openb3dcore_TBone_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tbone_inv_mat =(struct openb3d_openb3dcore_TMatPtr_obj*)openb3d_openb3dcore_TMatPtr_CreateObject_TTMatPtr_pb(bbt_inst);
		bbOnDebugLeaveScope();
	}
	struct BBDebugStm __stmt_30 = {0x2ca3aa87d9b50d36, 76, 0};
	bbOnDebugEnterStm(&__stmt_30);
	bbt_inst=BoneMatrix_(openb3d_openb3dcore_TEntity_GetInstance_pb_TTEntity((struct openb3d_openb3dcore_TEntity_obj*)((struct openb3d_openb3dcore_TEntity_obj*)bbObjectDowncast((BBOBJECT)o,(BBClass*)&openb3d_openb3dcore_TEntity))),17);
	struct BBDebugStm __stmt_31 = {0x2ca3aa87d9b50d36, 77, 0};
	bbOnDebugEnterStm(&__stmt_31);
	((struct openb3d_openb3dcore_TBone_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tbone_tform_mat =(struct openb3d_openb3dcore_TMatPtr_obj*)openb3d_openb3dcore_TMatPtr_GetObject_TTMatPtr_pb(bbt_inst);
	struct BBDebugStm __stmt_32 = {0x2ca3aa87d9b50d36, 78, 0};
	bbOnDebugEnterStm(&__stmt_32);
	if((((BBOBJECT)((struct openb3d_openb3dcore_TBone_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tbone_tform_mat )==&bbNullObject) && (bbt_inst!=0)){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x2ca3aa87d9b50d36, 78, 0};
		bbOnDebugEnterStm(&__stmt_0);
		((struct openb3d_openb3dcore_TBone_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tbone_tform_mat =(struct openb3d_openb3dcore_TMatPtr_obj*)openb3d_openb3dcore_TMatPtr_CreateObject_TTMatPtr_pb(bbt_inst);
		bbOnDebugLeaveScope();
	}
	bbOnDebugLeaveScope();
	return 0;
}
BBINT _openb3d_openb3dcore_TBone_DebugFields_ii(struct openb3d_openb3dcore_TBone_obj* o,BBINT bbt_debug_subobjects,BBINT bbt_debug_base_types){
	((struct openb3d_openb3dcore_TBone_obj*)bbNullObjectTest((BBObject*)o));
	BBSTRING bbt_pad=(&bbEmptyString);
	BBINT bbt_loop=0;
	struct BBDebugScope_5 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"DebugFields",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TBone",
				.var_address=&o
			},
			{
				BBDEBUGDECL_LOCAL,
				"debug_subobjects",
				"i",
				.var_address=&bbt_debug_subobjects
			},
			{
				BBDEBUGDECL_LOCAL,
				"debug_base_types",
				"i",
				.var_address=&bbt_debug_base_types
			},
			{
				BBDEBUGDECL_LOCAL,
				"pad",
				"$",
				.var_address=&bbt_pad
			},
			{
				BBDEBUGDECL_LOCAL,
				"loop",
				"i",
				.var_address=&bbt_loop
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x2ca3aa87d9b50d36, 84, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbt_pad=((BBString*)&bbEmptyString);
	struct BBDebugStm __stmt_1 = {0x2ca3aa87d9b50d36, 85, 0};
	bbOnDebugEnterStm(&__stmt_1);
	bbt_loop=bbt_debug_subobjects;
	struct BBDebugStm __stmt_2 = {0x2ca3aa87d9b50d36, 86, 0};
	bbOnDebugEnterStm(&__stmt_2);
	if(bbt_debug_base_types>bbt_debug_subobjects){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x2ca3aa87d9b50d36, 86, 0};
		bbOnDebugEnterStm(&__stmt_0);
		bbt_loop=bbt_debug_base_types;
		bbOnDebugLeaveScope();
	}
	struct BBDebugStm __stmt_3 = {0x2ca3aa87d9b50d36, 87, 0};
	bbOnDebugEnterStm(&__stmt_3);
	{
		BBINT bbt_i=1;
		BBINT bbt_=bbt_loop;
		for(;(bbt_i<bbt_);bbt_i=(bbt_i+1)){
			struct BBDebugScope_1 __scope = {
				BBDEBUGSCOPE_LOCALBLOCK,
				0,
				{
					{
						BBDEBUGDECL_LOCAL,
						"i",
						"i",
						.var_address=&bbt_i
					},
					{
						BBDEBUGDECL_END
					}
				}
			};
			bbOnDebugEnterScope((BBDebugScope *)&__scope);
			struct BBDebugStm __stmt_0 = {0x2ca3aa87d9b50d36, 88, 0};
			bbOnDebugEnterStm(&__stmt_0);
			bbt_pad=bbStringConcat(bbt_pad,((BBString*)&_s0));
			bbOnDebugLeaveScope();
		}
	}
	struct BBDebugStm __stmt_4 = {0x2ca3aa87d9b50d36, 90, 0};
	bbOnDebugEnterStm(&__stmt_4);
	if(bbt_debug_subobjects!=0){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x2ca3aa87d9b50d36, 90, 0};
		bbOnDebugEnterStm(&__stmt_0);
		bbt_debug_subobjects+=1;
		bbOnDebugLeaveScope();
	}
	struct BBDebugStm __stmt_5 = {0x2ca3aa87d9b50d36, 91, 0};
	bbOnDebugEnterStm(&__stmt_5);
	if(bbt_debug_base_types!=0){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x2ca3aa87d9b50d36, 91, 0};
		bbOnDebugEnterStm(&__stmt_0);
		bbt_debug_base_types+=1;
		bbOnDebugLeaveScope();
	}
	struct BBDebugStm __stmt_6 = {0x2ca3aa87d9b50d36, 92, 0};
	bbOnDebugEnterStm(&__stmt_6);
	brl_blitz_DebugLog(bbStringConcat(bbStringConcat(bbt_pad,((BBString*)&_s263)),openb3d_openb3dcore_StringPtr(openb3d_openb3dcore_TEntity_GetInstance_pb_TTEntity((struct openb3d_openb3dcore_TEntity_obj*)((struct openb3d_openb3dcore_TEntity_obj*)bbObjectDowncast((BBOBJECT)o,(BBClass*)&openb3d_openb3dcore_TEntity))))));
	struct BBDebugStm __stmt_7 = {0x2ca3aa87d9b50d36, 95, 0};
	bbOnDebugEnterStm(&__stmt_7);
	if(((struct openb3d_openb3dcore_TBone_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tbone_n_px !=0){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x2ca3aa87d9b50d36, 95, 0};
		bbOnDebugEnterStm(&__stmt_0);
		brl_blitz_DebugLog(bbStringConcat(bbStringConcat(bbt_pad,((BBString*)&_s264)),bbStringFromFloat(((struct openb3d_openb3dcore_TBone_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tbone_n_px [0])));
		bbOnDebugLeaveScope();
	}else{
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x2ca3aa87d9b50d36, 95, 0};
		bbOnDebugEnterStm(&__stmt_0);
		brl_blitz_DebugLog(bbStringConcat(bbt_pad,((BBString*)&_s265)));
		bbOnDebugLeaveScope();
	}
	struct BBDebugStm __stmt_8 = {0x2ca3aa87d9b50d36, 96, 0};
	bbOnDebugEnterStm(&__stmt_8);
	if(((struct openb3d_openb3dcore_TBone_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tbone_n_py !=0){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x2ca3aa87d9b50d36, 96, 0};
		bbOnDebugEnterStm(&__stmt_0);
		brl_blitz_DebugLog(bbStringConcat(bbStringConcat(bbt_pad,((BBString*)&_s266)),bbStringFromFloat(((struct openb3d_openb3dcore_TBone_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tbone_n_py [0])));
		bbOnDebugLeaveScope();
	}else{
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x2ca3aa87d9b50d36, 96, 0};
		bbOnDebugEnterStm(&__stmt_0);
		brl_blitz_DebugLog(bbStringConcat(bbt_pad,((BBString*)&_s267)));
		bbOnDebugLeaveScope();
	}
	struct BBDebugStm __stmt_9 = {0x2ca3aa87d9b50d36, 97, 0};
	bbOnDebugEnterStm(&__stmt_9);
	if(((struct openb3d_openb3dcore_TBone_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tbone_n_pz !=0){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x2ca3aa87d9b50d36, 97, 0};
		bbOnDebugEnterStm(&__stmt_0);
		brl_blitz_DebugLog(bbStringConcat(bbStringConcat(bbt_pad,((BBString*)&_s268)),bbStringFromFloat(((struct openb3d_openb3dcore_TBone_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tbone_n_pz [0])));
		bbOnDebugLeaveScope();
	}else{
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x2ca3aa87d9b50d36, 97, 0};
		bbOnDebugEnterStm(&__stmt_0);
		brl_blitz_DebugLog(bbStringConcat(bbt_pad,((BBString*)&_s269)));
		bbOnDebugLeaveScope();
	}
	struct BBDebugStm __stmt_10 = {0x2ca3aa87d9b50d36, 98, 0};
	bbOnDebugEnterStm(&__stmt_10);
	if(((struct openb3d_openb3dcore_TBone_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tbone_n_sx !=0){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x2ca3aa87d9b50d36, 98, 0};
		bbOnDebugEnterStm(&__stmt_0);
		brl_blitz_DebugLog(bbStringConcat(bbStringConcat(bbt_pad,((BBString*)&_s270)),bbStringFromFloat(((struct openb3d_openb3dcore_TBone_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tbone_n_sx [0])));
		bbOnDebugLeaveScope();
	}else{
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x2ca3aa87d9b50d36, 98, 0};
		bbOnDebugEnterStm(&__stmt_0);
		brl_blitz_DebugLog(bbStringConcat(bbt_pad,((BBString*)&_s271)));
		bbOnDebugLeaveScope();
	}
	struct BBDebugStm __stmt_11 = {0x2ca3aa87d9b50d36, 99, 0};
	bbOnDebugEnterStm(&__stmt_11);
	if(((struct openb3d_openb3dcore_TBone_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tbone_n_sy !=0){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x2ca3aa87d9b50d36, 99, 0};
		bbOnDebugEnterStm(&__stmt_0);
		brl_blitz_DebugLog(bbStringConcat(bbStringConcat(bbt_pad,((BBString*)&_s272)),bbStringFromFloat(((struct openb3d_openb3dcore_TBone_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tbone_n_sy [0])));
		bbOnDebugLeaveScope();
	}else{
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x2ca3aa87d9b50d36, 99, 0};
		bbOnDebugEnterStm(&__stmt_0);
		brl_blitz_DebugLog(bbStringConcat(bbt_pad,((BBString*)&_s273)));
		bbOnDebugLeaveScope();
	}
	struct BBDebugStm __stmt_12 = {0x2ca3aa87d9b50d36, 100, 0};
	bbOnDebugEnterStm(&__stmt_12);
	if(((struct openb3d_openb3dcore_TBone_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tbone_n_sz !=0){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x2ca3aa87d9b50d36, 100, 0};
		bbOnDebugEnterStm(&__stmt_0);
		brl_blitz_DebugLog(bbStringConcat(bbStringConcat(bbt_pad,((BBString*)&_s274)),bbStringFromFloat(((struct openb3d_openb3dcore_TBone_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tbone_n_sz [0])));
		bbOnDebugLeaveScope();
	}else{
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x2ca3aa87d9b50d36, 100, 0};
		bbOnDebugEnterStm(&__stmt_0);
		brl_blitz_DebugLog(bbStringConcat(bbt_pad,((BBString*)&_s275)));
		bbOnDebugLeaveScope();
	}
	struct BBDebugStm __stmt_13 = {0x2ca3aa87d9b50d36, 101, 0};
	bbOnDebugEnterStm(&__stmt_13);
	if(((struct openb3d_openb3dcore_TBone_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tbone_n_rx !=0){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x2ca3aa87d9b50d36, 101, 0};
		bbOnDebugEnterStm(&__stmt_0);
		brl_blitz_DebugLog(bbStringConcat(bbStringConcat(bbt_pad,((BBString*)&_s276)),bbStringFromFloat(((struct openb3d_openb3dcore_TBone_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tbone_n_rx [0])));
		bbOnDebugLeaveScope();
	}else{
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x2ca3aa87d9b50d36, 101, 0};
		bbOnDebugEnterStm(&__stmt_0);
		brl_blitz_DebugLog(bbStringConcat(bbt_pad,((BBString*)&_s277)));
		bbOnDebugLeaveScope();
	}
	struct BBDebugStm __stmt_14 = {0x2ca3aa87d9b50d36, 102, 0};
	bbOnDebugEnterStm(&__stmt_14);
	if(((struct openb3d_openb3dcore_TBone_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tbone_n_ry !=0){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x2ca3aa87d9b50d36, 102, 0};
		bbOnDebugEnterStm(&__stmt_0);
		brl_blitz_DebugLog(bbStringConcat(bbStringConcat(bbt_pad,((BBString*)&_s278)),bbStringFromFloat(((struct openb3d_openb3dcore_TBone_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tbone_n_ry [0])));
		bbOnDebugLeaveScope();
	}else{
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x2ca3aa87d9b50d36, 102, 0};
		bbOnDebugEnterStm(&__stmt_0);
		brl_blitz_DebugLog(bbStringConcat(bbt_pad,((BBString*)&_s279)));
		bbOnDebugLeaveScope();
	}
	struct BBDebugStm __stmt_15 = {0x2ca3aa87d9b50d36, 103, 0};
	bbOnDebugEnterStm(&__stmt_15);
	if(((struct openb3d_openb3dcore_TBone_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tbone_n_rz !=0){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x2ca3aa87d9b50d36, 103, 0};
		bbOnDebugEnterStm(&__stmt_0);
		brl_blitz_DebugLog(bbStringConcat(bbStringConcat(bbt_pad,((BBString*)&_s280)),bbStringFromFloat(((struct openb3d_openb3dcore_TBone_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tbone_n_rz [0])));
		bbOnDebugLeaveScope();
	}else{
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x2ca3aa87d9b50d36, 103, 0};
		bbOnDebugEnterStm(&__stmt_0);
		brl_blitz_DebugLog(bbStringConcat(bbt_pad,((BBString*)&_s281)));
		bbOnDebugLeaveScope();
	}
	struct BBDebugStm __stmt_16 = {0x2ca3aa87d9b50d36, 104, 0};
	bbOnDebugEnterStm(&__stmt_16);
	if(((struct openb3d_openb3dcore_TBone_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tbone_n_qx !=0){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x2ca3aa87d9b50d36, 104, 0};
		bbOnDebugEnterStm(&__stmt_0);
		brl_blitz_DebugLog(bbStringConcat(bbStringConcat(bbt_pad,((BBString*)&_s282)),bbStringFromFloat(((struct openb3d_openb3dcore_TBone_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tbone_n_qx [0])));
		bbOnDebugLeaveScope();
	}else{
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x2ca3aa87d9b50d36, 104, 0};
		bbOnDebugEnterStm(&__stmt_0);
		brl_blitz_DebugLog(bbStringConcat(bbt_pad,((BBString*)&_s283)));
		bbOnDebugLeaveScope();
	}
	struct BBDebugStm __stmt_17 = {0x2ca3aa87d9b50d36, 105, 0};
	bbOnDebugEnterStm(&__stmt_17);
	if(((struct openb3d_openb3dcore_TBone_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tbone_n_qy !=0){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x2ca3aa87d9b50d36, 105, 0};
		bbOnDebugEnterStm(&__stmt_0);
		brl_blitz_DebugLog(bbStringConcat(bbStringConcat(bbt_pad,((BBString*)&_s284)),bbStringFromFloat(((struct openb3d_openb3dcore_TBone_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tbone_n_qy [0])));
		bbOnDebugLeaveScope();
	}else{
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x2ca3aa87d9b50d36, 105, 0};
		bbOnDebugEnterStm(&__stmt_0);
		brl_blitz_DebugLog(bbStringConcat(bbt_pad,((BBString*)&_s285)));
		bbOnDebugLeaveScope();
	}
	struct BBDebugStm __stmt_18 = {0x2ca3aa87d9b50d36, 106, 0};
	bbOnDebugEnterStm(&__stmt_18);
	if(((struct openb3d_openb3dcore_TBone_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tbone_n_qz !=0){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x2ca3aa87d9b50d36, 106, 0};
		bbOnDebugEnterStm(&__stmt_0);
		brl_blitz_DebugLog(bbStringConcat(bbStringConcat(bbt_pad,((BBString*)&_s286)),bbStringFromFloat(((struct openb3d_openb3dcore_TBone_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tbone_n_qz [0])));
		bbOnDebugLeaveScope();
	}else{
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x2ca3aa87d9b50d36, 106, 0};
		bbOnDebugEnterStm(&__stmt_0);
		brl_blitz_DebugLog(bbStringConcat(bbt_pad,((BBString*)&_s287)));
		bbOnDebugLeaveScope();
	}
	struct BBDebugStm __stmt_19 = {0x2ca3aa87d9b50d36, 107, 0};
	bbOnDebugEnterStm(&__stmt_19);
	if(((struct openb3d_openb3dcore_TBone_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tbone_n_qw !=0){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x2ca3aa87d9b50d36, 107, 0};
		bbOnDebugEnterStm(&__stmt_0);
		brl_blitz_DebugLog(bbStringConcat(bbStringConcat(bbt_pad,((BBString*)&_s288)),bbStringFromFloat(((struct openb3d_openb3dcore_TBone_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tbone_n_qw [0])));
		bbOnDebugLeaveScope();
	}else{
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x2ca3aa87d9b50d36, 107, 0};
		bbOnDebugEnterStm(&__stmt_0);
		brl_blitz_DebugLog(bbStringConcat(bbt_pad,((BBString*)&_s289)));
		bbOnDebugLeaveScope();
	}
	struct BBDebugStm __stmt_20 = {0x2ca3aa87d9b50d36, 108, 0};
	bbOnDebugEnterStm(&__stmt_20);
	if(((struct openb3d_openb3dcore_TBone_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tbone_kx !=0){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x2ca3aa87d9b50d36, 108, 0};
		bbOnDebugEnterStm(&__stmt_0);
		brl_blitz_DebugLog(bbStringConcat(bbStringConcat(bbt_pad,((BBString*)&_s290)),bbStringFromFloat(((struct openb3d_openb3dcore_TBone_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tbone_kx [0])));
		bbOnDebugLeaveScope();
	}else{
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x2ca3aa87d9b50d36, 108, 0};
		bbOnDebugEnterStm(&__stmt_0);
		brl_blitz_DebugLog(bbStringConcat(bbt_pad,((BBString*)&_s291)));
		bbOnDebugLeaveScope();
	}
	struct BBDebugStm __stmt_21 = {0x2ca3aa87d9b50d36, 109, 0};
	bbOnDebugEnterStm(&__stmt_21);
	if(((struct openb3d_openb3dcore_TBone_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tbone_ky !=0){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x2ca3aa87d9b50d36, 109, 0};
		bbOnDebugEnterStm(&__stmt_0);
		brl_blitz_DebugLog(bbStringConcat(bbStringConcat(bbt_pad,((BBString*)&_s292)),bbStringFromFloat(((struct openb3d_openb3dcore_TBone_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tbone_ky [0])));
		bbOnDebugLeaveScope();
	}else{
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x2ca3aa87d9b50d36, 109, 0};
		bbOnDebugEnterStm(&__stmt_0);
		brl_blitz_DebugLog(bbStringConcat(bbt_pad,((BBString*)&_s293)));
		bbOnDebugLeaveScope();
	}
	struct BBDebugStm __stmt_22 = {0x2ca3aa87d9b50d36, 110, 0};
	bbOnDebugEnterStm(&__stmt_22);
	if(((struct openb3d_openb3dcore_TBone_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tbone_kz !=0){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x2ca3aa87d9b50d36, 110, 0};
		bbOnDebugEnterStm(&__stmt_0);
		brl_blitz_DebugLog(bbStringConcat(bbStringConcat(bbt_pad,((BBString*)&_s294)),bbStringFromFloat(((struct openb3d_openb3dcore_TBone_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tbone_kz [0])));
		bbOnDebugLeaveScope();
	}else{
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x2ca3aa87d9b50d36, 110, 0};
		bbOnDebugEnterStm(&__stmt_0);
		brl_blitz_DebugLog(bbStringConcat(bbt_pad,((BBString*)&_s295)));
		bbOnDebugLeaveScope();
	}
	struct BBDebugStm __stmt_23 = {0x2ca3aa87d9b50d36, 111, 0};
	bbOnDebugEnterStm(&__stmt_23);
	if(((struct openb3d_openb3dcore_TBone_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tbone_kqx !=0){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x2ca3aa87d9b50d36, 111, 0};
		bbOnDebugEnterStm(&__stmt_0);
		brl_blitz_DebugLog(bbStringConcat(bbStringConcat(bbt_pad,((BBString*)&_s296)),bbStringFromFloat(((struct openb3d_openb3dcore_TBone_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tbone_kqx [0])));
		bbOnDebugLeaveScope();
	}else{
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x2ca3aa87d9b50d36, 111, 0};
		bbOnDebugEnterStm(&__stmt_0);
		brl_blitz_DebugLog(bbStringConcat(bbt_pad,((BBString*)&_s297)));
		bbOnDebugLeaveScope();
	}
	struct BBDebugStm __stmt_24 = {0x2ca3aa87d9b50d36, 112, 0};
	bbOnDebugEnterStm(&__stmt_24);
	if(((struct openb3d_openb3dcore_TBone_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tbone_kqy !=0){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x2ca3aa87d9b50d36, 112, 0};
		bbOnDebugEnterStm(&__stmt_0);
		brl_blitz_DebugLog(bbStringConcat(bbStringConcat(bbt_pad,((BBString*)&_s298)),bbStringFromFloat(((struct openb3d_openb3dcore_TBone_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tbone_kqy [0])));
		bbOnDebugLeaveScope();
	}else{
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x2ca3aa87d9b50d36, 112, 0};
		bbOnDebugEnterStm(&__stmt_0);
		brl_blitz_DebugLog(bbStringConcat(bbt_pad,((BBString*)&_s299)));
		bbOnDebugLeaveScope();
	}
	struct BBDebugStm __stmt_25 = {0x2ca3aa87d9b50d36, 113, 0};
	bbOnDebugEnterStm(&__stmt_25);
	if(((struct openb3d_openb3dcore_TBone_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tbone_kqz !=0){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x2ca3aa87d9b50d36, 113, 0};
		bbOnDebugEnterStm(&__stmt_0);
		brl_blitz_DebugLog(bbStringConcat(bbStringConcat(bbt_pad,((BBString*)&_s300)),bbStringFromFloat(((struct openb3d_openb3dcore_TBone_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tbone_kqz [0])));
		bbOnDebugLeaveScope();
	}else{
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x2ca3aa87d9b50d36, 113, 0};
		bbOnDebugEnterStm(&__stmt_0);
		brl_blitz_DebugLog(bbStringConcat(bbt_pad,((BBString*)&_s301)));
		bbOnDebugLeaveScope();
	}
	struct BBDebugStm __stmt_26 = {0x2ca3aa87d9b50d36, 114, 0};
	bbOnDebugEnterStm(&__stmt_26);
	if(((struct openb3d_openb3dcore_TBone_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tbone_kqw !=0){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x2ca3aa87d9b50d36, 114, 0};
		bbOnDebugEnterStm(&__stmt_0);
		brl_blitz_DebugLog(bbStringConcat(bbStringConcat(bbt_pad,((BBString*)&_s302)),bbStringFromFloat(((struct openb3d_openb3dcore_TBone_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tbone_kqw [0])));
		bbOnDebugLeaveScope();
	}else{
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x2ca3aa87d9b50d36, 114, 0};
		bbOnDebugEnterStm(&__stmt_0);
		brl_blitz_DebugLog(bbStringConcat(bbt_pad,((BBString*)&_s303)));
		bbOnDebugLeaveScope();
	}
	struct BBDebugStm __stmt_27 = {0x2ca3aa87d9b50d36, 117, 0};
	bbOnDebugEnterStm(&__stmt_27);
	brl_blitz_DebugLog(bbStringConcat(bbStringConcat(bbt_pad,((BBString*)&_s304)),openb3d_openb3dcore_StringPtr(openb3d_openb3dcore_TAnimationKeys_GetInstance_pb_TTAnimationKeys((struct openb3d_openb3dcore_TAnimationKeys_obj*)((struct openb3d_openb3dcore_TBone_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tbone_keys ))));
	struct BBDebugStm __stmt_28 = {0x2ca3aa87d9b50d36, 118, 0};
	bbOnDebugEnterStm(&__stmt_28);
	if((bbt_debug_subobjects!=0) && (((BBOBJECT)((struct openb3d_openb3dcore_TBone_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tbone_keys )!=&bbNullObject)){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x2ca3aa87d9b50d36, 118, 0};
		bbOnDebugEnterStm(&__stmt_0);
		((struct openb3d_openb3dcore_TAnimationKeys_obj*)bbNullObjectTest((BBObject*)((struct openb3d_openb3dcore_TBone_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tbone_keys ))->clas->m_DebugFields_ii((struct openb3d_openb3dcore_TAnimationKeys_obj*)((struct openb3d_openb3dcore_TBone_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tbone_keys ,bbt_debug_subobjects,bbt_debug_base_types);
		bbOnDebugLeaveScope();
	}
	struct BBDebugStm __stmt_29 = {0x2ca3aa87d9b50d36, 121, 0};
	bbOnDebugEnterStm(&__stmt_29);
	brl_blitz_DebugLog(bbStringConcat(bbStringConcat(bbt_pad,((BBString*)&_s305)),openb3d_openb3dcore_StringPtr(openb3d_openb3dcore_TMatPtr_GetInstance_pb_TTMatPtr((struct openb3d_openb3dcore_TMatPtr_obj*)((struct openb3d_openb3dcore_TBone_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tbone_mat2 ))));
	struct BBDebugStm __stmt_30 = {0x2ca3aa87d9b50d36, 122, 0};
	bbOnDebugEnterStm(&__stmt_30);
	if((bbt_debug_subobjects!=0) && (((BBOBJECT)((struct openb3d_openb3dcore_TBone_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tbone_mat2 )!=&bbNullObject)){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x2ca3aa87d9b50d36, 122, 0};
		bbOnDebugEnterStm(&__stmt_0);
		((struct openb3d_openb3dcore_TMatPtr_obj*)bbNullObjectTest((BBObject*)((struct openb3d_openb3dcore_TBone_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tbone_mat2 ))->clas->m_DebugFields_ii((struct openb3d_openb3dcore_TMatPtr_obj*)((struct openb3d_openb3dcore_TBone_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tbone_mat2 ,bbt_debug_subobjects,bbt_debug_base_types);
		bbOnDebugLeaveScope();
	}
	struct BBDebugStm __stmt_31 = {0x2ca3aa87d9b50d36, 123, 0};
	bbOnDebugEnterStm(&__stmt_31);
	brl_blitz_DebugLog(bbStringConcat(bbStringConcat(bbt_pad,((BBString*)&_s306)),openb3d_openb3dcore_StringPtr(openb3d_openb3dcore_TMatPtr_GetInstance_pb_TTMatPtr((struct openb3d_openb3dcore_TMatPtr_obj*)((struct openb3d_openb3dcore_TBone_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tbone_inv_mat ))));
	struct BBDebugStm __stmt_32 = {0x2ca3aa87d9b50d36, 124, 0};
	bbOnDebugEnterStm(&__stmt_32);
	if((bbt_debug_subobjects!=0) && (((BBOBJECT)((struct openb3d_openb3dcore_TBone_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tbone_inv_mat )!=&bbNullObject)){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x2ca3aa87d9b50d36, 124, 0};
		bbOnDebugEnterStm(&__stmt_0);
		((struct openb3d_openb3dcore_TMatPtr_obj*)bbNullObjectTest((BBObject*)((struct openb3d_openb3dcore_TBone_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tbone_inv_mat ))->clas->m_DebugFields_ii((struct openb3d_openb3dcore_TMatPtr_obj*)((struct openb3d_openb3dcore_TBone_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tbone_inv_mat ,bbt_debug_subobjects,bbt_debug_base_types);
		bbOnDebugLeaveScope();
	}
	struct BBDebugStm __stmt_33 = {0x2ca3aa87d9b50d36, 125, 0};
	bbOnDebugEnterStm(&__stmt_33);
	brl_blitz_DebugLog(bbStringConcat(bbStringConcat(bbt_pad,((BBString*)&_s307)),openb3d_openb3dcore_StringPtr(openb3d_openb3dcore_TMatPtr_GetInstance_pb_TTMatPtr((struct openb3d_openb3dcore_TMatPtr_obj*)((struct openb3d_openb3dcore_TBone_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tbone_tform_mat ))));
	struct BBDebugStm __stmt_34 = {0x2ca3aa87d9b50d36, 126, 0};
	bbOnDebugEnterStm(&__stmt_34);
	if((bbt_debug_subobjects!=0) && (((BBOBJECT)((struct openb3d_openb3dcore_TBone_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tbone_tform_mat )!=&bbNullObject)){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x2ca3aa87d9b50d36, 126, 0};
		bbOnDebugEnterStm(&__stmt_0);
		((struct openb3d_openb3dcore_TMatPtr_obj*)bbNullObjectTest((BBObject*)((struct openb3d_openb3dcore_TBone_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tbone_tform_mat ))->clas->m_DebugFields_ii((struct openb3d_openb3dcore_TMatPtr_obj*)((struct openb3d_openb3dcore_TBone_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tbone_tform_mat ,bbt_debug_subobjects,bbt_debug_base_types);
		bbOnDebugLeaveScope();
	}
	struct BBDebugStm __stmt_35 = {0x2ca3aa87d9b50d36, 128, 0};
	bbOnDebugEnterStm(&__stmt_35);
	brl_blitz_DebugLog((BBString*)&bbEmptyString);
	bbOnDebugLeaveScope();
	return 0;
}
struct openb3d_openb3dcore_TBone_obj* openb3d_openb3dcore_TBone_NewBone_TTBone(){
	BBBYTE* bbt_inst=0;
	struct BBDebugScope_1 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"NewBone",
		{
			{
				BBDEBUGDECL_LOCAL,
				"inst",
				"*b",
				.var_address=&bbt_inst
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x2ca3aa87d9b50d36, 134, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbt_inst=NewBone_();
	struct BBDebugStm __stmt_1 = {0x2ca3aa87d9b50d36, 135, 0};
	bbOnDebugEnterStm(&__stmt_1);
	bbOnDebugLeaveScope();
	return (struct openb3d_openb3dcore_TBone_obj*)openb3d_openb3dcore_TBone_CreateObject_TTBone_pb(bbt_inst);
}
struct openb3d_openb3dcore_TBone_obj* openb3d_openb3dcore_TBone_Create_TTBone(){
	BBBYTE* bbt_inst=0;
	struct BBDebugScope_1 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"Create",
		{
			{
				BBDEBUGDECL_LOCAL,
				"inst",
				"*b",
				.var_address=&bbt_inst
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x2ca3aa87d9b50d36, 141, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbt_inst=NewBone_();
	struct BBDebugStm __stmt_1 = {0x2ca3aa87d9b50d36, 142, 0};
	bbOnDebugEnterStm(&__stmt_1);
	bbOnDebugLeaveScope();
	return (struct openb3d_openb3dcore_TBone_obj*)openb3d_openb3dcore_TBone_CreateObject_TTBone_pb(bbt_inst);
}
struct openb3d_openb3dcore_TBone_obj* openb3d_openb3dcore_TBone_CreateBone_TTBone_TTMeshTTEntity(struct openb3d_openb3dcore_TMesh_obj* bbt_mesh,struct openb3d_openb3dcore_TEntity_obj* bbt_parent_ent){
	BBBYTE* bbt_inst=0;
	struct BBDebugScope_3 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"CreateBone",
		{
			{
				BBDEBUGDECL_LOCAL,
				"mesh",
				":TMesh",
				.var_address=&bbt_mesh
			},
			{
				BBDEBUGDECL_LOCAL,
				"parent_ent",
				":TEntity",
				.var_address=&bbt_parent_ent
			},
			{
				BBDEBUGDECL_LOCAL,
				"inst",
				"*b",
				.var_address=&bbt_inst
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x2ca3aa87d9b50d36, 150, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbt_inst=CreateBone_(openb3d_openb3dcore_TEntity_GetInstance_pb_TTEntity((struct openb3d_openb3dcore_TEntity_obj*)((struct openb3d_openb3dcore_TEntity_obj*)bbObjectDowncast((BBOBJECT)bbt_mesh,(BBClass*)&openb3d_openb3dcore_TEntity))),openb3d_openb3dcore_TEntity_GetInstance_pb_TTEntity((struct openb3d_openb3dcore_TEntity_obj*)bbt_parent_ent));
	struct BBDebugStm __stmt_1 = {0x2ca3aa87d9b50d36, 151, 0};
	bbOnDebugEnterStm(&__stmt_1);
	openb3d_openb3dcore_CopyList((struct brl_linkedlist_TList_obj*)((struct openb3d_openb3dcore_TMesh_obj*)bbNullObjectTest((BBObject*)bbt_mesh))->_openb3d_openb3dcore_tmesh_bones );
	struct BBDebugStm __stmt_2 = {0x2ca3aa87d9b50d36, 152, 0};
	bbOnDebugEnterStm(&__stmt_2);
	if(((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)bbt_mesh))->_openb3d_openb3dcore_tentity_is_anim ==0){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x2ca3aa87d9b50d36, 153, 0};
		bbOnDebugEnterStm(&__stmt_0);
		((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)bbt_mesh))->_openb3d_openb3dcore_tentity_is_anim =1;
		struct BBDebugStm __stmt_1 = {0x2ca3aa87d9b50d36, 154, 0};
		bbOnDebugEnterStm(&__stmt_1);
		openb3d_openb3dcore_CopyList((struct brl_linkedlist_TList_obj*)((struct openb3d_openb3dcore_TMesh_obj*)bbNullObjectTest((BBObject*)bbt_mesh))->_openb3d_openb3dcore_tmesh_anim_surf_list );
		struct BBDebugStm __stmt_2 = {0x2ca3aa87d9b50d36, 155, 0};
		bbOnDebugEnterStm(&__stmt_2);
		struct brl_linkedlist_TList_obj* bbt_2;
		struct brl_linkedlist_TListEnum_obj* bbt_=(struct brl_linkedlist_TListEnum_obj*)(((struct brl_linkedlist_TList_obj*)((struct brl_linkedlist_TList_obj*)bbNullObjectTest((BBObject*)(bbt_2 = ((struct openb3d_openb3dcore_TMesh_obj*)bbNullObjectTest((BBObject*)bbt_mesh))->_openb3d_openb3dcore_tmesh_anim_surf_list ))))->clas)->m_ObjectEnumerator((struct brl_linkedlist_TList_obj*)bbt_2);
		while(((struct brl_linkedlist_TListEnum_obj*)bbNullObjectTest((BBObject*)bbt_))->clas->m_HasNext((struct brl_linkedlist_TListEnum_obj*)bbt_)!=0){
			struct openb3d_openb3dcore_TSurface_obj* bbt_surf=(struct openb3d_openb3dcore_TSurface_obj*)((struct openb3d_openb3dcore_TSurface_obj*)&bbNullObject);
			struct BBDebugScope_1 __scope = {
				BBDEBUGSCOPE_LOCALBLOCK,
				0,
				{
					{
						BBDEBUGDECL_LOCAL,
						"surf",
						":TSurface",
						.var_address=&bbt_surf
					},
					{
						BBDEBUGDECL_END
					}
				}
			};
			bbOnDebugEnterScope((BBDebugScope *)&__scope);
			bbt_surf=(struct openb3d_openb3dcore_TSurface_obj*)((struct openb3d_openb3dcore_TSurface_obj*)bbObjectDowncast((BBOBJECT)((struct brl_linkedlist_TListEnum_obj*)bbNullObjectTest((BBObject*)bbt_))->clas->m_NextObject((struct brl_linkedlist_TListEnum_obj*)bbt_),(BBClass*)&openb3d_openb3dcore_TSurface));
			if(((BBOBJECT)bbt_surf)==&bbNullObject){
				bbOnDebugLeaveScope();
				continue;
			}
			struct BBDebugStm __stmt_0 = {0x2ca3aa87d9b50d36, 156, 0};
			bbOnDebugEnterStm(&__stmt_0);
			((struct openb3d_openb3dcore_TSurface_obj*)bbNullObjectTest((BBObject*)bbt_surf))->_openb3d_openb3dcore_tsurface_vert_coords =SurfaceFloat_(openb3d_openb3dcore_TSurface_GetInstance_pb_TTSurface((struct openb3d_openb3dcore_TSurface_obj*)bbt_surf),3);
			struct BBDebugStm __stmt_1 = {0x2ca3aa87d9b50d36, 157, 0};
			bbOnDebugEnterStm(&__stmt_1);
			((struct openb3d_openb3dcore_TSurface_obj*)bbNullObjectTest((BBObject*)bbt_surf))->_openb3d_openb3dcore_tsurface_vert_bone1_no =SurfaceInt_(openb3d_openb3dcore_TSurface_GetInstance_pb_TTSurface((struct openb3d_openb3dcore_TSurface_obj*)bbt_surf),9);
			struct BBDebugStm __stmt_2 = {0x2ca3aa87d9b50d36, 158, 0};
			bbOnDebugEnterStm(&__stmt_2);
			((struct openb3d_openb3dcore_TSurface_obj*)bbNullObjectTest((BBObject*)bbt_surf))->_openb3d_openb3dcore_tsurface_vert_bone2_no =SurfaceInt_(openb3d_openb3dcore_TSurface_GetInstance_pb_TTSurface((struct openb3d_openb3dcore_TSurface_obj*)bbt_surf),10);
			struct BBDebugStm __stmt_3 = {0x2ca3aa87d9b50d36, 159, 0};
			bbOnDebugEnterStm(&__stmt_3);
			((struct openb3d_openb3dcore_TSurface_obj*)bbNullObjectTest((BBObject*)bbt_surf))->_openb3d_openb3dcore_tsurface_vert_bone3_no =SurfaceInt_(openb3d_openb3dcore_TSurface_GetInstance_pb_TTSurface((struct openb3d_openb3dcore_TSurface_obj*)bbt_surf),11);
			struct BBDebugStm __stmt_4 = {0x2ca3aa87d9b50d36, 160, 0};
			bbOnDebugEnterStm(&__stmt_4);
			((struct openb3d_openb3dcore_TSurface_obj*)bbNullObjectTest((BBObject*)bbt_surf))->_openb3d_openb3dcore_tsurface_vert_bone4_no =SurfaceInt_(openb3d_openb3dcore_TSurface_GetInstance_pb_TTSurface((struct openb3d_openb3dcore_TSurface_obj*)bbt_surf),12);
			struct BBDebugStm __stmt_5 = {0x2ca3aa87d9b50d36, 161, 0};
			bbOnDebugEnterStm(&__stmt_5);
			((struct openb3d_openb3dcore_TSurface_obj*)bbNullObjectTest((BBObject*)bbt_surf))->_openb3d_openb3dcore_tsurface_vert_weight1 =SurfaceFloat_(openb3d_openb3dcore_TSurface_GetInstance_pb_TTSurface((struct openb3d_openb3dcore_TSurface_obj*)bbt_surf),13);
			struct BBDebugStm __stmt_6 = {0x2ca3aa87d9b50d36, 162, 0};
			bbOnDebugEnterStm(&__stmt_6);
			((struct openb3d_openb3dcore_TSurface_obj*)bbNullObjectTest((BBObject*)bbt_surf))->_openb3d_openb3dcore_tsurface_vert_weight2 =SurfaceFloat_(openb3d_openb3dcore_TSurface_GetInstance_pb_TTSurface((struct openb3d_openb3dcore_TSurface_obj*)bbt_surf),14);
			struct BBDebugStm __stmt_7 = {0x2ca3aa87d9b50d36, 163, 0};
			bbOnDebugEnterStm(&__stmt_7);
			((struct openb3d_openb3dcore_TSurface_obj*)bbNullObjectTest((BBObject*)bbt_surf))->_openb3d_openb3dcore_tsurface_vert_weight3 =SurfaceFloat_(openb3d_openb3dcore_TSurface_GetInstance_pb_TTSurface((struct openb3d_openb3dcore_TSurface_obj*)bbt_surf),15);
			struct BBDebugStm __stmt_8 = {0x2ca3aa87d9b50d36, 164, 0};
			bbOnDebugEnterStm(&__stmt_8);
			((struct openb3d_openb3dcore_TSurface_obj*)bbNullObjectTest((BBObject*)bbt_surf))->_openb3d_openb3dcore_tsurface_vert_weight4 =SurfaceFloat_(openb3d_openb3dcore_TSurface_GetInstance_pb_TTSurface((struct openb3d_openb3dcore_TSurface_obj*)bbt_surf),16);
			bbOnDebugLeaveScope();
		}
		bbOnDebugLeaveScope();
	}
	struct BBDebugStm __stmt_3 = {0x2ca3aa87d9b50d36, 167, 0};
	bbOnDebugEnterStm(&__stmt_3);
	bbOnDebugLeaveScope();
	return (struct openb3d_openb3dcore_TBone_obj*)openb3d_openb3dcore_TBone_CreateObject_TTBone_pb(bbt_inst);
}
BBINT _openb3d_openb3dcore_TBone_FreeEntity(struct openb3d_openb3dcore_TBone_obj* o){
	((struct openb3d_openb3dcore_TBone_obj*)bbNullObjectTest((BBObject*)o));
	struct BBDebugScope_1 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"FreeEntity",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TBone",
				.var_address=&o
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x2ca3aa87d9b50d36, 191, 0};
	bbOnDebugEnterStm(&__stmt_0);
	if(((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tentity_exists !=0){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x2ca3aa87d9b50d36, 192, 0};
		bbOnDebugEnterStm(&__stmt_0);
		((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tentity_exists =0;
		struct BBDebugStm __stmt_1 = {0x2ca3aa87d9b50d36, 193, 0};
		bbOnDebugEnterStm(&__stmt_1);
		openb3d_openb3dcore_TAnimationKeys_FreeObject_i_pb(openb3d_openb3dcore_TAnimationKeys_GetInstance_pb_TTAnimationKeys((struct openb3d_openb3dcore_TAnimationKeys_obj*)((struct openb3d_openb3dcore_TBone_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tbone_keys ));
		struct BBDebugStm __stmt_2 = {0x2ca3aa87d9b50d36, 193, 0};
		bbOnDebugEnterStm(&__stmt_2);
		((struct openb3d_openb3dcore_TBone_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tbone_keys =(struct openb3d_openb3dcore_TAnimationKeys_obj*)&bbNullObject;
		struct BBDebugStm __stmt_3 = {0x2ca3aa87d9b50d36, 194, 0};
		bbOnDebugEnterStm(&__stmt_3);
		openb3d_openb3dcore_TMatPtr_FreeObject_i_pb(openb3d_openb3dcore_TMatPtr_GetInstance_pb_TTMatPtr((struct openb3d_openb3dcore_TMatPtr_obj*)((struct openb3d_openb3dcore_TBone_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tbone_mat2 ));
		struct BBDebugStm __stmt_4 = {0x2ca3aa87d9b50d36, 194, 0};
		bbOnDebugEnterStm(&__stmt_4);
		((struct openb3d_openb3dcore_TBone_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tbone_mat2 =(struct openb3d_openb3dcore_TMatPtr_obj*)&bbNullObject;
		struct BBDebugStm __stmt_5 = {0x2ca3aa87d9b50d36, 195, 0};
		bbOnDebugEnterStm(&__stmt_5);
		openb3d_openb3dcore_TMatPtr_FreeObject_i_pb(openb3d_openb3dcore_TMatPtr_GetInstance_pb_TTMatPtr((struct openb3d_openb3dcore_TMatPtr_obj*)((struct openb3d_openb3dcore_TBone_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tbone_inv_mat ));
		struct BBDebugStm __stmt_6 = {0x2ca3aa87d9b50d36, 195, 0};
		bbOnDebugEnterStm(&__stmt_6);
		((struct openb3d_openb3dcore_TBone_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tbone_inv_mat =(struct openb3d_openb3dcore_TMatPtr_obj*)&bbNullObject;
		struct BBDebugStm __stmt_7 = {0x2ca3aa87d9b50d36, 196, 0};
		bbOnDebugEnterStm(&__stmt_7);
		openb3d_openb3dcore_TMatPtr_FreeObject_i_pb(openb3d_openb3dcore_TMatPtr_GetInstance_pb_TTMatPtr((struct openb3d_openb3dcore_TMatPtr_obj*)((struct openb3d_openb3dcore_TBone_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tbone_tform_mat ));
		struct BBDebugStm __stmt_8 = {0x2ca3aa87d9b50d36, 196, 0};
		bbOnDebugEnterStm(&__stmt_8);
		((struct openb3d_openb3dcore_TBone_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tbone_tform_mat =(struct openb3d_openb3dcore_TMatPtr_obj*)&bbNullObject;
		struct BBDebugStm __stmt_9 = {0x2ca3aa87d9b50d36, 198, 0};
		bbOnDebugEnterStm(&__stmt_9);
		openb3d_openb3dcore_TEntity_FreeObject_i_pb(openb3d_openb3dcore_TEntity_GetInstance_pb_TTEntity((struct openb3d_openb3dcore_TEntity_obj*)((struct openb3d_openb3dcore_TEntity_obj*)bbObjectDowncast((BBOBJECT)o,(BBClass*)&openb3d_openb3dcore_TEntity))));
		bbOnDebugLeaveScope();
	}
	bbOnDebugLeaveScope();
	return 0;
}
struct openb3d_openb3dcore_TBone_obj* _openb3d_openb3dcore_TBone_CopyEntity_TTEntity(struct openb3d_openb3dcore_TBone_obj* o,struct openb3d_openb3dcore_TEntity_obj* bbt_parent){
	((struct openb3d_openb3dcore_TBone_obj*)bbNullObjectTest((BBObject*)o));
	BBBYTE* bbt_inst=0;
	struct BBDebugScope_3 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"CopyEntity",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TBone",
				.var_address=&o
			},
			{
				BBDEBUGDECL_LOCAL,
				"parent",
				":TEntity",
				.var_address=&bbt_parent
			},
			{
				BBDEBUGDECL_LOCAL,
				"inst",
				"*b",
				.var_address=&bbt_inst
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x2ca3aa87d9b50d36, 207, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbt_inst=CopyEntity_(openb3d_openb3dcore_TEntity_GetInstance_pb_TTEntity((struct openb3d_openb3dcore_TEntity_obj*)((struct openb3d_openb3dcore_TEntity_obj*)bbObjectDowncast((BBOBJECT)o,(BBClass*)&openb3d_openb3dcore_TEntity))),openb3d_openb3dcore_TEntity_GetInstance_pb_TTEntity((struct openb3d_openb3dcore_TEntity_obj*)bbt_parent));
	struct BBDebugStm __stmt_1 = {0x2ca3aa87d9b50d36, 208, 0};
	bbOnDebugEnterStm(&__stmt_1);
	bbOnDebugLeaveScope();
	return (struct openb3d_openb3dcore_TBone_obj*)o->clas->f_CreateObject_TTBone_pb(bbt_inst);
}
BBINT _openb3d_openb3dcore_TBone_Update(struct openb3d_openb3dcore_TBone_obj* o){
	((struct openb3d_openb3dcore_TBone_obj*)bbNullObjectTest((BBObject*)o));
	struct BBDebugScope_1 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"Update",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TBone",
				.var_address=&o
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	bbOnDebugLeaveScope();
	return 0;
}
struct BBDebugScope_34 openb3d_openb3dcore_TBone_scope ={
	BBDEBUGSCOPE_USERTYPE,
	"TBone",
	{
		{
			BBDEBUGDECL_FIELD,
			"n_px",
			"*f",
			.field_offset=offsetof(struct openb3d_openb3dcore_TBone_obj,_openb3d_openb3dcore_tbone_n_px)
		},
		{
			BBDEBUGDECL_FIELD,
			"n_py",
			"*f",
			.field_offset=offsetof(struct openb3d_openb3dcore_TBone_obj,_openb3d_openb3dcore_tbone_n_py)
		},
		{
			BBDEBUGDECL_FIELD,
			"n_pz",
			"*f",
			.field_offset=offsetof(struct openb3d_openb3dcore_TBone_obj,_openb3d_openb3dcore_tbone_n_pz)
		},
		{
			BBDEBUGDECL_FIELD,
			"n_sx",
			"*f",
			.field_offset=offsetof(struct openb3d_openb3dcore_TBone_obj,_openb3d_openb3dcore_tbone_n_sx)
		},
		{
			BBDEBUGDECL_FIELD,
			"n_sy",
			"*f",
			.field_offset=offsetof(struct openb3d_openb3dcore_TBone_obj,_openb3d_openb3dcore_tbone_n_sy)
		},
		{
			BBDEBUGDECL_FIELD,
			"n_sz",
			"*f",
			.field_offset=offsetof(struct openb3d_openb3dcore_TBone_obj,_openb3d_openb3dcore_tbone_n_sz)
		},
		{
			BBDEBUGDECL_FIELD,
			"n_rx",
			"*f",
			.field_offset=offsetof(struct openb3d_openb3dcore_TBone_obj,_openb3d_openb3dcore_tbone_n_rx)
		},
		{
			BBDEBUGDECL_FIELD,
			"n_ry",
			"*f",
			.field_offset=offsetof(struct openb3d_openb3dcore_TBone_obj,_openb3d_openb3dcore_tbone_n_ry)
		},
		{
			BBDEBUGDECL_FIELD,
			"n_rz",
			"*f",
			.field_offset=offsetof(struct openb3d_openb3dcore_TBone_obj,_openb3d_openb3dcore_tbone_n_rz)
		},
		{
			BBDEBUGDECL_FIELD,
			"n_qx",
			"*f",
			.field_offset=offsetof(struct openb3d_openb3dcore_TBone_obj,_openb3d_openb3dcore_tbone_n_qx)
		},
		{
			BBDEBUGDECL_FIELD,
			"n_qy",
			"*f",
			.field_offset=offsetof(struct openb3d_openb3dcore_TBone_obj,_openb3d_openb3dcore_tbone_n_qy)
		},
		{
			BBDEBUGDECL_FIELD,
			"n_qz",
			"*f",
			.field_offset=offsetof(struct openb3d_openb3dcore_TBone_obj,_openb3d_openb3dcore_tbone_n_qz)
		},
		{
			BBDEBUGDECL_FIELD,
			"n_qw",
			"*f",
			.field_offset=offsetof(struct openb3d_openb3dcore_TBone_obj,_openb3d_openb3dcore_tbone_n_qw)
		},
		{
			BBDEBUGDECL_FIELD,
			"keys",
			":TAnimationKeys",
			.field_offset=offsetof(struct openb3d_openb3dcore_TBone_obj,_openb3d_openb3dcore_tbone_keys)
		},
		{
			BBDEBUGDECL_FIELD,
			"mat2",
			":TMatPtr",
			.field_offset=offsetof(struct openb3d_openb3dcore_TBone_obj,_openb3d_openb3dcore_tbone_mat2)
		},
		{
			BBDEBUGDECL_FIELD,
			"inv_mat",
			":TMatPtr",
			.field_offset=offsetof(struct openb3d_openb3dcore_TBone_obj,_openb3d_openb3dcore_tbone_inv_mat)
		},
		{
			BBDEBUGDECL_FIELD,
			"tform_mat",
			":TMatPtr",
			.field_offset=offsetof(struct openb3d_openb3dcore_TBone_obj,_openb3d_openb3dcore_tbone_tform_mat)
		},
		{
			BBDEBUGDECL_FIELD,
			"kx",
			"*f",
			.field_offset=offsetof(struct openb3d_openb3dcore_TBone_obj,_openb3d_openb3dcore_tbone_kx)
		},
		{
			BBDEBUGDECL_FIELD,
			"ky",
			"*f",
			.field_offset=offsetof(struct openb3d_openb3dcore_TBone_obj,_openb3d_openb3dcore_tbone_ky)
		},
		{
			BBDEBUGDECL_FIELD,
			"kz",
			"*f",
			.field_offset=offsetof(struct openb3d_openb3dcore_TBone_obj,_openb3d_openb3dcore_tbone_kz)
		},
		{
			BBDEBUGDECL_FIELD,
			"kqx",
			"*f",
			.field_offset=offsetof(struct openb3d_openb3dcore_TBone_obj,_openb3d_openb3dcore_tbone_kqx)
		},
		{
			BBDEBUGDECL_FIELD,
			"kqy",
			"*f",
			.field_offset=offsetof(struct openb3d_openb3dcore_TBone_obj,_openb3d_openb3dcore_tbone_kqy)
		},
		{
			BBDEBUGDECL_FIELD,
			"kqz",
			"*f",
			.field_offset=offsetof(struct openb3d_openb3dcore_TBone_obj,_openb3d_openb3dcore_tbone_kqz)
		},
		{
			BBDEBUGDECL_FIELD,
			"kqw",
			"*f",
			.field_offset=offsetof(struct openb3d_openb3dcore_TBone_obj,_openb3d_openb3dcore_tbone_kqw)
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"New",
			"()i",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_TBone_New
		},
		{
			BBDEBUGDECL_TYPEFUNCTION,
			"CreateObject",
			"(*b):TBone",
			.func_ptr=(BBFuncPtr)&openb3d_openb3dcore_TBone_CreateObject_TTBone_pb
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"InitFields",
			"()i",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_TBone_InitFields
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"DebugFields",
			"(i,i)i",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_TBone_DebugFields_ii
		},
		{
			BBDEBUGDECL_TYPEFUNCTION,
			"NewBone",
			"():TBone",
			.func_ptr=(BBFuncPtr)&openb3d_openb3dcore_TBone_NewBone_TTBone
		},
		{
			BBDEBUGDECL_TYPEFUNCTION,
			"Create",
			"():TBone",
			.func_ptr=(BBFuncPtr)&openb3d_openb3dcore_TBone_Create_TTBone
		},
		{
			BBDEBUGDECL_TYPEFUNCTION,
			"CreateBone",
			"(:TMesh,:TEntity):TBone",
			.func_ptr=(BBFuncPtr)&openb3d_openb3dcore_TBone_CreateBone_TTBone_TTMeshTTEntity
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"FreeEntity",
			"()i",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_TBone_FreeEntity
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"CopyEntity",
			"(:TEntity):TBone",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_TBone_CopyEntity_TTEntity
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"Update",
			"()i",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_TBone_Update
		},
		{
			BBDEBUGDECL_END
		}
	}
};
struct BBClass_openb3d_openb3dcore_TBone openb3d_openb3dcore_TBone={
	&openb3d_openb3dcore_TEntity,
	bbObjectFree,
	(BBDebugScope*)&openb3d_openb3dcore_TBone_scope,
	sizeof(struct openb3d_openb3dcore_TBone_obj),
	(void (*)(BBOBJECT))_openb3d_openb3dcore_TBone_New,
	(void (*)(BBOBJECT))_openb3d_openb3dcore_TBone_Delete,
	bbObjectToString,
	bbObjectCompare,
	bbObjectSendMessage,
	0,
	0,
	offsetof(struct openb3d_openb3dcore_TBone_obj,_openb3d_openb3dcore_tbone_kqw) - offsetof(struct openb3d_openb3dcore_TBone_obj,_openb3d_openb3dcore_tbone_n_px) + sizeof(BBFLOAT*)
	,0
	,offsetof(struct openb3d_openb3dcore_TBone_obj,_openb3d_openb3dcore_tbone_n_px)
	,_openb3d_openb3dcore_TBone_CopyEntity_TTEntity
	,_openb3d_openb3dcore_TBone_Update
	,openb3d_openb3dcore_TEntity_FreeObject_i_pb
	,openb3d_openb3dcore_TEntity_GetObject_TTEntity_pb
	,openb3d_openb3dcore_TEntity_GetInstance_pb_TTEntity
	,openb3d_openb3dcore_TEntity_InitGlobals_i
	,_openb3d_openb3dcore_TBone_InitFields
	,_openb3d_openb3dcore_TBone_DebugFields_ii
	,_openb3d_openb3dcore_TEntity_AddList_TTList
	,openb3d_openb3dcore_TEntity_AddList__i_TTList
	,_openb3d_openb3dcore_TEntity_CopyList_TTList
	,openb3d_openb3dcore_TEntity_CopyList__i_TTList
	,_openb3d_openb3dcore_TEntity_EntityListAdd_TTListTObject
	,_openb3d_openb3dcore_TEntity_EntityListRemove_TTListTObject
	,_openb3d_openb3dcore_TEntity_AddAnimSeq_i
	,_openb3d_openb3dcore_TEntity_SetAnimKey_fiii
	,_openb3d_openb3dcore_TEntity_AlignToVector_fffif
	,_openb3d_openb3dcore_TEntity_GetString_pb
	,_openb3d_openb3dcore_TEntity_SetString_pbS
	,_openb3d_openb3dcore_TBone_FreeEntity
	,_openb3d_openb3dcore_TEntity_FreeEntityList
	,_openb3d_openb3dcore_TEntity_SetParent_TTEntity
	,_openb3d_openb3dcore_TEntity_PositionEntity_fffi
	,_openb3d_openb3dcore_TEntity_MoveEntity_fff
	,_openb3d_openb3dcore_TEntity_TranslateEntity_fffi
	,_openb3d_openb3dcore_TEntity_ScaleEntity_fffi
	,_openb3d_openb3dcore_TEntity_RotateEntity_fffi
	,_openb3d_openb3dcore_TEntity_TurnEntity_fffi
	,_openb3d_openb3dcore_TEntity_PointEntity_TTEntityf
	,_openb3d_openb3dcore_TEntity_LoadAnimSeq_S
	,_openb3d_openb3dcore_TEntity_ExtractAnimSeq_iii
	,_openb3d_openb3dcore_TEntity_Animate_ifii
	,_openb3d_openb3dcore_TEntity_SetAnimTime_fi
	,_openb3d_openb3dcore_TEntity_AnimSeq
	,_openb3d_openb3dcore_TEntity_AnimLength
	,_openb3d_openb3dcore_TEntity_AnimTime
	,_openb3d_openb3dcore_TEntity_Animating
	,_openb3d_openb3dcore_TEntity_EntityColor_fffi
	,_openb3d_openb3dcore_TEntity_EntityAlpha_f
	,_openb3d_openb3dcore_TEntity_EntityShininess_f
	,_openb3d_openb3dcore_TEntity_EntityTexture_TTTextureii
	,_openb3d_openb3dcore_TEntity_EntityBlend_i
	,_openb3d_openb3dcore_TEntity_EntityFX_i
	,_openb3d_openb3dcore_TEntity_PaintEntity_TTBrush
	,_openb3d_openb3dcore_TEntity_GetEntityBrush
	,_openb3d_openb3dcore_TEntity_EntityOrder_i
	,_openb3d_openb3dcore_TEntity_ShowEntity
	,_openb3d_openb3dcore_TEntity_HideEntity
	,_openb3d_openb3dcore_TEntity_NameEntity_S
	,_openb3d_openb3dcore_TEntity_EntityParent_TTEntityi
	,_openb3d_openb3dcore_TEntity_GetParent
	,_openb3d_openb3dcore_TEntity_EntityX_i
	,_openb3d_openb3dcore_TEntity_EntityY_i
	,_openb3d_openb3dcore_TEntity_EntityZ_i
	,_openb3d_openb3dcore_TEntity_EntityPitch_i
	,_openb3d_openb3dcore_TEntity_EntityYaw_i
	,_openb3d_openb3dcore_TEntity_EntityRoll_i
	,_openb3d_openb3dcore_TEntity_EntityClass
	,_openb3d_openb3dcore_TEntity_EntityName
	,_openb3d_openb3dcore_TEntity_CountChildren
	,_openb3d_openb3dcore_TEntity_GetChild_i
	,_openb3d_openb3dcore_TEntity_FindChild_S
	,_openb3d_openb3dcore_TEntity_EntityPick_f
	,_openb3d_openb3dcore_TEntity_LinePick_fffffff
	,_openb3d_openb3dcore_TEntity_EntityVisible_TTEntityTTEntity
	,_openb3d_openb3dcore_TEntity_EntityDistance_TTEntity
	,_openb3d_openb3dcore_TEntity_DeltaYaw_TTEntity
	,_openb3d_openb3dcore_TEntity_DeltaPitch_TTEntity
	,openb3d_openb3dcore_TEntity_TFormPoint_i_fffTTEntityTTEntity
	,openb3d_openb3dcore_TEntity_TFormVector_i_fffTTEntityTTEntity
	,openb3d_openb3dcore_TEntity_TFormNormal_i_fffTTEntityTTEntity
	,openb3d_openb3dcore_TEntity_TFormedX_f
	,openb3d_openb3dcore_TEntity_TFormedY_f
	,openb3d_openb3dcore_TEntity_TFormedZ_f
	,_openb3d_openb3dcore_TEntity_GetMatElement_ii
	,_openb3d_openb3dcore_TEntity_ResetEntity
	,_openb3d_openb3dcore_TEntity_EntityRadius_ff
	,_openb3d_openb3dcore_TEntity_EntityBox_ffffff
	,_openb3d_openb3dcore_TEntity_EntityType_ii
	,_openb3d_openb3dcore_TEntity_EntityPickMode_ii
	,_openb3d_openb3dcore_TEntity_EntityCollided_i
	,_openb3d_openb3dcore_TEntity_CountCollisions
	,_openb3d_openb3dcore_TEntity_CollisionX_i
	,_openb3d_openb3dcore_TEntity_CollisionY_i
	,_openb3d_openb3dcore_TEntity_CollisionZ_i
	,_openb3d_openb3dcore_TEntity_CollisionNX_i
	,_openb3d_openb3dcore_TEntity_CollisionNY_i
	,_openb3d_openb3dcore_TEntity_CollisionNZ_i
	,_openb3d_openb3dcore_TEntity_CollisionTime_i
	,_openb3d_openb3dcore_TEntity_CollisionEntity_i
	,_openb3d_openb3dcore_TEntity_CollisionSurface_i
	,_openb3d_openb3dcore_TEntity_CollisionTriangle_i
	,_openb3d_openb3dcore_TEntity_GetEntityType
	,_openb3d_openb3dcore_TEntity_MeshCullRadius_f
	,_openb3d_openb3dcore_TEntity_EntityScaleX_i
	,_openb3d_openb3dcore_TEntity_EntityScaleY_i
	,_openb3d_openb3dcore_TEntity_EntityScaleZ_i
	,_openb3d_openb3dcore_TEntity_Hidden
	,openb3d_openb3dcore_TEntity_CountAllChildren_i_TTEntityi
	,_openb3d_openb3dcore_TEntity_GetChildFromAll_iviTTEntity
	,_openb3d_openb3dcore_TEntity_ListParents_TTList
	,_openb3d_openb3dcore_TEntity_UpdateMat_b
	,_openb3d_openb3dcore_TEntity_AddParent_TTEntity
	,openb3d_openb3dcore_TEntity_UpdateChildren_i_TTEntity
	,_openb3d_openb3dcore_TEntity_EntityDistanceSquared_TTEntity
	,_openb3d_openb3dcore_TEntity_MQ_Update
	,_openb3d_openb3dcore_TEntity_MQ_GetInvMatrix_TTMatPtr
	,_openb3d_openb3dcore_TEntity_MQ_GetMatrix_TTMatPtr
	,_openb3d_openb3dcore_TEntity_MQ_GetScaleXYZ_vfvfvf
	,_openb3d_openb3dcore_TEntity_MQ_Turn_ffffi
	,openb3d_openb3dcore_TBone_CreateObject_TTBone_pb
	,openb3d_openb3dcore_TBone_NewBone_TTBone
	,openb3d_openb3dcore_TBone_Create_TTBone
	,openb3d_openb3dcore_TBone_CreateBone_TTBone_TTMeshTTEntity
};

void _openb3d_openb3dcore_TSurface_New(struct openb3d_openb3dcore_TSurface_obj* o) {
	bbObjectCtor((BBOBJECT)o);
	o->clas = &openb3d_openb3dcore_TSurface;
	((struct openb3d_openb3dcore_TSurface_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tsurface_no_verts = 0;
	((struct openb3d_openb3dcore_TSurface_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tsurface_no_tris = 0;
	((struct openb3d_openb3dcore_TSurface_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tsurface_vert_coords = 0;
	((struct openb3d_openb3dcore_TSurface_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tsurface_vert_norm = 0;
	((struct openb3d_openb3dcore_TSurface_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tsurface_vert_tex_coords0 = 0;
	((struct openb3d_openb3dcore_TSurface_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tsurface_vert_tex_coords1 = 0;
	((struct openb3d_openb3dcore_TSurface_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tsurface_vert_col = 0;
	((struct openb3d_openb3dcore_TSurface_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tsurface_tris = 0;
	((struct openb3d_openb3dcore_TSurface_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tsurface_vert_bone1_no = 0;
	((struct openb3d_openb3dcore_TSurface_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tsurface_vert_bone2_no = 0;
	((struct openb3d_openb3dcore_TSurface_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tsurface_vert_bone3_no = 0;
	((struct openb3d_openb3dcore_TSurface_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tsurface_vert_bone4_no = 0;
	((struct openb3d_openb3dcore_TSurface_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tsurface_vert_weight1 = 0;
	((struct openb3d_openb3dcore_TSurface_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tsurface_vert_weight2 = 0;
	((struct openb3d_openb3dcore_TSurface_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tsurface_vert_weight3 = 0;
	((struct openb3d_openb3dcore_TSurface_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tsurface_vert_weight4 = 0;
	((struct openb3d_openb3dcore_TSurface_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tsurface_brush = (struct openb3d_openb3dcore_TBrush_obj*)((struct openb3d_openb3dcore_TBrush_obj*)&bbNullObject);
	((struct openb3d_openb3dcore_TSurface_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tsurface_shadermat = (struct openb3d_openb3dcore_TShader_obj*)((struct openb3d_openb3dcore_TShader_obj*)&bbNullObject);
	((struct openb3d_openb3dcore_TSurface_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tsurface_vbo_id = 0;
	((struct openb3d_openb3dcore_TSurface_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tsurface_vert_array_size = 0;
	((struct openb3d_openb3dcore_TSurface_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tsurface_tri_array_size = 0;
	((struct openb3d_openb3dcore_TSurface_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tsurface_vmin = 0;
	((struct openb3d_openb3dcore_TSurface_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tsurface_vmax = 0;
	((struct openb3d_openb3dcore_TSurface_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tsurface_vbo_enabled = 0;
	((struct openb3d_openb3dcore_TSurface_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tsurface_reset_vbo = 0;
	((struct openb3d_openb3dcore_TSurface_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tsurface_alpha_enable = 0;
	((struct openb3d_openb3dcore_TSurface_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tsurface_instance = 0;
	((struct openb3d_openb3dcore_TSurface_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tsurface_exists = 0;
	struct BBDebugScope __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"New",
		{
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x800f81c4432c751, 372, 0};
	bbOnDebugEnterStm(&__stmt_0);
	if(openb3d_openb3dcore_TGlobal3D_Log_New!=0){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x800f81c4432c751, 373, 0};
		bbOnDebugEnterStm(&__stmt_0);
		brl_blitz_DebugLog((BBString*)&_s359);
		bbOnDebugLeaveScope();
	}
	bbOnDebugLeaveScope();
}
void _openb3d_openb3dcore_TSurface_Delete(struct openb3d_openb3dcore_TSurface_obj* o) {
	struct BBDebugScope_1 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"Delete",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TSurface",
				.var_address=&o
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x800f81c4432c751, 380, 0};
	bbOnDebugEnterStm(&__stmt_0);
	if(openb3d_openb3dcore_TGlobal3D_Log_Del!=0){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x800f81c4432c751, 381, 0};
		bbOnDebugEnterStm(&__stmt_0);
		brl_blitz_DebugLog((BBString*)&_s360);
		bbOnDebugLeaveScope();
	}
	bbOnDebugLeaveScope();
	bbObjectDtor((BBOBJECT)o);
}
struct openb3d_openb3dcore_TSurface_obj* openb3d_openb3dcore_TSurface_CreateObject_TTSurface_pb(BBBYTE* bbt_inst){
	struct openb3d_openb3dcore_TSurface_obj* bbt_obj=(struct openb3d_openb3dcore_TSurface_obj*)((struct openb3d_openb3dcore_TSurface_obj*)&bbNullObject);
	struct BBDebugScope_2 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"CreateObject",
		{
			{
				BBDEBUGDECL_LOCAL,
				"inst",
				"*b",
				.var_address=&bbt_inst
			},
			{
				BBDEBUGDECL_LOCAL,
				"obj",
				":TSurface",
				.var_address=&bbt_obj
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x800f81c4432c751, 61, 0};
	bbOnDebugEnterStm(&__stmt_0);
	if(bbt_inst==0){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x800f81c4432c751, 61, 0};
		bbOnDebugEnterStm(&__stmt_0);
		bbOnDebugLeaveScope();
		bbOnDebugLeaveScope();
		return (struct openb3d_openb3dcore_TSurface_obj*)&bbNullObject;
	}
	struct BBDebugStm __stmt_1 = {0x800f81c4432c751, 62, 0};
	bbOnDebugEnterStm(&__stmt_1);
	bbt_obj=(struct openb3d_openb3dcore_TSurface_obj*)(struct openb3d_openb3dcore_TSurface_obj*)bbObjectNew((BBClass *)&openb3d_openb3dcore_TSurface);
	struct BBDebugStm __stmt_2 = {0x800f81c4432c751, 64, 0};
	bbOnDebugEnterStm(&__stmt_2);
	((struct brl_map_ptrmap_TPtrMap_obj*)bbNullObjectTest((BBObject*)openb3d_openb3dcore_TSurface_surf_map))->clas->m_Insert_pbTObject((struct brl_map_ptrmap_TPtrMap_obj*)openb3d_openb3dcore_TSurface_surf_map,bbt_inst,(BBOBJECT)bbt_obj);
	struct BBDebugStm __stmt_3 = {0x800f81c4432c751, 68, 0};
	bbOnDebugEnterStm(&__stmt_3);
	((struct openb3d_openb3dcore_TSurface_obj*)bbNullObjectTest((BBObject*)bbt_obj))->_openb3d_openb3dcore_tsurface_instance =bbt_inst;
	struct BBDebugStm __stmt_4 = {0x800f81c4432c751, 69, 0};
	bbOnDebugEnterStm(&__stmt_4);
	((struct openb3d_openb3dcore_TSurface_obj*)bbNullObjectTest((BBObject*)bbt_obj))->clas->m_InitFields((struct openb3d_openb3dcore_TSurface_obj*)bbt_obj);
	struct BBDebugStm __stmt_5 = {0x800f81c4432c751, 70, 0};
	bbOnDebugEnterStm(&__stmt_5);
	bbOnDebugLeaveScope();
	return (struct openb3d_openb3dcore_TSurface_obj*)bbt_obj;
}
BBINT openb3d_openb3dcore_TSurface_FreeObject_i_pb(BBBYTE* bbt_inst){
	struct BBDebugScope_1 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"FreeObject",
		{
			{
				BBDEBUGDECL_LOCAL,
				"inst",
				"*b",
				.var_address=&bbt_inst
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x800f81c4432c751, 77, 0};
	bbOnDebugEnterStm(&__stmt_0);
	((struct brl_map_ptrmap_TPtrMap_obj*)bbNullObjectTest((BBObject*)openb3d_openb3dcore_TSurface_surf_map))->clas->m_Remove_pb((struct brl_map_ptrmap_TPtrMap_obj*)openb3d_openb3dcore_TSurface_surf_map,bbt_inst);
	bbOnDebugLeaveScope();
	return 0;
}
struct openb3d_openb3dcore_TSurface_obj* openb3d_openb3dcore_TSurface_GetObject_TTSurface_pb(BBBYTE* bbt_inst){
	struct BBDebugScope_1 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"GetObject",
		{
			{
				BBDEBUGDECL_LOCAL,
				"inst",
				"*b",
				.var_address=&bbt_inst
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x800f81c4432c751, 87, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbOnDebugLeaveScope();
	return (struct openb3d_openb3dcore_TSurface_obj*)((struct openb3d_openb3dcore_TSurface_obj*)bbObjectDowncast((BBOBJECT)((struct brl_map_ptrmap_TPtrMap_obj*)bbNullObjectTest((BBObject*)openb3d_openb3dcore_TSurface_surf_map))->clas->m_ValueForKey_pb((struct brl_map_ptrmap_TPtrMap_obj*)openb3d_openb3dcore_TSurface_surf_map,bbt_inst),(BBClass*)&openb3d_openb3dcore_TSurface));
}
BBBYTE* openb3d_openb3dcore_TSurface_GetInstance_pb_TTSurface(struct openb3d_openb3dcore_TSurface_obj* bbt_obj){
	struct BBDebugScope_1 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"GetInstance",
		{
			{
				BBDEBUGDECL_LOCAL,
				"obj",
				":TSurface",
				.var_address=&bbt_obj
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x800f81c4432c751, 96, 0};
	bbOnDebugEnterStm(&__stmt_0);
	if(((BBOBJECT)bbt_obj)==&bbNullObject){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x800f81c4432c751, 96, 0};
		bbOnDebugEnterStm(&__stmt_0);
		bbOnDebugLeaveScope();
		bbOnDebugLeaveScope();
		return 0;
	}
	struct BBDebugStm __stmt_1 = {0x800f81c4432c751, 97, 0};
	bbOnDebugEnterStm(&__stmt_1);
	bbOnDebugLeaveScope();
	return ((struct openb3d_openb3dcore_TSurface_obj*)bbNullObjectTest((BBObject*)bbt_obj))->_openb3d_openb3dcore_tsurface_instance ;
}
BBINT _openb3d_openb3dcore_TSurface_InitFields(struct openb3d_openb3dcore_TSurface_obj* o){
	((struct openb3d_openb3dcore_TSurface_obj*)bbNullObjectTest((BBObject*)o));
	BBBYTE* bbt_inst=0;
	struct BBDebugScope_2 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"InitFields",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TSurface",
				.var_address=&o
			},
			{
				BBDEBUGDECL_LOCAL,
				"inst",
				"*b",
				.var_address=&bbt_inst
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x800f81c4432c751, 104, 0};
	bbOnDebugEnterStm(&__stmt_0);
	((struct openb3d_openb3dcore_TSurface_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tsurface_tris =SurfaceUShort_(o->clas->f_GetInstance_pb_TTSurface((struct openb3d_openb3dcore_TSurface_obj*)o),8);
	struct BBDebugStm __stmt_1 = {0x800f81c4432c751, 107, 0};
	bbOnDebugEnterStm(&__stmt_1);
	((struct openb3d_openb3dcore_TSurface_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tsurface_no_verts =SurfaceInt_(o->clas->f_GetInstance_pb_TTSurface((struct openb3d_openb3dcore_TSurface_obj*)o),1);
	struct BBDebugStm __stmt_2 = {0x800f81c4432c751, 108, 0};
	bbOnDebugEnterStm(&__stmt_2);
	((struct openb3d_openb3dcore_TSurface_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tsurface_no_tris =SurfaceInt_(o->clas->f_GetInstance_pb_TTSurface((struct openb3d_openb3dcore_TSurface_obj*)o),2);
	struct BBDebugStm __stmt_3 = {0x800f81c4432c751, 109, 0};
	bbOnDebugEnterStm(&__stmt_3);
	((struct openb3d_openb3dcore_TSurface_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tsurface_vert_bone1_no =SurfaceInt_(o->clas->f_GetInstance_pb_TTSurface((struct openb3d_openb3dcore_TSurface_obj*)o),9);
	struct BBDebugStm __stmt_4 = {0x800f81c4432c751, 110, 0};
	bbOnDebugEnterStm(&__stmt_4);
	((struct openb3d_openb3dcore_TSurface_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tsurface_vert_bone2_no =SurfaceInt_(o->clas->f_GetInstance_pb_TTSurface((struct openb3d_openb3dcore_TSurface_obj*)o),10);
	struct BBDebugStm __stmt_5 = {0x800f81c4432c751, 111, 0};
	bbOnDebugEnterStm(&__stmt_5);
	((struct openb3d_openb3dcore_TSurface_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tsurface_vert_bone3_no =SurfaceInt_(o->clas->f_GetInstance_pb_TTSurface((struct openb3d_openb3dcore_TSurface_obj*)o),11);
	struct BBDebugStm __stmt_6 = {0x800f81c4432c751, 112, 0};
	bbOnDebugEnterStm(&__stmt_6);
	((struct openb3d_openb3dcore_TSurface_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tsurface_vert_bone4_no =SurfaceInt_(o->clas->f_GetInstance_pb_TTSurface((struct openb3d_openb3dcore_TSurface_obj*)o),12);
	struct BBDebugStm __stmt_7 = {0x800f81c4432c751, 113, 0};
	bbOnDebugEnterStm(&__stmt_7);
	((struct openb3d_openb3dcore_TSurface_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tsurface_vert_array_size =SurfaceInt_(o->clas->f_GetInstance_pb_TTSurface((struct openb3d_openb3dcore_TSurface_obj*)o),20);
	struct BBDebugStm __stmt_8 = {0x800f81c4432c751, 114, 0};
	bbOnDebugEnterStm(&__stmt_8);
	((struct openb3d_openb3dcore_TSurface_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tsurface_tri_array_size =SurfaceInt_(o->clas->f_GetInstance_pb_TTSurface((struct openb3d_openb3dcore_TSurface_obj*)o),21);
	struct BBDebugStm __stmt_9 = {0x800f81c4432c751, 115, 0};
	bbOnDebugEnterStm(&__stmt_9);
	((struct openb3d_openb3dcore_TSurface_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tsurface_vmin =SurfaceInt_(o->clas->f_GetInstance_pb_TTSurface((struct openb3d_openb3dcore_TSurface_obj*)o),22);
	struct BBDebugStm __stmt_10 = {0x800f81c4432c751, 116, 0};
	bbOnDebugEnterStm(&__stmt_10);
	((struct openb3d_openb3dcore_TSurface_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tsurface_vmax =SurfaceInt_(o->clas->f_GetInstance_pb_TTSurface((struct openb3d_openb3dcore_TSurface_obj*)o),23);
	struct BBDebugStm __stmt_11 = {0x800f81c4432c751, 117, 0};
	bbOnDebugEnterStm(&__stmt_11);
	((struct openb3d_openb3dcore_TSurface_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tsurface_vbo_enabled =SurfaceInt_(o->clas->f_GetInstance_pb_TTSurface((struct openb3d_openb3dcore_TSurface_obj*)o),24);
	struct BBDebugStm __stmt_12 = {0x800f81c4432c751, 118, 0};
	bbOnDebugEnterStm(&__stmt_12);
	((struct openb3d_openb3dcore_TSurface_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tsurface_reset_vbo =SurfaceInt_(o->clas->f_GetInstance_pb_TTSurface((struct openb3d_openb3dcore_TSurface_obj*)o),25);
	struct BBDebugStm __stmt_13 = {0x800f81c4432c751, 119, 0};
	bbOnDebugEnterStm(&__stmt_13);
	((struct openb3d_openb3dcore_TSurface_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tsurface_alpha_enable =SurfaceInt_(o->clas->f_GetInstance_pb_TTSurface((struct openb3d_openb3dcore_TSurface_obj*)o),26);
	struct BBDebugStm __stmt_14 = {0x800f81c4432c751, 122, 0};
	bbOnDebugEnterStm(&__stmt_14);
	((struct openb3d_openb3dcore_TSurface_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tsurface_vbo_id =SurfaceUInt_(o->clas->f_GetInstance_pb_TTSurface((struct openb3d_openb3dcore_TSurface_obj*)o),19);
	struct BBDebugStm __stmt_15 = {0x800f81c4432c751, 125, 0};
	bbOnDebugEnterStm(&__stmt_15);
	((struct openb3d_openb3dcore_TSurface_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tsurface_vert_coords =SurfaceFloat_(o->clas->f_GetInstance_pb_TTSurface((struct openb3d_openb3dcore_TSurface_obj*)o),3);
	struct BBDebugStm __stmt_16 = {0x800f81c4432c751, 126, 0};
	bbOnDebugEnterStm(&__stmt_16);
	((struct openb3d_openb3dcore_TSurface_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tsurface_vert_norm =SurfaceFloat_(o->clas->f_GetInstance_pb_TTSurface((struct openb3d_openb3dcore_TSurface_obj*)o),4);
	struct BBDebugStm __stmt_17 = {0x800f81c4432c751, 127, 0};
	bbOnDebugEnterStm(&__stmt_17);
	((struct openb3d_openb3dcore_TSurface_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tsurface_vert_tex_coords0 =SurfaceFloat_(o->clas->f_GetInstance_pb_TTSurface((struct openb3d_openb3dcore_TSurface_obj*)o),5);
	struct BBDebugStm __stmt_18 = {0x800f81c4432c751, 128, 0};
	bbOnDebugEnterStm(&__stmt_18);
	((struct openb3d_openb3dcore_TSurface_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tsurface_vert_tex_coords1 =SurfaceFloat_(o->clas->f_GetInstance_pb_TTSurface((struct openb3d_openb3dcore_TSurface_obj*)o),6);
	struct BBDebugStm __stmt_19 = {0x800f81c4432c751, 129, 0};
	bbOnDebugEnterStm(&__stmt_19);
	((struct openb3d_openb3dcore_TSurface_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tsurface_vert_col =SurfaceFloat_(o->clas->f_GetInstance_pb_TTSurface((struct openb3d_openb3dcore_TSurface_obj*)o),7);
	struct BBDebugStm __stmt_20 = {0x800f81c4432c751, 130, 0};
	bbOnDebugEnterStm(&__stmt_20);
	((struct openb3d_openb3dcore_TSurface_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tsurface_vert_weight1 =SurfaceFloat_(o->clas->f_GetInstance_pb_TTSurface((struct openb3d_openb3dcore_TSurface_obj*)o),13);
	struct BBDebugStm __stmt_21 = {0x800f81c4432c751, 131, 0};
	bbOnDebugEnterStm(&__stmt_21);
	((struct openb3d_openb3dcore_TSurface_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tsurface_vert_weight2 =SurfaceFloat_(o->clas->f_GetInstance_pb_TTSurface((struct openb3d_openb3dcore_TSurface_obj*)o),14);
	struct BBDebugStm __stmt_22 = {0x800f81c4432c751, 132, 0};
	bbOnDebugEnterStm(&__stmt_22);
	((struct openb3d_openb3dcore_TSurface_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tsurface_vert_weight3 =SurfaceFloat_(o->clas->f_GetInstance_pb_TTSurface((struct openb3d_openb3dcore_TSurface_obj*)o),15);
	struct BBDebugStm __stmt_23 = {0x800f81c4432c751, 133, 0};
	bbOnDebugEnterStm(&__stmt_23);
	((struct openb3d_openb3dcore_TSurface_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tsurface_vert_weight4 =SurfaceFloat_(o->clas->f_GetInstance_pb_TTSurface((struct openb3d_openb3dcore_TSurface_obj*)o),16);
	struct BBDebugStm __stmt_24 = {0x800f81c4432c751, 136, 0};
	bbOnDebugEnterStm(&__stmt_24);
	bbt_inst=SurfaceBrush_(o->clas->f_GetInstance_pb_TTSurface((struct openb3d_openb3dcore_TSurface_obj*)o),17);
	struct BBDebugStm __stmt_25 = {0x800f81c4432c751, 137, 0};
	bbOnDebugEnterStm(&__stmt_25);
	((struct openb3d_openb3dcore_TSurface_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tsurface_brush =(struct openb3d_openb3dcore_TBrush_obj*)openb3d_openb3dcore_TBrush_GetObject_TTBrush_pb(bbt_inst);
	struct BBDebugStm __stmt_26 = {0x800f81c4432c751, 138, 0};
	bbOnDebugEnterStm(&__stmt_26);
	if((((BBOBJECT)((struct openb3d_openb3dcore_TSurface_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tsurface_brush )==&bbNullObject) && (bbt_inst!=0)){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x800f81c4432c751, 138, 0};
		bbOnDebugEnterStm(&__stmt_0);
		((struct openb3d_openb3dcore_TSurface_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tsurface_brush =(struct openb3d_openb3dcore_TBrush_obj*)openb3d_openb3dcore_TBrush_CreateObject_TTBrush_pb(bbt_inst);
		bbOnDebugLeaveScope();
	}
	struct BBDebugStm __stmt_27 = {0x800f81c4432c751, 141, 0};
	bbOnDebugEnterStm(&__stmt_27);
	bbt_inst=SurfaceShader_(o->clas->f_GetInstance_pb_TTSurface((struct openb3d_openb3dcore_TSurface_obj*)o),18);
	struct BBDebugStm __stmt_28 = {0x800f81c4432c751, 142, 0};
	bbOnDebugEnterStm(&__stmt_28);
	((struct openb3d_openb3dcore_TSurface_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tsurface_shadermat =(struct openb3d_openb3dcore_TShader_obj*)openb3d_openb3dcore_TShader_GetObject_TTShader_pb(bbt_inst);
	struct BBDebugStm __stmt_29 = {0x800f81c4432c751, 144, 0};
	bbOnDebugEnterStm(&__stmt_29);
	((struct openb3d_openb3dcore_TSurface_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tsurface_exists =1;
	bbOnDebugLeaveScope();
	return 0;
}
BBINT _openb3d_openb3dcore_TSurface_DebugFields_ii(struct openb3d_openb3dcore_TSurface_obj* o,BBINT bbt_debug_subobjects,BBINT bbt_debug_base_types){
	((struct openb3d_openb3dcore_TSurface_obj*)bbNullObjectTest((BBObject*)o));
	BBSTRING bbt_pad=(&bbEmptyString);
	BBINT bbt_loop=0;
	struct BBDebugScope_5 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"DebugFields",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TSurface",
				.var_address=&o
			},
			{
				BBDEBUGDECL_LOCAL,
				"debug_subobjects",
				"i",
				.var_address=&bbt_debug_subobjects
			},
			{
				BBDEBUGDECL_LOCAL,
				"debug_base_types",
				"i",
				.var_address=&bbt_debug_base_types
			},
			{
				BBDEBUGDECL_LOCAL,
				"pad",
				"$",
				.var_address=&bbt_pad
			},
			{
				BBDEBUGDECL_LOCAL,
				"loop",
				"i",
				.var_address=&bbt_loop
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x800f81c4432c751, 150, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbt_pad=((BBString*)&bbEmptyString);
	struct BBDebugStm __stmt_1 = {0x800f81c4432c751, 151, 0};
	bbOnDebugEnterStm(&__stmt_1);
	bbt_loop=bbt_debug_subobjects;
	struct BBDebugStm __stmt_2 = {0x800f81c4432c751, 152, 0};
	bbOnDebugEnterStm(&__stmt_2);
	if(bbt_debug_base_types>bbt_debug_subobjects){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x800f81c4432c751, 152, 0};
		bbOnDebugEnterStm(&__stmt_0);
		bbt_loop=bbt_debug_base_types;
		bbOnDebugLeaveScope();
	}
	struct BBDebugStm __stmt_3 = {0x800f81c4432c751, 153, 0};
	bbOnDebugEnterStm(&__stmt_3);
	{
		BBINT bbt_i=1;
		BBINT bbt_=bbt_loop;
		for(;(bbt_i<bbt_);bbt_i=(bbt_i+1)){
			struct BBDebugScope_1 __scope = {
				BBDEBUGSCOPE_LOCALBLOCK,
				0,
				{
					{
						BBDEBUGDECL_LOCAL,
						"i",
						"i",
						.var_address=&bbt_i
					},
					{
						BBDEBUGDECL_END
					}
				}
			};
			bbOnDebugEnterScope((BBDebugScope *)&__scope);
			struct BBDebugStm __stmt_0 = {0x800f81c4432c751, 154, 0};
			bbOnDebugEnterStm(&__stmt_0);
			bbt_pad=bbStringConcat(bbt_pad,((BBString*)&_s0));
			bbOnDebugLeaveScope();
		}
	}
	struct BBDebugStm __stmt_4 = {0x800f81c4432c751, 156, 0};
	bbOnDebugEnterStm(&__stmt_4);
	if(bbt_debug_subobjects!=0){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x800f81c4432c751, 156, 0};
		bbOnDebugEnterStm(&__stmt_0);
		bbt_debug_subobjects+=1;
		bbOnDebugLeaveScope();
	}
	struct BBDebugStm __stmt_5 = {0x800f81c4432c751, 157, 0};
	bbOnDebugEnterStm(&__stmt_5);
	if(bbt_debug_base_types!=0){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x800f81c4432c751, 157, 0};
		bbOnDebugEnterStm(&__stmt_0);
		bbt_debug_base_types+=1;
		bbOnDebugLeaveScope();
	}
	struct BBDebugStm __stmt_6 = {0x800f81c4432c751, 158, 0};
	bbOnDebugEnterStm(&__stmt_6);
	brl_blitz_DebugLog(bbStringConcat(bbStringConcat(bbt_pad,((BBString*)&_s310)),openb3d_openb3dcore_StringPtr(o->clas->f_GetInstance_pb_TTSurface((struct openb3d_openb3dcore_TSurface_obj*)o))));
	struct BBDebugStm __stmt_7 = {0x800f81c4432c751, 161, 0};
	bbOnDebugEnterStm(&__stmt_7);
	brl_blitz_DebugLog(bbStringConcat(bbStringConcat(bbt_pad,((BBString*)&_s311)),openb3d_openb3dcore_StringPtr((BBBYTE*)((struct openb3d_openb3dcore_TSurface_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tsurface_tris )));
	struct BBDebugStm __stmt_8 = {0x800f81c4432c751, 162, 0};
	bbOnDebugEnterStm(&__stmt_8);
	if(((struct openb3d_openb3dcore_TSurface_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tsurface_tris !=0){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x800f81c4432c751, 162, 0};
		bbOnDebugEnterStm(&__stmt_0);
		brl_blitz_DebugLog(bbStringConcat(bbStringConcat(bbStringConcat(bbStringConcat(bbStringConcat(bbStringConcat(bbStringConcat(bbt_pad,((BBString*)&_s312)),bbStringFromInt(((struct openb3d_openb3dcore_TSurface_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tsurface_tris [0])),((BBString*)&_s313)),bbStringFromInt(((struct openb3d_openb3dcore_TSurface_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tsurface_tris [1])),((BBString*)&_s314)),bbStringFromInt(((struct openb3d_openb3dcore_TSurface_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tsurface_tris [2])),((BBString*)&_s315)));
		bbOnDebugLeaveScope();
	}
	struct BBDebugStm __stmt_9 = {0x800f81c4432c751, 165, 0};
	bbOnDebugEnterStm(&__stmt_9);
	if(((struct openb3d_openb3dcore_TSurface_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tsurface_no_verts !=0){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x800f81c4432c751, 165, 0};
		bbOnDebugEnterStm(&__stmt_0);
		brl_blitz_DebugLog(bbStringConcat(bbStringConcat(bbt_pad,((BBString*)&_s316)),bbStringFromInt(((struct openb3d_openb3dcore_TSurface_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tsurface_no_verts [0])));
		bbOnDebugLeaveScope();
	}else{
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x800f81c4432c751, 165, 0};
		bbOnDebugEnterStm(&__stmt_0);
		brl_blitz_DebugLog(bbStringConcat(bbt_pad,((BBString*)&_s317)));
		bbOnDebugLeaveScope();
	}
	struct BBDebugStm __stmt_10 = {0x800f81c4432c751, 166, 0};
	bbOnDebugEnterStm(&__stmt_10);
	if(((struct openb3d_openb3dcore_TSurface_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tsurface_no_tris !=0){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x800f81c4432c751, 166, 0};
		bbOnDebugEnterStm(&__stmt_0);
		brl_blitz_DebugLog(bbStringConcat(bbStringConcat(bbt_pad,((BBString*)&_s318)),bbStringFromInt(((struct openb3d_openb3dcore_TSurface_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tsurface_no_tris [0])));
		bbOnDebugLeaveScope();
	}else{
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x800f81c4432c751, 166, 0};
		bbOnDebugEnterStm(&__stmt_0);
		brl_blitz_DebugLog(bbStringConcat(bbt_pad,((BBString*)&_s319)));
		bbOnDebugLeaveScope();
	}
	struct BBDebugStm __stmt_11 = {0x800f81c4432c751, 168, 0};
	bbOnDebugEnterStm(&__stmt_11);
	brl_blitz_DebugLog(bbStringConcat(bbStringConcat(bbt_pad,((BBString*)&_s320)),openb3d_openb3dcore_StringPtr((BBBYTE*)((struct openb3d_openb3dcore_TSurface_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tsurface_vert_bone1_no )));
	struct BBDebugStm __stmt_12 = {0x800f81c4432c751, 169, 0};
	bbOnDebugEnterStm(&__stmt_12);
	if(((struct openb3d_openb3dcore_TSurface_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tsurface_vert_bone1_no !=0){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x800f81c4432c751, 169, 0};
		bbOnDebugEnterStm(&__stmt_0);
		brl_blitz_DebugLog(bbStringConcat(bbStringConcat(bbStringConcat(bbStringConcat(bbStringConcat(bbt_pad,((BBString*)&_s321)),bbStringFromInt(((struct openb3d_openb3dcore_TSurface_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tsurface_vert_bone1_no [0])),((BBString*)&_s313)),bbStringFromInt(((struct openb3d_openb3dcore_TSurface_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tsurface_vert_bone1_no [1])),((BBString*)&_s315)));
		bbOnDebugLeaveScope();
	}
	struct BBDebugStm __stmt_13 = {0x800f81c4432c751, 170, 0};
	bbOnDebugEnterStm(&__stmt_13);
	brl_blitz_DebugLog(bbStringConcat(bbStringConcat(bbt_pad,((BBString*)&_s322)),openb3d_openb3dcore_StringPtr((BBBYTE*)((struct openb3d_openb3dcore_TSurface_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tsurface_vert_bone2_no )));
	struct BBDebugStm __stmt_14 = {0x800f81c4432c751, 171, 0};
	bbOnDebugEnterStm(&__stmt_14);
	if(((struct openb3d_openb3dcore_TSurface_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tsurface_vert_bone2_no !=0){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x800f81c4432c751, 171, 0};
		bbOnDebugEnterStm(&__stmt_0);
		brl_blitz_DebugLog(bbStringConcat(bbStringConcat(bbStringConcat(bbStringConcat(bbStringConcat(bbt_pad,((BBString*)&_s323)),bbStringFromInt(((struct openb3d_openb3dcore_TSurface_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tsurface_vert_bone2_no [0])),((BBString*)&_s313)),bbStringFromInt(((struct openb3d_openb3dcore_TSurface_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tsurface_vert_bone2_no [1])),((BBString*)&_s315)));
		bbOnDebugLeaveScope();
	}
	struct BBDebugStm __stmt_15 = {0x800f81c4432c751, 172, 0};
	bbOnDebugEnterStm(&__stmt_15);
	brl_blitz_DebugLog(bbStringConcat(bbStringConcat(bbt_pad,((BBString*)&_s324)),openb3d_openb3dcore_StringPtr((BBBYTE*)((struct openb3d_openb3dcore_TSurface_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tsurface_vert_bone3_no )));
	struct BBDebugStm __stmt_16 = {0x800f81c4432c751, 173, 0};
	bbOnDebugEnterStm(&__stmt_16);
	if(((struct openb3d_openb3dcore_TSurface_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tsurface_vert_bone3_no !=0){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x800f81c4432c751, 173, 0};
		bbOnDebugEnterStm(&__stmt_0);
		brl_blitz_DebugLog(bbStringConcat(bbStringConcat(bbStringConcat(bbStringConcat(bbStringConcat(bbt_pad,((BBString*)&_s325)),bbStringFromInt(((struct openb3d_openb3dcore_TSurface_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tsurface_vert_bone3_no [0])),((BBString*)&_s313)),bbStringFromInt(((struct openb3d_openb3dcore_TSurface_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tsurface_vert_bone3_no [1])),((BBString*)&_s315)));
		bbOnDebugLeaveScope();
	}
	struct BBDebugStm __stmt_17 = {0x800f81c4432c751, 174, 0};
	bbOnDebugEnterStm(&__stmt_17);
	brl_blitz_DebugLog(bbStringConcat(bbStringConcat(bbt_pad,((BBString*)&_s326)),openb3d_openb3dcore_StringPtr((BBBYTE*)((struct openb3d_openb3dcore_TSurface_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tsurface_vert_bone4_no )));
	struct BBDebugStm __stmt_18 = {0x800f81c4432c751, 175, 0};
	bbOnDebugEnterStm(&__stmt_18);
	if(((struct openb3d_openb3dcore_TSurface_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tsurface_vert_bone4_no !=0){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x800f81c4432c751, 175, 0};
		bbOnDebugEnterStm(&__stmt_0);
		brl_blitz_DebugLog(bbStringConcat(bbStringConcat(bbStringConcat(bbStringConcat(bbStringConcat(bbt_pad,((BBString*)&_s327)),bbStringFromInt(((struct openb3d_openb3dcore_TSurface_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tsurface_vert_bone4_no [0])),((BBString*)&_s313)),bbStringFromInt(((struct openb3d_openb3dcore_TSurface_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tsurface_vert_bone4_no [1])),((BBString*)&_s315)));
		bbOnDebugLeaveScope();
	}
	struct BBDebugStm __stmt_19 = {0x800f81c4432c751, 177, 0};
	bbOnDebugEnterStm(&__stmt_19);
	if(((struct openb3d_openb3dcore_TSurface_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tsurface_vert_array_size !=0){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x800f81c4432c751, 177, 0};
		bbOnDebugEnterStm(&__stmt_0);
		brl_blitz_DebugLog(bbStringConcat(bbStringConcat(bbt_pad,((BBString*)&_s328)),bbStringFromInt(((struct openb3d_openb3dcore_TSurface_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tsurface_vert_array_size [0])));
		bbOnDebugLeaveScope();
	}else{
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x800f81c4432c751, 177, 0};
		bbOnDebugEnterStm(&__stmt_0);
		brl_blitz_DebugLog(bbStringConcat(bbt_pad,((BBString*)&_s329)));
		bbOnDebugLeaveScope();
	}
	struct BBDebugStm __stmt_20 = {0x800f81c4432c751, 178, 0};
	bbOnDebugEnterStm(&__stmt_20);
	if(((struct openb3d_openb3dcore_TSurface_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tsurface_tri_array_size !=0){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x800f81c4432c751, 178, 0};
		bbOnDebugEnterStm(&__stmt_0);
		brl_blitz_DebugLog(bbStringConcat(bbStringConcat(bbt_pad,((BBString*)&_s330)),bbStringFromInt(((struct openb3d_openb3dcore_TSurface_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tsurface_tri_array_size [0])));
		bbOnDebugLeaveScope();
	}else{
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x800f81c4432c751, 178, 0};
		bbOnDebugEnterStm(&__stmt_0);
		brl_blitz_DebugLog(bbStringConcat(bbt_pad,((BBString*)&_s331)));
		bbOnDebugLeaveScope();
	}
	struct BBDebugStm __stmt_21 = {0x800f81c4432c751, 179, 0};
	bbOnDebugEnterStm(&__stmt_21);
	if(((struct openb3d_openb3dcore_TSurface_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tsurface_vmin !=0){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x800f81c4432c751, 179, 0};
		bbOnDebugEnterStm(&__stmt_0);
		brl_blitz_DebugLog(bbStringConcat(bbStringConcat(bbt_pad,((BBString*)&_s332)),bbStringFromInt(((struct openb3d_openb3dcore_TSurface_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tsurface_vmin [0])));
		bbOnDebugLeaveScope();
	}else{
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x800f81c4432c751, 179, 0};
		bbOnDebugEnterStm(&__stmt_0);
		brl_blitz_DebugLog(bbStringConcat(bbt_pad,((BBString*)&_s333)));
		bbOnDebugLeaveScope();
	}
	struct BBDebugStm __stmt_22 = {0x800f81c4432c751, 180, 0};
	bbOnDebugEnterStm(&__stmt_22);
	if(((struct openb3d_openb3dcore_TSurface_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tsurface_vmax !=0){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x800f81c4432c751, 180, 0};
		bbOnDebugEnterStm(&__stmt_0);
		brl_blitz_DebugLog(bbStringConcat(bbStringConcat(bbt_pad,((BBString*)&_s334)),bbStringFromInt(((struct openb3d_openb3dcore_TSurface_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tsurface_vert_array_size [0])));
		bbOnDebugLeaveScope();
	}else{
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x800f81c4432c751, 180, 0};
		bbOnDebugEnterStm(&__stmt_0);
		brl_blitz_DebugLog(bbStringConcat(bbt_pad,((BBString*)&_s335)));
		bbOnDebugLeaveScope();
	}
	struct BBDebugStm __stmt_23 = {0x800f81c4432c751, 181, 0};
	bbOnDebugEnterStm(&__stmt_23);
	if(((struct openb3d_openb3dcore_TSurface_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tsurface_vbo_enabled !=0){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x800f81c4432c751, 181, 0};
		bbOnDebugEnterStm(&__stmt_0);
		brl_blitz_DebugLog(bbStringConcat(bbStringConcat(bbt_pad,((BBString*)&_s12)),bbStringFromInt(((struct openb3d_openb3dcore_TSurface_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tsurface_vert_array_size [0])));
		bbOnDebugLeaveScope();
	}else{
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x800f81c4432c751, 181, 0};
		bbOnDebugEnterStm(&__stmt_0);
		brl_blitz_DebugLog(bbStringConcat(bbt_pad,((BBString*)&_s13)));
		bbOnDebugLeaveScope();
	}
	struct BBDebugStm __stmt_24 = {0x800f81c4432c751, 182, 0};
	bbOnDebugEnterStm(&__stmt_24);
	if(((struct openb3d_openb3dcore_TSurface_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tsurface_reset_vbo !=0){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x800f81c4432c751, 182, 0};
		bbOnDebugEnterStm(&__stmt_0);
		brl_blitz_DebugLog(bbStringConcat(bbStringConcat(bbt_pad,((BBString*)&_s336)),bbStringFromInt(((struct openb3d_openb3dcore_TSurface_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tsurface_vert_array_size [0])));
		bbOnDebugLeaveScope();
	}else{
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x800f81c4432c751, 182, 0};
		bbOnDebugEnterStm(&__stmt_0);
		brl_blitz_DebugLog(bbStringConcat(bbt_pad,((BBString*)&_s337)));
		bbOnDebugLeaveScope();
	}
	struct BBDebugStm __stmt_25 = {0x800f81c4432c751, 183, 0};
	bbOnDebugEnterStm(&__stmt_25);
	if(((struct openb3d_openb3dcore_TSurface_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tsurface_alpha_enable !=0){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x800f81c4432c751, 183, 0};
		bbOnDebugEnterStm(&__stmt_0);
		brl_blitz_DebugLog(bbStringConcat(bbStringConcat(bbt_pad,((BBString*)&_s20)),bbStringFromInt(((struct openb3d_openb3dcore_TSurface_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tsurface_vert_array_size [0])));
		bbOnDebugLeaveScope();
	}else{
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x800f81c4432c751, 183, 0};
		bbOnDebugEnterStm(&__stmt_0);
		brl_blitz_DebugLog(bbStringConcat(bbt_pad,((BBString*)&_s21)));
		bbOnDebugLeaveScope();
	}
	struct BBDebugStm __stmt_26 = {0x800f81c4432c751, 186, 0};
	bbOnDebugEnterStm(&__stmt_26);
	brl_blitz_DebugLog(bbStringConcat(bbStringConcat(bbt_pad,((BBString*)&_s338)),openb3d_openb3dcore_StringPtr((BBBYTE*)((struct openb3d_openb3dcore_TSurface_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tsurface_vbo_id )));
	struct BBDebugStm __stmt_27 = {0x800f81c4432c751, 187, 0};
	bbOnDebugEnterStm(&__stmt_27);
	{
		BBINT bbt_id=0;
		for(;(bbt_id<=5);bbt_id=(bbt_id+1)){
			struct BBDebugScope_1 __scope = {
				BBDEBUGSCOPE_LOCALBLOCK,
				0,
				{
					{
						BBDEBUGDECL_LOCAL,
						"id",
						"i",
						.var_address=&bbt_id
					},
					{
						BBDEBUGDECL_END
					}
				}
			};
			bbOnDebugEnterScope((BBDebugScope *)&__scope);
			struct BBDebugStm __stmt_0 = {0x800f81c4432c751, 188, 0};
			bbOnDebugEnterStm(&__stmt_0);
			brl_blitz_DebugLog(bbStringConcat(bbStringConcat(bbStringConcat(bbStringConcat(bbt_pad,((BBString*)&_s339)),bbStringFromInt(bbt_id)),((BBString*)&_s163)),bbStringFromInt(((struct openb3d_openb3dcore_TSurface_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tsurface_vbo_id [bbt_id])));
			bbOnDebugLeaveScope();
		}
	}
	struct BBDebugStm __stmt_28 = {0x800f81c4432c751, 192, 0};
	bbOnDebugEnterStm(&__stmt_28);
	brl_blitz_DebugLog(bbStringConcat(bbStringConcat(bbt_pad,((BBString*)&_s340)),openb3d_openb3dcore_StringPtr((BBBYTE*)((struct openb3d_openb3dcore_TSurface_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tsurface_vert_coords )));
	struct BBDebugStm __stmt_29 = {0x800f81c4432c751, 193, 0};
	bbOnDebugEnterStm(&__stmt_29);
	if(((struct openb3d_openb3dcore_TSurface_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tsurface_vert_coords !=0){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x800f81c4432c751, 193, 0};
		bbOnDebugEnterStm(&__stmt_0);
		brl_blitz_DebugLog(bbStringConcat(bbStringConcat(bbStringConcat(bbStringConcat(bbStringConcat(bbStringConcat(bbStringConcat(bbt_pad,((BBString*)&_s341)),bbStringFromFloat(((struct openb3d_openb3dcore_TSurface_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tsurface_vert_coords [0])),((BBString*)&_s313)),bbStringFromFloat(((struct openb3d_openb3dcore_TSurface_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tsurface_vert_coords [1])),((BBString*)&_s314)),bbStringFromFloat(((struct openb3d_openb3dcore_TSurface_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tsurface_vert_coords [2])),((BBString*)&_s315)));
		bbOnDebugLeaveScope();
	}
	struct BBDebugStm __stmt_30 = {0x800f81c4432c751, 194, 0};
	bbOnDebugEnterStm(&__stmt_30);
	brl_blitz_DebugLog(bbStringConcat(bbStringConcat(bbt_pad,((BBString*)&_s342)),openb3d_openb3dcore_StringPtr((BBBYTE*)((struct openb3d_openb3dcore_TSurface_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tsurface_vert_norm )));
	struct BBDebugStm __stmt_31 = {0x800f81c4432c751, 195, 0};
	bbOnDebugEnterStm(&__stmt_31);
	if(((struct openb3d_openb3dcore_TSurface_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tsurface_vert_norm !=0){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x800f81c4432c751, 195, 0};
		bbOnDebugEnterStm(&__stmt_0);
		brl_blitz_DebugLog(bbStringConcat(bbStringConcat(bbStringConcat(bbStringConcat(bbStringConcat(bbStringConcat(bbStringConcat(bbt_pad,((BBString*)&_s343)),bbStringFromFloat(((struct openb3d_openb3dcore_TSurface_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tsurface_vert_norm [0])),((BBString*)&_s313)),bbStringFromFloat(((struct openb3d_openb3dcore_TSurface_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tsurface_vert_norm [1])),((BBString*)&_s314)),bbStringFromFloat(((struct openb3d_openb3dcore_TSurface_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tsurface_vert_norm [2])),((BBString*)&_s315)));
		bbOnDebugLeaveScope();
	}
	struct BBDebugStm __stmt_32 = {0x800f81c4432c751, 196, 0};
	bbOnDebugEnterStm(&__stmt_32);
	brl_blitz_DebugLog(bbStringConcat(bbStringConcat(bbt_pad,((BBString*)&_s344)),openb3d_openb3dcore_StringPtr((BBBYTE*)((struct openb3d_openb3dcore_TSurface_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tsurface_vert_col )));
	struct BBDebugStm __stmt_33 = {0x800f81c4432c751, 197, 0};
	bbOnDebugEnterStm(&__stmt_33);
	if(((struct openb3d_openb3dcore_TSurface_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tsurface_vert_col !=0){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x800f81c4432c751, 197, 0};
		bbOnDebugEnterStm(&__stmt_0);
		brl_blitz_DebugLog(bbStringConcat(bbStringConcat(bbStringConcat(bbStringConcat(bbStringConcat(bbStringConcat(bbStringConcat(bbt_pad,((BBString*)&_s345)),bbStringFromFloat(((struct openb3d_openb3dcore_TSurface_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tsurface_vert_col [0])),((BBString*)&_s313)),bbStringFromFloat(((struct openb3d_openb3dcore_TSurface_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tsurface_vert_col [1])),((BBString*)&_s314)),bbStringFromFloat(((struct openb3d_openb3dcore_TSurface_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tsurface_vert_col [2])),((BBString*)&_s315)));
		bbOnDebugLeaveScope();
	}
	struct BBDebugStm __stmt_34 = {0x800f81c4432c751, 198, 0};
	bbOnDebugEnterStm(&__stmt_34);
	brl_blitz_DebugLog(bbStringConcat(bbStringConcat(bbt_pad,((BBString*)&_s346)),openb3d_openb3dcore_StringPtr((BBBYTE*)((struct openb3d_openb3dcore_TSurface_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tsurface_vert_tex_coords0 )));
	struct BBDebugStm __stmt_35 = {0x800f81c4432c751, 199, 0};
	bbOnDebugEnterStm(&__stmt_35);
	if(((struct openb3d_openb3dcore_TSurface_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tsurface_vert_tex_coords0 !=0){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x800f81c4432c751, 199, 0};
		bbOnDebugEnterStm(&__stmt_0);
		brl_blitz_DebugLog(bbStringConcat(bbStringConcat(bbStringConcat(bbStringConcat(bbStringConcat(bbt_pad,((BBString*)&_s347)),bbStringFromFloat(((struct openb3d_openb3dcore_TSurface_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tsurface_vert_tex_coords0 [0])),((BBString*)&_s313)),bbStringFromFloat(((struct openb3d_openb3dcore_TSurface_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tsurface_vert_tex_coords0 [1])),((BBString*)&_s315)));
		bbOnDebugLeaveScope();
	}
	struct BBDebugStm __stmt_36 = {0x800f81c4432c751, 200, 0};
	bbOnDebugEnterStm(&__stmt_36);
	brl_blitz_DebugLog(bbStringConcat(bbStringConcat(bbt_pad,((BBString*)&_s348)),openb3d_openb3dcore_StringPtr((BBBYTE*)((struct openb3d_openb3dcore_TSurface_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tsurface_vert_tex_coords1 )));
	struct BBDebugStm __stmt_37 = {0x800f81c4432c751, 201, 0};
	bbOnDebugEnterStm(&__stmt_37);
	if(((struct openb3d_openb3dcore_TSurface_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tsurface_vert_tex_coords1 !=0){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x800f81c4432c751, 201, 0};
		bbOnDebugEnterStm(&__stmt_0);
		brl_blitz_DebugLog(bbStringConcat(bbStringConcat(bbStringConcat(bbStringConcat(bbStringConcat(bbt_pad,((BBString*)&_s349)),bbStringFromFloat(((struct openb3d_openb3dcore_TSurface_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tsurface_vert_tex_coords1 [0])),((BBString*)&_s313)),bbStringFromFloat(((struct openb3d_openb3dcore_TSurface_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tsurface_vert_tex_coords1 [1])),((BBString*)&_s315)));
		bbOnDebugLeaveScope();
	}
	struct BBDebugStm __stmt_38 = {0x800f81c4432c751, 203, 0};
	bbOnDebugEnterStm(&__stmt_38);
	brl_blitz_DebugLog(bbStringConcat(bbStringConcat(bbt_pad,((BBString*)&_s350)),openb3d_openb3dcore_StringPtr((BBBYTE*)((struct openb3d_openb3dcore_TSurface_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tsurface_vert_weight1 )));
	struct BBDebugStm __stmt_39 = {0x800f81c4432c751, 204, 0};
	bbOnDebugEnterStm(&__stmt_39);
	if(((struct openb3d_openb3dcore_TSurface_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tsurface_vert_weight1 !=0){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x800f81c4432c751, 204, 0};
		bbOnDebugEnterStm(&__stmt_0);
		brl_blitz_DebugLog(bbStringConcat(bbStringConcat(bbStringConcat(bbStringConcat(bbStringConcat(bbt_pad,((BBString*)&_s351)),bbStringFromFloat(((struct openb3d_openb3dcore_TSurface_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tsurface_vert_weight1 [0])),((BBString*)&_s313)),bbStringFromFloat(((struct openb3d_openb3dcore_TSurface_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tsurface_vert_weight1 [1])),((BBString*)&_s315)));
		bbOnDebugLeaveScope();
	}
	struct BBDebugStm __stmt_40 = {0x800f81c4432c751, 205, 0};
	bbOnDebugEnterStm(&__stmt_40);
	brl_blitz_DebugLog(bbStringConcat(bbStringConcat(bbt_pad,((BBString*)&_s352)),openb3d_openb3dcore_StringPtr((BBBYTE*)((struct openb3d_openb3dcore_TSurface_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tsurface_vert_weight2 )));
	struct BBDebugStm __stmt_41 = {0x800f81c4432c751, 206, 0};
	bbOnDebugEnterStm(&__stmt_41);
	if(((struct openb3d_openb3dcore_TSurface_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tsurface_vert_weight2 !=0){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x800f81c4432c751, 206, 0};
		bbOnDebugEnterStm(&__stmt_0);
		brl_blitz_DebugLog(bbStringConcat(bbStringConcat(bbStringConcat(bbStringConcat(bbStringConcat(bbt_pad,((BBString*)&_s353)),bbStringFromFloat(((struct openb3d_openb3dcore_TSurface_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tsurface_vert_weight2 [0])),((BBString*)&_s313)),bbStringFromFloat(((struct openb3d_openb3dcore_TSurface_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tsurface_vert_weight2 [1])),((BBString*)&_s315)));
		bbOnDebugLeaveScope();
	}
	struct BBDebugStm __stmt_42 = {0x800f81c4432c751, 207, 0};
	bbOnDebugEnterStm(&__stmt_42);
	brl_blitz_DebugLog(bbStringConcat(bbStringConcat(bbt_pad,((BBString*)&_s354)),openb3d_openb3dcore_StringPtr((BBBYTE*)((struct openb3d_openb3dcore_TSurface_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tsurface_vert_weight3 )));
	struct BBDebugStm __stmt_43 = {0x800f81c4432c751, 208, 0};
	bbOnDebugEnterStm(&__stmt_43);
	if(((struct openb3d_openb3dcore_TSurface_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tsurface_vert_weight3 !=0){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x800f81c4432c751, 208, 0};
		bbOnDebugEnterStm(&__stmt_0);
		brl_blitz_DebugLog(bbStringConcat(bbStringConcat(bbStringConcat(bbStringConcat(bbStringConcat(bbt_pad,((BBString*)&_s355)),bbStringFromFloat(((struct openb3d_openb3dcore_TSurface_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tsurface_vert_weight3 [0])),((BBString*)&_s313)),bbStringFromFloat(((struct openb3d_openb3dcore_TSurface_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tsurface_vert_weight3 [1])),((BBString*)&_s315)));
		bbOnDebugLeaveScope();
	}
	struct BBDebugStm __stmt_44 = {0x800f81c4432c751, 209, 0};
	bbOnDebugEnterStm(&__stmt_44);
	brl_blitz_DebugLog(bbStringConcat(bbStringConcat(bbt_pad,((BBString*)&_s356)),openb3d_openb3dcore_StringPtr((BBBYTE*)((struct openb3d_openb3dcore_TSurface_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tsurface_vert_weight4 )));
	struct BBDebugStm __stmt_45 = {0x800f81c4432c751, 210, 0};
	bbOnDebugEnterStm(&__stmt_45);
	if(((struct openb3d_openb3dcore_TSurface_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tsurface_vert_weight4 !=0){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x800f81c4432c751, 210, 0};
		bbOnDebugEnterStm(&__stmt_0);
		brl_blitz_DebugLog(bbStringConcat(bbStringConcat(bbStringConcat(bbStringConcat(bbStringConcat(bbt_pad,((BBString*)&_s357)),bbStringFromFloat(((struct openb3d_openb3dcore_TSurface_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tsurface_vert_weight4 [0])),((BBString*)&_s313)),bbStringFromFloat(((struct openb3d_openb3dcore_TSurface_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tsurface_vert_weight4 [1])),((BBString*)&_s315)));
		bbOnDebugLeaveScope();
	}
	struct BBDebugStm __stmt_46 = {0x800f81c4432c751, 213, 0};
	bbOnDebugEnterStm(&__stmt_46);
	brl_blitz_DebugLog(bbStringConcat(bbStringConcat(bbt_pad,((BBString*)&_s138)),openb3d_openb3dcore_StringPtr(openb3d_openb3dcore_TBrush_GetInstance_pb_TTBrush((struct openb3d_openb3dcore_TBrush_obj*)((struct openb3d_openb3dcore_TSurface_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tsurface_brush ))));
	struct BBDebugStm __stmt_47 = {0x800f81c4432c751, 214, 0};
	bbOnDebugEnterStm(&__stmt_47);
	if((bbt_debug_subobjects!=0) && (((BBOBJECT)((struct openb3d_openb3dcore_TSurface_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tsurface_brush )!=&bbNullObject)){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x800f81c4432c751, 214, 0};
		bbOnDebugEnterStm(&__stmt_0);
		((struct openb3d_openb3dcore_TBrush_obj*)bbNullObjectTest((BBObject*)((struct openb3d_openb3dcore_TSurface_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tsurface_brush ))->clas->m_DebugFields_ii((struct openb3d_openb3dcore_TBrush_obj*)((struct openb3d_openb3dcore_TSurface_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tsurface_brush ,bbt_debug_subobjects,bbt_debug_base_types);
		bbOnDebugLeaveScope();
	}
	struct BBDebugStm __stmt_48 = {0x800f81c4432c751, 217, 0};
	bbOnDebugEnterStm(&__stmt_48);
	brl_blitz_DebugLog(bbStringConcat(bbStringConcat(bbt_pad,((BBString*)&_s358)),openb3d_openb3dcore_StringPtr(openb3d_openb3dcore_TShader_GetInstance_pb_TTShader((struct openb3d_openb3dcore_TShader_obj*)((struct openb3d_openb3dcore_TSurface_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tsurface_shadermat ))));
	struct BBDebugStm __stmt_49 = {0x800f81c4432c751, 220, 0};
	bbOnDebugEnterStm(&__stmt_49);
	brl_blitz_DebugLog((BBString*)&bbEmptyString);
	bbOnDebugLeaveScope();
	return 0;
}
BBFLOAT* _openb3d_openb3dcore_TSurface_SurfaceFloatArrayCopy_iTTSurface(struct openb3d_openb3dcore_TSurface_obj* o,BBINT bbt_varid,struct openb3d_openb3dcore_TSurface_obj* bbt_surf){
	((struct openb3d_openb3dcore_TSurface_obj*)bbNullObjectTest((BBObject*)o));
	struct BBDebugScope_3 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"SurfaceFloatArrayCopy",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TSurface",
				.var_address=&o
			},
			{
				BBDEBUGDECL_LOCAL,
				"varid",
				"i",
				.var_address=&bbt_varid
			},
			{
				BBDEBUGDECL_LOCAL,
				"surf",
				":TSurface",
				.var_address=&bbt_surf
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x800f81c4432c751, 226, 0};
	bbOnDebugEnterStm(&__stmt_0);
	BBINT bbt_=bbt_varid;
	struct BBDebugStm __stmt_1 = {0x800f81c4432c751, 227, 0};
	bbOnDebugEnterStm(&__stmt_1);
	if(bbt_==3){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x800f81c4432c751, 228, 0};
		bbOnDebugEnterStm(&__stmt_0);
		bbOnDebugLeaveScope();
		bbOnDebugLeaveScope();
		return SurfaceCopyFloatArray_(o->clas->f_GetInstance_pb_TTSurface((struct openb3d_openb3dcore_TSurface_obj*)o),3,o->clas->f_GetInstance_pb_TTSurface((struct openb3d_openb3dcore_TSurface_obj*)bbt_surf));
	}else{
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x800f81c4432c751, 229, 0};
		bbOnDebugEnterStm(&__stmt_0);
		if(bbt_==4){
			struct BBDebugScope __scope = {
				BBDEBUGSCOPE_LOCALBLOCK,
				0,
				{
					{
						BBDEBUGDECL_END
					}
				}
			};
			bbOnDebugEnterScope((BBDebugScope *)&__scope);
			struct BBDebugStm __stmt_0 = {0x800f81c4432c751, 230, 0};
			bbOnDebugEnterStm(&__stmt_0);
			bbOnDebugLeaveScope();
			bbOnDebugLeaveScope();
			bbOnDebugLeaveScope();
			return SurfaceCopyFloatArray_(o->clas->f_GetInstance_pb_TTSurface((struct openb3d_openb3dcore_TSurface_obj*)o),4,o->clas->f_GetInstance_pb_TTSurface((struct openb3d_openb3dcore_TSurface_obj*)bbt_surf));
		}else{
			struct BBDebugScope __scope = {
				BBDEBUGSCOPE_LOCALBLOCK,
				0,
				{
					{
						BBDEBUGDECL_END
					}
				}
			};
			bbOnDebugEnterScope((BBDebugScope *)&__scope);
			struct BBDebugStm __stmt_0 = {0x800f81c4432c751, 231, 0};
			bbOnDebugEnterStm(&__stmt_0);
			if(bbt_==5){
				struct BBDebugScope __scope = {
					BBDEBUGSCOPE_LOCALBLOCK,
					0,
					{
						{
							BBDEBUGDECL_END
						}
					}
				};
				bbOnDebugEnterScope((BBDebugScope *)&__scope);
				struct BBDebugStm __stmt_0 = {0x800f81c4432c751, 232, 0};
				bbOnDebugEnterStm(&__stmt_0);
				bbOnDebugLeaveScope();
				bbOnDebugLeaveScope();
				bbOnDebugLeaveScope();
				bbOnDebugLeaveScope();
				return SurfaceCopyFloatArray_(o->clas->f_GetInstance_pb_TTSurface((struct openb3d_openb3dcore_TSurface_obj*)o),5,o->clas->f_GetInstance_pb_TTSurface((struct openb3d_openb3dcore_TSurface_obj*)bbt_surf));
			}else{
				struct BBDebugScope __scope = {
					BBDEBUGSCOPE_LOCALBLOCK,
					0,
					{
						{
							BBDEBUGDECL_END
						}
					}
				};
				bbOnDebugEnterScope((BBDebugScope *)&__scope);
				struct BBDebugStm __stmt_0 = {0x800f81c4432c751, 233, 0};
				bbOnDebugEnterStm(&__stmt_0);
				if(bbt_==6){
					struct BBDebugScope __scope = {
						BBDEBUGSCOPE_LOCALBLOCK,
						0,
						{
							{
								BBDEBUGDECL_END
							}
						}
					};
					bbOnDebugEnterScope((BBDebugScope *)&__scope);
					struct BBDebugStm __stmt_0 = {0x800f81c4432c751, 234, 0};
					bbOnDebugEnterStm(&__stmt_0);
					bbOnDebugLeaveScope();
					bbOnDebugLeaveScope();
					bbOnDebugLeaveScope();
					bbOnDebugLeaveScope();
					bbOnDebugLeaveScope();
					return SurfaceCopyFloatArray_(o->clas->f_GetInstance_pb_TTSurface((struct openb3d_openb3dcore_TSurface_obj*)o),6,o->clas->f_GetInstance_pb_TTSurface((struct openb3d_openb3dcore_TSurface_obj*)bbt_surf));
				}else{
					struct BBDebugScope __scope = {
						BBDEBUGSCOPE_LOCALBLOCK,
						0,
						{
							{
								BBDEBUGDECL_END
							}
						}
					};
					bbOnDebugEnterScope((BBDebugScope *)&__scope);
					struct BBDebugStm __stmt_0 = {0x800f81c4432c751, 235, 0};
					bbOnDebugEnterStm(&__stmt_0);
					if(bbt_==7){
						struct BBDebugScope __scope = {
							BBDEBUGSCOPE_LOCALBLOCK,
							0,
							{
								{
									BBDEBUGDECL_END
								}
							}
						};
						bbOnDebugEnterScope((BBDebugScope *)&__scope);
						struct BBDebugStm __stmt_0 = {0x800f81c4432c751, 236, 0};
						bbOnDebugEnterStm(&__stmt_0);
						bbOnDebugLeaveScope();
						bbOnDebugLeaveScope();
						bbOnDebugLeaveScope();
						bbOnDebugLeaveScope();
						bbOnDebugLeaveScope();
						bbOnDebugLeaveScope();
						return SurfaceCopyFloatArray_(o->clas->f_GetInstance_pb_TTSurface((struct openb3d_openb3dcore_TSurface_obj*)o),7,o->clas->f_GetInstance_pb_TTSurface((struct openb3d_openb3dcore_TSurface_obj*)bbt_surf));
					}
					bbOnDebugLeaveScope();
				}
				bbOnDebugLeaveScope();
			}
			bbOnDebugLeaveScope();
		}
		bbOnDebugLeaveScope();
	}
	bbOnDebugLeaveScope();
	return 0;
}
BBINT* _openb3d_openb3dcore_TSurface_SurfaceIntArrayResize_ii(struct openb3d_openb3dcore_TSurface_obj* o,BBINT bbt_varid,BBINT bbt_size){
	((struct openb3d_openb3dcore_TSurface_obj*)bbNullObjectTest((BBObject*)o));
	struct BBDebugScope_3 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"SurfaceIntArrayResize",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TSurface",
				.var_address=&o
			},
			{
				BBDEBUGDECL_LOCAL,
				"varid",
				"i",
				.var_address=&bbt_varid
			},
			{
				BBDEBUGDECL_LOCAL,
				"size",
				"i",
				.var_address=&bbt_size
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x800f81c4432c751, 243, 0};
	bbOnDebugEnterStm(&__stmt_0);
	BBINT bbt_=bbt_varid;
	struct BBDebugStm __stmt_1 = {0x800f81c4432c751, 244, 0};
	bbOnDebugEnterStm(&__stmt_1);
	if(bbt_==9){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x800f81c4432c751, 245, 0};
		bbOnDebugEnterStm(&__stmt_0);
		bbOnDebugLeaveScope();
		bbOnDebugLeaveScope();
		return SurfaceResizeIntArray_(o->clas->f_GetInstance_pb_TTSurface((struct openb3d_openb3dcore_TSurface_obj*)o),9,bbt_size);
	}else{
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x800f81c4432c751, 246, 0};
		bbOnDebugEnterStm(&__stmt_0);
		if(bbt_==10){
			struct BBDebugScope __scope = {
				BBDEBUGSCOPE_LOCALBLOCK,
				0,
				{
					{
						BBDEBUGDECL_END
					}
				}
			};
			bbOnDebugEnterScope((BBDebugScope *)&__scope);
			struct BBDebugStm __stmt_0 = {0x800f81c4432c751, 247, 0};
			bbOnDebugEnterStm(&__stmt_0);
			bbOnDebugLeaveScope();
			bbOnDebugLeaveScope();
			bbOnDebugLeaveScope();
			return SurfaceResizeIntArray_(o->clas->f_GetInstance_pb_TTSurface((struct openb3d_openb3dcore_TSurface_obj*)o),10,bbt_size);
		}else{
			struct BBDebugScope __scope = {
				BBDEBUGSCOPE_LOCALBLOCK,
				0,
				{
					{
						BBDEBUGDECL_END
					}
				}
			};
			bbOnDebugEnterScope((BBDebugScope *)&__scope);
			struct BBDebugStm __stmt_0 = {0x800f81c4432c751, 248, 0};
			bbOnDebugEnterStm(&__stmt_0);
			if(bbt_==11){
				struct BBDebugScope __scope = {
					BBDEBUGSCOPE_LOCALBLOCK,
					0,
					{
						{
							BBDEBUGDECL_END
						}
					}
				};
				bbOnDebugEnterScope((BBDebugScope *)&__scope);
				struct BBDebugStm __stmt_0 = {0x800f81c4432c751, 249, 0};
				bbOnDebugEnterStm(&__stmt_0);
				bbOnDebugLeaveScope();
				bbOnDebugLeaveScope();
				bbOnDebugLeaveScope();
				bbOnDebugLeaveScope();
				return SurfaceResizeIntArray_(o->clas->f_GetInstance_pb_TTSurface((struct openb3d_openb3dcore_TSurface_obj*)o),11,bbt_size);
			}else{
				struct BBDebugScope __scope = {
					BBDEBUGSCOPE_LOCALBLOCK,
					0,
					{
						{
							BBDEBUGDECL_END
						}
					}
				};
				bbOnDebugEnterScope((BBDebugScope *)&__scope);
				struct BBDebugStm __stmt_0 = {0x800f81c4432c751, 250, 0};
				bbOnDebugEnterStm(&__stmt_0);
				if(bbt_==12){
					struct BBDebugScope __scope = {
						BBDEBUGSCOPE_LOCALBLOCK,
						0,
						{
							{
								BBDEBUGDECL_END
							}
						}
					};
					bbOnDebugEnterScope((BBDebugScope *)&__scope);
					struct BBDebugStm __stmt_0 = {0x800f81c4432c751, 251, 0};
					bbOnDebugEnterStm(&__stmt_0);
					bbOnDebugLeaveScope();
					bbOnDebugLeaveScope();
					bbOnDebugLeaveScope();
					bbOnDebugLeaveScope();
					bbOnDebugLeaveScope();
					return SurfaceResizeIntArray_(o->clas->f_GetInstance_pb_TTSurface((struct openb3d_openb3dcore_TSurface_obj*)o),12,bbt_size);
				}
				bbOnDebugLeaveScope();
			}
			bbOnDebugLeaveScope();
		}
		bbOnDebugLeaveScope();
	}
	bbOnDebugLeaveScope();
	return 0;
}
BBFLOAT* _openb3d_openb3dcore_TSurface_SurfaceFloatArrayResize_ii(struct openb3d_openb3dcore_TSurface_obj* o,BBINT bbt_varid,BBINT bbt_size){
	((struct openb3d_openb3dcore_TSurface_obj*)bbNullObjectTest((BBObject*)o));
	struct BBDebugScope_3 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"SurfaceFloatArrayResize",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TSurface",
				.var_address=&o
			},
			{
				BBDEBUGDECL_LOCAL,
				"varid",
				"i",
				.var_address=&bbt_varid
			},
			{
				BBDEBUGDECL_LOCAL,
				"size",
				"i",
				.var_address=&bbt_size
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x800f81c4432c751, 258, 0};
	bbOnDebugEnterStm(&__stmt_0);
	BBINT bbt_=bbt_varid;
	struct BBDebugStm __stmt_1 = {0x800f81c4432c751, 259, 0};
	bbOnDebugEnterStm(&__stmt_1);
	if(bbt_==3){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x800f81c4432c751, 260, 0};
		bbOnDebugEnterStm(&__stmt_0);
		bbOnDebugLeaveScope();
		bbOnDebugLeaveScope();
		return SurfaceResizeFloatArray_(o->clas->f_GetInstance_pb_TTSurface((struct openb3d_openb3dcore_TSurface_obj*)o),3,bbt_size);
	}else{
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x800f81c4432c751, 261, 0};
		bbOnDebugEnterStm(&__stmt_0);
		if(bbt_==4){
			struct BBDebugScope __scope = {
				BBDEBUGSCOPE_LOCALBLOCK,
				0,
				{
					{
						BBDEBUGDECL_END
					}
				}
			};
			bbOnDebugEnterScope((BBDebugScope *)&__scope);
			struct BBDebugStm __stmt_0 = {0x800f81c4432c751, 262, 0};
			bbOnDebugEnterStm(&__stmt_0);
			bbOnDebugLeaveScope();
			bbOnDebugLeaveScope();
			bbOnDebugLeaveScope();
			return SurfaceResizeFloatArray_(o->clas->f_GetInstance_pb_TTSurface((struct openb3d_openb3dcore_TSurface_obj*)o),4,bbt_size);
		}else{
			struct BBDebugScope __scope = {
				BBDEBUGSCOPE_LOCALBLOCK,
				0,
				{
					{
						BBDEBUGDECL_END
					}
				}
			};
			bbOnDebugEnterScope((BBDebugScope *)&__scope);
			struct BBDebugStm __stmt_0 = {0x800f81c4432c751, 263, 0};
			bbOnDebugEnterStm(&__stmt_0);
			if(bbt_==5){
				struct BBDebugScope __scope = {
					BBDEBUGSCOPE_LOCALBLOCK,
					0,
					{
						{
							BBDEBUGDECL_END
						}
					}
				};
				bbOnDebugEnterScope((BBDebugScope *)&__scope);
				struct BBDebugStm __stmt_0 = {0x800f81c4432c751, 264, 0};
				bbOnDebugEnterStm(&__stmt_0);
				bbOnDebugLeaveScope();
				bbOnDebugLeaveScope();
				bbOnDebugLeaveScope();
				bbOnDebugLeaveScope();
				return SurfaceResizeFloatArray_(o->clas->f_GetInstance_pb_TTSurface((struct openb3d_openb3dcore_TSurface_obj*)o),5,bbt_size);
			}else{
				struct BBDebugScope __scope = {
					BBDEBUGSCOPE_LOCALBLOCK,
					0,
					{
						{
							BBDEBUGDECL_END
						}
					}
				};
				bbOnDebugEnterScope((BBDebugScope *)&__scope);
				struct BBDebugStm __stmt_0 = {0x800f81c4432c751, 265, 0};
				bbOnDebugEnterStm(&__stmt_0);
				if(bbt_==6){
					struct BBDebugScope __scope = {
						BBDEBUGSCOPE_LOCALBLOCK,
						0,
						{
							{
								BBDEBUGDECL_END
							}
						}
					};
					bbOnDebugEnterScope((BBDebugScope *)&__scope);
					struct BBDebugStm __stmt_0 = {0x800f81c4432c751, 266, 0};
					bbOnDebugEnterStm(&__stmt_0);
					bbOnDebugLeaveScope();
					bbOnDebugLeaveScope();
					bbOnDebugLeaveScope();
					bbOnDebugLeaveScope();
					bbOnDebugLeaveScope();
					return SurfaceResizeFloatArray_(o->clas->f_GetInstance_pb_TTSurface((struct openb3d_openb3dcore_TSurface_obj*)o),6,bbt_size);
				}else{
					struct BBDebugScope __scope = {
						BBDEBUGSCOPE_LOCALBLOCK,
						0,
						{
							{
								BBDEBUGDECL_END
							}
						}
					};
					bbOnDebugEnterScope((BBDebugScope *)&__scope);
					struct BBDebugStm __stmt_0 = {0x800f81c4432c751, 267, 0};
					bbOnDebugEnterStm(&__stmt_0);
					if(bbt_==7){
						struct BBDebugScope __scope = {
							BBDEBUGSCOPE_LOCALBLOCK,
							0,
							{
								{
									BBDEBUGDECL_END
								}
							}
						};
						bbOnDebugEnterScope((BBDebugScope *)&__scope);
						struct BBDebugStm __stmt_0 = {0x800f81c4432c751, 268, 0};
						bbOnDebugEnterStm(&__stmt_0);
						bbOnDebugLeaveScope();
						bbOnDebugLeaveScope();
						bbOnDebugLeaveScope();
						bbOnDebugLeaveScope();
						bbOnDebugLeaveScope();
						bbOnDebugLeaveScope();
						return SurfaceResizeFloatArray_(o->clas->f_GetInstance_pb_TTSurface((struct openb3d_openb3dcore_TSurface_obj*)o),7,bbt_size);
					}else{
						struct BBDebugScope __scope = {
							BBDEBUGSCOPE_LOCALBLOCK,
							0,
							{
								{
									BBDEBUGDECL_END
								}
							}
						};
						bbOnDebugEnterScope((BBDebugScope *)&__scope);
						struct BBDebugStm __stmt_0 = {0x800f81c4432c751, 269, 0};
						bbOnDebugEnterStm(&__stmt_0);
						if(bbt_==13){
							struct BBDebugScope __scope = {
								BBDEBUGSCOPE_LOCALBLOCK,
								0,
								{
									{
										BBDEBUGDECL_END
									}
								}
							};
							bbOnDebugEnterScope((BBDebugScope *)&__scope);
							struct BBDebugStm __stmt_0 = {0x800f81c4432c751, 270, 0};
							bbOnDebugEnterStm(&__stmt_0);
							bbOnDebugLeaveScope();
							bbOnDebugLeaveScope();
							bbOnDebugLeaveScope();
							bbOnDebugLeaveScope();
							bbOnDebugLeaveScope();
							bbOnDebugLeaveScope();
							bbOnDebugLeaveScope();
							return SurfaceResizeFloatArray_(o->clas->f_GetInstance_pb_TTSurface((struct openb3d_openb3dcore_TSurface_obj*)o),13,bbt_size);
						}else{
							struct BBDebugScope __scope = {
								BBDEBUGSCOPE_LOCALBLOCK,
								0,
								{
									{
										BBDEBUGDECL_END
									}
								}
							};
							bbOnDebugEnterScope((BBDebugScope *)&__scope);
							struct BBDebugStm __stmt_0 = {0x800f81c4432c751, 271, 0};
							bbOnDebugEnterStm(&__stmt_0);
							if(bbt_==14){
								struct BBDebugScope __scope = {
									BBDEBUGSCOPE_LOCALBLOCK,
									0,
									{
										{
											BBDEBUGDECL_END
										}
									}
								};
								bbOnDebugEnterScope((BBDebugScope *)&__scope);
								struct BBDebugStm __stmt_0 = {0x800f81c4432c751, 272, 0};
								bbOnDebugEnterStm(&__stmt_0);
								bbOnDebugLeaveScope();
								bbOnDebugLeaveScope();
								bbOnDebugLeaveScope();
								bbOnDebugLeaveScope();
								bbOnDebugLeaveScope();
								bbOnDebugLeaveScope();
								bbOnDebugLeaveScope();
								bbOnDebugLeaveScope();
								return SurfaceResizeFloatArray_(o->clas->f_GetInstance_pb_TTSurface((struct openb3d_openb3dcore_TSurface_obj*)o),14,bbt_size);
							}else{
								struct BBDebugScope __scope = {
									BBDEBUGSCOPE_LOCALBLOCK,
									0,
									{
										{
											BBDEBUGDECL_END
										}
									}
								};
								bbOnDebugEnterScope((BBDebugScope *)&__scope);
								struct BBDebugStm __stmt_0 = {0x800f81c4432c751, 273, 0};
								bbOnDebugEnterStm(&__stmt_0);
								if(bbt_==15){
									struct BBDebugScope __scope = {
										BBDEBUGSCOPE_LOCALBLOCK,
										0,
										{
											{
												BBDEBUGDECL_END
											}
										}
									};
									bbOnDebugEnterScope((BBDebugScope *)&__scope);
									struct BBDebugStm __stmt_0 = {0x800f81c4432c751, 274, 0};
									bbOnDebugEnterStm(&__stmt_0);
									bbOnDebugLeaveScope();
									bbOnDebugLeaveScope();
									bbOnDebugLeaveScope();
									bbOnDebugLeaveScope();
									bbOnDebugLeaveScope();
									bbOnDebugLeaveScope();
									bbOnDebugLeaveScope();
									bbOnDebugLeaveScope();
									bbOnDebugLeaveScope();
									return SurfaceResizeFloatArray_(o->clas->f_GetInstance_pb_TTSurface((struct openb3d_openb3dcore_TSurface_obj*)o),15,bbt_size);
								}else{
									struct BBDebugScope __scope = {
										BBDEBUGSCOPE_LOCALBLOCK,
										0,
										{
											{
												BBDEBUGDECL_END
											}
										}
									};
									bbOnDebugEnterScope((BBDebugScope *)&__scope);
									struct BBDebugStm __stmt_0 = {0x800f81c4432c751, 275, 0};
									bbOnDebugEnterStm(&__stmt_0);
									if(bbt_==16){
										struct BBDebugScope __scope = {
											BBDEBUGSCOPE_LOCALBLOCK,
											0,
											{
												{
													BBDEBUGDECL_END
												}
											}
										};
										bbOnDebugEnterScope((BBDebugScope *)&__scope);
										struct BBDebugStm __stmt_0 = {0x800f81c4432c751, 276, 0};
										bbOnDebugEnterStm(&__stmt_0);
										bbOnDebugLeaveScope();
										bbOnDebugLeaveScope();
										bbOnDebugLeaveScope();
										bbOnDebugLeaveScope();
										bbOnDebugLeaveScope();
										bbOnDebugLeaveScope();
										bbOnDebugLeaveScope();
										bbOnDebugLeaveScope();
										bbOnDebugLeaveScope();
										bbOnDebugLeaveScope();
										return SurfaceResizeFloatArray_(o->clas->f_GetInstance_pb_TTSurface((struct openb3d_openb3dcore_TSurface_obj*)o),16,bbt_size);
									}
									bbOnDebugLeaveScope();
								}
								bbOnDebugLeaveScope();
							}
							bbOnDebugLeaveScope();
						}
						bbOnDebugLeaveScope();
					}
					bbOnDebugLeaveScope();
				}
				bbOnDebugLeaveScope();
			}
			bbOnDebugLeaveScope();
		}
		bbOnDebugLeaveScope();
	}
	bbOnDebugLeaveScope();
	return 0;
}
BBINT _openb3d_openb3dcore_TSurface_SurfaceFloatArrayAdd_if(struct openb3d_openb3dcore_TSurface_obj* o,BBINT bbt_varid,BBFLOAT bbt_value){
	((struct openb3d_openb3dcore_TSurface_obj*)bbNullObjectTest((BBObject*)o));
	struct BBDebugScope_3 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"SurfaceFloatArrayAdd",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TSurface",
				.var_address=&o
			},
			{
				BBDEBUGDECL_LOCAL,
				"varid",
				"i",
				.var_address=&bbt_varid
			},
			{
				BBDEBUGDECL_LOCAL,
				"value",
				"f",
				.var_address=&bbt_value
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x800f81c4432c751, 283, 0};
	bbOnDebugEnterStm(&__stmt_0);
	BBINT bbt_=bbt_varid;
	struct BBDebugStm __stmt_1 = {0x800f81c4432c751, 284, 0};
	bbOnDebugEnterStm(&__stmt_1);
	if(bbt_==3){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x800f81c4432c751, 285, 0};
		bbOnDebugEnterStm(&__stmt_0);
		SurfaceVectorPushBackFloat_(o->clas->f_GetInstance_pb_TTSurface((struct openb3d_openb3dcore_TSurface_obj*)o),3,bbt_value);
		struct BBDebugStm __stmt_1 = {0x800f81c4432c751, 286, 0};
		bbOnDebugEnterStm(&__stmt_1);
		((struct openb3d_openb3dcore_TSurface_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tsurface_vert_coords =SurfaceFloat_(o->clas->f_GetInstance_pb_TTSurface((struct openb3d_openb3dcore_TSurface_obj*)o),3);
		bbOnDebugLeaveScope();
	}else{
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x800f81c4432c751, 287, 0};
		bbOnDebugEnterStm(&__stmt_0);
		if(bbt_==4){
			struct BBDebugScope __scope = {
				BBDEBUGSCOPE_LOCALBLOCK,
				0,
				{
					{
						BBDEBUGDECL_END
					}
				}
			};
			bbOnDebugEnterScope((BBDebugScope *)&__scope);
			struct BBDebugStm __stmt_0 = {0x800f81c4432c751, 288, 0};
			bbOnDebugEnterStm(&__stmt_0);
			SurfaceVectorPushBackFloat_(o->clas->f_GetInstance_pb_TTSurface((struct openb3d_openb3dcore_TSurface_obj*)o),4,bbt_value);
			struct BBDebugStm __stmt_1 = {0x800f81c4432c751, 289, 0};
			bbOnDebugEnterStm(&__stmt_1);
			((struct openb3d_openb3dcore_TSurface_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tsurface_vert_norm =SurfaceFloat_(o->clas->f_GetInstance_pb_TTSurface((struct openb3d_openb3dcore_TSurface_obj*)o),4);
			bbOnDebugLeaveScope();
		}else{
			struct BBDebugScope __scope = {
				BBDEBUGSCOPE_LOCALBLOCK,
				0,
				{
					{
						BBDEBUGDECL_END
					}
				}
			};
			bbOnDebugEnterScope((BBDebugScope *)&__scope);
			struct BBDebugStm __stmt_0 = {0x800f81c4432c751, 290, 0};
			bbOnDebugEnterStm(&__stmt_0);
			if(bbt_==5){
				struct BBDebugScope __scope = {
					BBDEBUGSCOPE_LOCALBLOCK,
					0,
					{
						{
							BBDEBUGDECL_END
						}
					}
				};
				bbOnDebugEnterScope((BBDebugScope *)&__scope);
				struct BBDebugStm __stmt_0 = {0x800f81c4432c751, 291, 0};
				bbOnDebugEnterStm(&__stmt_0);
				SurfaceVectorPushBackFloat_(o->clas->f_GetInstance_pb_TTSurface((struct openb3d_openb3dcore_TSurface_obj*)o),5,bbt_value);
				struct BBDebugStm __stmt_1 = {0x800f81c4432c751, 292, 0};
				bbOnDebugEnterStm(&__stmt_1);
				((struct openb3d_openb3dcore_TSurface_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tsurface_vert_tex_coords0 =SurfaceFloat_(o->clas->f_GetInstance_pb_TTSurface((struct openb3d_openb3dcore_TSurface_obj*)o),5);
				bbOnDebugLeaveScope();
			}else{
				struct BBDebugScope __scope = {
					BBDEBUGSCOPE_LOCALBLOCK,
					0,
					{
						{
							BBDEBUGDECL_END
						}
					}
				};
				bbOnDebugEnterScope((BBDebugScope *)&__scope);
				struct BBDebugStm __stmt_0 = {0x800f81c4432c751, 293, 0};
				bbOnDebugEnterStm(&__stmt_0);
				if(bbt_==6){
					struct BBDebugScope __scope = {
						BBDEBUGSCOPE_LOCALBLOCK,
						0,
						{
							{
								BBDEBUGDECL_END
							}
						}
					};
					bbOnDebugEnterScope((BBDebugScope *)&__scope);
					struct BBDebugStm __stmt_0 = {0x800f81c4432c751, 294, 0};
					bbOnDebugEnterStm(&__stmt_0);
					SurfaceVectorPushBackFloat_(o->clas->f_GetInstance_pb_TTSurface((struct openb3d_openb3dcore_TSurface_obj*)o),6,bbt_value);
					struct BBDebugStm __stmt_1 = {0x800f81c4432c751, 295, 0};
					bbOnDebugEnterStm(&__stmt_1);
					((struct openb3d_openb3dcore_TSurface_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tsurface_vert_tex_coords1 =SurfaceFloat_(o->clas->f_GetInstance_pb_TTSurface((struct openb3d_openb3dcore_TSurface_obj*)o),6);
					bbOnDebugLeaveScope();
				}else{
					struct BBDebugScope __scope = {
						BBDEBUGSCOPE_LOCALBLOCK,
						0,
						{
							{
								BBDEBUGDECL_END
							}
						}
					};
					bbOnDebugEnterScope((BBDebugScope *)&__scope);
					struct BBDebugStm __stmt_0 = {0x800f81c4432c751, 296, 0};
					bbOnDebugEnterStm(&__stmt_0);
					if(bbt_==7){
						struct BBDebugScope __scope = {
							BBDEBUGSCOPE_LOCALBLOCK,
							0,
							{
								{
									BBDEBUGDECL_END
								}
							}
						};
						bbOnDebugEnterScope((BBDebugScope *)&__scope);
						struct BBDebugStm __stmt_0 = {0x800f81c4432c751, 297, 0};
						bbOnDebugEnterStm(&__stmt_0);
						SurfaceVectorPushBackFloat_(o->clas->f_GetInstance_pb_TTSurface((struct openb3d_openb3dcore_TSurface_obj*)o),7,bbt_value);
						struct BBDebugStm __stmt_1 = {0x800f81c4432c751, 298, 0};
						bbOnDebugEnterStm(&__stmt_1);
						((struct openb3d_openb3dcore_TSurface_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tsurface_vert_col =SurfaceFloat_(o->clas->f_GetInstance_pb_TTSurface((struct openb3d_openb3dcore_TSurface_obj*)o),7);
						bbOnDebugLeaveScope();
					}else{
						struct BBDebugScope __scope = {
							BBDEBUGSCOPE_LOCALBLOCK,
							0,
							{
								{
									BBDEBUGDECL_END
								}
							}
						};
						bbOnDebugEnterScope((BBDebugScope *)&__scope);
						struct BBDebugStm __stmt_0 = {0x800f81c4432c751, 299, 0};
						bbOnDebugEnterStm(&__stmt_0);
						if(bbt_==13){
							struct BBDebugScope __scope = {
								BBDEBUGSCOPE_LOCALBLOCK,
								0,
								{
									{
										BBDEBUGDECL_END
									}
								}
							};
							bbOnDebugEnterScope((BBDebugScope *)&__scope);
							struct BBDebugStm __stmt_0 = {0x800f81c4432c751, 300, 0};
							bbOnDebugEnterStm(&__stmt_0);
							SurfaceVectorPushBackFloat_(o->clas->f_GetInstance_pb_TTSurface((struct openb3d_openb3dcore_TSurface_obj*)o),13,bbt_value);
							struct BBDebugStm __stmt_1 = {0x800f81c4432c751, 301, 0};
							bbOnDebugEnterStm(&__stmt_1);
							((struct openb3d_openb3dcore_TSurface_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tsurface_vert_weight1 =SurfaceFloat_(o->clas->f_GetInstance_pb_TTSurface((struct openb3d_openb3dcore_TSurface_obj*)o),13);
							bbOnDebugLeaveScope();
						}else{
							struct BBDebugScope __scope = {
								BBDEBUGSCOPE_LOCALBLOCK,
								0,
								{
									{
										BBDEBUGDECL_END
									}
								}
							};
							bbOnDebugEnterScope((BBDebugScope *)&__scope);
							struct BBDebugStm __stmt_0 = {0x800f81c4432c751, 302, 0};
							bbOnDebugEnterStm(&__stmt_0);
							if(bbt_==14){
								struct BBDebugScope __scope = {
									BBDEBUGSCOPE_LOCALBLOCK,
									0,
									{
										{
											BBDEBUGDECL_END
										}
									}
								};
								bbOnDebugEnterScope((BBDebugScope *)&__scope);
								struct BBDebugStm __stmt_0 = {0x800f81c4432c751, 303, 0};
								bbOnDebugEnterStm(&__stmt_0);
								SurfaceVectorPushBackFloat_(o->clas->f_GetInstance_pb_TTSurface((struct openb3d_openb3dcore_TSurface_obj*)o),14,bbt_value);
								struct BBDebugStm __stmt_1 = {0x800f81c4432c751, 304, 0};
								bbOnDebugEnterStm(&__stmt_1);
								((struct openb3d_openb3dcore_TSurface_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tsurface_vert_weight2 =SurfaceFloat_(o->clas->f_GetInstance_pb_TTSurface((struct openb3d_openb3dcore_TSurface_obj*)o),14);
								bbOnDebugLeaveScope();
							}else{
								struct BBDebugScope __scope = {
									BBDEBUGSCOPE_LOCALBLOCK,
									0,
									{
										{
											BBDEBUGDECL_END
										}
									}
								};
								bbOnDebugEnterScope((BBDebugScope *)&__scope);
								struct BBDebugStm __stmt_0 = {0x800f81c4432c751, 305, 0};
								bbOnDebugEnterStm(&__stmt_0);
								if(bbt_==15){
									struct BBDebugScope __scope = {
										BBDEBUGSCOPE_LOCALBLOCK,
										0,
										{
											{
												BBDEBUGDECL_END
											}
										}
									};
									bbOnDebugEnterScope((BBDebugScope *)&__scope);
									struct BBDebugStm __stmt_0 = {0x800f81c4432c751, 306, 0};
									bbOnDebugEnterStm(&__stmt_0);
									SurfaceVectorPushBackFloat_(o->clas->f_GetInstance_pb_TTSurface((struct openb3d_openb3dcore_TSurface_obj*)o),15,bbt_value);
									struct BBDebugStm __stmt_1 = {0x800f81c4432c751, 307, 0};
									bbOnDebugEnterStm(&__stmt_1);
									((struct openb3d_openb3dcore_TSurface_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tsurface_vert_weight3 =SurfaceFloat_(o->clas->f_GetInstance_pb_TTSurface((struct openb3d_openb3dcore_TSurface_obj*)o),15);
									bbOnDebugLeaveScope();
								}else{
									struct BBDebugScope __scope = {
										BBDEBUGSCOPE_LOCALBLOCK,
										0,
										{
											{
												BBDEBUGDECL_END
											}
										}
									};
									bbOnDebugEnterScope((BBDebugScope *)&__scope);
									struct BBDebugStm __stmt_0 = {0x800f81c4432c751, 308, 0};
									bbOnDebugEnterStm(&__stmt_0);
									if(bbt_==16){
										struct BBDebugScope __scope = {
											BBDEBUGSCOPE_LOCALBLOCK,
											0,
											{
												{
													BBDEBUGDECL_END
												}
											}
										};
										bbOnDebugEnterScope((BBDebugScope *)&__scope);
										struct BBDebugStm __stmt_0 = {0x800f81c4432c751, 309, 0};
										bbOnDebugEnterStm(&__stmt_0);
										SurfaceVectorPushBackFloat_(o->clas->f_GetInstance_pb_TTSurface((struct openb3d_openb3dcore_TSurface_obj*)o),16,bbt_value);
										struct BBDebugStm __stmt_1 = {0x800f81c4432c751, 310, 0};
										bbOnDebugEnterStm(&__stmt_1);
										((struct openb3d_openb3dcore_TSurface_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tsurface_vert_weight4 =SurfaceFloat_(o->clas->f_GetInstance_pb_TTSurface((struct openb3d_openb3dcore_TSurface_obj*)o),16);
										bbOnDebugLeaveScope();
									}
									bbOnDebugLeaveScope();
								}
								bbOnDebugLeaveScope();
							}
							bbOnDebugLeaveScope();
						}
						bbOnDebugLeaveScope();
					}
					bbOnDebugLeaveScope();
				}
				bbOnDebugLeaveScope();
			}
			bbOnDebugLeaveScope();
		}
		bbOnDebugLeaveScope();
	}
	bbOnDebugLeaveScope();
	return 0;
}
struct openb3d_openb3dcore_TSurface_obj* openb3d_openb3dcore_TSurface_NewSurface_TTSurface(){
	BBBYTE* bbt_inst=0;
	struct BBDebugScope_1 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"NewSurface",
		{
			{
				BBDEBUGDECL_LOCAL,
				"inst",
				"*b",
				.var_address=&bbt_inst
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x800f81c4432c751, 317, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbt_inst=NewSurface_();
	struct BBDebugStm __stmt_1 = {0x800f81c4432c751, 318, 0};
	bbOnDebugEnterStm(&__stmt_1);
	bbOnDebugLeaveScope();
	return (struct openb3d_openb3dcore_TSurface_obj*)openb3d_openb3dcore_TSurface_CreateObject_TTSurface_pb(bbt_inst);
}
struct openb3d_openb3dcore_TSurface_obj* openb3d_openb3dcore_TSurface_Create_TTSurface(){
	BBBYTE* bbt_inst=0;
	struct BBDebugScope_1 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"Create",
		{
			{
				BBDEBUGDECL_LOCAL,
				"inst",
				"*b",
				.var_address=&bbt_inst
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x800f81c4432c751, 324, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbt_inst=NewSurface_();
	struct BBDebugStm __stmt_1 = {0x800f81c4432c751, 325, 0};
	bbOnDebugEnterStm(&__stmt_1);
	bbOnDebugLeaveScope();
	return (struct openb3d_openb3dcore_TSurface_obj*)openb3d_openb3dcore_TSurface_CreateObject_TTSurface_pb(bbt_inst);
}
BBINT _openb3d_openb3dcore_TSurface_FreeSurface(struct openb3d_openb3dcore_TSurface_obj* o){
	((struct openb3d_openb3dcore_TSurface_obj*)bbNullObjectTest((BBObject*)o));
	struct BBDebugScope_1 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"FreeSurface",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TSurface",
				.var_address=&o
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x800f81c4432c751, 333, 0};
	bbOnDebugEnterStm(&__stmt_0);
	if(((struct openb3d_openb3dcore_TSurface_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tsurface_exists !=0){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x800f81c4432c751, 334, 0};
		bbOnDebugEnterStm(&__stmt_0);
		((struct openb3d_openb3dcore_TSurface_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tsurface_exists =0;
		struct BBDebugStm __stmt_1 = {0x800f81c4432c751, 335, 0};
		bbOnDebugEnterStm(&__stmt_1);
		FreeSurface_(o->clas->f_GetInstance_pb_TTSurface((struct openb3d_openb3dcore_TSurface_obj*)o));
		struct BBDebugStm __stmt_2 = {0x800f81c4432c751, 336, 0};
		bbOnDebugEnterStm(&__stmt_2);
		o->clas->f_FreeObject_i_pb(o->clas->f_GetInstance_pb_TTSurface((struct openb3d_openb3dcore_TSurface_obj*)o));
		bbOnDebugLeaveScope();
	}
	bbOnDebugLeaveScope();
	return 0;
}
BBINT _openb3d_openb3dcore_TSurface_UpdateTexCoords(struct openb3d_openb3dcore_TSurface_obj* o){
	((struct openb3d_openb3dcore_TSurface_obj*)bbNullObjectTest((BBObject*)o));
	struct BBDebugScope_1 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"UpdateTexCoords",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TSurface",
				.var_address=&o
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x800f81c4432c751, 345, 0};
	bbOnDebugEnterStm(&__stmt_0);
	UpdateTexCoords_(o->clas->f_GetInstance_pb_TTSurface((struct openb3d_openb3dcore_TSurface_obj*)o));
	struct BBDebugStm __stmt_1 = {0x800f81c4432c751, 346, 0};
	bbOnDebugEnterStm(&__stmt_1);
	((struct openb3d_openb3dcore_TSurface_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tsurface_vert_tex_coords1 =SurfaceFloat_(o->clas->f_GetInstance_pb_TTSurface((struct openb3d_openb3dcore_TSurface_obj*)o),6);
	bbOnDebugLeaveScope();
	return 0;
}
struct openb3d_openb3dcore_TBrush_obj* _openb3d_openb3dcore_TSurface_GetSurfaceBrush(struct openb3d_openb3dcore_TSurface_obj* o){
	((struct openb3d_openb3dcore_TSurface_obj*)bbNullObjectTest((BBObject*)o));
	BBBYTE* bbt_inst=0;
	struct openb3d_openb3dcore_TBrush_obj* bbt_brush=(struct openb3d_openb3dcore_TBrush_obj*)((struct openb3d_openb3dcore_TBrush_obj*)&bbNullObject);
	struct BBDebugScope_3 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"GetSurfaceBrush",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TSurface",
				.var_address=&o
			},
			{
				BBDEBUGDECL_LOCAL,
				"inst",
				"*b",
				.var_address=&bbt_inst
			},
			{
				BBDEBUGDECL_LOCAL,
				"brush",
				":TBrush",
				.var_address=&bbt_brush
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x800f81c4432c751, 352, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbt_inst=GetSurfaceBrush_(o->clas->f_GetInstance_pb_TTSurface((struct openb3d_openb3dcore_TSurface_obj*)o));
	struct BBDebugStm __stmt_1 = {0x800f81c4432c751, 353, 0};
	bbOnDebugEnterStm(&__stmt_1);
	bbt_brush=(struct openb3d_openb3dcore_TBrush_obj*)openb3d_openb3dcore_TBrush_GetObject_TTBrush_pb(bbt_inst);
	struct BBDebugStm __stmt_2 = {0x800f81c4432c751, 354, 0};
	bbOnDebugEnterStm(&__stmt_2);
	if((((BBOBJECT)bbt_brush)==&bbNullObject) && (bbt_inst!=0)){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x800f81c4432c751, 354, 0};
		bbOnDebugEnterStm(&__stmt_0);
		bbt_brush=(struct openb3d_openb3dcore_TBrush_obj*)openb3d_openb3dcore_TBrush_CreateObject_TTBrush_pb(bbt_inst);
		bbOnDebugLeaveScope();
	}
	struct BBDebugStm __stmt_3 = {0x800f81c4432c751, 355, 0};
	bbOnDebugEnterStm(&__stmt_3);
	bbOnDebugLeaveScope();
	return (struct openb3d_openb3dcore_TBrush_obj*)bbt_brush;
}
struct openb3d_openb3dcore_TSurface_obj* openb3d_openb3dcore_TSurface_CreateSurface_TTSurface_TTMeshTTBrush(struct openb3d_openb3dcore_TMesh_obj* bbt_mesh,struct openb3d_openb3dcore_TBrush_obj* bbt_brush){
	BBBYTE* bbt_inst=0;
	struct openb3d_openb3dcore_TSurface_obj* bbt_surf=(struct openb3d_openb3dcore_TSurface_obj*)((struct openb3d_openb3dcore_TSurface_obj*)&bbNullObject);
	struct BBDebugScope_4 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"CreateSurface",
		{
			{
				BBDEBUGDECL_LOCAL,
				"mesh",
				":TMesh",
				.var_address=&bbt_mesh
			},
			{
				BBDEBUGDECL_LOCAL,
				"brush",
				":TBrush",
				.var_address=&bbt_brush
			},
			{
				BBDEBUGDECL_LOCAL,
				"inst",
				"*b",
				.var_address=&bbt_inst
			},
			{
				BBDEBUGDECL_LOCAL,
				"surf",
				":TSurface",
				.var_address=&bbt_surf
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x800f81c4432c751, 361, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbt_inst=CreateSurface_(openb3d_openb3dcore_TEntity_GetInstance_pb_TTEntity((struct openb3d_openb3dcore_TEntity_obj*)((struct openb3d_openb3dcore_TEntity_obj*)bbObjectDowncast((BBOBJECT)bbt_mesh,(BBClass*)&openb3d_openb3dcore_TEntity))),openb3d_openb3dcore_TBrush_GetInstance_pb_TTBrush((struct openb3d_openb3dcore_TBrush_obj*)bbt_brush));
	struct BBDebugStm __stmt_1 = {0x800f81c4432c751, 362, 0};
	bbOnDebugEnterStm(&__stmt_1);
	bbt_surf=(struct openb3d_openb3dcore_TSurface_obj*)openb3d_openb3dcore_TSurface_CreateObject_TTSurface_pb(bbt_inst);
	struct BBDebugStm __stmt_2 = {0x800f81c4432c751, 363, 0};
	bbOnDebugEnterStm(&__stmt_2);
	((struct openb3d_openb3dcore_TMesh_obj*)bbNullObjectTest((BBObject*)bbt_mesh))->clas->m_CopyList_TTList((struct openb3d_openb3dcore_TMesh_obj*)bbt_mesh,(struct brl_linkedlist_TList_obj*)((struct openb3d_openb3dcore_TMesh_obj*)bbNullObjectTest((BBObject*)bbt_mesh))->_openb3d_openb3dcore_tmesh_surf_list );
	struct BBDebugStm __stmt_3 = {0x800f81c4432c751, 364, 0};
	bbOnDebugEnterStm(&__stmt_3);
	bbOnDebugLeaveScope();
	return (struct openb3d_openb3dcore_TSurface_obj*)bbt_surf;
}
BBINT _openb3d_openb3dcore_TSurface_PaintSurface_TTBrush(struct openb3d_openb3dcore_TSurface_obj* o,struct openb3d_openb3dcore_TBrush_obj* bbt_bru){
	((struct openb3d_openb3dcore_TSurface_obj*)bbNullObjectTest((BBObject*)o));
	struct BBDebugScope_2 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"PaintSurface",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TSurface",
				.var_address=&o
			},
			{
				BBDEBUGDECL_LOCAL,
				"bru",
				":TBrush",
				.var_address=&bbt_bru
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x800f81c4432c751, 388, 0};
	bbOnDebugEnterStm(&__stmt_0);
	PaintSurface_(o->clas->f_GetInstance_pb_TTSurface((struct openb3d_openb3dcore_TSurface_obj*)o),openb3d_openb3dcore_TBrush_GetInstance_pb_TTBrush((struct openb3d_openb3dcore_TBrush_obj*)bbt_bru));
	struct BBDebugStm __stmt_1 = {0x800f81c4432c751, 389, 0};
	bbOnDebugEnterStm(&__stmt_1);
	if(((BBOBJECT)((struct openb3d_openb3dcore_TSurface_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tsurface_brush )!=&bbNullObject){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x800f81c4432c751, 389, 0};
		bbOnDebugEnterStm(&__stmt_0);
		((struct openb3d_openb3dcore_TBrush_obj*)bbNullObjectTest((BBObject*)((struct openb3d_openb3dcore_TSurface_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tsurface_brush ))->clas->m_InitFields((struct openb3d_openb3dcore_TBrush_obj*)((struct openb3d_openb3dcore_TSurface_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tsurface_brush );
		bbOnDebugLeaveScope();
	}
	bbOnDebugLeaveScope();
	return 0;
}
BBINT _openb3d_openb3dcore_TSurface_ClearSurface_ii(struct openb3d_openb3dcore_TSurface_obj* o,BBINT bbt_clear_verts,BBINT bbt_clear_tris){
	((struct openb3d_openb3dcore_TSurface_obj*)bbNullObjectTest((BBObject*)o));
	struct BBDebugScope_3 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"ClearSurface",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TSurface",
				.var_address=&o
			},
			{
				BBDEBUGDECL_LOCAL,
				"clear_verts",
				"i",
				.var_address=&bbt_clear_verts
			},
			{
				BBDEBUGDECL_LOCAL,
				"clear_tris",
				"i",
				.var_address=&bbt_clear_tris
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x800f81c4432c751, 395, 0};
	bbOnDebugEnterStm(&__stmt_0);
	ClearSurface_(o->clas->f_GetInstance_pb_TTSurface((struct openb3d_openb3dcore_TSurface_obj*)o),bbt_clear_verts,bbt_clear_tris);
	bbOnDebugLeaveScope();
	return 0;
}
BBINT _openb3d_openb3dcore_TSurface_AddVertex_ffffff(struct openb3d_openb3dcore_TSurface_obj* o,BBFLOAT bbt_x,BBFLOAT bbt_y,BBFLOAT bbt_z,BBFLOAT bbt_u,BBFLOAT bbt_v,BBFLOAT bbt_w){
	((struct openb3d_openb3dcore_TSurface_obj*)bbNullObjectTest((BBObject*)o));
	BBINT bbt_no=0;
	struct BBDebugScope_8 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"AddVertex",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TSurface",
				.var_address=&o
			},
			{
				BBDEBUGDECL_LOCAL,
				"x",
				"f",
				.var_address=&bbt_x
			},
			{
				BBDEBUGDECL_LOCAL,
				"y",
				"f",
				.var_address=&bbt_y
			},
			{
				BBDEBUGDECL_LOCAL,
				"z",
				"f",
				.var_address=&bbt_z
			},
			{
				BBDEBUGDECL_LOCAL,
				"u",
				"f",
				.var_address=&bbt_u
			},
			{
				BBDEBUGDECL_LOCAL,
				"v",
				"f",
				.var_address=&bbt_v
			},
			{
				BBDEBUGDECL_LOCAL,
				"w",
				"f",
				.var_address=&bbt_w
			},
			{
				BBDEBUGDECL_LOCAL,
				"no",
				"i",
				.var_address=&bbt_no
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x800f81c4432c751, 401, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbt_no=AddVertex_(o->clas->f_GetInstance_pb_TTSurface((struct openb3d_openb3dcore_TSurface_obj*)o),bbt_x,bbt_y,bbt_z,bbt_u,bbt_v,bbt_w);
	struct BBDebugStm __stmt_1 = {0x800f81c4432c751, 402, 0};
	bbOnDebugEnterStm(&__stmt_1);
	((struct openb3d_openb3dcore_TSurface_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tsurface_vert_coords =SurfaceFloat_(o->clas->f_GetInstance_pb_TTSurface((struct openb3d_openb3dcore_TSurface_obj*)o),3);
	struct BBDebugStm __stmt_2 = {0x800f81c4432c751, 403, 0};
	bbOnDebugEnterStm(&__stmt_2);
	((struct openb3d_openb3dcore_TSurface_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tsurface_vert_norm =SurfaceFloat_(o->clas->f_GetInstance_pb_TTSurface((struct openb3d_openb3dcore_TSurface_obj*)o),4);
	struct BBDebugStm __stmt_3 = {0x800f81c4432c751, 404, 0};
	bbOnDebugEnterStm(&__stmt_3);
	((struct openb3d_openb3dcore_TSurface_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tsurface_vert_tex_coords0 =SurfaceFloat_(o->clas->f_GetInstance_pb_TTSurface((struct openb3d_openb3dcore_TSurface_obj*)o),5);
	struct BBDebugStm __stmt_4 = {0x800f81c4432c751, 405, 0};
	bbOnDebugEnterStm(&__stmt_4);
	((struct openb3d_openb3dcore_TSurface_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tsurface_vert_tex_coords1 =SurfaceFloat_(o->clas->f_GetInstance_pb_TTSurface((struct openb3d_openb3dcore_TSurface_obj*)o),6);
	struct BBDebugStm __stmt_5 = {0x800f81c4432c751, 406, 0};
	bbOnDebugEnterStm(&__stmt_5);
	((struct openb3d_openb3dcore_TSurface_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tsurface_vert_col =SurfaceFloat_(o->clas->f_GetInstance_pb_TTSurface((struct openb3d_openb3dcore_TSurface_obj*)o),7);
	struct BBDebugStm __stmt_6 = {0x800f81c4432c751, 407, 0};
	bbOnDebugEnterStm(&__stmt_6);
	bbOnDebugLeaveScope();
	return bbt_no;
}
BBINT _openb3d_openb3dcore_TSurface_AddTriangle_iii(struct openb3d_openb3dcore_TSurface_obj* o,BBINT bbt_v0,BBINT bbt_v1,BBINT bbt_v2){
	((struct openb3d_openb3dcore_TSurface_obj*)bbNullObjectTest((BBObject*)o));
	BBINT bbt_no=0;
	struct BBDebugScope_5 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"AddTriangle",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TSurface",
				.var_address=&o
			},
			{
				BBDEBUGDECL_LOCAL,
				"v0",
				"i",
				.var_address=&bbt_v0
			},
			{
				BBDEBUGDECL_LOCAL,
				"v1",
				"i",
				.var_address=&bbt_v1
			},
			{
				BBDEBUGDECL_LOCAL,
				"v2",
				"i",
				.var_address=&bbt_v2
			},
			{
				BBDEBUGDECL_LOCAL,
				"no",
				"i",
				.var_address=&bbt_no
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x800f81c4432c751, 413, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbt_no=AddTriangle_(o->clas->f_GetInstance_pb_TTSurface((struct openb3d_openb3dcore_TSurface_obj*)o),bbt_v0,bbt_v1,bbt_v2);
	struct BBDebugStm __stmt_1 = {0x800f81c4432c751, 414, 0};
	bbOnDebugEnterStm(&__stmt_1);
	((struct openb3d_openb3dcore_TSurface_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tsurface_tris =SurfaceUShort_(o->clas->f_GetInstance_pb_TTSurface((struct openb3d_openb3dcore_TSurface_obj*)o),8);
	struct BBDebugStm __stmt_2 = {0x800f81c4432c751, 415, 0};
	bbOnDebugEnterStm(&__stmt_2);
	bbOnDebugLeaveScope();
	return bbt_no;
}
BBINT _openb3d_openb3dcore_TSurface_CountVertices(struct openb3d_openb3dcore_TSurface_obj* o){
	((struct openb3d_openb3dcore_TSurface_obj*)bbNullObjectTest((BBObject*)o));
	struct BBDebugScope_1 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"CountVertices",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TSurface",
				.var_address=&o
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x800f81c4432c751, 421, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbOnDebugLeaveScope();
	return CountVertices_(o->clas->f_GetInstance_pb_TTSurface((struct openb3d_openb3dcore_TSurface_obj*)o));
}
BBINT _openb3d_openb3dcore_TSurface_CountTriangles(struct openb3d_openb3dcore_TSurface_obj* o){
	((struct openb3d_openb3dcore_TSurface_obj*)bbNullObjectTest((BBObject*)o));
	struct BBDebugScope_1 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"CountTriangles",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TSurface",
				.var_address=&o
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x800f81c4432c751, 427, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbOnDebugLeaveScope();
	return CountTriangles_(o->clas->f_GetInstance_pb_TTSurface((struct openb3d_openb3dcore_TSurface_obj*)o));
}
BBINT _openb3d_openb3dcore_TSurface_VertexCoords_ifff(struct openb3d_openb3dcore_TSurface_obj* o,BBINT bbt_vid,BBFLOAT bbt_x,BBFLOAT bbt_y,BBFLOAT bbt_z){
	((struct openb3d_openb3dcore_TSurface_obj*)bbNullObjectTest((BBObject*)o));
	struct BBDebugScope_5 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"VertexCoords",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TSurface",
				.var_address=&o
			},
			{
				BBDEBUGDECL_LOCAL,
				"vid",
				"i",
				.var_address=&bbt_vid
			},
			{
				BBDEBUGDECL_LOCAL,
				"x",
				"f",
				.var_address=&bbt_x
			},
			{
				BBDEBUGDECL_LOCAL,
				"y",
				"f",
				.var_address=&bbt_y
			},
			{
				BBDEBUGDECL_LOCAL,
				"z",
				"f",
				.var_address=&bbt_z
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x800f81c4432c751, 433, 0};
	bbOnDebugEnterStm(&__stmt_0);
	VertexCoords_(o->clas->f_GetInstance_pb_TTSurface((struct openb3d_openb3dcore_TSurface_obj*)o),bbt_vid,bbt_x,bbt_y,bbt_z);
	bbOnDebugLeaveScope();
	return 0;
}
BBINT _openb3d_openb3dcore_TSurface_VertexColor_iffff(struct openb3d_openb3dcore_TSurface_obj* o,BBINT bbt_vid,BBFLOAT bbt_r,BBFLOAT bbt_g,BBFLOAT bbt_b,BBFLOAT bbt_a){
	((struct openb3d_openb3dcore_TSurface_obj*)bbNullObjectTest((BBObject*)o));
	struct BBDebugScope_6 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"VertexColor",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TSurface",
				.var_address=&o
			},
			{
				BBDEBUGDECL_LOCAL,
				"vid",
				"i",
				.var_address=&bbt_vid
			},
			{
				BBDEBUGDECL_LOCAL,
				"r",
				"f",
				.var_address=&bbt_r
			},
			{
				BBDEBUGDECL_LOCAL,
				"g",
				"f",
				.var_address=&bbt_g
			},
			{
				BBDEBUGDECL_LOCAL,
				"b",
				"f",
				.var_address=&bbt_b
			},
			{
				BBDEBUGDECL_LOCAL,
				"a",
				"f",
				.var_address=&bbt_a
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x800f81c4432c751, 439, 0};
	bbOnDebugEnterStm(&__stmt_0);
	VertexColor_(o->clas->f_GetInstance_pb_TTSurface((struct openb3d_openb3dcore_TSurface_obj*)o),bbt_vid,bbt_r,bbt_g,bbt_b,bbt_a);
	bbOnDebugLeaveScope();
	return 0;
}
BBINT _openb3d_openb3dcore_TSurface_VertexNormal_ifff(struct openb3d_openb3dcore_TSurface_obj* o,BBINT bbt_vid,BBFLOAT bbt_nx,BBFLOAT bbt_ny,BBFLOAT bbt_nz){
	((struct openb3d_openb3dcore_TSurface_obj*)bbNullObjectTest((BBObject*)o));
	struct BBDebugScope_5 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"VertexNormal",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TSurface",
				.var_address=&o
			},
			{
				BBDEBUGDECL_LOCAL,
				"vid",
				"i",
				.var_address=&bbt_vid
			},
			{
				BBDEBUGDECL_LOCAL,
				"nx",
				"f",
				.var_address=&bbt_nx
			},
			{
				BBDEBUGDECL_LOCAL,
				"ny",
				"f",
				.var_address=&bbt_ny
			},
			{
				BBDEBUGDECL_LOCAL,
				"nz",
				"f",
				.var_address=&bbt_nz
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x800f81c4432c751, 445, 0};
	bbOnDebugEnterStm(&__stmt_0);
	VertexNormal_(o->clas->f_GetInstance_pb_TTSurface((struct openb3d_openb3dcore_TSurface_obj*)o),bbt_vid,bbt_nx,bbt_ny,bbt_nz);
	bbOnDebugLeaveScope();
	return 0;
}
BBINT _openb3d_openb3dcore_TSurface_VertexTexCoords_ifffi(struct openb3d_openb3dcore_TSurface_obj* o,BBINT bbt_vid,BBFLOAT bbt_u,BBFLOAT bbt_v,BBFLOAT bbt_w,BBINT bbt_coord_set){
	((struct openb3d_openb3dcore_TSurface_obj*)bbNullObjectTest((BBObject*)o));
	struct BBDebugScope_6 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"VertexTexCoords",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TSurface",
				.var_address=&o
			},
			{
				BBDEBUGDECL_LOCAL,
				"vid",
				"i",
				.var_address=&bbt_vid
			},
			{
				BBDEBUGDECL_LOCAL,
				"u",
				"f",
				.var_address=&bbt_u
			},
			{
				BBDEBUGDECL_LOCAL,
				"v",
				"f",
				.var_address=&bbt_v
			},
			{
				BBDEBUGDECL_LOCAL,
				"w",
				"f",
				.var_address=&bbt_w
			},
			{
				BBDEBUGDECL_LOCAL,
				"coord_set",
				"i",
				.var_address=&bbt_coord_set
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x800f81c4432c751, 451, 0};
	bbOnDebugEnterStm(&__stmt_0);
	VertexTexCoords_(o->clas->f_GetInstance_pb_TTSurface((struct openb3d_openb3dcore_TSurface_obj*)o),bbt_vid,bbt_u,bbt_v,bbt_w,bbt_coord_set);
	bbOnDebugLeaveScope();
	return 0;
}
BBFLOAT _openb3d_openb3dcore_TSurface_VertexX_i(struct openb3d_openb3dcore_TSurface_obj* o,BBINT bbt_vid){
	((struct openb3d_openb3dcore_TSurface_obj*)bbNullObjectTest((BBObject*)o));
	struct BBDebugScope_2 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"VertexX",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TSurface",
				.var_address=&o
			},
			{
				BBDEBUGDECL_LOCAL,
				"vid",
				"i",
				.var_address=&bbt_vid
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x800f81c4432c751, 457, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbOnDebugLeaveScope();
	return VertexX_(o->clas->f_GetInstance_pb_TTSurface((struct openb3d_openb3dcore_TSurface_obj*)o),bbt_vid);
}
BBFLOAT _openb3d_openb3dcore_TSurface_VertexY_i(struct openb3d_openb3dcore_TSurface_obj* o,BBINT bbt_vid){
	((struct openb3d_openb3dcore_TSurface_obj*)bbNullObjectTest((BBObject*)o));
	struct BBDebugScope_2 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"VertexY",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TSurface",
				.var_address=&o
			},
			{
				BBDEBUGDECL_LOCAL,
				"vid",
				"i",
				.var_address=&bbt_vid
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x800f81c4432c751, 463, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbOnDebugLeaveScope();
	return VertexY_(o->clas->f_GetInstance_pb_TTSurface((struct openb3d_openb3dcore_TSurface_obj*)o),bbt_vid);
}
BBFLOAT _openb3d_openb3dcore_TSurface_VertexZ_i(struct openb3d_openb3dcore_TSurface_obj* o,BBINT bbt_vid){
	((struct openb3d_openb3dcore_TSurface_obj*)bbNullObjectTest((BBObject*)o));
	struct BBDebugScope_2 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"VertexZ",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TSurface",
				.var_address=&o
			},
			{
				BBDEBUGDECL_LOCAL,
				"vid",
				"i",
				.var_address=&bbt_vid
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x800f81c4432c751, 469, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbOnDebugLeaveScope();
	return VertexZ_(o->clas->f_GetInstance_pb_TTSurface((struct openb3d_openb3dcore_TSurface_obj*)o),bbt_vid);
}
BBFLOAT _openb3d_openb3dcore_TSurface_VertexRed_i(struct openb3d_openb3dcore_TSurface_obj* o,BBINT bbt_vid){
	((struct openb3d_openb3dcore_TSurface_obj*)bbNullObjectTest((BBObject*)o));
	struct BBDebugScope_2 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"VertexRed",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TSurface",
				.var_address=&o
			},
			{
				BBDEBUGDECL_LOCAL,
				"vid",
				"i",
				.var_address=&bbt_vid
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x800f81c4432c751, 475, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbOnDebugLeaveScope();
	return VertexRed_(o->clas->f_GetInstance_pb_TTSurface((struct openb3d_openb3dcore_TSurface_obj*)o),bbt_vid);
}
BBFLOAT _openb3d_openb3dcore_TSurface_VertexGreen_i(struct openb3d_openb3dcore_TSurface_obj* o,BBINT bbt_vid){
	((struct openb3d_openb3dcore_TSurface_obj*)bbNullObjectTest((BBObject*)o));
	struct BBDebugScope_2 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"VertexGreen",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TSurface",
				.var_address=&o
			},
			{
				BBDEBUGDECL_LOCAL,
				"vid",
				"i",
				.var_address=&bbt_vid
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x800f81c4432c751, 481, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbOnDebugLeaveScope();
	return VertexGreen_(o->clas->f_GetInstance_pb_TTSurface((struct openb3d_openb3dcore_TSurface_obj*)o),bbt_vid);
}
BBFLOAT _openb3d_openb3dcore_TSurface_VertexBlue_i(struct openb3d_openb3dcore_TSurface_obj* o,BBINT bbt_vid){
	((struct openb3d_openb3dcore_TSurface_obj*)bbNullObjectTest((BBObject*)o));
	struct BBDebugScope_2 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"VertexBlue",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TSurface",
				.var_address=&o
			},
			{
				BBDEBUGDECL_LOCAL,
				"vid",
				"i",
				.var_address=&bbt_vid
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x800f81c4432c751, 487, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbOnDebugLeaveScope();
	return VertexBlue_(o->clas->f_GetInstance_pb_TTSurface((struct openb3d_openb3dcore_TSurface_obj*)o),bbt_vid);
}
BBFLOAT _openb3d_openb3dcore_TSurface_VertexAlpha_i(struct openb3d_openb3dcore_TSurface_obj* o,BBINT bbt_vid){
	((struct openb3d_openb3dcore_TSurface_obj*)bbNullObjectTest((BBObject*)o));
	struct BBDebugScope_2 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"VertexAlpha",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TSurface",
				.var_address=&o
			},
			{
				BBDEBUGDECL_LOCAL,
				"vid",
				"i",
				.var_address=&bbt_vid
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x800f81c4432c751, 493, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbOnDebugLeaveScope();
	return VertexAlpha_(o->clas->f_GetInstance_pb_TTSurface((struct openb3d_openb3dcore_TSurface_obj*)o),bbt_vid);
}
BBFLOAT _openb3d_openb3dcore_TSurface_VertexNX_i(struct openb3d_openb3dcore_TSurface_obj* o,BBINT bbt_vid){
	((struct openb3d_openb3dcore_TSurface_obj*)bbNullObjectTest((BBObject*)o));
	struct BBDebugScope_2 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"VertexNX",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TSurface",
				.var_address=&o
			},
			{
				BBDEBUGDECL_LOCAL,
				"vid",
				"i",
				.var_address=&bbt_vid
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x800f81c4432c751, 499, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbOnDebugLeaveScope();
	return VertexNX_(o->clas->f_GetInstance_pb_TTSurface((struct openb3d_openb3dcore_TSurface_obj*)o),bbt_vid);
}
BBFLOAT _openb3d_openb3dcore_TSurface_VertexNY_i(struct openb3d_openb3dcore_TSurface_obj* o,BBINT bbt_vid){
	((struct openb3d_openb3dcore_TSurface_obj*)bbNullObjectTest((BBObject*)o));
	struct BBDebugScope_2 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"VertexNY",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TSurface",
				.var_address=&o
			},
			{
				BBDEBUGDECL_LOCAL,
				"vid",
				"i",
				.var_address=&bbt_vid
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x800f81c4432c751, 505, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbOnDebugLeaveScope();
	return VertexNY_(o->clas->f_GetInstance_pb_TTSurface((struct openb3d_openb3dcore_TSurface_obj*)o),bbt_vid);
}
BBFLOAT _openb3d_openb3dcore_TSurface_VertexNZ_i(struct openb3d_openb3dcore_TSurface_obj* o,BBINT bbt_vid){
	((struct openb3d_openb3dcore_TSurface_obj*)bbNullObjectTest((BBObject*)o));
	struct BBDebugScope_2 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"VertexNZ",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TSurface",
				.var_address=&o
			},
			{
				BBDEBUGDECL_LOCAL,
				"vid",
				"i",
				.var_address=&bbt_vid
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x800f81c4432c751, 511, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbOnDebugLeaveScope();
	return VertexNZ_(o->clas->f_GetInstance_pb_TTSurface((struct openb3d_openb3dcore_TSurface_obj*)o),bbt_vid);
}
BBFLOAT _openb3d_openb3dcore_TSurface_VertexU_ii(struct openb3d_openb3dcore_TSurface_obj* o,BBINT bbt_vid,BBINT bbt_coord_set){
	((struct openb3d_openb3dcore_TSurface_obj*)bbNullObjectTest((BBObject*)o));
	struct BBDebugScope_3 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"VertexU",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TSurface",
				.var_address=&o
			},
			{
				BBDEBUGDECL_LOCAL,
				"vid",
				"i",
				.var_address=&bbt_vid
			},
			{
				BBDEBUGDECL_LOCAL,
				"coord_set",
				"i",
				.var_address=&bbt_coord_set
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x800f81c4432c751, 517, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbOnDebugLeaveScope();
	return VertexU_(o->clas->f_GetInstance_pb_TTSurface((struct openb3d_openb3dcore_TSurface_obj*)o),bbt_vid,bbt_coord_set);
}
BBFLOAT _openb3d_openb3dcore_TSurface_VertexV_ii(struct openb3d_openb3dcore_TSurface_obj* o,BBINT bbt_vid,BBINT bbt_coord_set){
	((struct openb3d_openb3dcore_TSurface_obj*)bbNullObjectTest((BBObject*)o));
	struct BBDebugScope_3 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"VertexV",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TSurface",
				.var_address=&o
			},
			{
				BBDEBUGDECL_LOCAL,
				"vid",
				"i",
				.var_address=&bbt_vid
			},
			{
				BBDEBUGDECL_LOCAL,
				"coord_set",
				"i",
				.var_address=&bbt_coord_set
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x800f81c4432c751, 523, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbOnDebugLeaveScope();
	return VertexV_(o->clas->f_GetInstance_pb_TTSurface((struct openb3d_openb3dcore_TSurface_obj*)o),bbt_vid,bbt_coord_set);
}
BBFLOAT _openb3d_openb3dcore_TSurface_VertexW_ii(struct openb3d_openb3dcore_TSurface_obj* o,BBINT bbt_vid,BBINT bbt_coord_set){
	((struct openb3d_openb3dcore_TSurface_obj*)bbNullObjectTest((BBObject*)o));
	struct BBDebugScope_3 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"VertexW",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TSurface",
				.var_address=&o
			},
			{
				BBDEBUGDECL_LOCAL,
				"vid",
				"i",
				.var_address=&bbt_vid
			},
			{
				BBDEBUGDECL_LOCAL,
				"coord_set",
				"i",
				.var_address=&bbt_coord_set
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x800f81c4432c751, 529, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbOnDebugLeaveScope();
	return VertexW_(o->clas->f_GetInstance_pb_TTSurface((struct openb3d_openb3dcore_TSurface_obj*)o),bbt_vid,bbt_coord_set);
}
BBINT _openb3d_openb3dcore_TSurface_TriangleVertex_ii(struct openb3d_openb3dcore_TSurface_obj* o,BBINT bbt_tri_no,BBINT bbt_corner){
	((struct openb3d_openb3dcore_TSurface_obj*)bbNullObjectTest((BBObject*)o));
	struct BBDebugScope_3 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"TriangleVertex",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TSurface",
				.var_address=&o
			},
			{
				BBDEBUGDECL_LOCAL,
				"tri_no",
				"i",
				.var_address=&bbt_tri_no
			},
			{
				BBDEBUGDECL_LOCAL,
				"corner",
				"i",
				.var_address=&bbt_corner
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x800f81c4432c751, 535, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbOnDebugLeaveScope();
	return TriangleVertex_(o->clas->f_GetInstance_pb_TTSurface((struct openb3d_openb3dcore_TSurface_obj*)o),bbt_tri_no,bbt_corner);
}
struct openb3d_openb3dcore_TSurface_obj* _openb3d_openb3dcore_TSurface_Copy(struct openb3d_openb3dcore_TSurface_obj* o){
	((struct openb3d_openb3dcore_TSurface_obj*)bbNullObjectTest((BBObject*)o));
	BBBYTE* bbt_inst=0;
	struct BBDebugScope_2 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"Copy",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TSurface",
				.var_address=&o
			},
			{
				BBDEBUGDECL_LOCAL,
				"inst",
				"*b",
				.var_address=&bbt_inst
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x800f81c4432c751, 543, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbt_inst=SurfaceCopy_(o->clas->f_GetInstance_pb_TTSurface((struct openb3d_openb3dcore_TSurface_obj*)o));
	struct BBDebugStm __stmt_1 = {0x800f81c4432c751, 544, 0};
	bbOnDebugEnterStm(&__stmt_1);
	bbOnDebugLeaveScope();
	return (struct openb3d_openb3dcore_TSurface_obj*)o->clas->f_CreateObject_TTSurface_pb(bbt_inst);
}
BBINT _openb3d_openb3dcore_TSurface_UpdateNormals(struct openb3d_openb3dcore_TSurface_obj* o){
	((struct openb3d_openb3dcore_TSurface_obj*)bbNullObjectTest((BBObject*)o));
	struct BBDebugScope_1 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"UpdateNormals",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TSurface",
				.var_address=&o
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x800f81c4432c751, 551, 0};
	bbOnDebugEnterStm(&__stmt_0);
	SurfaceUpdateNormals_(o->clas->f_GetInstance_pb_TTSurface((struct openb3d_openb3dcore_TSurface_obj*)o));
	bbOnDebugLeaveScope();
	return 0;
}
BBFLOAT _openb3d_openb3dcore_TSurface_TriangleNX_i(struct openb3d_openb3dcore_TSurface_obj* o,BBINT bbt_tri_no){
	((struct openb3d_openb3dcore_TSurface_obj*)bbNullObjectTest((BBObject*)o));
	struct BBDebugScope_2 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"TriangleNX",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TSurface",
				.var_address=&o
			},
			{
				BBDEBUGDECL_LOCAL,
				"tri_no",
				"i",
				.var_address=&bbt_tri_no
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x800f81c4432c751, 558, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbOnDebugLeaveScope();
	return TriangleNX_(o->clas->f_GetInstance_pb_TTSurface((struct openb3d_openb3dcore_TSurface_obj*)o),bbt_tri_no);
}
BBFLOAT _openb3d_openb3dcore_TSurface_TriangleNY_i(struct openb3d_openb3dcore_TSurface_obj* o,BBINT bbt_tri_no){
	((struct openb3d_openb3dcore_TSurface_obj*)bbNullObjectTest((BBObject*)o));
	struct BBDebugScope_2 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"TriangleNY",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TSurface",
				.var_address=&o
			},
			{
				BBDEBUGDECL_LOCAL,
				"tri_no",
				"i",
				.var_address=&bbt_tri_no
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x800f81c4432c751, 565, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbOnDebugLeaveScope();
	return TriangleNY_(o->clas->f_GetInstance_pb_TTSurface((struct openb3d_openb3dcore_TSurface_obj*)o),bbt_tri_no);
}
BBFLOAT _openb3d_openb3dcore_TSurface_TriangleNZ_i(struct openb3d_openb3dcore_TSurface_obj* o,BBINT bbt_tri_no){
	((struct openb3d_openb3dcore_TSurface_obj*)bbNullObjectTest((BBObject*)o));
	struct BBDebugScope_2 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"TriangleNZ",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TSurface",
				.var_address=&o
			},
			{
				BBDEBUGDECL_LOCAL,
				"tri_no",
				"i",
				.var_address=&bbt_tri_no
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x800f81c4432c751, 572, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbOnDebugLeaveScope();
	return TriangleNZ_(o->clas->f_GetInstance_pb_TTSurface((struct openb3d_openb3dcore_TSurface_obj*)o),bbt_tri_no);
}
BBINT _openb3d_openb3dcore_TSurface_UpdateVBO(struct openb3d_openb3dcore_TSurface_obj* o){
	((struct openb3d_openb3dcore_TSurface_obj*)bbNullObjectTest((BBObject*)o));
	struct BBDebugScope_1 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"UpdateVBO",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TSurface",
				.var_address=&o
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x800f81c4432c751, 579, 0};
	bbOnDebugEnterStm(&__stmt_0);
	UpdateVBO_(o->clas->f_GetInstance_pb_TTSurface((struct openb3d_openb3dcore_TSurface_obj*)o));
	bbOnDebugLeaveScope();
	return 0;
}
BBINT _openb3d_openb3dcore_TSurface_FreeVBO(struct openb3d_openb3dcore_TSurface_obj* o){
	((struct openb3d_openb3dcore_TSurface_obj*)bbNullObjectTest((BBObject*)o));
	struct BBDebugScope_1 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"FreeVBO",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TSurface",
				.var_address=&o
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x800f81c4432c751, 586, 0};
	bbOnDebugEnterStm(&__stmt_0);
	FreeVBO_(o->clas->f_GetInstance_pb_TTSurface((struct openb3d_openb3dcore_TSurface_obj*)o));
	bbOnDebugLeaveScope();
	return 0;
}
BBINT _openb3d_openb3dcore_TSurface_RemoveTri_i(struct openb3d_openb3dcore_TSurface_obj* o,BBINT bbt_tri){
	((struct openb3d_openb3dcore_TSurface_obj*)bbNullObjectTest((BBObject*)o));
	struct BBDebugScope_2 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"RemoveTri",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TSurface",
				.var_address=&o
			},
			{
				BBDEBUGDECL_LOCAL,
				"tri",
				"i",
				.var_address=&bbt_tri
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x800f81c4432c751, 593, 0};
	bbOnDebugEnterStm(&__stmt_0);
	RemoveTri_(o->clas->f_GetInstance_pb_TTSurface((struct openb3d_openb3dcore_TSurface_obj*)o),bbt_tri);
	struct BBDebugStm __stmt_1 = {0x800f81c4432c751, 594, 0};
	bbOnDebugEnterStm(&__stmt_1);
	((struct openb3d_openb3dcore_TSurface_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tsurface_tris =SurfaceUShort_(o->clas->f_GetInstance_pb_TTSurface((struct openb3d_openb3dcore_TSurface_obj*)o),8);
	bbOnDebugLeaveScope();
	return 0;
}
BBINT _openb3d_openb3dcore_TSurface_SurfaceColor_ffff(struct openb3d_openb3dcore_TSurface_obj* o,BBFLOAT bbt_r,BBFLOAT bbt_g,BBFLOAT bbt_b,BBFLOAT bbt_a){
	((struct openb3d_openb3dcore_TSurface_obj*)bbNullObjectTest((BBObject*)o));
	struct BBDebugScope_5 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"SurfaceColor",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TSurface",
				.var_address=&o
			},
			{
				BBDEBUGDECL_LOCAL,
				"r",
				"f",
				.var_address=&bbt_r
			},
			{
				BBDEBUGDECL_LOCAL,
				"g",
				"f",
				.var_address=&bbt_g
			},
			{
				BBDEBUGDECL_LOCAL,
				"b",
				"f",
				.var_address=&bbt_b
			},
			{
				BBDEBUGDECL_LOCAL,
				"a",
				"f",
				.var_address=&bbt_a
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x800f81c4432c751, 601, 0};
	bbOnDebugEnterStm(&__stmt_0);
	SurfaceColor_(o->clas->f_GetInstance_pb_TTSurface((struct openb3d_openb3dcore_TSurface_obj*)o),bbt_r,bbt_g,bbt_b,bbt_a);
	bbOnDebugLeaveScope();
	return 0;
}
BBINT _openb3d_openb3dcore_TSurface_SurfaceRed_f(struct openb3d_openb3dcore_TSurface_obj* o,BBFLOAT bbt_r){
	((struct openb3d_openb3dcore_TSurface_obj*)bbNullObjectTest((BBObject*)o));
	struct BBDebugScope_2 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"SurfaceRed",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TSurface",
				.var_address=&o
			},
			{
				BBDEBUGDECL_LOCAL,
				"r",
				"f",
				.var_address=&bbt_r
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x800f81c4432c751, 608, 0};
	bbOnDebugEnterStm(&__stmt_0);
	SurfaceRed_(o->clas->f_GetInstance_pb_TTSurface((struct openb3d_openb3dcore_TSurface_obj*)o),bbt_r);
	bbOnDebugLeaveScope();
	return 0;
}
BBINT _openb3d_openb3dcore_TSurface_SurfaceGreen_f(struct openb3d_openb3dcore_TSurface_obj* o,BBFLOAT bbt_g){
	((struct openb3d_openb3dcore_TSurface_obj*)bbNullObjectTest((BBObject*)o));
	struct BBDebugScope_2 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"SurfaceGreen",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TSurface",
				.var_address=&o
			},
			{
				BBDEBUGDECL_LOCAL,
				"g",
				"f",
				.var_address=&bbt_g
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x800f81c4432c751, 615, 0};
	bbOnDebugEnterStm(&__stmt_0);
	SurfaceGreen_(o->clas->f_GetInstance_pb_TTSurface((struct openb3d_openb3dcore_TSurface_obj*)o),bbt_g);
	bbOnDebugLeaveScope();
	return 0;
}
BBINT _openb3d_openb3dcore_TSurface_SurfaceBlue_f(struct openb3d_openb3dcore_TSurface_obj* o,BBFLOAT bbt_b){
	((struct openb3d_openb3dcore_TSurface_obj*)bbNullObjectTest((BBObject*)o));
	struct BBDebugScope_2 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"SurfaceBlue",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TSurface",
				.var_address=&o
			},
			{
				BBDEBUGDECL_LOCAL,
				"b",
				"f",
				.var_address=&bbt_b
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x800f81c4432c751, 622, 0};
	bbOnDebugEnterStm(&__stmt_0);
	SurfaceBlue_(o->clas->f_GetInstance_pb_TTSurface((struct openb3d_openb3dcore_TSurface_obj*)o),bbt_b);
	bbOnDebugLeaveScope();
	return 0;
}
BBINT _openb3d_openb3dcore_TSurface_SurfaceAlpha_f(struct openb3d_openb3dcore_TSurface_obj* o,BBFLOAT bbt_a){
	((struct openb3d_openb3dcore_TSurface_obj*)bbNullObjectTest((BBObject*)o));
	struct BBDebugScope_2 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"SurfaceAlpha",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TSurface",
				.var_address=&o
			},
			{
				BBDEBUGDECL_LOCAL,
				"a",
				"f",
				.var_address=&bbt_a
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x800f81c4432c751, 629, 0};
	bbOnDebugEnterStm(&__stmt_0);
	SurfaceAlpha_(o->clas->f_GetInstance_pb_TTSurface((struct openb3d_openb3dcore_TSurface_obj*)o),bbt_a);
	bbOnDebugLeaveScope();
	return 0;
}
struct brl_map_ptrmap_TPtrMap_obj* openb3d_openb3dcore_TSurface_surf_map;
struct BBDebugScope_83 openb3d_openb3dcore_TSurface_scope ={
	BBDEBUGSCOPE_USERTYPE,
	"TSurface",
	{
		{
			BBDEBUGDECL_FIELD,
			"no_verts",
			"*i",
			.field_offset=offsetof(struct openb3d_openb3dcore_TSurface_obj,_openb3d_openb3dcore_tsurface_no_verts)
		},
		{
			BBDEBUGDECL_FIELD,
			"no_tris",
			"*i",
			.field_offset=offsetof(struct openb3d_openb3dcore_TSurface_obj,_openb3d_openb3dcore_tsurface_no_tris)
		},
		{
			BBDEBUGDECL_FIELD,
			"vert_coords",
			"*f",
			.field_offset=offsetof(struct openb3d_openb3dcore_TSurface_obj,_openb3d_openb3dcore_tsurface_vert_coords)
		},
		{
			BBDEBUGDECL_FIELD,
			"vert_norm",
			"*f",
			.field_offset=offsetof(struct openb3d_openb3dcore_TSurface_obj,_openb3d_openb3dcore_tsurface_vert_norm)
		},
		{
			BBDEBUGDECL_FIELD,
			"vert_tex_coords0",
			"*f",
			.field_offset=offsetof(struct openb3d_openb3dcore_TSurface_obj,_openb3d_openb3dcore_tsurface_vert_tex_coords0)
		},
		{
			BBDEBUGDECL_FIELD,
			"vert_tex_coords1",
			"*f",
			.field_offset=offsetof(struct openb3d_openb3dcore_TSurface_obj,_openb3d_openb3dcore_tsurface_vert_tex_coords1)
		},
		{
			BBDEBUGDECL_FIELD,
			"vert_col",
			"*f",
			.field_offset=offsetof(struct openb3d_openb3dcore_TSurface_obj,_openb3d_openb3dcore_tsurface_vert_col)
		},
		{
			BBDEBUGDECL_FIELD,
			"tris",
			"*s",
			.field_offset=offsetof(struct openb3d_openb3dcore_TSurface_obj,_openb3d_openb3dcore_tsurface_tris)
		},
		{
			BBDEBUGDECL_FIELD,
			"vert_bone1_no",
			"*i",
			.field_offset=offsetof(struct openb3d_openb3dcore_TSurface_obj,_openb3d_openb3dcore_tsurface_vert_bone1_no)
		},
		{
			BBDEBUGDECL_FIELD,
			"vert_bone2_no",
			"*i",
			.field_offset=offsetof(struct openb3d_openb3dcore_TSurface_obj,_openb3d_openb3dcore_tsurface_vert_bone2_no)
		},
		{
			BBDEBUGDECL_FIELD,
			"vert_bone3_no",
			"*i",
			.field_offset=offsetof(struct openb3d_openb3dcore_TSurface_obj,_openb3d_openb3dcore_tsurface_vert_bone3_no)
		},
		{
			BBDEBUGDECL_FIELD,
			"vert_bone4_no",
			"*i",
			.field_offset=offsetof(struct openb3d_openb3dcore_TSurface_obj,_openb3d_openb3dcore_tsurface_vert_bone4_no)
		},
		{
			BBDEBUGDECL_FIELD,
			"vert_weight1",
			"*f",
			.field_offset=offsetof(struct openb3d_openb3dcore_TSurface_obj,_openb3d_openb3dcore_tsurface_vert_weight1)
		},
		{
			BBDEBUGDECL_FIELD,
			"vert_weight2",
			"*f",
			.field_offset=offsetof(struct openb3d_openb3dcore_TSurface_obj,_openb3d_openb3dcore_tsurface_vert_weight2)
		},
		{
			BBDEBUGDECL_FIELD,
			"vert_weight3",
			"*f",
			.field_offset=offsetof(struct openb3d_openb3dcore_TSurface_obj,_openb3d_openb3dcore_tsurface_vert_weight3)
		},
		{
			BBDEBUGDECL_FIELD,
			"vert_weight4",
			"*f",
			.field_offset=offsetof(struct openb3d_openb3dcore_TSurface_obj,_openb3d_openb3dcore_tsurface_vert_weight4)
		},
		{
			BBDEBUGDECL_FIELD,
			"brush",
			":TBrush",
			.field_offset=offsetof(struct openb3d_openb3dcore_TSurface_obj,_openb3d_openb3dcore_tsurface_brush)
		},
		{
			BBDEBUGDECL_FIELD,
			"ShaderMat",
			":TShader",
			.field_offset=offsetof(struct openb3d_openb3dcore_TSurface_obj,_openb3d_openb3dcore_tsurface_shadermat)
		},
		{
			BBDEBUGDECL_FIELD,
			"vbo_id",
			"*i",
			.field_offset=offsetof(struct openb3d_openb3dcore_TSurface_obj,_openb3d_openb3dcore_tsurface_vbo_id)
		},
		{
			BBDEBUGDECL_FIELD,
			"vert_array_size",
			"*i",
			.field_offset=offsetof(struct openb3d_openb3dcore_TSurface_obj,_openb3d_openb3dcore_tsurface_vert_array_size)
		},
		{
			BBDEBUGDECL_FIELD,
			"tri_array_size",
			"*i",
			.field_offset=offsetof(struct openb3d_openb3dcore_TSurface_obj,_openb3d_openb3dcore_tsurface_tri_array_size)
		},
		{
			BBDEBUGDECL_FIELD,
			"vmin",
			"*i",
			.field_offset=offsetof(struct openb3d_openb3dcore_TSurface_obj,_openb3d_openb3dcore_tsurface_vmin)
		},
		{
			BBDEBUGDECL_FIELD,
			"vmax",
			"*i",
			.field_offset=offsetof(struct openb3d_openb3dcore_TSurface_obj,_openb3d_openb3dcore_tsurface_vmax)
		},
		{
			BBDEBUGDECL_FIELD,
			"vbo_enabled",
			"*i",
			.field_offset=offsetof(struct openb3d_openb3dcore_TSurface_obj,_openb3d_openb3dcore_tsurface_vbo_enabled)
		},
		{
			BBDEBUGDECL_FIELD,
			"reset_vbo",
			"*i",
			.field_offset=offsetof(struct openb3d_openb3dcore_TSurface_obj,_openb3d_openb3dcore_tsurface_reset_vbo)
		},
		{
			BBDEBUGDECL_FIELD,
			"alpha_enable",
			"*i",
			.field_offset=offsetof(struct openb3d_openb3dcore_TSurface_obj,_openb3d_openb3dcore_tsurface_alpha_enable)
		},
		{
			BBDEBUGDECL_FIELD,
			"instance",
			"*b",
			.field_offset=offsetof(struct openb3d_openb3dcore_TSurface_obj,_openb3d_openb3dcore_tsurface_instance)
		},
		{
			BBDEBUGDECL_FIELD,
			"exists",
			"i",
			.field_offset=offsetof(struct openb3d_openb3dcore_TSurface_obj,_openb3d_openb3dcore_tsurface_exists)
		},
		{
			BBDEBUGDECL_GLOBAL,
			"surf_map",
			":TPtrMap",
			.var_address=(void*)&openb3d_openb3dcore_TSurface_surf_map
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"New",
			"()i",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_TSurface_New
		},
		{
			BBDEBUGDECL_TYPEFUNCTION,
			"CreateObject",
			"(*b):TSurface",
			.func_ptr=(BBFuncPtr)&openb3d_openb3dcore_TSurface_CreateObject_TTSurface_pb
		},
		{
			BBDEBUGDECL_TYPEFUNCTION,
			"FreeObject",
			"(*b)i",
			.func_ptr=(BBFuncPtr)&openb3d_openb3dcore_TSurface_FreeObject_i_pb
		},
		{
			BBDEBUGDECL_TYPEFUNCTION,
			"GetObject",
			"(*b):TSurface",
			.func_ptr=(BBFuncPtr)&openb3d_openb3dcore_TSurface_GetObject_TTSurface_pb
		},
		{
			BBDEBUGDECL_TYPEFUNCTION,
			"GetInstance",
			"(:TSurface)*b",
			.func_ptr=(BBFuncPtr)&openb3d_openb3dcore_TSurface_GetInstance_pb_TTSurface
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"InitFields",
			"()i",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_TSurface_InitFields
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"DebugFields",
			"(i,i)i",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_TSurface_DebugFields_ii
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"SurfaceFloatArrayCopy",
			"(i,:TSurface)*f",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_TSurface_SurfaceFloatArrayCopy_iTTSurface
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"SurfaceIntArrayResize",
			"(i,i)*i",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_TSurface_SurfaceIntArrayResize_ii
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"SurfaceFloatArrayResize",
			"(i,i)*f",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_TSurface_SurfaceFloatArrayResize_ii
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"SurfaceFloatArrayAdd",
			"(i,f)i",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_TSurface_SurfaceFloatArrayAdd_if
		},
		{
			BBDEBUGDECL_TYPEFUNCTION,
			"NewSurface",
			"():TSurface",
			.func_ptr=(BBFuncPtr)&openb3d_openb3dcore_TSurface_NewSurface_TTSurface
		},
		{
			BBDEBUGDECL_TYPEFUNCTION,
			"Create",
			"():TSurface",
			.func_ptr=(BBFuncPtr)&openb3d_openb3dcore_TSurface_Create_TTSurface
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"FreeSurface",
			"()i",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_TSurface_FreeSurface
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"UpdateTexCoords",
			"()i",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_TSurface_UpdateTexCoords
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"GetSurfaceBrush",
			"():TBrush",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_TSurface_GetSurfaceBrush
		},
		{
			BBDEBUGDECL_TYPEFUNCTION,
			"CreateSurface",
			"(:TMesh,:TBrush):TSurface",
			.func_ptr=(BBFuncPtr)&openb3d_openb3dcore_TSurface_CreateSurface_TTSurface_TTMeshTTBrush
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"PaintSurface",
			"(:TBrush)i",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_TSurface_PaintSurface_TTBrush
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"ClearSurface",
			"(i,i)i",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_TSurface_ClearSurface_ii
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"AddVertex",
			"(f,f,f,f,f,f)i",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_TSurface_AddVertex_ffffff
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"AddTriangle",
			"(i,i,i)i",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_TSurface_AddTriangle_iii
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"CountVertices",
			"()i",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_TSurface_CountVertices
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"CountTriangles",
			"()i",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_TSurface_CountTriangles
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"VertexCoords",
			"(i,f,f,f)i",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_TSurface_VertexCoords_ifff
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"VertexColor",
			"(i,f,f,f,f)i",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_TSurface_VertexColor_iffff
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"VertexNormal",
			"(i,f,f,f)i",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_TSurface_VertexNormal_ifff
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"VertexTexCoords",
			"(i,f,f,f,i)i",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_TSurface_VertexTexCoords_ifffi
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"VertexX",
			"(i)f",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_TSurface_VertexX_i
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"VertexY",
			"(i)f",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_TSurface_VertexY_i
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"VertexZ",
			"(i)f",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_TSurface_VertexZ_i
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"VertexRed",
			"(i)f",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_TSurface_VertexRed_i
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"VertexGreen",
			"(i)f",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_TSurface_VertexGreen_i
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"VertexBlue",
			"(i)f",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_TSurface_VertexBlue_i
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"VertexAlpha",
			"(i)f",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_TSurface_VertexAlpha_i
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"VertexNX",
			"(i)f",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_TSurface_VertexNX_i
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"VertexNY",
			"(i)f",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_TSurface_VertexNY_i
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"VertexNZ",
			"(i)f",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_TSurface_VertexNZ_i
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"VertexU",
			"(i,i)f",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_TSurface_VertexU_ii
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"VertexV",
			"(i,i)f",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_TSurface_VertexV_ii
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"VertexW",
			"(i,i)f",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_TSurface_VertexW_ii
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"TriangleVertex",
			"(i,i)i",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_TSurface_TriangleVertex_ii
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"Copy",
			"():TSurface",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_TSurface_Copy
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"UpdateNormals",
			"()i",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_TSurface_UpdateNormals
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"TriangleNX",
			"(i)f",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_TSurface_TriangleNX_i
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"TriangleNY",
			"(i)f",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_TSurface_TriangleNY_i
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"TriangleNZ",
			"(i)f",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_TSurface_TriangleNZ_i
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"UpdateVBO",
			"()i",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_TSurface_UpdateVBO
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"FreeVBO",
			"()i",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_TSurface_FreeVBO
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"RemoveTri",
			"(i)i",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_TSurface_RemoveTri_i
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"SurfaceColor",
			"(f,f,f,f)i",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_TSurface_SurfaceColor_ffff
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"SurfaceRed",
			"(f)i",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_TSurface_SurfaceRed_f
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"SurfaceGreen",
			"(f)i",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_TSurface_SurfaceGreen_f
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"SurfaceBlue",
			"(f)i",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_TSurface_SurfaceBlue_f
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"SurfaceAlpha",
			"(f)i",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_TSurface_SurfaceAlpha_f
		},
		{
			BBDEBUGDECL_END
		}
	}
};
struct BBClass_openb3d_openb3dcore_TSurface openb3d_openb3dcore_TSurface={
	&bbObjectClass,
	bbObjectFree,
	(BBDebugScope*)&openb3d_openb3dcore_TSurface_scope,
	sizeof(struct openb3d_openb3dcore_TSurface_obj),
	(void (*)(BBOBJECT))_openb3d_openb3dcore_TSurface_New,
	(void (*)(BBOBJECT))_openb3d_openb3dcore_TSurface_Delete,
	bbObjectToString,
	bbObjectCompare,
	bbObjectSendMessage,
	0,
	0,
	offsetof(struct openb3d_openb3dcore_TSurface_obj,_openb3d_openb3dcore_tsurface_exists) - offsetof(struct openb3d_openb3dcore_TSurface_obj,_openb3d_openb3dcore_tsurface_no_verts) + sizeof(BBINT)
	,0
	,offsetof(struct openb3d_openb3dcore_TSurface_obj,_openb3d_openb3dcore_tsurface_no_verts)
	,openb3d_openb3dcore_TSurface_CreateObject_TTSurface_pb
	,openb3d_openb3dcore_TSurface_FreeObject_i_pb
	,openb3d_openb3dcore_TSurface_GetObject_TTSurface_pb
	,openb3d_openb3dcore_TSurface_GetInstance_pb_TTSurface
	,_openb3d_openb3dcore_TSurface_InitFields
	,_openb3d_openb3dcore_TSurface_DebugFields_ii
	,_openb3d_openb3dcore_TSurface_SurfaceFloatArrayCopy_iTTSurface
	,_openb3d_openb3dcore_TSurface_SurfaceIntArrayResize_ii
	,_openb3d_openb3dcore_TSurface_SurfaceFloatArrayResize_ii
	,_openb3d_openb3dcore_TSurface_SurfaceFloatArrayAdd_if
	,openb3d_openb3dcore_TSurface_NewSurface_TTSurface
	,openb3d_openb3dcore_TSurface_Create_TTSurface
	,_openb3d_openb3dcore_TSurface_FreeSurface
	,_openb3d_openb3dcore_TSurface_UpdateTexCoords
	,_openb3d_openb3dcore_TSurface_GetSurfaceBrush
	,openb3d_openb3dcore_TSurface_CreateSurface_TTSurface_TTMeshTTBrush
	,_openb3d_openb3dcore_TSurface_PaintSurface_TTBrush
	,_openb3d_openb3dcore_TSurface_ClearSurface_ii
	,_openb3d_openb3dcore_TSurface_AddVertex_ffffff
	,_openb3d_openb3dcore_TSurface_AddTriangle_iii
	,_openb3d_openb3dcore_TSurface_CountVertices
	,_openb3d_openb3dcore_TSurface_CountTriangles
	,_openb3d_openb3dcore_TSurface_VertexCoords_ifff
	,_openb3d_openb3dcore_TSurface_VertexColor_iffff
	,_openb3d_openb3dcore_TSurface_VertexNormal_ifff
	,_openb3d_openb3dcore_TSurface_VertexTexCoords_ifffi
	,_openb3d_openb3dcore_TSurface_VertexX_i
	,_openb3d_openb3dcore_TSurface_VertexY_i
	,_openb3d_openb3dcore_TSurface_VertexZ_i
	,_openb3d_openb3dcore_TSurface_VertexRed_i
	,_openb3d_openb3dcore_TSurface_VertexGreen_i
	,_openb3d_openb3dcore_TSurface_VertexBlue_i
	,_openb3d_openb3dcore_TSurface_VertexAlpha_i
	,_openb3d_openb3dcore_TSurface_VertexNX_i
	,_openb3d_openb3dcore_TSurface_VertexNY_i
	,_openb3d_openb3dcore_TSurface_VertexNZ_i
	,_openb3d_openb3dcore_TSurface_VertexU_ii
	,_openb3d_openb3dcore_TSurface_VertexV_ii
	,_openb3d_openb3dcore_TSurface_VertexW_ii
	,_openb3d_openb3dcore_TSurface_TriangleVertex_ii
	,_openb3d_openb3dcore_TSurface_Copy
	,_openb3d_openb3dcore_TSurface_UpdateNormals
	,_openb3d_openb3dcore_TSurface_TriangleNX_i
	,_openb3d_openb3dcore_TSurface_TriangleNY_i
	,_openb3d_openb3dcore_TSurface_TriangleNZ_i
	,_openb3d_openb3dcore_TSurface_UpdateVBO
	,_openb3d_openb3dcore_TSurface_FreeVBO
	,_openb3d_openb3dcore_TSurface_RemoveTri_i
	,_openb3d_openb3dcore_TSurface_SurfaceColor_ffff
	,_openb3d_openb3dcore_TSurface_SurfaceRed_f
	,_openb3d_openb3dcore_TSurface_SurfaceGreen_f
	,_openb3d_openb3dcore_TSurface_SurfaceBlue_f
	,_openb3d_openb3dcore_TSurface_SurfaceAlpha_f
};

void _openb3d_openb3dcore_TTexture_New(struct openb3d_openb3dcore_TTexture_obj* o) {
	bbObjectCtor((BBOBJECT)o);
	o->clas = &openb3d_openb3dcore_TTexture;
	((struct openb3d_openb3dcore_TTexture_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_ttexture_texture = 0;
	((struct openb3d_openb3dcore_TTexture_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_ttexture_file = 0;
	((struct openb3d_openb3dcore_TTexture_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_ttexture_frames = 0;
	((struct openb3d_openb3dcore_TTexture_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_ttexture_flags = 0;
	((struct openb3d_openb3dcore_TTexture_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_ttexture_blend = 0;
	((struct openb3d_openb3dcore_TTexture_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_ttexture_coords = 0;
	((struct openb3d_openb3dcore_TTexture_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_ttexture_u_scale = 0;
	((struct openb3d_openb3dcore_TTexture_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_ttexture_v_scale = 0;
	((struct openb3d_openb3dcore_TTexture_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_ttexture_u_pos = 0;
	((struct openb3d_openb3dcore_TTexture_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_ttexture_v_pos = 0;
	((struct openb3d_openb3dcore_TTexture_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_ttexture_angle = 0;
	((struct openb3d_openb3dcore_TTexture_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_ttexture_file_abs = 0;
	((struct openb3d_openb3dcore_TTexture_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_ttexture_width = 0;
	((struct openb3d_openb3dcore_TTexture_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_ttexture_height = 0;
	((struct openb3d_openb3dcore_TTexture_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_ttexture_no_frames = 0;
	((struct openb3d_openb3dcore_TTexture_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_ttexture_framebuffer = 0;
	((struct openb3d_openb3dcore_TTexture_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_ttexture_cube_face = 0;
	((struct openb3d_openb3dcore_TTexture_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_ttexture_cube_mode = 0;
	((struct openb3d_openb3dcore_TTexture_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_ttexture_pixmap = (struct brl_pixmap_TPixmap_obj*)((struct brl_pixmap_TPixmap_obj*)&bbNullObject);
	((struct openb3d_openb3dcore_TTexture_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_ttexture_discard = 1.00000000f;
	((struct openb3d_openb3dcore_TTexture_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_ttexture_gltex = 0;
	((struct openb3d_openb3dcore_TTexture_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_ttexture_no_mipmaps = bbArrayNew1D("i", 1);
	((struct openb3d_openb3dcore_TTexture_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_ttexture_format = 0;
	((struct openb3d_openb3dcore_TTexture_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_ttexture_instance = 0;
	((struct openb3d_openb3dcore_TTexture_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_ttexture_exists = 0;
	struct BBDebugScope __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"New",
		{
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0xc98026d238c3ecac, 519, 0};
	bbOnDebugEnterStm(&__stmt_0);
	if(openb3d_openb3dcore_TGlobal3D_Log_New!=0){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0xc98026d238c3ecac, 520, 0};
		bbOnDebugEnterStm(&__stmt_0);
		brl_blitz_DebugLog((BBString*)&_s395);
		bbOnDebugLeaveScope();
	}
	bbOnDebugLeaveScope();
}
void _openb3d_openb3dcore_TTexture_Delete(struct openb3d_openb3dcore_TTexture_obj* o) {
	struct BBDebugScope_1 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"Delete",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TTexture",
				.var_address=&o
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0xc98026d238c3ecac, 527, 0};
	bbOnDebugEnterStm(&__stmt_0);
	if(openb3d_openb3dcore_TGlobal3D_Log_Del!=0){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0xc98026d238c3ecac, 528, 0};
		bbOnDebugEnterStm(&__stmt_0);
		brl_blitz_DebugLog((BBString*)&_s396);
		bbOnDebugLeaveScope();
	}
	bbOnDebugLeaveScope();
	bbObjectDtor((BBOBJECT)o);
}
struct openb3d_openb3dcore_TTexture_obj* openb3d_openb3dcore_TTexture_CreateObject_TTTexture_pb(BBBYTE* bbt_inst){
	struct openb3d_openb3dcore_TTexture_obj* bbt_obj=(struct openb3d_openb3dcore_TTexture_obj*)((struct openb3d_openb3dcore_TTexture_obj*)&bbNullObject);
	struct BBDebugScope_2 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"CreateObject",
		{
			{
				BBDEBUGDECL_LOCAL,
				"inst",
				"*b",
				.var_address=&bbt_inst
			},
			{
				BBDEBUGDECL_LOCAL,
				"obj",
				":TTexture",
				.var_address=&bbt_obj
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0xc98026d238c3ecac, 50, 0};
	bbOnDebugEnterStm(&__stmt_0);
	if(bbt_inst==0){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0xc98026d238c3ecac, 50, 0};
		bbOnDebugEnterStm(&__stmt_0);
		bbOnDebugLeaveScope();
		bbOnDebugLeaveScope();
		return (struct openb3d_openb3dcore_TTexture_obj*)&bbNullObject;
	}
	struct BBDebugStm __stmt_1 = {0xc98026d238c3ecac, 51, 0};
	bbOnDebugEnterStm(&__stmt_1);
	bbt_obj=(struct openb3d_openb3dcore_TTexture_obj*)(struct openb3d_openb3dcore_TTexture_obj*)bbObjectNew((BBClass *)&openb3d_openb3dcore_TTexture);
	struct BBDebugStm __stmt_2 = {0xc98026d238c3ecac, 53, 0};
	bbOnDebugEnterStm(&__stmt_2);
	((struct brl_map_ptrmap_TPtrMap_obj*)bbNullObjectTest((BBObject*)openb3d_openb3dcore_TTexture_tex_map))->clas->m_Insert_pbTObject((struct brl_map_ptrmap_TPtrMap_obj*)openb3d_openb3dcore_TTexture_tex_map,bbt_inst,(BBOBJECT)bbt_obj);
	struct BBDebugStm __stmt_3 = {0xc98026d238c3ecac, 57, 0};
	bbOnDebugEnterStm(&__stmt_3);
	((struct openb3d_openb3dcore_TTexture_obj*)bbNullObjectTest((BBObject*)bbt_obj))->_openb3d_openb3dcore_ttexture_instance =bbt_inst;
	struct BBDebugStm __stmt_4 = {0xc98026d238c3ecac, 58, 0};
	bbOnDebugEnterStm(&__stmt_4);
	((struct openb3d_openb3dcore_TTexture_obj*)bbNullObjectTest((BBObject*)bbt_obj))->clas->m_InitFields((struct openb3d_openb3dcore_TTexture_obj*)bbt_obj);
	struct BBDebugStm __stmt_5 = {0xc98026d238c3ecac, 59, 0};
	bbOnDebugEnterStm(&__stmt_5);
	bbOnDebugLeaveScope();
	return (struct openb3d_openb3dcore_TTexture_obj*)bbt_obj;
}
BBINT openb3d_openb3dcore_TTexture_FreeObject_i_pb(BBBYTE* bbt_inst){
	struct BBDebugScope_1 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"FreeObject",
		{
			{
				BBDEBUGDECL_LOCAL,
				"inst",
				"*b",
				.var_address=&bbt_inst
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0xc98026d238c3ecac, 66, 0};
	bbOnDebugEnterStm(&__stmt_0);
	((struct brl_map_ptrmap_TPtrMap_obj*)bbNullObjectTest((BBObject*)openb3d_openb3dcore_TTexture_tex_map))->clas->m_Remove_pb((struct brl_map_ptrmap_TPtrMap_obj*)openb3d_openb3dcore_TTexture_tex_map,bbt_inst);
	bbOnDebugLeaveScope();
	return 0;
}
struct openb3d_openb3dcore_TTexture_obj* openb3d_openb3dcore_TTexture_GetObject_TTTexture_pb(BBBYTE* bbt_inst){
	struct BBDebugScope_1 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"GetObject",
		{
			{
				BBDEBUGDECL_LOCAL,
				"inst",
				"*b",
				.var_address=&bbt_inst
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0xc98026d238c3ecac, 76, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbOnDebugLeaveScope();
	return (struct openb3d_openb3dcore_TTexture_obj*)((struct openb3d_openb3dcore_TTexture_obj*)bbObjectDowncast((BBOBJECT)((struct brl_map_ptrmap_TPtrMap_obj*)bbNullObjectTest((BBObject*)openb3d_openb3dcore_TTexture_tex_map))->clas->m_ValueForKey_pb((struct brl_map_ptrmap_TPtrMap_obj*)openb3d_openb3dcore_TTexture_tex_map,bbt_inst),(BBClass*)&openb3d_openb3dcore_TTexture));
}
BBBYTE* openb3d_openb3dcore_TTexture_GetInstance_pb_TTTexture(struct openb3d_openb3dcore_TTexture_obj* bbt_obj){
	struct BBDebugScope_1 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"GetInstance",
		{
			{
				BBDEBUGDECL_LOCAL,
				"obj",
				":TTexture",
				.var_address=&bbt_obj
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0xc98026d238c3ecac, 85, 0};
	bbOnDebugEnterStm(&__stmt_0);
	if(((BBOBJECT)bbt_obj)==&bbNullObject){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0xc98026d238c3ecac, 85, 0};
		bbOnDebugEnterStm(&__stmt_0);
		bbOnDebugLeaveScope();
		bbOnDebugLeaveScope();
		return 0;
	}
	struct BBDebugStm __stmt_1 = {0xc98026d238c3ecac, 86, 0};
	bbOnDebugEnterStm(&__stmt_1);
	bbOnDebugLeaveScope();
	return ((struct openb3d_openb3dcore_TTexture_obj*)bbNullObjectTest((BBObject*)bbt_obj))->_openb3d_openb3dcore_ttexture_instance ;
}
BBINT openb3d_openb3dcore_TTexture_InitGlobals_i(){
	struct BBDebugScope __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"InitGlobals",
		{
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0xc98026d238c3ecac, 93, 0};
	bbOnDebugEnterStm(&__stmt_0);
	openb3d_openb3dcore_TTexture_AnIsoSupport=StaticInt_(52,22);
	struct BBDebugStm __stmt_1 = {0xc98026d238c3ecac, 96, 0};
	bbOnDebugEnterStm(&__stmt_1);
	openb3d_openb3dcore_TTexture_global_aniso=StaticFloat_(52,23);
	bbOnDebugLeaveScope();
	return 0;
}
BBINT _openb3d_openb3dcore_TTexture_InitFields(struct openb3d_openb3dcore_TTexture_obj* o){
	((struct openb3d_openb3dcore_TTexture_obj*)bbNullObjectTest((BBObject*)o));
	struct BBDebugScope_1 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"InitFields",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TTexture",
				.var_address=&o
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0xc98026d238c3ecac, 103, 0};
	bbOnDebugEnterStm(&__stmt_0);
	((struct openb3d_openb3dcore_TTexture_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_ttexture_flags =TextureInt_(o->clas->f_GetInstance_pb_TTTexture((struct openb3d_openb3dcore_TTexture_obj*)o),5);
	struct BBDebugStm __stmt_1 = {0xc98026d238c3ecac, 104, 0};
	bbOnDebugEnterStm(&__stmt_1);
	((struct openb3d_openb3dcore_TTexture_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_ttexture_blend =TextureInt_(o->clas->f_GetInstance_pb_TTTexture((struct openb3d_openb3dcore_TTexture_obj*)o),6);
	struct BBDebugStm __stmt_2 = {0xc98026d238c3ecac, 105, 0};
	bbOnDebugEnterStm(&__stmt_2);
	((struct openb3d_openb3dcore_TTexture_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_ttexture_coords =TextureInt_(o->clas->f_GetInstance_pb_TTTexture((struct openb3d_openb3dcore_TTexture_obj*)o),7);
	struct BBDebugStm __stmt_3 = {0xc98026d238c3ecac, 106, 0};
	bbOnDebugEnterStm(&__stmt_3);
	((struct openb3d_openb3dcore_TTexture_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_ttexture_width =TextureInt_(o->clas->f_GetInstance_pb_TTTexture((struct openb3d_openb3dcore_TTexture_obj*)o),14);
	struct BBDebugStm __stmt_4 = {0xc98026d238c3ecac, 107, 0};
	bbOnDebugEnterStm(&__stmt_4);
	((struct openb3d_openb3dcore_TTexture_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_ttexture_height =TextureInt_(o->clas->f_GetInstance_pb_TTTexture((struct openb3d_openb3dcore_TTexture_obj*)o),15);
	struct BBDebugStm __stmt_5 = {0xc98026d238c3ecac, 108, 0};
	bbOnDebugEnterStm(&__stmt_5);
	((struct openb3d_openb3dcore_TTexture_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_ttexture_no_frames =TextureInt_(o->clas->f_GetInstance_pb_TTTexture((struct openb3d_openb3dcore_TTexture_obj*)o),16);
	struct BBDebugStm __stmt_6 = {0xc98026d238c3ecac, 109, 0};
	bbOnDebugEnterStm(&__stmt_6);
	((struct openb3d_openb3dcore_TTexture_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_ttexture_cube_face =TextureInt_(o->clas->f_GetInstance_pb_TTTexture((struct openb3d_openb3dcore_TTexture_obj*)o),18);
	struct BBDebugStm __stmt_7 = {0xc98026d238c3ecac, 110, 0};
	bbOnDebugEnterStm(&__stmt_7);
	((struct openb3d_openb3dcore_TTexture_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_ttexture_cube_mode =TextureInt_(o->clas->f_GetInstance_pb_TTTexture((struct openb3d_openb3dcore_TTexture_obj*)o),19);
	struct BBDebugStm __stmt_8 = {0xc98026d238c3ecac, 111, 0};
	bbOnDebugEnterStm(&__stmt_8);
	((struct openb3d_openb3dcore_TTexture_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_ttexture_format =TextureInt_(o->clas->f_GetInstance_pb_TTTexture((struct openb3d_openb3dcore_TTexture_obj*)o),21);
	struct BBDebugStm __stmt_9 = {0xc98026d238c3ecac, 112, 0};
	bbOnDebugEnterStm(&__stmt_9);
	((struct openb3d_openb3dcore_TTexture_obj*)bbNullObjectTest((BBObject*)o));
	((BBINT*)BBARRAYDATAINDEX((((struct openb3d_openb3dcore_TTexture_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_ttexture_no_mipmaps ),(((struct openb3d_openb3dcore_TTexture_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_ttexture_no_mipmaps )->dims,0U))[0U]=((struct openb3d_openb3dcore_TTexture_obj*)o)->clas->m_CountMipmaps((struct openb3d_openb3dcore_TTexture_obj*)o);
	struct BBDebugStm __stmt_10 = {0xc98026d238c3ecac, 115, 0};
	bbOnDebugEnterStm(&__stmt_10);
	((struct openb3d_openb3dcore_TTexture_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_ttexture_texture =TextureUInt_(o->clas->f_GetInstance_pb_TTTexture((struct openb3d_openb3dcore_TTexture_obj*)o),1);
	struct BBDebugStm __stmt_11 = {0xc98026d238c3ecac, 116, 0};
	bbOnDebugEnterStm(&__stmt_11);
	((struct openb3d_openb3dcore_TTexture_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_ttexture_frames =TextureUInt_(o->clas->f_GetInstance_pb_TTTexture((struct openb3d_openb3dcore_TTexture_obj*)o),4);
	struct BBDebugStm __stmt_12 = {0xc98026d238c3ecac, 117, 0};
	bbOnDebugEnterStm(&__stmt_12);
	((struct openb3d_openb3dcore_TTexture_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_ttexture_framebuffer =TextureUInt_(o->clas->f_GetInstance_pb_TTTexture((struct openb3d_openb3dcore_TTexture_obj*)o),17);
	struct BBDebugStm __stmt_13 = {0xc98026d238c3ecac, 118, 0};
	bbOnDebugEnterStm(&__stmt_13);
	if(((struct openb3d_openb3dcore_TTexture_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_ttexture_frames ==0){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0xc98026d238c3ecac, 118, 0};
		bbOnDebugEnterStm(&__stmt_0);
		((struct openb3d_openb3dcore_TTexture_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_ttexture_gltex =((struct openb3d_openb3dcore_TTexture_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_ttexture_texture ;
		bbOnDebugLeaveScope();
	}else{
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0xc98026d238c3ecac, 118, 0};
		bbOnDebugEnterStm(&__stmt_0);
		((struct openb3d_openb3dcore_TTexture_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_ttexture_gltex =((struct openb3d_openb3dcore_TTexture_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_ttexture_frames ;
		bbOnDebugLeaveScope();
	}
	struct BBDebugStm __stmt_14 = {0xc98026d238c3ecac, 121, 0};
	bbOnDebugEnterStm(&__stmt_14);
	((struct openb3d_openb3dcore_TTexture_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_ttexture_u_scale =TextureFloat_(o->clas->f_GetInstance_pb_TTTexture((struct openb3d_openb3dcore_TTexture_obj*)o),8);
	struct BBDebugStm __stmt_15 = {0xc98026d238c3ecac, 122, 0};
	bbOnDebugEnterStm(&__stmt_15);
	((struct openb3d_openb3dcore_TTexture_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_ttexture_v_scale =TextureFloat_(o->clas->f_GetInstance_pb_TTTexture((struct openb3d_openb3dcore_TTexture_obj*)o),9);
	struct BBDebugStm __stmt_16 = {0xc98026d238c3ecac, 123, 0};
	bbOnDebugEnterStm(&__stmt_16);
	((struct openb3d_openb3dcore_TTexture_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_ttexture_u_pos =TextureFloat_(o->clas->f_GetInstance_pb_TTTexture((struct openb3d_openb3dcore_TTexture_obj*)o),10);
	struct BBDebugStm __stmt_17 = {0xc98026d238c3ecac, 124, 0};
	bbOnDebugEnterStm(&__stmt_17);
	((struct openb3d_openb3dcore_TTexture_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_ttexture_v_pos =TextureFloat_(o->clas->f_GetInstance_pb_TTTexture((struct openb3d_openb3dcore_TTexture_obj*)o),11);
	struct BBDebugStm __stmt_18 = {0xc98026d238c3ecac, 125, 0};
	bbOnDebugEnterStm(&__stmt_18);
	((struct openb3d_openb3dcore_TTexture_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_ttexture_angle =TextureFloat_(o->clas->f_GetInstance_pb_TTTexture((struct openb3d_openb3dcore_TTexture_obj*)o),12);
	struct BBDebugStm __stmt_19 = {0xc98026d238c3ecac, 128, 0};
	bbOnDebugEnterStm(&__stmt_19);
	((struct openb3d_openb3dcore_TTexture_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_ttexture_file =TextureString_(o->clas->f_GetInstance_pb_TTTexture((struct openb3d_openb3dcore_TTexture_obj*)o),3);
	struct BBDebugStm __stmt_20 = {0xc98026d238c3ecac, 129, 0};
	bbOnDebugEnterStm(&__stmt_20);
	((struct openb3d_openb3dcore_TTexture_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_ttexture_file_abs =TextureString_(o->clas->f_GetInstance_pb_TTTexture((struct openb3d_openb3dcore_TTexture_obj*)o),13);
	struct BBDebugStm __stmt_21 = {0xc98026d238c3ecac, 131, 0};
	bbOnDebugEnterStm(&__stmt_21);
	o->clas->f_CopyList__i_TTList((struct brl_linkedlist_TList_obj*)openb3d_openb3dcore_TTexture_tex_list);
	struct BBDebugStm __stmt_22 = {0xc98026d238c3ecac, 132, 0};
	bbOnDebugEnterStm(&__stmt_22);
	o->clas->f_CopyList__i_TTList((struct brl_linkedlist_TList_obj*)openb3d_openb3dcore_TTexture_tex_list_all);
	struct BBDebugStm __stmt_23 = {0xc98026d238c3ecac, 133, 0};
	bbOnDebugEnterStm(&__stmt_23);
	((struct openb3d_openb3dcore_TTexture_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_ttexture_exists =1;
	bbOnDebugLeaveScope();
	return 0;
}
BBINT _openb3d_openb3dcore_TTexture_DebugFields_ii(struct openb3d_openb3dcore_TTexture_obj* o,BBINT bbt_debug_subobjects,BBINT bbt_debug_base_types){
	((struct openb3d_openb3dcore_TTexture_obj*)bbNullObjectTest((BBObject*)o));
	BBSTRING bbt_pad=(&bbEmptyString);
	BBINT bbt_loop=0;
	struct BBDebugScope_5 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"DebugFields",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TTexture",
				.var_address=&o
			},
			{
				BBDEBUGDECL_LOCAL,
				"debug_subobjects",
				"i",
				.var_address=&bbt_debug_subobjects
			},
			{
				BBDEBUGDECL_LOCAL,
				"debug_base_types",
				"i",
				.var_address=&bbt_debug_base_types
			},
			{
				BBDEBUGDECL_LOCAL,
				"pad",
				"$",
				.var_address=&bbt_pad
			},
			{
				BBDEBUGDECL_LOCAL,
				"loop",
				"i",
				.var_address=&bbt_loop
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0xc98026d238c3ecac, 139, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbt_pad=((BBString*)&bbEmptyString);
	struct BBDebugStm __stmt_1 = {0xc98026d238c3ecac, 140, 0};
	bbOnDebugEnterStm(&__stmt_1);
	bbt_loop=bbt_debug_subobjects;
	struct BBDebugStm __stmt_2 = {0xc98026d238c3ecac, 141, 0};
	bbOnDebugEnterStm(&__stmt_2);
	if(bbt_debug_base_types>bbt_debug_subobjects){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0xc98026d238c3ecac, 141, 0};
		bbOnDebugEnterStm(&__stmt_0);
		bbt_loop=bbt_debug_base_types;
		bbOnDebugLeaveScope();
	}
	struct BBDebugStm __stmt_3 = {0xc98026d238c3ecac, 142, 0};
	bbOnDebugEnterStm(&__stmt_3);
	{
		BBINT bbt_i=1;
		BBINT bbt_=bbt_loop;
		for(;(bbt_i<bbt_);bbt_i=(bbt_i+1)){
			struct BBDebugScope_1 __scope = {
				BBDEBUGSCOPE_LOCALBLOCK,
				0,
				{
					{
						BBDEBUGDECL_LOCAL,
						"i",
						"i",
						.var_address=&bbt_i
					},
					{
						BBDEBUGDECL_END
					}
				}
			};
			bbOnDebugEnterScope((BBDebugScope *)&__scope);
			struct BBDebugStm __stmt_0 = {0xc98026d238c3ecac, 143, 0};
			bbOnDebugEnterStm(&__stmt_0);
			bbt_pad=bbStringConcat(bbt_pad,((BBString*)&_s0));
			bbOnDebugLeaveScope();
		}
	}
	struct BBDebugStm __stmt_4 = {0xc98026d238c3ecac, 145, 0};
	bbOnDebugEnterStm(&__stmt_4);
	if(bbt_debug_subobjects!=0){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0xc98026d238c3ecac, 145, 0};
		bbOnDebugEnterStm(&__stmt_0);
		bbt_debug_subobjects+=1;
		bbOnDebugLeaveScope();
	}
	struct BBDebugStm __stmt_5 = {0xc98026d238c3ecac, 146, 0};
	bbOnDebugEnterStm(&__stmt_5);
	if(bbt_debug_base_types!=0){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0xc98026d238c3ecac, 146, 0};
		bbOnDebugEnterStm(&__stmt_0);
		bbt_debug_base_types+=1;
		bbOnDebugLeaveScope();
	}
	struct BBDebugStm __stmt_6 = {0xc98026d238c3ecac, 147, 0};
	bbOnDebugEnterStm(&__stmt_6);
	brl_blitz_DebugLog(bbStringConcat(bbStringConcat(bbt_pad,((BBString*)&_s361)),openb3d_openb3dcore_StringPtr(o->clas->f_GetInstance_pb_TTTexture((struct openb3d_openb3dcore_TTexture_obj*)o))));
	struct BBDebugStm __stmt_7 = {0xc98026d238c3ecac, 150, 0};
	bbOnDebugEnterStm(&__stmt_7);
	if(((struct openb3d_openb3dcore_TTexture_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_ttexture_flags !=0){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0xc98026d238c3ecac, 150, 0};
		bbOnDebugEnterStm(&__stmt_0);
		brl_blitz_DebugLog(bbStringConcat(bbStringConcat(bbt_pad,((BBString*)&_s362)),bbStringFromInt(((struct openb3d_openb3dcore_TTexture_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_ttexture_flags [0])));
		bbOnDebugLeaveScope();
	}else{
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0xc98026d238c3ecac, 150, 0};
		bbOnDebugEnterStm(&__stmt_0);
		brl_blitz_DebugLog(bbStringConcat(bbt_pad,((BBString*)&_s363)));
		bbOnDebugLeaveScope();
	}
	struct BBDebugStm __stmt_8 = {0xc98026d238c3ecac, 151, 0};
	bbOnDebugEnterStm(&__stmt_8);
	if(((struct openb3d_openb3dcore_TTexture_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_ttexture_blend !=0){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0xc98026d238c3ecac, 151, 0};
		bbOnDebugEnterStm(&__stmt_0);
		brl_blitz_DebugLog(bbStringConcat(bbStringConcat(bbt_pad,((BBString*)&_s364)),bbStringFromInt(((struct openb3d_openb3dcore_TTexture_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_ttexture_blend [0])));
		bbOnDebugLeaveScope();
	}else{
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0xc98026d238c3ecac, 151, 0};
		bbOnDebugEnterStm(&__stmt_0);
		brl_blitz_DebugLog(bbStringConcat(bbt_pad,((BBString*)&_s365)));
		bbOnDebugLeaveScope();
	}
	struct BBDebugStm __stmt_9 = {0xc98026d238c3ecac, 152, 0};
	bbOnDebugEnterStm(&__stmt_9);
	if(((struct openb3d_openb3dcore_TTexture_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_ttexture_coords !=0){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0xc98026d238c3ecac, 152, 0};
		bbOnDebugEnterStm(&__stmt_0);
		brl_blitz_DebugLog(bbStringConcat(bbStringConcat(bbt_pad,((BBString*)&_s366)),bbStringFromInt(((struct openb3d_openb3dcore_TTexture_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_ttexture_coords [0])));
		bbOnDebugLeaveScope();
	}else{
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0xc98026d238c3ecac, 152, 0};
		bbOnDebugEnterStm(&__stmt_0);
		brl_blitz_DebugLog(bbStringConcat(bbt_pad,((BBString*)&_s367)));
		bbOnDebugLeaveScope();
	}
	struct BBDebugStm __stmt_10 = {0xc98026d238c3ecac, 153, 0};
	bbOnDebugEnterStm(&__stmt_10);
	if(((struct openb3d_openb3dcore_TTexture_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_ttexture_width !=0){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0xc98026d238c3ecac, 153, 0};
		bbOnDebugEnterStm(&__stmt_0);
		brl_blitz_DebugLog(bbStringConcat(bbStringConcat(bbt_pad,((BBString*)&_s2)),bbStringFromInt(((struct openb3d_openb3dcore_TTexture_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_ttexture_width [0])));
		bbOnDebugLeaveScope();
	}else{
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0xc98026d238c3ecac, 153, 0};
		bbOnDebugEnterStm(&__stmt_0);
		brl_blitz_DebugLog(bbStringConcat(bbt_pad,((BBString*)&_s3)));
		bbOnDebugLeaveScope();
	}
	struct BBDebugStm __stmt_11 = {0xc98026d238c3ecac, 154, 0};
	bbOnDebugEnterStm(&__stmt_11);
	if(((struct openb3d_openb3dcore_TTexture_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_ttexture_height !=0){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0xc98026d238c3ecac, 154, 0};
		bbOnDebugEnterStm(&__stmt_0);
		brl_blitz_DebugLog(bbStringConcat(bbStringConcat(bbt_pad,((BBString*)&_s4)),bbStringFromInt(((struct openb3d_openb3dcore_TTexture_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_ttexture_height [0])));
		bbOnDebugLeaveScope();
	}else{
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0xc98026d238c3ecac, 154, 0};
		bbOnDebugEnterStm(&__stmt_0);
		brl_blitz_DebugLog(bbStringConcat(bbt_pad,((BBString*)&_s5)));
		bbOnDebugLeaveScope();
	}
	struct BBDebugStm __stmt_12 = {0xc98026d238c3ecac, 155, 0};
	bbOnDebugEnterStm(&__stmt_12);
	if(((struct openb3d_openb3dcore_TTexture_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_ttexture_no_frames !=0){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0xc98026d238c3ecac, 155, 0};
		bbOnDebugEnterStm(&__stmt_0);
		brl_blitz_DebugLog(bbStringConcat(bbStringConcat(bbt_pad,((BBString*)&_s368)),bbStringFromInt(((struct openb3d_openb3dcore_TTexture_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_ttexture_no_frames [0])));
		bbOnDebugLeaveScope();
	}else{
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0xc98026d238c3ecac, 155, 0};
		bbOnDebugEnterStm(&__stmt_0);
		brl_blitz_DebugLog(bbStringConcat(bbt_pad,((BBString*)&_s369)));
		bbOnDebugLeaveScope();
	}
	struct BBDebugStm __stmt_13 = {0xc98026d238c3ecac, 156, 0};
	bbOnDebugEnterStm(&__stmt_13);
	if(((struct openb3d_openb3dcore_TTexture_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_ttexture_cube_face !=0){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0xc98026d238c3ecac, 156, 0};
		bbOnDebugEnterStm(&__stmt_0);
		brl_blitz_DebugLog(bbStringConcat(bbStringConcat(bbt_pad,((BBString*)&_s370)),bbStringFromInt(((struct openb3d_openb3dcore_TTexture_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_ttexture_cube_face [0])));
		bbOnDebugLeaveScope();
	}else{
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0xc98026d238c3ecac, 156, 0};
		bbOnDebugEnterStm(&__stmt_0);
		brl_blitz_DebugLog(bbStringConcat(bbt_pad,((BBString*)&_s371)));
		bbOnDebugLeaveScope();
	}
	struct BBDebugStm __stmt_14 = {0xc98026d238c3ecac, 157, 0};
	bbOnDebugEnterStm(&__stmt_14);
	if(((struct openb3d_openb3dcore_TTexture_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_ttexture_cube_mode !=0){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0xc98026d238c3ecac, 157, 0};
		bbOnDebugEnterStm(&__stmt_0);
		brl_blitz_DebugLog(bbStringConcat(bbStringConcat(bbt_pad,((BBString*)&_s372)),bbStringFromInt(((struct openb3d_openb3dcore_TTexture_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_ttexture_cube_mode [0])));
		bbOnDebugLeaveScope();
	}else{
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0xc98026d238c3ecac, 157, 0};
		bbOnDebugEnterStm(&__stmt_0);
		brl_blitz_DebugLog(bbStringConcat(bbt_pad,((BBString*)&_s373)));
		bbOnDebugLeaveScope();
	}
	struct BBDebugStm __stmt_15 = {0xc98026d238c3ecac, 158, 0};
	bbOnDebugEnterStm(&__stmt_15);
	if(((struct openb3d_openb3dcore_TTexture_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_ttexture_no_mipmaps !=(&bbEmptyArray)){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0xc98026d238c3ecac, 158, 0};
		bbOnDebugEnterStm(&__stmt_0);
		brl_blitz_DebugLog(bbStringConcat(bbStringConcat(bbt_pad,((BBString*)&_s374)),bbStringFromInt(((BBINT*)BBARRAYDATAINDEX((((struct openb3d_openb3dcore_TTexture_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_ttexture_no_mipmaps ),(((struct openb3d_openb3dcore_TTexture_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_ttexture_no_mipmaps )->dims,0U))[0U])));
		bbOnDebugLeaveScope();
	}else{
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0xc98026d238c3ecac, 158, 0};
		bbOnDebugEnterStm(&__stmt_0);
		brl_blitz_DebugLog(bbStringConcat(bbt_pad,((BBString*)&_s375)));
		bbOnDebugLeaveScope();
	}
	struct BBDebugStm __stmt_16 = {0xc98026d238c3ecac, 161, 0};
	bbOnDebugEnterStm(&__stmt_16);
	if(((struct openb3d_openb3dcore_TTexture_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_ttexture_texture !=0){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0xc98026d238c3ecac, 161, 0};
		bbOnDebugEnterStm(&__stmt_0);
		brl_blitz_DebugLog(bbStringConcat(bbStringConcat(bbt_pad,((BBString*)&_s376)),bbStringFromInt(((struct openb3d_openb3dcore_TTexture_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_ttexture_texture [0])));
		bbOnDebugLeaveScope();
	}else{
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0xc98026d238c3ecac, 161, 0};
		bbOnDebugEnterStm(&__stmt_0);
		brl_blitz_DebugLog(bbStringConcat(bbt_pad,((BBString*)&_s377)));
		bbOnDebugLeaveScope();
	}
	struct BBDebugStm __stmt_17 = {0xc98026d238c3ecac, 162, 0};
	bbOnDebugEnterStm(&__stmt_17);
	brl_blitz_DebugLog(bbStringConcat(bbStringConcat(bbt_pad,((BBString*)&_s378)),openb3d_openb3dcore_StringPtr((BBBYTE*)((struct openb3d_openb3dcore_TTexture_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_ttexture_frames )));
	struct BBDebugStm __stmt_18 = {0xc98026d238c3ecac, 163, 0};
	bbOnDebugEnterStm(&__stmt_18);
	{
		BBINT bbt_id=0;
		BBINT bbt_2=(((struct openb3d_openb3dcore_TTexture_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_ttexture_no_frames [0]-1);
		for(;(bbt_id<=bbt_2);bbt_id=(bbt_id+1)){
			struct BBDebugScope_1 __scope = {
				BBDEBUGSCOPE_LOCALBLOCK,
				0,
				{
					{
						BBDEBUGDECL_LOCAL,
						"id",
						"i",
						.var_address=&bbt_id
					},
					{
						BBDEBUGDECL_END
					}
				}
			};
			bbOnDebugEnterScope((BBDebugScope *)&__scope);
			struct BBDebugStm __stmt_0 = {0xc98026d238c3ecac, 164, 0};
			bbOnDebugEnterStm(&__stmt_0);
			if(((struct openb3d_openb3dcore_TTexture_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_ttexture_frames !=0){
				struct BBDebugScope __scope = {
					BBDEBUGSCOPE_LOCALBLOCK,
					0,
					{
						{
							BBDEBUGDECL_END
						}
					}
				};
				bbOnDebugEnterScope((BBDebugScope *)&__scope);
				struct BBDebugStm __stmt_0 = {0xc98026d238c3ecac, 164, 0};
				bbOnDebugEnterStm(&__stmt_0);
				brl_blitz_DebugLog(bbStringConcat(bbStringConcat(bbStringConcat(bbStringConcat(bbt_pad,((BBString*)&_s379)),bbStringFromInt(bbt_id)),((BBString*)&_s163)),bbStringFromInt(((struct openb3d_openb3dcore_TTexture_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_ttexture_frames [bbt_id])));
				bbOnDebugLeaveScope();
			}
			bbOnDebugLeaveScope();
		}
	}
	struct BBDebugStm __stmt_19 = {0xc98026d238c3ecac, 166, 0};
	bbOnDebugEnterStm(&__stmt_19);
	brl_blitz_DebugLog(bbStringConcat(bbStringConcat(bbt_pad,((BBString*)&_s380)),openb3d_openb3dcore_StringPtr((BBBYTE*)((struct openb3d_openb3dcore_TTexture_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_ttexture_framebuffer )));
	struct BBDebugStm __stmt_20 = {0xc98026d238c3ecac, 167, 0};
	bbOnDebugEnterStm(&__stmt_20);
	if(((struct openb3d_openb3dcore_TTexture_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_ttexture_framebuffer !=0){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0xc98026d238c3ecac, 167, 0};
		bbOnDebugEnterStm(&__stmt_0);
		brl_blitz_DebugLog(bbStringConcat(bbStringConcat(bbStringConcat(bbStringConcat(bbt_pad,((BBString*)&_s381)),bbStringFromInt(((struct openb3d_openb3dcore_TTexture_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_ttexture_framebuffer [0])),((BBString*)&_s313)),bbStringFromInt(((struct openb3d_openb3dcore_TTexture_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_ttexture_framebuffer [1])));
		bbOnDebugLeaveScope();
	}
	struct BBDebugStm __stmt_21 = {0xc98026d238c3ecac, 168, 0};
	bbOnDebugEnterStm(&__stmt_21);
	brl_blitz_DebugLog(bbStringConcat(bbStringConcat(bbt_pad,((BBString*)&_s382)),openb3d_openb3dcore_StringPtr((BBBYTE*)((struct openb3d_openb3dcore_TTexture_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_ttexture_gltex )));
	struct BBDebugStm __stmt_22 = {0xc98026d238c3ecac, 169, 0};
	bbOnDebugEnterStm(&__stmt_22);
	if(((struct openb3d_openb3dcore_TTexture_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_ttexture_gltex !=0){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0xc98026d238c3ecac, 169, 0};
		bbOnDebugEnterStm(&__stmt_0);
		brl_blitz_DebugLog(bbStringConcat(bbStringConcat(bbt_pad,((BBString*)&_s382)),bbStringFromInt(((struct openb3d_openb3dcore_TTexture_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_ttexture_gltex [0])));
		bbOnDebugLeaveScope();
	}
	struct BBDebugStm __stmt_23 = {0xc98026d238c3ecac, 172, 0};
	bbOnDebugEnterStm(&__stmt_23);
	if(((struct openb3d_openb3dcore_TTexture_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_ttexture_u_scale !=0){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0xc98026d238c3ecac, 172, 0};
		bbOnDebugEnterStm(&__stmt_0);
		brl_blitz_DebugLog(bbStringConcat(bbStringConcat(bbt_pad,((BBString*)&_s383)),bbStringFromFloat(((struct openb3d_openb3dcore_TTexture_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_ttexture_u_scale [0])));
		bbOnDebugLeaveScope();
	}else{
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0xc98026d238c3ecac, 172, 0};
		bbOnDebugEnterStm(&__stmt_0);
		brl_blitz_DebugLog(bbStringConcat(bbt_pad,((BBString*)&_s384)));
		bbOnDebugLeaveScope();
	}
	struct BBDebugStm __stmt_24 = {0xc98026d238c3ecac, 173, 0};
	bbOnDebugEnterStm(&__stmt_24);
	if(((struct openb3d_openb3dcore_TTexture_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_ttexture_v_scale !=0){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0xc98026d238c3ecac, 173, 0};
		bbOnDebugEnterStm(&__stmt_0);
		brl_blitz_DebugLog(bbStringConcat(bbStringConcat(bbt_pad,((BBString*)&_s385)),bbStringFromFloat(((struct openb3d_openb3dcore_TTexture_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_ttexture_v_scale [0])));
		bbOnDebugLeaveScope();
	}else{
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0xc98026d238c3ecac, 173, 0};
		bbOnDebugEnterStm(&__stmt_0);
		brl_blitz_DebugLog(bbStringConcat(bbt_pad,((BBString*)&_s386)));
		bbOnDebugLeaveScope();
	}
	struct BBDebugStm __stmt_25 = {0xc98026d238c3ecac, 174, 0};
	bbOnDebugEnterStm(&__stmt_25);
	if(((struct openb3d_openb3dcore_TTexture_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_ttexture_u_pos !=0){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0xc98026d238c3ecac, 174, 0};
		bbOnDebugEnterStm(&__stmt_0);
		brl_blitz_DebugLog(bbStringConcat(bbStringConcat(bbt_pad,((BBString*)&_s387)),bbStringFromFloat(((struct openb3d_openb3dcore_TTexture_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_ttexture_u_pos [0])));
		bbOnDebugLeaveScope();
	}else{
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0xc98026d238c3ecac, 174, 0};
		bbOnDebugEnterStm(&__stmt_0);
		brl_blitz_DebugLog(bbStringConcat(bbt_pad,((BBString*)&_s388)));
		bbOnDebugLeaveScope();
	}
	struct BBDebugStm __stmt_26 = {0xc98026d238c3ecac, 175, 0};
	bbOnDebugEnterStm(&__stmt_26);
	if(((struct openb3d_openb3dcore_TTexture_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_ttexture_v_pos !=0){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0xc98026d238c3ecac, 175, 0};
		bbOnDebugEnterStm(&__stmt_0);
		brl_blitz_DebugLog(bbStringConcat(bbStringConcat(bbt_pad,((BBString*)&_s389)),bbStringFromFloat(((struct openb3d_openb3dcore_TTexture_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_ttexture_v_pos [0])));
		bbOnDebugLeaveScope();
	}else{
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0xc98026d238c3ecac, 175, 0};
		bbOnDebugEnterStm(&__stmt_0);
		brl_blitz_DebugLog(bbStringConcat(bbt_pad,((BBString*)&_s390)));
		bbOnDebugLeaveScope();
	}
	struct BBDebugStm __stmt_27 = {0xc98026d238c3ecac, 176, 0};
	bbOnDebugEnterStm(&__stmt_27);
	if(((struct openb3d_openb3dcore_TTexture_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_ttexture_angle !=0){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0xc98026d238c3ecac, 176, 0};
		bbOnDebugEnterStm(&__stmt_0);
		brl_blitz_DebugLog(bbStringConcat(bbStringConcat(bbt_pad,((BBString*)&_s251)),bbStringFromFloat(((struct openb3d_openb3dcore_TTexture_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_ttexture_angle [0])));
		bbOnDebugLeaveScope();
	}else{
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0xc98026d238c3ecac, 176, 0};
		bbOnDebugEnterStm(&__stmt_0);
		brl_blitz_DebugLog(bbStringConcat(bbt_pad,((BBString*)&_s252)));
		bbOnDebugLeaveScope();
	}
	struct BBDebugStm __stmt_28 = {0xc98026d238c3ecac, 179, 0};
	bbOnDebugEnterStm(&__stmt_28);
	if(((struct openb3d_openb3dcore_TTexture_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_ttexture_file !=0){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0xc98026d238c3ecac, 179, 0};
		bbOnDebugEnterStm(&__stmt_0);
		((struct openb3d_openb3dcore_TTexture_obj*)bbNullObjectTest((BBObject*)o));
		brl_blitz_DebugLog(bbStringConcat(bbStringConcat(bbt_pad,((BBString*)&_s391)),((struct openb3d_openb3dcore_TTexture_obj*)o)->clas->m_GetString_pb((struct openb3d_openb3dcore_TTexture_obj*)o,((struct openb3d_openb3dcore_TTexture_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_ttexture_file )));
		bbOnDebugLeaveScope();
	}else{
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0xc98026d238c3ecac, 179, 0};
		bbOnDebugEnterStm(&__stmt_0);
		brl_blitz_DebugLog(bbStringConcat(bbt_pad,((BBString*)&_s392)));
		bbOnDebugLeaveScope();
	}
	struct BBDebugStm __stmt_29 = {0xc98026d238c3ecac, 180, 0};
	bbOnDebugEnterStm(&__stmt_29);
	if(((struct openb3d_openb3dcore_TTexture_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_ttexture_file_abs !=0){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0xc98026d238c3ecac, 180, 0};
		bbOnDebugEnterStm(&__stmt_0);
		((struct openb3d_openb3dcore_TTexture_obj*)bbNullObjectTest((BBObject*)o));
		brl_blitz_DebugLog(bbStringConcat(bbStringConcat(bbt_pad,((BBString*)&_s393)),((struct openb3d_openb3dcore_TTexture_obj*)o)->clas->m_GetString_pb((struct openb3d_openb3dcore_TTexture_obj*)o,((struct openb3d_openb3dcore_TTexture_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_ttexture_file_abs )));
		bbOnDebugLeaveScope();
	}else{
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0xc98026d238c3ecac, 180, 0};
		bbOnDebugEnterStm(&__stmt_0);
		brl_blitz_DebugLog(bbStringConcat(bbt_pad,((BBString*)&_s394)));
		bbOnDebugLeaveScope();
	}
	struct BBDebugStm __stmt_30 = {0xc98026d238c3ecac, 182, 0};
	bbOnDebugEnterStm(&__stmt_30);
	brl_blitz_DebugLog((BBString*)&bbEmptyString);
	bbOnDebugLeaveScope();
	return 0;
}
BBINT openb3d_openb3dcore_TTexture_AddList__i_TTList(struct brl_linkedlist_TList_obj* bbt_list){
	struct BBDebugScope_1 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"AddList_",
		{
			{
				BBDEBUGDECL_LOCAL,
				"list",
				":TList",
				.var_address=&bbt_list
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0xc98026d238c3ecac, 188, 0};
	bbOnDebugEnterStm(&__stmt_0);
	struct brl_linkedlist_TList_obj* bbt_=(struct brl_linkedlist_TList_obj*)bbt_list;
	struct BBDebugStm __stmt_1 = {0xc98026d238c3ecac, 189, 0};
	bbOnDebugEnterStm(&__stmt_1);
	if(((struct brl_linkedlist_TList_obj*)bbt_)==openb3d_openb3dcore_TTexture_tex_list){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0xc98026d238c3ecac, 190, 0};
		bbOnDebugEnterStm(&__stmt_0);
		if(StaticListSize_(52,2)!=0){
			BBBYTE* bbt_inst=0;
			struct openb3d_openb3dcore_TTexture_obj* bbt_obj=(struct openb3d_openb3dcore_TTexture_obj*)((struct openb3d_openb3dcore_TTexture_obj*)&bbNullObject);
			struct BBDebugScope_2 __scope = {
				BBDEBUGSCOPE_LOCALBLOCK,
				0,
				{
					{
						BBDEBUGDECL_LOCAL,
						"inst",
						"*b",
						.var_address=&bbt_inst
					},
					{
						BBDEBUGDECL_LOCAL,
						"obj",
						":TTexture",
						.var_address=&bbt_obj
					},
					{
						BBDEBUGDECL_END
					}
				}
			};
			bbOnDebugEnterScope((BBDebugScope *)&__scope);
			struct BBDebugStm __stmt_0 = {0xc98026d238c3ecac, 191, 0};
			bbOnDebugEnterStm(&__stmt_0);
			bbt_inst=StaticIterListTexture_(52,2,(&openb3d_openb3dcore_TTexture_tex_list_id));
			struct BBDebugStm __stmt_1 = {0xc98026d238c3ecac, 192, 0};
			bbOnDebugEnterStm(&__stmt_1);
			bbt_obj=(struct openb3d_openb3dcore_TTexture_obj*)openb3d_openb3dcore_TTexture_GetObject_TTTexture_pb(bbt_inst);
			struct BBDebugStm __stmt_2 = {0xc98026d238c3ecac, 193, 0};
			bbOnDebugEnterStm(&__stmt_2);
			if(((BBObject*)bbt_obj)!= &bbNullObject){
				struct BBDebugScope __scope = {
					BBDEBUGSCOPE_LOCALBLOCK,
					0,
					{
						{
							BBDEBUGDECL_END
						}
					}
				};
				bbOnDebugEnterScope((BBDebugScope *)&__scope);
				struct BBDebugStm __stmt_0 = {0xc98026d238c3ecac, 193, 0};
				bbOnDebugEnterStm(&__stmt_0);
				brl_linkedlist_ListAddLast((struct brl_linkedlist_TList_obj*)bbt_list,(BBOBJECT)bbt_obj);
				bbOnDebugLeaveScope();
			}
			bbOnDebugLeaveScope();
		}
		bbOnDebugLeaveScope();
	}else{
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0xc98026d238c3ecac, 195, 0};
		bbOnDebugEnterStm(&__stmt_0);
		if(((struct brl_linkedlist_TList_obj*)bbt_)==openb3d_openb3dcore_TTexture_tex_list_all){
			struct BBDebugScope __scope = {
				BBDEBUGSCOPE_LOCALBLOCK,
				0,
				{
					{
						BBDEBUGDECL_END
					}
				}
			};
			bbOnDebugEnterScope((BBDebugScope *)&__scope);
			struct BBDebugStm __stmt_0 = {0xc98026d238c3ecac, 196, 0};
			bbOnDebugEnterStm(&__stmt_0);
			if(StaticListSize_(52,20)!=0){
				BBBYTE* bbt_inst2=0;
				struct openb3d_openb3dcore_TTexture_obj* bbt_obj2=(struct openb3d_openb3dcore_TTexture_obj*)((struct openb3d_openb3dcore_TTexture_obj*)&bbNullObject);
				struct BBDebugScope_2 __scope = {
					BBDEBUGSCOPE_LOCALBLOCK,
					0,
					{
						{
							BBDEBUGDECL_LOCAL,
							"inst",
							"*b",
							.var_address=&bbt_inst2
						},
						{
							BBDEBUGDECL_LOCAL,
							"obj",
							":TTexture",
							.var_address=&bbt_obj2
						},
						{
							BBDEBUGDECL_END
						}
					}
				};
				bbOnDebugEnterScope((BBDebugScope *)&__scope);
				struct BBDebugStm __stmt_0 = {0xc98026d238c3ecac, 197, 0};
				bbOnDebugEnterStm(&__stmt_0);
				bbt_inst2=StaticIterListTexture_(52,2,(&openb3d_openb3dcore_TTexture_tex_list_all_id));
				struct BBDebugStm __stmt_1 = {0xc98026d238c3ecac, 198, 0};
				bbOnDebugEnterStm(&__stmt_1);
				bbt_obj2=(struct openb3d_openb3dcore_TTexture_obj*)openb3d_openb3dcore_TTexture_GetObject_TTTexture_pb(bbt_inst2);
				struct BBDebugStm __stmt_2 = {0xc98026d238c3ecac, 199, 0};
				bbOnDebugEnterStm(&__stmt_2);
				if(((BBObject*)bbt_obj2)!= &bbNullObject){
					struct BBDebugScope __scope = {
						BBDEBUGSCOPE_LOCALBLOCK,
						0,
						{
							{
								BBDEBUGDECL_END
							}
						}
					};
					bbOnDebugEnterScope((BBDebugScope *)&__scope);
					struct BBDebugStm __stmt_0 = {0xc98026d238c3ecac, 199, 0};
					bbOnDebugEnterStm(&__stmt_0);
					brl_linkedlist_ListAddLast((struct brl_linkedlist_TList_obj*)bbt_list,(BBOBJECT)bbt_obj2);
					bbOnDebugLeaveScope();
				}
				bbOnDebugLeaveScope();
			}
			bbOnDebugLeaveScope();
		}
		bbOnDebugLeaveScope();
	}
	bbOnDebugLeaveScope();
	return 0;
}
BBINT openb3d_openb3dcore_TTexture_CopyList__i_TTList(struct brl_linkedlist_TList_obj* bbt_list){
	struct BBDebugScope_1 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"CopyList_",
		{
			{
				BBDEBUGDECL_LOCAL,
				"list",
				":TList",
				.var_address=&bbt_list
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0xc98026d238c3ecac, 207, 0};
	bbOnDebugEnterStm(&__stmt_0);
	brl_linkedlist_ClearList((struct brl_linkedlist_TList_obj*)bbt_list);
	struct BBDebugStm __stmt_1 = {0xc98026d238c3ecac, 209, 0};
	bbOnDebugEnterStm(&__stmt_1);
	struct brl_linkedlist_TList_obj* bbt_=(struct brl_linkedlist_TList_obj*)bbt_list;
	struct BBDebugStm __stmt_2 = {0xc98026d238c3ecac, 210, 0};
	bbOnDebugEnterStm(&__stmt_2);
	if(((struct brl_linkedlist_TList_obj*)bbt_)==openb3d_openb3dcore_TTexture_tex_list){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0xc98026d238c3ecac, 211, 0};
		bbOnDebugEnterStm(&__stmt_0);
		openb3d_openb3dcore_TTexture_tex_list_id=0;
		struct BBDebugStm __stmt_1 = {0xc98026d238c3ecac, 212, 0};
		bbOnDebugEnterStm(&__stmt_1);
		{
			BBINT bbt_id=0;
			BBINT bbt_2=(StaticListSize_(52,2)-1);
			for(;(bbt_id<=bbt_2);bbt_id=(bbt_id+1)){
				BBBYTE* bbt_inst=0;
				struct openb3d_openb3dcore_TTexture_obj* bbt_obj=(struct openb3d_openb3dcore_TTexture_obj*)((struct openb3d_openb3dcore_TTexture_obj*)&bbNullObject);
				struct BBDebugScope_3 __scope = {
					BBDEBUGSCOPE_LOCALBLOCK,
					0,
					{
						{
							BBDEBUGDECL_LOCAL,
							"id",
							"i",
							.var_address=&bbt_id
						},
						{
							BBDEBUGDECL_LOCAL,
							"inst",
							"*b",
							.var_address=&bbt_inst
						},
						{
							BBDEBUGDECL_LOCAL,
							"obj",
							":TTexture",
							.var_address=&bbt_obj
						},
						{
							BBDEBUGDECL_END
						}
					}
				};
				bbOnDebugEnterScope((BBDebugScope *)&__scope);
				struct BBDebugStm __stmt_0 = {0xc98026d238c3ecac, 213, 0};
				bbOnDebugEnterStm(&__stmt_0);
				bbt_inst=StaticIterListTexture_(52,2,(&openb3d_openb3dcore_TTexture_tex_list_id));
				struct BBDebugStm __stmt_1 = {0xc98026d238c3ecac, 214, 0};
				bbOnDebugEnterStm(&__stmt_1);
				bbt_obj=(struct openb3d_openb3dcore_TTexture_obj*)openb3d_openb3dcore_TTexture_GetObject_TTTexture_pb(bbt_inst);
				struct BBDebugStm __stmt_2 = {0xc98026d238c3ecac, 215, 0};
				bbOnDebugEnterStm(&__stmt_2);
				if(((BBObject*)bbt_obj)!= &bbNullObject){
					struct BBDebugScope __scope = {
						BBDEBUGSCOPE_LOCALBLOCK,
						0,
						{
							{
								BBDEBUGDECL_END
							}
						}
					};
					bbOnDebugEnterScope((BBDebugScope *)&__scope);
					struct BBDebugStm __stmt_0 = {0xc98026d238c3ecac, 215, 0};
					bbOnDebugEnterStm(&__stmt_0);
					brl_linkedlist_ListAddLast((struct brl_linkedlist_TList_obj*)bbt_list,(BBOBJECT)bbt_obj);
					bbOnDebugLeaveScope();
				}
				bbOnDebugLeaveScope();
			}
		}
		bbOnDebugLeaveScope();
	}else{
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0xc98026d238c3ecac, 217, 0};
		bbOnDebugEnterStm(&__stmt_0);
		if(((struct brl_linkedlist_TList_obj*)bbt_)==openb3d_openb3dcore_TTexture_tex_list_all){
			struct BBDebugScope __scope = {
				BBDEBUGSCOPE_LOCALBLOCK,
				0,
				{
					{
						BBDEBUGDECL_END
					}
				}
			};
			bbOnDebugEnterScope((BBDebugScope *)&__scope);
			struct BBDebugStm __stmt_0 = {0xc98026d238c3ecac, 218, 0};
			bbOnDebugEnterStm(&__stmt_0);
			openb3d_openb3dcore_TTexture_tex_list_all_id=0;
			struct BBDebugStm __stmt_1 = {0xc98026d238c3ecac, 219, 0};
			bbOnDebugEnterStm(&__stmt_1);
			{
				BBINT bbt_id2=0;
				BBINT bbt_3=(StaticListSize_(52,20)-1);
				for(;(bbt_id2<=bbt_3);bbt_id2=(bbt_id2+1)){
					BBBYTE* bbt_inst2=0;
					struct openb3d_openb3dcore_TTexture_obj* bbt_obj2=(struct openb3d_openb3dcore_TTexture_obj*)((struct openb3d_openb3dcore_TTexture_obj*)&bbNullObject);
					struct BBDebugScope_3 __scope = {
						BBDEBUGSCOPE_LOCALBLOCK,
						0,
						{
							{
								BBDEBUGDECL_LOCAL,
								"id",
								"i",
								.var_address=&bbt_id2
							},
							{
								BBDEBUGDECL_LOCAL,
								"inst",
								"*b",
								.var_address=&bbt_inst2
							},
							{
								BBDEBUGDECL_LOCAL,
								"obj",
								":TTexture",
								.var_address=&bbt_obj2
							},
							{
								BBDEBUGDECL_END
							}
						}
					};
					bbOnDebugEnterScope((BBDebugScope *)&__scope);
					struct BBDebugStm __stmt_0 = {0xc98026d238c3ecac, 220, 0};
					bbOnDebugEnterStm(&__stmt_0);
					bbt_inst2=StaticIterListTexture_(52,20,(&openb3d_openb3dcore_TTexture_tex_list_all_id));
					struct BBDebugStm __stmt_1 = {0xc98026d238c3ecac, 221, 0};
					bbOnDebugEnterStm(&__stmt_1);
					bbt_obj2=(struct openb3d_openb3dcore_TTexture_obj*)openb3d_openb3dcore_TTexture_GetObject_TTTexture_pb(bbt_inst2);
					struct BBDebugStm __stmt_2 = {0xc98026d238c3ecac, 222, 0};
					bbOnDebugEnterStm(&__stmt_2);
					if(((BBObject*)bbt_obj2)!= &bbNullObject){
						struct BBDebugScope __scope = {
							BBDEBUGSCOPE_LOCALBLOCK,
							0,
							{
								{
									BBDEBUGDECL_END
								}
							}
						};
						bbOnDebugEnterScope((BBDebugScope *)&__scope);
						struct BBDebugStm __stmt_0 = {0xc98026d238c3ecac, 222, 0};
						bbOnDebugEnterStm(&__stmt_0);
						brl_linkedlist_ListAddLast((struct brl_linkedlist_TList_obj*)bbt_list,(BBOBJECT)bbt_obj2);
						bbOnDebugLeaveScope();
					}
					bbOnDebugLeaveScope();
				}
			}
			bbOnDebugLeaveScope();
		}
		bbOnDebugLeaveScope();
	}
	bbOnDebugLeaveScope();
	return 0;
}
BBINT _openb3d_openb3dcore_TTexture_TextureListAdd_TTList(struct openb3d_openb3dcore_TTexture_obj* o,struct brl_linkedlist_TList_obj* bbt_list){
	((struct openb3d_openb3dcore_TTexture_obj*)bbNullObjectTest((BBObject*)o));
	struct BBDebugScope_2 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"TextureListAdd",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TTexture",
				.var_address=&o
			},
			{
				BBDEBUGDECL_LOCAL,
				"list",
				":TList",
				.var_address=&bbt_list
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0xc98026d238c3ecac, 230, 0};
	bbOnDebugEnterStm(&__stmt_0);
	struct brl_linkedlist_TList_obj* bbt_=(struct brl_linkedlist_TList_obj*)bbt_list;
	struct BBDebugStm __stmt_1 = {0xc98026d238c3ecac, 231, 0};
	bbOnDebugEnterStm(&__stmt_1);
	if(((struct brl_linkedlist_TList_obj*)bbt_)==openb3d_openb3dcore_TTexture_tex_list){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0xc98026d238c3ecac, 232, 0};
		bbOnDebugEnterStm(&__stmt_0);
		GlobalListPushBackTexture_(2,o->clas->f_GetInstance_pb_TTTexture((struct openb3d_openb3dcore_TTexture_obj*)o));
		struct BBDebugStm __stmt_1 = {0xc98026d238c3ecac, 233, 0};
		bbOnDebugEnterStm(&__stmt_1);
		o->clas->f_AddList__i_TTList((struct brl_linkedlist_TList_obj*)bbt_list);
		bbOnDebugLeaveScope();
	}else{
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0xc98026d238c3ecac, 234, 0};
		bbOnDebugEnterStm(&__stmt_0);
		if(((struct brl_linkedlist_TList_obj*)bbt_)==openb3d_openb3dcore_TTexture_tex_list_all){
			struct BBDebugScope __scope = {
				BBDEBUGSCOPE_LOCALBLOCK,
				0,
				{
					{
						BBDEBUGDECL_END
					}
				}
			};
			bbOnDebugEnterScope((BBDebugScope *)&__scope);
			struct BBDebugStm __stmt_0 = {0xc98026d238c3ecac, 235, 0};
			bbOnDebugEnterStm(&__stmt_0);
			GlobalListPushBackTexture_(20,o->clas->f_GetInstance_pb_TTTexture((struct openb3d_openb3dcore_TTexture_obj*)o));
			struct BBDebugStm __stmt_1 = {0xc98026d238c3ecac, 236, 0};
			bbOnDebugEnterStm(&__stmt_1);
			o->clas->f_AddList__i_TTList((struct brl_linkedlist_TList_obj*)bbt_list);
			bbOnDebugLeaveScope();
		}
		bbOnDebugLeaveScope();
	}
	bbOnDebugLeaveScope();
	return 0;
}
BBINT _openb3d_openb3dcore_TTexture_TextureListRemove_TTList(struct openb3d_openb3dcore_TTexture_obj* o,struct brl_linkedlist_TList_obj* bbt_list){
	((struct openb3d_openb3dcore_TTexture_obj*)bbNullObjectTest((BBObject*)o));
	struct BBDebugScope_2 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"TextureListRemove",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TTexture",
				.var_address=&o
			},
			{
				BBDEBUGDECL_LOCAL,
				"list",
				":TList",
				.var_address=&bbt_list
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0xc98026d238c3ecac, 243, 0};
	bbOnDebugEnterStm(&__stmt_0);
	struct brl_linkedlist_TList_obj* bbt_=(struct brl_linkedlist_TList_obj*)bbt_list;
	struct BBDebugStm __stmt_1 = {0xc98026d238c3ecac, 244, 0};
	bbOnDebugEnterStm(&__stmt_1);
	if(((struct brl_linkedlist_TList_obj*)bbt_)==openb3d_openb3dcore_TTexture_tex_list){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0xc98026d238c3ecac, 245, 0};
		bbOnDebugEnterStm(&__stmt_0);
		GlobalListRemoveTexture_(2,o->clas->f_GetInstance_pb_TTTexture((struct openb3d_openb3dcore_TTexture_obj*)o));
		struct BBDebugStm __stmt_1 = {0xc98026d238c3ecac, 246, 0};
		bbOnDebugEnterStm(&__stmt_1);
		brl_linkedlist_ListRemove((struct brl_linkedlist_TList_obj*)bbt_list,(BBOBJECT)o);
		struct BBDebugStm __stmt_2 = {0xc98026d238c3ecac, 246, 0};
		bbOnDebugEnterStm(&__stmt_2);
		openb3d_openb3dcore_TTexture_tex_list_id-=1;
		bbOnDebugLeaveScope();
	}else{
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0xc98026d238c3ecac, 247, 0};
		bbOnDebugEnterStm(&__stmt_0);
		if(((struct brl_linkedlist_TList_obj*)bbt_)==openb3d_openb3dcore_TTexture_tex_list_all){
			struct BBDebugScope __scope = {
				BBDEBUGSCOPE_LOCALBLOCK,
				0,
				{
					{
						BBDEBUGDECL_END
					}
				}
			};
			bbOnDebugEnterScope((BBDebugScope *)&__scope);
			struct BBDebugStm __stmt_0 = {0xc98026d238c3ecac, 248, 0};
			bbOnDebugEnterStm(&__stmt_0);
			GlobalListRemoveTexture_(20,o->clas->f_GetInstance_pb_TTTexture((struct openb3d_openb3dcore_TTexture_obj*)o));
			struct BBDebugStm __stmt_1 = {0xc98026d238c3ecac, 249, 0};
			bbOnDebugEnterStm(&__stmt_1);
			brl_linkedlist_ListRemove((struct brl_linkedlist_TList_obj*)bbt_list,(BBOBJECT)o);
			struct BBDebugStm __stmt_2 = {0xc98026d238c3ecac, 249, 0};
			bbOnDebugEnterStm(&__stmt_2);
			openb3d_openb3dcore_TTexture_tex_list_all_id-=1;
			bbOnDebugLeaveScope();
		}
		bbOnDebugLeaveScope();
	}
	bbOnDebugLeaveScope();
	return 0;
}
struct openb3d_openb3dcore_TTexture_obj* openb3d_openb3dcore_TTexture_NewTexture_TTTexture(){
	BBBYTE* bbt_inst=0;
	struct BBDebugScope_1 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"NewTexture",
		{
			{
				BBDEBUGDECL_LOCAL,
				"inst",
				"*b",
				.var_address=&bbt_inst
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0xc98026d238c3ecac, 256, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbt_inst=NewTexture_();
	struct BBDebugStm __stmt_1 = {0xc98026d238c3ecac, 257, 0};
	bbOnDebugEnterStm(&__stmt_1);
	bbOnDebugLeaveScope();
	return (struct openb3d_openb3dcore_TTexture_obj*)openb3d_openb3dcore_TTexture_CreateObject_TTTexture_pb(bbt_inst);
}
struct openb3d_openb3dcore_TTexture_obj* openb3d_openb3dcore_TTexture_Create_TTTexture(){
	BBBYTE* bbt_inst=0;
	struct BBDebugScope_1 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"Create",
		{
			{
				BBDEBUGDECL_LOCAL,
				"inst",
				"*b",
				.var_address=&bbt_inst
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0xc98026d238c3ecac, 263, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbt_inst=NewTexture_();
	struct BBDebugStm __stmt_1 = {0xc98026d238c3ecac, 264, 0};
	bbOnDebugEnterStm(&__stmt_1);
	bbOnDebugLeaveScope();
	return (struct openb3d_openb3dcore_TTexture_obj*)openb3d_openb3dcore_TTexture_CreateObject_TTTexture_pb(bbt_inst);
}
BBINT _openb3d_openb3dcore_TTexture_CountMipmaps(struct openb3d_openb3dcore_TTexture_obj* o){
	((struct openb3d_openb3dcore_TTexture_obj*)bbNullObjectTest((BBObject*)o));
	struct BBDebugScope_1 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"CountMipmaps",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TTexture",
				.var_address=&o
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0xc98026d238c3ecac, 270, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbOnDebugLeaveScope();
	return CountMipmaps_(o->clas->f_GetInstance_pb_TTTexture((struct openb3d_openb3dcore_TTexture_obj*)o));
}
BBINT _openb3d_openb3dcore_TTexture_BufferToTex_pbi(struct openb3d_openb3dcore_TTexture_obj* o,BBBYTE* bbt_buffer,BBINT bbt_frame){
	((struct openb3d_openb3dcore_TTexture_obj*)bbNullObjectTest((BBObject*)o));
	struct BBDebugScope_3 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"BufferToTex",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TTexture",
				.var_address=&o
			},
			{
				BBDEBUGDECL_LOCAL,
				"buffer",
				"*b",
				.var_address=&bbt_buffer
			},
			{
				BBDEBUGDECL_LOCAL,
				"frame",
				"i",
				.var_address=&bbt_frame
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0xc98026d238c3ecac, 278, 0};
	bbOnDebugEnterStm(&__stmt_0);
	BufferToTex_(o->clas->f_GetInstance_pb_TTTexture((struct openb3d_openb3dcore_TTexture_obj*)o),bbt_buffer,bbt_frame);
	bbOnDebugLeaveScope();
	return 0;
}
BBINT _openb3d_openb3dcore_TTexture_TexToBuffer_pbi(struct openb3d_openb3dcore_TTexture_obj* o,BBBYTE* bbt_buffer,BBINT bbt_frame){
	((struct openb3d_openb3dcore_TTexture_obj*)bbNullObjectTest((BBObject*)o));
	struct BBDebugScope_3 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"TexToBuffer",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TTexture",
				.var_address=&o
			},
			{
				BBDEBUGDECL_LOCAL,
				"buffer",
				"*b",
				.var_address=&bbt_buffer
			},
			{
				BBDEBUGDECL_LOCAL,
				"frame",
				"i",
				.var_address=&bbt_frame
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0xc98026d238c3ecac, 284, 0};
	bbOnDebugEnterStm(&__stmt_0);
	TexToBuffer_(o->clas->f_GetInstance_pb_TTTexture((struct openb3d_openb3dcore_TTexture_obj*)o),bbt_buffer,bbt_frame);
	bbOnDebugLeaveScope();
	return 0;
}
BBINT _openb3d_openb3dcore_TTexture_CameraToTex_TTCamerai(struct openb3d_openb3dcore_TTexture_obj* o,struct openb3d_openb3dcore_TCamera_obj* bbt_cam,BBINT bbt_frame){
	((struct openb3d_openb3dcore_TTexture_obj*)bbNullObjectTest((BBObject*)o));
	struct BBDebugScope_3 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"CameraToTex",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TTexture",
				.var_address=&o
			},
			{
				BBDEBUGDECL_LOCAL,
				"cam",
				":TCamera",
				.var_address=&bbt_cam
			},
			{
				BBDEBUGDECL_LOCAL,
				"frame",
				"i",
				.var_address=&bbt_frame
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0xc98026d238c3ecac, 290, 0};
	bbOnDebugEnterStm(&__stmt_0);
	if(openb3d_openb3dcore_TGlobal3D_GL_Version<2.1f){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0xc98026d238c3ecac, 291, 0};
		bbOnDebugEnterStm(&__stmt_0);
		((struct openb3d_openb3dcore_TTexture_obj*)bbNullObjectTest((BBObject*)o));
		((struct openb3d_openb3dcore_TTexture_obj*)o)->clas->m_CameraToTexEXT_TTCamerai((struct openb3d_openb3dcore_TTexture_obj*)o,(struct openb3d_openb3dcore_TCamera_obj*)bbt_cam,0);
		bbOnDebugLeaveScope();
	}else{
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0xc98026d238c3ecac, 293, 0};
		bbOnDebugEnterStm(&__stmt_0);
		CameraToTex_(o->clas->f_GetInstance_pb_TTTexture((struct openb3d_openb3dcore_TTexture_obj*)o),openb3d_openb3dcore_TEntity_GetInstance_pb_TTEntity((struct openb3d_openb3dcore_TEntity_obj*)((struct openb3d_openb3dcore_TEntity_obj*)bbObjectDowncast((BBOBJECT)bbt_cam,(BBClass*)&openb3d_openb3dcore_TEntity))),bbt_frame);
		bbOnDebugLeaveScope();
	}
	bbOnDebugLeaveScope();
	return 0;
}
BBINT _openb3d_openb3dcore_TTexture_DepthBufferToTex_TTCamera(struct openb3d_openb3dcore_TTexture_obj* o,struct openb3d_openb3dcore_TCamera_obj* bbt_cam){
	((struct openb3d_openb3dcore_TTexture_obj*)bbNullObjectTest((BBObject*)o));
	struct BBDebugScope_2 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"DepthBufferToTex",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TTexture",
				.var_address=&o
			},
			{
				BBDEBUGDECL_LOCAL,
				"cam",
				":TCamera",
				.var_address=&bbt_cam
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0xc98026d238c3ecac, 300, 0};
	bbOnDebugEnterStm(&__stmt_0);
	if(openb3d_openb3dcore_TGlobal3D_GL_Version<2.1f){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0xc98026d238c3ecac, 301, 0};
		bbOnDebugEnterStm(&__stmt_0);
		((struct openb3d_openb3dcore_TTexture_obj*)bbNullObjectTest((BBObject*)o));
		((struct openb3d_openb3dcore_TTexture_obj*)o)->clas->m_DepthBufferToTexEXT_TTCamerai((struct openb3d_openb3dcore_TTexture_obj*)o,(struct openb3d_openb3dcore_TCamera_obj*)bbt_cam,0);
		bbOnDebugLeaveScope();
	}else{
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0xc98026d238c3ecac, 303, 0};
		bbOnDebugEnterStm(&__stmt_0);
		DepthBufferToTex_(o->clas->f_GetInstance_pb_TTTexture((struct openb3d_openb3dcore_TTexture_obj*)o),openb3d_openb3dcore_TEntity_GetInstance_pb_TTEntity((struct openb3d_openb3dcore_TEntity_obj*)((struct openb3d_openb3dcore_TEntity_obj*)bbObjectDowncast((BBOBJECT)bbt_cam,(BBClass*)&openb3d_openb3dcore_TEntity))));
		bbOnDebugLeaveScope();
	}
	bbOnDebugLeaveScope();
	return 0;
}
BBINT _openb3d_openb3dcore_TTexture_AlphaDiscard_f(struct openb3d_openb3dcore_TTexture_obj* o,BBFLOAT bbt_alpha){
	((struct openb3d_openb3dcore_TTexture_obj*)bbNullObjectTest((BBObject*)o));
	struct BBDebugScope_2 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"AlphaDiscard",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TTexture",
				.var_address=&o
			},
			{
				BBDEBUGDECL_LOCAL,
				"alpha",
				"f",
				.var_address=&bbt_alpha
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0xc98026d238c3ecac, 313, 0};
	bbOnDebugEnterStm(&__stmt_0);
	((struct openb3d_openb3dcore_TTexture_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_ttexture_discard =bbt_alpha;
	bbOnDebugLeaveScope();
	return 0;
}
BBINT _openb3d_openb3dcore_TTexture_TextureFlags_i(struct openb3d_openb3dcore_TTexture_obj* o,BBINT bbt_flags){
	((struct openb3d_openb3dcore_TTexture_obj*)bbNullObjectTest((BBObject*)o));
	struct BBDebugScope_2 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"TextureFlags",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TTexture",
				.var_address=&o
			},
			{
				BBDEBUGDECL_LOCAL,
				"flags",
				"i",
				.var_address=&bbt_flags
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0xc98026d238c3ecac, 320, 0};
	bbOnDebugEnterStm(&__stmt_0);
	TextureFlags_(o->clas->f_GetInstance_pb_TTTexture((struct openb3d_openb3dcore_TTexture_obj*)o),bbt_flags);
	bbOnDebugLeaveScope();
	return 0;
}
BBINT _openb3d_openb3dcore_TTexture_TextureGLTexEnvi_iii(struct openb3d_openb3dcore_TTexture_obj* o,BBINT bbt_target,BBINT bbt_pname,BBINT bbt_param){
	((struct openb3d_openb3dcore_TTexture_obj*)bbNullObjectTest((BBObject*)o));
	struct BBDebugScope_4 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"TextureGLTexEnvi",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TTexture",
				.var_address=&o
			},
			{
				BBDEBUGDECL_LOCAL,
				"target",
				"i",
				.var_address=&bbt_target
			},
			{
				BBDEBUGDECL_LOCAL,
				"pname",
				"i",
				.var_address=&bbt_pname
			},
			{
				BBDEBUGDECL_LOCAL,
				"param",
				"i",
				.var_address=&bbt_param
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0xc98026d238c3ecac, 327, 0};
	bbOnDebugEnterStm(&__stmt_0);
	TextureGLTexEnvi_(o->clas->f_GetInstance_pb_TTTexture((struct openb3d_openb3dcore_TTexture_obj*)o),bbt_target,bbt_pname,bbt_param);
	bbOnDebugLeaveScope();
	return 0;
}
BBINT _openb3d_openb3dcore_TTexture_TextureGLTexEnvf_iif(struct openb3d_openb3dcore_TTexture_obj* o,BBINT bbt_target,BBINT bbt_pname,BBFLOAT bbt_param){
	((struct openb3d_openb3dcore_TTexture_obj*)bbNullObjectTest((BBObject*)o));
	struct BBDebugScope_4 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"TextureGLTexEnvf",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TTexture",
				.var_address=&o
			},
			{
				BBDEBUGDECL_LOCAL,
				"target",
				"i",
				.var_address=&bbt_target
			},
			{
				BBDEBUGDECL_LOCAL,
				"pname",
				"i",
				.var_address=&bbt_pname
			},
			{
				BBDEBUGDECL_LOCAL,
				"param",
				"f",
				.var_address=&bbt_param
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0xc98026d238c3ecac, 334, 0};
	bbOnDebugEnterStm(&__stmt_0);
	TextureGLTexEnvf_(o->clas->f_GetInstance_pb_TTTexture((struct openb3d_openb3dcore_TTexture_obj*)o),bbt_target,bbt_pname,bbt_param);
	bbOnDebugLeaveScope();
	return 0;
}
BBINT _openb3d_openb3dcore_TTexture_GlobalAnIsotropic_f(struct openb3d_openb3dcore_TTexture_obj* o,BBFLOAT bbt_f){
	((struct openb3d_openb3dcore_TTexture_obj*)bbNullObjectTest((BBObject*)o));
	struct BBDebugScope_2 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"GlobalAnIsotropic",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TTexture",
				.var_address=&o
			},
			{
				BBDEBUGDECL_LOCAL,
				"f",
				"f",
				.var_address=&bbt_f
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0xc98026d238c3ecac, 341, 0};
	bbOnDebugEnterStm(&__stmt_0);
	openb3d_openb3dcore_TTexture_global_aniso[0]=bbt_f;
	bbOnDebugLeaveScope();
	return 0;
}
BBINT _openb3d_openb3dcore_TTexture_TextureAnIsotropic_f(struct openb3d_openb3dcore_TTexture_obj* o,BBFLOAT bbt_f){
	((struct openb3d_openb3dcore_TTexture_obj*)bbNullObjectTest((BBObject*)o));
	struct BBDebugScope_2 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"TextureAnIsotropic",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TTexture",
				.var_address=&o
			},
			{
				BBDEBUGDECL_LOCAL,
				"f",
				"f",
				.var_address=&bbt_f
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0xc98026d238c3ecac, 348, 0};
	bbOnDebugEnterStm(&__stmt_0);
	TextureAnIsotropic_(o->clas->f_GetInstance_pb_TTTexture((struct openb3d_openb3dcore_TTexture_obj*)o),bbt_f);
	bbOnDebugLeaveScope();
	return 0;
}
BBINT _openb3d_openb3dcore_TTexture_TextureMultitex_f(struct openb3d_openb3dcore_TTexture_obj* o,BBFLOAT bbt_f){
	((struct openb3d_openb3dcore_TTexture_obj*)bbNullObjectTest((BBObject*)o));
	struct BBDebugScope_2 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"TextureMultitex",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TTexture",
				.var_address=&o
			},
			{
				BBDEBUGDECL_LOCAL,
				"f",
				"f",
				.var_address=&bbt_f
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0xc98026d238c3ecac, 355, 0};
	bbOnDebugEnterStm(&__stmt_0);
	TextureMultitex_(o->clas->f_GetInstance_pb_TTTexture((struct openb3d_openb3dcore_TTexture_obj*)o),bbt_f);
	bbOnDebugLeaveScope();
	return 0;
}
BBSTRING _openb3d_openb3dcore_TTexture_GetString_pb(struct openb3d_openb3dcore_TTexture_obj* o,BBBYTE* bbt_strPtr){
	((struct openb3d_openb3dcore_TTexture_obj*)bbNullObjectTest((BBObject*)o));
	struct BBDebugScope_2 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"GetString",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TTexture",
				.var_address=&o
			},
			{
				BBDEBUGDECL_LOCAL,
				"strPtr",
				"*b",
				.var_address=&bbt_strPtr
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0xc98026d238c3ecac, 362, 0};
	bbOnDebugEnterStm(&__stmt_0);
	BBBYTE* bbt_=bbt_strPtr;
	struct BBDebugStm __stmt_1 = {0xc98026d238c3ecac, 363, 0};
	bbOnDebugEnterStm(&__stmt_1);
	if(bbt_==((struct openb3d_openb3dcore_TTexture_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_ttexture_file ){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0xc98026d238c3ecac, 364, 0};
		bbOnDebugEnterStm(&__stmt_0);
		bbOnDebugLeaveScope();
		bbOnDebugLeaveScope();
		return bbStringFromCString(TextureString_(o->clas->f_GetInstance_pb_TTTexture((struct openb3d_openb3dcore_TTexture_obj*)o),3));
	}else{
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0xc98026d238c3ecac, 365, 0};
		bbOnDebugEnterStm(&__stmt_0);
		if(bbt_==((struct openb3d_openb3dcore_TTexture_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_ttexture_file_abs ){
			struct BBDebugScope __scope = {
				BBDEBUGSCOPE_LOCALBLOCK,
				0,
				{
					{
						BBDEBUGDECL_END
					}
				}
			};
			bbOnDebugEnterScope((BBDebugScope *)&__scope);
			struct BBDebugStm __stmt_0 = {0xc98026d238c3ecac, 366, 0};
			bbOnDebugEnterStm(&__stmt_0);
			bbOnDebugLeaveScope();
			bbOnDebugLeaveScope();
			bbOnDebugLeaveScope();
			return bbStringFromCString(TextureString_(o->clas->f_GetInstance_pb_TTTexture((struct openb3d_openb3dcore_TTexture_obj*)o),13));
		}
		bbOnDebugLeaveScope();
	}
	bbOnDebugLeaveScope();
	return ((BBString*)&bbEmptyString);
}
BBINT _openb3d_openb3dcore_TTexture_SetString_pbS(struct openb3d_openb3dcore_TTexture_obj* o,BBBYTE* bbt_strPtr,BBSTRING bbt_strValue){
	((struct openb3d_openb3dcore_TTexture_obj*)bbNullObjectTest((BBObject*)o));
	struct BBDebugScope_3 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"SetString",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TTexture",
				.var_address=&o
			},
			{
				BBDEBUGDECL_LOCAL,
				"strPtr",
				"*b",
				.var_address=&bbt_strPtr
			},
			{
				BBDEBUGDECL_LOCAL,
				"strValue",
				"$",
				.var_address=&bbt_strValue
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0xc98026d238c3ecac, 374, 0};
	bbOnDebugEnterStm(&__stmt_0);
	BBBYTE* bbt_=bbt_strPtr;
	struct BBDebugStm __stmt_1 = {0xc98026d238c3ecac, 375, 0};
	bbOnDebugEnterStm(&__stmt_1);
	if(bbt_==((struct openb3d_openb3dcore_TTexture_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_ttexture_file ){
		BBBYTE* bbt_cString=0;
		struct BBDebugScope_1 __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_LOCAL,
					"cString",
					"*b",
					.var_address=&bbt_cString
				},
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0xc98026d238c3ecac, 376, 0};
		bbOnDebugEnterStm(&__stmt_0);
		bbt_cString=bbStringToCString((BBSTRING)bbt_strValue);
		struct BBDebugStm __stmt_1 = {0xc98026d238c3ecac, 377, 0};
		bbOnDebugEnterStm(&__stmt_1);
		SetTextureString_(o->clas->f_GetInstance_pb_TTTexture((struct openb3d_openb3dcore_TTexture_obj*)o),3,bbt_cString);
		struct BBDebugStm __stmt_2 = {0xc98026d238c3ecac, 378, 0};
		bbOnDebugEnterStm(&__stmt_2);
		bbMemFree((void*)bbt_cString);
		struct BBDebugStm __stmt_3 = {0xc98026d238c3ecac, 379, 0};
		bbOnDebugEnterStm(&__stmt_3);
		((struct openb3d_openb3dcore_TTexture_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_ttexture_file =TextureString_(o->clas->f_GetInstance_pb_TTTexture((struct openb3d_openb3dcore_TTexture_obj*)o),3);
		bbOnDebugLeaveScope();
	}else{
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0xc98026d238c3ecac, 380, 0};
		bbOnDebugEnterStm(&__stmt_0);
		if(bbt_==((struct openb3d_openb3dcore_TTexture_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_ttexture_file_abs ){
			BBBYTE* bbt_cString2=0;
			struct BBDebugScope_1 __scope = {
				BBDEBUGSCOPE_LOCALBLOCK,
				0,
				{
					{
						BBDEBUGDECL_LOCAL,
						"cString",
						"*b",
						.var_address=&bbt_cString2
					},
					{
						BBDEBUGDECL_END
					}
				}
			};
			bbOnDebugEnterScope((BBDebugScope *)&__scope);
			struct BBDebugStm __stmt_0 = {0xc98026d238c3ecac, 381, 0};
			bbOnDebugEnterStm(&__stmt_0);
			bbt_cString2=bbStringToCString((BBSTRING)bbt_strValue);
			struct BBDebugStm __stmt_1 = {0xc98026d238c3ecac, 382, 0};
			bbOnDebugEnterStm(&__stmt_1);
			SetTextureString_(o->clas->f_GetInstance_pb_TTTexture((struct openb3d_openb3dcore_TTexture_obj*)o),13,bbt_cString2);
			struct BBDebugStm __stmt_2 = {0xc98026d238c3ecac, 383, 0};
			bbOnDebugEnterStm(&__stmt_2);
			bbMemFree((void*)bbt_cString2);
			struct BBDebugStm __stmt_3 = {0xc98026d238c3ecac, 384, 0};
			bbOnDebugEnterStm(&__stmt_3);
			((struct openb3d_openb3dcore_TTexture_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_ttexture_file_abs =TextureString_(o->clas->f_GetInstance_pb_TTTexture((struct openb3d_openb3dcore_TTexture_obj*)o),13);
			bbOnDebugLeaveScope();
		}
		bbOnDebugLeaveScope();
	}
	bbOnDebugLeaveScope();
	return 0;
}
BBINT _openb3d_openb3dcore_TTexture_CameraToTexEXT_TTCamerai(struct openb3d_openb3dcore_TTexture_obj* o,struct openb3d_openb3dcore_TCamera_obj* bbt_cam,BBINT bbt_frame){
	((struct openb3d_openb3dcore_TTexture_obj*)bbNullObjectTest((BBObject*)o));
	BBINT bbt_target=0;
	struct BBDebugScope_4 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"CameraToTexEXT",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TTexture",
				.var_address=&o
			},
			{
				BBDEBUGDECL_LOCAL,
				"cam",
				":TCamera",
				.var_address=&bbt_cam
			},
			{
				BBDEBUGDECL_LOCAL,
				"frame",
				"i",
				.var_address=&bbt_frame
			},
			{
				BBDEBUGDECL_LOCAL,
				"target",
				"i",
				.var_address=&bbt_target
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0xc98026d238c3ecac, 392, 0};
	bbOnDebugEnterStm(&__stmt_0);
	openb3d_openb3dcore_TGlobal3D_camera_in_use=(struct openb3d_openb3dcore_TCamera_obj*)bbt_cam;
	struct BBDebugStm __stmt_1 = {0xc98026d238c3ecac, 394, 0};
	bbOnDebugEnterStm(&__stmt_1);
	bbt_target=0;
	struct BBDebugStm __stmt_2 = {0xc98026d238c3ecac, 395, 0};
	bbOnDebugEnterStm(&__stmt_2);
	if(((unsigned int)(((struct openb3d_openb3dcore_TTexture_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_ttexture_flags [0])&(unsigned int)(128))!=0){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0xc98026d238c3ecac, 396, 0};
		bbOnDebugEnterStm(&__stmt_0);
		bbt_target=34067;
		bbOnDebugLeaveScope();
	}else{
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0xc98026d238c3ecac, 398, 0};
		bbOnDebugEnterStm(&__stmt_0);
		bbt_target=3553;
		bbOnDebugLeaveScope();
	}
	struct BBDebugStm __stmt_3 = {0xc98026d238c3ecac, 401, 0};
	bbOnDebugEnterStm(&__stmt_3);
	glBindTexture((GLenum)bbt_target,(GLuint)((struct openb3d_openb3dcore_TTexture_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_ttexture_texture [0]);
	struct BBDebugStm __stmt_4 = {0xc98026d238c3ecac, 402, 0};
	bbOnDebugEnterStm(&__stmt_4);
	if(((struct openb3d_openb3dcore_TTexture_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_ttexture_framebuffer ==0){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0xc98026d238c3ecac, 403, 0};
		bbOnDebugEnterStm(&__stmt_0);
		((struct openb3d_openb3dcore_TTexture_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_ttexture_framebuffer =((BBINT*)bbMemAlloc((size_t)8));
		struct BBDebugStm __stmt_1 = {0xc98026d238c3ecac, 404, 0};
		bbOnDebugEnterStm(&__stmt_1);
		__glewGenFramebuffersEXT(1,(&((struct openb3d_openb3dcore_TTexture_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_ttexture_framebuffer [0]));
		struct BBDebugStm __stmt_2 = {0xc98026d238c3ecac, 405, 0};
		bbOnDebugEnterStm(&__stmt_2);
		__glewGenRenderbuffersEXT(1,(&((struct openb3d_openb3dcore_TTexture_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_ttexture_framebuffer [1]));
		struct BBDebugStm __stmt_3 = {0xc98026d238c3ecac, 406, 0};
		bbOnDebugEnterStm(&__stmt_3);
		if(((unsigned int)(((struct openb3d_openb3dcore_TTexture_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_ttexture_flags [0])&(unsigned int)(128))!=0){
			struct BBDebugScope __scope = {
				BBDEBUGSCOPE_LOCALBLOCK,
				0,
				{
					{
						BBDEBUGDECL_END
					}
				}
			};
			bbOnDebugEnterScope((BBDebugScope *)&__scope);
			struct BBDebugStm __stmt_0 = {0xc98026d238c3ecac, 407, 0};
			bbOnDebugEnterStm(&__stmt_0);
			{
				BBINT bbt_i=0;
				for(;(bbt_i<=5);bbt_i=(bbt_i+1)){
					struct BBDebugScope_1 __scope = {
						BBDEBUGSCOPE_LOCALBLOCK,
						0,
						{
							{
								BBDEBUGDECL_LOCAL,
								"i",
								"i",
								.var_address=&bbt_i
							},
							{
								BBDEBUGDECL_END
							}
						}
					};
					bbOnDebugEnterScope((BBDebugScope *)&__scope);
					struct BBDebugStm __stmt_0 = {0xc98026d238c3ecac, 408, 0};
					bbOnDebugEnterStm(&__stmt_0);
					BBINT bbt_=bbt_i;
					struct BBDebugStm __stmt_1 = {0xc98026d238c3ecac, 409, 0};
					bbOnDebugEnterStm(&__stmt_1);
					if(bbt_==0){
						struct BBDebugScope __scope = {
							BBDEBUGSCOPE_LOCALBLOCK,
							0,
							{
								{
									BBDEBUGDECL_END
								}
							}
						};
						bbOnDebugEnterScope((BBDebugScope *)&__scope);
						struct BBDebugStm __stmt_0 = {0xc98026d238c3ecac, 410, 0};
						bbOnDebugEnterStm(&__stmt_0);
						glTexImage2D((GLenum)34070,(GLint)0,(GLint)32856,(GLsizei)((struct openb3d_openb3dcore_TTexture_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_ttexture_width [0],(GLsizei)((struct openb3d_openb3dcore_TTexture_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_ttexture_height [0],(GLint)0,(GLenum)6408,(GLenum)5121,(const GLvoid*)0);
						bbOnDebugLeaveScope();
					}else{
						struct BBDebugScope __scope = {
							BBDEBUGSCOPE_LOCALBLOCK,
							0,
							{
								{
									BBDEBUGDECL_END
								}
							}
						};
						bbOnDebugEnterScope((BBDebugScope *)&__scope);
						struct BBDebugStm __stmt_0 = {0xc98026d238c3ecac, 411, 0};
						bbOnDebugEnterStm(&__stmt_0);
						if(bbt_==1){
							struct BBDebugScope __scope = {
								BBDEBUGSCOPE_LOCALBLOCK,
								0,
								{
									{
										BBDEBUGDECL_END
									}
								}
							};
							bbOnDebugEnterScope((BBDebugScope *)&__scope);
							struct BBDebugStm __stmt_0 = {0xc98026d238c3ecac, 412, 0};
							bbOnDebugEnterStm(&__stmt_0);
							glTexImage2D((GLenum)34073,(GLint)0,(GLint)32856,(GLsizei)((struct openb3d_openb3dcore_TTexture_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_ttexture_width [0],(GLsizei)((struct openb3d_openb3dcore_TTexture_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_ttexture_height [0],(GLint)0,(GLenum)6408,(GLenum)5121,(const GLvoid*)0);
							bbOnDebugLeaveScope();
						}else{
							struct BBDebugScope __scope = {
								BBDEBUGSCOPE_LOCALBLOCK,
								0,
								{
									{
										BBDEBUGDECL_END
									}
								}
							};
							bbOnDebugEnterScope((BBDebugScope *)&__scope);
							struct BBDebugStm __stmt_0 = {0xc98026d238c3ecac, 413, 0};
							bbOnDebugEnterStm(&__stmt_0);
							if(bbt_==2){
								struct BBDebugScope __scope = {
									BBDEBUGSCOPE_LOCALBLOCK,
									0,
									{
										{
											BBDEBUGDECL_END
										}
									}
								};
								bbOnDebugEnterScope((BBDebugScope *)&__scope);
								struct BBDebugStm __stmt_0 = {0xc98026d238c3ecac, 414, 0};
								bbOnDebugEnterStm(&__stmt_0);
								glTexImage2D((GLenum)34069,(GLint)0,(GLint)32856,(GLsizei)((struct openb3d_openb3dcore_TTexture_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_ttexture_width [0],(GLsizei)((struct openb3d_openb3dcore_TTexture_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_ttexture_height [0],(GLint)0,(GLenum)6408,(GLenum)5121,(const GLvoid*)0);
								bbOnDebugLeaveScope();
							}else{
								struct BBDebugScope __scope = {
									BBDEBUGSCOPE_LOCALBLOCK,
									0,
									{
										{
											BBDEBUGDECL_END
										}
									}
								};
								bbOnDebugEnterScope((BBDebugScope *)&__scope);
								struct BBDebugStm __stmt_0 = {0xc98026d238c3ecac, 415, 0};
								bbOnDebugEnterStm(&__stmt_0);
								if(bbt_==3){
									struct BBDebugScope __scope = {
										BBDEBUGSCOPE_LOCALBLOCK,
										0,
										{
											{
												BBDEBUGDECL_END
											}
										}
									};
									bbOnDebugEnterScope((BBDebugScope *)&__scope);
									struct BBDebugStm __stmt_0 = {0xc98026d238c3ecac, 416, 0};
									bbOnDebugEnterStm(&__stmt_0);
									glTexImage2D((GLenum)34074,(GLint)0,(GLint)32856,(GLsizei)((struct openb3d_openb3dcore_TTexture_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_ttexture_width [0],(GLsizei)((struct openb3d_openb3dcore_TTexture_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_ttexture_height [0],(GLint)0,(GLenum)6408,(GLenum)5121,(const GLvoid*)0);
									bbOnDebugLeaveScope();
								}else{
									struct BBDebugScope __scope = {
										BBDEBUGSCOPE_LOCALBLOCK,
										0,
										{
											{
												BBDEBUGDECL_END
											}
										}
									};
									bbOnDebugEnterScope((BBDebugScope *)&__scope);
									struct BBDebugStm __stmt_0 = {0xc98026d238c3ecac, 417, 0};
									bbOnDebugEnterStm(&__stmt_0);
									if(bbt_==4){
										struct BBDebugScope __scope = {
											BBDEBUGSCOPE_LOCALBLOCK,
											0,
											{
												{
													BBDEBUGDECL_END
												}
											}
										};
										bbOnDebugEnterScope((BBDebugScope *)&__scope);
										struct BBDebugStm __stmt_0 = {0xc98026d238c3ecac, 418, 0};
										bbOnDebugEnterStm(&__stmt_0);
										glTexImage2D((GLenum)34071,(GLint)0,(GLint)32856,(GLsizei)((struct openb3d_openb3dcore_TTexture_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_ttexture_width [0],(GLsizei)((struct openb3d_openb3dcore_TTexture_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_ttexture_height [0],(GLint)0,(GLenum)6408,(GLenum)5121,(const GLvoid*)0);
										bbOnDebugLeaveScope();
									}else{
										struct BBDebugScope __scope = {
											BBDEBUGSCOPE_LOCALBLOCK,
											0,
											{
												{
													BBDEBUGDECL_END
												}
											}
										};
										bbOnDebugEnterScope((BBDebugScope *)&__scope);
										struct BBDebugStm __stmt_0 = {0xc98026d238c3ecac, 419, 0};
										bbOnDebugEnterStm(&__stmt_0);
										if(bbt_==5){
											struct BBDebugScope __scope = {
												BBDEBUGSCOPE_LOCALBLOCK,
												0,
												{
													{
														BBDEBUGDECL_END
													}
												}
											};
											bbOnDebugEnterScope((BBDebugScope *)&__scope);
											struct BBDebugStm __stmt_0 = {0xc98026d238c3ecac, 420, 0};
											bbOnDebugEnterStm(&__stmt_0);
											glTexImage2D((GLenum)34072,(GLint)0,(GLint)32856,(GLsizei)((struct openb3d_openb3dcore_TTexture_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_ttexture_width [0],(GLsizei)((struct openb3d_openb3dcore_TTexture_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_ttexture_height [0],(GLint)0,(GLenum)6408,(GLenum)5121,(const GLvoid*)0);
											bbOnDebugLeaveScope();
										}
										bbOnDebugLeaveScope();
									}
									bbOnDebugLeaveScope();
								}
								bbOnDebugLeaveScope();
							}
							bbOnDebugLeaveScope();
						}
						bbOnDebugLeaveScope();
					}
					bbOnDebugLeaveScope();
				}
			}
			bbOnDebugLeaveScope();
		}else{
			struct BBDebugScope __scope = {
				BBDEBUGSCOPE_LOCALBLOCK,
				0,
				{
					{
						BBDEBUGDECL_END
					}
				}
			};
			bbOnDebugEnterScope((BBDebugScope *)&__scope);
			struct BBDebugStm __stmt_0 = {0xc98026d238c3ecac, 424, 0};
			bbOnDebugEnterStm(&__stmt_0);
			glTexImage2D((GLenum)3553,(GLint)0,(GLint)32856,(GLsizei)((struct openb3d_openb3dcore_TTexture_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_ttexture_width [0],(GLsizei)((struct openb3d_openb3dcore_TTexture_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_ttexture_height [0],(GLint)0,(GLenum)6408,(GLenum)5121,(const GLvoid*)0);
			bbOnDebugLeaveScope();
		}
		bbOnDebugLeaveScope();
	}
	struct BBDebugStm __stmt_5 = {0xc98026d238c3ecac, 429, 0};
	bbOnDebugEnterStm(&__stmt_5);
	__glewBindFramebufferEXT(36160,((struct openb3d_openb3dcore_TTexture_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_ttexture_framebuffer [0]);
	struct BBDebugStm __stmt_6 = {0xc98026d238c3ecac, 430, 0};
	bbOnDebugEnterStm(&__stmt_6);
	if(((unsigned int)(((struct openb3d_openb3dcore_TTexture_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_ttexture_flags [0])&(unsigned int)(128))!=0){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0xc98026d238c3ecac, 431, 0};
		bbOnDebugEnterStm(&__stmt_0);
		BBINT bbt_2=((struct openb3d_openb3dcore_TTexture_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_ttexture_cube_face [0];
		struct BBDebugStm __stmt_1 = {0xc98026d238c3ecac, 432, 0};
		bbOnDebugEnterStm(&__stmt_1);
		if(bbt_2==0){
			struct BBDebugScope __scope = {
				BBDEBUGSCOPE_LOCALBLOCK,
				0,
				{
					{
						BBDEBUGDECL_END
					}
				}
			};
			bbOnDebugEnterScope((BBDebugScope *)&__scope);
			struct BBDebugStm __stmt_0 = {0xc98026d238c3ecac, 433, 0};
			bbOnDebugEnterStm(&__stmt_0);
			__glewFramebufferTexture2DEXT(36160,36064,34070,((struct openb3d_openb3dcore_TTexture_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_ttexture_texture [0],0);
			bbOnDebugLeaveScope();
		}else{
			struct BBDebugScope __scope = {
				BBDEBUGSCOPE_LOCALBLOCK,
				0,
				{
					{
						BBDEBUGDECL_END
					}
				}
			};
			bbOnDebugEnterScope((BBDebugScope *)&__scope);
			struct BBDebugStm __stmt_0 = {0xc98026d238c3ecac, 434, 0};
			bbOnDebugEnterStm(&__stmt_0);
			if(bbt_2==1){
				struct BBDebugScope __scope = {
					BBDEBUGSCOPE_LOCALBLOCK,
					0,
					{
						{
							BBDEBUGDECL_END
						}
					}
				};
				bbOnDebugEnterScope((BBDebugScope *)&__scope);
				struct BBDebugStm __stmt_0 = {0xc98026d238c3ecac, 435, 0};
				bbOnDebugEnterStm(&__stmt_0);
				__glewFramebufferTexture2DEXT(36160,36064,34073,((struct openb3d_openb3dcore_TTexture_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_ttexture_texture [0],0);
				bbOnDebugLeaveScope();
			}else{
				struct BBDebugScope __scope = {
					BBDEBUGSCOPE_LOCALBLOCK,
					0,
					{
						{
							BBDEBUGDECL_END
						}
					}
				};
				bbOnDebugEnterScope((BBDebugScope *)&__scope);
				struct BBDebugStm __stmt_0 = {0xc98026d238c3ecac, 436, 0};
				bbOnDebugEnterStm(&__stmt_0);
				if(bbt_2==2){
					struct BBDebugScope __scope = {
						BBDEBUGSCOPE_LOCALBLOCK,
						0,
						{
							{
								BBDEBUGDECL_END
							}
						}
					};
					bbOnDebugEnterScope((BBDebugScope *)&__scope);
					struct BBDebugStm __stmt_0 = {0xc98026d238c3ecac, 437, 0};
					bbOnDebugEnterStm(&__stmt_0);
					__glewFramebufferTexture2DEXT(36160,36064,34069,((struct openb3d_openb3dcore_TTexture_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_ttexture_texture [0],0);
					bbOnDebugLeaveScope();
				}else{
					struct BBDebugScope __scope = {
						BBDEBUGSCOPE_LOCALBLOCK,
						0,
						{
							{
								BBDEBUGDECL_END
							}
						}
					};
					bbOnDebugEnterScope((BBDebugScope *)&__scope);
					struct BBDebugStm __stmt_0 = {0xc98026d238c3ecac, 438, 0};
					bbOnDebugEnterStm(&__stmt_0);
					if(bbt_2==3){
						struct BBDebugScope __scope = {
							BBDEBUGSCOPE_LOCALBLOCK,
							0,
							{
								{
									BBDEBUGDECL_END
								}
							}
						};
						bbOnDebugEnterScope((BBDebugScope *)&__scope);
						struct BBDebugStm __stmt_0 = {0xc98026d238c3ecac, 439, 0};
						bbOnDebugEnterStm(&__stmt_0);
						__glewFramebufferTexture2DEXT(36160,36064,34074,((struct openb3d_openb3dcore_TTexture_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_ttexture_texture [0],0);
						bbOnDebugLeaveScope();
					}else{
						struct BBDebugScope __scope = {
							BBDEBUGSCOPE_LOCALBLOCK,
							0,
							{
								{
									BBDEBUGDECL_END
								}
							}
						};
						bbOnDebugEnterScope((BBDebugScope *)&__scope);
						struct BBDebugStm __stmt_0 = {0xc98026d238c3ecac, 440, 0};
						bbOnDebugEnterStm(&__stmt_0);
						if(bbt_2==4){
							struct BBDebugScope __scope = {
								BBDEBUGSCOPE_LOCALBLOCK,
								0,
								{
									{
										BBDEBUGDECL_END
									}
								}
							};
							bbOnDebugEnterScope((BBDebugScope *)&__scope);
							struct BBDebugStm __stmt_0 = {0xc98026d238c3ecac, 441, 0};
							bbOnDebugEnterStm(&__stmt_0);
							__glewFramebufferTexture2DEXT(36160,36064,34072,((struct openb3d_openb3dcore_TTexture_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_ttexture_texture [0],0);
							bbOnDebugLeaveScope();
						}else{
							struct BBDebugScope __scope = {
								BBDEBUGSCOPE_LOCALBLOCK,
								0,
								{
									{
										BBDEBUGDECL_END
									}
								}
							};
							bbOnDebugEnterScope((BBDebugScope *)&__scope);
							struct BBDebugStm __stmt_0 = {0xc98026d238c3ecac, 442, 0};
							bbOnDebugEnterStm(&__stmt_0);
							if(bbt_2==5){
								struct BBDebugScope __scope = {
									BBDEBUGSCOPE_LOCALBLOCK,
									0,
									{
										{
											BBDEBUGDECL_END
										}
									}
								};
								bbOnDebugEnterScope((BBDebugScope *)&__scope);
								struct BBDebugStm __stmt_0 = {0xc98026d238c3ecac, 443, 0};
								bbOnDebugEnterStm(&__stmt_0);
								__glewFramebufferTexture2DEXT(36160,36064,34071,((struct openb3d_openb3dcore_TTexture_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_ttexture_texture [0],0);
								bbOnDebugLeaveScope();
							}
							bbOnDebugLeaveScope();
						}
						bbOnDebugLeaveScope();
					}
					bbOnDebugLeaveScope();
				}
				bbOnDebugLeaveScope();
			}
			bbOnDebugLeaveScope();
		}
		bbOnDebugLeaveScope();
	}else{
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0xc98026d238c3ecac, 446, 0};
		bbOnDebugEnterStm(&__stmt_0);
		__glewFramebufferTexture2DEXT(36160,36064,3553,((struct openb3d_openb3dcore_TTexture_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_ttexture_texture [0],0);
		bbOnDebugLeaveScope();
	}
	struct BBDebugStm __stmt_7 = {0xc98026d238c3ecac, 450, 0};
	bbOnDebugEnterStm(&__stmt_7);
	__glewBindRenderbufferEXT(36161,((struct openb3d_openb3dcore_TTexture_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_ttexture_framebuffer [1]);
	struct BBDebugStm __stmt_8 = {0xc98026d238c3ecac, 451, 0};
	bbOnDebugEnterStm(&__stmt_8);
	if(openb3d_openb3dcore_THardwareInfo_DepthStencil==0){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0xc98026d238c3ecac, 451, 0};
		bbOnDebugEnterStm(&__stmt_0);
		__glewRenderbufferStorageEXT(36161,6402,((struct openb3d_openb3dcore_TTexture_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_ttexture_width [0],((struct openb3d_openb3dcore_TTexture_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_ttexture_height [0]);
		bbOnDebugLeaveScope();
	}
	struct BBDebugStm __stmt_9 = {0xc98026d238c3ecac, 452, 0};
	bbOnDebugEnterStm(&__stmt_9);
	if(openb3d_openb3dcore_THardwareInfo_DepthStencil==1){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0xc98026d238c3ecac, 452, 0};
		bbOnDebugEnterStm(&__stmt_0);
		__glewRenderbufferStorageEXT(36161,35056,((struct openb3d_openb3dcore_TTexture_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_ttexture_width [0],((struct openb3d_openb3dcore_TTexture_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_ttexture_height [0]);
		bbOnDebugLeaveScope();
	}
	struct BBDebugStm __stmt_10 = {0xc98026d238c3ecac, 453, 0};
	bbOnDebugEnterStm(&__stmt_10);
	__glewFramebufferRenderbufferEXT(36160,36096,36161,((struct openb3d_openb3dcore_TTexture_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_ttexture_framebuffer [1]);
	struct BBDebugStm __stmt_11 = {0xc98026d238c3ecac, 454, 0};
	bbOnDebugEnterStm(&__stmt_11);
	if(openb3d_openb3dcore_THardwareInfo_DepthStencil==1){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0xc98026d238c3ecac, 454, 0};
		bbOnDebugEnterStm(&__stmt_0);
		__glewFramebufferRenderbufferEXT(36160,36128,36161,((struct openb3d_openb3dcore_TTexture_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_ttexture_framebuffer [1]);
		bbOnDebugLeaveScope();
	}
	struct BBDebugStm __stmt_12 = {0xc98026d238c3ecac, 456, 0};
	bbOnDebugEnterStm(&__stmt_12);
	((struct openb3d_openb3dcore_TCamera_obj*)bbNullObjectTest((BBObject*)bbt_cam))->clas->m_Render((struct openb3d_openb3dcore_TCamera_obj*)bbt_cam);
	struct BBDebugStm __stmt_13 = {0xc98026d238c3ecac, 458, 0};
	bbOnDebugEnterStm(&__stmt_13);
	if(openb3d_openb3dcore_TGlobal3D_Shadows_enabled[0]==1){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0xc98026d238c3ecac, 458, 0};
		bbOnDebugEnterStm(&__stmt_0);
		openb3d_openb3dcore_TShadowObject_Update_i_TTCamera((struct openb3d_openb3dcore_TCamera_obj*)bbt_cam);
		bbOnDebugLeaveScope();
	}
	struct BBDebugStm __stmt_14 = {0xc98026d238c3ecac, 463, 0};
	bbOnDebugEnterStm(&__stmt_14);
	glBindTexture((GLenum)bbt_target,(GLuint)((struct openb3d_openb3dcore_TTexture_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_ttexture_texture [0]);
	struct BBDebugStm __stmt_15 = {0xc98026d238c3ecac, 464, 0};
	bbOnDebugEnterStm(&__stmt_15);
	__glewGenerateMipmapEXT(bbt_target);
	struct BBDebugStm __stmt_16 = {0xc98026d238c3ecac, 465, 0};
	bbOnDebugEnterStm(&__stmt_16);
	__glewBindFramebufferEXT(36160,0);
	struct BBDebugStm __stmt_17 = {0xc98026d238c3ecac, 466, 0};
	bbOnDebugEnterStm(&__stmt_17);
	__glewBindRenderbufferEXT(36161,0);
	bbOnDebugLeaveScope();
	return 0;
}
BBINT _openb3d_openb3dcore_TTexture_DepthBufferToTexEXT_TTCamerai(struct openb3d_openb3dcore_TTexture_obj* o,struct openb3d_openb3dcore_TCamera_obj* bbt_cam,BBINT bbt_frame){
	((struct openb3d_openb3dcore_TTexture_obj*)bbNullObjectTest((BBObject*)o));
	struct BBDebugScope_3 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"DepthBufferToTexEXT",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TTexture",
				.var_address=&o
			},
			{
				BBDEBUGDECL_LOCAL,
				"cam",
				":TCamera",
				.var_address=&bbt_cam
			},
			{
				BBDEBUGDECL_LOCAL,
				"frame",
				"i",
				.var_address=&bbt_frame
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0xc98026d238c3ecac, 474, 0};
	bbOnDebugEnterStm(&__stmt_0);
	glBindTexture((GLenum)3553,(GLuint)((struct openb3d_openb3dcore_TTexture_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_ttexture_texture [0]);
	struct BBDebugStm __stmt_1 = {0xc98026d238c3ecac, 475, 0};
	bbOnDebugEnterStm(&__stmt_1);
	if(((BBOBJECT)bbt_cam)==&bbNullObject){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0xc98026d238c3ecac, 476, 0};
		bbOnDebugEnterStm(&__stmt_0);
		glCopyTexImage2D((GLenum)3553,(GLint)0,(GLenum)6402,(GLint)0,(GLint)(openb3d_openb3dcore_TGlobal3D_height[0]-((struct openb3d_openb3dcore_TTexture_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_ttexture_height [0]),(GLsizei)((struct openb3d_openb3dcore_TTexture_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_ttexture_width [0],(GLsizei)((struct openb3d_openb3dcore_TTexture_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_ttexture_height [0],(GLint)0);
		struct BBDebugStm __stmt_1 = {0xc98026d238c3ecac, 477, 0};
		bbOnDebugEnterStm(&__stmt_1);
		glTexParameteri((GLenum)3553,(GLenum)33169,(GLint)1);
		bbOnDebugLeaveScope();
	}else{
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0xc98026d238c3ecac, 479, 0};
		bbOnDebugEnterStm(&__stmt_0);
		openb3d_openb3dcore_TGlobal3D_camera_in_use=(struct openb3d_openb3dcore_TCamera_obj*)bbt_cam;
		struct BBDebugStm __stmt_1 = {0xc98026d238c3ecac, 481, 0};
		bbOnDebugEnterStm(&__stmt_1);
		if(((struct openb3d_openb3dcore_TTexture_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_ttexture_framebuffer ==0){
			struct BBDebugScope __scope = {
				BBDEBUGSCOPE_LOCALBLOCK,
				0,
				{
					{
						BBDEBUGDECL_END
					}
				}
			};
			bbOnDebugEnterScope((BBDebugScope *)&__scope);
			struct BBDebugStm __stmt_0 = {0xc98026d238c3ecac, 482, 0};
			bbOnDebugEnterStm(&__stmt_0);
			((struct openb3d_openb3dcore_TTexture_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_ttexture_framebuffer =((BBINT*)bbMemAlloc((size_t)8));
			struct BBDebugStm __stmt_1 = {0xc98026d238c3ecac, 483, 0};
			bbOnDebugEnterStm(&__stmt_1);
			__glewGenFramebuffersEXT(1,(&((struct openb3d_openb3dcore_TTexture_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_ttexture_framebuffer [0]));
			struct BBDebugStm __stmt_2 = {0xc98026d238c3ecac, 484, 0};
			bbOnDebugEnterStm(&__stmt_2);
			__glewGenRenderbuffersEXT(1,(&((struct openb3d_openb3dcore_TTexture_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_ttexture_framebuffer [1]));
			struct BBDebugStm __stmt_3 = {0xc98026d238c3ecac, 485, 0};
			bbOnDebugEnterStm(&__stmt_3);
			glTexImage2D((GLenum)3553,(GLint)0,(GLint)32856,(GLsizei)((struct openb3d_openb3dcore_TTexture_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_ttexture_width [0],(GLsizei)((struct openb3d_openb3dcore_TTexture_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_ttexture_height [0],(GLint)0,(GLenum)6408,(GLenum)5121,(const GLvoid*)0);
			bbOnDebugLeaveScope();
		}
		struct BBDebugStm __stmt_2 = {0xc98026d238c3ecac, 490, 0};
		bbOnDebugEnterStm(&__stmt_2);
		__glewBindFramebufferEXT(36160,((struct openb3d_openb3dcore_TTexture_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_ttexture_framebuffer [0]);
		struct BBDebugStm __stmt_3 = {0xc98026d238c3ecac, 491, 0};
		bbOnDebugEnterStm(&__stmt_3);
		__glewFramebufferTexture2DEXT(36160,36064,3553,((struct openb3d_openb3dcore_TTexture_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_ttexture_texture [0],0);
		struct BBDebugStm __stmt_4 = {0xc98026d238c3ecac, 494, 0};
		bbOnDebugEnterStm(&__stmt_4);
		__glewBindRenderbufferEXT(36161,((struct openb3d_openb3dcore_TTexture_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_ttexture_framebuffer [1]);
		struct BBDebugStm __stmt_5 = {0xc98026d238c3ecac, 495, 0};
		bbOnDebugEnterStm(&__stmt_5);
		if(openb3d_openb3dcore_THardwareInfo_DepthStencil==0){
			struct BBDebugScope __scope = {
				BBDEBUGSCOPE_LOCALBLOCK,
				0,
				{
					{
						BBDEBUGDECL_END
					}
				}
			};
			bbOnDebugEnterScope((BBDebugScope *)&__scope);
			struct BBDebugStm __stmt_0 = {0xc98026d238c3ecac, 495, 0};
			bbOnDebugEnterStm(&__stmt_0);
			__glewRenderbufferStorageEXT(36161,6402,((struct openb3d_openb3dcore_TTexture_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_ttexture_width [0],((struct openb3d_openb3dcore_TTexture_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_ttexture_height [0]);
			bbOnDebugLeaveScope();
		}
		struct BBDebugStm __stmt_6 = {0xc98026d238c3ecac, 496, 0};
		bbOnDebugEnterStm(&__stmt_6);
		if(openb3d_openb3dcore_THardwareInfo_DepthStencil==1){
			struct BBDebugScope __scope = {
				BBDEBUGSCOPE_LOCALBLOCK,
				0,
				{
					{
						BBDEBUGDECL_END
					}
				}
			};
			bbOnDebugEnterScope((BBDebugScope *)&__scope);
			struct BBDebugStm __stmt_0 = {0xc98026d238c3ecac, 496, 0};
			bbOnDebugEnterStm(&__stmt_0);
			__glewRenderbufferStorageEXT(36161,35056,((struct openb3d_openb3dcore_TTexture_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_ttexture_width [0],((struct openb3d_openb3dcore_TTexture_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_ttexture_height [0]);
			bbOnDebugLeaveScope();
		}
		struct BBDebugStm __stmt_7 = {0xc98026d238c3ecac, 497, 0};
		bbOnDebugEnterStm(&__stmt_7);
		__glewFramebufferRenderbufferEXT(36160,36096,36161,((struct openb3d_openb3dcore_TTexture_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_ttexture_framebuffer [1]);
		struct BBDebugStm __stmt_8 = {0xc98026d238c3ecac, 498, 0};
		bbOnDebugEnterStm(&__stmt_8);
		if(openb3d_openb3dcore_THardwareInfo_DepthStencil==1){
			struct BBDebugScope __scope = {
				BBDEBUGSCOPE_LOCALBLOCK,
				0,
				{
					{
						BBDEBUGDECL_END
					}
				}
			};
			bbOnDebugEnterScope((BBDebugScope *)&__scope);
			struct BBDebugStm __stmt_0 = {0xc98026d238c3ecac, 498, 0};
			bbOnDebugEnterStm(&__stmt_0);
			__glewFramebufferRenderbufferEXT(36160,36128,36161,((struct openb3d_openb3dcore_TTexture_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_ttexture_framebuffer [1]);
			bbOnDebugLeaveScope();
		}
		struct BBDebugStm __stmt_9 = {0xc98026d238c3ecac, 500, 0};
		bbOnDebugEnterStm(&__stmt_9);
		((struct openb3d_openb3dcore_TCamera_obj*)bbNullObjectTest((BBObject*)bbt_cam))->clas->m_Render((struct openb3d_openb3dcore_TCamera_obj*)bbt_cam);
		struct BBDebugStm __stmt_10 = {0xc98026d238c3ecac, 502, 0};
		bbOnDebugEnterStm(&__stmt_10);
		if(openb3d_openb3dcore_TGlobal3D_Shadows_enabled[0]==1){
			struct BBDebugScope __scope = {
				BBDEBUGSCOPE_LOCALBLOCK,
				0,
				{
					{
						BBDEBUGDECL_END
					}
				}
			};
			bbOnDebugEnterScope((BBDebugScope *)&__scope);
			struct BBDebugStm __stmt_0 = {0xc98026d238c3ecac, 502, 0};
			bbOnDebugEnterStm(&__stmt_0);
			openb3d_openb3dcore_TShadowObject_Update_i_TTCamera((struct openb3d_openb3dcore_TCamera_obj*)bbt_cam);
			bbOnDebugLeaveScope();
		}
		struct BBDebugStm __stmt_11 = {0xc98026d238c3ecac, 507, 0};
		bbOnDebugEnterStm(&__stmt_11);
		glBindTexture((GLenum)3553,(GLuint)((struct openb3d_openb3dcore_TTexture_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_ttexture_texture [0]);
		struct BBDebugStm __stmt_12 = {0xc98026d238c3ecac, 508, 0};
		bbOnDebugEnterStm(&__stmt_12);
		__glewGenerateMipmapEXT(3553);
		struct BBDebugStm __stmt_13 = {0xc98026d238c3ecac, 509, 0};
		bbOnDebugEnterStm(&__stmt_13);
		__glewBindFramebufferEXT(36160,0);
		struct BBDebugStm __stmt_14 = {0xc98026d238c3ecac, 510, 0};
		bbOnDebugEnterStm(&__stmt_14);
		__glewBindRenderbufferEXT(36161,0);
		bbOnDebugLeaveScope();
	}
	bbOnDebugLeaveScope();
	return 0;
}
BBINT _openb3d_openb3dcore_TTexture_FreeTexture(struct openb3d_openb3dcore_TTexture_obj* o){
	((struct openb3d_openb3dcore_TTexture_obj*)bbNullObjectTest((BBObject*)o));
	struct BBDebugScope_1 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"FreeTexture",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TTexture",
				.var_address=&o
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0xc98026d238c3ecac, 535, 0};
	bbOnDebugEnterStm(&__stmt_0);
	if(((struct openb3d_openb3dcore_TTexture_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_ttexture_exists !=0){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0xc98026d238c3ecac, 536, 0};
		bbOnDebugEnterStm(&__stmt_0);
		((struct openb3d_openb3dcore_TTexture_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_ttexture_exists =0;
		struct BBDebugStm __stmt_1 = {0xc98026d238c3ecac, 537, 0};
		bbOnDebugEnterStm(&__stmt_1);
		struct brl_linkedlist_TListEnum_obj* bbt_=(struct brl_linkedlist_TListEnum_obj*)((struct brl_linkedlist_TList_obj*)bbNullObjectTest((BBObject*)openb3d_openb3dcore_TTexture_tex_list_all))->clas->m_ObjectEnumerator((struct brl_linkedlist_TList_obj*)openb3d_openb3dcore_TTexture_tex_list_all);
		while(((struct brl_linkedlist_TListEnum_obj*)bbNullObjectTest((BBObject*)bbt_))->clas->m_HasNext((struct brl_linkedlist_TListEnum_obj*)bbt_)!=0){
			struct openb3d_openb3dcore_TTexture_obj* bbt_tex=(struct openb3d_openb3dcore_TTexture_obj*)((struct openb3d_openb3dcore_TTexture_obj*)&bbNullObject);
			struct BBDebugScope_1 __scope = {
				BBDEBUGSCOPE_LOCALBLOCK,
				0,
				{
					{
						BBDEBUGDECL_LOCAL,
						"tex",
						":TTexture",
						.var_address=&bbt_tex
					},
					{
						BBDEBUGDECL_END
					}
				}
			};
			bbOnDebugEnterScope((BBDebugScope *)&__scope);
			bbt_tex=(struct openb3d_openb3dcore_TTexture_obj*)((struct openb3d_openb3dcore_TTexture_obj*)bbObjectDowncast((BBOBJECT)((struct brl_linkedlist_TListEnum_obj*)bbNullObjectTest((BBObject*)bbt_))->clas->m_NextObject((struct brl_linkedlist_TListEnum_obj*)bbt_),(BBClass*)&openb3d_openb3dcore_TTexture));
			if(((BBOBJECT)bbt_tex)==&bbNullObject){
				bbOnDebugLeaveScope();
				continue;
			}
			struct BBDebugStm __stmt_0 = {0xc98026d238c3ecac, 538, 0};
			bbOnDebugEnterStm(&__stmt_0);
			if(((struct openb3d_openb3dcore_TTexture_obj*)bbt_tex)==o){
				struct BBDebugScope __scope = {
					BBDEBUGSCOPE_LOCALBLOCK,
					0,
					{
						{
							BBDEBUGDECL_END
						}
					}
				};
				bbOnDebugEnterScope((BBDebugScope *)&__scope);
				struct BBDebugStm __stmt_0 = {0xc98026d238c3ecac, 538, 0};
				bbOnDebugEnterStm(&__stmt_0);
				brl_linkedlist_ListRemove((struct brl_linkedlist_TList_obj*)openb3d_openb3dcore_TTexture_tex_list_all,(BBOBJECT)o);
				struct BBDebugStm __stmt_1 = {0xc98026d238c3ecac, 538, 0};
				bbOnDebugEnterStm(&__stmt_1);
				openb3d_openb3dcore_TTexture_tex_list_all_id-=1;
				bbOnDebugLeaveScope();
			}
			bbOnDebugLeaveScope();
		}
		struct BBDebugStm __stmt_2 = {0xc98026d238c3ecac, 541, 0};
		bbOnDebugEnterStm(&__stmt_2);
		brl_linkedlist_ListRemove((struct brl_linkedlist_TList_obj*)openb3d_openb3dcore_TTexture_tex_list,(BBOBJECT)o);
		struct BBDebugStm __stmt_3 = {0xc98026d238c3ecac, 541, 0};
		bbOnDebugEnterStm(&__stmt_3);
		openb3d_openb3dcore_TTexture_tex_list_id-=1;
		struct BBDebugStm __stmt_4 = {0xc98026d238c3ecac, 542, 0};
		bbOnDebugEnterStm(&__stmt_4);
		((struct openb3d_openb3dcore_TTexture_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_ttexture_pixmap =(struct brl_pixmap_TPixmap_obj*)&bbNullObject;
		struct BBDebugStm __stmt_5 = {0xc98026d238c3ecac, 544, 0};
		bbOnDebugEnterStm(&__stmt_5);
		FreeTexture_(o->clas->f_GetInstance_pb_TTTexture((struct openb3d_openb3dcore_TTexture_obj*)o));
		struct BBDebugStm __stmt_6 = {0xc98026d238c3ecac, 545, 0};
		bbOnDebugEnterStm(&__stmt_6);
		o->clas->f_FreeObject_i_pb(o->clas->f_GetInstance_pb_TTTexture((struct openb3d_openb3dcore_TTexture_obj*)o));
		bbOnDebugLeaveScope();
	}
	bbOnDebugLeaveScope();
	return 0;
}
struct openb3d_openb3dcore_TTexture_obj* openb3d_openb3dcore_TTexture_CreateTexture_TTTexture_iiii(BBINT bbt_width,BBINT bbt_height,BBINT bbt_flags,BBINT bbt_frames){
	BBBYTE* bbt_inst=0;
	struct BBDebugScope_5 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"CreateTexture",
		{
			{
				BBDEBUGDECL_LOCAL,
				"width",
				"i",
				.var_address=&bbt_width
			},
			{
				BBDEBUGDECL_LOCAL,
				"height",
				"i",
				.var_address=&bbt_height
			},
			{
				BBDEBUGDECL_LOCAL,
				"flags",
				"i",
				.var_address=&bbt_flags
			},
			{
				BBDEBUGDECL_LOCAL,
				"frames",
				"i",
				.var_address=&bbt_frames
			},
			{
				BBDEBUGDECL_LOCAL,
				"inst",
				"*b",
				.var_address=&bbt_inst
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0xc98026d238c3ecac, 552, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbt_inst=CreateTexture_(bbt_width,bbt_height,bbt_flags,bbt_frames);
	struct BBDebugStm __stmt_1 = {0xc98026d238c3ecac, 553, 0};
	bbOnDebugEnterStm(&__stmt_1);
	bbOnDebugLeaveScope();
	return (struct openb3d_openb3dcore_TTexture_obj*)openb3d_openb3dcore_TTexture_CreateObject_TTTexture_pb(bbt_inst);
}
struct openb3d_openb3dcore_TTexture_obj* openb3d_openb3dcore_TTexture_LoadTexture_TTTexture_SiTTTexture(BBSTRING bbt_file,BBINT bbt_flags,struct openb3d_openb3dcore_TTexture_obj* bbt_tex){
	struct BBDebugScope_3 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"LoadTexture",
		{
			{
				BBDEBUGDECL_LOCAL,
				"file",
				"$",
				.var_address=&bbt_file
			},
			{
				BBDEBUGDECL_LOCAL,
				"flags",
				"i",
				.var_address=&bbt_flags
			},
			{
				BBDEBUGDECL_LOCAL,
				"tex",
				":TTexture",
				.var_address=&bbt_tex
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0xc98026d238c3ecac, 559, 0};
	bbOnDebugEnterStm(&__stmt_0);
	BBINT bbt_=openb3d_openb3dcore_TGlobal3D_Texture_Loader;
	struct BBDebugStm __stmt_1 = {0xc98026d238c3ecac, 561, 0};
	bbOnDebugEnterStm(&__stmt_1);
	if(bbt_==2){
		struct brl_pixmap_TPixmap_obj* bbt_map=(struct brl_pixmap_TPixmap_obj*)((struct brl_pixmap_TPixmap_obj*)&bbNullObject);
		BBINT bbt_name=0;
		BBBYTE* bbt_cString=0;
		BBBYTE* bbt_inst=0;
		struct BBDebugScope_4 __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_LOCAL,
					"map",
					":TPixmap",
					.var_address=&bbt_map
				},
				{
					BBDEBUGDECL_LOCAL,
					"name",
					"i",
					.var_address=&bbt_name
				},
				{
					BBDEBUGDECL_LOCAL,
					"cString",
					"*b",
					.var_address=&bbt_cString
				},
				{
					BBDEBUGDECL_LOCAL,
					"inst",
					"*b",
					.var_address=&bbt_inst
				},
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0xc98026d238c3ecac, 562, 0};
		bbOnDebugEnterStm(&__stmt_0);
		bbt_map=(struct brl_pixmap_TPixmap_obj*)&bbNullObject;
		struct BBDebugStm __stmt_1 = {0xc98026d238c3ecac, 562, 0};
		bbOnDebugEnterStm(&__stmt_1);
		bbt_name=0;
		struct BBDebugStm __stmt_2 = {0xc98026d238c3ecac, 563, 0};
		bbOnDebugEnterStm(&__stmt_2);
		bbt_cString=bbStringToCString((BBSTRING)bbt_file);
		struct BBDebugStm __stmt_3 = {0xc98026d238c3ecac, 564, 0};
		bbOnDebugEnterStm(&__stmt_3);
		bbt_inst=LoadTexture_(bbt_cString,bbt_flags,openb3d_openb3dcore_TTexture_GetInstance_pb_TTTexture((struct openb3d_openb3dcore_TTexture_obj*)bbt_tex));
		struct BBDebugStm __stmt_4 = {0xc98026d238c3ecac, 565, 0};
		bbOnDebugEnterStm(&__stmt_4);
		if(((BBOBJECT)bbt_tex)==&bbNullObject){
			struct BBDebugScope __scope = {
				BBDEBUGSCOPE_LOCALBLOCK,
				0,
				{
					{
						BBDEBUGDECL_END
					}
				}
			};
			bbOnDebugEnterScope((BBDebugScope *)&__scope);
			struct BBDebugStm __stmt_0 = {0xc98026d238c3ecac, 565, 0};
			bbOnDebugEnterStm(&__stmt_0);
			bbt_tex=(struct openb3d_openb3dcore_TTexture_obj*)openb3d_openb3dcore_TTexture_CreateObject_TTTexture_pb(bbt_inst);
			bbOnDebugLeaveScope();
		}
		struct BBDebugStm __stmt_5 = {0xc98026d238c3ecac, 566, 0};
		bbOnDebugEnterStm(&__stmt_5);
		bbMemFree((void*)bbt_cString);
		struct BBDebugStm __stmt_6 = {0xc98026d238c3ecac, 567, 0};
		bbOnDebugEnterStm(&__stmt_6);
		bbOnDebugLeaveScope();
		bbOnDebugLeaveScope();
		return (struct openb3d_openb3dcore_TTexture_obj*)bbt_tex;
	}else{
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0xc98026d238c3ecac, 570, 0};
		bbOnDebugEnterStm(&__stmt_0);
		bbOnDebugLeaveScope();
		bbOnDebugLeaveScope();
		return (struct openb3d_openb3dcore_TTexture_obj*)openb3d_openb3dcore_TTexture_LoadAnimTextureStream_TTTexture_TObjectiiiiiTTTexture((BBOBJECT)bbt_file,bbt_flags,0,0,0,1,(struct openb3d_openb3dcore_TTexture_obj*)bbt_tex);
	}
}
struct openb3d_openb3dcore_TTexture_obj* openb3d_openb3dcore_TTexture_LoadAnimTexture_TTTexture_SiiiiiTTTexture(BBSTRING bbt_file,BBINT bbt_flags,BBINT bbt_frame_width,BBINT bbt_frame_height,BBINT bbt_first_frame,BBINT bbt_frame_count,struct openb3d_openb3dcore_TTexture_obj* bbt_tex){
	struct BBDebugScope_7 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"LoadAnimTexture",
		{
			{
				BBDEBUGDECL_LOCAL,
				"file",
				"$",
				.var_address=&bbt_file
			},
			{
				BBDEBUGDECL_LOCAL,
				"flags",
				"i",
				.var_address=&bbt_flags
			},
			{
				BBDEBUGDECL_LOCAL,
				"frame_width",
				"i",
				.var_address=&bbt_frame_width
			},
			{
				BBDEBUGDECL_LOCAL,
				"frame_height",
				"i",
				.var_address=&bbt_frame_height
			},
			{
				BBDEBUGDECL_LOCAL,
				"first_frame",
				"i",
				.var_address=&bbt_first_frame
			},
			{
				BBDEBUGDECL_LOCAL,
				"frame_count",
				"i",
				.var_address=&bbt_frame_count
			},
			{
				BBDEBUGDECL_LOCAL,
				"tex",
				":TTexture",
				.var_address=&bbt_tex
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0xc98026d238c3ecac, 578, 0};
	bbOnDebugEnterStm(&__stmt_0);
	BBINT bbt_=openb3d_openb3dcore_TGlobal3D_Texture_Loader;
	struct BBDebugStm __stmt_1 = {0xc98026d238c3ecac, 580, 0};
	bbOnDebugEnterStm(&__stmt_1);
	if(bbt_==2){
		BBBYTE* bbt_cString=0;
		BBBYTE* bbt_inst=0;
		struct BBDebugScope_2 __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_LOCAL,
					"cString",
					"*b",
					.var_address=&bbt_cString
				},
				{
					BBDEBUGDECL_LOCAL,
					"inst",
					"*b",
					.var_address=&bbt_inst
				},
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0xc98026d238c3ecac, 581, 0};
		bbOnDebugEnterStm(&__stmt_0);
		bbt_cString=bbStringToCString((BBSTRING)bbt_file);
		struct BBDebugStm __stmt_1 = {0xc98026d238c3ecac, 582, 0};
		bbOnDebugEnterStm(&__stmt_1);
		bbt_inst=LoadAnimTexture_(bbt_cString,bbt_flags,bbt_frame_width,bbt_frame_height,bbt_first_frame,bbt_frame_count,openb3d_openb3dcore_TTexture_GetInstance_pb_TTTexture((struct openb3d_openb3dcore_TTexture_obj*)bbt_tex));
		struct BBDebugStm __stmt_2 = {0xc98026d238c3ecac, 583, 0};
		bbOnDebugEnterStm(&__stmt_2);
		if(((BBOBJECT)bbt_tex)==&bbNullObject){
			struct BBDebugScope __scope = {
				BBDEBUGSCOPE_LOCALBLOCK,
				0,
				{
					{
						BBDEBUGDECL_END
					}
				}
			};
			bbOnDebugEnterScope((BBDebugScope *)&__scope);
			struct BBDebugStm __stmt_0 = {0xc98026d238c3ecac, 583, 0};
			bbOnDebugEnterStm(&__stmt_0);
			bbt_tex=(struct openb3d_openb3dcore_TTexture_obj*)openb3d_openb3dcore_TTexture_CreateObject_TTTexture_pb(bbt_inst);
			bbOnDebugLeaveScope();
		}
		struct BBDebugStm __stmt_3 = {0xc98026d238c3ecac, 584, 0};
		bbOnDebugEnterStm(&__stmt_3);
		bbMemFree((void*)bbt_cString);
		struct BBDebugStm __stmt_4 = {0xc98026d238c3ecac, 585, 0};
		bbOnDebugEnterStm(&__stmt_4);
		bbOnDebugLeaveScope();
		bbOnDebugLeaveScope();
		return (struct openb3d_openb3dcore_TTexture_obj*)bbt_tex;
	}else{
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0xc98026d238c3ecac, 588, 0};
		bbOnDebugEnterStm(&__stmt_0);
		bbOnDebugLeaveScope();
		bbOnDebugLeaveScope();
		return (struct openb3d_openb3dcore_TTexture_obj*)openb3d_openb3dcore_TTexture_LoadAnimTextureStream_TTTexture_TObjectiiiiiTTTexture((BBOBJECT)bbt_file,bbt_flags,bbt_frame_width,bbt_frame_height,bbt_first_frame,bbt_frame_count,(struct openb3d_openb3dcore_TTexture_obj*)bbt_tex);
	}
}
struct openb3d_openb3dcore_TTexture_obj* openb3d_openb3dcore_TTexture_LoadAnimTextureStream_TTTexture_TObjectiiiiiTTTexture(BBOBJECT bbt_url,BBINT bbt_flags,BBINT bbt_frame_width,BBINT bbt_frame_height,BBINT bbt_first_frame,BBINT bbt_frame_count,struct openb3d_openb3dcore_TTexture_obj* bbt_tex){
	BBSTRING bbt_file=(&bbEmptyString);
	struct openb3d_openb3dcore_TTexture_obj* bbt_old_tex=(struct openb3d_openb3dcore_TTexture_obj*)((struct openb3d_openb3dcore_TTexture_obj*)&bbNullObject);
	BBINT bbt_alpha_present=0;
	struct openb3d_ddsloader_TDDS_obj* bbt_dds=(struct openb3d_ddsloader_TDDS_obj*)((struct openb3d_ddsloader_TDDS_obj*)&bbNullObject);
	BBINT bbt_dds_ext=0;
	BBINT bbt_name=0;
	struct BBDebugScope_13 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"LoadAnimTextureStream",
		{
			{
				BBDEBUGDECL_LOCAL,
				"url",
				":Object",
				.var_address=&bbt_url
			},
			{
				BBDEBUGDECL_LOCAL,
				"flags",
				"i",
				.var_address=&bbt_flags
			},
			{
				BBDEBUGDECL_LOCAL,
				"frame_width",
				"i",
				.var_address=&bbt_frame_width
			},
			{
				BBDEBUGDECL_LOCAL,
				"frame_height",
				"i",
				.var_address=&bbt_frame_height
			},
			{
				BBDEBUGDECL_LOCAL,
				"first_frame",
				"i",
				.var_address=&bbt_first_frame
			},
			{
				BBDEBUGDECL_LOCAL,
				"frame_count",
				"i",
				.var_address=&bbt_frame_count
			},
			{
				BBDEBUGDECL_LOCAL,
				"tex",
				":TTexture",
				.var_address=&bbt_tex
			},
			{
				BBDEBUGDECL_LOCAL,
				"file",
				"$",
				.var_address=&bbt_file
			},
			{
				BBDEBUGDECL_LOCAL,
				"old_tex",
				":TTexture",
				.var_address=&bbt_old_tex
			},
			{
				BBDEBUGDECL_LOCAL,
				"alpha_present",
				"i",
				.var_address=&bbt_alpha_present
			},
			{
				BBDEBUGDECL_LOCAL,
				"dds",
				":TDDS",
				.var_address=&bbt_dds
			},
			{
				BBDEBUGDECL_LOCAL,
				"dds_ext",
				"i",
				.var_address=&bbt_dds_ext
			},
			{
				BBDEBUGDECL_LOCAL,
				"name",
				"i",
				.var_address=&bbt_name
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0xc98026d238c3ecac, 596, 0};
	bbOnDebugEnterStm(&__stmt_0);
	if(((unsigned int)(bbt_flags)&(unsigned int)(128))!=0){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0xc98026d238c3ecac, 596, 0};
		bbOnDebugEnterStm(&__stmt_0);
		bbOnDebugLeaveScope();
		bbOnDebugLeaveScope();
		return (struct openb3d_openb3dcore_TTexture_obj*)openb3d_openb3dcore_TTexture_LoadCubeMapTextureStream_TTTexture_TObjectiiiiiTTTexture((BBOBJECT)bbt_url,bbt_flags,bbt_frame_width,bbt_frame_height,bbt_first_frame,bbt_frame_count,(struct openb3d_openb3dcore_TTexture_obj*)bbt_tex);
	}
	struct BBDebugStm __stmt_1 = {0xc98026d238c3ecac, 598, 0};
	bbOnDebugEnterStm(&__stmt_1);
	bbt_file=((BBString *)bbObjectStringcast((BBOBJECT)bbt_url));
	struct BBDebugStm __stmt_2 = {0xc98026d238c3ecac, 599, 0};
	bbOnDebugEnterStm(&__stmt_2);
	if(openb3d_openb3dcore_TTexture_FileFind_i_vS(&bbt_file)==0){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0xc98026d238c3ecac, 599, 0};
		bbOnDebugEnterStm(&__stmt_0);
		bbOnDebugLeaveScope();
		bbOnDebugLeaveScope();
		return (struct openb3d_openb3dcore_TTexture_obj*)&bbNullObject;
	}
	struct BBDebugStm __stmt_3 = {0xc98026d238c3ecac, 601, 0};
	bbOnDebugEnterStm(&__stmt_3);
	if(((BBOBJECT)bbt_tex)==&bbNullObject){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0xc98026d238c3ecac, 601, 0};
		bbOnDebugEnterStm(&__stmt_0);
		bbt_tex=(struct openb3d_openb3dcore_TTexture_obj*)openb3d_openb3dcore_TTexture_Create_TTTexture();
		bbOnDebugLeaveScope();
	}
	struct BBDebugStm __stmt_4 = {0xc98026d238c3ecac, 602, 0};
	bbOnDebugEnterStm(&__stmt_4);
	((struct openb3d_openb3dcore_TTexture_obj*)bbNullObjectTest((BBObject*)bbt_tex))->clas->m_SetString_pbS((struct openb3d_openb3dcore_TTexture_obj*)bbt_tex,((struct openb3d_openb3dcore_TTexture_obj*)bbNullObjectTest((BBObject*)bbt_tex))->_openb3d_openb3dcore_ttexture_file ,bbt_file);
	struct BBDebugStm __stmt_5 = {0xc98026d238c3ecac, 603, 0};
	bbOnDebugEnterStm(&__stmt_5);
	((struct openb3d_openb3dcore_TTexture_obj*)bbNullObjectTest((BBObject*)bbt_tex))->clas->m_SetString_pbS((struct openb3d_openb3dcore_TTexture_obj*)bbt_tex,((struct openb3d_openb3dcore_TTexture_obj*)bbNullObjectTest((BBObject*)bbt_tex))->_openb3d_openb3dcore_ttexture_file_abs ,openb3d_openb3dcore_TTexture_FileAbs_S_S(bbt_file));
	struct BBDebugStm __stmt_6 = {0xc98026d238c3ecac, 606, 0};
	bbOnDebugEnterStm(&__stmt_6);
	((struct openb3d_openb3dcore_TTexture_obj*)bbNullObjectTest((BBObject*)bbt_tex))->_openb3d_openb3dcore_ttexture_flags [0]=bbt_flags;
	struct BBDebugStm __stmt_7 = {0xc98026d238c3ecac, 607, 0};
	bbOnDebugEnterStm(&__stmt_7);
	((struct openb3d_openb3dcore_TTexture_obj*)bbNullObjectTest((BBObject*)bbt_tex))->clas->m_FilterFlags((struct openb3d_openb3dcore_TTexture_obj*)bbt_tex);
	struct BBDebugStm __stmt_8 = {0xc98026d238c3ecac, 610, 0};
	bbOnDebugEnterStm(&__stmt_8);
	bbt_old_tex=(struct openb3d_openb3dcore_TTexture_obj*)((struct openb3d_openb3dcore_TTexture_obj*)bbNullObjectTest((BBObject*)bbt_tex))->clas->m_TexInList((struct openb3d_openb3dcore_TTexture_obj*)bbt_tex);
	struct BBDebugStm __stmt_9 = {0xc98026d238c3ecac, 611, 0};
	bbOnDebugEnterStm(&__stmt_9);
	if((((BBOBJECT)bbt_old_tex)!=&bbNullObject) && (openb3d_openb3dcore_TTexture_is_unique==0)){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0xc98026d238c3ecac, 612, 0};
		bbOnDebugEnterStm(&__stmt_0);
		if((((bbt_frame_width>0) && (bbt_frame_height>0)) && (bbt_frame_count==1)) && (((struct openb3d_openb3dcore_TTexture_obj*)bbt_old_tex)!=bbt_tex)){
			struct BBDebugScope __scope = {
				BBDEBUGSCOPE_LOCALBLOCK,
				0,
				{
					{
						BBDEBUGDECL_END
					}
				}
			};
			bbOnDebugEnterScope((BBDebugScope *)&__scope);
			struct BBDebugStm __stmt_0 = {0xc98026d238c3ecac, 613, 0};
			bbOnDebugEnterStm(&__stmt_0);
			((struct openb3d_openb3dcore_TTexture_obj*)bbNullObjectTest((BBObject*)bbt_tex))->clas->m_TextureListAdd_TTList((struct openb3d_openb3dcore_TTexture_obj*)bbt_tex,(struct brl_linkedlist_TList_obj*)openb3d_openb3dcore_TTexture_tex_list);
			struct BBDebugStm __stmt_1 = {0xc98026d238c3ecac, 614, 0};
			bbOnDebugEnterStm(&__stmt_1);
			((struct openb3d_openb3dcore_TTexture_obj*)bbNullObjectTest((BBObject*)bbt_tex))->clas->m_TextureListAdd_TTList((struct openb3d_openb3dcore_TTexture_obj*)bbt_tex,(struct brl_linkedlist_TList_obj*)openb3d_openb3dcore_TTexture_tex_list_all);
			bbOnDebugLeaveScope();
		}else{
			struct BBDebugScope __scope = {
				BBDEBUGSCOPE_LOCALBLOCK,
				0,
				{
					{
						BBDEBUGDECL_END
					}
				}
			};
			bbOnDebugEnterScope((BBDebugScope *)&__scope);
			struct BBDebugStm __stmt_0 = {0xc98026d238c3ecac, 616, 0};
			bbOnDebugEnterStm(&__stmt_0);
			((struct openb3d_openb3dcore_TTexture_obj*)bbNullObjectTest((BBObject*)bbt_old_tex))->clas->m_TextureListAdd_TTList((struct openb3d_openb3dcore_TTexture_obj*)bbt_old_tex,(struct brl_linkedlist_TList_obj*)openb3d_openb3dcore_TTexture_tex_list_all);
			struct BBDebugStm __stmt_1 = {0xc98026d238c3ecac, 617, 0};
			bbOnDebugEnterStm(&__stmt_1);
			((struct openb3d_openb3dcore_TTexture_obj*)bbNullObjectTest((BBObject*)bbt_tex))->_openb3d_openb3dcore_ttexture_exists =0;
			struct BBDebugStm __stmt_2 = {0xc98026d238c3ecac, 618, 0};
			bbOnDebugEnterStm(&__stmt_2);
			openb3d_openb3dcore_TTexture_FreeObject_i_pb(openb3d_openb3dcore_TTexture_GetInstance_pb_TTTexture((struct openb3d_openb3dcore_TTexture_obj*)bbt_tex));
			struct BBDebugStm __stmt_3 = {0xc98026d238c3ecac, 620, 0};
			bbOnDebugEnterStm(&__stmt_3);
			brl_blitz_DebugLog(bbStringConcat(((BBString*)&_s397),bbt_file));
			struct BBDebugStm __stmt_4 = {0xc98026d238c3ecac, 621, 0};
			bbOnDebugEnterStm(&__stmt_4);
			bbOnDebugLeaveScope();
			bbOnDebugLeaveScope();
			bbOnDebugLeaveScope();
			return (struct openb3d_openb3dcore_TTexture_obj*)bbt_old_tex;
		}
		bbOnDebugLeaveScope();
	}else{
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0xc98026d238c3ecac, 623, 0};
		bbOnDebugEnterStm(&__stmt_0);
		if(((struct openb3d_openb3dcore_TTexture_obj*)bbt_old_tex)!=bbt_tex){
			struct BBDebugScope __scope = {
				BBDEBUGSCOPE_LOCALBLOCK,
				0,
				{
					{
						BBDEBUGDECL_END
					}
				}
			};
			bbOnDebugEnterScope((BBDebugScope *)&__scope);
			struct BBDebugStm __stmt_0 = {0xc98026d238c3ecac, 624, 0};
			bbOnDebugEnterStm(&__stmt_0);
			((struct openb3d_openb3dcore_TTexture_obj*)bbNullObjectTest((BBObject*)bbt_tex))->clas->m_TextureListAdd_TTList((struct openb3d_openb3dcore_TTexture_obj*)bbt_tex,(struct brl_linkedlist_TList_obj*)openb3d_openb3dcore_TTexture_tex_list);
			struct BBDebugStm __stmt_1 = {0xc98026d238c3ecac, 625, 0};
			bbOnDebugEnterStm(&__stmt_1);
			((struct openb3d_openb3dcore_TTexture_obj*)bbNullObjectTest((BBObject*)bbt_tex))->clas->m_TextureListAdd_TTList((struct openb3d_openb3dcore_TTexture_obj*)bbt_tex,(struct brl_linkedlist_TList_obj*)openb3d_openb3dcore_TTexture_tex_list_all);
			bbOnDebugLeaveScope();
		}
		bbOnDebugLeaveScope();
	}
	struct BBDebugStm __stmt_10 = {0xc98026d238c3ecac, 628, 0};
	bbOnDebugEnterStm(&__stmt_10);
	((struct openb3d_openb3dcore_TTexture_obj*)bbNullObjectTest((BBObject*)bbt_tex))->_openb3d_openb3dcore_ttexture_pixmap =(struct brl_pixmap_TPixmap_obj*)brl_pixmap_LoadPixmap((BBOBJECT)bbt_url);
	struct BBDebugStm __stmt_11 = {0xc98026d238c3ecac, 629, 0};
	bbOnDebugEnterStm(&__stmt_11);
	if(((BBOBJECT)((struct openb3d_openb3dcore_TTexture_obj*)bbNullObjectTest((BBObject*)bbt_tex))->_openb3d_openb3dcore_ttexture_pixmap )==&bbNullObject){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0xc98026d238c3ecac, 630, 0};
		bbOnDebugEnterStm(&__stmt_0);
		brl_blitz_DebugLog(bbStringConcat(((BBString*)&_s398),bbt_file));
		struct BBDebugStm __stmt_1 = {0xc98026d238c3ecac, 631, 0};
		bbOnDebugEnterStm(&__stmt_1);
		bbOnDebugLeaveScope();
		bbOnDebugLeaveScope();
		return (struct openb3d_openb3dcore_TTexture_obj*)bbt_tex;
	}
	struct BBDebugStm __stmt_12 = {0xc98026d238c3ecac, 635, 0};
	bbOnDebugEnterStm(&__stmt_12);
	bbt_alpha_present=0;
	struct BBDebugStm __stmt_13 = {0xc98026d238c3ecac, 636, 0};
	bbOnDebugEnterStm(&__stmt_13);
	if(((((struct brl_pixmap_TPixmap_obj*)bbNullObjectTest((BBObject*)((struct openb3d_openb3dcore_TTexture_obj*)bbNullObjectTest((BBObject*)bbt_tex))->_openb3d_openb3dcore_ttexture_pixmap ))->_brl_pixmap_tpixmap_format ==6) || (((struct brl_pixmap_TPixmap_obj*)bbNullObjectTest((BBObject*)((struct openb3d_openb3dcore_TTexture_obj*)bbNullObjectTest((BBObject*)bbt_tex))->_openb3d_openb3dcore_ttexture_pixmap ))->_brl_pixmap_tpixmap_format ==5)) || (((struct brl_pixmap_TPixmap_obj*)bbNullObjectTest((BBObject*)((struct openb3d_openb3dcore_TTexture_obj*)bbNullObjectTest((BBObject*)bbt_tex))->_openb3d_openb3dcore_ttexture_pixmap ))->_brl_pixmap_tpixmap_format ==2)){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0xc98026d238c3ecac, 636, 0};
		bbOnDebugEnterStm(&__stmt_0);
		bbt_alpha_present=1;
		bbOnDebugLeaveScope();
	}
	struct BBDebugStm __stmt_14 = {0xc98026d238c3ecac, 637, 0};
	bbOnDebugEnterStm(&__stmt_14);
	if(((struct brl_pixmap_TPixmap_obj*)bbNullObjectTest((BBObject*)((struct openb3d_openb3dcore_TTexture_obj*)bbNullObjectTest((BBObject*)bbt_tex))->_openb3d_openb3dcore_ttexture_pixmap ))->_brl_pixmap_tpixmap_format !=6){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0xc98026d238c3ecac, 637, 0};
		bbOnDebugEnterStm(&__stmt_0);
		struct brl_pixmap_TPixmap_obj* bbt_;
		((struct openb3d_openb3dcore_TTexture_obj*)bbNullObjectTest((BBObject*)bbt_tex))->_openb3d_openb3dcore_ttexture_pixmap =(struct brl_pixmap_TPixmap_obj*)(((struct brl_pixmap_TPixmap_obj*)((struct brl_pixmap_TPixmap_obj*)bbNullObjectTest((BBObject*)(bbt_ = ((struct openb3d_openb3dcore_TTexture_obj*)bbNullObjectTest((BBObject*)bbt_tex))->_openb3d_openb3dcore_ttexture_pixmap ))))->clas)->m_Convert_i((struct brl_pixmap_TPixmap_obj*)bbt_,6);
		bbOnDebugLeaveScope();
	}
	struct BBDebugStm __stmt_15 = {0xc98026d238c3ecac, 639, 0};
	bbOnDebugEnterStm(&__stmt_15);
	bbt_dds=(struct openb3d_ddsloader_TDDS_obj*)((struct openb3d_ddsloader_TDDS_obj*)&bbNullObject);
	struct BBDebugStm __stmt_16 = {0xc98026d238c3ecac, 639, 0};
	bbOnDebugEnterStm(&__stmt_16);
	bbt_dds_ext=0;
	struct BBDebugStm __stmt_17 = {0xc98026d238c3ecac, 640, 0};
	bbOnDebugEnterStm(&__stmt_17);
	if(bbStringEquals(brl_filesystem_ExtractExt(bbStringToLower((BBSTRING)bbt_file)), ((BBString*)&_s399))==1){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0xc98026d238c3ecac, 641, 0};
		bbOnDebugEnterStm(&__stmt_0);
		bbt_dds=(struct openb3d_ddsloader_TDDS_obj*)((struct openb3d_ddsloader_TDDS_obj*)bbObjectDowncast((BBOBJECT)((struct brl_linkedlist_TList_obj*)bbNullObjectTest((BBObject*)openb3d_ddsloader_TDDS_dds_list))->clas->m_Last((struct brl_linkedlist_TList_obj*)openb3d_ddsloader_TDDS_dds_list),(BBClass*)&openb3d_ddsloader_TDDS));
		struct BBDebugStm __stmt_1 = {0xc98026d238c3ecac, 642, 0};
		bbOnDebugEnterStm(&__stmt_1);
		bbt_dds_ext=1;
		struct BBDebugStm __stmt_2 = {0xc98026d238c3ecac, 644, 0};
		bbOnDebugEnterStm(&__stmt_2);
		if(!(((struct openb3d_ddsloader_TDDS_obj*)bbNullObjectTest((BBObject*)bbt_dds))->clas->m_IsCompressed((struct openb3d_ddsloader_TDDS_obj*)bbt_dds)!=0)){
			struct BBDebugScope __scope = {
				BBDEBUGSCOPE_LOCALBLOCK,
				0,
				{
					{
						BBDEBUGDECL_END
					}
				}
			};
			bbOnDebugEnterScope((BBDebugScope *)&__scope);
			struct BBDebugStm __stmt_0 = {0xc98026d238c3ecac, 645, 0};
			bbOnDebugEnterStm(&__stmt_0);
			if((((unsigned int)(bbt_flags)&(unsigned int)(2))!=0) && (bbt_alpha_present==0)){
				struct BBDebugScope __scope = {
					BBDEBUGSCOPE_LOCALBLOCK,
					0,
					{
						{
							BBDEBUGDECL_END
						}
					}
				};
				bbOnDebugEnterScope((BBDebugScope *)&__scope);
				struct BBDebugStm __stmt_0 = {0xc98026d238c3ecac, 645, 0};
				bbOnDebugEnterStm(&__stmt_0);
				((struct openb3d_openb3dcore_TTexture_obj*)bbNullObjectTest((BBObject*)bbt_tex))->_openb3d_openb3dcore_ttexture_pixmap =(struct brl_pixmap_TPixmap_obj*)openb3d_openb3dcore_TTexture_ApplyAlpha_TTPixmap_vTTPixmapf((struct brl_pixmap_TPixmap_obj*)&((struct openb3d_openb3dcore_TTexture_obj*)bbNullObjectTest((BBObject*)bbt_tex))->_openb3d_openb3dcore_ttexture_pixmap ,((struct openb3d_openb3dcore_TTexture_obj*)bbNullObjectTest((BBObject*)bbt_tex))->_openb3d_openb3dcore_ttexture_discard );
				bbOnDebugLeaveScope();
			}
			struct BBDebugStm __stmt_1 = {0xc98026d238c3ecac, 647, 0};
			bbOnDebugEnterStm(&__stmt_1);
			if(((unsigned int)(bbt_flags)&(unsigned int)(4))!=0){
				struct BBDebugScope __scope = {
					BBDEBUGSCOPE_LOCALBLOCK,
					0,
					{
						{
							BBDEBUGDECL_END
						}
					}
				};
				bbOnDebugEnterScope((BBDebugScope *)&__scope);
				struct BBDebugStm __stmt_0 = {0xc98026d238c3ecac, 647, 0};
				bbOnDebugEnterStm(&__stmt_0);
				((struct openb3d_openb3dcore_TTexture_obj*)bbNullObjectTest((BBObject*)bbt_tex))->_openb3d_openb3dcore_ttexture_pixmap =(struct brl_pixmap_TPixmap_obj*)openb3d_openb3dcore_TTexture_ApplyMask_TTPixmap_vTTPixmapiii((struct brl_pixmap_TPixmap_obj*)&((struct openb3d_openb3dcore_TTexture_obj*)bbNullObjectTest((BBObject*)bbt_tex))->_openb3d_openb3dcore_ttexture_pixmap ,0,0,0);
				bbOnDebugLeaveScope();
			}
			bbOnDebugLeaveScope();
		}
		bbOnDebugLeaveScope();
	}else{
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0xc98026d238c3ecac, 654, 0};
		bbOnDebugEnterStm(&__stmt_0);
		if((((unsigned int)(bbt_flags)&(unsigned int)(2))!=0) && (bbt_alpha_present==0)){
			struct BBDebugScope __scope = {
				BBDEBUGSCOPE_LOCALBLOCK,
				0,
				{
					{
						BBDEBUGDECL_END
					}
				}
			};
			bbOnDebugEnterScope((BBDebugScope *)&__scope);
			struct BBDebugStm __stmt_0 = {0xc98026d238c3ecac, 654, 0};
			bbOnDebugEnterStm(&__stmt_0);
			((struct openb3d_openb3dcore_TTexture_obj*)bbNullObjectTest((BBObject*)bbt_tex))->_openb3d_openb3dcore_ttexture_pixmap =(struct brl_pixmap_TPixmap_obj*)openb3d_openb3dcore_TTexture_ApplyAlpha_TTPixmap_vTTPixmapf((struct brl_pixmap_TPixmap_obj*)&((struct openb3d_openb3dcore_TTexture_obj*)bbNullObjectTest((BBObject*)bbt_tex))->_openb3d_openb3dcore_ttexture_pixmap ,((struct openb3d_openb3dcore_TTexture_obj*)bbNullObjectTest((BBObject*)bbt_tex))->_openb3d_openb3dcore_ttexture_discard );
			bbOnDebugLeaveScope();
		}
		struct BBDebugStm __stmt_1 = {0xc98026d238c3ecac, 657, 0};
		bbOnDebugEnterStm(&__stmt_1);
		if(((unsigned int)(bbt_flags)&(unsigned int)(4))!=0){
			struct BBDebugScope __scope = {
				BBDEBUGSCOPE_LOCALBLOCK,
				0,
				{
					{
						BBDEBUGDECL_END
					}
				}
			};
			bbOnDebugEnterScope((BBDebugScope *)&__scope);
			struct BBDebugStm __stmt_0 = {0xc98026d238c3ecac, 657, 0};
			bbOnDebugEnterStm(&__stmt_0);
			((struct openb3d_openb3dcore_TTexture_obj*)bbNullObjectTest((BBObject*)bbt_tex))->_openb3d_openb3dcore_ttexture_pixmap =(struct brl_pixmap_TPixmap_obj*)openb3d_openb3dcore_TTexture_ApplyMask_TTPixmap_vTTPixmapiii((struct brl_pixmap_TPixmap_obj*)&((struct openb3d_openb3dcore_TTexture_obj*)bbNullObjectTest((BBObject*)bbt_tex))->_openb3d_openb3dcore_ttexture_pixmap ,0,0,0);
			bbOnDebugLeaveScope();
		}
		bbOnDebugLeaveScope();
	}
	struct BBDebugStm __stmt_18 = {0xc98026d238c3ecac, 660, 0};
	bbOnDebugEnterStm(&__stmt_18);
	bbt_name=0;
	struct BBDebugStm __stmt_19 = {0xc98026d238c3ecac, 661, 0};
	bbOnDebugEnterStm(&__stmt_19);
	if((bbt_frame_count>1) || ((bbt_frame_width>0) && (bbt_frame_height>0))){
		struct brl_pixmap_TPixmap_obj* bbt_animmap=(struct brl_pixmap_TPixmap_obj*)((struct brl_pixmap_TPixmap_obj*)&bbNullObject);
		BBINT bbt_width=0;
		BBINT bbt_height=0;
		BBINT bbt_xframes=0;
		BBINT bbt_yframes=0;
		BBINT bbt_x=0;
		BBINT bbt_y=0;
		struct BBDebugScope_7 __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_LOCAL,
					"animmap",
					":TPixmap",
					.var_address=&bbt_animmap
				},
				{
					BBDEBUGDECL_LOCAL,
					"width",
					"i",
					.var_address=&bbt_width
				},
				{
					BBDEBUGDECL_LOCAL,
					"height",
					"i",
					.var_address=&bbt_height
				},
				{
					BBDEBUGDECL_LOCAL,
					"xframes",
					"i",
					.var_address=&bbt_xframes
				},
				{
					BBDEBUGDECL_LOCAL,
					"yframes",
					"i",
					.var_address=&bbt_yframes
				},
				{
					BBDEBUGDECL_LOCAL,
					"x",
					"i",
					.var_address=&bbt_x
				},
				{
					BBDEBUGDECL_LOCAL,
					"y",
					"i",
					.var_address=&bbt_y
				},
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0xc98026d238c3ecac, 663, 0};
		bbOnDebugEnterStm(&__stmt_0);
		bbt_animmap=(struct brl_pixmap_TPixmap_obj*)brl_pixmap_CreatePixmap(bbt_frame_width,bbt_frame_height,((struct brl_pixmap_TPixmap_obj*)bbNullObjectTest((BBObject*)((struct openb3d_openb3dcore_TTexture_obj*)bbNullObjectTest((BBObject*)bbt_tex))->_openb3d_openb3dcore_ttexture_pixmap ))->_brl_pixmap_tpixmap_format ,4);
		struct BBDebugStm __stmt_1 = {0xc98026d238c3ecac, 664, 0};
		bbOnDebugEnterStm(&__stmt_1);
		((struct openb3d_openb3dcore_TTexture_obj*)bbNullObjectTest((BBObject*)bbt_tex))->_openb3d_openb3dcore_ttexture_no_frames [0]=bbt_frame_count;
		struct BBDebugStm __stmt_2 = {0xc98026d238c3ecac, 665, 0};
		bbOnDebugEnterStm(&__stmt_2);
		((struct openb3d_openb3dcore_TTexture_obj*)bbNullObjectTest((BBObject*)bbt_tex))->_openb3d_openb3dcore_ttexture_frames =TextureNewUIntArray_(openb3d_openb3dcore_TTexture_GetInstance_pb_TTTexture((struct openb3d_openb3dcore_TTexture_obj*)bbt_tex),4,bbt_frame_count);
		struct BBDebugStm __stmt_3 = {0xc98026d238c3ecac, 666, 0};
		bbOnDebugEnterStm(&__stmt_3);
		((struct openb3d_openb3dcore_TTexture_obj*)bbNullObjectTest((BBObject*)bbt_tex))->_openb3d_openb3dcore_ttexture_gltex =((struct openb3d_openb3dcore_TTexture_obj*)bbNullObjectTest((BBObject*)bbt_tex))->_openb3d_openb3dcore_ttexture_frames ;
		struct BBDebugStm __stmt_4 = {0xc98026d238c3ecac, 668, 0};
		bbOnDebugEnterStm(&__stmt_4);
		bbt_width=bbt_frame_width;
		struct BBDebugStm __stmt_5 = {0xc98026d238c3ecac, 669, 0};
		bbOnDebugEnterStm(&__stmt_5);
		bbt_height=bbt_frame_height;
		struct BBDebugStm __stmt_6 = {0xc98026d238c3ecac, 670, 0};
		bbOnDebugEnterStm(&__stmt_6);
		bbt_xframes=(((struct brl_pixmap_TPixmap_obj*)bbNullObjectTest((BBObject*)((struct openb3d_openb3dcore_TTexture_obj*)bbNullObjectTest((BBObject*)bbt_tex))->_openb3d_openb3dcore_ttexture_pixmap ))->_brl_pixmap_tpixmap_width /bbt_width);
		struct BBDebugStm __stmt_7 = {0xc98026d238c3ecac, 671, 0};
		bbOnDebugEnterStm(&__stmt_7);
		bbt_yframes=(((struct brl_pixmap_TPixmap_obj*)bbNullObjectTest((BBObject*)((struct openb3d_openb3dcore_TTexture_obj*)bbNullObjectTest((BBObject*)bbt_tex))->_openb3d_openb3dcore_ttexture_pixmap ))->_brl_pixmap_tpixmap_height /bbt_height);
		struct BBDebugStm __stmt_8 = {0xc98026d238c3ecac, 672, 0};
		bbOnDebugEnterStm(&__stmt_8);
		if(bbt_first_frame>((bbt_xframes*bbt_yframes)-1)){
			struct BBDebugScope __scope = {
				BBDEBUGSCOPE_LOCALBLOCK,
				0,
				{
					{
						BBDEBUGDECL_END
					}
				}
			};
			bbOnDebugEnterScope((BBDebugScope *)&__scope);
			struct BBDebugStm __stmt_0 = {0xc98026d238c3ecac, 672, 0};
			bbOnDebugEnterStm(&__stmt_0);
			bbt_first_frame=((bbt_xframes*bbt_yframes)-1);
			bbOnDebugLeaveScope();
		}
		struct BBDebugStm __stmt_9 = {0xc98026d238c3ecac, 673, 0};
		bbOnDebugEnterStm(&__stmt_9);
		bbt_x=(bbt_first_frame % bbt_xframes);
		struct BBDebugStm __stmt_10 = {0xc98026d238c3ecac, 674, 0};
		bbOnDebugEnterStm(&__stmt_10);
		bbt_y=((bbt_first_frame/bbt_xframes) % bbt_yframes);
		struct BBDebugStm __stmt_11 = {0xc98026d238c3ecac, 676, 0};
		bbOnDebugEnterStm(&__stmt_11);
		{
			BBINT bbt_i=0;
			BBINT bbt_2=(bbt_frame_count-1);
			for(;(bbt_i<=bbt_2);bbt_i=(bbt_i+1)){
				struct BBDebugScope_1 __scope = {
					BBDEBUGSCOPE_LOCALBLOCK,
					0,
					{
						{
							BBDEBUGDECL_LOCAL,
							"i",
							"i",
							.var_address=&bbt_i
						},
						{
							BBDEBUGDECL_END
						}
					}
				};
				bbOnDebugEnterScope((BBDebugScope *)&__scope);
				struct BBDebugStm __stmt_0 = {0xc98026d238c3ecac, 677, 0};
				bbOnDebugEnterStm(&__stmt_0);
				if(bbt_dds_ext!=0){
					struct BBDebugScope __scope = {
						BBDEBUGSCOPE_LOCALBLOCK,
						0,
						{
							{
								BBDEBUGDECL_END
							}
						}
					};
					bbOnDebugEnterScope((BBDebugScope *)&__scope);
					struct BBDebugStm __stmt_0 = {0xc98026d238c3ecac, 678, 0};
					bbOnDebugEnterStm(&__stmt_0);
					glGenTextures((GLsizei)1,(GLuint*)(&bbt_name));
					struct BBDebugStm __stmt_1 = {0xc98026d238c3ecac, 679, 0};
					bbOnDebugEnterStm(&__stmt_1);
					glBindTexture((GLenum)3553,(GLuint)bbt_name);
					struct BBDebugStm __stmt_2 = {0xc98026d238c3ecac, 681, 0};
					bbOnDebugEnterStm(&__stmt_2);
					((struct openb3d_ddsloader_TDDS_obj*)bbNullObjectTest((BBObject*)bbt_dds))->clas->m_TextureParameters_i((struct openb3d_ddsloader_TDDS_obj*)bbt_dds,((struct openb3d_openb3dcore_TTexture_obj*)bbNullObjectTest((BBObject*)bbt_tex))->_openb3d_openb3dcore_ttexture_flags [0]);
					struct BBDebugStm __stmt_3 = {0xc98026d238c3ecac, 682, 0};
					bbOnDebugEnterStm(&__stmt_3);
					((struct openb3d_ddsloader_TDDS_obj*)bbNullObjectTest((BBObject*)bbt_dds))->clas->m_UploadTextureSubImage2D_iiiipbiii((struct openb3d_ddsloader_TDDS_obj*)bbt_dds,(bbt_x*bbt_width),(bbt_y*bbt_height),bbt_width,bbt_height,((struct brl_pixmap_TPixmap_obj*)bbNullObjectTest((BBObject*)bbt_animmap))->_brl_pixmap_tpixmap_pixels ,((unsigned int)(((struct openb3d_openb3dcore_TTexture_obj*)bbNullObjectTest((BBObject*)bbt_tex))->_openb3d_openb3dcore_ttexture_flags [0])&(unsigned int)(8)),3553,0);
					bbOnDebugLeaveScope();
				}else{
					struct BBDebugScope __scope = {
						BBDEBUGSCOPE_LOCALBLOCK,
						0,
						{
							{
								BBDEBUGDECL_END
							}
						}
					};
					bbOnDebugEnterScope((BBDebugScope *)&__scope);
					struct BBDebugStm __stmt_0 = {0xc98026d238c3ecac, 684, 0};
					bbOnDebugEnterStm(&__stmt_0);
					CopyRect_(((struct brl_pixmap_TPixmap_obj*)bbNullObjectTest((BBObject*)((struct openb3d_openb3dcore_TTexture_obj*)bbNullObjectTest((BBObject*)bbt_tex))->_openb3d_openb3dcore_ttexture_pixmap ))->_brl_pixmap_tpixmap_pixels ,((struct brl_pixmap_TPixmap_obj*)bbNullObjectTest((BBObject*)((struct openb3d_openb3dcore_TTexture_obj*)bbNullObjectTest((BBObject*)bbt_tex))->_openb3d_openb3dcore_ttexture_pixmap ))->_brl_pixmap_tpixmap_width ,((struct brl_pixmap_TPixmap_obj*)bbNullObjectTest((BBObject*)((struct openb3d_openb3dcore_TTexture_obj*)bbNullObjectTest((BBObject*)bbt_tex))->_openb3d_openb3dcore_ttexture_pixmap ))->_brl_pixmap_tpixmap_height ,(bbt_x*bbt_width),(bbt_y*bbt_height),((struct brl_pixmap_TPixmap_obj*)bbNullObjectTest((BBObject*)bbt_animmap))->_brl_pixmap_tpixmap_pixels ,bbt_width,bbt_height,4,0);
					struct BBDebugStm __stmt_1 = {0xc98026d238c3ecac, 686, 0};
					bbOnDebugEnterStm(&__stmt_1);
					glGenTextures((GLsizei)1,(GLuint*)(&bbt_name));
					struct BBDebugStm __stmt_2 = {0xc98026d238c3ecac, 687, 0};
					bbOnDebugEnterStm(&__stmt_2);
					glBindTexture((GLenum)3553,(GLuint)bbt_name);
					struct BBDebugStm __stmt_3 = {0xc98026d238c3ecac, 689, 0};
					bbOnDebugEnterStm(&__stmt_3);
					gluBuild2DMipmaps((GLenum)3553,(GLint)6408,(GLsizei)bbt_width,(GLsizei)bbt_height,(GLenum)6408,(GLenum)5121,(const void*)((struct brl_pixmap_TPixmap_obj*)bbNullObjectTest((BBObject*)bbt_animmap))->_brl_pixmap_tpixmap_pixels );
					bbOnDebugLeaveScope();
				}
				struct BBDebugStm __stmt_1 = {0xc98026d238c3ecac, 692, 0};
				bbOnDebugEnterStm(&__stmt_1);
				bbt_x=(bbt_x+1);
				struct BBDebugStm __stmt_2 = {0xc98026d238c3ecac, 693, 0};
				bbOnDebugEnterStm(&__stmt_2);
				if(bbt_x>=bbt_xframes){
					struct BBDebugScope __scope = {
						BBDEBUGSCOPE_LOCALBLOCK,
						0,
						{
							{
								BBDEBUGDECL_END
							}
						}
					};
					bbOnDebugEnterScope((BBDebugScope *)&__scope);
					struct BBDebugStm __stmt_0 = {0xc98026d238c3ecac, 694, 0};
					bbOnDebugEnterStm(&__stmt_0);
					bbt_x=0;
					struct BBDebugStm __stmt_1 = {0xc98026d238c3ecac, 695, 0};
					bbOnDebugEnterStm(&__stmt_1);
					bbt_y=(bbt_y+1);
					bbOnDebugLeaveScope();
				}
				struct BBDebugStm __stmt_3 = {0xc98026d238c3ecac, 698, 0};
				bbOnDebugEnterStm(&__stmt_3);
				((struct openb3d_openb3dcore_TTexture_obj*)bbNullObjectTest((BBObject*)bbt_tex))->_openb3d_openb3dcore_ttexture_frames [bbt_i]=bbt_name;
				bbOnDebugLeaveScope();
			}
		}
		struct BBDebugStm __stmt_12 = {0xc98026d238c3ecac, 701, 0};
		bbOnDebugEnterStm(&__stmt_12);
		((struct openb3d_openb3dcore_TTexture_obj*)bbNullObjectTest((BBObject*)bbt_tex))->_openb3d_openb3dcore_ttexture_texture [0]=((struct openb3d_openb3dcore_TTexture_obj*)bbNullObjectTest((BBObject*)bbt_tex))->_openb3d_openb3dcore_ttexture_frames [0];
		struct BBDebugStm __stmt_13 = {0xc98026d238c3ecac, 702, 0};
		bbOnDebugEnterStm(&__stmt_13);
		((struct openb3d_openb3dcore_TTexture_obj*)bbNullObjectTest((BBObject*)bbt_tex))->_openb3d_openb3dcore_ttexture_width [0]=bbt_width;
		struct BBDebugStm __stmt_14 = {0xc98026d238c3ecac, 703, 0};
		bbOnDebugEnterStm(&__stmt_14);
		((struct openb3d_openb3dcore_TTexture_obj*)bbNullObjectTest((BBObject*)bbt_tex))->_openb3d_openb3dcore_ttexture_height [0]=bbt_height;
		bbOnDebugLeaveScope();
	}else{
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0xc98026d238c3ecac, 709, 0};
		bbOnDebugEnterStm(&__stmt_0);
		if(bbt_dds_ext!=0){
			struct BBDebugScope __scope = {
				BBDEBUGSCOPE_LOCALBLOCK,
				0,
				{
					{
						BBDEBUGDECL_END
					}
				}
			};
			bbOnDebugEnterScope((BBDebugScope *)&__scope);
			struct BBDebugStm __stmt_0 = {0xc98026d238c3ecac, 710, 0};
			bbOnDebugEnterStm(&__stmt_0);
			glGenTextures((GLsizei)1,(GLuint*)(&bbt_name));
			struct BBDebugStm __stmt_1 = {0xc98026d238c3ecac, 711, 0};
			bbOnDebugEnterStm(&__stmt_1);
			glBindTexture((GLenum)3553,(GLuint)bbt_name);
			struct BBDebugStm __stmt_2 = {0xc98026d238c3ecac, 712, 0};
			bbOnDebugEnterStm(&__stmt_2);
			((struct openb3d_ddsloader_TDDS_obj*)bbNullObjectTest((BBObject*)bbt_dds))->clas->m_TextureParameters_i((struct openb3d_ddsloader_TDDS_obj*)bbt_dds,((struct openb3d_openb3dcore_TTexture_obj*)bbNullObjectTest((BBObject*)bbt_tex))->_openb3d_openb3dcore_ttexture_flags [0]);
			struct BBDebugStm __stmt_3 = {0xc98026d238c3ecac, 714, 0};
			bbOnDebugEnterStm(&__stmt_3);
			if(((struct openb3d_ddsloader_TDDS_obj*)bbNullObjectTest((BBObject*)bbt_dds))->_openb3d_ddsloader_tdds_target [0]==34067){
				struct BBDebugScope __scope = {
					BBDEBUGSCOPE_LOCALBLOCK,
					0,
					{
						{
							BBDEBUGDECL_END
						}
					}
				};
				bbOnDebugEnterScope((BBDebugScope *)&__scope);
				struct BBDebugStm __stmt_0 = {0xc98026d238c3ecac, 715, 0};
				bbOnDebugEnterStm(&__stmt_0);
				((struct openb3d_ddsloader_TDDS_obj*)bbNullObjectTest((BBObject*)bbt_dds))->clas->m_UploadTextureCubeMap((struct openb3d_ddsloader_TDDS_obj*)bbt_dds);
				struct BBDebugStm __stmt_1 = {0xc98026d238c3ecac, 716, 0};
				bbOnDebugEnterStm(&__stmt_1);
				((struct openb3d_openb3dcore_TTexture_obj*)bbNullObjectTest((BBObject*)bbt_tex))->_openb3d_openb3dcore_ttexture_flags [0]=((unsigned int)(((struct openb3d_openb3dcore_TTexture_obj*)bbNullObjectTest((BBObject*)bbt_tex))->_openb3d_openb3dcore_ttexture_flags [0])|(unsigned int)(128));
				bbOnDebugLeaveScope();
			}else{
				struct BBDebugScope __scope = {
					BBDEBUGSCOPE_LOCALBLOCK,
					0,
					{
						{
							BBDEBUGDECL_END
						}
					}
				};
				bbOnDebugEnterScope((BBDebugScope *)&__scope);
				struct BBDebugStm __stmt_0 = {0xc98026d238c3ecac, 718, 0};
				bbOnDebugEnterStm(&__stmt_0);
				((struct openb3d_ddsloader_TDDS_obj*)bbNullObjectTest((BBObject*)bbt_dds))->clas->m_UploadTexture2D_i((struct openb3d_ddsloader_TDDS_obj*)bbt_dds,((unsigned int)(((struct openb3d_openb3dcore_TTexture_obj*)bbNullObjectTest((BBObject*)bbt_tex))->_openb3d_openb3dcore_ttexture_flags [0])&(unsigned int)(8)));
				bbOnDebugLeaveScope();
			}
			bbOnDebugLeaveScope();
		}else{
			struct BBDebugScope __scope = {
				BBDEBUGSCOPE_LOCALBLOCK,
				0,
				{
					{
						BBDEBUGDECL_END
					}
				}
			};
			bbOnDebugEnterScope((BBDebugScope *)&__scope);
			struct BBDebugStm __stmt_0 = {0xc98026d238c3ecac, 721, 0};
			bbOnDebugEnterStm(&__stmt_0);
			glGenTextures((GLsizei)1,(GLuint*)(&bbt_name));
			struct BBDebugStm __stmt_1 = {0xc98026d238c3ecac, 722, 0};
			bbOnDebugEnterStm(&__stmt_1);
			glBindTexture((GLenum)3553,(GLuint)bbt_name);
			struct BBDebugStm __stmt_2 = {0xc98026d238c3ecac, 724, 0};
			bbOnDebugEnterStm(&__stmt_2);
			gluBuild2DMipmaps((GLenum)3553,(GLint)6408,(GLsizei)((struct brl_pixmap_TPixmap_obj*)bbNullObjectTest((BBObject*)((struct openb3d_openb3dcore_TTexture_obj*)bbNullObjectTest((BBObject*)bbt_tex))->_openb3d_openb3dcore_ttexture_pixmap ))->_brl_pixmap_tpixmap_width ,(GLsizei)((struct brl_pixmap_TPixmap_obj*)bbNullObjectTest((BBObject*)((struct openb3d_openb3dcore_TTexture_obj*)bbNullObjectTest((BBObject*)bbt_tex))->_openb3d_openb3dcore_ttexture_pixmap ))->_brl_pixmap_tpixmap_height ,(GLenum)6408,(GLenum)5121,(const void*)((struct brl_pixmap_TPixmap_obj*)bbNullObjectTest((BBObject*)((struct openb3d_openb3dcore_TTexture_obj*)bbNullObjectTest((BBObject*)bbt_tex))->_openb3d_openb3dcore_ttexture_pixmap ))->_brl_pixmap_tpixmap_pixels );
			bbOnDebugLeaveScope();
		}
		struct BBDebugStm __stmt_1 = {0xc98026d238c3ecac, 727, 0};
		bbOnDebugEnterStm(&__stmt_1);
		((struct openb3d_openb3dcore_TTexture_obj*)bbNullObjectTest((BBObject*)bbt_tex))->_openb3d_openb3dcore_ttexture_texture [0]=bbt_name;
		struct BBDebugStm __stmt_2 = {0xc98026d238c3ecac, 728, 0};
		bbOnDebugEnterStm(&__stmt_2);
		((struct openb3d_openb3dcore_TTexture_obj*)bbNullObjectTest((BBObject*)bbt_tex))->_openb3d_openb3dcore_ttexture_gltex =((struct openb3d_openb3dcore_TTexture_obj*)bbNullObjectTest((BBObject*)bbt_tex))->_openb3d_openb3dcore_ttexture_texture ;
		struct BBDebugStm __stmt_3 = {0xc98026d238c3ecac, 729, 0};
		bbOnDebugEnterStm(&__stmt_3);
		((struct openb3d_openb3dcore_TTexture_obj*)bbNullObjectTest((BBObject*)bbt_tex))->_openb3d_openb3dcore_ttexture_width [0]=((struct brl_pixmap_TPixmap_obj*)bbNullObjectTest((BBObject*)((struct openb3d_openb3dcore_TTexture_obj*)bbNullObjectTest((BBObject*)bbt_tex))->_openb3d_openb3dcore_ttexture_pixmap ))->_brl_pixmap_tpixmap_width ;
		struct BBDebugStm __stmt_4 = {0xc98026d238c3ecac, 730, 0};
		bbOnDebugEnterStm(&__stmt_4);
		((struct openb3d_openb3dcore_TTexture_obj*)bbNullObjectTest((BBObject*)bbt_tex))->_openb3d_openb3dcore_ttexture_height [0]=((struct brl_pixmap_TPixmap_obj*)bbNullObjectTest((BBObject*)((struct openb3d_openb3dcore_TTexture_obj*)bbNullObjectTest((BBObject*)bbt_tex))->_openb3d_openb3dcore_ttexture_pixmap ))->_brl_pixmap_tpixmap_height ;
		bbOnDebugLeaveScope();
	}
	struct BBDebugStm __stmt_20 = {0xc98026d238c3ecac, 734, 0};
	bbOnDebugEnterStm(&__stmt_20);
	if(bbt_dds_ext!=0){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0xc98026d238c3ecac, 735, 0};
		bbOnDebugEnterStm(&__stmt_0);
		((struct openb3d_openb3dcore_TTexture_obj*)bbNullObjectTest((BBObject*)bbt_tex))->_openb3d_openb3dcore_ttexture_format [0]=((struct openb3d_ddsloader_TDDS_obj*)bbNullObjectTest((BBObject*)bbt_dds))->_openb3d_ddsloader_tdds_format [0];
		struct BBDebugStm __stmt_1 = {0xc98026d238c3ecac, 736, 0};
		bbOnDebugEnterStm(&__stmt_1);
		((struct openb3d_ddsloader_TDDS_obj*)bbNullObjectTest((BBObject*)bbt_dds))->clas->m_FreeDDS((struct openb3d_ddsloader_TDDS_obj*)bbt_dds);
		bbOnDebugLeaveScope();
	}
	struct BBDebugStm __stmt_21 = {0xc98026d238c3ecac, 739, 0};
	bbOnDebugEnterStm(&__stmt_21);
	((BBINT*)BBARRAYDATAINDEX((((struct openb3d_openb3dcore_TTexture_obj*)bbNullObjectTest((BBObject*)bbt_tex))->_openb3d_openb3dcore_ttexture_no_mipmaps ),(((struct openb3d_openb3dcore_TTexture_obj*)bbNullObjectTest((BBObject*)bbt_tex))->_openb3d_openb3dcore_ttexture_no_mipmaps )->dims,0U))[0U]=((struct openb3d_openb3dcore_TTexture_obj*)bbNullObjectTest((BBObject*)bbt_tex))->clas->m_CountMipmaps((struct openb3d_openb3dcore_TTexture_obj*)bbt_tex);
	struct BBDebugStm __stmt_22 = {0xc98026d238c3ecac, 741, 0};
	bbOnDebugEnterStm(&__stmt_22);
	bbOnDebugLeaveScope();
	return (struct openb3d_openb3dcore_TTexture_obj*)bbt_tex;
}
struct openb3d_openb3dcore_TTexture_obj* openb3d_openb3dcore_TTexture_LoadCubeMapTextureStream_TTTexture_TObjectiiiiiTTTexture(BBOBJECT bbt_url,BBINT bbt_flags,BBINT bbt_frame_width,BBINT bbt_frame_height,BBINT bbt_first_frame,BBINT bbt_frame_count,struct openb3d_openb3dcore_TTexture_obj* bbt_tex){
	BBSTRING bbt_file=(&bbEmptyString);
	struct openb3d_openb3dcore_TTexture_obj* bbt_old_tex=(struct openb3d_openb3dcore_TTexture_obj*)((struct openb3d_openb3dcore_TTexture_obj*)&bbNullObject);
	BBINT bbt_alpha_present=0;
	struct openb3d_ddsloader_TDDS_obj* bbt_dds=(struct openb3d_ddsloader_TDDS_obj*)((struct openb3d_ddsloader_TDDS_obj*)&bbNullObject);
	BBINT bbt_dds_ext=0;
	BBINT bbt_width=0;
	BBINT bbt_height=0;
	BBINT bbt_xframes=0;
	BBINT bbt_yframes=0;
	BBINT bbt_x=0;
	BBINT bbt_y=0;
	BBINT bbt_cubeid=0;
	struct brl_pixmap_TPixmap_obj* bbt_cubemap=(struct brl_pixmap_TPixmap_obj*)((struct brl_pixmap_TPixmap_obj*)&bbNullObject);
	BBINT bbt_name=0;
	struct BBDebugScope_21 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"LoadCubeMapTextureStream",
		{
			{
				BBDEBUGDECL_LOCAL,
				"url",
				":Object",
				.var_address=&bbt_url
			},
			{
				BBDEBUGDECL_LOCAL,
				"flags",
				"i",
				.var_address=&bbt_flags
			},
			{
				BBDEBUGDECL_LOCAL,
				"frame_width",
				"i",
				.var_address=&bbt_frame_width
			},
			{
				BBDEBUGDECL_LOCAL,
				"frame_height",
				"i",
				.var_address=&bbt_frame_height
			},
			{
				BBDEBUGDECL_LOCAL,
				"first_frame",
				"i",
				.var_address=&bbt_first_frame
			},
			{
				BBDEBUGDECL_LOCAL,
				"frame_count",
				"i",
				.var_address=&bbt_frame_count
			},
			{
				BBDEBUGDECL_LOCAL,
				"tex",
				":TTexture",
				.var_address=&bbt_tex
			},
			{
				BBDEBUGDECL_LOCAL,
				"file",
				"$",
				.var_address=&bbt_file
			},
			{
				BBDEBUGDECL_LOCAL,
				"old_tex",
				":TTexture",
				.var_address=&bbt_old_tex
			},
			{
				BBDEBUGDECL_LOCAL,
				"alpha_present",
				"i",
				.var_address=&bbt_alpha_present
			},
			{
				BBDEBUGDECL_LOCAL,
				"dds",
				":TDDS",
				.var_address=&bbt_dds
			},
			{
				BBDEBUGDECL_LOCAL,
				"dds_ext",
				"i",
				.var_address=&bbt_dds_ext
			},
			{
				BBDEBUGDECL_LOCAL,
				"width",
				"i",
				.var_address=&bbt_width
			},
			{
				BBDEBUGDECL_LOCAL,
				"height",
				"i",
				.var_address=&bbt_height
			},
			{
				BBDEBUGDECL_LOCAL,
				"xframes",
				"i",
				.var_address=&bbt_xframes
			},
			{
				BBDEBUGDECL_LOCAL,
				"yframes",
				"i",
				.var_address=&bbt_yframes
			},
			{
				BBDEBUGDECL_LOCAL,
				"x",
				"i",
				.var_address=&bbt_x
			},
			{
				BBDEBUGDECL_LOCAL,
				"y",
				"i",
				.var_address=&bbt_y
			},
			{
				BBDEBUGDECL_LOCAL,
				"cubeid",
				"i",
				.var_address=&bbt_cubeid
			},
			{
				BBDEBUGDECL_LOCAL,
				"cubemap",
				":TPixmap",
				.var_address=&bbt_cubemap
			},
			{
				BBDEBUGDECL_LOCAL,
				"name",
				"i",
				.var_address=&bbt_name
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0xc98026d238c3ecac, 747, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbt_file=((BBString *)bbObjectStringcast((BBOBJECT)bbt_url));
	struct BBDebugStm __stmt_1 = {0xc98026d238c3ecac, 748, 0};
	bbOnDebugEnterStm(&__stmt_1);
	if(openb3d_openb3dcore_TTexture_FileFind_i_vS(&bbt_file)==0){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0xc98026d238c3ecac, 748, 0};
		bbOnDebugEnterStm(&__stmt_0);
		bbOnDebugLeaveScope();
		bbOnDebugLeaveScope();
		return (struct openb3d_openb3dcore_TTexture_obj*)&bbNullObject;
	}
	struct BBDebugStm __stmt_2 = {0xc98026d238c3ecac, 750, 0};
	bbOnDebugEnterStm(&__stmt_2);
	if(((BBOBJECT)bbt_tex)==&bbNullObject){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0xc98026d238c3ecac, 750, 0};
		bbOnDebugEnterStm(&__stmt_0);
		bbt_tex=(struct openb3d_openb3dcore_TTexture_obj*)openb3d_openb3dcore_TTexture_Create_TTTexture();
		bbOnDebugLeaveScope();
	}
	struct BBDebugStm __stmt_3 = {0xc98026d238c3ecac, 751, 0};
	bbOnDebugEnterStm(&__stmt_3);
	((struct openb3d_openb3dcore_TTexture_obj*)bbNullObjectTest((BBObject*)bbt_tex))->clas->m_SetString_pbS((struct openb3d_openb3dcore_TTexture_obj*)bbt_tex,((struct openb3d_openb3dcore_TTexture_obj*)bbNullObjectTest((BBObject*)bbt_tex))->_openb3d_openb3dcore_ttexture_file ,bbt_file);
	struct BBDebugStm __stmt_4 = {0xc98026d238c3ecac, 752, 0};
	bbOnDebugEnterStm(&__stmt_4);
	((struct openb3d_openb3dcore_TTexture_obj*)bbNullObjectTest((BBObject*)bbt_tex))->clas->m_SetString_pbS((struct openb3d_openb3dcore_TTexture_obj*)bbt_tex,((struct openb3d_openb3dcore_TTexture_obj*)bbNullObjectTest((BBObject*)bbt_tex))->_openb3d_openb3dcore_ttexture_file_abs ,openb3d_openb3dcore_TTexture_FileAbs_S_S(bbt_file));
	struct BBDebugStm __stmt_5 = {0xc98026d238c3ecac, 755, 0};
	bbOnDebugEnterStm(&__stmt_5);
	((struct openb3d_openb3dcore_TTexture_obj*)bbNullObjectTest((BBObject*)bbt_tex))->_openb3d_openb3dcore_ttexture_flags [0]=bbt_flags;
	struct BBDebugStm __stmt_6 = {0xc98026d238c3ecac, 756, 0};
	bbOnDebugEnterStm(&__stmt_6);
	((struct openb3d_openb3dcore_TTexture_obj*)bbNullObjectTest((BBObject*)bbt_tex))->clas->m_FilterFlags((struct openb3d_openb3dcore_TTexture_obj*)bbt_tex);
	struct BBDebugStm __stmt_7 = {0xc98026d238c3ecac, 759, 0};
	bbOnDebugEnterStm(&__stmt_7);
	bbt_old_tex=(struct openb3d_openb3dcore_TTexture_obj*)((struct openb3d_openb3dcore_TTexture_obj*)bbNullObjectTest((BBObject*)bbt_tex))->clas->m_TexInList((struct openb3d_openb3dcore_TTexture_obj*)bbt_tex);
	struct BBDebugStm __stmt_8 = {0xc98026d238c3ecac, 760, 0};
	bbOnDebugEnterStm(&__stmt_8);
	if((((BBOBJECT)bbt_old_tex)!=&bbNullObject) && (openb3d_openb3dcore_TTexture_is_unique==0)){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0xc98026d238c3ecac, 761, 0};
		bbOnDebugEnterStm(&__stmt_0);
		((struct openb3d_openb3dcore_TTexture_obj*)bbNullObjectTest((BBObject*)bbt_old_tex))->clas->m_TextureListAdd_TTList((struct openb3d_openb3dcore_TTexture_obj*)bbt_old_tex,(struct brl_linkedlist_TList_obj*)openb3d_openb3dcore_TTexture_tex_list_all);
		struct BBDebugStm __stmt_1 = {0xc98026d238c3ecac, 762, 0};
		bbOnDebugEnterStm(&__stmt_1);
		((struct openb3d_openb3dcore_TTexture_obj*)bbNullObjectTest((BBObject*)bbt_tex))->_openb3d_openb3dcore_ttexture_exists =0;
		struct BBDebugStm __stmt_2 = {0xc98026d238c3ecac, 763, 0};
		bbOnDebugEnterStm(&__stmt_2);
		openb3d_openb3dcore_TTexture_FreeObject_i_pb(openb3d_openb3dcore_TTexture_GetInstance_pb_TTTexture((struct openb3d_openb3dcore_TTexture_obj*)bbt_tex));
		struct BBDebugStm __stmt_3 = {0xc98026d238c3ecac, 765, 0};
		bbOnDebugEnterStm(&__stmt_3);
		brl_blitz_DebugLog(bbStringConcat(((BBString*)&_s397),bbt_file));
		struct BBDebugStm __stmt_4 = {0xc98026d238c3ecac, 766, 0};
		bbOnDebugEnterStm(&__stmt_4);
		bbOnDebugLeaveScope();
		bbOnDebugLeaveScope();
		return (struct openb3d_openb3dcore_TTexture_obj*)bbt_old_tex;
	}else{
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0xc98026d238c3ecac, 767, 0};
		bbOnDebugEnterStm(&__stmt_0);
		if(((struct openb3d_openb3dcore_TTexture_obj*)bbt_old_tex)!=bbt_tex){
			struct BBDebugScope __scope = {
				BBDEBUGSCOPE_LOCALBLOCK,
				0,
				{
					{
						BBDEBUGDECL_END
					}
				}
			};
			bbOnDebugEnterScope((BBDebugScope *)&__scope);
			struct BBDebugStm __stmt_0 = {0xc98026d238c3ecac, 768, 0};
			bbOnDebugEnterStm(&__stmt_0);
			((struct openb3d_openb3dcore_TTexture_obj*)bbNullObjectTest((BBObject*)bbt_tex))->clas->m_TextureListAdd_TTList((struct openb3d_openb3dcore_TTexture_obj*)bbt_tex,(struct brl_linkedlist_TList_obj*)openb3d_openb3dcore_TTexture_tex_list);
			struct BBDebugStm __stmt_1 = {0xc98026d238c3ecac, 769, 0};
			bbOnDebugEnterStm(&__stmt_1);
			((struct openb3d_openb3dcore_TTexture_obj*)bbNullObjectTest((BBObject*)bbt_tex))->clas->m_TextureListAdd_TTList((struct openb3d_openb3dcore_TTexture_obj*)bbt_tex,(struct brl_linkedlist_TList_obj*)openb3d_openb3dcore_TTexture_tex_list_all);
			bbOnDebugLeaveScope();
		}
		bbOnDebugLeaveScope();
	}
	struct BBDebugStm __stmt_9 = {0xc98026d238c3ecac, 772, 0};
	bbOnDebugEnterStm(&__stmt_9);
	((struct openb3d_openb3dcore_TTexture_obj*)bbNullObjectTest((BBObject*)bbt_tex))->_openb3d_openb3dcore_ttexture_pixmap =(struct brl_pixmap_TPixmap_obj*)brl_pixmap_LoadPixmap((BBOBJECT)bbt_url);
	struct BBDebugStm __stmt_10 = {0xc98026d238c3ecac, 773, 0};
	bbOnDebugEnterStm(&__stmt_10);
	if(((BBOBJECT)((struct openb3d_openb3dcore_TTexture_obj*)bbNullObjectTest((BBObject*)bbt_tex))->_openb3d_openb3dcore_ttexture_pixmap )==&bbNullObject){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0xc98026d238c3ecac, 774, 0};
		bbOnDebugEnterStm(&__stmt_0);
		brl_blitz_DebugLog(bbStringConcat(((BBString*)&_s398),bbt_file));
		struct BBDebugStm __stmt_1 = {0xc98026d238c3ecac, 775, 0};
		bbOnDebugEnterStm(&__stmt_1);
		bbOnDebugLeaveScope();
		bbOnDebugLeaveScope();
		return (struct openb3d_openb3dcore_TTexture_obj*)bbt_tex;
	}
	struct BBDebugStm __stmt_11 = {0xc98026d238c3ecac, 779, 0};
	bbOnDebugEnterStm(&__stmt_11);
	bbt_alpha_present=0;
	struct BBDebugStm __stmt_12 = {0xc98026d238c3ecac, 780, 0};
	bbOnDebugEnterStm(&__stmt_12);
	if(((((struct brl_pixmap_TPixmap_obj*)bbNullObjectTest((BBObject*)((struct openb3d_openb3dcore_TTexture_obj*)bbNullObjectTest((BBObject*)bbt_tex))->_openb3d_openb3dcore_ttexture_pixmap ))->_brl_pixmap_tpixmap_format ==6) || (((struct brl_pixmap_TPixmap_obj*)bbNullObjectTest((BBObject*)((struct openb3d_openb3dcore_TTexture_obj*)bbNullObjectTest((BBObject*)bbt_tex))->_openb3d_openb3dcore_ttexture_pixmap ))->_brl_pixmap_tpixmap_format ==5)) || (((struct brl_pixmap_TPixmap_obj*)bbNullObjectTest((BBObject*)((struct openb3d_openb3dcore_TTexture_obj*)bbNullObjectTest((BBObject*)bbt_tex))->_openb3d_openb3dcore_ttexture_pixmap ))->_brl_pixmap_tpixmap_format ==2)){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0xc98026d238c3ecac, 780, 0};
		bbOnDebugEnterStm(&__stmt_0);
		bbt_alpha_present=1;
		bbOnDebugLeaveScope();
	}
	struct BBDebugStm __stmt_13 = {0xc98026d238c3ecac, 781, 0};
	bbOnDebugEnterStm(&__stmt_13);
	if(((struct brl_pixmap_TPixmap_obj*)bbNullObjectTest((BBObject*)((struct openb3d_openb3dcore_TTexture_obj*)bbNullObjectTest((BBObject*)bbt_tex))->_openb3d_openb3dcore_ttexture_pixmap ))->_brl_pixmap_tpixmap_format !=6){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0xc98026d238c3ecac, 781, 0};
		bbOnDebugEnterStm(&__stmt_0);
		struct brl_pixmap_TPixmap_obj* bbt_;
		((struct openb3d_openb3dcore_TTexture_obj*)bbNullObjectTest((BBObject*)bbt_tex))->_openb3d_openb3dcore_ttexture_pixmap =(struct brl_pixmap_TPixmap_obj*)(((struct brl_pixmap_TPixmap_obj*)((struct brl_pixmap_TPixmap_obj*)bbNullObjectTest((BBObject*)(bbt_ = ((struct openb3d_openb3dcore_TTexture_obj*)bbNullObjectTest((BBObject*)bbt_tex))->_openb3d_openb3dcore_ttexture_pixmap ))))->clas)->m_Convert_i((struct brl_pixmap_TPixmap_obj*)bbt_,6);
		bbOnDebugLeaveScope();
	}
	struct BBDebugStm __stmt_14 = {0xc98026d238c3ecac, 783, 0};
	bbOnDebugEnterStm(&__stmt_14);
	bbt_dds=(struct openb3d_ddsloader_TDDS_obj*)((struct openb3d_ddsloader_TDDS_obj*)&bbNullObject);
	struct BBDebugStm __stmt_15 = {0xc98026d238c3ecac, 783, 0};
	bbOnDebugEnterStm(&__stmt_15);
	bbt_dds_ext=0;
	struct BBDebugStm __stmt_16 = {0xc98026d238c3ecac, 784, 0};
	bbOnDebugEnterStm(&__stmt_16);
	if(bbStringEquals(brl_filesystem_ExtractExt(bbStringToLower((BBSTRING)bbt_file)), ((BBString*)&_s399))==1){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0xc98026d238c3ecac, 785, 0};
		bbOnDebugEnterStm(&__stmt_0);
		bbt_dds=(struct openb3d_ddsloader_TDDS_obj*)((struct openb3d_ddsloader_TDDS_obj*)bbObjectDowncast((BBOBJECT)((struct brl_linkedlist_TList_obj*)bbNullObjectTest((BBObject*)openb3d_ddsloader_TDDS_dds_list))->clas->m_Last((struct brl_linkedlist_TList_obj*)openb3d_ddsloader_TDDS_dds_list),(BBClass*)&openb3d_ddsloader_TDDS));
		struct BBDebugStm __stmt_1 = {0xc98026d238c3ecac, 786, 0};
		bbOnDebugEnterStm(&__stmt_1);
		bbt_dds_ext=1;
		struct BBDebugStm __stmt_2 = {0xc98026d238c3ecac, 788, 0};
		bbOnDebugEnterStm(&__stmt_2);
		if(!(((struct openb3d_ddsloader_TDDS_obj*)bbNullObjectTest((BBObject*)bbt_dds))->clas->m_IsCompressed((struct openb3d_ddsloader_TDDS_obj*)bbt_dds)!=0)){
			struct BBDebugScope __scope = {
				BBDEBUGSCOPE_LOCALBLOCK,
				0,
				{
					{
						BBDEBUGDECL_END
					}
				}
			};
			bbOnDebugEnterScope((BBDebugScope *)&__scope);
			struct BBDebugStm __stmt_0 = {0xc98026d238c3ecac, 789, 0};
			bbOnDebugEnterStm(&__stmt_0);
			if((((unsigned int)(bbt_flags)&(unsigned int)(2))!=0) && (bbt_alpha_present==0)){
				struct BBDebugScope __scope = {
					BBDEBUGSCOPE_LOCALBLOCK,
					0,
					{
						{
							BBDEBUGDECL_END
						}
					}
				};
				bbOnDebugEnterScope((BBDebugScope *)&__scope);
				struct BBDebugStm __stmt_0 = {0xc98026d238c3ecac, 789, 0};
				bbOnDebugEnterStm(&__stmt_0);
				((struct openb3d_openb3dcore_TTexture_obj*)bbNullObjectTest((BBObject*)bbt_tex))->_openb3d_openb3dcore_ttexture_pixmap =(struct brl_pixmap_TPixmap_obj*)openb3d_openb3dcore_TTexture_ApplyAlpha_TTPixmap_vTTPixmapf((struct brl_pixmap_TPixmap_obj*)&((struct openb3d_openb3dcore_TTexture_obj*)bbNullObjectTest((BBObject*)bbt_tex))->_openb3d_openb3dcore_ttexture_pixmap ,((struct openb3d_openb3dcore_TTexture_obj*)bbNullObjectTest((BBObject*)bbt_tex))->_openb3d_openb3dcore_ttexture_discard );
				bbOnDebugLeaveScope();
			}
			struct BBDebugStm __stmt_1 = {0xc98026d238c3ecac, 791, 0};
			bbOnDebugEnterStm(&__stmt_1);
			if(((unsigned int)(bbt_flags)&(unsigned int)(4))!=0){
				struct BBDebugScope __scope = {
					BBDEBUGSCOPE_LOCALBLOCK,
					0,
					{
						{
							BBDEBUGDECL_END
						}
					}
				};
				bbOnDebugEnterScope((BBDebugScope *)&__scope);
				struct BBDebugStm __stmt_0 = {0xc98026d238c3ecac, 791, 0};
				bbOnDebugEnterStm(&__stmt_0);
				((struct openb3d_openb3dcore_TTexture_obj*)bbNullObjectTest((BBObject*)bbt_tex))->_openb3d_openb3dcore_ttexture_pixmap =(struct brl_pixmap_TPixmap_obj*)openb3d_openb3dcore_TTexture_ApplyMask_TTPixmap_vTTPixmapiii((struct brl_pixmap_TPixmap_obj*)&((struct openb3d_openb3dcore_TTexture_obj*)bbNullObjectTest((BBObject*)bbt_tex))->_openb3d_openb3dcore_ttexture_pixmap ,0,0,0);
				bbOnDebugLeaveScope();
			}
			bbOnDebugLeaveScope();
		}
		bbOnDebugLeaveScope();
	}else{
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0xc98026d238c3ecac, 798, 0};
		bbOnDebugEnterStm(&__stmt_0);
		if((((unsigned int)(bbt_flags)&(unsigned int)(2))!=0) && (bbt_alpha_present==0)){
			struct BBDebugScope __scope = {
				BBDEBUGSCOPE_LOCALBLOCK,
				0,
				{
					{
						BBDEBUGDECL_END
					}
				}
			};
			bbOnDebugEnterScope((BBDebugScope *)&__scope);
			struct BBDebugStm __stmt_0 = {0xc98026d238c3ecac, 798, 0};
			bbOnDebugEnterStm(&__stmt_0);
			((struct openb3d_openb3dcore_TTexture_obj*)bbNullObjectTest((BBObject*)bbt_tex))->_openb3d_openb3dcore_ttexture_pixmap =(struct brl_pixmap_TPixmap_obj*)openb3d_openb3dcore_TTexture_ApplyAlpha_TTPixmap_vTTPixmapf((struct brl_pixmap_TPixmap_obj*)&((struct openb3d_openb3dcore_TTexture_obj*)bbNullObjectTest((BBObject*)bbt_tex))->_openb3d_openb3dcore_ttexture_pixmap ,((struct openb3d_openb3dcore_TTexture_obj*)bbNullObjectTest((BBObject*)bbt_tex))->_openb3d_openb3dcore_ttexture_discard );
			bbOnDebugLeaveScope();
		}
		struct BBDebugStm __stmt_1 = {0xc98026d238c3ecac, 801, 0};
		bbOnDebugEnterStm(&__stmt_1);
		if(((unsigned int)(bbt_flags)&(unsigned int)(4))!=0){
			struct BBDebugScope __scope = {
				BBDEBUGSCOPE_LOCALBLOCK,
				0,
				{
					{
						BBDEBUGDECL_END
					}
				}
			};
			bbOnDebugEnterScope((BBDebugScope *)&__scope);
			struct BBDebugStm __stmt_0 = {0xc98026d238c3ecac, 801, 0};
			bbOnDebugEnterStm(&__stmt_0);
			((struct openb3d_openb3dcore_TTexture_obj*)bbNullObjectTest((BBObject*)bbt_tex))->_openb3d_openb3dcore_ttexture_pixmap =(struct brl_pixmap_TPixmap_obj*)openb3d_openb3dcore_TTexture_ApplyMask_TTPixmap_vTTPixmapiii((struct brl_pixmap_TPixmap_obj*)&((struct openb3d_openb3dcore_TTexture_obj*)bbNullObjectTest((BBObject*)bbt_tex))->_openb3d_openb3dcore_ttexture_pixmap ,0,0,0);
			bbOnDebugLeaveScope();
		}
		bbOnDebugLeaveScope();
	}
	struct BBDebugStm __stmt_17 = {0xc98026d238c3ecac, 804, 0};
	bbOnDebugEnterStm(&__stmt_17);
	bbt_width=bbt_frame_width;
	struct BBDebugStm __stmt_18 = {0xc98026d238c3ecac, 805, 0};
	bbOnDebugEnterStm(&__stmt_18);
	bbt_height=bbt_frame_height;
	struct BBDebugStm __stmt_19 = {0xc98026d238c3ecac, 806, 0};
	bbOnDebugEnterStm(&__stmt_19);
	bbt_xframes=(((struct brl_pixmap_TPixmap_obj*)bbNullObjectTest((BBObject*)((struct openb3d_openb3dcore_TTexture_obj*)bbNullObjectTest((BBObject*)bbt_tex))->_openb3d_openb3dcore_ttexture_pixmap ))->_brl_pixmap_tpixmap_width /bbt_width);
	struct BBDebugStm __stmt_20 = {0xc98026d238c3ecac, 807, 0};
	bbOnDebugEnterStm(&__stmt_20);
	bbt_yframes=(((struct brl_pixmap_TPixmap_obj*)bbNullObjectTest((BBObject*)((struct openb3d_openb3dcore_TTexture_obj*)bbNullObjectTest((BBObject*)bbt_tex))->_openb3d_openb3dcore_ttexture_pixmap ))->_brl_pixmap_tpixmap_height /bbt_height);
	struct BBDebugStm __stmt_21 = {0xc98026d238c3ecac, 808, 0};
	bbOnDebugEnterStm(&__stmt_21);
	bbt_x=0;
	struct BBDebugStm __stmt_22 = {0xc98026d238c3ecac, 808, 0};
	bbOnDebugEnterStm(&__stmt_22);
	bbt_y=0;
	struct BBDebugStm __stmt_23 = {0xc98026d238c3ecac, 808, 0};
	bbOnDebugEnterStm(&__stmt_23);
	bbt_cubeid=0;
	struct BBDebugStm __stmt_24 = {0xc98026d238c3ecac, 810, 0};
	bbOnDebugEnterStm(&__stmt_24);
	bbt_cubemap=(struct brl_pixmap_TPixmap_obj*)brl_pixmap_CreatePixmap(bbt_width,bbt_height,((struct brl_pixmap_TPixmap_obj*)bbNullObjectTest((BBObject*)((struct openb3d_openb3dcore_TTexture_obj*)bbNullObjectTest((BBObject*)bbt_tex))->_openb3d_openb3dcore_ttexture_pixmap ))->_brl_pixmap_tpixmap_format ,4);
	struct BBDebugStm __stmt_25 = {0xc98026d238c3ecac, 812, 0};
	bbOnDebugEnterStm(&__stmt_25);
	bbt_name=0;
	struct BBDebugStm __stmt_26 = {0xc98026d238c3ecac, 813, 0};
	bbOnDebugEnterStm(&__stmt_26);
	glGenTextures((GLsizei)1,(GLuint*)(&bbt_name));
	struct BBDebugStm __stmt_27 = {0xc98026d238c3ecac, 814, 0};
	bbOnDebugEnterStm(&__stmt_27);
	glBindTexture((GLenum)34067,(GLuint)bbt_name);
	struct BBDebugStm __stmt_28 = {0xc98026d238c3ecac, 816, 0};
	bbOnDebugEnterStm(&__stmt_28);
	{
		BBINT bbt_i=0;
		for(;(bbt_i<=5);bbt_i=(bbt_i+1)){
			struct BBDebugScope_1 __scope = {
				BBDEBUGSCOPE_LOCALBLOCK,
				0,
				{
					{
						BBDEBUGDECL_LOCAL,
						"i",
						"i",
						.var_address=&bbt_i
					},
					{
						BBDEBUGDECL_END
					}
				}
			};
			bbOnDebugEnterScope((BBDebugScope *)&__scope);
			struct BBDebugStm __stmt_0 = {0xc98026d238c3ecac, 817, 0};
			bbOnDebugEnterStm(&__stmt_0);
			bbt_cubeid=((BBINT*)BBARRAYDATAINDEX((openb3d_openb3dcore_TGlobal3D_Cubemap_Frame),(openb3d_openb3dcore_TGlobal3D_Cubemap_Frame)->dims,((BBUINT)bbt_i)))[((BBUINT)bbt_i)];
			struct BBDebugStm __stmt_1 = {0xc98026d238c3ecac, 818, 0};
			bbOnDebugEnterStm(&__stmt_1);
			bbt_x=(bbt_cubeid % bbt_xframes);
			struct BBDebugStm __stmt_2 = {0xc98026d238c3ecac, 819, 0};
			bbOnDebugEnterStm(&__stmt_2);
			bbt_y=((bbt_cubeid/bbt_xframes) % bbt_yframes);
			struct BBDebugStm __stmt_3 = {0xc98026d238c3ecac, 821, 0};
			bbOnDebugEnterStm(&__stmt_3);
			if(bbt_dds_ext!=0){
				struct BBDebugScope __scope = {
					BBDEBUGSCOPE_LOCALBLOCK,
					0,
					{
						{
							BBDEBUGDECL_END
						}
					}
				};
				bbOnDebugEnterScope((BBDebugScope *)&__scope);
				struct BBDebugStm __stmt_0 = {0xc98026d238c3ecac, 822, 0};
				bbOnDebugEnterStm(&__stmt_0);
				((struct openb3d_ddsloader_TDDS_obj*)bbNullObjectTest((BBObject*)bbt_dds))->clas->m_TextureParameters_i((struct openb3d_ddsloader_TDDS_obj*)bbt_dds,((struct openb3d_openb3dcore_TTexture_obj*)bbNullObjectTest((BBObject*)bbt_tex))->_openb3d_openb3dcore_ttexture_flags [0]);
				struct BBDebugStm __stmt_1 = {0xc98026d238c3ecac, 823, 0};
				bbOnDebugEnterStm(&__stmt_1);
				((struct openb3d_ddsloader_TDDS_obj*)bbNullObjectTest((BBObject*)bbt_dds))->clas->m_UploadTextureSubImage2D_iiiipbiii((struct openb3d_ddsloader_TDDS_obj*)bbt_dds,(bbt_x*bbt_width),(bbt_y*bbt_height),bbt_width,bbt_height,((struct brl_pixmap_TPixmap_obj*)bbNullObjectTest((BBObject*)bbt_cubemap))->_brl_pixmap_tpixmap_pixels ,((unsigned int)(((struct openb3d_openb3dcore_TTexture_obj*)bbNullObjectTest((BBObject*)bbt_tex))->_openb3d_openb3dcore_ttexture_flags [0])&(unsigned int)(8)),((BBINT*)BBARRAYDATAINDEX((openb3d_openb3dcore_TGlobal3D_Cubemap_Face),(openb3d_openb3dcore_TGlobal3D_Cubemap_Face)->dims,((BBUINT)bbt_i)))[((BBUINT)bbt_i)],openb3d_openb3dcore_TGlobal3D_Flip_Cubemap);
				bbOnDebugLeaveScope();
			}else{
				struct BBDebugScope __scope = {
					BBDEBUGSCOPE_LOCALBLOCK,
					0,
					{
						{
							BBDEBUGDECL_END
						}
					}
				};
				bbOnDebugEnterScope((BBDebugScope *)&__scope);
				struct BBDebugStm __stmt_0 = {0xc98026d238c3ecac, 825, 0};
				bbOnDebugEnterStm(&__stmt_0);
				CopyRect_(((struct brl_pixmap_TPixmap_obj*)bbNullObjectTest((BBObject*)((struct openb3d_openb3dcore_TTexture_obj*)bbNullObjectTest((BBObject*)bbt_tex))->_openb3d_openb3dcore_ttexture_pixmap ))->_brl_pixmap_tpixmap_pixels ,((struct brl_pixmap_TPixmap_obj*)bbNullObjectTest((BBObject*)((struct openb3d_openb3dcore_TTexture_obj*)bbNullObjectTest((BBObject*)bbt_tex))->_openb3d_openb3dcore_ttexture_pixmap ))->_brl_pixmap_tpixmap_width ,((struct brl_pixmap_TPixmap_obj*)bbNullObjectTest((BBObject*)((struct openb3d_openb3dcore_TTexture_obj*)bbNullObjectTest((BBObject*)bbt_tex))->_openb3d_openb3dcore_ttexture_pixmap ))->_brl_pixmap_tpixmap_height ,(bbt_x*bbt_width),(bbt_y*bbt_height),((struct brl_pixmap_TPixmap_obj*)bbNullObjectTest((BBObject*)bbt_cubemap))->_brl_pixmap_tpixmap_pixels ,bbt_width,bbt_height,4,openb3d_openb3dcore_TGlobal3D_Flip_Cubemap);
				struct BBDebugStm __stmt_1 = {0xc98026d238c3ecac, 827, 0};
				bbOnDebugEnterStm(&__stmt_1);
				gluBuild2DMipmaps((GLenum)((BBINT*)BBARRAYDATAINDEX((openb3d_openb3dcore_TGlobal3D_Cubemap_Face),(openb3d_openb3dcore_TGlobal3D_Cubemap_Face)->dims,((BBUINT)bbt_i)))[((BBUINT)bbt_i)],(GLint)6408,(GLsizei)bbt_width,(GLsizei)bbt_height,(GLenum)6408,(GLenum)5121,(const void*)((struct brl_pixmap_TPixmap_obj*)bbNullObjectTest((BBObject*)bbt_cubemap))->_brl_pixmap_tpixmap_pixels );
				bbOnDebugLeaveScope();
			}
			bbOnDebugLeaveScope();
		}
	}
	struct BBDebugStm __stmt_29 = {0xc98026d238c3ecac, 831, 0};
	bbOnDebugEnterStm(&__stmt_29);
	if(bbt_dds_ext!=0){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0xc98026d238c3ecac, 832, 0};
		bbOnDebugEnterStm(&__stmt_0);
		((struct openb3d_openb3dcore_TTexture_obj*)bbNullObjectTest((BBObject*)bbt_tex))->_openb3d_openb3dcore_ttexture_format [0]=((struct openb3d_ddsloader_TDDS_obj*)bbNullObjectTest((BBObject*)bbt_dds))->_openb3d_ddsloader_tdds_format [0];
		struct BBDebugStm __stmt_1 = {0xc98026d238c3ecac, 833, 0};
		bbOnDebugEnterStm(&__stmt_1);
		((struct openb3d_ddsloader_TDDS_obj*)bbNullObjectTest((BBObject*)bbt_dds))->clas->m_FreeDDS((struct openb3d_ddsloader_TDDS_obj*)bbt_dds);
		bbOnDebugLeaveScope();
	}
	struct BBDebugStm __stmt_30 = {0xc98026d238c3ecac, 836, 0};
	bbOnDebugEnterStm(&__stmt_30);
	((struct openb3d_openb3dcore_TTexture_obj*)bbNullObjectTest((BBObject*)bbt_tex))->_openb3d_openb3dcore_ttexture_texture [0]=bbt_name;
	struct BBDebugStm __stmt_31 = {0xc98026d238c3ecac, 837, 0};
	bbOnDebugEnterStm(&__stmt_31);
	((struct openb3d_openb3dcore_TTexture_obj*)bbNullObjectTest((BBObject*)bbt_tex))->_openb3d_openb3dcore_ttexture_gltex =((struct openb3d_openb3dcore_TTexture_obj*)bbNullObjectTest((BBObject*)bbt_tex))->_openb3d_openb3dcore_ttexture_texture ;
	struct BBDebugStm __stmt_32 = {0xc98026d238c3ecac, 838, 0};
	bbOnDebugEnterStm(&__stmt_32);
	((struct openb3d_openb3dcore_TTexture_obj*)bbNullObjectTest((BBObject*)bbt_tex))->_openb3d_openb3dcore_ttexture_no_frames [0]=1;
	struct BBDebugStm __stmt_33 = {0xc98026d238c3ecac, 839, 0};
	bbOnDebugEnterStm(&__stmt_33);
	((struct openb3d_openb3dcore_TTexture_obj*)bbNullObjectTest((BBObject*)bbt_tex))->_openb3d_openb3dcore_ttexture_width [0]=bbt_width;
	struct BBDebugStm __stmt_34 = {0xc98026d238c3ecac, 840, 0};
	bbOnDebugEnterStm(&__stmt_34);
	((struct openb3d_openb3dcore_TTexture_obj*)bbNullObjectTest((BBObject*)bbt_tex))->_openb3d_openb3dcore_ttexture_height [0]=bbt_height;
	struct BBDebugStm __stmt_35 = {0xc98026d238c3ecac, 841, 0};
	bbOnDebugEnterStm(&__stmt_35);
	((BBINT*)BBARRAYDATAINDEX((((struct openb3d_openb3dcore_TTexture_obj*)bbNullObjectTest((BBObject*)bbt_tex))->_openb3d_openb3dcore_ttexture_no_mipmaps ),(((struct openb3d_openb3dcore_TTexture_obj*)bbNullObjectTest((BBObject*)bbt_tex))->_openb3d_openb3dcore_ttexture_no_mipmaps )->dims,0U))[0U]=((struct openb3d_openb3dcore_TTexture_obj*)bbNullObjectTest((BBObject*)bbt_tex))->clas->m_CountMipmaps((struct openb3d_openb3dcore_TTexture_obj*)bbt_tex);
	struct BBDebugStm __stmt_36 = {0xc98026d238c3ecac, 843, 0};
	bbOnDebugEnterStm(&__stmt_36);
	bbOnDebugLeaveScope();
	return (struct openb3d_openb3dcore_TTexture_obj*)bbt_tex;
}
BBINT openb3d_openb3dcore_TTexture_FileFind_i_vS(BBSTRING* bbt_file){
	struct brl_stream_TStream_obj* bbt_stream=(struct brl_stream_TStream_obj*)((struct brl_stream_TStream_obj*)&bbNullObject);
	struct BBDebugScope_2 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"FileFind",
		{
			{
				BBDEBUGDECL_VARPARAM,
				"file",
				"$",
				.var_address=&bbt_file
			},
			{
				BBDEBUGDECL_LOCAL,
				"stream",
				":TStream",
				.var_address=&bbt_stream
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0xc98026d238c3ecac, 852, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbt_stream=(struct brl_stream_TStream_obj*)brl_filesystem_ReadFile((BBOBJECT)*bbt_file);
	struct BBDebugStm __stmt_1 = {0xc98026d238c3ecac, 853, 0};
	bbOnDebugEnterStm(&__stmt_1);
	if(!(((BBObject*)bbt_stream)!= &bbNullObject)){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0xc98026d238c3ecac, 856, 0};
		bbOnDebugEnterStm(&__stmt_0);
		do{
			struct BBDebugScope __scope = {
				BBDEBUGSCOPE_LOCALBLOCK,
				0,
				{
					{
						BBDEBUGDECL_END
					}
				}
			};
			bbOnDebugEnterScope((BBDebugScope *)&__scope);
			struct BBDebugStm __stmt_0 = {0xc98026d238c3ecac, 855, 0};
			bbOnDebugEnterStm(&__stmt_0);
			*bbt_file=brl_retro_Right(*bbt_file,((*bbt_file)->length-brl_retro_Instr(*bbt_file,((BBString*)&_s400),1)));
			bbOnDebugLeaveScope();
		}while(!(brl_retro_Instr(*bbt_file,((BBString*)&_s400),1)==0));
		struct BBDebugStm __stmt_1 = {0xc98026d238c3ecac, 860, 0};
		bbOnDebugEnterStm(&__stmt_1);
		do{
			struct BBDebugScope __scope = {
				BBDEBUGSCOPE_LOCALBLOCK,
				0,
				{
					{
						BBDEBUGDECL_END
					}
				}
			};
			bbOnDebugEnterScope((BBDebugScope *)&__scope);
			struct BBDebugStm __stmt_0 = {0xc98026d238c3ecac, 859, 0};
			bbOnDebugEnterStm(&__stmt_0);
			*bbt_file=brl_retro_Right(*bbt_file,((*bbt_file)->length-brl_retro_Instr(*bbt_file,((BBString*)&_s401),1)));
			bbOnDebugLeaveScope();
		}while(!(brl_retro_Instr(*bbt_file,((BBString*)&_s401),1)==0));
		struct BBDebugStm __stmt_2 = {0xc98026d238c3ecac, 862, 0};
		bbOnDebugEnterStm(&__stmt_2);
		bbt_stream=(struct brl_stream_TStream_obj*)brl_stream_OpenStream((BBOBJECT)*bbt_file,1,0);
		struct BBDebugStm __stmt_3 = {0xc98026d238c3ecac, 863, 0};
		bbOnDebugEnterStm(&__stmt_3);
		if(!(((BBObject*)bbt_stream)!= &bbNullObject)){
			struct BBDebugScope __scope = {
				BBDEBUGSCOPE_LOCALBLOCK,
				0,
				{
					{
						BBDEBUGDECL_END
					}
				}
			};
			bbOnDebugEnterScope((BBDebugScope *)&__scope);
			struct BBDebugStm __stmt_0 = {0xc98026d238c3ecac, 864, 0};
			bbOnDebugEnterStm(&__stmt_0);
			brl_blitz_DebugLog(bbStringConcat(((BBString*)&_s402),*bbt_file));
			struct BBDebugStm __stmt_1 = {0xc98026d238c3ecac, 865, 0};
			bbOnDebugEnterStm(&__stmt_1);
			bbOnDebugLeaveScope();
			bbOnDebugLeaveScope();
			bbOnDebugLeaveScope();
			return 0;
		}else{
			struct BBDebugScope __scope = {
				BBDEBUGSCOPE_LOCALBLOCK,
				0,
				{
					{
						BBDEBUGDECL_END
					}
				}
			};
			bbOnDebugEnterScope((BBDebugScope *)&__scope);
			struct BBDebugStm __stmt_0 = {0xc98026d238c3ecac, 867, 0};
			bbOnDebugEnterStm(&__stmt_0);
			brl_stream_CloseStream((struct brl_stream_TStream_obj*)bbt_stream);
			struct BBDebugStm __stmt_1 = {0xc98026d238c3ecac, 868, 0};
			bbOnDebugEnterStm(&__stmt_1);
			bbt_stream=(struct brl_stream_TStream_obj*)&bbNullObject;
			bbOnDebugLeaveScope();
		}
		bbOnDebugLeaveScope();
	}else{
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0xc98026d238c3ecac, 871, 0};
		bbOnDebugEnterStm(&__stmt_0);
		brl_stream_CloseStream((struct brl_stream_TStream_obj*)bbt_stream);
		struct BBDebugStm __stmt_1 = {0xc98026d238c3ecac, 872, 0};
		bbOnDebugEnterStm(&__stmt_1);
		bbt_stream=(struct brl_stream_TStream_obj*)&bbNullObject;
		bbOnDebugLeaveScope();
	}
	struct BBDebugStm __stmt_2 = {0xc98026d238c3ecac, 875, 0};
	bbOnDebugEnterStm(&__stmt_2);
	bbOnDebugLeaveScope();
	return 1;
}
BBSTRING openb3d_openb3dcore_TTexture_FileAbs_S_S(BBSTRING bbt_file){
	BBSTRING bbt_file_abs=(&bbEmptyString);
	struct BBDebugScope_2 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"FileAbs",
		{
			{
				BBDEBUGDECL_LOCAL,
				"file",
				"$",
				.var_address=&bbt_file
			},
			{
				BBDEBUGDECL_LOCAL,
				"file_abs",
				"$",
				.var_address=&bbt_file_abs
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0xc98026d238c3ecac, 882, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbt_file_abs=((BBString*)&bbEmptyString);
	struct BBDebugStm __stmt_1 = {0xc98026d238c3ecac, 884, 0};
	bbOnDebugEnterStm(&__stmt_1);
	if(brl_retro_Instr(bbt_file,((BBString*)&_s403),1)==0){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0xc98026d238c3ecac, 885, 0};
		bbOnDebugEnterStm(&__stmt_0);
		bbt_file_abs=bbStringConcat(bbStringConcat(brl_filesystem_CurrentDir(),((BBString*)&_s401)),bbt_file);
		bbOnDebugLeaveScope();
	}else{
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0xc98026d238c3ecac, 887, 0};
		bbOnDebugEnterStm(&__stmt_0);
		bbt_file_abs=bbt_file;
		bbOnDebugLeaveScope();
	}
	struct BBDebugStm __stmt_2 = {0xc98026d238c3ecac, 889, 0};
	bbOnDebugEnterStm(&__stmt_2);
	bbt_file_abs=brl_retro_Replace(bbt_file_abs,((BBString*)&_s400),((BBString*)&_s401));
	struct BBDebugStm __stmt_3 = {0xc98026d238c3ecac, 891, 0};
	bbOnDebugEnterStm(&__stmt_3);
	bbOnDebugLeaveScope();
	return bbt_file_abs;
}
struct brl_pixmap_TPixmap_obj* openb3d_openb3dcore_TTexture_AdjustPixmap_TTPixmap_TTPixmap(struct brl_pixmap_TPixmap_obj* bbt_pixmap){
	BBINT bbt_width=0;
	BBINT bbt_height=0;
	struct BBDebugScope_3 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"AdjustPixmap",
		{
			{
				BBDEBUGDECL_LOCAL,
				"pixmap",
				":TPixmap",
				.var_address=&bbt_pixmap
			},
			{
				BBDEBUGDECL_LOCAL,
				"width",
				"i",
				.var_address=&bbt_width
			},
			{
				BBDEBUGDECL_LOCAL,
				"height",
				"i",
				.var_address=&bbt_height
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0xc98026d238c3ecac, 899, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbt_width=openb3d_openb3dcore_TTexture_Pow2Size_i_i(((struct brl_pixmap_TPixmap_obj*)bbNullObjectTest((BBObject*)bbt_pixmap))->_brl_pixmap_tpixmap_width );
	struct BBDebugStm __stmt_1 = {0xc98026d238c3ecac, 900, 0};
	bbOnDebugEnterStm(&__stmt_1);
	bbt_height=openb3d_openb3dcore_TTexture_Pow2Size_i_i(((struct brl_pixmap_TPixmap_obj*)bbNullObjectTest((BBObject*)bbt_pixmap))->_brl_pixmap_tpixmap_height );
	struct BBDebugStm __stmt_2 = {0xc98026d238c3ecac, 917, 0};
	bbOnDebugEnterStm(&__stmt_2);
	if((bbt_width!=((struct brl_pixmap_TPixmap_obj*)bbNullObjectTest((BBObject*)bbt_pixmap))->_brl_pixmap_tpixmap_width ) || (bbt_height!=((struct brl_pixmap_TPixmap_obj*)bbNullObjectTest((BBObject*)bbt_pixmap))->_brl_pixmap_tpixmap_height )){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0xc98026d238c3ecac, 918, 0};
		bbOnDebugEnterStm(&__stmt_0);
		bbt_pixmap=(struct brl_pixmap_TPixmap_obj*)brl_pixmap_ResizePixmap((struct brl_pixmap_TPixmap_obj*)bbt_pixmap,bbt_width,bbt_height);
		bbOnDebugLeaveScope();
	}
	struct BBDebugStm __stmt_3 = {0xc98026d238c3ecac, 922, 0};
	bbOnDebugEnterStm(&__stmt_3);
	bbOnDebugLeaveScope();
	return (struct brl_pixmap_TPixmap_obj*)bbt_pixmap;
}
BBINT openb3d_openb3dcore_TTexture_CheckAlpha_i_TTPixmap(struct brl_pixmap_TPixmap_obj* bbt_map){
	BBINT bbt_rgba=0;
	BBINT bbt_alp=0;
	BBINT bbt_a0=0;
	BBINT bbt_a1=0;
	BBFLOAT bbt_sqrw=0;
	BBFLOAT bbt_sqrh=0;
	BBINT bbt_sizew=0;
	BBINT bbt_sizeh=0;
	struct BBDebugScope_9 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"CheckAlpha",
		{
			{
				BBDEBUGDECL_LOCAL,
				"map",
				":TPixmap",
				.var_address=&bbt_map
			},
			{
				BBDEBUGDECL_LOCAL,
				"rgba",
				"i",
				.var_address=&bbt_rgba
			},
			{
				BBDEBUGDECL_LOCAL,
				"alp",
				"i",
				.var_address=&bbt_alp
			},
			{
				BBDEBUGDECL_LOCAL,
				"a0",
				"i",
				.var_address=&bbt_a0
			},
			{
				BBDEBUGDECL_LOCAL,
				"a1",
				"i",
				.var_address=&bbt_a1
			},
			{
				BBDEBUGDECL_LOCAL,
				"sqrw",
				"f",
				.var_address=&bbt_sqrw
			},
			{
				BBDEBUGDECL_LOCAL,
				"sqrh",
				"f",
				.var_address=&bbt_sqrh
			},
			{
				BBDEBUGDECL_LOCAL,
				"sizew",
				"i",
				.var_address=&bbt_sizew
			},
			{
				BBDEBUGDECL_LOCAL,
				"sizeh",
				"i",
				.var_address=&bbt_sizeh
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0xc98026d238c3ecac, 929, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbt_rgba=0;
	struct BBDebugStm __stmt_1 = {0xc98026d238c3ecac, 929, 0};
	bbOnDebugEnterStm(&__stmt_1);
	bbt_alp=0;
	struct BBDebugStm __stmt_2 = {0xc98026d238c3ecac, 929, 0};
	bbOnDebugEnterStm(&__stmt_2);
	bbt_a0=0;
	struct BBDebugStm __stmt_3 = {0xc98026d238c3ecac, 929, 0};
	bbOnDebugEnterStm(&__stmt_3);
	bbt_a1=0;
	struct BBDebugStm __stmt_4 = {0xc98026d238c3ecac, 930, 0};
	bbOnDebugEnterStm(&__stmt_4);
	bbt_sqrw=((BBFLOAT)bbSqr((double)((BBDOUBLE)brl_pixmap_PixmapWidth((struct brl_pixmap_TPixmap_obj*)bbt_map))));
	struct BBDebugStm __stmt_5 = {0xc98026d238c3ecac, 931, 0};
	bbOnDebugEnterStm(&__stmt_5);
	bbt_sqrh=((BBFLOAT)bbSqr((double)((BBDOUBLE)brl_pixmap_PixmapHeight((struct brl_pixmap_TPixmap_obj*)bbt_map))));
	struct BBDebugStm __stmt_6 = {0xc98026d238c3ecac, 932, 0};
	bbOnDebugEnterStm(&__stmt_6);
	bbt_sizew=((BBINT)(((BBFLOAT)brl_pixmap_PixmapWidth((struct brl_pixmap_TPixmap_obj*)bbt_map))/bbt_sqrw));
	struct BBDebugStm __stmt_7 = {0xc98026d238c3ecac, 933, 0};
	bbOnDebugEnterStm(&__stmt_7);
	bbt_sizeh=((BBINT)(((BBFLOAT)brl_pixmap_PixmapHeight((struct brl_pixmap_TPixmap_obj*)bbt_map))/bbt_sqrh));
	struct BBDebugStm __stmt_8 = {0xc98026d238c3ecac, 935, 0};
	bbOnDebugEnterStm(&__stmt_8);
	{
		BBINT bbt_iy=0;
		BBINT bbt_=(bbt_sizeh-1);
		for(;(bbt_iy<=bbt_);bbt_iy=(bbt_iy+1)){
			struct BBDebugScope_1 __scope = {
				BBDEBUGSCOPE_LOCALBLOCK,
				0,
				{
					{
						BBDEBUGDECL_LOCAL,
						"iy",
						"i",
						.var_address=&bbt_iy
					},
					{
						BBDEBUGDECL_END
					}
				}
			};
			bbOnDebugEnterScope((BBDebugScope *)&__scope);
			struct BBDebugStm __stmt_0 = {0xc98026d238c3ecac, 936, 0};
			bbOnDebugEnterStm(&__stmt_0);
			{
				BBINT bbt_ix=0;
				BBINT bbt_2=(bbt_sizew-1);
				for(;(bbt_ix<=bbt_2);bbt_ix=(bbt_ix+1)){
					struct BBDebugScope_1 __scope = {
						BBDEBUGSCOPE_LOCALBLOCK,
						0,
						{
							{
								BBDEBUGDECL_LOCAL,
								"ix",
								"i",
								.var_address=&bbt_ix
							},
							{
								BBDEBUGDECL_END
							}
						}
					};
					bbOnDebugEnterScope((BBDebugScope *)&__scope);
					struct BBDebugStm __stmt_0 = {0xc98026d238c3ecac, 937, 0};
					bbOnDebugEnterStm(&__stmt_0);
					bbt_rgba=brl_pixmap_ReadPixel((struct brl_pixmap_TPixmap_obj*)bbt_map,(bbt_ix*bbt_sizew),(bbt_iy*bbt_sizeh));
					struct BBDebugStm __stmt_1 = {0xc98026d238c3ecac, 938, 0};
					bbOnDebugEnterStm(&__stmt_1);
					bbt_alp=((unsigned int)(((unsigned int)(bbt_rgba)&(unsigned int)(-16777216)))>>(unsigned int)(24));
					struct BBDebugStm __stmt_2 = {0xc98026d238c3ecac, 939, 0};
					bbOnDebugEnterStm(&__stmt_2);
					if(bbt_alp==0){
						struct BBDebugScope __scope = {
							BBDEBUGSCOPE_LOCALBLOCK,
							0,
							{
								{
									BBDEBUGDECL_END
								}
							}
						};
						bbOnDebugEnterScope((BBDebugScope *)&__scope);
						struct BBDebugStm __stmt_0 = {0xc98026d238c3ecac, 939, 0};
						bbOnDebugEnterStm(&__stmt_0);
						bbt_a0+=1;
						bbOnDebugLeaveScope();
					}
					struct BBDebugStm __stmt_3 = {0xc98026d238c3ecac, 940, 0};
					bbOnDebugEnterStm(&__stmt_3);
					if(bbt_alp==255){
						struct BBDebugScope __scope = {
							BBDEBUGSCOPE_LOCALBLOCK,
							0,
							{
								{
									BBDEBUGDECL_END
								}
							}
						};
						bbOnDebugEnterScope((BBDebugScope *)&__scope);
						struct BBDebugStm __stmt_0 = {0xc98026d238c3ecac, 940, 0};
						bbOnDebugEnterStm(&__stmt_0);
						bbt_a1+=1;
						bbOnDebugLeaveScope();
					}
					bbOnDebugLeaveScope();
				}
			}
			bbOnDebugLeaveScope();
		}
	}
	struct BBDebugStm __stmt_9 = {0xc98026d238c3ecac, 944, 0};
	bbOnDebugEnterStm(&__stmt_9);
	if((bbt_a0==(bbt_sizew*bbt_sizeh)) || (bbt_a1==(bbt_sizew*bbt_sizeh))){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0xc98026d238c3ecac, 944, 0};
		bbOnDebugEnterStm(&__stmt_0);
		bbOnDebugLeaveScope();
		bbOnDebugLeaveScope();
		return 4;
	}
	struct BBDebugStm __stmt_10 = {0xc98026d238c3ecac, 945, 0};
	bbOnDebugEnterStm(&__stmt_10);
	bbOnDebugLeaveScope();
	return 2;
}
struct brl_pixmap_TPixmap_obj* openb3d_openb3dcore_TTexture_ApplyAlpha_TTPixmap_vTTPixmapf(struct brl_pixmap_TPixmap_obj** bbt_map,BBFLOAT bbt_alpha){
	BBINT bbt_rgba=0;
	BBINT bbt_red=0;
	BBINT bbt_grn=0;
	BBINT bbt_blu=0;
	BBINT bbt_alp=0;
	BBINT bbt_discard=0;
	struct BBDebugScope_8 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"ApplyAlpha",
		{
			{
				BBDEBUGDECL_VARPARAM,
				"map",
				":TPixmap",
				.var_address=&bbt_map
			},
			{
				BBDEBUGDECL_LOCAL,
				"alpha",
				"f",
				.var_address=&bbt_alpha
			},
			{
				BBDEBUGDECL_LOCAL,
				"rgba",
				"i",
				.var_address=&bbt_rgba
			},
			{
				BBDEBUGDECL_LOCAL,
				"red",
				"i",
				.var_address=&bbt_red
			},
			{
				BBDEBUGDECL_LOCAL,
				"grn",
				"i",
				.var_address=&bbt_grn
			},
			{
				BBDEBUGDECL_LOCAL,
				"blu",
				"i",
				.var_address=&bbt_blu
			},
			{
				BBDEBUGDECL_LOCAL,
				"alp",
				"i",
				.var_address=&bbt_alp
			},
			{
				BBDEBUGDECL_LOCAL,
				"discard",
				"i",
				.var_address=&bbt_discard
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0xc98026d238c3ecac, 950, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbt_rgba=0;
	struct BBDebugStm __stmt_1 = {0xc98026d238c3ecac, 950, 0};
	bbOnDebugEnterStm(&__stmt_1);
	bbt_red=0;
	struct BBDebugStm __stmt_2 = {0xc98026d238c3ecac, 950, 0};
	bbOnDebugEnterStm(&__stmt_2);
	bbt_grn=0;
	struct BBDebugStm __stmt_3 = {0xc98026d238c3ecac, 950, 0};
	bbOnDebugEnterStm(&__stmt_3);
	bbt_blu=0;
	struct BBDebugStm __stmt_4 = {0xc98026d238c3ecac, 950, 0};
	bbOnDebugEnterStm(&__stmt_4);
	bbt_alp=0;
	struct BBDebugStm __stmt_5 = {0xc98026d238c3ecac, 951, 0};
	bbOnDebugEnterStm(&__stmt_5);
	bbt_discard=((BBINT)(bbt_alpha*255.000000f));
	struct BBDebugStm __stmt_6 = {0xc98026d238c3ecac, 953, 0};
	bbOnDebugEnterStm(&__stmt_6);
	{
		BBINT bbt_iy=0;
		BBINT bbt_=(brl_pixmap_PixmapHeight((struct brl_pixmap_TPixmap_obj*)*bbt_map)-1);
		for(;(bbt_iy<=bbt_);bbt_iy=(bbt_iy+1)){
			struct BBDebugScope_1 __scope = {
				BBDEBUGSCOPE_LOCALBLOCK,
				0,
				{
					{
						BBDEBUGDECL_LOCAL,
						"iy",
						"i",
						.var_address=&bbt_iy
					},
					{
						BBDEBUGDECL_END
					}
				}
			};
			bbOnDebugEnterScope((BBDebugScope *)&__scope);
			struct BBDebugStm __stmt_0 = {0xc98026d238c3ecac, 954, 0};
			bbOnDebugEnterStm(&__stmt_0);
			{
				BBINT bbt_ix=0;
				BBINT bbt_2=(brl_pixmap_PixmapWidth((struct brl_pixmap_TPixmap_obj*)*bbt_map)-1);
				for(;(bbt_ix<=bbt_2);bbt_ix=(bbt_ix+1)){
					struct BBDebugScope_1 __scope = {
						BBDEBUGSCOPE_LOCALBLOCK,
						0,
						{
							{
								BBDEBUGDECL_LOCAL,
								"ix",
								"i",
								.var_address=&bbt_ix
							},
							{
								BBDEBUGDECL_END
							}
						}
					};
					bbOnDebugEnterScope((BBDebugScope *)&__scope);
					struct BBDebugStm __stmt_0 = {0xc98026d238c3ecac, 955, 0};
					bbOnDebugEnterStm(&__stmt_0);
					bbt_rgba=brl_pixmap_ReadPixel((struct brl_pixmap_TPixmap_obj*)*bbt_map,bbt_ix,bbt_iy);
					struct BBDebugStm __stmt_1 = {0xc98026d238c3ecac, 956, 0};
					bbOnDebugEnterStm(&__stmt_1);
					bbt_red=((unsigned int)(bbt_rgba)&(unsigned int)(255));
					struct BBDebugStm __stmt_2 = {0xc98026d238c3ecac, 957, 0};
					bbOnDebugEnterStm(&__stmt_2);
					bbt_grn=((unsigned int)(((unsigned int)(bbt_rgba)&(unsigned int)(65280)))>>(unsigned int)(8));
					struct BBDebugStm __stmt_3 = {0xc98026d238c3ecac, 958, 0};
					bbOnDebugEnterStm(&__stmt_3);
					bbt_blu=((unsigned int)(((unsigned int)(bbt_rgba)&(unsigned int)(16711680)))>>(unsigned int)(16));
					struct BBDebugStm __stmt_4 = {0xc98026d238c3ecac, 959, 0};
					bbOnDebugEnterStm(&__stmt_4);
					bbt_alp=((BBINT)(((BBFLOAT)((bbt_red+bbt_grn)+bbt_blu))/3.0f));
					struct BBDebugStm __stmt_5 = {0xc98026d238c3ecac, 960, 0};
					bbOnDebugEnterStm(&__stmt_5);
					brl_pixmap_WritePixel((struct brl_pixmap_TPixmap_obj*)*bbt_map,bbt_ix,bbt_iy,((unsigned int)(((unsigned int)(bbt_rgba)&(unsigned int)(16777215)))|(unsigned int)((bbt_alp<<24))));
					bbOnDebugLeaveScope();
				}
			}
			bbOnDebugLeaveScope();
		}
	}
	struct BBDebugStm __stmt_7 = {0xc98026d238c3ecac, 965, 0};
	bbOnDebugEnterStm(&__stmt_7);
	bbOnDebugLeaveScope();
	return (struct brl_pixmap_TPixmap_obj*)*bbt_map;
}
struct brl_pixmap_TPixmap_obj* openb3d_openb3dcore_TTexture_ApplyMask_TTPixmap_vTTPixmapiii(struct brl_pixmap_TPixmap_obj** bbt_map,BBINT bbt_maskred,BBINT bbt_maskgrn,BBINT bbt_maskblu){
	BBINT bbt_rgba=0;
	BBINT bbt_red=0;
	BBINT bbt_grn=0;
	BBINT bbt_blu=0;
	struct BBDebugScope_8 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"ApplyMask",
		{
			{
				BBDEBUGDECL_VARPARAM,
				"map",
				":TPixmap",
				.var_address=&bbt_map
			},
			{
				BBDEBUGDECL_LOCAL,
				"maskred",
				"i",
				.var_address=&bbt_maskred
			},
			{
				BBDEBUGDECL_LOCAL,
				"maskgrn",
				"i",
				.var_address=&bbt_maskgrn
			},
			{
				BBDEBUGDECL_LOCAL,
				"maskblu",
				"i",
				.var_address=&bbt_maskblu
			},
			{
				BBDEBUGDECL_LOCAL,
				"rgba",
				"i",
				.var_address=&bbt_rgba
			},
			{
				BBDEBUGDECL_LOCAL,
				"red",
				"i",
				.var_address=&bbt_red
			},
			{
				BBDEBUGDECL_LOCAL,
				"grn",
				"i",
				.var_address=&bbt_grn
			},
			{
				BBDEBUGDECL_LOCAL,
				"blu",
				"i",
				.var_address=&bbt_blu
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0xc98026d238c3ecac, 971, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbt_rgba=0;
	struct BBDebugStm __stmt_1 = {0xc98026d238c3ecac, 971, 0};
	bbOnDebugEnterStm(&__stmt_1);
	bbt_red=0;
	struct BBDebugStm __stmt_2 = {0xc98026d238c3ecac, 971, 0};
	bbOnDebugEnterStm(&__stmt_2);
	bbt_grn=0;
	struct BBDebugStm __stmt_3 = {0xc98026d238c3ecac, 971, 0};
	bbOnDebugEnterStm(&__stmt_3);
	bbt_blu=0;
	struct BBDebugStm __stmt_4 = {0xc98026d238c3ecac, 973, 0};
	bbOnDebugEnterStm(&__stmt_4);
	{
		BBINT bbt_iy=0;
		BBINT bbt_=(brl_pixmap_PixmapHeight((struct brl_pixmap_TPixmap_obj*)*bbt_map)-1);
		for(;(bbt_iy<=bbt_);bbt_iy=(bbt_iy+1)){
			struct BBDebugScope_1 __scope = {
				BBDEBUGSCOPE_LOCALBLOCK,
				0,
				{
					{
						BBDEBUGDECL_LOCAL,
						"iy",
						"i",
						.var_address=&bbt_iy
					},
					{
						BBDEBUGDECL_END
					}
				}
			};
			bbOnDebugEnterScope((BBDebugScope *)&__scope);
			struct BBDebugStm __stmt_0 = {0xc98026d238c3ecac, 974, 0};
			bbOnDebugEnterStm(&__stmt_0);
			{
				BBINT bbt_ix=0;
				BBINT bbt_2=(brl_pixmap_PixmapWidth((struct brl_pixmap_TPixmap_obj*)*bbt_map)-1);
				for(;(bbt_ix<=bbt_2);bbt_ix=(bbt_ix+1)){
					struct BBDebugScope_1 __scope = {
						BBDEBUGSCOPE_LOCALBLOCK,
						0,
						{
							{
								BBDEBUGDECL_LOCAL,
								"ix",
								"i",
								.var_address=&bbt_ix
							},
							{
								BBDEBUGDECL_END
							}
						}
					};
					bbOnDebugEnterScope((BBDebugScope *)&__scope);
					struct BBDebugStm __stmt_0 = {0xc98026d238c3ecac, 975, 0};
					bbOnDebugEnterStm(&__stmt_0);
					bbt_rgba=brl_pixmap_ReadPixel((struct brl_pixmap_TPixmap_obj*)*bbt_map,bbt_ix,bbt_iy);
					struct BBDebugStm __stmt_1 = {0xc98026d238c3ecac, 976, 0};
					bbOnDebugEnterStm(&__stmt_1);
					bbt_red=((unsigned int)(bbt_rgba)&(unsigned int)(255));
					struct BBDebugStm __stmt_2 = {0xc98026d238c3ecac, 977, 0};
					bbOnDebugEnterStm(&__stmt_2);
					bbt_grn=((unsigned int)(((unsigned int)(bbt_rgba)&(unsigned int)(65280)))>>(unsigned int)(8));
					struct BBDebugStm __stmt_3 = {0xc98026d238c3ecac, 978, 0};
					bbOnDebugEnterStm(&__stmt_3);
					bbt_blu=((unsigned int)(((unsigned int)(bbt_rgba)&(unsigned int)(16711680)))>>(unsigned int)(16));
					struct BBDebugStm __stmt_4 = {0xc98026d238c3ecac, 979, 0};
					bbOnDebugEnterStm(&__stmt_4);
					if(((bbt_red==bbt_maskred) && (bbt_grn==bbt_maskgrn)) && (bbt_blu==bbt_maskblu)){
						struct BBDebugScope __scope = {
							BBDEBUGSCOPE_LOCALBLOCK,
							0,
							{
								{
									BBDEBUGDECL_END
								}
							}
						};
						bbOnDebugEnterScope((BBDebugScope *)&__scope);
						struct BBDebugStm __stmt_0 = {0xc98026d238c3ecac, 980, 0};
						bbOnDebugEnterStm(&__stmt_0);
						brl_pixmap_WritePixel((struct brl_pixmap_TPixmap_obj*)*bbt_map,bbt_ix,bbt_iy,((unsigned int)(bbt_rgba)&(unsigned int)(16777215)));
						bbOnDebugLeaveScope();
					}
					bbOnDebugLeaveScope();
				}
			}
			bbOnDebugLeaveScope();
		}
	}
	struct BBDebugStm __stmt_5 = {0xc98026d238c3ecac, 985, 0};
	bbOnDebugEnterStm(&__stmt_5);
	bbOnDebugLeaveScope();
	return (struct brl_pixmap_TPixmap_obj*)*bbt_map;
}
BBINT openb3d_openb3dcore_TTexture_Pow2Size_i_i(BBINT bbt_n){
	BBINT bbt_t=0;
	struct BBDebugScope_2 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"Pow2Size",
		{
			{
				BBDEBUGDECL_LOCAL,
				"n",
				"i",
				.var_address=&bbt_n
			},
			{
				BBDEBUGDECL_LOCAL,
				"t",
				"i",
				.var_address=&bbt_t
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0xc98026d238c3ecac, 991, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbt_t=1;
	struct BBDebugStm __stmt_1 = {0xc98026d238c3ecac, 992, 0};
	bbOnDebugEnterStm(&__stmt_1);
	while(bbt_t<bbt_n){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0xc98026d238c3ecac, 993, 0};
		bbOnDebugEnterStm(&__stmt_0);
		bbt_t*=2;
		bbOnDebugLeaveScope();
	}
	struct BBDebugStm __stmt_2 = {0xc98026d238c3ecac, 995, 0};
	bbOnDebugEnterStm(&__stmt_2);
	bbOnDebugLeaveScope();
	return bbt_t;
}
BBINT _openb3d_openb3dcore_TTexture_TextureBlend_i(struct openb3d_openb3dcore_TTexture_obj* o,BBINT bbt_blend){
	((struct openb3d_openb3dcore_TTexture_obj*)bbNullObjectTest((BBObject*)o));
	struct BBDebugScope_2 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"TextureBlend",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TTexture",
				.var_address=&o
			},
			{
				BBDEBUGDECL_LOCAL,
				"blend",
				"i",
				.var_address=&bbt_blend
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0xc98026d238c3ecac, 1001, 0};
	bbOnDebugEnterStm(&__stmt_0);
	TextureBlend_(o->clas->f_GetInstance_pb_TTTexture((struct openb3d_openb3dcore_TTexture_obj*)o),bbt_blend);
	bbOnDebugLeaveScope();
	return 0;
}
BBINT _openb3d_openb3dcore_TTexture_TextureCoords_i(struct openb3d_openb3dcore_TTexture_obj* o,BBINT bbt_coords){
	((struct openb3d_openb3dcore_TTexture_obj*)bbNullObjectTest((BBObject*)o));
	struct BBDebugScope_2 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"TextureCoords",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TTexture",
				.var_address=&o
			},
			{
				BBDEBUGDECL_LOCAL,
				"coords",
				"i",
				.var_address=&bbt_coords
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0xc98026d238c3ecac, 1007, 0};
	bbOnDebugEnterStm(&__stmt_0);
	TextureCoords_(o->clas->f_GetInstance_pb_TTTexture((struct openb3d_openb3dcore_TTexture_obj*)o),bbt_coords);
	bbOnDebugLeaveScope();
	return 0;
}
BBINT _openb3d_openb3dcore_TTexture_ScaleTexture_ff(struct openb3d_openb3dcore_TTexture_obj* o,BBFLOAT bbt_u_scale,BBFLOAT bbt_v_scale){
	((struct openb3d_openb3dcore_TTexture_obj*)bbNullObjectTest((BBObject*)o));
	struct BBDebugScope_3 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"ScaleTexture",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TTexture",
				.var_address=&o
			},
			{
				BBDEBUGDECL_LOCAL,
				"u_scale",
				"f",
				.var_address=&bbt_u_scale
			},
			{
				BBDEBUGDECL_LOCAL,
				"v_scale",
				"f",
				.var_address=&bbt_v_scale
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0xc98026d238c3ecac, 1013, 0};
	bbOnDebugEnterStm(&__stmt_0);
	ScaleTexture_(o->clas->f_GetInstance_pb_TTTexture((struct openb3d_openb3dcore_TTexture_obj*)o),bbt_u_scale,bbt_v_scale);
	bbOnDebugLeaveScope();
	return 0;
}
BBINT _openb3d_openb3dcore_TTexture_PositionTexture_ff(struct openb3d_openb3dcore_TTexture_obj* o,BBFLOAT bbt_u_pos,BBFLOAT bbt_v_pos){
	((struct openb3d_openb3dcore_TTexture_obj*)bbNullObjectTest((BBObject*)o));
	struct BBDebugScope_3 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"PositionTexture",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TTexture",
				.var_address=&o
			},
			{
				BBDEBUGDECL_LOCAL,
				"u_pos",
				"f",
				.var_address=&bbt_u_pos
			},
			{
				BBDEBUGDECL_LOCAL,
				"v_pos",
				"f",
				.var_address=&bbt_v_pos
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0xc98026d238c3ecac, 1019, 0};
	bbOnDebugEnterStm(&__stmt_0);
	PositionTexture_(o->clas->f_GetInstance_pb_TTTexture((struct openb3d_openb3dcore_TTexture_obj*)o),bbt_u_pos,bbt_v_pos);
	bbOnDebugLeaveScope();
	return 0;
}
BBINT _openb3d_openb3dcore_TTexture_RotateTexture_f(struct openb3d_openb3dcore_TTexture_obj* o,BBFLOAT bbt_ang){
	((struct openb3d_openb3dcore_TTexture_obj*)bbNullObjectTest((BBObject*)o));
	struct BBDebugScope_2 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"RotateTexture",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TTexture",
				.var_address=&o
			},
			{
				BBDEBUGDECL_LOCAL,
				"ang",
				"f",
				.var_address=&bbt_ang
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0xc98026d238c3ecac, 1025, 0};
	bbOnDebugEnterStm(&__stmt_0);
	RotateTexture_(o->clas->f_GetInstance_pb_TTTexture((struct openb3d_openb3dcore_TTexture_obj*)o),bbt_ang);
	bbOnDebugLeaveScope();
	return 0;
}
BBINT _openb3d_openb3dcore_TTexture_TextureWidth(struct openb3d_openb3dcore_TTexture_obj* o){
	((struct openb3d_openb3dcore_TTexture_obj*)bbNullObjectTest((BBObject*)o));
	struct BBDebugScope_1 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"TextureWidth",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TTexture",
				.var_address=&o
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0xc98026d238c3ecac, 1031, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbOnDebugLeaveScope();
	return TextureWidth_(o->clas->f_GetInstance_pb_TTTexture((struct openb3d_openb3dcore_TTexture_obj*)o));
}
BBINT _openb3d_openb3dcore_TTexture_TextureHeight(struct openb3d_openb3dcore_TTexture_obj* o){
	((struct openb3d_openb3dcore_TTexture_obj*)bbNullObjectTest((BBObject*)o));
	struct BBDebugScope_1 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"TextureHeight",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TTexture",
				.var_address=&o
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0xc98026d238c3ecac, 1037, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbOnDebugLeaveScope();
	return TextureHeight_(o->clas->f_GetInstance_pb_TTTexture((struct openb3d_openb3dcore_TTexture_obj*)o));
}
BBSTRING _openb3d_openb3dcore_TTexture_TextureName(struct openb3d_openb3dcore_TTexture_obj* o){
	((struct openb3d_openb3dcore_TTexture_obj*)bbNullObjectTest((BBObject*)o));
	struct BBDebugScope_1 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"TextureName",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TTexture",
				.var_address=&o
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0xc98026d238c3ecac, 1043, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbOnDebugLeaveScope();
	return bbStringFromCString(TextureName_(o->clas->f_GetInstance_pb_TTTexture((struct openb3d_openb3dcore_TTexture_obj*)o)));
}
struct openb3d_openb3dcore_TTexture_obj* openb3d_openb3dcore_TTexture_GetBrushTexture_TTTexture_TTBrushi(struct openb3d_openb3dcore_TBrush_obj* bbt_brush,BBINT bbt_index){
	BBBYTE* bbt_inst=0;
	struct BBDebugScope_3 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"GetBrushTexture",
		{
			{
				BBDEBUGDECL_LOCAL,
				"brush",
				":TBrush",
				.var_address=&bbt_brush
			},
			{
				BBDEBUGDECL_LOCAL,
				"index",
				"i",
				.var_address=&bbt_index
			},
			{
				BBDEBUGDECL_LOCAL,
				"inst",
				"*b",
				.var_address=&bbt_inst
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0xc98026d238c3ecac, 1049, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbt_inst=GetBrushTexture_(openb3d_openb3dcore_TBrush_GetInstance_pb_TTBrush((struct openb3d_openb3dcore_TBrush_obj*)bbt_brush),bbt_index);
	struct BBDebugStm __stmt_1 = {0xc98026d238c3ecac, 1050, 0};
	bbOnDebugEnterStm(&__stmt_1);
	bbOnDebugLeaveScope();
	return (struct openb3d_openb3dcore_TTexture_obj*)openb3d_openb3dcore_TTexture_GetObject_TTTexture_pb(bbt_inst);
}
BBINT openb3d_openb3dcore_TTexture_ClearTextureFilters_i(){
	struct BBDebugScope __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"ClearTextureFilters",
		{
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0xc98026d238c3ecac, 1056, 0};
	bbOnDebugEnterStm(&__stmt_0);
	ClearTextureFilters_();
	bbOnDebugLeaveScope();
	return 0;
}
BBINT openb3d_openb3dcore_TTexture_TextureFilter_i_Si(BBSTRING bbt_match_text,BBINT bbt_flags){
	BBBYTE* bbt_cString=0;
	struct BBDebugScope_3 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"TextureFilter",
		{
			{
				BBDEBUGDECL_LOCAL,
				"match_text",
				"$",
				.var_address=&bbt_match_text
			},
			{
				BBDEBUGDECL_LOCAL,
				"flags",
				"i",
				.var_address=&bbt_flags
			},
			{
				BBDEBUGDECL_LOCAL,
				"cString",
				"*b",
				.var_address=&bbt_cString
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0xc98026d238c3ecac, 1062, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbt_cString=bbStringToCString((BBSTRING)bbt_match_text);
	struct BBDebugStm __stmt_1 = {0xc98026d238c3ecac, 1063, 0};
	bbOnDebugEnterStm(&__stmt_1);
	TextureFilter_(bbt_cString,bbt_flags);
	struct BBDebugStm __stmt_2 = {0xc98026d238c3ecac, 1064, 0};
	bbOnDebugEnterStm(&__stmt_2);
	bbMemFree((void*)bbt_cString);
	bbOnDebugLeaveScope();
	return 0;
}
BBINT _openb3d_openb3dcore_TTexture_SetCubeFace_i(struct openb3d_openb3dcore_TTexture_obj* o,BBINT bbt_face){
	((struct openb3d_openb3dcore_TTexture_obj*)bbNullObjectTest((BBObject*)o));
	struct BBDebugScope_2 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"SetCubeFace",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TTexture",
				.var_address=&o
			},
			{
				BBDEBUGDECL_LOCAL,
				"face",
				"i",
				.var_address=&bbt_face
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0xc98026d238c3ecac, 1070, 0};
	bbOnDebugEnterStm(&__stmt_0);
	SetCubeFace_(o->clas->f_GetInstance_pb_TTTexture((struct openb3d_openb3dcore_TTexture_obj*)o),bbt_face);
	bbOnDebugLeaveScope();
	return 0;
}
BBINT _openb3d_openb3dcore_TTexture_SetCubeMode_i(struct openb3d_openb3dcore_TTexture_obj* o,BBINT bbt_Mode){
	((struct openb3d_openb3dcore_TTexture_obj*)bbNullObjectTest((BBObject*)o));
	struct BBDebugScope_2 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"SetCubeMode",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TTexture",
				.var_address=&o
			},
			{
				BBDEBUGDECL_LOCAL,
				"Mode",
				"i",
				.var_address=&bbt_Mode
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0xc98026d238c3ecac, 1076, 0};
	bbOnDebugEnterStm(&__stmt_0);
	SetCubeMode_(o->clas->f_GetInstance_pb_TTTexture((struct openb3d_openb3dcore_TTexture_obj*)o),bbt_Mode);
	bbOnDebugLeaveScope();
	return 0;
}
BBINT _openb3d_openb3dcore_TTexture_BackBufferToTex_iii(struct openb3d_openb3dcore_TTexture_obj* o,BBINT bbt_mipmap_no,BBINT bbt_frame,BBINT bbt_fastinvert){
	((struct openb3d_openb3dcore_TTexture_obj*)bbNullObjectTest((BBObject*)o));
	struct BBDebugScope_4 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"BackBufferToTex",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TTexture",
				.var_address=&o
			},
			{
				BBDEBUGDECL_LOCAL,
				"mipmap_no",
				"i",
				.var_address=&bbt_mipmap_no
			},
			{
				BBDEBUGDECL_LOCAL,
				"frame",
				"i",
				.var_address=&bbt_frame
			},
			{
				BBDEBUGDECL_LOCAL,
				"fastinvert",
				"i",
				.var_address=&bbt_fastinvert
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0xc98026d238c3ecac, 1082, 0};
	bbOnDebugEnterStm(&__stmt_0);
	BackBufferToTex_(o->clas->f_GetInstance_pb_TTTexture((struct openb3d_openb3dcore_TTexture_obj*)o),bbt_mipmap_no,bbt_frame,bbt_fastinvert);
	bbOnDebugLeaveScope();
	return 0;
}
struct openb3d_openb3dcore_TTexture_obj* _openb3d_openb3dcore_TTexture_Copy_i(struct openb3d_openb3dcore_TTexture_obj* o,BBINT bbt_copyflags){
	((struct openb3d_openb3dcore_TTexture_obj*)bbNullObjectTest((BBObject*)o));
	struct BBDebugScope_2 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"Copy",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TTexture",
				.var_address=&o
			},
			{
				BBDEBUGDECL_LOCAL,
				"copyflags",
				"i",
				.var_address=&bbt_copyflags
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0xc98026d238c3ecac, 1090, 0};
	bbOnDebugEnterStm(&__stmt_0);
	BBINT bbt_=openb3d_openb3dcore_TGlobal3D_Texture_Loader;
	struct BBDebugStm __stmt_1 = {0xc98026d238c3ecac, 1092, 0};
	bbOnDebugEnterStm(&__stmt_1);
	if(bbt_==2){
		BBBYTE* bbt_inst=0;
		struct BBDebugScope_1 __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_LOCAL,
					"inst",
					"*b",
					.var_address=&bbt_inst
				},
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0xc98026d238c3ecac, 1093, 0};
		bbOnDebugEnterStm(&__stmt_0);
		bbt_inst=TextureCopy_(o->clas->f_GetInstance_pb_TTTexture((struct openb3d_openb3dcore_TTexture_obj*)o),bbt_copyflags);
		struct BBDebugStm __stmt_1 = {0xc98026d238c3ecac, 1094, 0};
		bbOnDebugEnterStm(&__stmt_1);
		bbOnDebugLeaveScope();
		bbOnDebugLeaveScope();
		return (struct openb3d_openb3dcore_TTexture_obj*)o->clas->f_CreateObject_TTTexture_pb(bbt_inst);
	}else{
		struct openb3d_openb3dcore_TTexture_obj* bbt_tex=(struct openb3d_openb3dcore_TTexture_obj*)((struct openb3d_openb3dcore_TTexture_obj*)&bbNullObject);
		struct BBDebugScope_1 __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_LOCAL,
					"tex",
					":TTexture",
					.var_address=&bbt_tex
				},
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0xc98026d238c3ecac, 1097, 0};
		bbOnDebugEnterStm(&__stmt_0);
		bbt_tex=(struct openb3d_openb3dcore_TTexture_obj*)o->clas->f_Create_TTTexture();
		struct BBDebugStm __stmt_1 = {0xc98026d238c3ecac, 1099, 0};
		bbOnDebugEnterStm(&__stmt_1);
		((struct openb3d_openb3dcore_TTexture_obj*)bbNullObjectTest((BBObject*)o));
		((struct openb3d_openb3dcore_TTexture_obj*)bbNullObjectTest((BBObject*)bbt_tex))->clas->m_SetString_pbS((struct openb3d_openb3dcore_TTexture_obj*)bbt_tex,((struct openb3d_openb3dcore_TTexture_obj*)bbNullObjectTest((BBObject*)bbt_tex))->_openb3d_openb3dcore_ttexture_file ,((struct openb3d_openb3dcore_TTexture_obj*)o)->clas->m_GetString_pb((struct openb3d_openb3dcore_TTexture_obj*)o,((struct openb3d_openb3dcore_TTexture_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_ttexture_file ));
		struct BBDebugStm __stmt_2 = {0xc98026d238c3ecac, 1100, 0};
		bbOnDebugEnterStm(&__stmt_2);
		((struct openb3d_openb3dcore_TTexture_obj*)bbNullObjectTest((BBObject*)o));
		((struct openb3d_openb3dcore_TTexture_obj*)bbNullObjectTest((BBObject*)bbt_tex))->clas->m_SetString_pbS((struct openb3d_openb3dcore_TTexture_obj*)bbt_tex,((struct openb3d_openb3dcore_TTexture_obj*)bbNullObjectTest((BBObject*)bbt_tex))->_openb3d_openb3dcore_ttexture_file_abs ,o->clas->f_FileAbs_S_S(((struct openb3d_openb3dcore_TTexture_obj*)o)->clas->m_GetString_pb((struct openb3d_openb3dcore_TTexture_obj*)o,((struct openb3d_openb3dcore_TTexture_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_ttexture_file )));
		struct BBDebugStm __stmt_3 = {0xc98026d238c3ecac, 1101, 0};
		bbOnDebugEnterStm(&__stmt_3);
		((struct openb3d_openb3dcore_TTexture_obj*)bbNullObjectTest((BBObject*)bbt_tex))->_openb3d_openb3dcore_ttexture_blend [0]=((struct openb3d_openb3dcore_TTexture_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_ttexture_blend [0];
		struct BBDebugStm __stmt_4 = {0xc98026d238c3ecac, 1102, 0};
		bbOnDebugEnterStm(&__stmt_4);
		((struct openb3d_openb3dcore_TTexture_obj*)bbNullObjectTest((BBObject*)bbt_tex))->_openb3d_openb3dcore_ttexture_coords [0]=((struct openb3d_openb3dcore_TTexture_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_ttexture_coords [0];
		struct BBDebugStm __stmt_5 = {0xc98026d238c3ecac, 1103, 0};
		bbOnDebugEnterStm(&__stmt_5);
		((struct openb3d_openb3dcore_TTexture_obj*)bbNullObjectTest((BBObject*)bbt_tex))->_openb3d_openb3dcore_ttexture_u_scale [0]=((struct openb3d_openb3dcore_TTexture_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_ttexture_u_scale [0];
		struct BBDebugStm __stmt_6 = {0xc98026d238c3ecac, 1104, 0};
		bbOnDebugEnterStm(&__stmt_6);
		((struct openb3d_openb3dcore_TTexture_obj*)bbNullObjectTest((BBObject*)bbt_tex))->_openb3d_openb3dcore_ttexture_v_scale [0]=((struct openb3d_openb3dcore_TTexture_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_ttexture_v_scale [0];
		struct BBDebugStm __stmt_7 = {0xc98026d238c3ecac, 1105, 0};
		bbOnDebugEnterStm(&__stmt_7);
		((struct openb3d_openb3dcore_TTexture_obj*)bbNullObjectTest((BBObject*)bbt_tex))->_openb3d_openb3dcore_ttexture_u_pos [0]=((struct openb3d_openb3dcore_TTexture_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_ttexture_u_pos [0];
		struct BBDebugStm __stmt_8 = {0xc98026d238c3ecac, 1106, 0};
		bbOnDebugEnterStm(&__stmt_8);
		((struct openb3d_openb3dcore_TTexture_obj*)bbNullObjectTest((BBObject*)bbt_tex))->_openb3d_openb3dcore_ttexture_v_pos [0]=((struct openb3d_openb3dcore_TTexture_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_ttexture_v_pos [0];
		struct BBDebugStm __stmt_9 = {0xc98026d238c3ecac, 1107, 0};
		bbOnDebugEnterStm(&__stmt_9);
		((struct openb3d_openb3dcore_TTexture_obj*)bbNullObjectTest((BBObject*)bbt_tex))->_openb3d_openb3dcore_ttexture_angle [0]=((struct openb3d_openb3dcore_TTexture_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_ttexture_angle [0];
		struct BBDebugStm __stmt_10 = {0xc98026d238c3ecac, 1109, 0};
		bbOnDebugEnterStm(&__stmt_10);
		if(bbt_copyflags!=0){
			struct BBDebugScope __scope = {
				BBDEBUGSCOPE_LOCALBLOCK,
				0,
				{
					{
						BBDEBUGDECL_END
					}
				}
			};
			bbOnDebugEnterScope((BBDebugScope *)&__scope);
			struct BBDebugStm __stmt_0 = {0xc98026d238c3ecac, 1109, 0};
			bbOnDebugEnterStm(&__stmt_0);
			((struct openb3d_openb3dcore_TTexture_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_ttexture_flags [0]=bbt_copyflags;
			bbOnDebugLeaveScope();
		}
		struct BBDebugStm __stmt_11 = {0xc98026d238c3ecac, 1111, 0};
		bbOnDebugEnterStm(&__stmt_11);
		openb3d_openb3dcore_TTexture_is_unique=1;
		struct BBDebugStm __stmt_12 = {0xc98026d238c3ecac, 1112, 0};
		bbOnDebugEnterStm(&__stmt_12);
		if(((struct openb3d_openb3dcore_TTexture_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_ttexture_no_frames [0]<2){
			struct BBDebugScope __scope = {
				BBDEBUGSCOPE_LOCALBLOCK,
				0,
				{
					{
						BBDEBUGDECL_END
					}
				}
			};
			bbOnDebugEnterScope((BBDebugScope *)&__scope);
			struct BBDebugStm __stmt_0 = {0xc98026d238c3ecac, 1113, 0};
			bbOnDebugEnterStm(&__stmt_0);
			((struct openb3d_openb3dcore_TTexture_obj*)bbNullObjectTest((BBObject*)o));
			o->clas->f_LoadAnimTextureStream_TTTexture_TObjectiiiiiTTTexture((BBOBJECT)((struct openb3d_openb3dcore_TTexture_obj*)o)->clas->m_GetString_pb((struct openb3d_openb3dcore_TTexture_obj*)o,((struct openb3d_openb3dcore_TTexture_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_ttexture_file ),((struct openb3d_openb3dcore_TTexture_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_ttexture_flags [0],0,0,0,1,(struct openb3d_openb3dcore_TTexture_obj*)bbt_tex);
			bbOnDebugLeaveScope();
		}else{
			struct BBDebugScope __scope = {
				BBDEBUGSCOPE_LOCALBLOCK,
				0,
				{
					{
						BBDEBUGDECL_END
					}
				}
			};
			bbOnDebugEnterScope((BBDebugScope *)&__scope);
			struct BBDebugStm __stmt_0 = {0xc98026d238c3ecac, 1115, 0};
			bbOnDebugEnterStm(&__stmt_0);
			((struct openb3d_openb3dcore_TTexture_obj*)bbNullObjectTest((BBObject*)o));
			o->clas->f_LoadAnimTextureStream_TTTexture_TObjectiiiiiTTTexture((BBOBJECT)((struct openb3d_openb3dcore_TTexture_obj*)o)->clas->m_GetString_pb((struct openb3d_openb3dcore_TTexture_obj*)o,((struct openb3d_openb3dcore_TTexture_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_ttexture_file ),((struct openb3d_openb3dcore_TTexture_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_ttexture_flags [0],((struct openb3d_openb3dcore_TTexture_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_ttexture_width [0],((struct openb3d_openb3dcore_TTexture_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_ttexture_height [0],0,((struct openb3d_openb3dcore_TTexture_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_ttexture_no_frames [0],(struct openb3d_openb3dcore_TTexture_obj*)bbt_tex);
			bbOnDebugLeaveScope();
		}
		struct BBDebugStm __stmt_13 = {0xc98026d238c3ecac, 1117, 0};
		bbOnDebugEnterStm(&__stmt_13);
		openb3d_openb3dcore_TTexture_is_unique=0;
		struct BBDebugStm __stmt_14 = {0xc98026d238c3ecac, 1118, 0};
		bbOnDebugEnterStm(&__stmt_14);
		bbOnDebugLeaveScope();
		bbOnDebugLeaveScope();
		return (struct openb3d_openb3dcore_TTexture_obj*)bbt_tex;
	}
}
struct openb3d_openb3dcore_TTexture_obj* _openb3d_openb3dcore_TTexture_TexInList(struct openb3d_openb3dcore_TTexture_obj* o){
	((struct openb3d_openb3dcore_TTexture_obj*)bbNullObjectTest((BBObject*)o));
	BBBYTE* bbt_list_ref=0;
	BBBYTE* bbt_inst=0;
	struct BBDebugScope_3 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"TexInList",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TTexture",
				.var_address=&o
			},
			{
				BBDEBUGDECL_LOCAL,
				"list_ref",
				"*b",
				.var_address=&bbt_list_ref
			},
			{
				BBDEBUGDECL_LOCAL,
				"inst",
				"*b",
				.var_address=&bbt_inst
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0xc98026d238c3ecac, 1127, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbt_list_ref=TextureListTexture_(o->clas->f_GetInstance_pb_TTTexture((struct openb3d_openb3dcore_TTexture_obj*)o),2);
	struct BBDebugStm __stmt_1 = {0xc98026d238c3ecac, 1128, 0};
	bbOnDebugEnterStm(&__stmt_1);
	bbt_inst=TexInList_(o->clas->f_GetInstance_pb_TTTexture((struct openb3d_openb3dcore_TTexture_obj*)o),bbt_list_ref);
	struct BBDebugStm __stmt_2 = {0xc98026d238c3ecac, 1129, 0};
	bbOnDebugEnterStm(&__stmt_2);
	bbOnDebugLeaveScope();
	return (struct openb3d_openb3dcore_TTexture_obj*)o->clas->f_GetObject_TTTexture_pb(bbt_inst);
}
BBINT _openb3d_openb3dcore_TTexture_FilterFlags(struct openb3d_openb3dcore_TTexture_obj* o){
	((struct openb3d_openb3dcore_TTexture_obj*)bbNullObjectTest((BBObject*)o));
	struct BBDebugScope_1 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"FilterFlags",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TTexture",
				.var_address=&o
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0xc98026d238c3ecac, 1136, 0};
	bbOnDebugEnterStm(&__stmt_0);
	FilterFlags_(o->clas->f_GetInstance_pb_TTTexture((struct openb3d_openb3dcore_TTexture_obj*)o));
	bbOnDebugLeaveScope();
	return 0;
}
struct brl_linkedlist_TList_obj* openb3d_openb3dcore_TTexture_tex_list;
BBINT openb3d_openb3dcore_TTexture_tex_list_id;
struct brl_map_ptrmap_TPtrMap_obj* openb3d_openb3dcore_TTexture_tex_map;
struct brl_linkedlist_TList_obj* openb3d_openb3dcore_TTexture_tex_list_all;
BBINT openb3d_openb3dcore_TTexture_tex_list_all_id;
BBINT openb3d_openb3dcore_TTexture_is_unique;
BBFLOAT* openb3d_openb3dcore_TTexture_global_aniso;
BBINT* openb3d_openb3dcore_TTexture_AnIsoSupport;
struct BBDebugScope_93 openb3d_openb3dcore_TTexture_scope ={
	BBDEBUGSCOPE_USERTYPE,
	"TTexture",
	{
		{
			BBDEBUGDECL_FIELD,
			"texture",
			"*i",
			.field_offset=offsetof(struct openb3d_openb3dcore_TTexture_obj,_openb3d_openb3dcore_ttexture_texture)
		},
		{
			BBDEBUGDECL_FIELD,
			"file",
			"*b",
			.field_offset=offsetof(struct openb3d_openb3dcore_TTexture_obj,_openb3d_openb3dcore_ttexture_file)
		},
		{
			BBDEBUGDECL_FIELD,
			"frames",
			"*i",
			.field_offset=offsetof(struct openb3d_openb3dcore_TTexture_obj,_openb3d_openb3dcore_ttexture_frames)
		},
		{
			BBDEBUGDECL_FIELD,
			"flags",
			"*i",
			.field_offset=offsetof(struct openb3d_openb3dcore_TTexture_obj,_openb3d_openb3dcore_ttexture_flags)
		},
		{
			BBDEBUGDECL_FIELD,
			"blend",
			"*i",
			.field_offset=offsetof(struct openb3d_openb3dcore_TTexture_obj,_openb3d_openb3dcore_ttexture_blend)
		},
		{
			BBDEBUGDECL_FIELD,
			"coords",
			"*i",
			.field_offset=offsetof(struct openb3d_openb3dcore_TTexture_obj,_openb3d_openb3dcore_ttexture_coords)
		},
		{
			BBDEBUGDECL_FIELD,
			"u_scale",
			"*f",
			.field_offset=offsetof(struct openb3d_openb3dcore_TTexture_obj,_openb3d_openb3dcore_ttexture_u_scale)
		},
		{
			BBDEBUGDECL_FIELD,
			"v_scale",
			"*f",
			.field_offset=offsetof(struct openb3d_openb3dcore_TTexture_obj,_openb3d_openb3dcore_ttexture_v_scale)
		},
		{
			BBDEBUGDECL_FIELD,
			"u_pos",
			"*f",
			.field_offset=offsetof(struct openb3d_openb3dcore_TTexture_obj,_openb3d_openb3dcore_ttexture_u_pos)
		},
		{
			BBDEBUGDECL_FIELD,
			"v_pos",
			"*f",
			.field_offset=offsetof(struct openb3d_openb3dcore_TTexture_obj,_openb3d_openb3dcore_ttexture_v_pos)
		},
		{
			BBDEBUGDECL_FIELD,
			"angle",
			"*f",
			.field_offset=offsetof(struct openb3d_openb3dcore_TTexture_obj,_openb3d_openb3dcore_ttexture_angle)
		},
		{
			BBDEBUGDECL_FIELD,
			"file_abs",
			"*b",
			.field_offset=offsetof(struct openb3d_openb3dcore_TTexture_obj,_openb3d_openb3dcore_ttexture_file_abs)
		},
		{
			BBDEBUGDECL_FIELD,
			"width",
			"*i",
			.field_offset=offsetof(struct openb3d_openb3dcore_TTexture_obj,_openb3d_openb3dcore_ttexture_width)
		},
		{
			BBDEBUGDECL_FIELD,
			"height",
			"*i",
			.field_offset=offsetof(struct openb3d_openb3dcore_TTexture_obj,_openb3d_openb3dcore_ttexture_height)
		},
		{
			BBDEBUGDECL_FIELD,
			"no_frames",
			"*i",
			.field_offset=offsetof(struct openb3d_openb3dcore_TTexture_obj,_openb3d_openb3dcore_ttexture_no_frames)
		},
		{
			BBDEBUGDECL_FIELD,
			"framebuffer",
			"*i",
			.field_offset=offsetof(struct openb3d_openb3dcore_TTexture_obj,_openb3d_openb3dcore_ttexture_framebuffer)
		},
		{
			BBDEBUGDECL_FIELD,
			"cube_face",
			"*i",
			.field_offset=offsetof(struct openb3d_openb3dcore_TTexture_obj,_openb3d_openb3dcore_ttexture_cube_face)
		},
		{
			BBDEBUGDECL_FIELD,
			"cube_mode",
			"*i",
			.field_offset=offsetof(struct openb3d_openb3dcore_TTexture_obj,_openb3d_openb3dcore_ttexture_cube_mode)
		},
		{
			BBDEBUGDECL_FIELD,
			"pixmap",
			":TPixmap",
			.field_offset=offsetof(struct openb3d_openb3dcore_TTexture_obj,_openb3d_openb3dcore_ttexture_pixmap)
		},
		{
			BBDEBUGDECL_FIELD,
			"discard",
			"f",
			.field_offset=offsetof(struct openb3d_openb3dcore_TTexture_obj,_openb3d_openb3dcore_ttexture_discard)
		},
		{
			BBDEBUGDECL_FIELD,
			"gltex",
			"*i",
			.field_offset=offsetof(struct openb3d_openb3dcore_TTexture_obj,_openb3d_openb3dcore_ttexture_gltex)
		},
		{
			BBDEBUGDECL_FIELD,
			"no_mipmaps",
			"[]i",
			.field_offset=offsetof(struct openb3d_openb3dcore_TTexture_obj,_openb3d_openb3dcore_ttexture_no_mipmaps)
		},
		{
			BBDEBUGDECL_FIELD,
			"format",
			"*i",
			.field_offset=offsetof(struct openb3d_openb3dcore_TTexture_obj,_openb3d_openb3dcore_ttexture_format)
		},
		{
			BBDEBUGDECL_FIELD,
			"instance",
			"*b",
			.field_offset=offsetof(struct openb3d_openb3dcore_TTexture_obj,_openb3d_openb3dcore_ttexture_instance)
		},
		{
			BBDEBUGDECL_FIELD,
			"exists",
			"i",
			.field_offset=offsetof(struct openb3d_openb3dcore_TTexture_obj,_openb3d_openb3dcore_ttexture_exists)
		},
		{
			BBDEBUGDECL_GLOBAL,
			"tex_list",
			":TList",
			.var_address=(void*)&openb3d_openb3dcore_TTexture_tex_list
		},
		{
			BBDEBUGDECL_GLOBAL,
			"tex_list_all",
			":TList",
			.var_address=(void*)&openb3d_openb3dcore_TTexture_tex_list_all
		},
		{
			BBDEBUGDECL_GLOBAL,
			"is_unique",
			"i",
			.var_address=(void*)&openb3d_openb3dcore_TTexture_is_unique
		},
		{
			BBDEBUGDECL_GLOBAL,
			"AnIsoSupport",
			"*i",
			.var_address=(void*)&openb3d_openb3dcore_TTexture_AnIsoSupport
		},
		{
			BBDEBUGDECL_GLOBAL,
			"global_aniso",
			"*f",
			.var_address=(void*)&openb3d_openb3dcore_TTexture_global_aniso
		},
		{
			BBDEBUGDECL_GLOBAL,
			"tex_map",
			":TPtrMap",
			.var_address=(void*)&openb3d_openb3dcore_TTexture_tex_map
		},
		{
			BBDEBUGDECL_GLOBAL,
			"tex_list_id",
			"i",
			.var_address=(void*)&openb3d_openb3dcore_TTexture_tex_list_id
		},
		{
			BBDEBUGDECL_GLOBAL,
			"tex_list_all_id",
			"i",
			.var_address=(void*)&openb3d_openb3dcore_TTexture_tex_list_all_id
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"New",
			"()i",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_TTexture_New
		},
		{
			BBDEBUGDECL_TYPEFUNCTION,
			"CreateObject",
			"(*b):TTexture",
			.func_ptr=(BBFuncPtr)&openb3d_openb3dcore_TTexture_CreateObject_TTTexture_pb
		},
		{
			BBDEBUGDECL_TYPEFUNCTION,
			"FreeObject",
			"(*b)i",
			.func_ptr=(BBFuncPtr)&openb3d_openb3dcore_TTexture_FreeObject_i_pb
		},
		{
			BBDEBUGDECL_TYPEFUNCTION,
			"GetObject",
			"(*b):TTexture",
			.func_ptr=(BBFuncPtr)&openb3d_openb3dcore_TTexture_GetObject_TTTexture_pb
		},
		{
			BBDEBUGDECL_TYPEFUNCTION,
			"GetInstance",
			"(:TTexture)*b",
			.func_ptr=(BBFuncPtr)&openb3d_openb3dcore_TTexture_GetInstance_pb_TTTexture
		},
		{
			BBDEBUGDECL_TYPEFUNCTION,
			"InitGlobals",
			"()i",
			.func_ptr=(BBFuncPtr)&openb3d_openb3dcore_TTexture_InitGlobals_i
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"InitFields",
			"()i",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_TTexture_InitFields
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"DebugFields",
			"(i,i)i",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_TTexture_DebugFields_ii
		},
		{
			BBDEBUGDECL_TYPEFUNCTION,
			"AddList_",
			"(:TList)i",
			.func_ptr=(BBFuncPtr)&openb3d_openb3dcore_TTexture_AddList__i_TTList
		},
		{
			BBDEBUGDECL_TYPEFUNCTION,
			"CopyList_",
			"(:TList)i",
			.func_ptr=(BBFuncPtr)&openb3d_openb3dcore_TTexture_CopyList__i_TTList
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"TextureListAdd",
			"(:TList)i",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_TTexture_TextureListAdd_TTList
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"TextureListRemove",
			"(:TList)i",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_TTexture_TextureListRemove_TTList
		},
		{
			BBDEBUGDECL_TYPEFUNCTION,
			"NewTexture",
			"():TTexture",
			.func_ptr=(BBFuncPtr)&openb3d_openb3dcore_TTexture_NewTexture_TTTexture
		},
		{
			BBDEBUGDECL_TYPEFUNCTION,
			"Create",
			"():TTexture",
			.func_ptr=(BBFuncPtr)&openb3d_openb3dcore_TTexture_Create_TTTexture
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"CountMipmaps",
			"()i",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_TTexture_CountMipmaps
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"BufferToTex",
			"(*b,i)i",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_TTexture_BufferToTex_pbi
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"TexToBuffer",
			"(*b,i)i",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_TTexture_TexToBuffer_pbi
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"CameraToTex",
			"(:TCamera,i)i",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_TTexture_CameraToTex_TTCamerai
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"DepthBufferToTex",
			"(:TCamera)i",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_TTexture_DepthBufferToTex_TTCamera
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"AlphaDiscard",
			"(f)i",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_TTexture_AlphaDiscard_f
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"TextureFlags",
			"(i)i",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_TTexture_TextureFlags_i
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"TextureGLTexEnvi",
			"(i,i,i)i",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_TTexture_TextureGLTexEnvi_iii
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"TextureGLTexEnvf",
			"(i,i,f)i",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_TTexture_TextureGLTexEnvf_iif
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"GlobalAnIsotropic",
			"(f)i",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_TTexture_GlobalAnIsotropic_f
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"TextureAnIsotropic",
			"(f)i",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_TTexture_TextureAnIsotropic_f
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"TextureMultitex",
			"(f)i",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_TTexture_TextureMultitex_f
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"GetString",
			"(*b)$",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_TTexture_GetString_pb
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"SetString",
			"(*b,$)i",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_TTexture_SetString_pbS
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"CameraToTexEXT",
			"(:TCamera,i)i",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_TTexture_CameraToTexEXT_TTCamerai
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"DepthBufferToTexEXT",
			"(:TCamera,i)i",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_TTexture_DepthBufferToTexEXT_TTCamerai
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"FreeTexture",
			"()i",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_TTexture_FreeTexture
		},
		{
			BBDEBUGDECL_TYPEFUNCTION,
			"CreateTexture",
			"(i,i,i,i):TTexture",
			.func_ptr=(BBFuncPtr)&openb3d_openb3dcore_TTexture_CreateTexture_TTTexture_iiii
		},
		{
			BBDEBUGDECL_TYPEFUNCTION,
			"LoadTexture",
			"($,i,:TTexture):TTexture",
			.func_ptr=(BBFuncPtr)&openb3d_openb3dcore_TTexture_LoadTexture_TTTexture_SiTTTexture
		},
		{
			BBDEBUGDECL_TYPEFUNCTION,
			"LoadAnimTexture",
			"($,i,i,i,i,i,:TTexture):TTexture",
			.func_ptr=(BBFuncPtr)&openb3d_openb3dcore_TTexture_LoadAnimTexture_TTTexture_SiiiiiTTTexture
		},
		{
			BBDEBUGDECL_TYPEFUNCTION,
			"LoadAnimTextureStream",
			"(:Object,i,i,i,i,i,:TTexture):TTexture",
			.func_ptr=(BBFuncPtr)&openb3d_openb3dcore_TTexture_LoadAnimTextureStream_TTTexture_TObjectiiiiiTTTexture
		},
		{
			BBDEBUGDECL_TYPEFUNCTION,
			"LoadCubeMapTextureStream",
			"(:Object,i,i,i,i,i,:TTexture):TTexture",
			.func_ptr=(BBFuncPtr)&openb3d_openb3dcore_TTexture_LoadCubeMapTextureStream_TTTexture_TObjectiiiiiTTTexture
		},
		{
			BBDEBUGDECL_TYPEFUNCTION,
			"FileFind",
			"($)i",
			.func_ptr=(BBFuncPtr)&openb3d_openb3dcore_TTexture_FileFind_i_vS
		},
		{
			BBDEBUGDECL_TYPEFUNCTION,
			"FileAbs",
			"($)$",
			.func_ptr=(BBFuncPtr)&openb3d_openb3dcore_TTexture_FileAbs_S_S
		},
		{
			BBDEBUGDECL_TYPEFUNCTION,
			"AdjustPixmap",
			"(:TPixmap):TPixmap",
			.func_ptr=(BBFuncPtr)&openb3d_openb3dcore_TTexture_AdjustPixmap_TTPixmap_TTPixmap
		},
		{
			BBDEBUGDECL_TYPEFUNCTION,
			"CheckAlpha",
			"(:TPixmap)i",
			.func_ptr=(BBFuncPtr)&openb3d_openb3dcore_TTexture_CheckAlpha_i_TTPixmap
		},
		{
			BBDEBUGDECL_TYPEFUNCTION,
			"ApplyAlpha",
			"(:TPixmap,f):TPixmap",
			.func_ptr=(BBFuncPtr)&openb3d_openb3dcore_TTexture_ApplyAlpha_TTPixmap_vTTPixmapf
		},
		{
			BBDEBUGDECL_TYPEFUNCTION,
			"ApplyMask",
			"(:TPixmap,i,i,i):TPixmap",
			.func_ptr=(BBFuncPtr)&openb3d_openb3dcore_TTexture_ApplyMask_TTPixmap_vTTPixmapiii
		},
		{
			BBDEBUGDECL_TYPEFUNCTION,
			"Pow2Size",
			"(i)i",
			.func_ptr=(BBFuncPtr)&openb3d_openb3dcore_TTexture_Pow2Size_i_i
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"TextureBlend",
			"(i)i",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_TTexture_TextureBlend_i
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"TextureCoords",
			"(i)i",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_TTexture_TextureCoords_i
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"ScaleTexture",
			"(f,f)i",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_TTexture_ScaleTexture_ff
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"PositionTexture",
			"(f,f)i",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_TTexture_PositionTexture_ff
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"RotateTexture",
			"(f)i",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_TTexture_RotateTexture_f
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"TextureWidth",
			"()i",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_TTexture_TextureWidth
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"TextureHeight",
			"()i",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_TTexture_TextureHeight
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"TextureName",
			"()$",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_TTexture_TextureName
		},
		{
			BBDEBUGDECL_TYPEFUNCTION,
			"GetBrushTexture",
			"(:TBrush,i):TTexture",
			.func_ptr=(BBFuncPtr)&openb3d_openb3dcore_TTexture_GetBrushTexture_TTTexture_TTBrushi
		},
		{
			BBDEBUGDECL_TYPEFUNCTION,
			"ClearTextureFilters",
			"()i",
			.func_ptr=(BBFuncPtr)&openb3d_openb3dcore_TTexture_ClearTextureFilters_i
		},
		{
			BBDEBUGDECL_TYPEFUNCTION,
			"TextureFilter",
			"($,i)i",
			.func_ptr=(BBFuncPtr)&openb3d_openb3dcore_TTexture_TextureFilter_i_Si
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"SetCubeFace",
			"(i)i",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_TTexture_SetCubeFace_i
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"SetCubeMode",
			"(i)i",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_TTexture_SetCubeMode_i
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"BackBufferToTex",
			"(i,i,i)i",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_TTexture_BackBufferToTex_iii
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"Copy",
			"(i):TTexture",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_TTexture_Copy_i
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"TexInList",
			"():TTexture",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_TTexture_TexInList
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"FilterFlags",
			"()i",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_TTexture_FilterFlags
		},
		{
			BBDEBUGDECL_END
		}
	}
};
struct BBClass_openb3d_openb3dcore_TTexture openb3d_openb3dcore_TTexture={
	&bbObjectClass,
	bbObjectFree,
	(BBDebugScope*)&openb3d_openb3dcore_TTexture_scope,
	sizeof(struct openb3d_openb3dcore_TTexture_obj),
	(void (*)(BBOBJECT))_openb3d_openb3dcore_TTexture_New,
	(void (*)(BBOBJECT))_openb3d_openb3dcore_TTexture_Delete,
	bbObjectToString,
	bbObjectCompare,
	bbObjectSendMessage,
	0,
	0,
	offsetof(struct openb3d_openb3dcore_TTexture_obj,_openb3d_openb3dcore_ttexture_exists) - offsetof(struct openb3d_openb3dcore_TTexture_obj,_openb3d_openb3dcore_ttexture_texture) + sizeof(BBINT)
	,0
	,offsetof(struct openb3d_openb3dcore_TTexture_obj,_openb3d_openb3dcore_ttexture_texture)
	,openb3d_openb3dcore_TTexture_CreateObject_TTTexture_pb
	,openb3d_openb3dcore_TTexture_FreeObject_i_pb
	,openb3d_openb3dcore_TTexture_GetObject_TTTexture_pb
	,openb3d_openb3dcore_TTexture_GetInstance_pb_TTTexture
	,openb3d_openb3dcore_TTexture_InitGlobals_i
	,_openb3d_openb3dcore_TTexture_InitFields
	,_openb3d_openb3dcore_TTexture_DebugFields_ii
	,openb3d_openb3dcore_TTexture_AddList__i_TTList
	,openb3d_openb3dcore_TTexture_CopyList__i_TTList
	,_openb3d_openb3dcore_TTexture_TextureListAdd_TTList
	,_openb3d_openb3dcore_TTexture_TextureListRemove_TTList
	,openb3d_openb3dcore_TTexture_NewTexture_TTTexture
	,openb3d_openb3dcore_TTexture_Create_TTTexture
	,_openb3d_openb3dcore_TTexture_CountMipmaps
	,_openb3d_openb3dcore_TTexture_BufferToTex_pbi
	,_openb3d_openb3dcore_TTexture_TexToBuffer_pbi
	,_openb3d_openb3dcore_TTexture_CameraToTex_TTCamerai
	,_openb3d_openb3dcore_TTexture_DepthBufferToTex_TTCamera
	,_openb3d_openb3dcore_TTexture_AlphaDiscard_f
	,_openb3d_openb3dcore_TTexture_TextureFlags_i
	,_openb3d_openb3dcore_TTexture_TextureGLTexEnvi_iii
	,_openb3d_openb3dcore_TTexture_TextureGLTexEnvf_iif
	,_openb3d_openb3dcore_TTexture_GlobalAnIsotropic_f
	,_openb3d_openb3dcore_TTexture_TextureAnIsotropic_f
	,_openb3d_openb3dcore_TTexture_TextureMultitex_f
	,_openb3d_openb3dcore_TTexture_GetString_pb
	,_openb3d_openb3dcore_TTexture_SetString_pbS
	,_openb3d_openb3dcore_TTexture_CameraToTexEXT_TTCamerai
	,_openb3d_openb3dcore_TTexture_DepthBufferToTexEXT_TTCamerai
	,_openb3d_openb3dcore_TTexture_FreeTexture
	,openb3d_openb3dcore_TTexture_CreateTexture_TTTexture_iiii
	,openb3d_openb3dcore_TTexture_LoadTexture_TTTexture_SiTTTexture
	,openb3d_openb3dcore_TTexture_LoadAnimTexture_TTTexture_SiiiiiTTTexture
	,openb3d_openb3dcore_TTexture_LoadAnimTextureStream_TTTexture_TObjectiiiiiTTTexture
	,openb3d_openb3dcore_TTexture_LoadCubeMapTextureStream_TTTexture_TObjectiiiiiTTTexture
	,openb3d_openb3dcore_TTexture_FileFind_i_vS
	,openb3d_openb3dcore_TTexture_FileAbs_S_S
	,openb3d_openb3dcore_TTexture_AdjustPixmap_TTPixmap_TTPixmap
	,openb3d_openb3dcore_TTexture_CheckAlpha_i_TTPixmap
	,openb3d_openb3dcore_TTexture_ApplyAlpha_TTPixmap_vTTPixmapf
	,openb3d_openb3dcore_TTexture_ApplyMask_TTPixmap_vTTPixmapiii
	,openb3d_openb3dcore_TTexture_Pow2Size_i_i
	,_openb3d_openb3dcore_TTexture_TextureBlend_i
	,_openb3d_openb3dcore_TTexture_TextureCoords_i
	,_openb3d_openb3dcore_TTexture_ScaleTexture_ff
	,_openb3d_openb3dcore_TTexture_PositionTexture_ff
	,_openb3d_openb3dcore_TTexture_RotateTexture_f
	,_openb3d_openb3dcore_TTexture_TextureWidth
	,_openb3d_openb3dcore_TTexture_TextureHeight
	,_openb3d_openb3dcore_TTexture_TextureName
	,openb3d_openb3dcore_TTexture_GetBrushTexture_TTTexture_TTBrushi
	,openb3d_openb3dcore_TTexture_ClearTextureFilters_i
	,openb3d_openb3dcore_TTexture_TextureFilter_i_Si
	,_openb3d_openb3dcore_TTexture_SetCubeFace_i
	,_openb3d_openb3dcore_TTexture_SetCubeMode_i
	,_openb3d_openb3dcore_TTexture_BackBufferToTex_iii
	,_openb3d_openb3dcore_TTexture_Copy_i
	,_openb3d_openb3dcore_TTexture_TexInList
	,_openb3d_openb3dcore_TTexture_FilterFlags
};

void _openb3d_openb3dcore_TTextureFilter_New(struct openb3d_openb3dcore_TTextureFilter_obj* o) {
	bbObjectCtor((BBOBJECT)o);
	o->clas = &openb3d_openb3dcore_TTextureFilter;
	((struct openb3d_openb3dcore_TTextureFilter_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_ttexturefilter_text = ((BBString*)&bbEmptyString);
	((struct openb3d_openb3dcore_TTextureFilter_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_ttexturefilter_flags = 0;
}
struct brl_linkedlist_TList_obj* openb3d_openb3dcore_TTextureFilter_filter_list;
struct BBDebugScope_4 openb3d_openb3dcore_TTextureFilter_scope ={
	BBDEBUGSCOPE_USERTYPE,
	"TTextureFilter",
	{
		{
			BBDEBUGDECL_FIELD,
			"Text",
			"$",
			.field_offset=offsetof(struct openb3d_openb3dcore_TTextureFilter_obj,_openb3d_openb3dcore_ttexturefilter_text)
		},
		{
			BBDEBUGDECL_FIELD,
			"flags",
			"i",
			.field_offset=offsetof(struct openb3d_openb3dcore_TTextureFilter_obj,_openb3d_openb3dcore_ttexturefilter_flags)
		},
		{
			BBDEBUGDECL_GLOBAL,
			"filter_list",
			":TList",
			.var_address=(void*)&openb3d_openb3dcore_TTextureFilter_filter_list
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"New",
			"()i",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_TTextureFilter_New
		},
		{
			BBDEBUGDECL_END
		}
	}
};
struct BBClass_openb3d_openb3dcore_TTextureFilter openb3d_openb3dcore_TTextureFilter={
	&bbObjectClass,
	bbObjectFree,
	(BBDebugScope*)&openb3d_openb3dcore_TTextureFilter_scope,
	sizeof(struct openb3d_openb3dcore_TTextureFilter_obj),
	(void (*)(BBOBJECT))_openb3d_openb3dcore_TTextureFilter_New,
	bbObjectDtor,
	bbObjectToString,
	bbObjectCompare,
	bbObjectSendMessage,
	0,
	0,
	offsetof(struct openb3d_openb3dcore_TTextureFilter_obj,_openb3d_openb3dcore_ttexturefilter_flags) - offsetof(struct openb3d_openb3dcore_TTextureFilter_obj,_openb3d_openb3dcore_ttexturefilter_text) + sizeof(BBINT)
	,0
	,offsetof(struct openb3d_openb3dcore_TTextureFilter_obj,_openb3d_openb3dcore_ttexturefilter_text)
};

void _openb3d_openb3dcore_TBrush_New(struct openb3d_openb3dcore_TBrush_obj* o) {
	bbObjectCtor((BBOBJECT)o);
	o->clas = &openb3d_openb3dcore_TBrush;
	((struct openb3d_openb3dcore_TBrush_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tbrush_no_texs = 0;
	((struct openb3d_openb3dcore_TBrush_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tbrush_name = 0;
	((struct openb3d_openb3dcore_TBrush_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tbrush_red = 0;
	((struct openb3d_openb3dcore_TBrush_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tbrush_green = 0;
	((struct openb3d_openb3dcore_TBrush_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tbrush_blue = 0;
	((struct openb3d_openb3dcore_TBrush_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tbrush_alpha = 0;
	((struct openb3d_openb3dcore_TBrush_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tbrush_shine = 0;
	((struct openb3d_openb3dcore_TBrush_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tbrush_blend = 0;
	((struct openb3d_openb3dcore_TBrush_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tbrush_fx = 0;
	((struct openb3d_openb3dcore_TBrush_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tbrush_cache_frame = 0;
	((struct openb3d_openb3dcore_TBrush_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tbrush_tex = bbArrayNew1D(":TTexture", 8);
	((struct openb3d_openb3dcore_TBrush_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tbrush_instance = 0;
	((struct openb3d_openb3dcore_TBrush_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tbrush_exists = 0;
	struct BBDebugScope __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"New",
		{
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x3a40a87d4a51b174, 240, 0};
	bbOnDebugEnterStm(&__stmt_0);
	if(openb3d_openb3dcore_TGlobal3D_Log_New!=0){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x3a40a87d4a51b174, 241, 0};
		bbOnDebugEnterStm(&__stmt_0);
		brl_blitz_DebugLog((BBString*)&_s417);
		bbOnDebugLeaveScope();
	}
	bbOnDebugLeaveScope();
}
void _openb3d_openb3dcore_TBrush_Delete(struct openb3d_openb3dcore_TBrush_obj* o) {
	struct BBDebugScope_1 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"Delete",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TBrush",
				.var_address=&o
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x3a40a87d4a51b174, 248, 0};
	bbOnDebugEnterStm(&__stmt_0);
	if(openb3d_openb3dcore_TGlobal3D_Log_Del!=0){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x3a40a87d4a51b174, 249, 0};
		bbOnDebugEnterStm(&__stmt_0);
		brl_blitz_DebugLog((BBString*)&_s418);
		bbOnDebugLeaveScope();
	}
	bbOnDebugLeaveScope();
	bbObjectDtor((BBOBJECT)o);
}
struct openb3d_openb3dcore_TBrush_obj* openb3d_openb3dcore_TBrush_CreateObject_TTBrush_pb(BBBYTE* bbt_inst){
	struct openb3d_openb3dcore_TBrush_obj* bbt_obj=(struct openb3d_openb3dcore_TBrush_obj*)((struct openb3d_openb3dcore_TBrush_obj*)&bbNullObject);
	struct BBDebugScope_2 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"CreateObject",
		{
			{
				BBDEBUGDECL_LOCAL,
				"inst",
				"*b",
				.var_address=&bbt_inst
			},
			{
				BBDEBUGDECL_LOCAL,
				"obj",
				":TBrush",
				.var_address=&bbt_obj
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x3a40a87d4a51b174, 34, 0};
	bbOnDebugEnterStm(&__stmt_0);
	if(bbt_inst==0){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x3a40a87d4a51b174, 34, 0};
		bbOnDebugEnterStm(&__stmt_0);
		bbOnDebugLeaveScope();
		bbOnDebugLeaveScope();
		return (struct openb3d_openb3dcore_TBrush_obj*)&bbNullObject;
	}
	struct BBDebugStm __stmt_1 = {0x3a40a87d4a51b174, 35, 0};
	bbOnDebugEnterStm(&__stmt_1);
	bbt_obj=(struct openb3d_openb3dcore_TBrush_obj*)(struct openb3d_openb3dcore_TBrush_obj*)bbObjectNew((BBClass *)&openb3d_openb3dcore_TBrush);
	struct BBDebugStm __stmt_2 = {0x3a40a87d4a51b174, 37, 0};
	bbOnDebugEnterStm(&__stmt_2);
	((struct brl_map_ptrmap_TPtrMap_obj*)bbNullObjectTest((BBObject*)openb3d_openb3dcore_TBrush_brush_map))->clas->m_Insert_pbTObject((struct brl_map_ptrmap_TPtrMap_obj*)openb3d_openb3dcore_TBrush_brush_map,bbt_inst,(BBOBJECT)bbt_obj);
	struct BBDebugStm __stmt_3 = {0x3a40a87d4a51b174, 41, 0};
	bbOnDebugEnterStm(&__stmt_3);
	((struct openb3d_openb3dcore_TBrush_obj*)bbNullObjectTest((BBObject*)bbt_obj))->_openb3d_openb3dcore_tbrush_instance =bbt_inst;
	struct BBDebugStm __stmt_4 = {0x3a40a87d4a51b174, 42, 0};
	bbOnDebugEnterStm(&__stmt_4);
	((struct openb3d_openb3dcore_TBrush_obj*)bbNullObjectTest((BBObject*)bbt_obj))->clas->m_InitFields((struct openb3d_openb3dcore_TBrush_obj*)bbt_obj);
	struct BBDebugStm __stmt_5 = {0x3a40a87d4a51b174, 43, 0};
	bbOnDebugEnterStm(&__stmt_5);
	bbOnDebugLeaveScope();
	return (struct openb3d_openb3dcore_TBrush_obj*)bbt_obj;
}
BBINT openb3d_openb3dcore_TBrush_FreeObject_i_pb(BBBYTE* bbt_inst){
	struct BBDebugScope_1 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"FreeObject",
		{
			{
				BBDEBUGDECL_LOCAL,
				"inst",
				"*b",
				.var_address=&bbt_inst
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x3a40a87d4a51b174, 50, 0};
	bbOnDebugEnterStm(&__stmt_0);
	((struct brl_map_ptrmap_TPtrMap_obj*)bbNullObjectTest((BBObject*)openb3d_openb3dcore_TBrush_brush_map))->clas->m_Remove_pb((struct brl_map_ptrmap_TPtrMap_obj*)openb3d_openb3dcore_TBrush_brush_map,bbt_inst);
	bbOnDebugLeaveScope();
	return 0;
}
struct openb3d_openb3dcore_TBrush_obj* openb3d_openb3dcore_TBrush_GetObject_TTBrush_pb(BBBYTE* bbt_inst){
	struct BBDebugScope_1 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"GetObject",
		{
			{
				BBDEBUGDECL_LOCAL,
				"inst",
				"*b",
				.var_address=&bbt_inst
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x3a40a87d4a51b174, 60, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbOnDebugLeaveScope();
	return (struct openb3d_openb3dcore_TBrush_obj*)((struct openb3d_openb3dcore_TBrush_obj*)bbObjectDowncast((BBOBJECT)((struct brl_map_ptrmap_TPtrMap_obj*)bbNullObjectTest((BBObject*)openb3d_openb3dcore_TBrush_brush_map))->clas->m_ValueForKey_pb((struct brl_map_ptrmap_TPtrMap_obj*)openb3d_openb3dcore_TBrush_brush_map,bbt_inst),(BBClass*)&openb3d_openb3dcore_TBrush));
}
BBBYTE* openb3d_openb3dcore_TBrush_GetInstance_pb_TTBrush(struct openb3d_openb3dcore_TBrush_obj* bbt_obj){
	struct BBDebugScope_1 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"GetInstance",
		{
			{
				BBDEBUGDECL_LOCAL,
				"obj",
				":TBrush",
				.var_address=&bbt_obj
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x3a40a87d4a51b174, 69, 0};
	bbOnDebugEnterStm(&__stmt_0);
	if(((BBOBJECT)bbt_obj)==&bbNullObject){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x3a40a87d4a51b174, 69, 0};
		bbOnDebugEnterStm(&__stmt_0);
		bbOnDebugLeaveScope();
		bbOnDebugLeaveScope();
		return 0;
	}
	struct BBDebugStm __stmt_1 = {0x3a40a87d4a51b174, 70, 0};
	bbOnDebugEnterStm(&__stmt_1);
	bbOnDebugLeaveScope();
	return ((struct openb3d_openb3dcore_TBrush_obj*)bbNullObjectTest((BBObject*)bbt_obj))->_openb3d_openb3dcore_tbrush_instance ;
}
BBINT _openb3d_openb3dcore_TBrush_InitFields(struct openb3d_openb3dcore_TBrush_obj* o){
	((struct openb3d_openb3dcore_TBrush_obj*)bbNullObjectTest((BBObject*)o));
	struct BBDebugScope_1 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"InitFields",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TBrush",
				.var_address=&o
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x3a40a87d4a51b174, 77, 0};
	bbOnDebugEnterStm(&__stmt_0);
	((struct openb3d_openb3dcore_TBrush_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tbrush_no_texs =BrushInt_(o->clas->f_GetInstance_pb_TTBrush((struct openb3d_openb3dcore_TBrush_obj*)o),1);
	struct BBDebugStm __stmt_1 = {0x3a40a87d4a51b174, 78, 0};
	bbOnDebugEnterStm(&__stmt_1);
	((struct openb3d_openb3dcore_TBrush_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tbrush_blend =BrushInt_(o->clas->f_GetInstance_pb_TTBrush((struct openb3d_openb3dcore_TBrush_obj*)o),8);
	struct BBDebugStm __stmt_2 = {0x3a40a87d4a51b174, 79, 0};
	bbOnDebugEnterStm(&__stmt_2);
	((struct openb3d_openb3dcore_TBrush_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tbrush_fx =BrushInt_(o->clas->f_GetInstance_pb_TTBrush((struct openb3d_openb3dcore_TBrush_obj*)o),9);
	struct BBDebugStm __stmt_3 = {0x3a40a87d4a51b174, 82, 0};
	bbOnDebugEnterStm(&__stmt_3);
	((struct openb3d_openb3dcore_TBrush_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tbrush_cache_frame =BrushUInt_(o->clas->f_GetInstance_pb_TTBrush((struct openb3d_openb3dcore_TBrush_obj*)o),10);
	struct BBDebugStm __stmt_4 = {0x3a40a87d4a51b174, 85, 0};
	bbOnDebugEnterStm(&__stmt_4);
	((struct openb3d_openb3dcore_TBrush_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tbrush_red =BrushFloat_(o->clas->f_GetInstance_pb_TTBrush((struct openb3d_openb3dcore_TBrush_obj*)o),3);
	struct BBDebugStm __stmt_5 = {0x3a40a87d4a51b174, 86, 0};
	bbOnDebugEnterStm(&__stmt_5);
	((struct openb3d_openb3dcore_TBrush_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tbrush_green =BrushFloat_(o->clas->f_GetInstance_pb_TTBrush((struct openb3d_openb3dcore_TBrush_obj*)o),4);
	struct BBDebugStm __stmt_6 = {0x3a40a87d4a51b174, 87, 0};
	bbOnDebugEnterStm(&__stmt_6);
	((struct openb3d_openb3dcore_TBrush_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tbrush_blue =BrushFloat_(o->clas->f_GetInstance_pb_TTBrush((struct openb3d_openb3dcore_TBrush_obj*)o),5);
	struct BBDebugStm __stmt_7 = {0x3a40a87d4a51b174, 88, 0};
	bbOnDebugEnterStm(&__stmt_7);
	((struct openb3d_openb3dcore_TBrush_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tbrush_alpha =BrushFloat_(o->clas->f_GetInstance_pb_TTBrush((struct openb3d_openb3dcore_TBrush_obj*)o),6);
	struct BBDebugStm __stmt_8 = {0x3a40a87d4a51b174, 89, 0};
	bbOnDebugEnterStm(&__stmt_8);
	((struct openb3d_openb3dcore_TBrush_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tbrush_shine =BrushFloat_(o->clas->f_GetInstance_pb_TTBrush((struct openb3d_openb3dcore_TBrush_obj*)o),7);
	struct BBDebugStm __stmt_9 = {0x3a40a87d4a51b174, 92, 0};
	bbOnDebugEnterStm(&__stmt_9);
	((struct openb3d_openb3dcore_TBrush_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tbrush_name =BrushString_(o->clas->f_GetInstance_pb_TTBrush((struct openb3d_openb3dcore_TBrush_obj*)o),2);
	struct BBDebugStm __stmt_10 = {0x3a40a87d4a51b174, 95, 0};
	bbOnDebugEnterStm(&__stmt_10);
	{
		BBINT bbt_id=0;
		for(;(bbt_id<=7);bbt_id=(bbt_id+1)){
			BBBYTE* bbt_inst=0;
			struct BBDebugScope_2 __scope = {
				BBDEBUGSCOPE_LOCALBLOCK,
				0,
				{
					{
						BBDEBUGDECL_LOCAL,
						"id",
						"i",
						.var_address=&bbt_id
					},
					{
						BBDEBUGDECL_LOCAL,
						"inst",
						"*b",
						.var_address=&bbt_inst
					},
					{
						BBDEBUGDECL_END
					}
				}
			};
			bbOnDebugEnterScope((BBDebugScope *)&__scope);
			struct BBDebugStm __stmt_0 = {0x3a40a87d4a51b174, 96, 0};
			bbOnDebugEnterStm(&__stmt_0);
			bbt_inst=BrushTextureArray_(o->clas->f_GetInstance_pb_TTBrush((struct openb3d_openb3dcore_TBrush_obj*)o),11,bbt_id);
			struct BBDebugStm __stmt_1 = {0x3a40a87d4a51b174, 97, 0};
			bbOnDebugEnterStm(&__stmt_1);
			((struct openb3d_openb3dcore_TTexture_obj**)BBARRAYDATAINDEX((((struct openb3d_openb3dcore_TBrush_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tbrush_tex ),(((struct openb3d_openb3dcore_TBrush_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tbrush_tex )->dims,((BBUINT)bbt_id)))[((BBUINT)bbt_id)]=(struct openb3d_openb3dcore_TTexture_obj*)openb3d_openb3dcore_TTexture_GetObject_TTTexture_pb(bbt_inst);
			struct BBDebugStm __stmt_2 = {0x3a40a87d4a51b174, 98, 0};
			bbOnDebugEnterStm(&__stmt_2);
			if((((BBOBJECT)((struct openb3d_openb3dcore_TTexture_obj**)BBARRAYDATAINDEX((((struct openb3d_openb3dcore_TBrush_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tbrush_tex ),(((struct openb3d_openb3dcore_TBrush_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tbrush_tex )->dims,((BBUINT)bbt_id)))[((BBUINT)bbt_id)])==&bbNullObject) && (bbt_inst!=0)){
				struct BBDebugScope __scope = {
					BBDEBUGSCOPE_LOCALBLOCK,
					0,
					{
						{
							BBDEBUGDECL_END
						}
					}
				};
				bbOnDebugEnterScope((BBDebugScope *)&__scope);
				struct BBDebugStm __stmt_0 = {0x3a40a87d4a51b174, 98, 0};
				bbOnDebugEnterStm(&__stmt_0);
				((struct openb3d_openb3dcore_TTexture_obj**)BBARRAYDATAINDEX((((struct openb3d_openb3dcore_TBrush_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tbrush_tex ),(((struct openb3d_openb3dcore_TBrush_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tbrush_tex )->dims,((BBUINT)bbt_id)))[((BBUINT)bbt_id)]=(struct openb3d_openb3dcore_TTexture_obj*)openb3d_openb3dcore_TTexture_CreateObject_TTTexture_pb(bbt_inst);
				bbOnDebugLeaveScope();
			}
			bbOnDebugLeaveScope();
		}
	}
	struct BBDebugStm __stmt_11 = {0x3a40a87d4a51b174, 102, 0};
	bbOnDebugEnterStm(&__stmt_11);
	o->clas->f_CopyList__i_TTList((struct brl_linkedlist_TList_obj*)openb3d_openb3dcore_TBrush_brush_list);
	struct BBDebugStm __stmt_12 = {0x3a40a87d4a51b174, 103, 0};
	bbOnDebugEnterStm(&__stmt_12);
	((struct openb3d_openb3dcore_TBrush_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tbrush_exists =1;
	bbOnDebugLeaveScope();
	return 0;
}
BBINT _openb3d_openb3dcore_TBrush_DebugFields_ii(struct openb3d_openb3dcore_TBrush_obj* o,BBINT bbt_debug_subobjects,BBINT bbt_debug_base_types){
	((struct openb3d_openb3dcore_TBrush_obj*)bbNullObjectTest((BBObject*)o));
	BBSTRING bbt_pad=(&bbEmptyString);
	BBINT bbt_loop=0;
	struct BBDebugScope_5 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"DebugFields",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TBrush",
				.var_address=&o
			},
			{
				BBDEBUGDECL_LOCAL,
				"debug_subobjects",
				"i",
				.var_address=&bbt_debug_subobjects
			},
			{
				BBDEBUGDECL_LOCAL,
				"debug_base_types",
				"i",
				.var_address=&bbt_debug_base_types
			},
			{
				BBDEBUGDECL_LOCAL,
				"pad",
				"$",
				.var_address=&bbt_pad
			},
			{
				BBDEBUGDECL_LOCAL,
				"loop",
				"i",
				.var_address=&bbt_loop
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x3a40a87d4a51b174, 109, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbt_pad=((BBString*)&bbEmptyString);
	struct BBDebugStm __stmt_1 = {0x3a40a87d4a51b174, 110, 0};
	bbOnDebugEnterStm(&__stmt_1);
	bbt_loop=bbt_debug_subobjects;
	struct BBDebugStm __stmt_2 = {0x3a40a87d4a51b174, 111, 0};
	bbOnDebugEnterStm(&__stmt_2);
	if(bbt_debug_base_types>bbt_debug_subobjects){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x3a40a87d4a51b174, 111, 0};
		bbOnDebugEnterStm(&__stmt_0);
		bbt_loop=bbt_debug_base_types;
		bbOnDebugLeaveScope();
	}
	struct BBDebugStm __stmt_3 = {0x3a40a87d4a51b174, 112, 0};
	bbOnDebugEnterStm(&__stmt_3);
	{
		BBINT bbt_i=1;
		BBINT bbt_=bbt_loop;
		for(;(bbt_i<bbt_);bbt_i=(bbt_i+1)){
			struct BBDebugScope_1 __scope = {
				BBDEBUGSCOPE_LOCALBLOCK,
				0,
				{
					{
						BBDEBUGDECL_LOCAL,
						"i",
						"i",
						.var_address=&bbt_i
					},
					{
						BBDEBUGDECL_END
					}
				}
			};
			bbOnDebugEnterScope((BBDebugScope *)&__scope);
			struct BBDebugStm __stmt_0 = {0x3a40a87d4a51b174, 113, 0};
			bbOnDebugEnterStm(&__stmt_0);
			bbt_pad=bbStringConcat(bbt_pad,((BBString*)&_s0));
			bbOnDebugLeaveScope();
		}
	}
	struct BBDebugStm __stmt_4 = {0x3a40a87d4a51b174, 115, 0};
	bbOnDebugEnterStm(&__stmt_4);
	if(bbt_debug_subobjects!=0){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x3a40a87d4a51b174, 115, 0};
		bbOnDebugEnterStm(&__stmt_0);
		bbt_debug_subobjects+=1;
		bbOnDebugLeaveScope();
	}
	struct BBDebugStm __stmt_5 = {0x3a40a87d4a51b174, 116, 0};
	bbOnDebugEnterStm(&__stmt_5);
	if(bbt_debug_base_types!=0){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x3a40a87d4a51b174, 116, 0};
		bbOnDebugEnterStm(&__stmt_0);
		bbt_debug_base_types+=1;
		bbOnDebugLeaveScope();
	}
	struct BBDebugStm __stmt_6 = {0x3a40a87d4a51b174, 117, 0};
	bbOnDebugEnterStm(&__stmt_6);
	brl_blitz_DebugLog(bbStringConcat(bbStringConcat(bbt_pad,((BBString*)&_s404)),openb3d_openb3dcore_StringPtr(o->clas->f_GetInstance_pb_TTBrush((struct openb3d_openb3dcore_TBrush_obj*)o))));
	struct BBDebugStm __stmt_7 = {0x3a40a87d4a51b174, 120, 0};
	bbOnDebugEnterStm(&__stmt_7);
	if(((struct openb3d_openb3dcore_TBrush_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tbrush_no_texs !=0){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x3a40a87d4a51b174, 120, 0};
		bbOnDebugEnterStm(&__stmt_0);
		brl_blitz_DebugLog(bbStringConcat(bbStringConcat(bbt_pad,((BBString*)&_s405)),bbStringFromInt(((struct openb3d_openb3dcore_TBrush_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tbrush_no_texs [0])));
		bbOnDebugLeaveScope();
	}else{
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x3a40a87d4a51b174, 120, 0};
		bbOnDebugEnterStm(&__stmt_0);
		brl_blitz_DebugLog(bbStringConcat(bbt_pad,((BBString*)&_s406)));
		bbOnDebugLeaveScope();
	}
	struct BBDebugStm __stmt_8 = {0x3a40a87d4a51b174, 121, 0};
	bbOnDebugEnterStm(&__stmt_8);
	if(((struct openb3d_openb3dcore_TBrush_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tbrush_blend !=0){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x3a40a87d4a51b174, 121, 0};
		bbOnDebugEnterStm(&__stmt_0);
		brl_blitz_DebugLog(bbStringConcat(bbStringConcat(bbt_pad,((BBString*)&_s364)),bbStringFromInt(((struct openb3d_openb3dcore_TBrush_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tbrush_blend [0])));
		bbOnDebugLeaveScope();
	}else{
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x3a40a87d4a51b174, 121, 0};
		bbOnDebugEnterStm(&__stmt_0);
		brl_blitz_DebugLog(bbStringConcat(bbt_pad,((BBString*)&_s365)));
		bbOnDebugLeaveScope();
	}
	struct BBDebugStm __stmt_9 = {0x3a40a87d4a51b174, 122, 0};
	bbOnDebugEnterStm(&__stmt_9);
	if(((struct openb3d_openb3dcore_TBrush_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tbrush_fx !=0){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x3a40a87d4a51b174, 122, 0};
		bbOnDebugEnterStm(&__stmt_0);
		brl_blitz_DebugLog(bbStringConcat(bbStringConcat(bbt_pad,((BBString*)&_s407)),bbStringFromInt(((struct openb3d_openb3dcore_TBrush_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tbrush_fx [0])));
		bbOnDebugLeaveScope();
	}else{
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x3a40a87d4a51b174, 122, 0};
		bbOnDebugEnterStm(&__stmt_0);
		brl_blitz_DebugLog(bbStringConcat(bbt_pad,((BBString*)&_s408)));
		bbOnDebugLeaveScope();
	}
	struct BBDebugStm __stmt_10 = {0x3a40a87d4a51b174, 125, 0};
	bbOnDebugEnterStm(&__stmt_10);
	brl_blitz_DebugLog(bbStringConcat(bbStringConcat(bbt_pad,((BBString*)&_s409)),openb3d_openb3dcore_StringPtr((BBBYTE*)((struct openb3d_openb3dcore_TBrush_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tbrush_cache_frame )));
	struct BBDebugStm __stmt_11 = {0x3a40a87d4a51b174, 126, 0};
	bbOnDebugEnterStm(&__stmt_11);
	{
		BBINT bbt_id=0;
		for(;(bbt_id<=7);bbt_id=(bbt_id+1)){
			struct BBDebugScope_1 __scope = {
				BBDEBUGSCOPE_LOCALBLOCK,
				0,
				{
					{
						BBDEBUGDECL_LOCAL,
						"id",
						"i",
						.var_address=&bbt_id
					},
					{
						BBDEBUGDECL_END
					}
				}
			};
			bbOnDebugEnterScope((BBDebugScope *)&__scope);
			struct BBDebugStm __stmt_0 = {0x3a40a87d4a51b174, 127, 0};
			bbOnDebugEnterStm(&__stmt_0);
			brl_blitz_DebugLog(bbStringConcat(bbStringConcat(bbStringConcat(bbStringConcat(bbt_pad,((BBString*)&_s410)),bbStringFromInt(bbt_id)),((BBString*)&_s163)),bbStringFromInt(((struct openb3d_openb3dcore_TBrush_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tbrush_cache_frame [bbt_id])));
			bbOnDebugLeaveScope();
		}
	}
	struct BBDebugStm __stmt_12 = {0x3a40a87d4a51b174, 131, 0};
	bbOnDebugEnterStm(&__stmt_12);
	if(((struct openb3d_openb3dcore_TBrush_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tbrush_red !=0){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x3a40a87d4a51b174, 131, 0};
		bbOnDebugEnterStm(&__stmt_0);
		brl_blitz_DebugLog(bbStringConcat(bbStringConcat(bbt_pad,((BBString*)&_s206)),bbStringFromFloat(((struct openb3d_openb3dcore_TBrush_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tbrush_red [0])));
		bbOnDebugLeaveScope();
	}else{
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x3a40a87d4a51b174, 131, 0};
		bbOnDebugEnterStm(&__stmt_0);
		brl_blitz_DebugLog(bbStringConcat(bbt_pad,((BBString*)&_s207)));
		bbOnDebugLeaveScope();
	}
	struct BBDebugStm __stmt_13 = {0x3a40a87d4a51b174, 132, 0};
	bbOnDebugEnterStm(&__stmt_13);
	if(((struct openb3d_openb3dcore_TBrush_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tbrush_green !=0){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x3a40a87d4a51b174, 132, 0};
		bbOnDebugEnterStm(&__stmt_0);
		brl_blitz_DebugLog(bbStringConcat(bbStringConcat(bbt_pad,((BBString*)&_s208)),bbStringFromFloat(((struct openb3d_openb3dcore_TBrush_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tbrush_green [0])));
		bbOnDebugLeaveScope();
	}else{
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x3a40a87d4a51b174, 132, 0};
		bbOnDebugEnterStm(&__stmt_0);
		brl_blitz_DebugLog(bbStringConcat(bbt_pad,((BBString*)&_s209)));
		bbOnDebugLeaveScope();
	}
	struct BBDebugStm __stmt_14 = {0x3a40a87d4a51b174, 133, 0};
	bbOnDebugEnterStm(&__stmt_14);
	if(((struct openb3d_openb3dcore_TBrush_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tbrush_blue !=0){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x3a40a87d4a51b174, 133, 0};
		bbOnDebugEnterStm(&__stmt_0);
		brl_blitz_DebugLog(bbStringConcat(bbStringConcat(bbt_pad,((BBString*)&_s210)),bbStringFromFloat(((struct openb3d_openb3dcore_TBrush_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tbrush_blue [0])));
		bbOnDebugLeaveScope();
	}else{
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x3a40a87d4a51b174, 133, 0};
		bbOnDebugEnterStm(&__stmt_0);
		brl_blitz_DebugLog(bbStringConcat(bbt_pad,((BBString*)&_s211)));
		bbOnDebugLeaveScope();
	}
	struct BBDebugStm __stmt_15 = {0x3a40a87d4a51b174, 134, 0};
	bbOnDebugEnterStm(&__stmt_15);
	if(((struct openb3d_openb3dcore_TBrush_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tbrush_alpha !=0){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x3a40a87d4a51b174, 134, 0};
		bbOnDebugEnterStm(&__stmt_0);
		brl_blitz_DebugLog(bbStringConcat(bbStringConcat(bbt_pad,((BBString*)&_s411)),bbStringFromFloat(((struct openb3d_openb3dcore_TBrush_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tbrush_alpha [0])));
		bbOnDebugLeaveScope();
	}else{
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x3a40a87d4a51b174, 134, 0};
		bbOnDebugEnterStm(&__stmt_0);
		brl_blitz_DebugLog(bbStringConcat(bbt_pad,((BBString*)&_s412)));
		bbOnDebugLeaveScope();
	}
	struct BBDebugStm __stmt_16 = {0x3a40a87d4a51b174, 135, 0};
	bbOnDebugEnterStm(&__stmt_16);
	if(((struct openb3d_openb3dcore_TBrush_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tbrush_shine !=0){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x3a40a87d4a51b174, 135, 0};
		bbOnDebugEnterStm(&__stmt_0);
		brl_blitz_DebugLog(bbStringConcat(bbStringConcat(bbt_pad,((BBString*)&_s413)),bbStringFromFloat(((struct openb3d_openb3dcore_TBrush_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tbrush_shine [0])));
		bbOnDebugLeaveScope();
	}else{
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x3a40a87d4a51b174, 135, 0};
		bbOnDebugEnterStm(&__stmt_0);
		brl_blitz_DebugLog(bbStringConcat(bbt_pad,((BBString*)&_s414)));
		bbOnDebugLeaveScope();
	}
	struct BBDebugStm __stmt_17 = {0x3a40a87d4a51b174, 138, 0};
	bbOnDebugEnterStm(&__stmt_17);
	if(((struct openb3d_openb3dcore_TBrush_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tbrush_name !=0){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x3a40a87d4a51b174, 138, 0};
		bbOnDebugEnterStm(&__stmt_0);
		((struct openb3d_openb3dcore_TBrush_obj*)bbNullObjectTest((BBObject*)o));
		brl_blitz_DebugLog(bbStringConcat(bbStringConcat(bbt_pad,((BBString*)&_s131)),((struct openb3d_openb3dcore_TBrush_obj*)o)->clas->m_GetString_pb((struct openb3d_openb3dcore_TBrush_obj*)o,((struct openb3d_openb3dcore_TBrush_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tbrush_name )));
		bbOnDebugLeaveScope();
	}else{
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x3a40a87d4a51b174, 138, 0};
		bbOnDebugEnterStm(&__stmt_0);
		brl_blitz_DebugLog(bbStringConcat(bbt_pad,((BBString*)&_s132)));
		bbOnDebugLeaveScope();
	}
	struct BBDebugStm __stmt_18 = {0x3a40a87d4a51b174, 141, 0};
	bbOnDebugEnterStm(&__stmt_18);
	{
		BBINT bbt_id2=0;
		for(;(bbt_id2<=7);bbt_id2=(bbt_id2+1)){
			struct BBDebugScope_1 __scope = {
				BBDEBUGSCOPE_LOCALBLOCK,
				0,
				{
					{
						BBDEBUGDECL_LOCAL,
						"id",
						"i",
						.var_address=&bbt_id2
					},
					{
						BBDEBUGDECL_END
					}
				}
			};
			bbOnDebugEnterScope((BBDebugScope *)&__scope);
			struct BBDebugStm __stmt_0 = {0x3a40a87d4a51b174, 142, 0};
			bbOnDebugEnterStm(&__stmt_0);
			if(((BBOBJECT)((struct openb3d_openb3dcore_TTexture_obj**)BBARRAYDATAINDEX((((struct openb3d_openb3dcore_TBrush_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tbrush_tex ),(((struct openb3d_openb3dcore_TBrush_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tbrush_tex )->dims,((BBUINT)bbt_id2)))[((BBUINT)bbt_id2)])!=&bbNullObject){
				struct BBDebugScope __scope = {
					BBDEBUGSCOPE_LOCALBLOCK,
					0,
					{
						{
							BBDEBUGDECL_END
						}
					}
				};
				bbOnDebugEnterScope((BBDebugScope *)&__scope);
				struct BBDebugStm __stmt_0 = {0x3a40a87d4a51b174, 142, 0};
				bbOnDebugEnterStm(&__stmt_0);
				brl_blitz_DebugLog(bbStringConcat(bbStringConcat(bbStringConcat(bbStringConcat(bbt_pad,((BBString*)&_s415)),bbStringFromInt(bbt_id2)),((BBString*)&_s416)),openb3d_openb3dcore_StringPtr(openb3d_openb3dcore_TTexture_GetInstance_pb_TTTexture((struct openb3d_openb3dcore_TTexture_obj*)((struct openb3d_openb3dcore_TTexture_obj**)BBARRAYDATAINDEX((((struct openb3d_openb3dcore_TBrush_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tbrush_tex ),(((struct openb3d_openb3dcore_TBrush_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tbrush_tex )->dims,((BBUINT)bbt_id2)))[((BBUINT)bbt_id2)]))));
				bbOnDebugLeaveScope();
			}
			struct BBDebugStm __stmt_1 = {0x3a40a87d4a51b174, 143, 0};
			bbOnDebugEnterStm(&__stmt_1);
			if((bbt_debug_subobjects!=0) && (((BBOBJECT)((struct openb3d_openb3dcore_TTexture_obj**)BBARRAYDATAINDEX((((struct openb3d_openb3dcore_TBrush_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tbrush_tex ),(((struct openb3d_openb3dcore_TBrush_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tbrush_tex )->dims,((BBUINT)bbt_id2)))[((BBUINT)bbt_id2)])!=&bbNullObject)){
				struct BBDebugScope __scope = {
					BBDEBUGSCOPE_LOCALBLOCK,
					0,
					{
						{
							BBDEBUGDECL_END
						}
					}
				};
				bbOnDebugEnterScope((BBDebugScope *)&__scope);
				struct BBDebugStm __stmt_0 = {0x3a40a87d4a51b174, 143, 0};
				bbOnDebugEnterStm(&__stmt_0);
				struct openb3d_openb3dcore_TTexture_obj* bbt_2;
				(((struct openb3d_openb3dcore_TTexture_obj*)bbNullObjectTest((BBObject*)(bbt_2 = ((struct openb3d_openb3dcore_TTexture_obj**)BBARRAYDATAINDEX((((struct openb3d_openb3dcore_TBrush_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tbrush_tex ),(((struct openb3d_openb3dcore_TBrush_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tbrush_tex )->dims,((BBUINT)bbt_id2)))[((BBUINT)bbt_id2)])))->clas)->m_DebugFields_ii((struct openb3d_openb3dcore_TTexture_obj*)bbt_2,bbt_debug_subobjects,bbt_debug_base_types);
				bbOnDebugLeaveScope();
			}
			bbOnDebugLeaveScope();
		}
	}
	struct BBDebugStm __stmt_19 = {0x3a40a87d4a51b174, 146, 0};
	bbOnDebugEnterStm(&__stmt_19);
	brl_blitz_DebugLog((BBString*)&bbEmptyString);
	bbOnDebugLeaveScope();
	return 0;
}
BBINT openb3d_openb3dcore_TBrush_AddList__i_TTList(struct brl_linkedlist_TList_obj* bbt_list){
	struct BBDebugScope_1 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"AddList_",
		{
			{
				BBDEBUGDECL_LOCAL,
				"list",
				":TList",
				.var_address=&bbt_list
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x3a40a87d4a51b174, 152, 0};
	bbOnDebugEnterStm(&__stmt_0);
	struct brl_linkedlist_TList_obj* bbt_=(struct brl_linkedlist_TList_obj*)bbt_list;
	struct BBDebugStm __stmt_1 = {0x3a40a87d4a51b174, 153, 0};
	bbOnDebugEnterStm(&__stmt_1);
	if(((struct brl_linkedlist_TList_obj*)bbt_)==openb3d_openb3dcore_TBrush_brush_list){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x3a40a87d4a51b174, 154, 0};
		bbOnDebugEnterStm(&__stmt_0);
		if(StaticListSize_(5,12)!=0){
			BBBYTE* bbt_inst=0;
			struct openb3d_openb3dcore_TBrush_obj* bbt_obj=(struct openb3d_openb3dcore_TBrush_obj*)((struct openb3d_openb3dcore_TBrush_obj*)&bbNullObject);
			struct BBDebugScope_2 __scope = {
				BBDEBUGSCOPE_LOCALBLOCK,
				0,
				{
					{
						BBDEBUGDECL_LOCAL,
						"inst",
						"*b",
						.var_address=&bbt_inst
					},
					{
						BBDEBUGDECL_LOCAL,
						"obj",
						":TBrush",
						.var_address=&bbt_obj
					},
					{
						BBDEBUGDECL_END
					}
				}
			};
			bbOnDebugEnterScope((BBDebugScope *)&__scope);
			struct BBDebugStm __stmt_0 = {0x3a40a87d4a51b174, 155, 0};
			bbOnDebugEnterStm(&__stmt_0);
			bbt_inst=StaticIterListBrush_(5,12,(&openb3d_openb3dcore_TBrush_brush_list_id));
			struct BBDebugStm __stmt_1 = {0x3a40a87d4a51b174, 156, 0};
			bbOnDebugEnterStm(&__stmt_1);
			bbt_obj=(struct openb3d_openb3dcore_TBrush_obj*)openb3d_openb3dcore_TBrush_GetObject_TTBrush_pb(bbt_inst);
			struct BBDebugStm __stmt_2 = {0x3a40a87d4a51b174, 157, 0};
			bbOnDebugEnterStm(&__stmt_2);
			if(((BBObject*)bbt_obj)!= &bbNullObject){
				struct BBDebugScope __scope = {
					BBDEBUGSCOPE_LOCALBLOCK,
					0,
					{
						{
							BBDEBUGDECL_END
						}
					}
				};
				bbOnDebugEnterScope((BBDebugScope *)&__scope);
				struct BBDebugStm __stmt_0 = {0x3a40a87d4a51b174, 157, 0};
				bbOnDebugEnterStm(&__stmt_0);
				brl_linkedlist_ListAddLast((struct brl_linkedlist_TList_obj*)bbt_list,(BBOBJECT)bbt_obj);
				bbOnDebugLeaveScope();
			}
			bbOnDebugLeaveScope();
		}
		bbOnDebugLeaveScope();
	}
	bbOnDebugLeaveScope();
	return 0;
}
BBINT openb3d_openb3dcore_TBrush_CopyList__i_TTList(struct brl_linkedlist_TList_obj* bbt_list){
	struct BBDebugScope_1 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"CopyList_",
		{
			{
				BBDEBUGDECL_LOCAL,
				"list",
				":TList",
				.var_address=&bbt_list
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x3a40a87d4a51b174, 165, 0};
	bbOnDebugEnterStm(&__stmt_0);
	brl_linkedlist_ClearList((struct brl_linkedlist_TList_obj*)bbt_list);
	struct BBDebugStm __stmt_1 = {0x3a40a87d4a51b174, 167, 0};
	bbOnDebugEnterStm(&__stmt_1);
	struct brl_linkedlist_TList_obj* bbt_=(struct brl_linkedlist_TList_obj*)bbt_list;
	struct BBDebugStm __stmt_2 = {0x3a40a87d4a51b174, 168, 0};
	bbOnDebugEnterStm(&__stmt_2);
	if(((struct brl_linkedlist_TList_obj*)bbt_)==openb3d_openb3dcore_TBrush_brush_list){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x3a40a87d4a51b174, 169, 0};
		bbOnDebugEnterStm(&__stmt_0);
		openb3d_openb3dcore_TBrush_brush_list_id=0;
		struct BBDebugStm __stmt_1 = {0x3a40a87d4a51b174, 170, 0};
		bbOnDebugEnterStm(&__stmt_1);
		{
			BBINT bbt_id=0;
			BBINT bbt_2=(StaticListSize_(5,12)-1);
			for(;(bbt_id<=bbt_2);bbt_id=(bbt_id+1)){
				BBBYTE* bbt_inst=0;
				struct openb3d_openb3dcore_TBrush_obj* bbt_obj=(struct openb3d_openb3dcore_TBrush_obj*)((struct openb3d_openb3dcore_TBrush_obj*)&bbNullObject);
				struct BBDebugScope_3 __scope = {
					BBDEBUGSCOPE_LOCALBLOCK,
					0,
					{
						{
							BBDEBUGDECL_LOCAL,
							"id",
							"i",
							.var_address=&bbt_id
						},
						{
							BBDEBUGDECL_LOCAL,
							"inst",
							"*b",
							.var_address=&bbt_inst
						},
						{
							BBDEBUGDECL_LOCAL,
							"obj",
							":TBrush",
							.var_address=&bbt_obj
						},
						{
							BBDEBUGDECL_END
						}
					}
				};
				bbOnDebugEnterScope((BBDebugScope *)&__scope);
				struct BBDebugStm __stmt_0 = {0x3a40a87d4a51b174, 171, 0};
				bbOnDebugEnterStm(&__stmt_0);
				bbt_inst=StaticIterListBrush_(5,12,(&openb3d_openb3dcore_TBrush_brush_list_id));
				struct BBDebugStm __stmt_1 = {0x3a40a87d4a51b174, 172, 0};
				bbOnDebugEnterStm(&__stmt_1);
				bbt_obj=(struct openb3d_openb3dcore_TBrush_obj*)openb3d_openb3dcore_TBrush_GetObject_TTBrush_pb(bbt_inst);
				struct BBDebugStm __stmt_2 = {0x3a40a87d4a51b174, 173, 0};
				bbOnDebugEnterStm(&__stmt_2);
				if(((BBObject*)bbt_obj)!= &bbNullObject){
					struct BBDebugScope __scope = {
						BBDEBUGSCOPE_LOCALBLOCK,
						0,
						{
							{
								BBDEBUGDECL_END
							}
						}
					};
					bbOnDebugEnterScope((BBDebugScope *)&__scope);
					struct BBDebugStm __stmt_0 = {0x3a40a87d4a51b174, 173, 0};
					bbOnDebugEnterStm(&__stmt_0);
					brl_linkedlist_ListAddLast((struct brl_linkedlist_TList_obj*)bbt_list,(BBOBJECT)bbt_obj);
					bbOnDebugLeaveScope();
				}
				bbOnDebugLeaveScope();
			}
		}
		bbOnDebugLeaveScope();
	}
	bbOnDebugLeaveScope();
	return 0;
}
BBINT _openb3d_openb3dcore_TBrush_FreeBrushTextures(struct openb3d_openb3dcore_TBrush_obj* o){
	((struct openb3d_openb3dcore_TBrush_obj*)bbNullObjectTest((BBObject*)o));
	struct BBDebugScope_1 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"FreeBrushTextures",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TBrush",
				.var_address=&o
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x3a40a87d4a51b174, 184, 0};
	bbOnDebugEnterStm(&__stmt_0);
	{
		BBINT bbt_id=0;
		for(;(bbt_id<=7);bbt_id=(bbt_id+1)){
			struct BBDebugScope_1 __scope = {
				BBDEBUGSCOPE_LOCALBLOCK,
				0,
				{
					{
						BBDEBUGDECL_LOCAL,
						"id",
						"i",
						.var_address=&bbt_id
					},
					{
						BBDEBUGDECL_END
					}
				}
			};
			bbOnDebugEnterScope((BBDebugScope *)&__scope);
			struct BBDebugStm __stmt_0 = {0x3a40a87d4a51b174, 185, 0};
			bbOnDebugEnterStm(&__stmt_0);
			if(((BBOBJECT)((struct openb3d_openb3dcore_TTexture_obj**)BBARRAYDATAINDEX((((struct openb3d_openb3dcore_TBrush_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tbrush_tex ),(((struct openb3d_openb3dcore_TBrush_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tbrush_tex )->dims,((BBUINT)bbt_id)))[((BBUINT)bbt_id)])!=&bbNullObject){
				struct BBDebugScope __scope = {
					BBDEBUGSCOPE_LOCALBLOCK,
					0,
					{
						{
							BBDEBUGDECL_END
						}
					}
				};
				bbOnDebugEnterScope((BBDebugScope *)&__scope);
				struct BBDebugStm __stmt_0 = {0x3a40a87d4a51b174, 185, 0};
				bbOnDebugEnterStm(&__stmt_0);
				struct openb3d_openb3dcore_TTexture_obj* bbt_;
				(((struct openb3d_openb3dcore_TTexture_obj*)bbNullObjectTest((BBObject*)(bbt_ = ((struct openb3d_openb3dcore_TTexture_obj**)BBARRAYDATAINDEX((((struct openb3d_openb3dcore_TBrush_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tbrush_tex ),(((struct openb3d_openb3dcore_TBrush_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tbrush_tex )->dims,((BBUINT)bbt_id)))[((BBUINT)bbt_id)])))->clas)->m_FreeTexture((struct openb3d_openb3dcore_TTexture_obj*)bbt_);
				bbOnDebugLeaveScope();
			}
			bbOnDebugLeaveScope();
		}
	}
	bbOnDebugLeaveScope();
	return 0;
}
BBSTRING _openb3d_openb3dcore_TBrush_GetString_pb(struct openb3d_openb3dcore_TBrush_obj* o,BBBYTE* bbt_str){
	((struct openb3d_openb3dcore_TBrush_obj*)bbNullObjectTest((BBObject*)o));
	struct BBDebugScope_2 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"GetString",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TBrush",
				.var_address=&o
			},
			{
				BBDEBUGDECL_LOCAL,
				"str",
				"*b",
				.var_address=&bbt_str
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x3a40a87d4a51b174, 193, 0};
	bbOnDebugEnterStm(&__stmt_0);
	BBBYTE* bbt_=bbt_str;
	struct BBDebugStm __stmt_1 = {0x3a40a87d4a51b174, 194, 0};
	bbOnDebugEnterStm(&__stmt_1);
	if(bbt_==((struct openb3d_openb3dcore_TBrush_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tbrush_name ){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x3a40a87d4a51b174, 195, 0};
		bbOnDebugEnterStm(&__stmt_0);
		bbOnDebugLeaveScope();
		bbOnDebugLeaveScope();
		return bbStringFromCString(BrushString_(o->clas->f_GetInstance_pb_TTBrush((struct openb3d_openb3dcore_TBrush_obj*)o),2));
	}
	bbOnDebugLeaveScope();
	return ((BBString*)&bbEmptyString);
}
BBINT _openb3d_openb3dcore_TBrush_SetString_pbS(struct openb3d_openb3dcore_TBrush_obj* o,BBBYTE* bbt_strPtr,BBSTRING bbt_strValue){
	((struct openb3d_openb3dcore_TBrush_obj*)bbNullObjectTest((BBObject*)o));
	struct BBDebugScope_3 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"SetString",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TBrush",
				.var_address=&o
			},
			{
				BBDEBUGDECL_LOCAL,
				"strPtr",
				"*b",
				.var_address=&bbt_strPtr
			},
			{
				BBDEBUGDECL_LOCAL,
				"strValue",
				"$",
				.var_address=&bbt_strValue
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x3a40a87d4a51b174, 203, 0};
	bbOnDebugEnterStm(&__stmt_0);
	BBBYTE* bbt_=bbt_strPtr;
	struct BBDebugStm __stmt_1 = {0x3a40a87d4a51b174, 204, 0};
	bbOnDebugEnterStm(&__stmt_1);
	if(bbt_==((struct openb3d_openb3dcore_TBrush_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tbrush_name ){
		BBBYTE* bbt_cString=0;
		struct BBDebugScope_1 __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_LOCAL,
					"cString",
					"*b",
					.var_address=&bbt_cString
				},
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x3a40a87d4a51b174, 205, 0};
		bbOnDebugEnterStm(&__stmt_0);
		bbt_cString=bbStringToCString((BBSTRING)bbt_strValue);
		struct BBDebugStm __stmt_1 = {0x3a40a87d4a51b174, 206, 0};
		bbOnDebugEnterStm(&__stmt_1);
		SetBrushString_(o->clas->f_GetInstance_pb_TTBrush((struct openb3d_openb3dcore_TBrush_obj*)o),2,bbt_cString);
		struct BBDebugStm __stmt_2 = {0x3a40a87d4a51b174, 207, 0};
		bbOnDebugEnterStm(&__stmt_2);
		bbMemFree((void*)bbt_cString);
		struct BBDebugStm __stmt_3 = {0x3a40a87d4a51b174, 208, 0};
		bbOnDebugEnterStm(&__stmt_3);
		((struct openb3d_openb3dcore_TBrush_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tbrush_name =BrushString_(o->clas->f_GetInstance_pb_TTBrush((struct openb3d_openb3dcore_TBrush_obj*)o),2);
		bbOnDebugLeaveScope();
	}
	bbOnDebugLeaveScope();
	return 0;
}
BBINT _openb3d_openb3dcore_TBrush_BrushGLColor_ffff(struct openb3d_openb3dcore_TBrush_obj* o,BBFLOAT bbt_r,BBFLOAT bbt_g,BBFLOAT bbt_b,BBFLOAT bbt_a){
	((struct openb3d_openb3dcore_TBrush_obj*)bbNullObjectTest((BBObject*)o));
	struct BBDebugScope_5 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"BrushGLColor",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TBrush",
				.var_address=&o
			},
			{
				BBDEBUGDECL_LOCAL,
				"r",
				"f",
				.var_address=&bbt_r
			},
			{
				BBDEBUGDECL_LOCAL,
				"g",
				"f",
				.var_address=&bbt_g
			},
			{
				BBDEBUGDECL_LOCAL,
				"b",
				"f",
				.var_address=&bbt_b
			},
			{
				BBDEBUGDECL_LOCAL,
				"a",
				"f",
				.var_address=&bbt_a
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x3a40a87d4a51b174, 216, 0};
	bbOnDebugEnterStm(&__stmt_0);
	BrushGLColor_(o->clas->f_GetInstance_pb_TTBrush((struct openb3d_openb3dcore_TBrush_obj*)o),bbt_r,bbt_g,bbt_b,bbt_a);
	bbOnDebugLeaveScope();
	return 0;
}
BBINT _openb3d_openb3dcore_TBrush_BrushGLBlendFunc_ii(struct openb3d_openb3dcore_TBrush_obj* o,BBINT bbt_sfactor,BBINT bbt_dfactor){
	((struct openb3d_openb3dcore_TBrush_obj*)bbNullObjectTest((BBObject*)o));
	struct BBDebugScope_3 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"BrushGLBlendFunc",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TBrush",
				.var_address=&o
			},
			{
				BBDEBUGDECL_LOCAL,
				"sfactor",
				"i",
				.var_address=&bbt_sfactor
			},
			{
				BBDEBUGDECL_LOCAL,
				"dfactor",
				"i",
				.var_address=&bbt_dfactor
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x3a40a87d4a51b174, 223, 0};
	bbOnDebugEnterStm(&__stmt_0);
	BrushGLBlendFunc_(o->clas->f_GetInstance_pb_TTBrush((struct openb3d_openb3dcore_TBrush_obj*)o),bbt_sfactor,bbt_dfactor);
	bbOnDebugLeaveScope();
	return 0;
}
struct openb3d_openb3dcore_TTexture_obj* _openb3d_openb3dcore_TBrush_GetBrushTexture_i(struct openb3d_openb3dcore_TBrush_obj* o,BBINT bbt_index){
	((struct openb3d_openb3dcore_TBrush_obj*)bbNullObjectTest((BBObject*)o));
	BBBYTE* bbt_inst=0;
	struct BBDebugScope_3 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"GetBrushTexture",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TBrush",
				.var_address=&o
			},
			{
				BBDEBUGDECL_LOCAL,
				"index",
				"i",
				.var_address=&bbt_index
			},
			{
				BBDEBUGDECL_LOCAL,
				"inst",
				"*b",
				.var_address=&bbt_inst
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x3a40a87d4a51b174, 231, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbt_inst=GetBrushTexture_(o->clas->f_GetInstance_pb_TTBrush((struct openb3d_openb3dcore_TBrush_obj*)o),bbt_index);
	struct BBDebugStm __stmt_1 = {0x3a40a87d4a51b174, 232, 0};
	bbOnDebugEnterStm(&__stmt_1);
	bbOnDebugLeaveScope();
	return (struct openb3d_openb3dcore_TTexture_obj*)openb3d_openb3dcore_TTexture_GetObject_TTTexture_pb(bbt_inst);
}
BBINT _openb3d_openb3dcore_TBrush_FreeBrush(struct openb3d_openb3dcore_TBrush_obj* o){
	((struct openb3d_openb3dcore_TBrush_obj*)bbNullObjectTest((BBObject*)o));
	struct BBDebugScope_1 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"FreeBrush",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TBrush",
				.var_address=&o
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x3a40a87d4a51b174, 257, 0};
	bbOnDebugEnterStm(&__stmt_0);
	if(((struct openb3d_openb3dcore_TBrush_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tbrush_exists !=0){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x3a40a87d4a51b174, 258, 0};
		bbOnDebugEnterStm(&__stmt_0);
		((struct openb3d_openb3dcore_TBrush_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tbrush_exists =0;
		struct BBDebugStm __stmt_1 = {0x3a40a87d4a51b174, 259, 0};
		bbOnDebugEnterStm(&__stmt_1);
		brl_linkedlist_ListRemove((struct brl_linkedlist_TList_obj*)openb3d_openb3dcore_TBrush_brush_list,(BBOBJECT)o);
		struct BBDebugStm __stmt_2 = {0x3a40a87d4a51b174, 259, 0};
		bbOnDebugEnterStm(&__stmt_2);
		openb3d_openb3dcore_TBrush_brush_list_id-=1;
		struct BBDebugStm __stmt_3 = {0x3a40a87d4a51b174, 261, 0};
		bbOnDebugEnterStm(&__stmt_3);
		FreeBrush_(o->clas->f_GetInstance_pb_TTBrush((struct openb3d_openb3dcore_TBrush_obj*)o));
		struct BBDebugStm __stmt_4 = {0x3a40a87d4a51b174, 262, 0};
		bbOnDebugEnterStm(&__stmt_4);
		o->clas->f_FreeObject_i_pb(o->clas->f_GetInstance_pb_TTBrush((struct openb3d_openb3dcore_TBrush_obj*)o));
		bbOnDebugLeaveScope();
	}
	bbOnDebugLeaveScope();
	return 0;
}
struct openb3d_openb3dcore_TBrush_obj* openb3d_openb3dcore_TBrush_CreateBrush_TTBrush_fff(BBFLOAT bbt_r,BBFLOAT bbt_g,BBFLOAT bbt_b){
	BBBYTE* bbt_inst=0;
	struct BBDebugScope_4 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"CreateBrush",
		{
			{
				BBDEBUGDECL_LOCAL,
				"r",
				"f",
				.var_address=&bbt_r
			},
			{
				BBDEBUGDECL_LOCAL,
				"g",
				"f",
				.var_address=&bbt_g
			},
			{
				BBDEBUGDECL_LOCAL,
				"b",
				"f",
				.var_address=&bbt_b
			},
			{
				BBDEBUGDECL_LOCAL,
				"inst",
				"*b",
				.var_address=&bbt_inst
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x3a40a87d4a51b174, 269, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbt_inst=CreateBrush_(bbt_r,bbt_g,bbt_b);
	struct BBDebugStm __stmt_1 = {0x3a40a87d4a51b174, 270, 0};
	bbOnDebugEnterStm(&__stmt_1);
	bbOnDebugLeaveScope();
	return (struct openb3d_openb3dcore_TBrush_obj*)openb3d_openb3dcore_TBrush_CreateObject_TTBrush_pb(bbt_inst);
}
struct openb3d_openb3dcore_TBrush_obj* openb3d_openb3dcore_TBrush_LoadBrush_TTBrush_Siff(BBSTRING bbt_file,BBINT bbt_flags,BBFLOAT bbt_u_scale,BBFLOAT bbt_v_scale){
	BBBYTE* bbt_cString=0;
	BBBYTE* bbt_inst=0;
	struct openb3d_openb3dcore_TBrush_obj* bbt_brush=(struct openb3d_openb3dcore_TBrush_obj*)((struct openb3d_openb3dcore_TBrush_obj*)&bbNullObject);
	struct BBDebugScope_7 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"LoadBrush",
		{
			{
				BBDEBUGDECL_LOCAL,
				"file",
				"$",
				.var_address=&bbt_file
			},
			{
				BBDEBUGDECL_LOCAL,
				"flags",
				"i",
				.var_address=&bbt_flags
			},
			{
				BBDEBUGDECL_LOCAL,
				"u_scale",
				"f",
				.var_address=&bbt_u_scale
			},
			{
				BBDEBUGDECL_LOCAL,
				"v_scale",
				"f",
				.var_address=&bbt_v_scale
			},
			{
				BBDEBUGDECL_LOCAL,
				"cString",
				"*b",
				.var_address=&bbt_cString
			},
			{
				BBDEBUGDECL_LOCAL,
				"inst",
				"*b",
				.var_address=&bbt_inst
			},
			{
				BBDEBUGDECL_LOCAL,
				"brush",
				":TBrush",
				.var_address=&bbt_brush
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x3a40a87d4a51b174, 276, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbt_cString=bbStringToCString((BBSTRING)bbt_file);
	struct BBDebugStm __stmt_1 = {0x3a40a87d4a51b174, 277, 0};
	bbOnDebugEnterStm(&__stmt_1);
	bbt_inst=LoadBrush_(bbt_cString,bbt_flags,bbt_u_scale,bbt_v_scale);
	struct BBDebugStm __stmt_2 = {0x3a40a87d4a51b174, 278, 0};
	bbOnDebugEnterStm(&__stmt_2);
	bbt_brush=(struct openb3d_openb3dcore_TBrush_obj*)openb3d_openb3dcore_TBrush_CreateObject_TTBrush_pb(bbt_inst);
	struct BBDebugStm __stmt_3 = {0x3a40a87d4a51b174, 279, 0};
	bbOnDebugEnterStm(&__stmt_3);
	bbMemFree((void*)bbt_cString);
	struct BBDebugStm __stmt_4 = {0x3a40a87d4a51b174, 280, 0};
	bbOnDebugEnterStm(&__stmt_4);
	bbOnDebugLeaveScope();
	return (struct openb3d_openb3dcore_TBrush_obj*)bbt_brush;
}
BBINT _openb3d_openb3dcore_TBrush_BrushColor_fff(struct openb3d_openb3dcore_TBrush_obj* o,BBFLOAT bbt_r,BBFLOAT bbt_g,BBFLOAT bbt_b){
	((struct openb3d_openb3dcore_TBrush_obj*)bbNullObjectTest((BBObject*)o));
	struct BBDebugScope_4 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"BrushColor",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TBrush",
				.var_address=&o
			},
			{
				BBDEBUGDECL_LOCAL,
				"r",
				"f",
				.var_address=&bbt_r
			},
			{
				BBDEBUGDECL_LOCAL,
				"g",
				"f",
				.var_address=&bbt_g
			},
			{
				BBDEBUGDECL_LOCAL,
				"b",
				"f",
				.var_address=&bbt_b
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x3a40a87d4a51b174, 286, 0};
	bbOnDebugEnterStm(&__stmt_0);
	BrushColor_(o->clas->f_GetInstance_pb_TTBrush((struct openb3d_openb3dcore_TBrush_obj*)o),bbt_r,bbt_g,bbt_b);
	bbOnDebugLeaveScope();
	return 0;
}
BBINT _openb3d_openb3dcore_TBrush_BrushAlpha_f(struct openb3d_openb3dcore_TBrush_obj* o,BBFLOAT bbt_a){
	((struct openb3d_openb3dcore_TBrush_obj*)bbNullObjectTest((BBObject*)o));
	struct BBDebugScope_2 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"BrushAlpha",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TBrush",
				.var_address=&o
			},
			{
				BBDEBUGDECL_LOCAL,
				"a",
				"f",
				.var_address=&bbt_a
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x3a40a87d4a51b174, 292, 0};
	bbOnDebugEnterStm(&__stmt_0);
	BrushAlpha_(o->clas->f_GetInstance_pb_TTBrush((struct openb3d_openb3dcore_TBrush_obj*)o),bbt_a);
	bbOnDebugLeaveScope();
	return 0;
}
BBINT _openb3d_openb3dcore_TBrush_BrushShininess_f(struct openb3d_openb3dcore_TBrush_obj* o,BBFLOAT bbt_s){
	((struct openb3d_openb3dcore_TBrush_obj*)bbNullObjectTest((BBObject*)o));
	struct BBDebugScope_2 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"BrushShininess",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TBrush",
				.var_address=&o
			},
			{
				BBDEBUGDECL_LOCAL,
				"s",
				"f",
				.var_address=&bbt_s
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x3a40a87d4a51b174, 298, 0};
	bbOnDebugEnterStm(&__stmt_0);
	BrushShininess_(o->clas->f_GetInstance_pb_TTBrush((struct openb3d_openb3dcore_TBrush_obj*)o),bbt_s);
	bbOnDebugLeaveScope();
	return 0;
}
BBINT _openb3d_openb3dcore_TBrush_BrushTexture_TTTextureii(struct openb3d_openb3dcore_TBrush_obj* o,struct openb3d_openb3dcore_TTexture_obj* bbt_texture,BBINT bbt_frame,BBINT bbt_index){
	((struct openb3d_openb3dcore_TBrush_obj*)bbNullObjectTest((BBObject*)o));
	struct BBDebugScope_4 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"BrushTexture",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TBrush",
				.var_address=&o
			},
			{
				BBDEBUGDECL_LOCAL,
				"texture",
				":TTexture",
				.var_address=&bbt_texture
			},
			{
				BBDEBUGDECL_LOCAL,
				"frame",
				"i",
				.var_address=&bbt_frame
			},
			{
				BBDEBUGDECL_LOCAL,
				"index",
				"i",
				.var_address=&bbt_index
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x3a40a87d4a51b174, 304, 0};
	bbOnDebugEnterStm(&__stmt_0);
	BrushTexture_(o->clas->f_GetInstance_pb_TTBrush((struct openb3d_openb3dcore_TBrush_obj*)o),openb3d_openb3dcore_TTexture_GetInstance_pb_TTTexture((struct openb3d_openb3dcore_TTexture_obj*)bbt_texture),bbt_frame,bbt_index);
	struct BBDebugStm __stmt_1 = {0x3a40a87d4a51b174, 306, 0};
	bbOnDebugEnterStm(&__stmt_1);
	((struct openb3d_openb3dcore_TTexture_obj**)BBARRAYDATAINDEX((((struct openb3d_openb3dcore_TBrush_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tbrush_tex ),(((struct openb3d_openb3dcore_TBrush_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tbrush_tex )->dims,((BBUINT)bbt_index)))[((BBUINT)bbt_index)]=(struct openb3d_openb3dcore_TTexture_obj*)bbt_texture;
	bbOnDebugLeaveScope();
	return 0;
}
BBINT _openb3d_openb3dcore_TBrush_BrushBlend_i(struct openb3d_openb3dcore_TBrush_obj* o,BBINT bbt_blend){
	((struct openb3d_openb3dcore_TBrush_obj*)bbNullObjectTest((BBObject*)o));
	struct BBDebugScope_2 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"BrushBlend",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TBrush",
				.var_address=&o
			},
			{
				BBDEBUGDECL_LOCAL,
				"blend",
				"i",
				.var_address=&bbt_blend
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x3a40a87d4a51b174, 312, 0};
	bbOnDebugEnterStm(&__stmt_0);
	BrushBlend_(o->clas->f_GetInstance_pb_TTBrush((struct openb3d_openb3dcore_TBrush_obj*)o),bbt_blend);
	bbOnDebugLeaveScope();
	return 0;
}
BBINT _openb3d_openb3dcore_TBrush_BrushFX_i(struct openb3d_openb3dcore_TBrush_obj* o,BBINT bbt_fx){
	((struct openb3d_openb3dcore_TBrush_obj*)bbNullObjectTest((BBObject*)o));
	struct BBDebugScope_2 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"BrushFX",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TBrush",
				.var_address=&o
			},
			{
				BBDEBUGDECL_LOCAL,
				"fx",
				"i",
				.var_address=&bbt_fx
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x3a40a87d4a51b174, 318, 0};
	bbOnDebugEnterStm(&__stmt_0);
	BrushFX_(o->clas->f_GetInstance_pb_TTBrush((struct openb3d_openb3dcore_TBrush_obj*)o),bbt_fx);
	bbOnDebugLeaveScope();
	return 0;
}
struct openb3d_openb3dcore_TBrush_obj* openb3d_openb3dcore_TBrush_GetEntityBrush_TTBrush_TTEntity(struct openb3d_openb3dcore_TEntity_obj* bbt_ent){
	BBBYTE* bbt_inst=0;
	struct openb3d_openb3dcore_TBrush_obj* bbt_brush=(struct openb3d_openb3dcore_TBrush_obj*)((struct openb3d_openb3dcore_TBrush_obj*)&bbNullObject);
	struct BBDebugScope_3 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"GetEntityBrush",
		{
			{
				BBDEBUGDECL_LOCAL,
				"ent",
				":TEntity",
				.var_address=&bbt_ent
			},
			{
				BBDEBUGDECL_LOCAL,
				"inst",
				"*b",
				.var_address=&bbt_inst
			},
			{
				BBDEBUGDECL_LOCAL,
				"brush",
				":TBrush",
				.var_address=&bbt_brush
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x3a40a87d4a51b174, 324, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbt_inst=GetEntityBrush_(openb3d_openb3dcore_TEntity_GetInstance_pb_TTEntity((struct openb3d_openb3dcore_TEntity_obj*)bbt_ent));
	struct BBDebugStm __stmt_1 = {0x3a40a87d4a51b174, 325, 0};
	bbOnDebugEnterStm(&__stmt_1);
	bbt_brush=(struct openb3d_openb3dcore_TBrush_obj*)openb3d_openb3dcore_TBrush_GetObject_TTBrush_pb(bbt_inst);
	struct BBDebugStm __stmt_2 = {0x3a40a87d4a51b174, 326, 0};
	bbOnDebugEnterStm(&__stmt_2);
	if((((BBOBJECT)bbt_brush)==&bbNullObject) && (bbt_inst!=0)){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x3a40a87d4a51b174, 326, 0};
		bbOnDebugEnterStm(&__stmt_0);
		bbt_brush=(struct openb3d_openb3dcore_TBrush_obj*)openb3d_openb3dcore_TBrush_CreateObject_TTBrush_pb(bbt_inst);
		bbOnDebugLeaveScope();
	}
	struct BBDebugStm __stmt_3 = {0x3a40a87d4a51b174, 327, 0};
	bbOnDebugEnterStm(&__stmt_3);
	bbOnDebugLeaveScope();
	return (struct openb3d_openb3dcore_TBrush_obj*)bbt_brush;
}
struct openb3d_openb3dcore_TBrush_obj* openb3d_openb3dcore_TBrush_GetSurfaceBrush_TTBrush_TTSurface(struct openb3d_openb3dcore_TSurface_obj* bbt_surf){
	BBBYTE* bbt_inst=0;
	struct openb3d_openb3dcore_TBrush_obj* bbt_brush=(struct openb3d_openb3dcore_TBrush_obj*)((struct openb3d_openb3dcore_TBrush_obj*)&bbNullObject);
	struct BBDebugScope_3 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"GetSurfaceBrush",
		{
			{
				BBDEBUGDECL_LOCAL,
				"surf",
				":TSurface",
				.var_address=&bbt_surf
			},
			{
				BBDEBUGDECL_LOCAL,
				"inst",
				"*b",
				.var_address=&bbt_inst
			},
			{
				BBDEBUGDECL_LOCAL,
				"brush",
				":TBrush",
				.var_address=&bbt_brush
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x3a40a87d4a51b174, 333, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbt_inst=GetSurfaceBrush_(openb3d_openb3dcore_TSurface_GetInstance_pb_TTSurface((struct openb3d_openb3dcore_TSurface_obj*)bbt_surf));
	struct BBDebugStm __stmt_1 = {0x3a40a87d4a51b174, 334, 0};
	bbOnDebugEnterStm(&__stmt_1);
	bbt_brush=(struct openb3d_openb3dcore_TBrush_obj*)openb3d_openb3dcore_TBrush_GetObject_TTBrush_pb(bbt_inst);
	struct BBDebugStm __stmt_2 = {0x3a40a87d4a51b174, 335, 0};
	bbOnDebugEnterStm(&__stmt_2);
	if((((BBOBJECT)bbt_brush)==&bbNullObject) && (bbt_inst!=0)){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x3a40a87d4a51b174, 335, 0};
		bbOnDebugEnterStm(&__stmt_0);
		bbt_brush=(struct openb3d_openb3dcore_TBrush_obj*)openb3d_openb3dcore_TBrush_CreateObject_TTBrush_pb(bbt_inst);
		bbOnDebugLeaveScope();
	}
	struct BBDebugStm __stmt_3 = {0x3a40a87d4a51b174, 336, 0};
	bbOnDebugEnterStm(&__stmt_3);
	bbOnDebugLeaveScope();
	return (struct openb3d_openb3dcore_TBrush_obj*)bbt_brush;
}
struct openb3d_openb3dcore_TBrush_obj* _openb3d_openb3dcore_TBrush_Copy(struct openb3d_openb3dcore_TBrush_obj* o){
	((struct openb3d_openb3dcore_TBrush_obj*)bbNullObjectTest((BBObject*)o));
	BBBYTE* bbt_inst=0;
	struct BBDebugScope_2 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"Copy",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TBrush",
				.var_address=&o
			},
			{
				BBDEBUGDECL_LOCAL,
				"inst",
				"*b",
				.var_address=&bbt_inst
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x3a40a87d4a51b174, 344, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbt_inst=BrushCopy_(o->clas->f_GetInstance_pb_TTBrush((struct openb3d_openb3dcore_TBrush_obj*)o));
	struct BBDebugStm __stmt_1 = {0x3a40a87d4a51b174, 345, 0};
	bbOnDebugEnterStm(&__stmt_1);
	bbOnDebugLeaveScope();
	return (struct openb3d_openb3dcore_TBrush_obj*)o->clas->f_CreateObject_TTBrush_pb(bbt_inst);
}
BBINT openb3d_openb3dcore_TBrush_CompareBrushes_i_TTBrushTTBrush(struct openb3d_openb3dcore_TBrush_obj* bbt_brush1,struct openb3d_openb3dcore_TBrush_obj* bbt_brush2){
	struct BBDebugScope_2 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"CompareBrushes",
		{
			{
				BBDEBUGDECL_LOCAL,
				"brush1",
				":TBrush",
				.var_address=&bbt_brush1
			},
			{
				BBDEBUGDECL_LOCAL,
				"brush2",
				":TBrush",
				.var_address=&bbt_brush2
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x3a40a87d4a51b174, 352, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbOnDebugLeaveScope();
	return CompareBrushes_(openb3d_openb3dcore_TBrush_GetInstance_pb_TTBrush((struct openb3d_openb3dcore_TBrush_obj*)bbt_brush1),openb3d_openb3dcore_TBrush_GetInstance_pb_TTBrush((struct openb3d_openb3dcore_TBrush_obj*)bbt_brush2));
}
struct brl_map_ptrmap_TPtrMap_obj* openb3d_openb3dcore_TBrush_brush_map;
struct brl_linkedlist_TList_obj* openb3d_openb3dcore_TBrush_brush_list;
BBINT openb3d_openb3dcore_TBrush_brush_list_id;
struct BBDebugScope_44 openb3d_openb3dcore_TBrush_scope ={
	BBDEBUGSCOPE_USERTYPE,
	"TBrush",
	{
		{
			BBDEBUGDECL_FIELD,
			"no_texs",
			"*i",
			.field_offset=offsetof(struct openb3d_openb3dcore_TBrush_obj,_openb3d_openb3dcore_tbrush_no_texs)
		},
		{
			BBDEBUGDECL_FIELD,
			"name",
			"*b",
			.field_offset=offsetof(struct openb3d_openb3dcore_TBrush_obj,_openb3d_openb3dcore_tbrush_name)
		},
		{
			BBDEBUGDECL_FIELD,
			"red",
			"*f",
			.field_offset=offsetof(struct openb3d_openb3dcore_TBrush_obj,_openb3d_openb3dcore_tbrush_red)
		},
		{
			BBDEBUGDECL_FIELD,
			"green",
			"*f",
			.field_offset=offsetof(struct openb3d_openb3dcore_TBrush_obj,_openb3d_openb3dcore_tbrush_green)
		},
		{
			BBDEBUGDECL_FIELD,
			"blue",
			"*f",
			.field_offset=offsetof(struct openb3d_openb3dcore_TBrush_obj,_openb3d_openb3dcore_tbrush_blue)
		},
		{
			BBDEBUGDECL_FIELD,
			"alpha",
			"*f",
			.field_offset=offsetof(struct openb3d_openb3dcore_TBrush_obj,_openb3d_openb3dcore_tbrush_alpha)
		},
		{
			BBDEBUGDECL_FIELD,
			"shine",
			"*f",
			.field_offset=offsetof(struct openb3d_openb3dcore_TBrush_obj,_openb3d_openb3dcore_tbrush_shine)
		},
		{
			BBDEBUGDECL_FIELD,
			"blend",
			"*i",
			.field_offset=offsetof(struct openb3d_openb3dcore_TBrush_obj,_openb3d_openb3dcore_tbrush_blend)
		},
		{
			BBDEBUGDECL_FIELD,
			"fx",
			"*i",
			.field_offset=offsetof(struct openb3d_openb3dcore_TBrush_obj,_openb3d_openb3dcore_tbrush_fx)
		},
		{
			BBDEBUGDECL_FIELD,
			"cache_frame",
			"*i",
			.field_offset=offsetof(struct openb3d_openb3dcore_TBrush_obj,_openb3d_openb3dcore_tbrush_cache_frame)
		},
		{
			BBDEBUGDECL_FIELD,
			"tex",
			"[]:TTexture",
			.field_offset=offsetof(struct openb3d_openb3dcore_TBrush_obj,_openb3d_openb3dcore_tbrush_tex)
		},
		{
			BBDEBUGDECL_FIELD,
			"instance",
			"*b",
			.field_offset=offsetof(struct openb3d_openb3dcore_TBrush_obj,_openb3d_openb3dcore_tbrush_instance)
		},
		{
			BBDEBUGDECL_FIELD,
			"exists",
			"i",
			.field_offset=offsetof(struct openb3d_openb3dcore_TBrush_obj,_openb3d_openb3dcore_tbrush_exists)
		},
		{
			BBDEBUGDECL_GLOBAL,
			"brush_list",
			":TList",
			.var_address=(void*)&openb3d_openb3dcore_TBrush_brush_list
		},
		{
			BBDEBUGDECL_GLOBAL,
			"brush_map",
			":TPtrMap",
			.var_address=(void*)&openb3d_openb3dcore_TBrush_brush_map
		},
		{
			BBDEBUGDECL_GLOBAL,
			"brush_list_id",
			"i",
			.var_address=(void*)&openb3d_openb3dcore_TBrush_brush_list_id
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"New",
			"()i",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_TBrush_New
		},
		{
			BBDEBUGDECL_TYPEFUNCTION,
			"CreateObject",
			"(*b):TBrush",
			.func_ptr=(BBFuncPtr)&openb3d_openb3dcore_TBrush_CreateObject_TTBrush_pb
		},
		{
			BBDEBUGDECL_TYPEFUNCTION,
			"FreeObject",
			"(*b)i",
			.func_ptr=(BBFuncPtr)&openb3d_openb3dcore_TBrush_FreeObject_i_pb
		},
		{
			BBDEBUGDECL_TYPEFUNCTION,
			"GetObject",
			"(*b):TBrush",
			.func_ptr=(BBFuncPtr)&openb3d_openb3dcore_TBrush_GetObject_TTBrush_pb
		},
		{
			BBDEBUGDECL_TYPEFUNCTION,
			"GetInstance",
			"(:TBrush)*b",
			.func_ptr=(BBFuncPtr)&openb3d_openb3dcore_TBrush_GetInstance_pb_TTBrush
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"InitFields",
			"()i",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_TBrush_InitFields
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"DebugFields",
			"(i,i)i",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_TBrush_DebugFields_ii
		},
		{
			BBDEBUGDECL_TYPEFUNCTION,
			"AddList_",
			"(:TList)i",
			.func_ptr=(BBFuncPtr)&openb3d_openb3dcore_TBrush_AddList__i_TTList
		},
		{
			BBDEBUGDECL_TYPEFUNCTION,
			"CopyList_",
			"(:TList)i",
			.func_ptr=(BBFuncPtr)&openb3d_openb3dcore_TBrush_CopyList__i_TTList
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"FreeBrushTextures",
			"()i",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_TBrush_FreeBrushTextures
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"GetString",
			"(*b)$",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_TBrush_GetString_pb
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"SetString",
			"(*b,$)i",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_TBrush_SetString_pbS
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"BrushGLColor",
			"(f,f,f,f)i",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_TBrush_BrushGLColor_ffff
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"BrushGLBlendFunc",
			"(i,i)i",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_TBrush_BrushGLBlendFunc_ii
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"GetBrushTexture",
			"(i):TTexture",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_TBrush_GetBrushTexture_i
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"FreeBrush",
			"()i",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_TBrush_FreeBrush
		},
		{
			BBDEBUGDECL_TYPEFUNCTION,
			"CreateBrush",
			"(f,f,f):TBrush",
			.func_ptr=(BBFuncPtr)&openb3d_openb3dcore_TBrush_CreateBrush_TTBrush_fff
		},
		{
			BBDEBUGDECL_TYPEFUNCTION,
			"LoadBrush",
			"($,i,f,f):TBrush",
			.func_ptr=(BBFuncPtr)&openb3d_openb3dcore_TBrush_LoadBrush_TTBrush_Siff
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"BrushColor",
			"(f,f,f)i",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_TBrush_BrushColor_fff
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"BrushAlpha",
			"(f)i",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_TBrush_BrushAlpha_f
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"BrushShininess",
			"(f)i",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_TBrush_BrushShininess_f
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"BrushTexture",
			"(:TTexture,i,i)i",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_TBrush_BrushTexture_TTTextureii
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"BrushBlend",
			"(i)i",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_TBrush_BrushBlend_i
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"BrushFX",
			"(i)i",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_TBrush_BrushFX_i
		},
		{
			BBDEBUGDECL_TYPEFUNCTION,
			"GetEntityBrush",
			"(:TEntity):TBrush",
			.func_ptr=(BBFuncPtr)&openb3d_openb3dcore_TBrush_GetEntityBrush_TTBrush_TTEntity
		},
		{
			BBDEBUGDECL_TYPEFUNCTION,
			"GetSurfaceBrush",
			"(:TSurface):TBrush",
			.func_ptr=(BBFuncPtr)&openb3d_openb3dcore_TBrush_GetSurfaceBrush_TTBrush_TTSurface
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"Copy",
			"():TBrush",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_TBrush_Copy
		},
		{
			BBDEBUGDECL_TYPEFUNCTION,
			"CompareBrushes",
			"(:TBrush,:TBrush)i",
			.func_ptr=(BBFuncPtr)&openb3d_openb3dcore_TBrush_CompareBrushes_i_TTBrushTTBrush
		},
		{
			BBDEBUGDECL_END
		}
	}
};
struct BBClass_openb3d_openb3dcore_TBrush openb3d_openb3dcore_TBrush={
	&bbObjectClass,
	bbObjectFree,
	(BBDebugScope*)&openb3d_openb3dcore_TBrush_scope,
	sizeof(struct openb3d_openb3dcore_TBrush_obj),
	(void (*)(BBOBJECT))_openb3d_openb3dcore_TBrush_New,
	(void (*)(BBOBJECT))_openb3d_openb3dcore_TBrush_Delete,
	bbObjectToString,
	bbObjectCompare,
	bbObjectSendMessage,
	0,
	0,
	offsetof(struct openb3d_openb3dcore_TBrush_obj,_openb3d_openb3dcore_tbrush_exists) - offsetof(struct openb3d_openb3dcore_TBrush_obj,_openb3d_openb3dcore_tbrush_no_texs) + sizeof(BBINT)
	,0
	,offsetof(struct openb3d_openb3dcore_TBrush_obj,_openb3d_openb3dcore_tbrush_no_texs)
	,openb3d_openb3dcore_TBrush_CreateObject_TTBrush_pb
	,openb3d_openb3dcore_TBrush_FreeObject_i_pb
	,openb3d_openb3dcore_TBrush_GetObject_TTBrush_pb
	,openb3d_openb3dcore_TBrush_GetInstance_pb_TTBrush
	,_openb3d_openb3dcore_TBrush_InitFields
	,_openb3d_openb3dcore_TBrush_DebugFields_ii
	,openb3d_openb3dcore_TBrush_AddList__i_TTList
	,openb3d_openb3dcore_TBrush_CopyList__i_TTList
	,_openb3d_openb3dcore_TBrush_FreeBrushTextures
	,_openb3d_openb3dcore_TBrush_GetString_pb
	,_openb3d_openb3dcore_TBrush_SetString_pbS
	,_openb3d_openb3dcore_TBrush_BrushGLColor_ffff
	,_openb3d_openb3dcore_TBrush_BrushGLBlendFunc_ii
	,_openb3d_openb3dcore_TBrush_GetBrushTexture_i
	,_openb3d_openb3dcore_TBrush_FreeBrush
	,openb3d_openb3dcore_TBrush_CreateBrush_TTBrush_fff
	,openb3d_openb3dcore_TBrush_LoadBrush_TTBrush_Siff
	,_openb3d_openb3dcore_TBrush_BrushColor_fff
	,_openb3d_openb3dcore_TBrush_BrushAlpha_f
	,_openb3d_openb3dcore_TBrush_BrushShininess_f
	,_openb3d_openb3dcore_TBrush_BrushTexture_TTTextureii
	,_openb3d_openb3dcore_TBrush_BrushBlend_i
	,_openb3d_openb3dcore_TBrush_BrushFX_i
	,openb3d_openb3dcore_TBrush_GetEntityBrush_TTBrush_TTEntity
	,openb3d_openb3dcore_TBrush_GetSurfaceBrush_TTBrush_TTSurface
	,_openb3d_openb3dcore_TBrush_Copy
	,openb3d_openb3dcore_TBrush_CompareBrushes_i_TTBrushTTBrush
};

void _openb3d_openb3dcore_TAnimation_New(struct openb3d_openb3dcore_TAnimation_obj* o) {
	bbObjectCtor((BBOBJECT)o);
	o->clas = &openb3d_openb3dcore_TAnimation;
}
BBINT openb3d_openb3dcore_TAnimation_AnimateMesh3_i_TTEntity(struct openb3d_openb3dcore_TEntity_obj* bbt_ent1){
	struct BBDebugScope_1 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"AnimateMesh3",
		{
			{
				BBDEBUGDECL_LOCAL,
				"ent1",
				":TEntity",
				.var_address=&bbt_ent1
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0xd16b7323a39515ed, 9, 0};
	bbOnDebugEnterStm(&__stmt_0);
	AnimateMesh3_(openb3d_openb3dcore_TEntity_GetInstance_pb_TTEntity((struct openb3d_openb3dcore_TEntity_obj*)bbt_ent1));
	bbOnDebugLeaveScope();
	return 0;
}
BBINT openb3d_openb3dcore_TAnimation_AnimateMesh_i_TTEntityfii(struct openb3d_openb3dcore_TEntity_obj* bbt_ent1,BBFLOAT bbt_framef,BBINT bbt_start_frame,BBINT bbt_end_frame){
	struct BBDebugScope_4 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"AnimateMesh",
		{
			{
				BBDEBUGDECL_LOCAL,
				"ent1",
				":TEntity",
				.var_address=&bbt_ent1
			},
			{
				BBDEBUGDECL_LOCAL,
				"framef",
				"f",
				.var_address=&bbt_framef
			},
			{
				BBDEBUGDECL_LOCAL,
				"start_frame",
				"i",
				.var_address=&bbt_start_frame
			},
			{
				BBDEBUGDECL_LOCAL,
				"end_frame",
				"i",
				.var_address=&bbt_end_frame
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0xd16b7323a39515ed, 19, 0};
	bbOnDebugEnterStm(&__stmt_0);
	AnimateMesh_(openb3d_openb3dcore_TEntity_GetInstance_pb_TTEntity((struct openb3d_openb3dcore_TEntity_obj*)bbt_ent1),bbt_framef,bbt_start_frame,bbt_end_frame);
	bbOnDebugLeaveScope();
	return 0;
}
BBINT openb3d_openb3dcore_TAnimation_AnimateMesh2_i_TTEntityfii(struct openb3d_openb3dcore_TEntity_obj* bbt_ent1,BBFLOAT bbt_framef,BBINT bbt_start_frame,BBINT bbt_end_frame){
	struct BBDebugScope_4 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"AnimateMesh2",
		{
			{
				BBDEBUGDECL_LOCAL,
				"ent1",
				":TEntity",
				.var_address=&bbt_ent1
			},
			{
				BBDEBUGDECL_LOCAL,
				"framef",
				"f",
				.var_address=&bbt_framef
			},
			{
				BBDEBUGDECL_LOCAL,
				"start_frame",
				"i",
				.var_address=&bbt_start_frame
			},
			{
				BBDEBUGDECL_LOCAL,
				"end_frame",
				"i",
				.var_address=&bbt_end_frame
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0xd16b7323a39515ed, 28, 0};
	bbOnDebugEnterStm(&__stmt_0);
	AnimateMesh2_(openb3d_openb3dcore_TEntity_GetInstance_pb_TTEntity((struct openb3d_openb3dcore_TEntity_obj*)bbt_ent1),bbt_framef,bbt_start_frame,bbt_end_frame);
	bbOnDebugLeaveScope();
	return 0;
}
BBINT openb3d_openb3dcore_TAnimation_VertexDeform_i_TTMesh(struct openb3d_openb3dcore_TMesh_obj* bbt_ent){
	struct BBDebugScope_1 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"VertexDeform",
		{
			{
				BBDEBUGDECL_LOCAL,
				"ent",
				":TMesh",
				.var_address=&bbt_ent
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0xd16b7323a39515ed, 35, 0};
	bbOnDebugEnterStm(&__stmt_0);
	VertexDeform_(openb3d_openb3dcore_TEntity_GetInstance_pb_TTEntity((struct openb3d_openb3dcore_TEntity_obj*)((struct openb3d_openb3dcore_TEntity_obj*)bbObjectDowncast((BBOBJECT)bbt_ent,(BBClass*)&openb3d_openb3dcore_TEntity))));
	bbOnDebugLeaveScope();
	return 0;
}
struct BBDebugScope_5 openb3d_openb3dcore_TAnimation_scope ={
	BBDEBUGSCOPE_USERTYPE,
	"TAnimation",
	{
		{
			BBDEBUGDECL_TYPEMETHOD,
			"New",
			"()i",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_TAnimation_New
		},
		{
			BBDEBUGDECL_TYPEFUNCTION,
			"AnimateMesh3",
			"(:TEntity)i",
			.func_ptr=(BBFuncPtr)&openb3d_openb3dcore_TAnimation_AnimateMesh3_i_TTEntity
		},
		{
			BBDEBUGDECL_TYPEFUNCTION,
			"AnimateMesh",
			"(:TEntity,f,i,i)i",
			.func_ptr=(BBFuncPtr)&openb3d_openb3dcore_TAnimation_AnimateMesh_i_TTEntityfii
		},
		{
			BBDEBUGDECL_TYPEFUNCTION,
			"AnimateMesh2",
			"(:TEntity,f,i,i)i",
			.func_ptr=(BBFuncPtr)&openb3d_openb3dcore_TAnimation_AnimateMesh2_i_TTEntityfii
		},
		{
			BBDEBUGDECL_TYPEFUNCTION,
			"VertexDeform",
			"(:TMesh)i",
			.func_ptr=(BBFuncPtr)&openb3d_openb3dcore_TAnimation_VertexDeform_i_TTMesh
		},
		{
			BBDEBUGDECL_END
		}
	}
};
struct BBClass_openb3d_openb3dcore_TAnimation openb3d_openb3dcore_TAnimation={
	&bbObjectClass,
	bbObjectFree,
	(BBDebugScope*)&openb3d_openb3dcore_TAnimation_scope,
	sizeof(struct openb3d_openb3dcore_TAnimation_obj),
	(void (*)(BBOBJECT))_openb3d_openb3dcore_TAnimation_New,
	bbObjectDtor,
	bbObjectToString,
	bbObjectCompare,
	bbObjectSendMessage,
	0,
	0,
	0
	,0
	,sizeof(void*)
	,openb3d_openb3dcore_TAnimation_AnimateMesh3_i_TTEntity
	,openb3d_openb3dcore_TAnimation_AnimateMesh_i_TTEntityfii
	,openb3d_openb3dcore_TAnimation_AnimateMesh2_i_TTEntityfii
	,openb3d_openb3dcore_TAnimation_VertexDeform_i_TTMesh
};

void _openb3d_openb3dcore_TAnimationKeys_New(struct openb3d_openb3dcore_TAnimationKeys_obj* o) {
	bbObjectCtor((BBOBJECT)o);
	o->clas = &openb3d_openb3dcore_TAnimationKeys;
	((struct openb3d_openb3dcore_TAnimationKeys_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tanimationkeys_frames = 0;
	((struct openb3d_openb3dcore_TAnimationKeys_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tanimationkeys_flags = 0;
	((struct openb3d_openb3dcore_TAnimationKeys_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tanimationkeys_px = 0;
	((struct openb3d_openb3dcore_TAnimationKeys_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tanimationkeys_py = 0;
	((struct openb3d_openb3dcore_TAnimationKeys_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tanimationkeys_pz = 0;
	((struct openb3d_openb3dcore_TAnimationKeys_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tanimationkeys_sx = 0;
	((struct openb3d_openb3dcore_TAnimationKeys_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tanimationkeys_sy = 0;
	((struct openb3d_openb3dcore_TAnimationKeys_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tanimationkeys_sz = 0;
	((struct openb3d_openb3dcore_TAnimationKeys_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tanimationkeys_qw = 0;
	((struct openb3d_openb3dcore_TAnimationKeys_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tanimationkeys_qx = 0;
	((struct openb3d_openb3dcore_TAnimationKeys_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tanimationkeys_qy = 0;
	((struct openb3d_openb3dcore_TAnimationKeys_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tanimationkeys_qz = 0;
	((struct openb3d_openb3dcore_TAnimationKeys_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tanimationkeys_instance = 0;
	struct BBDebugScope __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"New",
		{
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0xd16b7323a39515ed, 248, 0};
	bbOnDebugEnterStm(&__stmt_0);
	if(openb3d_openb3dcore_TGlobal3D_Log_New!=0){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0xd16b7323a39515ed, 249, 0};
		bbOnDebugEnterStm(&__stmt_0);
		brl_blitz_DebugLog((BBString*)&_s432);
		bbOnDebugLeaveScope();
	}
	bbOnDebugLeaveScope();
}
void _openb3d_openb3dcore_TAnimationKeys_Delete(struct openb3d_openb3dcore_TAnimationKeys_obj* o) {
	struct BBDebugScope_1 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"Delete",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TAnimationKeys",
				.var_address=&o
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0xd16b7323a39515ed, 256, 0};
	bbOnDebugEnterStm(&__stmt_0);
	if(openb3d_openb3dcore_TGlobal3D_Log_Del!=0){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0xd16b7323a39515ed, 257, 0};
		bbOnDebugEnterStm(&__stmt_0);
		brl_blitz_DebugLog((BBString*)&_s433);
		bbOnDebugLeaveScope();
	}
	bbOnDebugLeaveScope();
	bbObjectDtor((BBOBJECT)o);
}
struct openb3d_openb3dcore_TAnimationKeys_obj* openb3d_openb3dcore_TAnimationKeys_CreateObject_TTAnimationKeys_pb(BBBYTE* bbt_inst){
	struct openb3d_openb3dcore_TAnimationKeys_obj* bbt_obj=(struct openb3d_openb3dcore_TAnimationKeys_obj*)((struct openb3d_openb3dcore_TAnimationKeys_obj*)&bbNullObject);
	struct BBDebugScope_2 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"CreateObject",
		{
			{
				BBDEBUGDECL_LOCAL,
				"inst",
				"*b",
				.var_address=&bbt_inst
			},
			{
				BBDEBUGDECL_LOCAL,
				"obj",
				":TAnimationKeys",
				.var_address=&bbt_obj
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0xd16b7323a39515ed, 79, 0};
	bbOnDebugEnterStm(&__stmt_0);
	if(bbt_inst==0){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0xd16b7323a39515ed, 79, 0};
		bbOnDebugEnterStm(&__stmt_0);
		bbOnDebugLeaveScope();
		bbOnDebugLeaveScope();
		return (struct openb3d_openb3dcore_TAnimationKeys_obj*)&bbNullObject;
	}
	struct BBDebugStm __stmt_1 = {0xd16b7323a39515ed, 80, 0};
	bbOnDebugEnterStm(&__stmt_1);
	bbt_obj=(struct openb3d_openb3dcore_TAnimationKeys_obj*)(struct openb3d_openb3dcore_TAnimationKeys_obj*)bbObjectAtomicNew((BBClass *)&openb3d_openb3dcore_TAnimationKeys);
	struct BBDebugStm __stmt_2 = {0xd16b7323a39515ed, 82, 0};
	bbOnDebugEnterStm(&__stmt_2);
	((struct brl_map_ptrmap_TPtrMap_obj*)bbNullObjectTest((BBObject*)openb3d_openb3dcore_TAnimationKeys_animkeys_map))->clas->m_Insert_pbTObject((struct brl_map_ptrmap_TPtrMap_obj*)openb3d_openb3dcore_TAnimationKeys_animkeys_map,bbt_inst,(BBOBJECT)bbt_obj);
	struct BBDebugStm __stmt_3 = {0xd16b7323a39515ed, 86, 0};
	bbOnDebugEnterStm(&__stmt_3);
	((struct openb3d_openb3dcore_TAnimationKeys_obj*)bbNullObjectTest((BBObject*)bbt_obj))->_openb3d_openb3dcore_tanimationkeys_instance =bbt_inst;
	struct BBDebugStm __stmt_4 = {0xd16b7323a39515ed, 87, 0};
	bbOnDebugEnterStm(&__stmt_4);
	((struct openb3d_openb3dcore_TAnimationKeys_obj*)bbNullObjectTest((BBObject*)bbt_obj))->clas->m_InitFields((struct openb3d_openb3dcore_TAnimationKeys_obj*)bbt_obj);
	struct BBDebugStm __stmt_5 = {0xd16b7323a39515ed, 88, 0};
	bbOnDebugEnterStm(&__stmt_5);
	bbOnDebugLeaveScope();
	return (struct openb3d_openb3dcore_TAnimationKeys_obj*)bbt_obj;
}
BBINT openb3d_openb3dcore_TAnimationKeys_FreeObject_i_pb(BBBYTE* bbt_inst){
	struct BBDebugScope_1 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"FreeObject",
		{
			{
				BBDEBUGDECL_LOCAL,
				"inst",
				"*b",
				.var_address=&bbt_inst
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0xd16b7323a39515ed, 95, 0};
	bbOnDebugEnterStm(&__stmt_0);
	((struct brl_map_ptrmap_TPtrMap_obj*)bbNullObjectTest((BBObject*)openb3d_openb3dcore_TAnimationKeys_animkeys_map))->clas->m_Remove_pb((struct brl_map_ptrmap_TPtrMap_obj*)openb3d_openb3dcore_TAnimationKeys_animkeys_map,bbt_inst);
	bbOnDebugLeaveScope();
	return 0;
}
struct openb3d_openb3dcore_TAnimationKeys_obj* openb3d_openb3dcore_TAnimationKeys_GetObject_TTAnimationKeys_pb(BBBYTE* bbt_inst){
	struct BBDebugScope_1 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"GetObject",
		{
			{
				BBDEBUGDECL_LOCAL,
				"inst",
				"*b",
				.var_address=&bbt_inst
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0xd16b7323a39515ed, 105, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbOnDebugLeaveScope();
	return (struct openb3d_openb3dcore_TAnimationKeys_obj*)((struct openb3d_openb3dcore_TAnimationKeys_obj*)bbObjectDowncast((BBOBJECT)((struct brl_map_ptrmap_TPtrMap_obj*)bbNullObjectTest((BBObject*)openb3d_openb3dcore_TAnimationKeys_animkeys_map))->clas->m_ValueForKey_pb((struct brl_map_ptrmap_TPtrMap_obj*)openb3d_openb3dcore_TAnimationKeys_animkeys_map,bbt_inst),(BBClass*)&openb3d_openb3dcore_TAnimationKeys));
}
BBBYTE* openb3d_openb3dcore_TAnimationKeys_GetInstance_pb_TTAnimationKeys(struct openb3d_openb3dcore_TAnimationKeys_obj* bbt_obj){
	struct BBDebugScope_1 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"GetInstance",
		{
			{
				BBDEBUGDECL_LOCAL,
				"obj",
				":TAnimationKeys",
				.var_address=&bbt_obj
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0xd16b7323a39515ed, 114, 0};
	bbOnDebugEnterStm(&__stmt_0);
	if(((BBOBJECT)bbt_obj)==&bbNullObject){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0xd16b7323a39515ed, 114, 0};
		bbOnDebugEnterStm(&__stmt_0);
		bbOnDebugLeaveScope();
		bbOnDebugLeaveScope();
		return 0;
	}
	struct BBDebugStm __stmt_1 = {0xd16b7323a39515ed, 115, 0};
	bbOnDebugEnterStm(&__stmt_1);
	bbOnDebugLeaveScope();
	return ((struct openb3d_openb3dcore_TAnimationKeys_obj*)bbNullObjectTest((BBObject*)bbt_obj))->_openb3d_openb3dcore_tanimationkeys_instance ;
}
BBINT _openb3d_openb3dcore_TAnimationKeys_InitFields(struct openb3d_openb3dcore_TAnimationKeys_obj* o){
	((struct openb3d_openb3dcore_TAnimationKeys_obj*)bbNullObjectTest((BBObject*)o));
	struct BBDebugScope_1 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"InitFields",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TAnimationKeys",
				.var_address=&o
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0xd16b7323a39515ed, 122, 0};
	bbOnDebugEnterStm(&__stmt_0);
	((struct openb3d_openb3dcore_TAnimationKeys_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tanimationkeys_frames =AnimationKeysInt_(o->clas->f_GetInstance_pb_TTAnimationKeys((struct openb3d_openb3dcore_TAnimationKeys_obj*)o),1);
	struct BBDebugStm __stmt_1 = {0xd16b7323a39515ed, 123, 0};
	bbOnDebugEnterStm(&__stmt_1);
	((struct openb3d_openb3dcore_TAnimationKeys_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tanimationkeys_flags =AnimationKeysInt_(o->clas->f_GetInstance_pb_TTAnimationKeys((struct openb3d_openb3dcore_TAnimationKeys_obj*)o),2);
	struct BBDebugStm __stmt_2 = {0xd16b7323a39515ed, 126, 0};
	bbOnDebugEnterStm(&__stmt_2);
	((struct openb3d_openb3dcore_TAnimationKeys_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tanimationkeys_px =AnimationKeysFloat_(o->clas->f_GetInstance_pb_TTAnimationKeys((struct openb3d_openb3dcore_TAnimationKeys_obj*)o),3);
	struct BBDebugStm __stmt_3 = {0xd16b7323a39515ed, 127, 0};
	bbOnDebugEnterStm(&__stmt_3);
	((struct openb3d_openb3dcore_TAnimationKeys_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tanimationkeys_py =AnimationKeysFloat_(o->clas->f_GetInstance_pb_TTAnimationKeys((struct openb3d_openb3dcore_TAnimationKeys_obj*)o),4);
	struct BBDebugStm __stmt_4 = {0xd16b7323a39515ed, 128, 0};
	bbOnDebugEnterStm(&__stmt_4);
	((struct openb3d_openb3dcore_TAnimationKeys_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tanimationkeys_pz =AnimationKeysFloat_(o->clas->f_GetInstance_pb_TTAnimationKeys((struct openb3d_openb3dcore_TAnimationKeys_obj*)o),5);
	struct BBDebugStm __stmt_5 = {0xd16b7323a39515ed, 129, 0};
	bbOnDebugEnterStm(&__stmt_5);
	((struct openb3d_openb3dcore_TAnimationKeys_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tanimationkeys_sx =AnimationKeysFloat_(o->clas->f_GetInstance_pb_TTAnimationKeys((struct openb3d_openb3dcore_TAnimationKeys_obj*)o),6);
	struct BBDebugStm __stmt_6 = {0xd16b7323a39515ed, 130, 0};
	bbOnDebugEnterStm(&__stmt_6);
	((struct openb3d_openb3dcore_TAnimationKeys_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tanimationkeys_sy =AnimationKeysFloat_(o->clas->f_GetInstance_pb_TTAnimationKeys((struct openb3d_openb3dcore_TAnimationKeys_obj*)o),7);
	struct BBDebugStm __stmt_7 = {0xd16b7323a39515ed, 131, 0};
	bbOnDebugEnterStm(&__stmt_7);
	((struct openb3d_openb3dcore_TAnimationKeys_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tanimationkeys_sz =AnimationKeysFloat_(o->clas->f_GetInstance_pb_TTAnimationKeys((struct openb3d_openb3dcore_TAnimationKeys_obj*)o),8);
	struct BBDebugStm __stmt_8 = {0xd16b7323a39515ed, 132, 0};
	bbOnDebugEnterStm(&__stmt_8);
	((struct openb3d_openb3dcore_TAnimationKeys_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tanimationkeys_qw =AnimationKeysFloat_(o->clas->f_GetInstance_pb_TTAnimationKeys((struct openb3d_openb3dcore_TAnimationKeys_obj*)o),9);
	struct BBDebugStm __stmt_9 = {0xd16b7323a39515ed, 133, 0};
	bbOnDebugEnterStm(&__stmt_9);
	((struct openb3d_openb3dcore_TAnimationKeys_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tanimationkeys_qx =AnimationKeysFloat_(o->clas->f_GetInstance_pb_TTAnimationKeys((struct openb3d_openb3dcore_TAnimationKeys_obj*)o),10);
	struct BBDebugStm __stmt_10 = {0xd16b7323a39515ed, 134, 0};
	bbOnDebugEnterStm(&__stmt_10);
	((struct openb3d_openb3dcore_TAnimationKeys_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tanimationkeys_qy =AnimationKeysFloat_(o->clas->f_GetInstance_pb_TTAnimationKeys((struct openb3d_openb3dcore_TAnimationKeys_obj*)o),11);
	struct BBDebugStm __stmt_11 = {0xd16b7323a39515ed, 135, 0};
	bbOnDebugEnterStm(&__stmt_11);
	((struct openb3d_openb3dcore_TAnimationKeys_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tanimationkeys_qz =AnimationKeysFloat_(o->clas->f_GetInstance_pb_TTAnimationKeys((struct openb3d_openb3dcore_TAnimationKeys_obj*)o),12);
	bbOnDebugLeaveScope();
	return 0;
}
BBINT _openb3d_openb3dcore_TAnimationKeys_DebugFields_ii(struct openb3d_openb3dcore_TAnimationKeys_obj* o,BBINT bbt_debug_subobjects,BBINT bbt_debug_base_types){
	((struct openb3d_openb3dcore_TAnimationKeys_obj*)bbNullObjectTest((BBObject*)o));
	BBSTRING bbt_pad=(&bbEmptyString);
	BBINT bbt_loop=0;
	struct BBDebugScope_5 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"DebugFields",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TAnimationKeys",
				.var_address=&o
			},
			{
				BBDEBUGDECL_LOCAL,
				"debug_subobjects",
				"i",
				.var_address=&bbt_debug_subobjects
			},
			{
				BBDEBUGDECL_LOCAL,
				"debug_base_types",
				"i",
				.var_address=&bbt_debug_base_types
			},
			{
				BBDEBUGDECL_LOCAL,
				"pad",
				"$",
				.var_address=&bbt_pad
			},
			{
				BBDEBUGDECL_LOCAL,
				"loop",
				"i",
				.var_address=&bbt_loop
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0xd16b7323a39515ed, 141, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbt_pad=((BBString*)&bbEmptyString);
	struct BBDebugStm __stmt_1 = {0xd16b7323a39515ed, 142, 0};
	bbOnDebugEnterStm(&__stmt_1);
	bbt_loop=bbt_debug_subobjects;
	struct BBDebugStm __stmt_2 = {0xd16b7323a39515ed, 143, 0};
	bbOnDebugEnterStm(&__stmt_2);
	if(bbt_debug_base_types>bbt_debug_subobjects){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0xd16b7323a39515ed, 143, 0};
		bbOnDebugEnterStm(&__stmt_0);
		bbt_loop=bbt_debug_base_types;
		bbOnDebugLeaveScope();
	}
	struct BBDebugStm __stmt_3 = {0xd16b7323a39515ed, 144, 0};
	bbOnDebugEnterStm(&__stmt_3);
	{
		BBINT bbt_i=1;
		BBINT bbt_=bbt_loop;
		for(;(bbt_i<bbt_);bbt_i=(bbt_i+1)){
			struct BBDebugScope_1 __scope = {
				BBDEBUGSCOPE_LOCALBLOCK,
				0,
				{
					{
						BBDEBUGDECL_LOCAL,
						"i",
						"i",
						.var_address=&bbt_i
					},
					{
						BBDEBUGDECL_END
					}
				}
			};
			bbOnDebugEnterScope((BBDebugScope *)&__scope);
			struct BBDebugStm __stmt_0 = {0xd16b7323a39515ed, 145, 0};
			bbOnDebugEnterStm(&__stmt_0);
			bbt_pad=bbStringConcat(bbt_pad,((BBString*)&_s0));
			bbOnDebugLeaveScope();
		}
	}
	struct BBDebugStm __stmt_4 = {0xd16b7323a39515ed, 147, 0};
	bbOnDebugEnterStm(&__stmt_4);
	if(bbt_debug_subobjects!=0){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0xd16b7323a39515ed, 147, 0};
		bbOnDebugEnterStm(&__stmt_0);
		bbt_debug_subobjects+=1;
		bbOnDebugLeaveScope();
	}
	struct BBDebugStm __stmt_5 = {0xd16b7323a39515ed, 148, 0};
	bbOnDebugEnterStm(&__stmt_5);
	if(bbt_debug_base_types!=0){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0xd16b7323a39515ed, 148, 0};
		bbOnDebugEnterStm(&__stmt_0);
		bbt_debug_base_types+=1;
		bbOnDebugLeaveScope();
	}
	struct BBDebugStm __stmt_6 = {0xd16b7323a39515ed, 149, 0};
	bbOnDebugEnterStm(&__stmt_6);
	brl_blitz_DebugLog(bbStringConcat(bbStringConcat(bbt_pad,((BBString*)&_s419)),openb3d_openb3dcore_StringPtr(o->clas->f_GetInstance_pb_TTAnimationKeys((struct openb3d_openb3dcore_TAnimationKeys_obj*)o))));
	struct BBDebugStm __stmt_7 = {0xd16b7323a39515ed, 152, 0};
	bbOnDebugEnterStm(&__stmt_7);
	if(((struct openb3d_openb3dcore_TAnimationKeys_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tanimationkeys_frames !=0){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0xd16b7323a39515ed, 152, 0};
		bbOnDebugEnterStm(&__stmt_0);
		brl_blitz_DebugLog(bbStringConcat(bbStringConcat(bbt_pad,((BBString*)&_s378)),bbStringFromInt(((struct openb3d_openb3dcore_TAnimationKeys_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tanimationkeys_frames [0])));
		bbOnDebugLeaveScope();
	}else{
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0xd16b7323a39515ed, 152, 0};
		bbOnDebugEnterStm(&__stmt_0);
		brl_blitz_DebugLog(bbStringConcat(bbt_pad,((BBString*)&_s420)));
		bbOnDebugLeaveScope();
	}
	struct BBDebugStm __stmt_8 = {0xd16b7323a39515ed, 153, 0};
	bbOnDebugEnterStm(&__stmt_8);
	brl_blitz_DebugLog(bbStringConcat(bbStringConcat(bbt_pad,((BBString*)&_s362)),openb3d_openb3dcore_StringPtr((BBBYTE*)((struct openb3d_openb3dcore_TAnimationKeys_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tanimationkeys_flags )));
	struct BBDebugStm __stmt_9 = {0xd16b7323a39515ed, 154, 0};
	bbOnDebugEnterStm(&__stmt_9);
	if(((struct openb3d_openb3dcore_TAnimationKeys_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tanimationkeys_flags !=0){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0xd16b7323a39515ed, 154, 0};
		bbOnDebugEnterStm(&__stmt_0);
		brl_blitz_DebugLog(bbStringConcat(bbStringConcat(bbStringConcat(bbStringConcat(bbStringConcat(bbt_pad,((BBString*)&_s421)),bbStringFromInt(((struct openb3d_openb3dcore_TAnimationKeys_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tanimationkeys_flags [0])),((BBString*)&_s313)),bbStringFromInt(((struct openb3d_openb3dcore_TAnimationKeys_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tanimationkeys_flags [1])),((BBString*)&_s315)));
		bbOnDebugLeaveScope();
	}
	struct BBDebugStm __stmt_10 = {0xd16b7323a39515ed, 157, 0};
	bbOnDebugEnterStm(&__stmt_10);
	brl_blitz_DebugLog(bbStringConcat(bbStringConcat(bbt_pad,((BBString*)&_s83)),openb3d_openb3dcore_StringPtr((BBBYTE*)((struct openb3d_openb3dcore_TAnimationKeys_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tanimationkeys_px )));
	struct BBDebugStm __stmt_11 = {0xd16b7323a39515ed, 158, 0};
	bbOnDebugEnterStm(&__stmt_11);
	if(((struct openb3d_openb3dcore_TAnimationKeys_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tanimationkeys_px !=0){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0xd16b7323a39515ed, 158, 0};
		bbOnDebugEnterStm(&__stmt_0);
		brl_blitz_DebugLog(bbStringConcat(bbStringConcat(bbStringConcat(bbStringConcat(bbStringConcat(bbt_pad,((BBString*)&_s422)),bbStringFromFloat(((struct openb3d_openb3dcore_TAnimationKeys_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tanimationkeys_px [0])),((BBString*)&_s313)),bbStringFromFloat(((struct openb3d_openb3dcore_TAnimationKeys_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tanimationkeys_px [1])),((BBString*)&_s315)));
		bbOnDebugLeaveScope();
	}
	struct BBDebugStm __stmt_12 = {0xd16b7323a39515ed, 159, 0};
	bbOnDebugEnterStm(&__stmt_12);
	brl_blitz_DebugLog(bbStringConcat(bbStringConcat(bbt_pad,((BBString*)&_s85)),openb3d_openb3dcore_StringPtr((BBBYTE*)((struct openb3d_openb3dcore_TAnimationKeys_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tanimationkeys_py )));
	struct BBDebugStm __stmt_13 = {0xd16b7323a39515ed, 160, 0};
	bbOnDebugEnterStm(&__stmt_13);
	if(((struct openb3d_openb3dcore_TAnimationKeys_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tanimationkeys_py !=0){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0xd16b7323a39515ed, 160, 0};
		bbOnDebugEnterStm(&__stmt_0);
		brl_blitz_DebugLog(bbStringConcat(bbStringConcat(bbStringConcat(bbStringConcat(bbStringConcat(bbt_pad,((BBString*)&_s423)),bbStringFromFloat(((struct openb3d_openb3dcore_TAnimationKeys_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tanimationkeys_py [0])),((BBString*)&_s313)),bbStringFromFloat(((struct openb3d_openb3dcore_TAnimationKeys_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tanimationkeys_py [1])),((BBString*)&_s315)));
		bbOnDebugLeaveScope();
	}
	struct BBDebugStm __stmt_14 = {0xd16b7323a39515ed, 161, 0};
	bbOnDebugEnterStm(&__stmt_14);
	brl_blitz_DebugLog(bbStringConcat(bbStringConcat(bbt_pad,((BBString*)&_s87)),openb3d_openb3dcore_StringPtr((BBBYTE*)((struct openb3d_openb3dcore_TAnimationKeys_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tanimationkeys_pz )));
	struct BBDebugStm __stmt_15 = {0xd16b7323a39515ed, 162, 0};
	bbOnDebugEnterStm(&__stmt_15);
	if(((struct openb3d_openb3dcore_TAnimationKeys_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tanimationkeys_pz !=0){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0xd16b7323a39515ed, 162, 0};
		bbOnDebugEnterStm(&__stmt_0);
		brl_blitz_DebugLog(bbStringConcat(bbStringConcat(bbStringConcat(bbStringConcat(bbStringConcat(bbt_pad,((BBString*)&_s424)),bbStringFromFloat(((struct openb3d_openb3dcore_TAnimationKeys_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tanimationkeys_pz [0])),((BBString*)&_s313)),bbStringFromFloat(((struct openb3d_openb3dcore_TAnimationKeys_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tanimationkeys_pz [1])),((BBString*)&_s315)));
		bbOnDebugLeaveScope();
	}
	struct BBDebugStm __stmt_16 = {0xd16b7323a39515ed, 163, 0};
	bbOnDebugEnterStm(&__stmt_16);
	brl_blitz_DebugLog(bbStringConcat(bbStringConcat(bbt_pad,((BBString*)&_s89)),openb3d_openb3dcore_StringPtr((BBBYTE*)((struct openb3d_openb3dcore_TAnimationKeys_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tanimationkeys_sx )));
	struct BBDebugStm __stmt_17 = {0xd16b7323a39515ed, 164, 0};
	bbOnDebugEnterStm(&__stmt_17);
	if(((struct openb3d_openb3dcore_TAnimationKeys_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tanimationkeys_sx !=0){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0xd16b7323a39515ed, 164, 0};
		bbOnDebugEnterStm(&__stmt_0);
		brl_blitz_DebugLog(bbStringConcat(bbStringConcat(bbStringConcat(bbStringConcat(bbStringConcat(bbt_pad,((BBString*)&_s425)),bbStringFromFloat(((struct openb3d_openb3dcore_TAnimationKeys_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tanimationkeys_sx [0])),((BBString*)&_s313)),bbStringFromFloat(((struct openb3d_openb3dcore_TAnimationKeys_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tanimationkeys_sx [1])),((BBString*)&_s315)));
		bbOnDebugLeaveScope();
	}
	struct BBDebugStm __stmt_18 = {0xd16b7323a39515ed, 165, 0};
	bbOnDebugEnterStm(&__stmt_18);
	brl_blitz_DebugLog(bbStringConcat(bbStringConcat(bbt_pad,((BBString*)&_s91)),openb3d_openb3dcore_StringPtr((BBBYTE*)((struct openb3d_openb3dcore_TAnimationKeys_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tanimationkeys_sy )));
	struct BBDebugStm __stmt_19 = {0xd16b7323a39515ed, 166, 0};
	bbOnDebugEnterStm(&__stmt_19);
	if(((struct openb3d_openb3dcore_TAnimationKeys_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tanimationkeys_sy !=0){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0xd16b7323a39515ed, 166, 0};
		bbOnDebugEnterStm(&__stmt_0);
		brl_blitz_DebugLog(bbStringConcat(bbStringConcat(bbStringConcat(bbStringConcat(bbStringConcat(bbt_pad,((BBString*)&_s426)),bbStringFromFloat(((struct openb3d_openb3dcore_TAnimationKeys_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tanimationkeys_sy [0])),((BBString*)&_s313)),bbStringFromFloat(((struct openb3d_openb3dcore_TAnimationKeys_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tanimationkeys_sy [1])),((BBString*)&_s315)));
		bbOnDebugLeaveScope();
	}
	struct BBDebugStm __stmt_20 = {0xd16b7323a39515ed, 167, 0};
	bbOnDebugEnterStm(&__stmt_20);
	brl_blitz_DebugLog(bbStringConcat(bbStringConcat(bbt_pad,((BBString*)&_s93)),openb3d_openb3dcore_StringPtr((BBBYTE*)((struct openb3d_openb3dcore_TAnimationKeys_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tanimationkeys_sz )));
	struct BBDebugStm __stmt_21 = {0xd16b7323a39515ed, 168, 0};
	bbOnDebugEnterStm(&__stmt_21);
	if(((struct openb3d_openb3dcore_TAnimationKeys_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tanimationkeys_sz !=0){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0xd16b7323a39515ed, 168, 0};
		bbOnDebugEnterStm(&__stmt_0);
		brl_blitz_DebugLog(bbStringConcat(bbStringConcat(bbStringConcat(bbStringConcat(bbStringConcat(bbt_pad,((BBString*)&_s427)),bbStringFromFloat(((struct openb3d_openb3dcore_TAnimationKeys_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tanimationkeys_sz [0])),((BBString*)&_s313)),bbStringFromFloat(((struct openb3d_openb3dcore_TAnimationKeys_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tanimationkeys_sz [1])),((BBString*)&_s315)));
		bbOnDebugLeaveScope();
	}
	struct BBDebugStm __stmt_22 = {0xd16b7323a39515ed, 169, 0};
	bbOnDebugEnterStm(&__stmt_22);
	brl_blitz_DebugLog(bbStringConcat(bbStringConcat(bbt_pad,((BBString*)&_s101)),openb3d_openb3dcore_StringPtr((BBBYTE*)((struct openb3d_openb3dcore_TAnimationKeys_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tanimationkeys_qw )));
	struct BBDebugStm __stmt_23 = {0xd16b7323a39515ed, 170, 0};
	bbOnDebugEnterStm(&__stmt_23);
	if(((struct openb3d_openb3dcore_TAnimationKeys_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tanimationkeys_qw !=0){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0xd16b7323a39515ed, 170, 0};
		bbOnDebugEnterStm(&__stmt_0);
		brl_blitz_DebugLog(bbStringConcat(bbStringConcat(bbStringConcat(bbStringConcat(bbStringConcat(bbt_pad,((BBString*)&_s428)),bbStringFromFloat(((struct openb3d_openb3dcore_TAnimationKeys_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tanimationkeys_qw [0])),((BBString*)&_s313)),bbStringFromFloat(((struct openb3d_openb3dcore_TAnimationKeys_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tanimationkeys_qw [1])),((BBString*)&_s315)));
		bbOnDebugLeaveScope();
	}
	struct BBDebugStm __stmt_24 = {0xd16b7323a39515ed, 171, 0};
	bbOnDebugEnterStm(&__stmt_24);
	brl_blitz_DebugLog(bbStringConcat(bbStringConcat(bbt_pad,((BBString*)&_s103)),openb3d_openb3dcore_StringPtr((BBBYTE*)((struct openb3d_openb3dcore_TAnimationKeys_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tanimationkeys_qx )));
	struct BBDebugStm __stmt_25 = {0xd16b7323a39515ed, 172, 0};
	bbOnDebugEnterStm(&__stmt_25);
	if(((struct openb3d_openb3dcore_TAnimationKeys_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tanimationkeys_qx !=0){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0xd16b7323a39515ed, 172, 0};
		bbOnDebugEnterStm(&__stmt_0);
		brl_blitz_DebugLog(bbStringConcat(bbStringConcat(bbStringConcat(bbStringConcat(bbStringConcat(bbt_pad,((BBString*)&_s429)),bbStringFromFloat(((struct openb3d_openb3dcore_TAnimationKeys_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tanimationkeys_qx [0])),((BBString*)&_s313)),bbStringFromFloat(((struct openb3d_openb3dcore_TAnimationKeys_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tanimationkeys_qx [1])),((BBString*)&_s315)));
		bbOnDebugLeaveScope();
	}
	struct BBDebugStm __stmt_26 = {0xd16b7323a39515ed, 173, 0};
	bbOnDebugEnterStm(&__stmt_26);
	brl_blitz_DebugLog(bbStringConcat(bbStringConcat(bbt_pad,((BBString*)&_s105)),openb3d_openb3dcore_StringPtr((BBBYTE*)((struct openb3d_openb3dcore_TAnimationKeys_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tanimationkeys_qy )));
	struct BBDebugStm __stmt_27 = {0xd16b7323a39515ed, 174, 0};
	bbOnDebugEnterStm(&__stmt_27);
	if(((struct openb3d_openb3dcore_TAnimationKeys_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tanimationkeys_qy !=0){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0xd16b7323a39515ed, 174, 0};
		bbOnDebugEnterStm(&__stmt_0);
		brl_blitz_DebugLog(bbStringConcat(bbStringConcat(bbStringConcat(bbStringConcat(bbStringConcat(bbt_pad,((BBString*)&_s430)),bbStringFromFloat(((struct openb3d_openb3dcore_TAnimationKeys_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tanimationkeys_qy [0])),((BBString*)&_s313)),bbStringFromFloat(((struct openb3d_openb3dcore_TAnimationKeys_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tanimationkeys_qy [1])),((BBString*)&_s315)));
		bbOnDebugLeaveScope();
	}
	struct BBDebugStm __stmt_28 = {0xd16b7323a39515ed, 175, 0};
	bbOnDebugEnterStm(&__stmt_28);
	brl_blitz_DebugLog(bbStringConcat(bbStringConcat(bbt_pad,((BBString*)&_s107)),openb3d_openb3dcore_StringPtr((BBBYTE*)((struct openb3d_openb3dcore_TAnimationKeys_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tanimationkeys_qz )));
	struct BBDebugStm __stmt_29 = {0xd16b7323a39515ed, 176, 0};
	bbOnDebugEnterStm(&__stmt_29);
	if(((struct openb3d_openb3dcore_TAnimationKeys_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tanimationkeys_qz !=0){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0xd16b7323a39515ed, 176, 0};
		bbOnDebugEnterStm(&__stmt_0);
		brl_blitz_DebugLog(bbStringConcat(bbStringConcat(bbStringConcat(bbStringConcat(bbStringConcat(bbt_pad,((BBString*)&_s431)),bbStringFromFloat(((struct openb3d_openb3dcore_TAnimationKeys_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tanimationkeys_qz [0])),((BBString*)&_s313)),bbStringFromFloat(((struct openb3d_openb3dcore_TAnimationKeys_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tanimationkeys_qz [1])),((BBString*)&_s315)));
		bbOnDebugLeaveScope();
	}
	struct BBDebugStm __stmt_30 = {0xd16b7323a39515ed, 178, 0};
	bbOnDebugEnterStm(&__stmt_30);
	brl_blitz_DebugLog((BBString*)&bbEmptyString);
	bbOnDebugLeaveScope();
	return 0;
}
struct openb3d_openb3dcore_TAnimationKeys_obj* openb3d_openb3dcore_TAnimationKeys_NewAnimationKeys_TTAnimationKeys_TTBone(struct openb3d_openb3dcore_TBone_obj* bbt_bone){
	BBBYTE* bbt_inst=0;
	struct openb3d_openb3dcore_TAnimationKeys_obj* bbt_animkeys=(struct openb3d_openb3dcore_TAnimationKeys_obj*)((struct openb3d_openb3dcore_TAnimationKeys_obj*)&bbNullObject);
	struct BBDebugScope_3 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"NewAnimationKeys",
		{
			{
				BBDEBUGDECL_LOCAL,
				"bone",
				":TBone",
				.var_address=&bbt_bone
			},
			{
				BBDEBUGDECL_LOCAL,
				"inst",
				"*b",
				.var_address=&bbt_inst
			},
			{
				BBDEBUGDECL_LOCAL,
				"animkeys",
				":TAnimationKeys",
				.var_address=&bbt_animkeys
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0xd16b7323a39515ed, 184, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbt_inst=NewAnimationKeys_(openb3d_openb3dcore_TEntity_GetInstance_pb_TTEntity((struct openb3d_openb3dcore_TEntity_obj*)((struct openb3d_openb3dcore_TEntity_obj*)bbObjectDowncast((BBOBJECT)bbt_bone,(BBClass*)&openb3d_openb3dcore_TEntity))));
	struct BBDebugStm __stmt_1 = {0xd16b7323a39515ed, 185, 0};
	bbOnDebugEnterStm(&__stmt_1);
	bbt_animkeys=(struct openb3d_openb3dcore_TAnimationKeys_obj*)openb3d_openb3dcore_TAnimationKeys_CreateObject_TTAnimationKeys_pb(bbt_inst);
	struct BBDebugStm __stmt_2 = {0xd16b7323a39515ed, 187, 0};
	bbOnDebugEnterStm(&__stmt_2);
	if(((BBOBJECT)bbt_bone)!=&bbNullObject){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0xd16b7323a39515ed, 188, 0};
		bbOnDebugEnterStm(&__stmt_0);
		bbt_inst=BoneAnimationKeys_(openb3d_openb3dcore_TEntity_GetInstance_pb_TTEntity((struct openb3d_openb3dcore_TEntity_obj*)((struct openb3d_openb3dcore_TEntity_obj*)bbObjectDowncast((BBOBJECT)bbt_bone,(BBClass*)&openb3d_openb3dcore_TEntity))),14);
		struct BBDebugStm __stmt_1 = {0xd16b7323a39515ed, 189, 0};
		bbOnDebugEnterStm(&__stmt_1);
		((struct openb3d_openb3dcore_TBone_obj*)bbNullObjectTest((BBObject*)bbt_bone))->_openb3d_openb3dcore_tbone_keys =(struct openb3d_openb3dcore_TAnimationKeys_obj*)openb3d_openb3dcore_TAnimationKeys_GetObject_TTAnimationKeys_pb(bbt_inst);
		bbOnDebugLeaveScope();
	}
	struct BBDebugStm __stmt_3 = {0xd16b7323a39515ed, 191, 0};
	bbOnDebugEnterStm(&__stmt_3);
	bbOnDebugLeaveScope();
	return (struct openb3d_openb3dcore_TAnimationKeys_obj*)bbt_animkeys;
}
struct openb3d_openb3dcore_TAnimationKeys_obj* openb3d_openb3dcore_TAnimationKeys_Create_TTAnimationKeys_TTBone(struct openb3d_openb3dcore_TBone_obj* bbt_bone){
	BBBYTE* bbt_inst=0;
	struct openb3d_openb3dcore_TAnimationKeys_obj* bbt_animkeys=(struct openb3d_openb3dcore_TAnimationKeys_obj*)((struct openb3d_openb3dcore_TAnimationKeys_obj*)&bbNullObject);
	struct BBDebugScope_3 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"Create",
		{
			{
				BBDEBUGDECL_LOCAL,
				"bone",
				":TBone",
				.var_address=&bbt_bone
			},
			{
				BBDEBUGDECL_LOCAL,
				"inst",
				"*b",
				.var_address=&bbt_inst
			},
			{
				BBDEBUGDECL_LOCAL,
				"animkeys",
				":TAnimationKeys",
				.var_address=&bbt_animkeys
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0xd16b7323a39515ed, 197, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbt_inst=NewAnimationKeys_(openb3d_openb3dcore_TEntity_GetInstance_pb_TTEntity((struct openb3d_openb3dcore_TEntity_obj*)((struct openb3d_openb3dcore_TEntity_obj*)bbObjectDowncast((BBOBJECT)bbt_bone,(BBClass*)&openb3d_openb3dcore_TEntity))));
	struct BBDebugStm __stmt_1 = {0xd16b7323a39515ed, 198, 0};
	bbOnDebugEnterStm(&__stmt_1);
	bbt_animkeys=(struct openb3d_openb3dcore_TAnimationKeys_obj*)openb3d_openb3dcore_TAnimationKeys_CreateObject_TTAnimationKeys_pb(bbt_inst);
	struct BBDebugStm __stmt_2 = {0xd16b7323a39515ed, 200, 0};
	bbOnDebugEnterStm(&__stmt_2);
	if(((BBOBJECT)bbt_bone)!=&bbNullObject){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0xd16b7323a39515ed, 201, 0};
		bbOnDebugEnterStm(&__stmt_0);
		bbt_inst=BoneAnimationKeys_(openb3d_openb3dcore_TEntity_GetInstance_pb_TTEntity((struct openb3d_openb3dcore_TEntity_obj*)((struct openb3d_openb3dcore_TEntity_obj*)bbObjectDowncast((BBOBJECT)bbt_bone,(BBClass*)&openb3d_openb3dcore_TEntity))),14);
		struct BBDebugStm __stmt_1 = {0xd16b7323a39515ed, 202, 0};
		bbOnDebugEnterStm(&__stmt_1);
		((struct openb3d_openb3dcore_TBone_obj*)bbNullObjectTest((BBObject*)bbt_bone))->_openb3d_openb3dcore_tbone_keys =(struct openb3d_openb3dcore_TAnimationKeys_obj*)openb3d_openb3dcore_TAnimationKeys_GetObject_TTAnimationKeys_pb(bbt_inst);
		bbOnDebugLeaveScope();
	}
	struct BBDebugStm __stmt_3 = {0xd16b7323a39515ed, 204, 0};
	bbOnDebugEnterStm(&__stmt_3);
	bbOnDebugLeaveScope();
	return (struct openb3d_openb3dcore_TAnimationKeys_obj*)bbt_animkeys;
}
BBINT* _openb3d_openb3dcore_TAnimationKeys_AnimationKeysIntArrayResize_ii(struct openb3d_openb3dcore_TAnimationKeys_obj* o,BBINT bbt_varid,BBINT bbt_size){
	((struct openb3d_openb3dcore_TAnimationKeys_obj*)bbNullObjectTest((BBObject*)o));
	struct BBDebugScope_3 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"AnimationKeysIntArrayResize",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TAnimationKeys",
				.var_address=&o
			},
			{
				BBDEBUGDECL_LOCAL,
				"varid",
				"i",
				.var_address=&bbt_varid
			},
			{
				BBDEBUGDECL_LOCAL,
				"size",
				"i",
				.var_address=&bbt_size
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0xd16b7323a39515ed, 210, 0};
	bbOnDebugEnterStm(&__stmt_0);
	BBINT bbt_=bbt_varid;
	struct BBDebugStm __stmt_1 = {0xd16b7323a39515ed, 211, 0};
	bbOnDebugEnterStm(&__stmt_1);
	if(bbt_==2){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0xd16b7323a39515ed, 212, 0};
		bbOnDebugEnterStm(&__stmt_0);
		bbOnDebugLeaveScope();
		bbOnDebugLeaveScope();
		return AnimationKeysResizeIntArray_(o->clas->f_GetInstance_pb_TTAnimationKeys((struct openb3d_openb3dcore_TAnimationKeys_obj*)o),2,bbt_size);
	}
	bbOnDebugLeaveScope();
	return 0;
}
BBFLOAT* _openb3d_openb3dcore_TAnimationKeys_AnimationKeysFloatArrayResize_ii(struct openb3d_openb3dcore_TAnimationKeys_obj* o,BBINT bbt_varid,BBINT bbt_size){
	((struct openb3d_openb3dcore_TAnimationKeys_obj*)bbNullObjectTest((BBObject*)o));
	struct BBDebugScope_3 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"AnimationKeysFloatArrayResize",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TAnimationKeys",
				.var_address=&o
			},
			{
				BBDEBUGDECL_LOCAL,
				"varid",
				"i",
				.var_address=&bbt_varid
			},
			{
				BBDEBUGDECL_LOCAL,
				"size",
				"i",
				.var_address=&bbt_size
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0xd16b7323a39515ed, 219, 0};
	bbOnDebugEnterStm(&__stmt_0);
	BBINT bbt_=bbt_varid;
	struct BBDebugStm __stmt_1 = {0xd16b7323a39515ed, 220, 0};
	bbOnDebugEnterStm(&__stmt_1);
	if(bbt_==3){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0xd16b7323a39515ed, 221, 0};
		bbOnDebugEnterStm(&__stmt_0);
		bbOnDebugLeaveScope();
		bbOnDebugLeaveScope();
		return AnimationKeysResizeFloatArray_(o->clas->f_GetInstance_pb_TTAnimationKeys((struct openb3d_openb3dcore_TAnimationKeys_obj*)o),3,bbt_size);
	}else{
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0xd16b7323a39515ed, 222, 0};
		bbOnDebugEnterStm(&__stmt_0);
		if(bbt_==4){
			struct BBDebugScope __scope = {
				BBDEBUGSCOPE_LOCALBLOCK,
				0,
				{
					{
						BBDEBUGDECL_END
					}
				}
			};
			bbOnDebugEnterScope((BBDebugScope *)&__scope);
			struct BBDebugStm __stmt_0 = {0xd16b7323a39515ed, 223, 0};
			bbOnDebugEnterStm(&__stmt_0);
			bbOnDebugLeaveScope();
			bbOnDebugLeaveScope();
			bbOnDebugLeaveScope();
			return AnimationKeysResizeFloatArray_(o->clas->f_GetInstance_pb_TTAnimationKeys((struct openb3d_openb3dcore_TAnimationKeys_obj*)o),4,bbt_size);
		}else{
			struct BBDebugScope __scope = {
				BBDEBUGSCOPE_LOCALBLOCK,
				0,
				{
					{
						BBDEBUGDECL_END
					}
				}
			};
			bbOnDebugEnterScope((BBDebugScope *)&__scope);
			struct BBDebugStm __stmt_0 = {0xd16b7323a39515ed, 224, 0};
			bbOnDebugEnterStm(&__stmt_0);
			if(bbt_==5){
				struct BBDebugScope __scope = {
					BBDEBUGSCOPE_LOCALBLOCK,
					0,
					{
						{
							BBDEBUGDECL_END
						}
					}
				};
				bbOnDebugEnterScope((BBDebugScope *)&__scope);
				struct BBDebugStm __stmt_0 = {0xd16b7323a39515ed, 225, 0};
				bbOnDebugEnterStm(&__stmt_0);
				bbOnDebugLeaveScope();
				bbOnDebugLeaveScope();
				bbOnDebugLeaveScope();
				bbOnDebugLeaveScope();
				return AnimationKeysResizeFloatArray_(o->clas->f_GetInstance_pb_TTAnimationKeys((struct openb3d_openb3dcore_TAnimationKeys_obj*)o),5,bbt_size);
			}else{
				struct BBDebugScope __scope = {
					BBDEBUGSCOPE_LOCALBLOCK,
					0,
					{
						{
							BBDEBUGDECL_END
						}
					}
				};
				bbOnDebugEnterScope((BBDebugScope *)&__scope);
				struct BBDebugStm __stmt_0 = {0xd16b7323a39515ed, 226, 0};
				bbOnDebugEnterStm(&__stmt_0);
				if(bbt_==6){
					struct BBDebugScope __scope = {
						BBDEBUGSCOPE_LOCALBLOCK,
						0,
						{
							{
								BBDEBUGDECL_END
							}
						}
					};
					bbOnDebugEnterScope((BBDebugScope *)&__scope);
					struct BBDebugStm __stmt_0 = {0xd16b7323a39515ed, 227, 0};
					bbOnDebugEnterStm(&__stmt_0);
					bbOnDebugLeaveScope();
					bbOnDebugLeaveScope();
					bbOnDebugLeaveScope();
					bbOnDebugLeaveScope();
					bbOnDebugLeaveScope();
					return AnimationKeysResizeFloatArray_(o->clas->f_GetInstance_pb_TTAnimationKeys((struct openb3d_openb3dcore_TAnimationKeys_obj*)o),6,bbt_size);
				}else{
					struct BBDebugScope __scope = {
						BBDEBUGSCOPE_LOCALBLOCK,
						0,
						{
							{
								BBDEBUGDECL_END
							}
						}
					};
					bbOnDebugEnterScope((BBDebugScope *)&__scope);
					struct BBDebugStm __stmt_0 = {0xd16b7323a39515ed, 228, 0};
					bbOnDebugEnterStm(&__stmt_0);
					if(bbt_==7){
						struct BBDebugScope __scope = {
							BBDEBUGSCOPE_LOCALBLOCK,
							0,
							{
								{
									BBDEBUGDECL_END
								}
							}
						};
						bbOnDebugEnterScope((BBDebugScope *)&__scope);
						struct BBDebugStm __stmt_0 = {0xd16b7323a39515ed, 229, 0};
						bbOnDebugEnterStm(&__stmt_0);
						bbOnDebugLeaveScope();
						bbOnDebugLeaveScope();
						bbOnDebugLeaveScope();
						bbOnDebugLeaveScope();
						bbOnDebugLeaveScope();
						bbOnDebugLeaveScope();
						return AnimationKeysResizeFloatArray_(o->clas->f_GetInstance_pb_TTAnimationKeys((struct openb3d_openb3dcore_TAnimationKeys_obj*)o),7,bbt_size);
					}else{
						struct BBDebugScope __scope = {
							BBDEBUGSCOPE_LOCALBLOCK,
							0,
							{
								{
									BBDEBUGDECL_END
								}
							}
						};
						bbOnDebugEnterScope((BBDebugScope *)&__scope);
						struct BBDebugStm __stmt_0 = {0xd16b7323a39515ed, 230, 0};
						bbOnDebugEnterStm(&__stmt_0);
						if(bbt_==8){
							struct BBDebugScope __scope = {
								BBDEBUGSCOPE_LOCALBLOCK,
								0,
								{
									{
										BBDEBUGDECL_END
									}
								}
							};
							bbOnDebugEnterScope((BBDebugScope *)&__scope);
							struct BBDebugStm __stmt_0 = {0xd16b7323a39515ed, 231, 0};
							bbOnDebugEnterStm(&__stmt_0);
							bbOnDebugLeaveScope();
							bbOnDebugLeaveScope();
							bbOnDebugLeaveScope();
							bbOnDebugLeaveScope();
							bbOnDebugLeaveScope();
							bbOnDebugLeaveScope();
							bbOnDebugLeaveScope();
							return AnimationKeysResizeFloatArray_(o->clas->f_GetInstance_pb_TTAnimationKeys((struct openb3d_openb3dcore_TAnimationKeys_obj*)o),8,bbt_size);
						}else{
							struct BBDebugScope __scope = {
								BBDEBUGSCOPE_LOCALBLOCK,
								0,
								{
									{
										BBDEBUGDECL_END
									}
								}
							};
							bbOnDebugEnterScope((BBDebugScope *)&__scope);
							struct BBDebugStm __stmt_0 = {0xd16b7323a39515ed, 232, 0};
							bbOnDebugEnterStm(&__stmt_0);
							if(bbt_==9){
								struct BBDebugScope __scope = {
									BBDEBUGSCOPE_LOCALBLOCK,
									0,
									{
										{
											BBDEBUGDECL_END
										}
									}
								};
								bbOnDebugEnterScope((BBDebugScope *)&__scope);
								struct BBDebugStm __stmt_0 = {0xd16b7323a39515ed, 233, 0};
								bbOnDebugEnterStm(&__stmt_0);
								bbOnDebugLeaveScope();
								bbOnDebugLeaveScope();
								bbOnDebugLeaveScope();
								bbOnDebugLeaveScope();
								bbOnDebugLeaveScope();
								bbOnDebugLeaveScope();
								bbOnDebugLeaveScope();
								bbOnDebugLeaveScope();
								return AnimationKeysResizeFloatArray_(o->clas->f_GetInstance_pb_TTAnimationKeys((struct openb3d_openb3dcore_TAnimationKeys_obj*)o),9,bbt_size);
							}else{
								struct BBDebugScope __scope = {
									BBDEBUGSCOPE_LOCALBLOCK,
									0,
									{
										{
											BBDEBUGDECL_END
										}
									}
								};
								bbOnDebugEnterScope((BBDebugScope *)&__scope);
								struct BBDebugStm __stmt_0 = {0xd16b7323a39515ed, 234, 0};
								bbOnDebugEnterStm(&__stmt_0);
								if(bbt_==10){
									struct BBDebugScope __scope = {
										BBDEBUGSCOPE_LOCALBLOCK,
										0,
										{
											{
												BBDEBUGDECL_END
											}
										}
									};
									bbOnDebugEnterScope((BBDebugScope *)&__scope);
									struct BBDebugStm __stmt_0 = {0xd16b7323a39515ed, 235, 0};
									bbOnDebugEnterStm(&__stmt_0);
									bbOnDebugLeaveScope();
									bbOnDebugLeaveScope();
									bbOnDebugLeaveScope();
									bbOnDebugLeaveScope();
									bbOnDebugLeaveScope();
									bbOnDebugLeaveScope();
									bbOnDebugLeaveScope();
									bbOnDebugLeaveScope();
									bbOnDebugLeaveScope();
									return AnimationKeysResizeFloatArray_(o->clas->f_GetInstance_pb_TTAnimationKeys((struct openb3d_openb3dcore_TAnimationKeys_obj*)o),10,bbt_size);
								}else{
									struct BBDebugScope __scope = {
										BBDEBUGSCOPE_LOCALBLOCK,
										0,
										{
											{
												BBDEBUGDECL_END
											}
										}
									};
									bbOnDebugEnterScope((BBDebugScope *)&__scope);
									struct BBDebugStm __stmt_0 = {0xd16b7323a39515ed, 236, 0};
									bbOnDebugEnterStm(&__stmt_0);
									if(bbt_==11){
										struct BBDebugScope __scope = {
											BBDEBUGSCOPE_LOCALBLOCK,
											0,
											{
												{
													BBDEBUGDECL_END
												}
											}
										};
										bbOnDebugEnterScope((BBDebugScope *)&__scope);
										struct BBDebugStm __stmt_0 = {0xd16b7323a39515ed, 237, 0};
										bbOnDebugEnterStm(&__stmt_0);
										bbOnDebugLeaveScope();
										bbOnDebugLeaveScope();
										bbOnDebugLeaveScope();
										bbOnDebugLeaveScope();
										bbOnDebugLeaveScope();
										bbOnDebugLeaveScope();
										bbOnDebugLeaveScope();
										bbOnDebugLeaveScope();
										bbOnDebugLeaveScope();
										bbOnDebugLeaveScope();
										return AnimationKeysResizeFloatArray_(o->clas->f_GetInstance_pb_TTAnimationKeys((struct openb3d_openb3dcore_TAnimationKeys_obj*)o),11,bbt_size);
									}else{
										struct BBDebugScope __scope = {
											BBDEBUGSCOPE_LOCALBLOCK,
											0,
											{
												{
													BBDEBUGDECL_END
												}
											}
										};
										bbOnDebugEnterScope((BBDebugScope *)&__scope);
										struct BBDebugStm __stmt_0 = {0xd16b7323a39515ed, 238, 0};
										bbOnDebugEnterStm(&__stmt_0);
										if(bbt_==12){
											struct BBDebugScope __scope = {
												BBDEBUGSCOPE_LOCALBLOCK,
												0,
												{
													{
														BBDEBUGDECL_END
													}
												}
											};
											bbOnDebugEnterScope((BBDebugScope *)&__scope);
											struct BBDebugStm __stmt_0 = {0xd16b7323a39515ed, 239, 0};
											bbOnDebugEnterStm(&__stmt_0);
											bbOnDebugLeaveScope();
											bbOnDebugLeaveScope();
											bbOnDebugLeaveScope();
											bbOnDebugLeaveScope();
											bbOnDebugLeaveScope();
											bbOnDebugLeaveScope();
											bbOnDebugLeaveScope();
											bbOnDebugLeaveScope();
											bbOnDebugLeaveScope();
											bbOnDebugLeaveScope();
											bbOnDebugLeaveScope();
											return AnimationKeysResizeFloatArray_(o->clas->f_GetInstance_pb_TTAnimationKeys((struct openb3d_openb3dcore_TAnimationKeys_obj*)o),12,bbt_size);
										}
										bbOnDebugLeaveScope();
									}
									bbOnDebugLeaveScope();
								}
								bbOnDebugLeaveScope();
							}
							bbOnDebugLeaveScope();
						}
						bbOnDebugLeaveScope();
					}
					bbOnDebugLeaveScope();
				}
				bbOnDebugLeaveScope();
			}
			bbOnDebugLeaveScope();
		}
		bbOnDebugLeaveScope();
	}
	bbOnDebugLeaveScope();
	return 0;
}
struct openb3d_openb3dcore_TAnimationKeys_obj* _openb3d_openb3dcore_TAnimationKeys_Copy(struct openb3d_openb3dcore_TAnimationKeys_obj* o){
	((struct openb3d_openb3dcore_TAnimationKeys_obj*)bbNullObjectTest((BBObject*)o));
	BBBYTE* bbt_inst=0;
	struct BBDebugScope_2 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"Copy",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TAnimationKeys",
				.var_address=&o
			},
			{
				BBDEBUGDECL_LOCAL,
				"inst",
				"*b",
				.var_address=&bbt_inst
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0xd16b7323a39515ed, 264, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbt_inst=AnimationKeysCopy_(o->clas->f_GetInstance_pb_TTAnimationKeys((struct openb3d_openb3dcore_TAnimationKeys_obj*)o));
	struct BBDebugStm __stmt_1 = {0xd16b7323a39515ed, 265, 0};
	bbOnDebugEnterStm(&__stmt_1);
	bbOnDebugLeaveScope();
	return (struct openb3d_openb3dcore_TAnimationKeys_obj*)o->clas->f_CreateObject_TTAnimationKeys_pb(bbt_inst);
}
struct brl_map_ptrmap_TPtrMap_obj* openb3d_openb3dcore_TAnimationKeys_animkeys_map;
struct BBDebugScope_26 openb3d_openb3dcore_TAnimationKeys_scope ={
	BBDEBUGSCOPE_USERTYPE,
	"TAnimationKeys",
	{
		{
			BBDEBUGDECL_FIELD,
			"frames",
			"*i",
			.field_offset=offsetof(struct openb3d_openb3dcore_TAnimationKeys_obj,_openb3d_openb3dcore_tanimationkeys_frames)
		},
		{
			BBDEBUGDECL_FIELD,
			"flags",
			"*i",
			.field_offset=offsetof(struct openb3d_openb3dcore_TAnimationKeys_obj,_openb3d_openb3dcore_tanimationkeys_flags)
		},
		{
			BBDEBUGDECL_FIELD,
			"px",
			"*f",
			.field_offset=offsetof(struct openb3d_openb3dcore_TAnimationKeys_obj,_openb3d_openb3dcore_tanimationkeys_px)
		},
		{
			BBDEBUGDECL_FIELD,
			"py",
			"*f",
			.field_offset=offsetof(struct openb3d_openb3dcore_TAnimationKeys_obj,_openb3d_openb3dcore_tanimationkeys_py)
		},
		{
			BBDEBUGDECL_FIELD,
			"pz",
			"*f",
			.field_offset=offsetof(struct openb3d_openb3dcore_TAnimationKeys_obj,_openb3d_openb3dcore_tanimationkeys_pz)
		},
		{
			BBDEBUGDECL_FIELD,
			"sx",
			"*f",
			.field_offset=offsetof(struct openb3d_openb3dcore_TAnimationKeys_obj,_openb3d_openb3dcore_tanimationkeys_sx)
		},
		{
			BBDEBUGDECL_FIELD,
			"sy",
			"*f",
			.field_offset=offsetof(struct openb3d_openb3dcore_TAnimationKeys_obj,_openb3d_openb3dcore_tanimationkeys_sy)
		},
		{
			BBDEBUGDECL_FIELD,
			"sz",
			"*f",
			.field_offset=offsetof(struct openb3d_openb3dcore_TAnimationKeys_obj,_openb3d_openb3dcore_tanimationkeys_sz)
		},
		{
			BBDEBUGDECL_FIELD,
			"qw",
			"*f",
			.field_offset=offsetof(struct openb3d_openb3dcore_TAnimationKeys_obj,_openb3d_openb3dcore_tanimationkeys_qw)
		},
		{
			BBDEBUGDECL_FIELD,
			"qx",
			"*f",
			.field_offset=offsetof(struct openb3d_openb3dcore_TAnimationKeys_obj,_openb3d_openb3dcore_tanimationkeys_qx)
		},
		{
			BBDEBUGDECL_FIELD,
			"qy",
			"*f",
			.field_offset=offsetof(struct openb3d_openb3dcore_TAnimationKeys_obj,_openb3d_openb3dcore_tanimationkeys_qy)
		},
		{
			BBDEBUGDECL_FIELD,
			"qz",
			"*f",
			.field_offset=offsetof(struct openb3d_openb3dcore_TAnimationKeys_obj,_openb3d_openb3dcore_tanimationkeys_qz)
		},
		{
			BBDEBUGDECL_FIELD,
			"instance",
			"*b",
			.field_offset=offsetof(struct openb3d_openb3dcore_TAnimationKeys_obj,_openb3d_openb3dcore_tanimationkeys_instance)
		},
		{
			BBDEBUGDECL_GLOBAL,
			"animkeys_map",
			":TPtrMap",
			.var_address=(void*)&openb3d_openb3dcore_TAnimationKeys_animkeys_map
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"New",
			"()i",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_TAnimationKeys_New
		},
		{
			BBDEBUGDECL_TYPEFUNCTION,
			"CreateObject",
			"(*b):TAnimationKeys",
			.func_ptr=(BBFuncPtr)&openb3d_openb3dcore_TAnimationKeys_CreateObject_TTAnimationKeys_pb
		},
		{
			BBDEBUGDECL_TYPEFUNCTION,
			"FreeObject",
			"(*b)i",
			.func_ptr=(BBFuncPtr)&openb3d_openb3dcore_TAnimationKeys_FreeObject_i_pb
		},
		{
			BBDEBUGDECL_TYPEFUNCTION,
			"GetObject",
			"(*b):TAnimationKeys",
			.func_ptr=(BBFuncPtr)&openb3d_openb3dcore_TAnimationKeys_GetObject_TTAnimationKeys_pb
		},
		{
			BBDEBUGDECL_TYPEFUNCTION,
			"GetInstance",
			"(:TAnimationKeys)*b",
			.func_ptr=(BBFuncPtr)&openb3d_openb3dcore_TAnimationKeys_GetInstance_pb_TTAnimationKeys
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"InitFields",
			"()i",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_TAnimationKeys_InitFields
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"DebugFields",
			"(i,i)i",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_TAnimationKeys_DebugFields_ii
		},
		{
			BBDEBUGDECL_TYPEFUNCTION,
			"NewAnimationKeys",
			"(:TBone):TAnimationKeys",
			.func_ptr=(BBFuncPtr)&openb3d_openb3dcore_TAnimationKeys_NewAnimationKeys_TTAnimationKeys_TTBone
		},
		{
			BBDEBUGDECL_TYPEFUNCTION,
			"Create",
			"(:TBone):TAnimationKeys",
			.func_ptr=(BBFuncPtr)&openb3d_openb3dcore_TAnimationKeys_Create_TTAnimationKeys_TTBone
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"AnimationKeysIntArrayResize",
			"(i,i)*i",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_TAnimationKeys_AnimationKeysIntArrayResize_ii
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"AnimationKeysFloatArrayResize",
			"(i,i)*f",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_TAnimationKeys_AnimationKeysFloatArrayResize_ii
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"Copy",
			"():TAnimationKeys",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_TAnimationKeys_Copy
		},
		{
			BBDEBUGDECL_END
		}
	}
};
struct BBClass_openb3d_openb3dcore_TAnimationKeys openb3d_openb3dcore_TAnimationKeys={
	&bbObjectClass,
	bbObjectFree,
	(BBDebugScope*)&openb3d_openb3dcore_TAnimationKeys_scope,
	sizeof(struct openb3d_openb3dcore_TAnimationKeys_obj),
	(void (*)(BBOBJECT))_openb3d_openb3dcore_TAnimationKeys_New,
	(void (*)(BBOBJECT))_openb3d_openb3dcore_TAnimationKeys_Delete,
	bbObjectToString,
	bbObjectCompare,
	bbObjectSendMessage,
	0,
	0,
	offsetof(struct openb3d_openb3dcore_TAnimationKeys_obj,_openb3d_openb3dcore_tanimationkeys_instance) - offsetof(struct openb3d_openb3dcore_TAnimationKeys_obj,_openb3d_openb3dcore_tanimationkeys_frames) + sizeof(BBBYTE*)
	,0
	,offsetof(struct openb3d_openb3dcore_TAnimationKeys_obj,_openb3d_openb3dcore_tanimationkeys_frames)
	,openb3d_openb3dcore_TAnimationKeys_CreateObject_TTAnimationKeys_pb
	,openb3d_openb3dcore_TAnimationKeys_FreeObject_i_pb
	,openb3d_openb3dcore_TAnimationKeys_GetObject_TTAnimationKeys_pb
	,openb3d_openb3dcore_TAnimationKeys_GetInstance_pb_TTAnimationKeys
	,_openb3d_openb3dcore_TAnimationKeys_InitFields
	,_openb3d_openb3dcore_TAnimationKeys_DebugFields_ii
	,openb3d_openb3dcore_TAnimationKeys_NewAnimationKeys_TTAnimationKeys_TTBone
	,openb3d_openb3dcore_TAnimationKeys_Create_TTAnimationKeys_TTBone
	,_openb3d_openb3dcore_TAnimationKeys_AnimationKeysIntArrayResize_ii
	,_openb3d_openb3dcore_TAnimationKeys_AnimationKeysFloatArrayResize_ii
	,_openb3d_openb3dcore_TAnimationKeys_Copy
};

void _openb3d_openb3dcore_TB3D_New(struct openb3d_openb3dcore_TB3D_obj* o) {
	bbObjectCtor((BBOBJECT)o);
	o->clas = &openb3d_openb3dcore_TB3D;
}
struct openb3d_openb3dcore_TMesh_obj* openb3d_openb3dcore_TB3D_LoadAnimB3D_TTMesh_TObjectTTEntity(BBOBJECT bbt_url,struct openb3d_openb3dcore_TEntity_obj* bbt_parent_ent_ext){
	struct brl_stream_TStream_obj* bbt_file=(struct brl_stream_TStream_obj*)((struct brl_stream_TStream_obj*)&bbNullObject);
	struct openb3d_openb3dcore_TMesh_obj* bbt_mesh=(struct openb3d_openb3dcore_TMesh_obj*)((struct openb3d_openb3dcore_TMesh_obj*)&bbNullObject);
	struct BBDebugScope_4 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"LoadAnimB3D",
		{
			{
				BBDEBUGDECL_LOCAL,
				"url",
				":Object",
				.var_address=&bbt_url
			},
			{
				BBDEBUGDECL_LOCAL,
				"parent_ent_ext",
				":TEntity",
				.var_address=&bbt_parent_ent_ext
			},
			{
				BBDEBUGDECL_LOCAL,
				"file",
				":TStream",
				.var_address=&bbt_file
			},
			{
				BBDEBUGDECL_LOCAL,
				"mesh",
				":TMesh",
				.var_address=&bbt_mesh
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x540807cbd0b3aa62, 11, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbt_file=(struct brl_stream_TStream_obj*)brl_endianstream_LittleEndianStream((struct brl_stream_TStream_obj*)brl_filesystem_ReadFile((BBOBJECT)bbt_url));
	struct BBDebugStm __stmt_1 = {0x540807cbd0b3aa62, 12, 0};
	bbOnDebugEnterStm(&__stmt_1);
	if(((BBOBJECT)bbt_file)==&bbNullObject){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x540807cbd0b3aa62, 13, 0};
		bbOnDebugEnterStm(&__stmt_0);
		brl_blitz_DebugLog(bbStringConcat(((BBString*)&_s434),((BBString *)bbObjectStringcast((BBOBJECT)bbt_url))));
		struct BBDebugStm __stmt_1 = {0x540807cbd0b3aa62, 14, 0};
		bbOnDebugEnterStm(&__stmt_1);
		bbOnDebugLeaveScope();
		bbOnDebugLeaveScope();
		return (struct openb3d_openb3dcore_TMesh_obj*)&bbNullObject;
	}
	struct BBDebugStm __stmt_2 = {0x540807cbd0b3aa62, 17, 0};
	bbOnDebugEnterStm(&__stmt_2);
	bbt_mesh=(struct openb3d_openb3dcore_TMesh_obj*)openb3d_openb3dcore_TB3D_LoadAnimB3DFromStream_TTMesh_TTStreamTObjectTTEntity((struct brl_stream_TStream_obj*)bbt_file,(BBOBJECT)bbt_url,(struct openb3d_openb3dcore_TEntity_obj*)bbt_parent_ent_ext);
	struct BBDebugStm __stmt_3 = {0x540807cbd0b3aa62, 19, 0};
	bbOnDebugEnterStm(&__stmt_3);
	brl_stream_CloseStream((struct brl_stream_TStream_obj*)bbt_file);
	struct BBDebugStm __stmt_4 = {0x540807cbd0b3aa62, 20, 0};
	bbOnDebugEnterStm(&__stmt_4);
	bbOnDebugLeaveScope();
	return (struct openb3d_openb3dcore_TMesh_obj*)bbt_mesh;
}
struct openb3d_openb3dcore_TMesh_obj* openb3d_openb3dcore_TB3D_LoadAnimB3DFromStream_TTMesh_TTStreamTObjectTTEntity(struct brl_stream_TStream_obj* bbt_file,BBOBJECT bbt_url,struct openb3d_openb3dcore_TEntity_obj* bbt_parent_ent_ext){
	BBSTRING bbt_cd=(&bbEmptyString);
	BBSTRING bbt_dir=(&bbEmptyString);
	BBINT bbt_in=0;
	BBSTRING bbt_tag=(&bbEmptyString);
	BBSTRING bbt_prev_tag=(&bbEmptyString);
	BBSTRING bbt_new_tag=(&bbEmptyString);
	BBINT bbt_vno=0;
	BBINT bbt_size=0;
	BBINT bbt_node_level=0;
	BBINT bbt_old_node_level=0;
	BBARRAY bbt_node_pos=(&bbEmptyArray);
	BBSTRING bbt_info=(&bbEmptyString);
	BBSTRING bbt_tab=(&bbEmptyString);
	BBSTRING bbt_old_tag=(&bbEmptyString);
	BBINT bbt_tex_no=0;
	BBARRAY bbt_tex=(&bbEmptyArray);
	BBSTRING bbt_te_file=(&bbEmptyString);
	BBINT bbt_te_flags=0;
	BBINT bbt_te_blend=0;
	BBINT bbt_te_coords=0;
	BBFLOAT bbt_te_u_pos=0;
	BBFLOAT bbt_te_v_pos=0;
	BBFLOAT bbt_te_u_scale=0;
	BBFLOAT bbt_te_v_scale=0;
	BBFLOAT bbt_te_angle=0;
	BBINT bbt_brush_no=0;
	BBINT bbt_b_no_texs=0;
	BBARRAY bbt_brush=(&bbEmptyArray);
	BBSTRING bbt_b_name=(&bbEmptyString);
	BBFLOAT bbt_b_red=0;
	BBFLOAT bbt_b_green=0;
	BBFLOAT bbt_b_blue=0;
	BBFLOAT bbt_b_alpha=0;
	BBFLOAT bbt_b_shine=0;
	BBINT bbt_b_blend=0;
	BBINT bbt_b_fx=0;
	BBINT bbt_b_tex_id=0;
	BBSTRING bbt_n_name=(&bbEmptyString);
	BBFLOAT bbt_n_px=0;
	BBFLOAT bbt_n_py=0;
	BBFLOAT bbt_n_pz=0;
	BBFLOAT bbt_n_sx=0;
	BBFLOAT bbt_n_sy=0;
	BBFLOAT bbt_n_sz=0;
	BBFLOAT bbt_n_qw=0;
	BBFLOAT bbt_n_qx=0;
	BBFLOAT bbt_n_qy=0;
	BBFLOAT bbt_n_qz=0;
	struct openb3d_openb3dcore_TMesh_obj* bbt_mesh=(struct openb3d_openb3dcore_TMesh_obj*)((struct openb3d_openb3dcore_TMesh_obj*)&bbNullObject);
	BBINT bbt_m_brush_id=0;
	struct openb3d_openb3dcore_TMesh_obj* bbt_v_mesh=(struct openb3d_openb3dcore_TMesh_obj*)((struct openb3d_openb3dcore_TMesh_obj*)&bbNullObject);
	struct openb3d_openb3dcore_TSurface_obj* bbt_v_surf=(struct openb3d_openb3dcore_TSurface_obj*)((struct openb3d_openb3dcore_TSurface_obj*)&bbNullObject);
	BBINT bbt_v_flags=0;
	BBINT bbt_v_tc_sets=0;
	BBINT bbt_v_tc_size=0;
	BBINT bbt_v_sz=0;
	BBFLOAT bbt_v_x=0;
	BBFLOAT bbt_v_y=0;
	BBFLOAT bbt_v_z=0;
	BBFLOAT bbt_v_nx=0;
	BBFLOAT bbt_v_ny=0;
	BBFLOAT bbt_v_nz=0;
	BBFLOAT bbt_v_r=0;
	BBFLOAT bbt_v_g=0;
	BBFLOAT bbt_v_b=0;
	BBFLOAT bbt_v_a=0;
	BBFLOAT bbt_v_u=0;
	BBFLOAT bbt_v_v=0;
	BBFLOAT bbt_v_w=0;
	BBINT bbt_v_id=0;
	struct openb3d_openb3dcore_TSurface_obj* bbt_surf=(struct openb3d_openb3dcore_TSurface_obj*)((struct openb3d_openb3dcore_TSurface_obj*)&bbNullObject);
	BBINT bbt_tr_brush_id=0;
	BBINT bbt_tr_sz=0;
	BBINT bbt_tr_no=0;
	BBINT bbt_tr_vid=0;
	BBINT bbt_tr_vid0=0;
	BBINT bbt_tr_vid1=0;
	BBINT bbt_tr_vid2=0;
	BBFLOAT bbt_tr_x=0;
	BBFLOAT bbt_tr_y=0;
	BBFLOAT bbt_tr_z=0;
	BBFLOAT bbt_tr_nx=0;
	BBFLOAT bbt_tr_ny=0;
	BBFLOAT bbt_tr_nz=0;
	BBFLOAT bbt_tr_r=0;
	BBFLOAT bbt_tr_g=0;
	BBFLOAT bbt_tr_b=0;
	BBFLOAT bbt_tr_a=0;
	BBFLOAT bbt_tr_u=0;
	BBFLOAT bbt_tr_v=0;
	BBFLOAT bbt_tr_w=0;
	BBINT bbt_a_flags=0;
	BBINT bbt_a_frames=0;
	BBINT bbt_a_fps=0;
	struct openb3d_openb3dcore_TBone_obj* bbt_bo_bone=(struct openb3d_openb3dcore_TBone_obj*)((struct openb3d_openb3dcore_TBone_obj*)&bbNullObject);
	BBINT bbt_bo_no_bones=0;
	BBINT bbt_bo_vert_id=0;
	BBFLOAT bbt_bo_vert_w=0;
	BBINT bbt_k_flags=0;
	BBINT bbt_k_frame=0;
	BBFLOAT bbt_k_px=0;
	BBFLOAT bbt_k_py=0;
	BBFLOAT bbt_k_pz=0;
	BBFLOAT bbt_k_sx=0;
	BBFLOAT bbt_k_sy=0;
	BBFLOAT bbt_k_sz=0;
	BBFLOAT bbt_k_qw=0;
	BBFLOAT bbt_k_qx=0;
	BBFLOAT bbt_k_qy=0;
	BBFLOAT bbt_k_qz=0;
	struct openb3d_openb3dcore_TEntity_obj* bbt_root_ent=(struct openb3d_openb3dcore_TEntity_obj*)((struct openb3d_openb3dcore_TEntity_obj*)&bbNullObject);
	struct openb3d_openb3dcore_TEntity_obj* bbt_parent_ent=(struct openb3d_openb3dcore_TEntity_obj*)((struct openb3d_openb3dcore_TEntity_obj*)&bbNullObject);
	struct openb3d_openb3dcore_TEntity_obj* bbt_last_ent=(struct openb3d_openb3dcore_TEntity_obj*)((struct openb3d_openb3dcore_TEntity_obj*)&bbNullObject);
	struct BBDebugScope_116 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"LoadAnimB3DFromStream",
		{
			{
				BBDEBUGDECL_LOCAL,
				"file",
				":TStream",
				.var_address=&bbt_file
			},
			{
				BBDEBUGDECL_LOCAL,
				"url",
				":Object",
				.var_address=&bbt_url
			},
			{
				BBDEBUGDECL_LOCAL,
				"parent_ent_ext",
				":TEntity",
				.var_address=&bbt_parent_ent_ext
			},
			{
				BBDEBUGDECL_LOCAL,
				"cd",
				"$",
				.var_address=&bbt_cd
			},
			{
				BBDEBUGDECL_LOCAL,
				"dir",
				"$",
				.var_address=&bbt_dir
			},
			{
				BBDEBUGDECL_LOCAL,
				"in",
				"i",
				.var_address=&bbt_in
			},
			{
				BBDEBUGDECL_LOCAL,
				"tag",
				"$",
				.var_address=&bbt_tag
			},
			{
				BBDEBUGDECL_LOCAL,
				"prev_tag",
				"$",
				.var_address=&bbt_prev_tag
			},
			{
				BBDEBUGDECL_LOCAL,
				"new_tag",
				"$",
				.var_address=&bbt_new_tag
			},
			{
				BBDEBUGDECL_LOCAL,
				"vno",
				"i",
				.var_address=&bbt_vno
			},
			{
				BBDEBUGDECL_LOCAL,
				"size",
				"i",
				.var_address=&bbt_size
			},
			{
				BBDEBUGDECL_LOCAL,
				"node_level",
				"i",
				.var_address=&bbt_node_level
			},
			{
				BBDEBUGDECL_LOCAL,
				"old_node_level",
				"i",
				.var_address=&bbt_old_node_level
			},
			{
				BBDEBUGDECL_LOCAL,
				"node_pos",
				"[]i",
				.var_address=&bbt_node_pos
			},
			{
				BBDEBUGDECL_LOCAL,
				"info",
				"$",
				.var_address=&bbt_info
			},
			{
				BBDEBUGDECL_LOCAL,
				"tab",
				"$",
				.var_address=&bbt_tab
			},
			{
				BBDEBUGDECL_LOCAL,
				"old_tag",
				"$",
				.var_address=&bbt_old_tag
			},
			{
				BBDEBUGDECL_LOCAL,
				"tex_no",
				"i",
				.var_address=&bbt_tex_no
			},
			{
				BBDEBUGDECL_LOCAL,
				"tex",
				"[]:TTexture",
				.var_address=&bbt_tex
			},
			{
				BBDEBUGDECL_LOCAL,
				"te_file",
				"$",
				.var_address=&bbt_te_file
			},
			{
				BBDEBUGDECL_LOCAL,
				"te_flags",
				"i",
				.var_address=&bbt_te_flags
			},
			{
				BBDEBUGDECL_LOCAL,
				"te_blend",
				"i",
				.var_address=&bbt_te_blend
			},
			{
				BBDEBUGDECL_LOCAL,
				"te_coords",
				"i",
				.var_address=&bbt_te_coords
			},
			{
				BBDEBUGDECL_LOCAL,
				"te_u_pos",
				"f",
				.var_address=&bbt_te_u_pos
			},
			{
				BBDEBUGDECL_LOCAL,
				"te_v_pos",
				"f",
				.var_address=&bbt_te_v_pos
			},
			{
				BBDEBUGDECL_LOCAL,
				"te_u_scale",
				"f",
				.var_address=&bbt_te_u_scale
			},
			{
				BBDEBUGDECL_LOCAL,
				"te_v_scale",
				"f",
				.var_address=&bbt_te_v_scale
			},
			{
				BBDEBUGDECL_LOCAL,
				"te_angle",
				"f",
				.var_address=&bbt_te_angle
			},
			{
				BBDEBUGDECL_LOCAL,
				"brush_no",
				"i",
				.var_address=&bbt_brush_no
			},
			{
				BBDEBUGDECL_LOCAL,
				"b_no_texs",
				"i",
				.var_address=&bbt_b_no_texs
			},
			{
				BBDEBUGDECL_LOCAL,
				"brush",
				"[]:TBrush",
				.var_address=&bbt_brush
			},
			{
				BBDEBUGDECL_LOCAL,
				"b_name",
				"$",
				.var_address=&bbt_b_name
			},
			{
				BBDEBUGDECL_LOCAL,
				"b_red",
				"f",
				.var_address=&bbt_b_red
			},
			{
				BBDEBUGDECL_LOCAL,
				"b_green",
				"f",
				.var_address=&bbt_b_green
			},
			{
				BBDEBUGDECL_LOCAL,
				"b_blue",
				"f",
				.var_address=&bbt_b_blue
			},
			{
				BBDEBUGDECL_LOCAL,
				"b_alpha",
				"f",
				.var_address=&bbt_b_alpha
			},
			{
				BBDEBUGDECL_LOCAL,
				"b_shine",
				"f",
				.var_address=&bbt_b_shine
			},
			{
				BBDEBUGDECL_LOCAL,
				"b_blend",
				"i",
				.var_address=&bbt_b_blend
			},
			{
				BBDEBUGDECL_LOCAL,
				"b_fx",
				"i",
				.var_address=&bbt_b_fx
			},
			{
				BBDEBUGDECL_LOCAL,
				"b_tex_id",
				"i",
				.var_address=&bbt_b_tex_id
			},
			{
				BBDEBUGDECL_LOCAL,
				"n_name",
				"$",
				.var_address=&bbt_n_name
			},
			{
				BBDEBUGDECL_LOCAL,
				"n_px",
				"f",
				.var_address=&bbt_n_px
			},
			{
				BBDEBUGDECL_LOCAL,
				"n_py",
				"f",
				.var_address=&bbt_n_py
			},
			{
				BBDEBUGDECL_LOCAL,
				"n_pz",
				"f",
				.var_address=&bbt_n_pz
			},
			{
				BBDEBUGDECL_LOCAL,
				"n_sx",
				"f",
				.var_address=&bbt_n_sx
			},
			{
				BBDEBUGDECL_LOCAL,
				"n_sy",
				"f",
				.var_address=&bbt_n_sy
			},
			{
				BBDEBUGDECL_LOCAL,
				"n_sz",
				"f",
				.var_address=&bbt_n_sz
			},
			{
				BBDEBUGDECL_LOCAL,
				"n_qw",
				"f",
				.var_address=&bbt_n_qw
			},
			{
				BBDEBUGDECL_LOCAL,
				"n_qx",
				"f",
				.var_address=&bbt_n_qx
			},
			{
				BBDEBUGDECL_LOCAL,
				"n_qy",
				"f",
				.var_address=&bbt_n_qy
			},
			{
				BBDEBUGDECL_LOCAL,
				"n_qz",
				"f",
				.var_address=&bbt_n_qz
			},
			{
				BBDEBUGDECL_LOCAL,
				"mesh",
				":TMesh",
				.var_address=&bbt_mesh
			},
			{
				BBDEBUGDECL_LOCAL,
				"m_brush_id",
				"i",
				.var_address=&bbt_m_brush_id
			},
			{
				BBDEBUGDECL_LOCAL,
				"v_mesh",
				":TMesh",
				.var_address=&bbt_v_mesh
			},
			{
				BBDEBUGDECL_LOCAL,
				"v_surf",
				":TSurface",
				.var_address=&bbt_v_surf
			},
			{
				BBDEBUGDECL_LOCAL,
				"v_flags",
				"i",
				.var_address=&bbt_v_flags
			},
			{
				BBDEBUGDECL_LOCAL,
				"v_tc_sets",
				"i",
				.var_address=&bbt_v_tc_sets
			},
			{
				BBDEBUGDECL_LOCAL,
				"v_tc_size",
				"i",
				.var_address=&bbt_v_tc_size
			},
			{
				BBDEBUGDECL_LOCAL,
				"v_sz",
				"i",
				.var_address=&bbt_v_sz
			},
			{
				BBDEBUGDECL_LOCAL,
				"v_x",
				"f",
				.var_address=&bbt_v_x
			},
			{
				BBDEBUGDECL_LOCAL,
				"v_y",
				"f",
				.var_address=&bbt_v_y
			},
			{
				BBDEBUGDECL_LOCAL,
				"v_z",
				"f",
				.var_address=&bbt_v_z
			},
			{
				BBDEBUGDECL_LOCAL,
				"v_nx",
				"f",
				.var_address=&bbt_v_nx
			},
			{
				BBDEBUGDECL_LOCAL,
				"v_ny",
				"f",
				.var_address=&bbt_v_ny
			},
			{
				BBDEBUGDECL_LOCAL,
				"v_nz",
				"f",
				.var_address=&bbt_v_nz
			},
			{
				BBDEBUGDECL_LOCAL,
				"v_r",
				"f",
				.var_address=&bbt_v_r
			},
			{
				BBDEBUGDECL_LOCAL,
				"v_g",
				"f",
				.var_address=&bbt_v_g
			},
			{
				BBDEBUGDECL_LOCAL,
				"v_b",
				"f",
				.var_address=&bbt_v_b
			},
			{
				BBDEBUGDECL_LOCAL,
				"v_a",
				"f",
				.var_address=&bbt_v_a
			},
			{
				BBDEBUGDECL_LOCAL,
				"v_u",
				"f",
				.var_address=&bbt_v_u
			},
			{
				BBDEBUGDECL_LOCAL,
				"v_v",
				"f",
				.var_address=&bbt_v_v
			},
			{
				BBDEBUGDECL_LOCAL,
				"v_w",
				"f",
				.var_address=&bbt_v_w
			},
			{
				BBDEBUGDECL_LOCAL,
				"v_id",
				"i",
				.var_address=&bbt_v_id
			},
			{
				BBDEBUGDECL_LOCAL,
				"surf",
				":TSurface",
				.var_address=&bbt_surf
			},
			{
				BBDEBUGDECL_LOCAL,
				"tr_brush_id",
				"i",
				.var_address=&bbt_tr_brush_id
			},
			{
				BBDEBUGDECL_LOCAL,
				"tr_sz",
				"i",
				.var_address=&bbt_tr_sz
			},
			{
				BBDEBUGDECL_LOCAL,
				"tr_no",
				"i",
				.var_address=&bbt_tr_no
			},
			{
				BBDEBUGDECL_LOCAL,
				"tr_vid",
				"i",
				.var_address=&bbt_tr_vid
			},
			{
				BBDEBUGDECL_LOCAL,
				"tr_vid0",
				"i",
				.var_address=&bbt_tr_vid0
			},
			{
				BBDEBUGDECL_LOCAL,
				"tr_vid1",
				"i",
				.var_address=&bbt_tr_vid1
			},
			{
				BBDEBUGDECL_LOCAL,
				"tr_vid2",
				"i",
				.var_address=&bbt_tr_vid2
			},
			{
				BBDEBUGDECL_LOCAL,
				"tr_x",
				"f",
				.var_address=&bbt_tr_x
			},
			{
				BBDEBUGDECL_LOCAL,
				"tr_y",
				"f",
				.var_address=&bbt_tr_y
			},
			{
				BBDEBUGDECL_LOCAL,
				"tr_z",
				"f",
				.var_address=&bbt_tr_z
			},
			{
				BBDEBUGDECL_LOCAL,
				"tr_nx",
				"f",
				.var_address=&bbt_tr_nx
			},
			{
				BBDEBUGDECL_LOCAL,
				"tr_ny",
				"f",
				.var_address=&bbt_tr_ny
			},
			{
				BBDEBUGDECL_LOCAL,
				"tr_nz",
				"f",
				.var_address=&bbt_tr_nz
			},
			{
				BBDEBUGDECL_LOCAL,
				"tr_r",
				"f",
				.var_address=&bbt_tr_r
			},
			{
				BBDEBUGDECL_LOCAL,
				"tr_g",
				"f",
				.var_address=&bbt_tr_g
			},
			{
				BBDEBUGDECL_LOCAL,
				"tr_b",
				"f",
				.var_address=&bbt_tr_b
			},
			{
				BBDEBUGDECL_LOCAL,
				"tr_a",
				"f",
				.var_address=&bbt_tr_a
			},
			{
				BBDEBUGDECL_LOCAL,
				"tr_u",
				"f",
				.var_address=&bbt_tr_u
			},
			{
				BBDEBUGDECL_LOCAL,
				"tr_v",
				"f",
				.var_address=&bbt_tr_v
			},
			{
				BBDEBUGDECL_LOCAL,
				"tr_w",
				"f",
				.var_address=&bbt_tr_w
			},
			{
				BBDEBUGDECL_LOCAL,
				"a_flags",
				"i",
				.var_address=&bbt_a_flags
			},
			{
				BBDEBUGDECL_LOCAL,
				"a_frames",
				"i",
				.var_address=&bbt_a_frames
			},
			{
				BBDEBUGDECL_LOCAL,
				"a_fps",
				"i",
				.var_address=&bbt_a_fps
			},
			{
				BBDEBUGDECL_LOCAL,
				"bo_bone",
				":TBone",
				.var_address=&bbt_bo_bone
			},
			{
				BBDEBUGDECL_LOCAL,
				"bo_no_bones",
				"i",
				.var_address=&bbt_bo_no_bones
			},
			{
				BBDEBUGDECL_LOCAL,
				"bo_vert_id",
				"i",
				.var_address=&bbt_bo_vert_id
			},
			{
				BBDEBUGDECL_LOCAL,
				"bo_vert_w",
				"f",
				.var_address=&bbt_bo_vert_w
			},
			{
				BBDEBUGDECL_LOCAL,
				"k_flags",
				"i",
				.var_address=&bbt_k_flags
			},
			{
				BBDEBUGDECL_LOCAL,
				"k_frame",
				"i",
				.var_address=&bbt_k_frame
			},
			{
				BBDEBUGDECL_LOCAL,
				"k_px",
				"f",
				.var_address=&bbt_k_px
			},
			{
				BBDEBUGDECL_LOCAL,
				"k_py",
				"f",
				.var_address=&bbt_k_py
			},
			{
				BBDEBUGDECL_LOCAL,
				"k_pz",
				"f",
				.var_address=&bbt_k_pz
			},
			{
				BBDEBUGDECL_LOCAL,
				"k_sx",
				"f",
				.var_address=&bbt_k_sx
			},
			{
				BBDEBUGDECL_LOCAL,
				"k_sy",
				"f",
				.var_address=&bbt_k_sy
			},
			{
				BBDEBUGDECL_LOCAL,
				"k_sz",
				"f",
				.var_address=&bbt_k_sz
			},
			{
				BBDEBUGDECL_LOCAL,
				"k_qw",
				"f",
				.var_address=&bbt_k_qw
			},
			{
				BBDEBUGDECL_LOCAL,
				"k_qx",
				"f",
				.var_address=&bbt_k_qx
			},
			{
				BBDEBUGDECL_LOCAL,
				"k_qy",
				"f",
				.var_address=&bbt_k_qy
			},
			{
				BBDEBUGDECL_LOCAL,
				"k_qz",
				"f",
				.var_address=&bbt_k_qz
			},
			{
				BBDEBUGDECL_LOCAL,
				"root_ent",
				":TEntity",
				.var_address=&bbt_root_ent
			},
			{
				BBDEBUGDECL_LOCAL,
				"parent_ent",
				":TEntity",
				.var_address=&bbt_parent_ent
			},
			{
				BBDEBUGDECL_LOCAL,
				"last_ent",
				":TEntity",
				.var_address=&bbt_last_ent
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x540807cbd0b3aa62, 27, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbt_cd=brl_filesystem_CurrentDir();
	struct BBDebugStm __stmt_1 = {0x540807cbd0b3aa62, 28, 0};
	bbOnDebugEnterStm(&__stmt_1);
	bbt_dir=((BBString *)bbObjectStringcast((BBOBJECT)bbt_url));
	struct BBDebugStm __stmt_2 = {0x540807cbd0b3aa62, 29, 0};
	bbOnDebugEnterStm(&__stmt_2);
	openb3d_openb3dcore_TB3D_filepath=brl_filesystem_ExtractDir((BBString *)bbObjectStringcast((BBOBJECT)bbt_url));
	struct BBDebugStm __stmt_3 = {0x540807cbd0b3aa62, 32, 0};
	bbOnDebugEnterStm(&__stmt_3);
	bbt_in=0;
	struct BBDebugStm __stmt_4 = {0x540807cbd0b3aa62, 33, 0};
	bbOnDebugEnterStm(&__stmt_4);
	while(brl_retro_Instr(bbt_dir,((BBString*)&_s400),(bbt_in+1))!=0){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x540807cbd0b3aa62, 34, 0};
		bbOnDebugEnterStm(&__stmt_0);
		bbt_in=brl_retro_Instr(bbt_dir,((BBString*)&_s400),(bbt_in+1));
		bbOnDebugLeaveScope();
	}
	struct BBDebugStm __stmt_5 = {0x540807cbd0b3aa62, 36, 0};
	bbOnDebugEnterStm(&__stmt_5);
	while(brl_retro_Instr(bbt_dir,((BBString*)&_s401),(bbt_in+1))!=0){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x540807cbd0b3aa62, 37, 0};
		bbOnDebugEnterStm(&__stmt_0);
		bbt_in=brl_retro_Instr(bbt_dir,((BBString*)&_s401),(bbt_in+1));
		bbOnDebugLeaveScope();
	}
	struct BBDebugStm __stmt_6 = {0x540807cbd0b3aa62, 39, 0};
	bbOnDebugEnterStm(&__stmt_6);
	if(bbt_in!=0){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x540807cbd0b3aa62, 39, 0};
		bbOnDebugEnterStm(&__stmt_0);
		bbt_dir=brl_retro_Left(bbt_dir,(bbt_in-1));
		bbOnDebugLeaveScope();
	}
	struct BBDebugStm __stmt_7 = {0x540807cbd0b3aa62, 40, 0};
	bbOnDebugEnterStm(&__stmt_7);
	if(bbStringEquals(openb3d_openb3dcore_TB3D_filepath, ((BBString*)&bbEmptyString))!=1){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x540807cbd0b3aa62, 40, 0};
		bbOnDebugEnterStm(&__stmt_0);
		brl_filesystem_ChangeDir(openb3d_openb3dcore_TB3D_filepath);
		bbOnDebugLeaveScope();
	}
	struct BBDebugStm __stmt_8 = {0x540807cbd0b3aa62, 43, 0};
	bbOnDebugEnterStm(&__stmt_8);
	bbt_tag=((BBString*)&bbEmptyString);
	struct BBDebugStm __stmt_9 = {0x540807cbd0b3aa62, 44, 0};
	bbOnDebugEnterStm(&__stmt_9);
	bbt_prev_tag=((BBString*)&bbEmptyString);
	struct BBDebugStm __stmt_10 = {0x540807cbd0b3aa62, 45, 0};
	bbOnDebugEnterStm(&__stmt_10);
	bbt_new_tag=((BBString*)&bbEmptyString);
	struct BBDebugStm __stmt_11 = {0x540807cbd0b3aa62, 46, 0};
	bbOnDebugEnterStm(&__stmt_11);
	bbt_tag=openb3d_openb3dcore_TB3D_ReadTag_S_TTStream((struct brl_stream_TStream_obj*)bbt_file);
	struct BBDebugStm __stmt_12 = {0x540807cbd0b3aa62, 47, 0};
	bbOnDebugEnterStm(&__stmt_12);
	brl_stream_ReadLong((struct brl_stream_TStream_obj*)bbt_file);
	struct BBDebugStm __stmt_13 = {0x540807cbd0b3aa62, 48, 0};
	bbOnDebugEnterStm(&__stmt_13);
	bbt_vno=brl_stream_ReadInt((struct brl_stream_TStream_obj*)bbt_file);
	struct BBDebugStm __stmt_14 = {0x540807cbd0b3aa62, 49, 0};
	bbOnDebugEnterStm(&__stmt_14);
	if(bbStringEquals(bbt_tag, ((BBString*)&_s435))!=1){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x540807cbd0b3aa62, 50, 0};
		bbOnDebugEnterStm(&__stmt_0);
		brl_blitz_DebugLog(bbStringConcat(((BBString*)&_s436),bbt_dir));
		struct BBDebugStm __stmt_1 = {0x540807cbd0b3aa62, 51, 0};
		bbOnDebugEnterStm(&__stmt_1);
		bbOnDebugLeaveScope();
		bbOnDebugLeaveScope();
		return (struct openb3d_openb3dcore_TMesh_obj*)&bbNullObject;
	}
	struct BBDebugStm __stmt_15 = {0x540807cbd0b3aa62, 53, 0};
	bbOnDebugEnterStm(&__stmt_15);
	if((bbt_vno/100)>0){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x540807cbd0b3aa62, 54, 0};
		bbOnDebugEnterStm(&__stmt_0);
		brl_blitz_DebugLog(bbStringConcat(((BBString*)&_s437),bbStringFromInt(bbt_vno)));
		struct BBDebugStm __stmt_1 = {0x540807cbd0b3aa62, 55, 0};
		bbOnDebugEnterStm(&__stmt_1);
		bbOnDebugLeaveScope();
		bbOnDebugLeaveScope();
		return (struct openb3d_openb3dcore_TMesh_obj*)&bbNullObject;
	}
	struct BBDebugStm __stmt_16 = {0x540807cbd0b3aa62, 57, 0};
	bbOnDebugEnterStm(&__stmt_16);
	if(openb3d_openb3dcore_TGlobal3D_Log_B3D!=0){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x540807cbd0b3aa62, 57, 0};
		bbOnDebugEnterStm(&__stmt_0);
		brl_blitz_DebugLog(bbStringConcat(bbStringConcat(bbStringConcat(((BBString*)&_s438),bbt_dir),((BBString*)&_s439)),bbStringFromLong(((struct brl_stream_TStream_obj*)bbNullObjectTest((BBObject*)bbt_file))->clas->m_Size((struct brl_stream_TIO_obj*)bbt_file))));
		bbOnDebugLeaveScope();
	}
	struct BBDebugStm __stmt_17 = {0x540807cbd0b3aa62, 60, 0};
	bbOnDebugEnterStm(&__stmt_17);
	bbt_size=0;
	struct BBDebugStm __stmt_18 = {0x540807cbd0b3aa62, 60, 0};
	bbOnDebugEnterStm(&__stmt_18);
	bbt_node_level=-1;
	struct BBDebugStm __stmt_19 = {0x540807cbd0b3aa62, 60, 0};
	bbOnDebugEnterStm(&__stmt_19);
	bbt_old_node_level=-1;
	struct BBDebugStm __stmt_20 = {0x540807cbd0b3aa62, 61, 0};
	bbOnDebugEnterStm(&__stmt_20);
	bbt_node_pos=bbArrayNew1D("i", 100);
	struct BBDebugStm __stmt_21 = {0x540807cbd0b3aa62, 62, 0};
	bbOnDebugEnterStm(&__stmt_21);
	bbt_info=((BBString*)&bbEmptyString);
	struct BBDebugStm __stmt_22 = {0x540807cbd0b3aa62, 62, 0};
	bbOnDebugEnterStm(&__stmt_22);
	bbt_tab=((BBString*)&bbEmptyString);
	struct BBDebugStm __stmt_23 = {0x540807cbd0b3aa62, 62, 0};
	bbOnDebugEnterStm(&__stmt_23);
	bbt_old_tag=((BBString*)&bbEmptyString);
	struct BBDebugStm __stmt_24 = {0x540807cbd0b3aa62, 64, 0};
	bbOnDebugEnterStm(&__stmt_24);
	bbt_tex_no=0;
	struct BBDebugStm __stmt_25 = {0x540807cbd0b3aa62, 65, 0};
	bbOnDebugEnterStm(&__stmt_25);
	bbt_tex=bbArrayNew1D(":TTexture", 1);
	struct BBDebugStm __stmt_26 = {0x540807cbd0b3aa62, 66, 0};
	bbOnDebugEnterStm(&__stmt_26);
	bbt_te_file=((BBString*)&bbEmptyString);
	struct BBDebugStm __stmt_27 = {0x540807cbd0b3aa62, 67, 0};
	bbOnDebugEnterStm(&__stmt_27);
	bbt_te_flags=0;
	struct BBDebugStm __stmt_28 = {0x540807cbd0b3aa62, 67, 0};
	bbOnDebugEnterStm(&__stmt_28);
	bbt_te_blend=0;
	struct BBDebugStm __stmt_29 = {0x540807cbd0b3aa62, 67, 0};
	bbOnDebugEnterStm(&__stmt_29);
	bbt_te_coords=0;
	struct BBDebugStm __stmt_30 = {0x540807cbd0b3aa62, 68, 0};
	bbOnDebugEnterStm(&__stmt_30);
	bbt_te_u_pos=0.00000000f;
	struct BBDebugStm __stmt_31 = {0x540807cbd0b3aa62, 68, 0};
	bbOnDebugEnterStm(&__stmt_31);
	bbt_te_v_pos=0.00000000f;
	struct BBDebugStm __stmt_32 = {0x540807cbd0b3aa62, 68, 0};
	bbOnDebugEnterStm(&__stmt_32);
	bbt_te_u_scale=0.00000000f;
	struct BBDebugStm __stmt_33 = {0x540807cbd0b3aa62, 68, 0};
	bbOnDebugEnterStm(&__stmt_33);
	bbt_te_v_scale=0.00000000f;
	struct BBDebugStm __stmt_34 = {0x540807cbd0b3aa62, 68, 0};
	bbOnDebugEnterStm(&__stmt_34);
	bbt_te_angle=0.00000000f;
	struct BBDebugStm __stmt_35 = {0x540807cbd0b3aa62, 70, 0};
	bbOnDebugEnterStm(&__stmt_35);
	bbt_brush_no=0;
	struct BBDebugStm __stmt_36 = {0x540807cbd0b3aa62, 70, 0};
	bbOnDebugEnterStm(&__stmt_36);
	bbt_b_no_texs=0;
	struct BBDebugStm __stmt_37 = {0x540807cbd0b3aa62, 71, 0};
	bbOnDebugEnterStm(&__stmt_37);
	bbt_brush=bbArrayNew1D(":TBrush", 1);
	struct BBDebugStm __stmt_38 = {0x540807cbd0b3aa62, 72, 0};
	bbOnDebugEnterStm(&__stmt_38);
	bbt_b_name=((BBString*)&bbEmptyString);
	struct BBDebugStm __stmt_39 = {0x540807cbd0b3aa62, 73, 0};
	bbOnDebugEnterStm(&__stmt_39);
	bbt_b_red=0.00000000f;
	struct BBDebugStm __stmt_40 = {0x540807cbd0b3aa62, 73, 0};
	bbOnDebugEnterStm(&__stmt_40);
	bbt_b_green=0.00000000f;
	struct BBDebugStm __stmt_41 = {0x540807cbd0b3aa62, 73, 0};
	bbOnDebugEnterStm(&__stmt_41);
	bbt_b_blue=0.00000000f;
	struct BBDebugStm __stmt_42 = {0x540807cbd0b3aa62, 73, 0};
	bbOnDebugEnterStm(&__stmt_42);
	bbt_b_alpha=0.00000000f;
	struct BBDebugStm __stmt_43 = {0x540807cbd0b3aa62, 73, 0};
	bbOnDebugEnterStm(&__stmt_43);
	bbt_b_shine=0.00000000f;
	struct BBDebugStm __stmt_44 = {0x540807cbd0b3aa62, 74, 0};
	bbOnDebugEnterStm(&__stmt_44);
	bbt_b_blend=0;
	struct BBDebugStm __stmt_45 = {0x540807cbd0b3aa62, 74, 0};
	bbOnDebugEnterStm(&__stmt_45);
	bbt_b_fx=0;
	struct BBDebugStm __stmt_46 = {0x540807cbd0b3aa62, 74, 0};
	bbOnDebugEnterStm(&__stmt_46);
	bbt_b_tex_id=0;
	struct BBDebugStm __stmt_47 = {0x540807cbd0b3aa62, 76, 0};
	bbOnDebugEnterStm(&__stmt_47);
	bbt_n_name=((BBString*)&bbEmptyString);
	struct BBDebugStm __stmt_48 = {0x540807cbd0b3aa62, 77, 0};
	bbOnDebugEnterStm(&__stmt_48);
	bbt_n_px=0.00000000f;
	struct BBDebugStm __stmt_49 = {0x540807cbd0b3aa62, 77, 0};
	bbOnDebugEnterStm(&__stmt_49);
	bbt_n_py=0.00000000f;
	struct BBDebugStm __stmt_50 = {0x540807cbd0b3aa62, 77, 0};
	bbOnDebugEnterStm(&__stmt_50);
	bbt_n_pz=0.00000000f;
	struct BBDebugStm __stmt_51 = {0x540807cbd0b3aa62, 78, 0};
	bbOnDebugEnterStm(&__stmt_51);
	bbt_n_sx=0.00000000f;
	struct BBDebugStm __stmt_52 = {0x540807cbd0b3aa62, 78, 0};
	bbOnDebugEnterStm(&__stmt_52);
	bbt_n_sy=0.00000000f;
	struct BBDebugStm __stmt_53 = {0x540807cbd0b3aa62, 78, 0};
	bbOnDebugEnterStm(&__stmt_53);
	bbt_n_sz=0.00000000f;
	struct BBDebugStm __stmt_54 = {0x540807cbd0b3aa62, 80, 0};
	bbOnDebugEnterStm(&__stmt_54);
	bbt_n_qw=0.00000000f;
	struct BBDebugStm __stmt_55 = {0x540807cbd0b3aa62, 80, 0};
	bbOnDebugEnterStm(&__stmt_55);
	bbt_n_qx=0.00000000f;
	struct BBDebugStm __stmt_56 = {0x540807cbd0b3aa62, 80, 0};
	bbOnDebugEnterStm(&__stmt_56);
	bbt_n_qy=0.00000000f;
	struct BBDebugStm __stmt_57 = {0x540807cbd0b3aa62, 80, 0};
	bbOnDebugEnterStm(&__stmt_57);
	bbt_n_qz=0.00000000f;
	struct BBDebugStm __stmt_58 = {0x540807cbd0b3aa62, 82, 0};
	bbOnDebugEnterStm(&__stmt_58);
	bbt_mesh=(struct openb3d_openb3dcore_TMesh_obj*)((struct openb3d_openb3dcore_TMesh_obj*)&bbNullObject);
	struct BBDebugStm __stmt_59 = {0x540807cbd0b3aa62, 83, 0};
	bbOnDebugEnterStm(&__stmt_59);
	bbt_m_brush_id=0;
	struct BBDebugStm __stmt_60 = {0x540807cbd0b3aa62, 85, 0};
	bbOnDebugEnterStm(&__stmt_60);
	bbt_v_mesh=(struct openb3d_openb3dcore_TMesh_obj*)((struct openb3d_openb3dcore_TMesh_obj*)&bbNullObject);
	struct BBDebugStm __stmt_61 = {0x540807cbd0b3aa62, 86, 0};
	bbOnDebugEnterStm(&__stmt_61);
	bbt_v_surf=(struct openb3d_openb3dcore_TSurface_obj*)((struct openb3d_openb3dcore_TSurface_obj*)&bbNullObject);
	struct BBDebugStm __stmt_62 = {0x540807cbd0b3aa62, 87, 0};
	bbOnDebugEnterStm(&__stmt_62);
	bbt_v_flags=0;
	struct BBDebugStm __stmt_63 = {0x540807cbd0b3aa62, 87, 0};
	bbOnDebugEnterStm(&__stmt_63);
	bbt_v_tc_sets=0;
	struct BBDebugStm __stmt_64 = {0x540807cbd0b3aa62, 87, 0};
	bbOnDebugEnterStm(&__stmt_64);
	bbt_v_tc_size=0;
	struct BBDebugStm __stmt_65 = {0x540807cbd0b3aa62, 87, 0};
	bbOnDebugEnterStm(&__stmt_65);
	bbt_v_sz=0;
	struct BBDebugStm __stmt_66 = {0x540807cbd0b3aa62, 88, 0};
	bbOnDebugEnterStm(&__stmt_66);
	bbt_v_x=0.00000000f;
	struct BBDebugStm __stmt_67 = {0x540807cbd0b3aa62, 88, 0};
	bbOnDebugEnterStm(&__stmt_67);
	bbt_v_y=0.00000000f;
	struct BBDebugStm __stmt_68 = {0x540807cbd0b3aa62, 88, 0};
	bbOnDebugEnterStm(&__stmt_68);
	bbt_v_z=0.00000000f;
	struct BBDebugStm __stmt_69 = {0x540807cbd0b3aa62, 89, 0};
	bbOnDebugEnterStm(&__stmt_69);
	bbt_v_nx=0.00000000f;
	struct BBDebugStm __stmt_70 = {0x540807cbd0b3aa62, 89, 0};
	bbOnDebugEnterStm(&__stmt_70);
	bbt_v_ny=0.00000000f;
	struct BBDebugStm __stmt_71 = {0x540807cbd0b3aa62, 89, 0};
	bbOnDebugEnterStm(&__stmt_71);
	bbt_v_nz=0.00000000f;
	struct BBDebugStm __stmt_72 = {0x540807cbd0b3aa62, 90, 0};
	bbOnDebugEnterStm(&__stmt_72);
	bbt_v_r=0.00000000f;
	struct BBDebugStm __stmt_73 = {0x540807cbd0b3aa62, 90, 0};
	bbOnDebugEnterStm(&__stmt_73);
	bbt_v_g=0.00000000f;
	struct BBDebugStm __stmt_74 = {0x540807cbd0b3aa62, 90, 0};
	bbOnDebugEnterStm(&__stmt_74);
	bbt_v_b=0.00000000f;
	struct BBDebugStm __stmt_75 = {0x540807cbd0b3aa62, 90, 0};
	bbOnDebugEnterStm(&__stmt_75);
	bbt_v_a=0.00000000f;
	struct BBDebugStm __stmt_76 = {0x540807cbd0b3aa62, 91, 0};
	bbOnDebugEnterStm(&__stmt_76);
	bbt_v_u=0.00000000f;
	struct BBDebugStm __stmt_77 = {0x540807cbd0b3aa62, 91, 0};
	bbOnDebugEnterStm(&__stmt_77);
	bbt_v_v=0.00000000f;
	struct BBDebugStm __stmt_78 = {0x540807cbd0b3aa62, 91, 0};
	bbOnDebugEnterStm(&__stmt_78);
	bbt_v_w=0.00000000f;
	struct BBDebugStm __stmt_79 = {0x540807cbd0b3aa62, 92, 0};
	bbOnDebugEnterStm(&__stmt_79);
	bbt_v_id=0;
	struct BBDebugStm __stmt_80 = {0x540807cbd0b3aa62, 94, 0};
	bbOnDebugEnterStm(&__stmt_80);
	bbt_surf=(struct openb3d_openb3dcore_TSurface_obj*)((struct openb3d_openb3dcore_TSurface_obj*)&bbNullObject);
	struct BBDebugStm __stmt_81 = {0x540807cbd0b3aa62, 95, 0};
	bbOnDebugEnterStm(&__stmt_81);
	bbt_tr_brush_id=0;
	struct BBDebugStm __stmt_82 = {0x540807cbd0b3aa62, 95, 0};
	bbOnDebugEnterStm(&__stmt_82);
	bbt_tr_sz=0;
	struct BBDebugStm __stmt_83 = {0x540807cbd0b3aa62, 95, 0};
	bbOnDebugEnterStm(&__stmt_83);
	bbt_tr_no=0;
	struct BBDebugStm __stmt_84 = {0x540807cbd0b3aa62, 96, 0};
	bbOnDebugEnterStm(&__stmt_84);
	bbt_tr_vid=0;
	struct BBDebugStm __stmt_85 = {0x540807cbd0b3aa62, 96, 0};
	bbOnDebugEnterStm(&__stmt_85);
	bbt_tr_vid0=0;
	struct BBDebugStm __stmt_86 = {0x540807cbd0b3aa62, 96, 0};
	bbOnDebugEnterStm(&__stmt_86);
	bbt_tr_vid1=0;
	struct BBDebugStm __stmt_87 = {0x540807cbd0b3aa62, 96, 0};
	bbOnDebugEnterStm(&__stmt_87);
	bbt_tr_vid2=0;
	struct BBDebugStm __stmt_88 = {0x540807cbd0b3aa62, 97, 0};
	bbOnDebugEnterStm(&__stmt_88);
	bbt_tr_x=0.00000000f;
	struct BBDebugStm __stmt_89 = {0x540807cbd0b3aa62, 97, 0};
	bbOnDebugEnterStm(&__stmt_89);
	bbt_tr_y=0.00000000f;
	struct BBDebugStm __stmt_90 = {0x540807cbd0b3aa62, 97, 0};
	bbOnDebugEnterStm(&__stmt_90);
	bbt_tr_z=0.00000000f;
	struct BBDebugStm __stmt_91 = {0x540807cbd0b3aa62, 98, 0};
	bbOnDebugEnterStm(&__stmt_91);
	bbt_tr_nx=0.00000000f;
	struct BBDebugStm __stmt_92 = {0x540807cbd0b3aa62, 98, 0};
	bbOnDebugEnterStm(&__stmt_92);
	bbt_tr_ny=0.00000000f;
	struct BBDebugStm __stmt_93 = {0x540807cbd0b3aa62, 98, 0};
	bbOnDebugEnterStm(&__stmt_93);
	bbt_tr_nz=0.00000000f;
	struct BBDebugStm __stmt_94 = {0x540807cbd0b3aa62, 99, 0};
	bbOnDebugEnterStm(&__stmt_94);
	bbt_tr_r=0.00000000f;
	struct BBDebugStm __stmt_95 = {0x540807cbd0b3aa62, 99, 0};
	bbOnDebugEnterStm(&__stmt_95);
	bbt_tr_g=0.00000000f;
	struct BBDebugStm __stmt_96 = {0x540807cbd0b3aa62, 99, 0};
	bbOnDebugEnterStm(&__stmt_96);
	bbt_tr_b=0.00000000f;
	struct BBDebugStm __stmt_97 = {0x540807cbd0b3aa62, 99, 0};
	bbOnDebugEnterStm(&__stmt_97);
	bbt_tr_a=0.00000000f;
	struct BBDebugStm __stmt_98 = {0x540807cbd0b3aa62, 100, 0};
	bbOnDebugEnterStm(&__stmt_98);
	bbt_tr_u=0.00000000f;
	struct BBDebugStm __stmt_99 = {0x540807cbd0b3aa62, 100, 0};
	bbOnDebugEnterStm(&__stmt_99);
	bbt_tr_v=0.00000000f;
	struct BBDebugStm __stmt_100 = {0x540807cbd0b3aa62, 100, 0};
	bbOnDebugEnterStm(&__stmt_100);
	bbt_tr_w=0.00000000f;
	struct BBDebugStm __stmt_101 = {0x540807cbd0b3aa62, 102, 0};
	bbOnDebugEnterStm(&__stmt_101);
	bbt_a_flags=0;
	struct BBDebugStm __stmt_102 = {0x540807cbd0b3aa62, 102, 0};
	bbOnDebugEnterStm(&__stmt_102);
	bbt_a_frames=0;
	struct BBDebugStm __stmt_103 = {0x540807cbd0b3aa62, 102, 0};
	bbOnDebugEnterStm(&__stmt_103);
	bbt_a_fps=0;
	struct BBDebugStm __stmt_104 = {0x540807cbd0b3aa62, 104, 0};
	bbOnDebugEnterStm(&__stmt_104);
	bbt_bo_bone=(struct openb3d_openb3dcore_TBone_obj*)((struct openb3d_openb3dcore_TBone_obj*)&bbNullObject);
	struct BBDebugStm __stmt_105 = {0x540807cbd0b3aa62, 105, 0};
	bbOnDebugEnterStm(&__stmt_105);
	bbt_bo_no_bones=0;
	struct BBDebugStm __stmt_106 = {0x540807cbd0b3aa62, 105, 0};
	bbOnDebugEnterStm(&__stmt_106);
	bbt_bo_vert_id=0;
	struct BBDebugStm __stmt_107 = {0x540807cbd0b3aa62, 106, 0};
	bbOnDebugEnterStm(&__stmt_107);
	bbt_bo_vert_w=0.00000000f;
	struct BBDebugStm __stmt_108 = {0x540807cbd0b3aa62, 108, 0};
	bbOnDebugEnterStm(&__stmt_108);
	bbt_k_flags=0;
	struct BBDebugStm __stmt_109 = {0x540807cbd0b3aa62, 108, 0};
	bbOnDebugEnterStm(&__stmt_109);
	bbt_k_frame=0;
	struct BBDebugStm __stmt_110 = {0x540807cbd0b3aa62, 109, 0};
	bbOnDebugEnterStm(&__stmt_110);
	bbt_k_px=0.00000000f;
	struct BBDebugStm __stmt_111 = {0x540807cbd0b3aa62, 109, 0};
	bbOnDebugEnterStm(&__stmt_111);
	bbt_k_py=0.00000000f;
	struct BBDebugStm __stmt_112 = {0x540807cbd0b3aa62, 109, 0};
	bbOnDebugEnterStm(&__stmt_112);
	bbt_k_pz=0.00000000f;
	struct BBDebugStm __stmt_113 = {0x540807cbd0b3aa62, 110, 0};
	bbOnDebugEnterStm(&__stmt_113);
	bbt_k_sx=0.00000000f;
	struct BBDebugStm __stmt_114 = {0x540807cbd0b3aa62, 110, 0};
	bbOnDebugEnterStm(&__stmt_114);
	bbt_k_sy=0.00000000f;
	struct BBDebugStm __stmt_115 = {0x540807cbd0b3aa62, 110, 0};
	bbOnDebugEnterStm(&__stmt_115);
	bbt_k_sz=0.00000000f;
	struct BBDebugStm __stmt_116 = {0x540807cbd0b3aa62, 111, 0};
	bbOnDebugEnterStm(&__stmt_116);
	bbt_k_qw=0.00000000f;
	struct BBDebugStm __stmt_117 = {0x540807cbd0b3aa62, 111, 0};
	bbOnDebugEnterStm(&__stmt_117);
	bbt_k_qx=0.00000000f;
	struct BBDebugStm __stmt_118 = {0x540807cbd0b3aa62, 111, 0};
	bbOnDebugEnterStm(&__stmt_118);
	bbt_k_qy=0.00000000f;
	struct BBDebugStm __stmt_119 = {0x540807cbd0b3aa62, 111, 0};
	bbOnDebugEnterStm(&__stmt_119);
	bbt_k_qz=0.00000000f;
	struct BBDebugStm __stmt_120 = {0x540807cbd0b3aa62, 113, 0};
	bbOnDebugEnterStm(&__stmt_120);
	bbt_root_ent=(struct openb3d_openb3dcore_TEntity_obj*)&bbNullObject;
	struct BBDebugStm __stmt_121 = {0x540807cbd0b3aa62, 114, 0};
	bbOnDebugEnterStm(&__stmt_121);
	bbt_parent_ent=(struct openb3d_openb3dcore_TEntity_obj*)&bbNullObject;
	struct BBDebugStm __stmt_122 = {0x540807cbd0b3aa62, 115, 0};
	bbOnDebugEnterStm(&__stmt_122);
	bbt_last_ent=(struct openb3d_openb3dcore_TEntity_obj*)&bbNullObject;
	struct BBDebugStm __stmt_123 = {0x540807cbd0b3aa62, 803, 0};
	bbOnDebugEnterStm(&__stmt_123);
	do{
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x540807cbd0b3aa62, 119, 0};
		bbOnDebugEnterStm(&__stmt_0);
		bbt_new_tag=openb3d_openb3dcore_TB3D_ReadTag_S_TTStream((struct brl_stream_TStream_obj*)bbt_file);
		struct BBDebugStm __stmt_1 = {0x540807cbd0b3aa62, 121, 0};
		bbOnDebugEnterStm(&__stmt_1);
		if(openb3d_openb3dcore_TB3D_NewTag_i_S(bbt_new_tag)==1){
			struct BBDebugScope __scope = {
				BBDEBUGSCOPE_LOCALBLOCK,
				0,
				{
					{
						BBDEBUGDECL_END
					}
				}
			};
			bbOnDebugEnterScope((BBDebugScope *)&__scope);
			struct BBDebugStm __stmt_0 = {0x540807cbd0b3aa62, 123, 0};
			bbOnDebugEnterStm(&__stmt_0);
			bbt_prev_tag=bbt_tag;
			struct BBDebugStm __stmt_1 = {0x540807cbd0b3aa62, 124, 0};
			bbOnDebugEnterStm(&__stmt_1);
			bbt_tag=bbt_new_tag;
			struct BBDebugStm __stmt_2 = {0x540807cbd0b3aa62, 125, 0};
			bbOnDebugEnterStm(&__stmt_2);
			brl_stream_ReadInt((struct brl_stream_TStream_obj*)bbt_file);
			struct BBDebugStm __stmt_3 = {0x540807cbd0b3aa62, 126, 0};
			bbOnDebugEnterStm(&__stmt_3);
			bbt_size=brl_stream_ReadInt((struct brl_stream_TStream_obj*)bbt_file);
			struct BBDebugStm __stmt_4 = {0x540807cbd0b3aa62, 130, 0};
			bbOnDebugEnterStm(&__stmt_4);
			bbt_old_node_level=bbt_node_level;
			struct BBDebugStm __stmt_5 = {0x540807cbd0b3aa62, 132, 0};
			bbOnDebugEnterStm(&__stmt_5);
			if(bbStringEquals(bbt_tag, ((BBString*)&_s440))==1){
				struct BBDebugScope __scope = {
					BBDEBUGSCOPE_LOCALBLOCK,
					0,
					{
						{
							BBDEBUGDECL_END
						}
					}
				};
				bbOnDebugEnterScope((BBDebugScope *)&__scope);
				struct BBDebugStm __stmt_0 = {0x540807cbd0b3aa62, 133, 0};
				bbOnDebugEnterStm(&__stmt_0);
				bbt_node_level=(bbt_node_level+1);
				struct BBDebugStm __stmt_1 = {0x540807cbd0b3aa62, 135, 0};
				bbOnDebugEnterStm(&__stmt_1);
				if(bbt_node_level>0){
					BBINT bbt_fd=0;
					struct BBDebugScope_1 __scope = {
						BBDEBUGSCOPE_LOCALBLOCK,
						0,
						{
							{
								BBDEBUGDECL_LOCAL,
								"fd",
								"i",
								.var_address=&bbt_fd
							},
							{
								BBDEBUGDECL_END
							}
						}
					};
					bbOnDebugEnterScope((BBDebugScope *)&__scope);
					struct BBDebugStm __stmt_0 = {0x540807cbd0b3aa62, 136, 0};
					bbOnDebugEnterStm(&__stmt_0);
					bbt_fd=0;
					struct BBDebugStm __stmt_1 = {0x540807cbd0b3aa62, 143, 0};
					bbOnDebugEnterStm(&__stmt_1);
					do{
						struct BBDebugScope __scope = {
							BBDEBUGSCOPE_LOCALBLOCK,
							0,
							{
								{
									BBDEBUGDECL_END
								}
							}
						};
						bbOnDebugEnterScope((BBDebugScope *)&__scope);
						struct BBDebugStm __stmt_0 = {0x540807cbd0b3aa62, 139, 0};
						bbOnDebugEnterStm(&__stmt_0);
						bbt_fd=((BBINT)(brl_stream_StreamPos((struct brl_stream_TStream_obj*)bbt_file)-((BBLONG)((BBINT*)BBARRAYDATAINDEX((bbt_node_pos),(bbt_node_pos)->dims,((BBUINT)(bbt_node_level-1))))[((BBUINT)(bbt_node_level-1))])));
						struct BBDebugStm __stmt_1 = {0x540807cbd0b3aa62, 140, 0};
						bbOnDebugEnterStm(&__stmt_1);
						if(bbt_fd>=8){
							struct BBDebugScope __scope = {
								BBDEBUGSCOPE_LOCALBLOCK,
								0,
								{
									{
										BBDEBUGDECL_END
									}
								}
							};
							bbOnDebugEnterScope((BBDebugScope *)&__scope);
							struct BBDebugStm __stmt_0 = {0x540807cbd0b3aa62, 141, 0};
							bbOnDebugEnterStm(&__stmt_0);
							bbt_node_level=(bbt_node_level-1);
							bbOnDebugLeaveScope();
						}
						bbOnDebugLeaveScope();
					}while(!(bbt_fd<8));
					bbOnDebugLeaveScope();
				}
				struct BBDebugStm __stmt_2 = {0x540807cbd0b3aa62, 146, 0};
				bbOnDebugEnterStm(&__stmt_2);
				((BBINT*)BBARRAYDATAINDEX((bbt_node_pos),(bbt_node_pos)->dims,((BBUINT)bbt_node_level)))[((BBUINT)bbt_node_level)]=((BBINT)(brl_stream_StreamPos((struct brl_stream_TStream_obj*)bbt_file)+((BBLONG)bbt_size)));
				bbOnDebugLeaveScope();
			}
			struct BBDebugStm __stmt_6 = {0x540807cbd0b3aa62, 150, 0};
			bbOnDebugEnterStm(&__stmt_6);
			if(bbt_node_level>bbt_old_node_level){
				struct BBDebugScope __scope = {
					BBDEBUGSCOPE_LOCALBLOCK,
					0,
					{
						{
							BBDEBUGDECL_END
						}
					}
				};
				bbOnDebugEnterScope((BBDebugScope *)&__scope);
				struct BBDebugStm __stmt_0 = {0x540807cbd0b3aa62, 152, 0};
				bbOnDebugEnterStm(&__stmt_0);
				if(bbt_node_level>0){
					struct BBDebugScope __scope = {
						BBDEBUGSCOPE_LOCALBLOCK,
						0,
						{
							{
								BBDEBUGDECL_END
							}
						}
					};
					bbOnDebugEnterScope((BBDebugScope *)&__scope);
					struct BBDebugStm __stmt_0 = {0x540807cbd0b3aa62, 153, 0};
					bbOnDebugEnterStm(&__stmt_0);
					bbt_parent_ent=(struct openb3d_openb3dcore_TEntity_obj*)bbt_last_ent;
					bbOnDebugLeaveScope();
				}else{
					struct BBDebugScope __scope = {
						BBDEBUGSCOPE_LOCALBLOCK,
						0,
						{
							{
								BBDEBUGDECL_END
							}
						}
					};
					bbOnDebugEnterScope((BBDebugScope *)&__scope);
					struct BBDebugStm __stmt_0 = {0x540807cbd0b3aa62, 155, 0};
					bbOnDebugEnterStm(&__stmt_0);
					bbt_parent_ent=(struct openb3d_openb3dcore_TEntity_obj*)&bbNullObject;
					bbOnDebugLeaveScope();
				}
				bbOnDebugLeaveScope();
			}
			struct BBDebugStm __stmt_7 = {0x540807cbd0b3aa62, 161, 0};
			bbOnDebugEnterStm(&__stmt_7);
			if(bbt_node_level<bbt_old_node_level){
				struct openb3d_openb3dcore_TEntity_obj* bbt_tent=(struct openb3d_openb3dcore_TEntity_obj*)((struct openb3d_openb3dcore_TEntity_obj*)&bbNullObject);
				struct BBDebugScope_1 __scope = {
					BBDEBUGSCOPE_LOCALBLOCK,
					0,
					{
						{
							BBDEBUGDECL_LOCAL,
							"tent",
							":TEntity",
							.var_address=&bbt_tent
						},
						{
							BBDEBUGDECL_END
						}
					}
				};
				bbOnDebugEnterScope((BBDebugScope *)&__scope);
				struct BBDebugStm __stmt_0 = {0x540807cbd0b3aa62, 162, 0};
				bbOnDebugEnterStm(&__stmt_0);
				bbt_tent=(struct openb3d_openb3dcore_TEntity_obj*)bbt_root_ent;
				struct BBDebugStm __stmt_1 = {0x540807cbd0b3aa62, 165, 0};
				bbOnDebugEnterStm(&__stmt_1);
				if((bbt_node_level>1) && (((BBOBJECT)bbt_tent)!=&bbNullObject)){
					BBINT bbt_cc=0;
					struct BBDebugScope_1 __scope = {
						BBDEBUGSCOPE_LOCALBLOCK,
						0,
						{
							{
								BBDEBUGDECL_LOCAL,
								"cc",
								"i",
								.var_address=&bbt_cc
							},
							{
								BBDEBUGDECL_END
							}
						}
					};
					bbOnDebugEnterScope((BBDebugScope *)&__scope);
					struct BBDebugStm __stmt_0 = {0x540807cbd0b3aa62, 166, 0};
					bbOnDebugEnterStm(&__stmt_0);
					bbt_cc=0;
					struct BBDebugStm __stmt_1 = {0x540807cbd0b3aa62, 167, 0};
					bbOnDebugEnterStm(&__stmt_1);
					{
						BBINT bbt_levs=1;
						BBINT bbt_=(bbt_node_level-2);
						for(;(bbt_levs<=bbt_);bbt_levs=(bbt_levs+1)){
							struct BBDebugScope_1 __scope = {
								BBDEBUGSCOPE_LOCALBLOCK,
								0,
								{
									{
										BBDEBUGDECL_LOCAL,
										"levs",
										"i",
										.var_address=&bbt_levs
									},
									{
										BBDEBUGDECL_END
									}
								}
							};
							bbOnDebugEnterScope((BBDebugScope *)&__scope);
							struct BBDebugStm __stmt_0 = {0x540807cbd0b3aa62, 168, 0};
							bbOnDebugEnterStm(&__stmt_0);
							bbt_cc=((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)bbt_tent))->clas->m_CountChildren((struct openb3d_openb3dcore_TEntity_obj*)bbt_tent);
							struct BBDebugStm __stmt_1 = {0x540807cbd0b3aa62, 169, 0};
							bbOnDebugEnterStm(&__stmt_1);
							if(bbt_cc>0){
								struct BBDebugScope __scope = {
									BBDEBUGSCOPE_LOCALBLOCK,
									0,
									{
										{
											BBDEBUGDECL_END
										}
									}
								};
								bbOnDebugEnterScope((BBDebugScope *)&__scope);
								struct BBDebugStm __stmt_0 = {0x540807cbd0b3aa62, 169, 0};
								bbOnDebugEnterStm(&__stmt_0);
								bbt_tent=(struct openb3d_openb3dcore_TEntity_obj*)((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)bbt_tent))->clas->m_GetChild_i((struct openb3d_openb3dcore_TEntity_obj*)bbt_tent,bbt_cc);
								bbOnDebugLeaveScope();
							}
							bbOnDebugLeaveScope();
						}
					}
					struct BBDebugStm __stmt_2 = {0x540807cbd0b3aa62, 172, 0};
					bbOnDebugEnterStm(&__stmt_2);
					bbt_cc=((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)bbt_tent))->clas->m_CountChildren((struct openb3d_openb3dcore_TEntity_obj*)bbt_tent);
					struct BBDebugStm __stmt_3 = {0x540807cbd0b3aa62, 173, 0};
					bbOnDebugEnterStm(&__stmt_3);
					bbt_tent=(struct openb3d_openb3dcore_TEntity_obj*)((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)bbt_tent))->clas->m_GetChild_i((struct openb3d_openb3dcore_TEntity_obj*)bbt_tent,bbt_cc);
					struct BBDebugStm __stmt_4 = {0x540807cbd0b3aa62, 174, 0};
					bbOnDebugEnterStm(&__stmt_4);
					bbt_parent_ent=(struct openb3d_openb3dcore_TEntity_obj*)bbt_tent;
					bbOnDebugLeaveScope();
				}
				struct BBDebugStm __stmt_2 = {0x540807cbd0b3aa62, 177, 0};
				bbOnDebugEnterStm(&__stmt_2);
				if(bbt_node_level==1){
					struct BBDebugScope __scope = {
						BBDEBUGSCOPE_LOCALBLOCK,
						0,
						{
							{
								BBDEBUGDECL_END
							}
						}
					};
					bbOnDebugEnterScope((BBDebugScope *)&__scope);
					struct BBDebugStm __stmt_0 = {0x540807cbd0b3aa62, 177, 0};
					bbOnDebugEnterStm(&__stmt_0);
					bbt_parent_ent=(struct openb3d_openb3dcore_TEntity_obj*)bbt_root_ent;
					bbOnDebugLeaveScope();
				}
				struct BBDebugStm __stmt_3 = {0x540807cbd0b3aa62, 178, 0};
				bbOnDebugEnterStm(&__stmt_3);
				if(bbt_node_level==0){
					struct BBDebugScope __scope = {
						BBDEBUGSCOPE_LOCALBLOCK,
						0,
						{
							{
								BBDEBUGDECL_END
							}
						}
					};
					bbOnDebugEnterScope((BBDebugScope *)&__scope);
					struct BBDebugStm __stmt_0 = {0x540807cbd0b3aa62, 178, 0};
					bbOnDebugEnterStm(&__stmt_0);
					bbt_parent_ent=(struct openb3d_openb3dcore_TEntity_obj*)&bbNullObject;
					bbOnDebugLeaveScope();
				}
				bbOnDebugLeaveScope();
			}
			struct BBDebugStm __stmt_8 = {0x540807cbd0b3aa62, 182, 0};
			bbOnDebugEnterStm(&__stmt_8);
			bbt_info=((BBString*)&bbEmptyString);
			struct BBDebugStm __stmt_9 = {0x540807cbd0b3aa62, 183, 0};
			bbOnDebugEnterStm(&__stmt_9);
			if(bbStringEquals(bbt_tag, ((BBString*)&_s440))==1 && (((BBOBJECT)bbt_parent_ent)!=&bbNullObject)){
				struct BBDebugScope __scope = {
					BBDEBUGSCOPE_LOCALBLOCK,
					0,
					{
						{
							BBDEBUGDECL_END
						}
					}
				};
				bbOnDebugEnterScope((BBDebugScope *)&__scope);
				struct BBDebugStm __stmt_0 = {0x540807cbd0b3aa62, 183, 0};
				bbOnDebugEnterStm(&__stmt_0);
				bbt_info=bbStringConcat(bbStringConcat(((BBString*)&_s441),((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)bbt_parent_ent))->clas->m_EntityName((struct openb3d_openb3dcore_TEntity_obj*)bbt_parent_ent)),((BBString*)&_s442));
				bbOnDebugLeaveScope();
			}
			struct BBDebugStm __stmt_10 = {0x540807cbd0b3aa62, 185, 0};
			bbOnDebugEnterStm(&__stmt_10);
			bbt_tab=((BBString*)&bbEmptyString);
			struct BBDebugStm __stmt_11 = {0x540807cbd0b3aa62, 186, 0};
			bbOnDebugEnterStm(&__stmt_11);
			{
				BBINT bbt_i=0;
				BBINT bbt_2=bbt_node_level;
				for(;(bbt_i<=bbt_2);bbt_i=(bbt_i+1)){
					struct BBDebugScope_1 __scope = {
						BBDEBUGSCOPE_LOCALBLOCK,
						0,
						{
							{
								BBDEBUGDECL_LOCAL,
								"i",
								"i",
								.var_address=&bbt_i
							},
							{
								BBDEBUGDECL_END
							}
						}
					};
					bbOnDebugEnterScope((BBDebugScope *)&__scope);
					struct BBDebugStm __stmt_0 = {0x540807cbd0b3aa62, 187, 0};
					bbOnDebugEnterStm(&__stmt_0);
					bbt_tab=bbStringConcat(bbt_tab,((BBString*)&_s443));
					bbOnDebugLeaveScope();
				}
			}
			bbOnDebugLeaveScope();
		}else{
			struct BBDebugScope __scope = {
				BBDEBUGSCOPE_LOCALBLOCK,
				0,
				{
					{
						BBDEBUGDECL_END
					}
				}
			};
			bbOnDebugEnterScope((BBDebugScope *)&__scope);
			struct BBDebugStm __stmt_0 = {0x540807cbd0b3aa62, 191, 0};
			bbOnDebugEnterStm(&__stmt_0);
			bbt_tag=((BBString*)&bbEmptyString);
			bbOnDebugLeaveScope();
		}
		struct BBDebugStm __stmt_2 = {0x540807cbd0b3aa62, 194, 0};
		bbOnDebugEnterStm(&__stmt_2);
		BBSTRING bbt_3=bbt_tag;
		struct BBDebugStm __stmt_3 = {0x540807cbd0b3aa62, 196, 0};
		bbOnDebugEnterStm(&__stmt_3);
		if(bbStringEquals(bbt_3, ((BBString*)&_s444))==1){
			struct BBDebugScope __scope = {
				BBDEBUGSCOPE_LOCALBLOCK,
				0,
				{
					{
						BBDEBUGDECL_END
					}
				}
			};
			bbOnDebugEnterScope((BBDebugScope *)&__scope);
			struct BBDebugStm __stmt_0 = {0x540807cbd0b3aa62, 199, 0};
			bbOnDebugEnterStm(&__stmt_0);
			bbt_old_tag=bbt_new_tag;
			struct BBDebugStm __stmt_1 = {0x540807cbd0b3aa62, 200, 0};
			bbOnDebugEnterStm(&__stmt_1);
			bbt_new_tag=openb3d_openb3dcore_TB3D_ReadTag_S_TTStream((struct brl_stream_TStream_obj*)bbt_file);
			struct BBDebugStm __stmt_2 = {0x540807cbd0b3aa62, 202, 0};
			bbOnDebugEnterStm(&__stmt_2);
			while((openb3d_openb3dcore_TB3D_NewTag_i_S(bbt_new_tag)!=1) && (brl_stream_Eof((struct brl_stream_TStream_obj*)bbt_file)==0)){
				BBSTRING bbt_tex_name=(&bbEmptyString);
				struct BBDebugScope_1 __scope = {
					BBDEBUGSCOPE_LOCALBLOCK,
					0,
					{
						{
							BBDEBUGDECL_LOCAL,
							"tex_name",
							"$",
							.var_address=&bbt_tex_name
						},
						{
							BBDEBUGDECL_END
						}
					}
				};
				bbOnDebugEnterScope((BBDebugScope *)&__scope);
				struct BBDebugStm __stmt_0 = {0x540807cbd0b3aa62, 204, 0};
				bbOnDebugEnterStm(&__stmt_0);
				bbt_te_file=openb3d_openb3dcore_TB3D_b3dReadString_S_vTTStream((struct brl_stream_TStream_obj*)&bbt_file);
				struct BBDebugStm __stmt_1 = {0x540807cbd0b3aa62, 205, 0};
				bbOnDebugEnterStm(&__stmt_1);
				bbt_te_flags=brl_stream_ReadInt((struct brl_stream_TStream_obj*)bbt_file);
				struct BBDebugStm __stmt_2 = {0x540807cbd0b3aa62, 206, 0};
				bbOnDebugEnterStm(&__stmt_2);
				bbt_te_blend=brl_stream_ReadInt((struct brl_stream_TStream_obj*)bbt_file);
				struct BBDebugStm __stmt_3 = {0x540807cbd0b3aa62, 207, 0};
				bbOnDebugEnterStm(&__stmt_3);
				bbt_te_u_pos=brl_stream_ReadFloat((struct brl_stream_TStream_obj*)bbt_file);
				struct BBDebugStm __stmt_4 = {0x540807cbd0b3aa62, 208, 0};
				bbOnDebugEnterStm(&__stmt_4);
				bbt_te_v_pos=brl_stream_ReadFloat((struct brl_stream_TStream_obj*)bbt_file);
				struct BBDebugStm __stmt_5 = {0x540807cbd0b3aa62, 209, 0};
				bbOnDebugEnterStm(&__stmt_5);
				bbt_te_u_scale=brl_stream_ReadFloat((struct brl_stream_TStream_obj*)bbt_file);
				struct BBDebugStm __stmt_6 = {0x540807cbd0b3aa62, 210, 0};
				bbOnDebugEnterStm(&__stmt_6);
				bbt_te_v_scale=brl_stream_ReadFloat((struct brl_stream_TStream_obj*)bbt_file);
				struct BBDebugStm __stmt_7 = {0x540807cbd0b3aa62, 211, 0};
				bbOnDebugEnterStm(&__stmt_7);
				bbt_te_angle=brl_stream_ReadFloat((struct brl_stream_TStream_obj*)bbt_file);
				struct BBDebugStm __stmt_8 = {0x540807cbd0b3aa62, 213, 0};
				bbOnDebugEnterStm(&__stmt_8);
				if(openb3d_openb3dcore_TGlobal3D_Log_B3D!=0){
					struct BBDebugScope __scope = {
						BBDEBUGSCOPE_LOCALBLOCK,
						0,
						{
							{
								BBDEBUGDECL_END
							}
						}
					};
					bbOnDebugEnterScope((BBDebugScope *)&__scope);
					struct BBDebugStm __stmt_0 = {0x540807cbd0b3aa62, 213, 0};
					bbOnDebugEnterStm(&__stmt_0);
					brl_blitz_DebugLog(bbStringConcat(bbStringConcat(bbStringConcat(bbStringConcat(bbStringConcat(bbStringConcat(bbStringConcat(bbStringConcat(bbStringConcat(bbStringConcat(((BBString*)&_s445),bbt_tab),bbt_old_tag),((BBString*)&_s446)),bbt_te_file),((BBString*)&_s447)),bbStringFromInt(bbt_te_flags)),((BBString*)&_s448)),bbStringFromInt(bbt_te_blend)),((BBString*)&_s449)),bbStringFromInt(bbt_tex_no)));
					bbOnDebugLeaveScope();
				}
				struct BBDebugStm __stmt_9 = {0x540807cbd0b3aa62, 216, 0};
				bbOnDebugEnterStm(&__stmt_9);
				if(((unsigned int)(bbt_te_flags)&(unsigned int)(65536))!=0){
					struct BBDebugScope __scope = {
						BBDEBUGSCOPE_LOCALBLOCK,
						0,
						{
							{
								BBDEBUGDECL_END
							}
						}
					};
					bbOnDebugEnterScope((BBDebugScope *)&__scope);
					struct BBDebugStm __stmt_0 = {0x540807cbd0b3aa62, 217, 0};
					bbOnDebugEnterStm(&__stmt_0);
					bbt_te_flags=(bbt_te_flags^65536);
					struct BBDebugStm __stmt_1 = {0x540807cbd0b3aa62, 218, 0};
					bbOnDebugEnterStm(&__stmt_1);
					bbt_te_coords=1;
					bbOnDebugLeaveScope();
				}else{
					struct BBDebugScope __scope = {
						BBDEBUGSCOPE_LOCALBLOCK,
						0,
						{
							{
								BBDEBUGDECL_END
							}
						}
					};
					bbOnDebugEnterScope((BBDebugScope *)&__scope);
					struct BBDebugStm __stmt_0 = {0x540807cbd0b3aa62, 220, 0};
					bbOnDebugEnterStm(&__stmt_0);
					bbt_te_coords=0;
					bbOnDebugLeaveScope();
				}
				struct BBDebugStm __stmt_10 = {0x540807cbd0b3aa62, 224, 0};
				bbOnDebugEnterStm(&__stmt_10);
				bbt_te_angle=((BBFLOAT)(((BBDOUBLE)bbt_te_angle)*57.295779513082323));
				struct BBDebugStm __stmt_11 = {0x540807cbd0b3aa62, 228, 0};
				bbOnDebugEnterStm(&__stmt_11);
				((struct openb3d_openb3dcore_TTexture_obj**)BBARRAYDATAINDEX((bbt_tex),(bbt_tex)->dims,((BBUINT)bbt_tex_no)))[((BBUINT)bbt_tex_no)]=(struct openb3d_openb3dcore_TTexture_obj*)openb3d_openb3dcore_TTexture_Create_TTTexture();
				struct BBDebugStm __stmt_12 = {0x540807cbd0b3aa62, 231, 0};
				bbOnDebugEnterStm(&__stmt_12);
				((struct openb3d_openb3dcore_TTexture_obj*)bbNullObjectTest((BBObject*)((struct openb3d_openb3dcore_TTexture_obj**)BBARRAYDATAINDEX((bbt_tex),(bbt_tex)->dims,((BBUINT)bbt_tex_no)))[((BBUINT)bbt_tex_no)]))->_openb3d_openb3dcore_ttexture_blend [0]=bbt_te_blend;
				struct BBDebugStm __stmt_13 = {0x540807cbd0b3aa62, 232, 0};
				bbOnDebugEnterStm(&__stmt_13);
				((struct openb3d_openb3dcore_TTexture_obj*)bbNullObjectTest((BBObject*)((struct openb3d_openb3dcore_TTexture_obj**)BBARRAYDATAINDEX((bbt_tex),(bbt_tex)->dims,((BBUINT)bbt_tex_no)))[((BBUINT)bbt_tex_no)]))->_openb3d_openb3dcore_ttexture_coords [0]=bbt_te_coords;
				struct BBDebugStm __stmt_14 = {0x540807cbd0b3aa62, 233, 0};
				bbOnDebugEnterStm(&__stmt_14);
				((struct openb3d_openb3dcore_TTexture_obj*)bbNullObjectTest((BBObject*)((struct openb3d_openb3dcore_TTexture_obj**)BBARRAYDATAINDEX((bbt_tex),(bbt_tex)->dims,((BBUINT)bbt_tex_no)))[((BBUINT)bbt_tex_no)]))->_openb3d_openb3dcore_ttexture_u_pos [0]=bbt_te_u_pos;
				struct BBDebugStm __stmt_15 = {0x540807cbd0b3aa62, 234, 0};
				bbOnDebugEnterStm(&__stmt_15);
				((struct openb3d_openb3dcore_TTexture_obj*)bbNullObjectTest((BBObject*)((struct openb3d_openb3dcore_TTexture_obj**)BBARRAYDATAINDEX((bbt_tex),(bbt_tex)->dims,((BBUINT)bbt_tex_no)))[((BBUINT)bbt_tex_no)]))->_openb3d_openb3dcore_ttexture_v_pos [0]=bbt_te_v_pos;
				struct BBDebugStm __stmt_16 = {0x540807cbd0b3aa62, 235, 0};
				bbOnDebugEnterStm(&__stmt_16);
				((struct openb3d_openb3dcore_TTexture_obj*)bbNullObjectTest((BBObject*)((struct openb3d_openb3dcore_TTexture_obj**)BBARRAYDATAINDEX((bbt_tex),(bbt_tex)->dims,((BBUINT)bbt_tex_no)))[((BBUINT)bbt_tex_no)]))->_openb3d_openb3dcore_ttexture_u_scale [0]=bbt_te_u_scale;
				struct BBDebugStm __stmt_17 = {0x540807cbd0b3aa62, 236, 0};
				bbOnDebugEnterStm(&__stmt_17);
				((struct openb3d_openb3dcore_TTexture_obj*)bbNullObjectTest((BBObject*)((struct openb3d_openb3dcore_TTexture_obj**)BBARRAYDATAINDEX((bbt_tex),(bbt_tex)->dims,((BBUINT)bbt_tex_no)))[((BBUINT)bbt_tex_no)]))->_openb3d_openb3dcore_ttexture_v_scale [0]=bbt_te_v_scale;
				struct BBDebugStm __stmt_18 = {0x540807cbd0b3aa62, 237, 0};
				bbOnDebugEnterStm(&__stmt_18);
				((struct openb3d_openb3dcore_TTexture_obj*)bbNullObjectTest((BBObject*)((struct openb3d_openb3dcore_TTexture_obj**)BBARRAYDATAINDEX((bbt_tex),(bbt_tex)->dims,((BBUINT)bbt_tex_no)))[((BBUINT)bbt_tex_no)]))->_openb3d_openb3dcore_ttexture_angle [0]=bbt_te_angle;
				struct BBDebugStm __stmt_19 = {0x540807cbd0b3aa62, 243, 0};
				bbOnDebugEnterStm(&__stmt_19);
				bbt_tex_name=brl_filesystem_StripDir(bbt_te_file);
				struct BBDebugStm __stmt_20 = {0x540807cbd0b3aa62, 244, 0};
				bbOnDebugEnterStm(&__stmt_20);
				if((bbStringStartsWith((BBSTRING)bbt_dir,((BBString*)&_s450))!=0) || (bbStringStartsWith((BBSTRING)bbt_dir,((BBString*)&_s451))!=0)){
					struct BBDebugScope __scope = {
						BBDEBUGSCOPE_LOCALBLOCK,
						0,
						{
							{
								BBDEBUGDECL_END
							}
						}
					};
					bbOnDebugEnterScope((BBDebugScope *)&__scope);
					struct BBDebugStm __stmt_0 = {0x540807cbd0b3aa62, 245, 0};
					bbOnDebugEnterStm(&__stmt_0);
					bbt_tex_name=bbStringConcat(bbStringConcat(openb3d_openb3dcore_TB3D_filepath,((BBString*)&_s401)),brl_filesystem_StripDir(bbt_te_file));
					bbOnDebugLeaveScope();
				}
				struct BBDebugStm __stmt_21 = {0x540807cbd0b3aa62, 248, 0};
				bbOnDebugEnterStm(&__stmt_21);
				if(bbStringEquals(bbt_te_file, ((BBString*)&bbEmptyString))!=1){
					struct BBDebugScope __scope = {
						BBDEBUGSCOPE_LOCALBLOCK,
						0,
						{
							{
								BBDEBUGDECL_END
							}
						}
					};
					bbOnDebugEnterScope((BBDebugScope *)&__scope);
					struct BBDebugStm __stmt_0 = {0x540807cbd0b3aa62, 248, 0};
					bbOnDebugEnterStm(&__stmt_0);
					((struct openb3d_openb3dcore_TTexture_obj**)BBARRAYDATAINDEX((bbt_tex),(bbt_tex)->dims,((BBUINT)bbt_tex_no)))[((BBUINT)bbt_tex_no)]=(struct openb3d_openb3dcore_TTexture_obj*)openb3d_openb3dcore_LoadTexture(bbt_tex_name,bbt_te_flags,(struct openb3d_openb3dcore_TTexture_obj*)((struct openb3d_openb3dcore_TTexture_obj**)BBARRAYDATAINDEX((bbt_tex),(bbt_tex)->dims,((BBUINT)bbt_tex_no)))[((BBUINT)bbt_tex_no)]);
					bbOnDebugLeaveScope();
				}
				struct BBDebugStm __stmt_22 = {0x540807cbd0b3aa62, 249, 0};
				bbOnDebugEnterStm(&__stmt_22);
				if((openb3d_openb3dcore_TGlobal3D_Log_B3D!=0) && (((BBOBJECT)((struct openb3d_openb3dcore_TTexture_obj**)BBARRAYDATAINDEX((bbt_tex),(bbt_tex)->dims,((BBUINT)bbt_tex_no)))[((BBUINT)bbt_tex_no)])!=&bbNullObject)){
					struct BBDebugScope __scope = {
						BBDEBUGSCOPE_LOCALBLOCK,
						0,
						{
							{
								BBDEBUGDECL_END
							}
						}
					};
					bbOnDebugEnterScope((BBDebugScope *)&__scope);
					struct BBDebugStm __stmt_0 = {0x540807cbd0b3aa62, 249, 0};
					bbOnDebugEnterStm(&__stmt_0);
					brl_blitz_DebugLog(bbStringConcat(bbStringConcat(bbStringConcat(bbStringConcat(bbStringConcat(bbStringConcat(((BBString*)&_s445),bbt_tab),bbt_new_tag),((BBString*)&_s452)),bbt_tex_name),((BBString*)&_s447)),bbStringFromInt(((struct openb3d_openb3dcore_TTexture_obj*)bbNullObjectTest((BBObject*)((struct openb3d_openb3dcore_TTexture_obj**)BBARRAYDATAINDEX((bbt_tex),(bbt_tex)->dims,((BBUINT)bbt_tex_no)))[((BBUINT)bbt_tex_no)]))->_openb3d_openb3dcore_ttexture_flags [0])));
					bbOnDebugLeaveScope();
				}
				struct BBDebugStm __stmt_23 = {0x540807cbd0b3aa62, 251, 0};
				bbOnDebugEnterStm(&__stmt_23);
				bbt_tex_no=(bbt_tex_no+1);
				struct BBDebugStm __stmt_24 = {0x540807cbd0b3aa62, 252, 0};
				bbOnDebugEnterStm(&__stmt_24);
				bbt_tex=bbArraySlice(":TTexture",bbt_tex,0,(bbt_tex_no+1));
				struct BBDebugStm __stmt_25 = {0x540807cbd0b3aa62, 254, 0};
				bbOnDebugEnterStm(&__stmt_25);
				bbt_new_tag=openb3d_openb3dcore_TB3D_ReadTag_S_TTStream((struct brl_stream_TStream_obj*)bbt_file);
				bbOnDebugLeaveScope();
			}
			bbOnDebugLeaveScope();
		}else{
			struct BBDebugScope __scope = {
				BBDEBUGSCOPE_LOCALBLOCK,
				0,
				{
					{
						BBDEBUGDECL_END
					}
				}
			};
			bbOnDebugEnterScope((BBDebugScope *)&__scope);
			struct BBDebugStm __stmt_0 = {0x540807cbd0b3aa62, 257, 0};
			bbOnDebugEnterStm(&__stmt_0);
			if(bbStringEquals(bbt_3, ((BBString*)&_s453))==1){
				struct BBDebugScope __scope = {
					BBDEBUGSCOPE_LOCALBLOCK,
					0,
					{
						{
							BBDEBUGDECL_END
						}
					}
				};
				bbOnDebugEnterScope((BBDebugScope *)&__scope);
				struct BBDebugStm __stmt_0 = {0x540807cbd0b3aa62, 260, 0};
				bbOnDebugEnterStm(&__stmt_0);
				bbt_b_no_texs=brl_stream_ReadInt((struct brl_stream_TStream_obj*)bbt_file);
				struct BBDebugStm __stmt_1 = {0x540807cbd0b3aa62, 261, 0};
				bbOnDebugEnterStm(&__stmt_1);
				bbt_old_tag=bbt_new_tag;
				struct BBDebugStm __stmt_2 = {0x540807cbd0b3aa62, 262, 0};
				bbOnDebugEnterStm(&__stmt_2);
				bbt_new_tag=openb3d_openb3dcore_TB3D_ReadTag_S_TTStream((struct brl_stream_TStream_obj*)bbt_file);
				struct BBDebugStm __stmt_3 = {0x540807cbd0b3aa62, 264, 0};
				bbOnDebugEnterStm(&__stmt_3);
				while((openb3d_openb3dcore_TB3D_NewTag_i_S(bbt_new_tag)!=1) && (brl_stream_Eof((struct brl_stream_TStream_obj*)bbt_file)==0)){
					struct BBDebugScope __scope = {
						BBDEBUGSCOPE_LOCALBLOCK,
						0,
						{
							{
								BBDEBUGDECL_END
							}
						}
					};
					bbOnDebugEnterScope((BBDebugScope *)&__scope);
					struct BBDebugStm __stmt_0 = {0x540807cbd0b3aa62, 266, 0};
					bbOnDebugEnterStm(&__stmt_0);
					bbt_b_name=openb3d_openb3dcore_TB3D_b3dReadString_S_vTTStream((struct brl_stream_TStream_obj*)&bbt_file);
					struct BBDebugStm __stmt_1 = {0x540807cbd0b3aa62, 267, 0};
					bbOnDebugEnterStm(&__stmt_1);
					bbt_b_red=brl_stream_ReadFloat((struct brl_stream_TStream_obj*)bbt_file);
					struct BBDebugStm __stmt_2 = {0x540807cbd0b3aa62, 268, 0};
					bbOnDebugEnterStm(&__stmt_2);
					bbt_b_green=brl_stream_ReadFloat((struct brl_stream_TStream_obj*)bbt_file);
					struct BBDebugStm __stmt_3 = {0x540807cbd0b3aa62, 269, 0};
					bbOnDebugEnterStm(&__stmt_3);
					bbt_b_blue=brl_stream_ReadFloat((struct brl_stream_TStream_obj*)bbt_file);
					struct BBDebugStm __stmt_4 = {0x540807cbd0b3aa62, 270, 0};
					bbOnDebugEnterStm(&__stmt_4);
					bbt_b_alpha=brl_stream_ReadFloat((struct brl_stream_TStream_obj*)bbt_file);
					struct BBDebugStm __stmt_5 = {0x540807cbd0b3aa62, 271, 0};
					bbOnDebugEnterStm(&__stmt_5);
					bbt_b_shine=brl_stream_ReadFloat((struct brl_stream_TStream_obj*)bbt_file);
					struct BBDebugStm __stmt_6 = {0x540807cbd0b3aa62, 272, 0};
					bbOnDebugEnterStm(&__stmt_6);
					bbt_b_blend=brl_stream_ReadInt((struct brl_stream_TStream_obj*)bbt_file);
					struct BBDebugStm __stmt_7 = {0x540807cbd0b3aa62, 273, 0};
					bbOnDebugEnterStm(&__stmt_7);
					bbt_b_fx=brl_stream_ReadInt((struct brl_stream_TStream_obj*)bbt_file);
					struct BBDebugStm __stmt_8 = {0x540807cbd0b3aa62, 275, 0};
					bbOnDebugEnterStm(&__stmt_8);
					((struct openb3d_openb3dcore_TBrush_obj**)BBARRAYDATAINDEX((bbt_brush),(bbt_brush)->dims,((BBUINT)bbt_brush_no)))[((BBUINT)bbt_brush_no)]=(struct openb3d_openb3dcore_TBrush_obj*)openb3d_openb3dcore_CreateBrush(255.000000f,255.000000f,255.000000f);
					struct BBDebugStm __stmt_9 = {0x540807cbd0b3aa62, 276, 0};
					bbOnDebugEnterStm(&__stmt_9);
					((struct openb3d_openb3dcore_TBrush_obj*)bbNullObjectTest((BBObject*)((struct openb3d_openb3dcore_TBrush_obj**)BBARRAYDATAINDEX((bbt_brush),(bbt_brush)->dims,((BBUINT)bbt_brush_no)))[((BBUINT)bbt_brush_no)]))->_openb3d_openb3dcore_tbrush_no_texs [0]=bbt_b_no_texs;
					struct BBDebugStm __stmt_10 = {0x540807cbd0b3aa62, 277, 0};
					bbOnDebugEnterStm(&__stmt_10);
					struct openb3d_openb3dcore_TBrush_obj* bbt_4;
					(((struct openb3d_openb3dcore_TBrush_obj*)bbNullObjectTest((BBObject*)(bbt_4 = ((struct openb3d_openb3dcore_TBrush_obj**)BBARRAYDATAINDEX((bbt_brush),(bbt_brush)->dims,((BBUINT)bbt_brush_no)))[((BBUINT)bbt_brush_no)])))->clas)->m_SetString_pbS((struct openb3d_openb3dcore_TBrush_obj*)bbt_4,((struct openb3d_openb3dcore_TBrush_obj*)bbNullObjectTest((BBObject*)((struct openb3d_openb3dcore_TBrush_obj**)BBARRAYDATAINDEX((bbt_brush),(bbt_brush)->dims,((BBUINT)bbt_brush_no)))[((BBUINT)bbt_brush_no)]))->_openb3d_openb3dcore_tbrush_name ,bbt_b_name);
					struct BBDebugStm __stmt_11 = {0x540807cbd0b3aa62, 278, 0};
					bbOnDebugEnterStm(&__stmt_11);
					((struct openb3d_openb3dcore_TBrush_obj*)bbNullObjectTest((BBObject*)((struct openb3d_openb3dcore_TBrush_obj**)BBARRAYDATAINDEX((bbt_brush),(bbt_brush)->dims,((BBUINT)bbt_brush_no)))[((BBUINT)bbt_brush_no)]))->_openb3d_openb3dcore_tbrush_red [0]=bbt_b_red;
					struct BBDebugStm __stmt_12 = {0x540807cbd0b3aa62, 279, 0};
					bbOnDebugEnterStm(&__stmt_12);
					((struct openb3d_openb3dcore_TBrush_obj*)bbNullObjectTest((BBObject*)((struct openb3d_openb3dcore_TBrush_obj**)BBARRAYDATAINDEX((bbt_brush),(bbt_brush)->dims,((BBUINT)bbt_brush_no)))[((BBUINT)bbt_brush_no)]))->_openb3d_openb3dcore_tbrush_green [0]=bbt_b_green;
					struct BBDebugStm __stmt_13 = {0x540807cbd0b3aa62, 280, 0};
					bbOnDebugEnterStm(&__stmt_13);
					((struct openb3d_openb3dcore_TBrush_obj*)bbNullObjectTest((BBObject*)((struct openb3d_openb3dcore_TBrush_obj**)BBARRAYDATAINDEX((bbt_brush),(bbt_brush)->dims,((BBUINT)bbt_brush_no)))[((BBUINT)bbt_brush_no)]))->_openb3d_openb3dcore_tbrush_blue [0]=bbt_b_blue;
					struct BBDebugStm __stmt_14 = {0x540807cbd0b3aa62, 281, 0};
					bbOnDebugEnterStm(&__stmt_14);
					((struct openb3d_openb3dcore_TBrush_obj*)bbNullObjectTest((BBObject*)((struct openb3d_openb3dcore_TBrush_obj**)BBARRAYDATAINDEX((bbt_brush),(bbt_brush)->dims,((BBUINT)bbt_brush_no)))[((BBUINT)bbt_brush_no)]))->_openb3d_openb3dcore_tbrush_alpha [0]=bbt_b_alpha;
					struct BBDebugStm __stmt_15 = {0x540807cbd0b3aa62, 282, 0};
					bbOnDebugEnterStm(&__stmt_15);
					((struct openb3d_openb3dcore_TBrush_obj*)bbNullObjectTest((BBObject*)((struct openb3d_openb3dcore_TBrush_obj**)BBARRAYDATAINDEX((bbt_brush),(bbt_brush)->dims,((BBUINT)bbt_brush_no)))[((BBUINT)bbt_brush_no)]))->_openb3d_openb3dcore_tbrush_shine [0]=bbt_b_shine;
					struct BBDebugStm __stmt_16 = {0x540807cbd0b3aa62, 283, 0};
					bbOnDebugEnterStm(&__stmt_16);
					((struct openb3d_openb3dcore_TBrush_obj*)bbNullObjectTest((BBObject*)((struct openb3d_openb3dcore_TBrush_obj**)BBARRAYDATAINDEX((bbt_brush),(bbt_brush)->dims,((BBUINT)bbt_brush_no)))[((BBUINT)bbt_brush_no)]))->_openb3d_openb3dcore_tbrush_blend [0]=bbt_b_blend;
					struct BBDebugStm __stmt_17 = {0x540807cbd0b3aa62, 284, 0};
					bbOnDebugEnterStm(&__stmt_17);
					((struct openb3d_openb3dcore_TBrush_obj*)bbNullObjectTest((BBObject*)((struct openb3d_openb3dcore_TBrush_obj**)BBARRAYDATAINDEX((bbt_brush),(bbt_brush)->dims,((BBUINT)bbt_brush_no)))[((BBUINT)bbt_brush_no)]))->_openb3d_openb3dcore_tbrush_fx [0]=bbt_b_fx;
					struct BBDebugStm __stmt_18 = {0x540807cbd0b3aa62, 286, 0};
					bbOnDebugEnterStm(&__stmt_18);
					if(openb3d_openb3dcore_TGlobal3D_Log_B3D!=0){
						struct BBDebugScope __scope = {
							BBDEBUGSCOPE_LOCALBLOCK,
							0,
							{
								{
									BBDEBUGDECL_END
								}
							}
						};
						bbOnDebugEnterScope((BBDebugScope *)&__scope);
						struct BBDebugStm __stmt_0 = {0x540807cbd0b3aa62, 286, 0};
						bbOnDebugEnterStm(&__stmt_0);
						brl_blitz_DebugLog(bbStringConcat(bbStringConcat(bbStringConcat(bbStringConcat(bbStringConcat(bbStringConcat(bbStringConcat(bbStringConcat(bbStringConcat(bbStringConcat(((BBString*)&_s445),bbt_tab),bbt_old_tag),((BBString*)&_s454)),bbt_b_name),((BBString*)&_s448)),bbStringFromInt(bbt_b_blend)),((BBString*)&_s455)),bbStringFromInt(bbt_b_fx)),((BBString*)&_s456)),bbStringFromInt(bbt_b_no_texs)));
						bbOnDebugLeaveScope();
					}
					struct BBDebugStm __stmt_19 = {0x540807cbd0b3aa62, 288, 0};
					bbOnDebugEnterStm(&__stmt_19);
					{
						BBINT bbt_ix=0;
						BBINT bbt_5=(bbt_b_no_texs-1);
						for(;(bbt_ix<=bbt_5);bbt_ix=(bbt_ix+1)){
							struct BBDebugScope_1 __scope = {
								BBDEBUGSCOPE_LOCALBLOCK,
								0,
								{
									{
										BBDEBUGDECL_LOCAL,
										"ix",
										"i",
										.var_address=&bbt_ix
									},
									{
										BBDEBUGDECL_END
									}
								}
							};
							bbOnDebugEnterScope((BBDebugScope *)&__scope);
							struct BBDebugStm __stmt_0 = {0x540807cbd0b3aa62, 289, 0};
							bbOnDebugEnterStm(&__stmt_0);
							bbt_b_tex_id=brl_stream_ReadInt((struct brl_stream_TStream_obj*)bbt_file);
							struct BBDebugStm __stmt_1 = {0x540807cbd0b3aa62, 291, 0};
							bbOnDebugEnterStm(&__stmt_1);
							if((bbt_b_tex_id>=0) && (((BBOBJECT)((struct openb3d_openb3dcore_TTexture_obj**)BBARRAYDATAINDEX((bbt_tex),(bbt_tex)->dims,((BBUINT)bbt_b_tex_id)))[((BBUINT)bbt_b_tex_id)])!=&bbNullObject)){
								struct BBDebugScope __scope = {
									BBDEBUGSCOPE_LOCALBLOCK,
									0,
									{
										{
											BBDEBUGDECL_END
										}
									}
								};
								bbOnDebugEnterScope((BBDebugScope *)&__scope);
								struct BBDebugStm __stmt_0 = {0x540807cbd0b3aa62, 292, 0};
								bbOnDebugEnterStm(&__stmt_0);
								struct openb3d_openb3dcore_TBrush_obj* bbt_6;
								(((struct openb3d_openb3dcore_TBrush_obj*)bbNullObjectTest((BBObject*)(bbt_6 = ((struct openb3d_openb3dcore_TBrush_obj**)BBARRAYDATAINDEX((bbt_brush),(bbt_brush)->dims,((BBUINT)bbt_brush_no)))[((BBUINT)bbt_brush_no)])))->clas)->m_BrushTexture_TTTextureii((struct openb3d_openb3dcore_TBrush_obj*)bbt_6,(struct openb3d_openb3dcore_TTexture_obj*)((struct openb3d_openb3dcore_TTexture_obj**)BBARRAYDATAINDEX((bbt_tex),(bbt_tex)->dims,((BBUINT)bbt_b_tex_id)))[((BBUINT)bbt_b_tex_id)],0,bbt_ix);
								struct BBDebugStm __stmt_1 = {0x540807cbd0b3aa62, 294, 0};
								bbOnDebugEnterStm(&__stmt_1);
								if((((unsigned int)(((struct openb3d_openb3dcore_TTexture_obj*)bbNullObjectTest((BBObject*)((struct openb3d_openb3dcore_TTexture_obj**)BBARRAYDATAINDEX((bbt_tex),(bbt_tex)->dims,((BBUINT)bbt_b_tex_id)))[((BBUINT)bbt_b_tex_id)]))->_openb3d_openb3dcore_ttexture_flags [0])&(unsigned int)(2))!=0) && (((unsigned int)(((struct openb3d_openb3dcore_TBrush_obj*)bbNullObjectTest((BBObject*)((struct openb3d_openb3dcore_TBrush_obj**)BBARRAYDATAINDEX((bbt_brush),(bbt_brush)->dims,((BBUINT)bbt_brush_no)))[((BBUINT)bbt_brush_no)]))->_openb3d_openb3dcore_tbrush_fx [0])&(unsigned int)(16))!=0)){
									struct BBDebugScope __scope = {
										BBDEBUGSCOPE_LOCALBLOCK,
										0,
										{
											{
												BBDEBUGDECL_END
											}
										}
									};
									bbOnDebugEnterScope((BBDebugScope *)&__scope);
									struct BBDebugStm __stmt_0 = {0x540807cbd0b3aa62, 295, 0};
									bbOnDebugEnterStm(&__stmt_0);
									struct openb3d_openb3dcore_TBrush_obj* bbt_7;
									(((struct openb3d_openb3dcore_TBrush_obj*)bbNullObjectTest((BBObject*)(bbt_7 = ((struct openb3d_openb3dcore_TBrush_obj**)BBARRAYDATAINDEX((bbt_brush),(bbt_brush)->dims,((BBUINT)bbt_brush_no)))[((BBUINT)bbt_brush_no)])))->clas)->m_BrushFX_i((struct openb3d_openb3dcore_TBrush_obj*)bbt_7,((unsigned int)(((struct openb3d_openb3dcore_TBrush_obj*)bbNullObjectTest((BBObject*)((struct openb3d_openb3dcore_TBrush_obj**)BBARRAYDATAINDEX((bbt_brush),(bbt_brush)->dims,((BBUINT)bbt_brush_no)))[((BBUINT)bbt_brush_no)]))->_openb3d_openb3dcore_tbrush_fx [0])|(unsigned int)(32)));
									bbOnDebugLeaveScope();
								}
								struct BBDebugStm __stmt_2 = {0x540807cbd0b3aa62, 298, 0};
								bbOnDebugEnterStm(&__stmt_2);
								if(openb3d_openb3dcore_TGlobal3D_Log_B3D!=0){
									struct BBDebugScope __scope = {
										BBDEBUGSCOPE_LOCALBLOCK,
										0,
										{
											{
												BBDEBUGDECL_END
											}
										}
									};
									bbOnDebugEnterScope((BBDebugScope *)&__scope);
									struct BBDebugStm __stmt_0 = {0x540807cbd0b3aa62, 298, 0};
									bbOnDebugEnterStm(&__stmt_0);
									brl_blitz_DebugLog(bbStringConcat(bbStringConcat(bbStringConcat(bbStringConcat(bbStringConcat(bbStringConcat(bbStringConcat(bbStringConcat(bbStringConcat(bbStringConcat(((BBString*)&_s445),bbt_tab),bbt_old_tag),((BBString*)&_s457)),bbStringFromInt(bbt_brush_no)),((BBString*)&_s458)),bbStringFromInt(bbt_b_tex_id)),((BBString*)&_s459)),bbStringFromInt(bbt_ix)),((BBString*)&_s447)),bbStringFromInt(((struct openb3d_openb3dcore_TTexture_obj*)bbNullObjectTest((BBObject*)((struct openb3d_openb3dcore_TTexture_obj**)BBARRAYDATAINDEX((bbt_tex),(bbt_tex)->dims,((BBUINT)bbt_b_tex_id)))[((BBUINT)bbt_b_tex_id)]))->_openb3d_openb3dcore_ttexture_flags [0])));
									bbOnDebugLeaveScope();
								}
								bbOnDebugLeaveScope();
							}else{
								struct BBDebugScope __scope = {
									BBDEBUGSCOPE_LOCALBLOCK,
									0,
									{
										{
											BBDEBUGDECL_END
										}
									}
								};
								bbOnDebugEnterScope((BBDebugScope *)&__scope);
								struct BBDebugStm __stmt_0 = {0x540807cbd0b3aa62, 300, 0};
								bbOnDebugEnterStm(&__stmt_0);
								((struct openb3d_openb3dcore_TTexture_obj**)BBARRAYDATAINDEX((((struct openb3d_openb3dcore_TBrush_obj*)bbNullObjectTest((BBObject*)((struct openb3d_openb3dcore_TBrush_obj**)BBARRAYDATAINDEX((bbt_brush),(bbt_brush)->dims,((BBUINT)bbt_brush_no)))[((BBUINT)bbt_brush_no)]))->_openb3d_openb3dcore_tbrush_tex ),(((struct openb3d_openb3dcore_TBrush_obj*)bbNullObjectTest((BBObject*)((struct openb3d_openb3dcore_TBrush_obj**)BBARRAYDATAINDEX((bbt_brush),(bbt_brush)->dims,((BBUINT)bbt_brush_no)))[((BBUINT)bbt_brush_no)]))->_openb3d_openb3dcore_tbrush_tex )->dims,((BBUINT)bbt_ix)))[((BBUINT)bbt_ix)]=(struct openb3d_openb3dcore_TTexture_obj*)&bbNullObject;
								bbOnDebugLeaveScope();
							}
							bbOnDebugLeaveScope();
						}
					}
					struct BBDebugStm __stmt_20 = {0x540807cbd0b3aa62, 303, 0};
					bbOnDebugEnterStm(&__stmt_20);
					bbt_brush_no=(bbt_brush_no+1);
					struct BBDebugStm __stmt_21 = {0x540807cbd0b3aa62, 304, 0};
					bbOnDebugEnterStm(&__stmt_21);
					bbt_brush=bbArraySlice(":TBrush",bbt_brush,0,(bbt_brush_no+1));
					struct BBDebugStm __stmt_22 = {0x540807cbd0b3aa62, 306, 0};
					bbOnDebugEnterStm(&__stmt_22);
					bbt_new_tag=openb3d_openb3dcore_TB3D_ReadTag_S_TTStream((struct brl_stream_TStream_obj*)bbt_file);
					bbOnDebugLeaveScope();
				}
				bbOnDebugLeaveScope();
			}else{
				struct BBDebugScope __scope = {
					BBDEBUGSCOPE_LOCALBLOCK,
					0,
					{
						{
							BBDEBUGDECL_END
						}
					}
				};
				bbOnDebugEnterScope((BBDebugScope *)&__scope);
				struct BBDebugStm __stmt_0 = {0x540807cbd0b3aa62, 309, 0};
				bbOnDebugEnterStm(&__stmt_0);
				if(bbStringEquals(bbt_3, ((BBString*)&_s440))==1){
					struct BBDebugScope __scope = {
						BBDEBUGSCOPE_LOCALBLOCK,
						0,
						{
							{
								BBDEBUGDECL_END
							}
						}
					};
					bbOnDebugEnterScope((BBDebugScope *)&__scope);
					struct BBDebugStm __stmt_0 = {0x540807cbd0b3aa62, 311, 0};
					bbOnDebugEnterStm(&__stmt_0);
					bbt_old_tag=bbt_new_tag;
					struct BBDebugStm __stmt_1 = {0x540807cbd0b3aa62, 312, 0};
					bbOnDebugEnterStm(&__stmt_1);
					bbt_new_tag=openb3d_openb3dcore_TB3D_ReadTag_S_TTStream((struct brl_stream_TStream_obj*)bbt_file);
					struct BBDebugStm __stmt_2 = {0x540807cbd0b3aa62, 314, 0};
					bbOnDebugEnterStm(&__stmt_2);
					bbt_n_name=openb3d_openb3dcore_TB3D_b3dReadString_S_vTTStream((struct brl_stream_TStream_obj*)&bbt_file);
					struct BBDebugStm __stmt_3 = {0x540807cbd0b3aa62, 315, 0};
					bbOnDebugEnterStm(&__stmt_3);
					bbt_n_px=brl_stream_ReadFloat((struct brl_stream_TStream_obj*)bbt_file);
					struct BBDebugStm __stmt_4 = {0x540807cbd0b3aa62, 316, 0};
					bbOnDebugEnterStm(&__stmt_4);
					bbt_n_py=brl_stream_ReadFloat((struct brl_stream_TStream_obj*)bbt_file);
					struct BBDebugStm __stmt_5 = {0x540807cbd0b3aa62, 317, 0};
					bbOnDebugEnterStm(&__stmt_5);
					bbt_n_pz=(brl_stream_ReadFloat((struct brl_stream_TStream_obj*)bbt_file)*-1.0f);
					struct BBDebugStm __stmt_6 = {0x540807cbd0b3aa62, 318, 0};
					bbOnDebugEnterStm(&__stmt_6);
					bbt_n_sx=brl_stream_ReadFloat((struct brl_stream_TStream_obj*)bbt_file);
					struct BBDebugStm __stmt_7 = {0x540807cbd0b3aa62, 319, 0};
					bbOnDebugEnterStm(&__stmt_7);
					bbt_n_sy=brl_stream_ReadFloat((struct brl_stream_TStream_obj*)bbt_file);
					struct BBDebugStm __stmt_8 = {0x540807cbd0b3aa62, 320, 0};
					bbOnDebugEnterStm(&__stmt_8);
					bbt_n_sz=brl_stream_ReadFloat((struct brl_stream_TStream_obj*)bbt_file);
					struct BBDebugStm __stmt_9 = {0x540807cbd0b3aa62, 321, 0};
					bbOnDebugEnterStm(&__stmt_9);
					bbt_n_qw=brl_stream_ReadFloat((struct brl_stream_TStream_obj*)bbt_file);
					struct BBDebugStm __stmt_10 = {0x540807cbd0b3aa62, 322, 0};
					bbOnDebugEnterStm(&__stmt_10);
					bbt_n_qx=brl_stream_ReadFloat((struct brl_stream_TStream_obj*)bbt_file);
					struct BBDebugStm __stmt_11 = {0x540807cbd0b3aa62, 323, 0};
					bbOnDebugEnterStm(&__stmt_11);
					bbt_n_qy=brl_stream_ReadFloat((struct brl_stream_TStream_obj*)bbt_file);
					struct BBDebugStm __stmt_12 = {0x540807cbd0b3aa62, 324, 0};
					bbOnDebugEnterStm(&__stmt_12);
					bbt_n_qz=brl_stream_ReadFloat((struct brl_stream_TStream_obj*)bbt_file);
					struct BBDebugStm __stmt_13 = {0x540807cbd0b3aa62, 334, 0};
					bbOnDebugEnterStm(&__stmt_13);
					bbt_new_tag=openb3d_openb3dcore_TB3D_ReadTag_S_TTStream((struct brl_stream_TStream_obj*)bbt_file);
					struct BBDebugStm __stmt_14 = {0x540807cbd0b3aa62, 336, 0};
					bbOnDebugEnterStm(&__stmt_14);
					if(openb3d_openb3dcore_TGlobal3D_Log_B3D!=0){
						struct BBDebugScope __scope = {
							BBDEBUGSCOPE_LOCALBLOCK,
							0,
							{
								{
									BBDEBUGDECL_END
								}
							}
						};
						bbOnDebugEnterScope((BBDebugScope *)&__scope);
						struct BBDebugStm __stmt_0 = {0x540807cbd0b3aa62, 336, 0};
						bbOnDebugEnterStm(&__stmt_0);
						brl_blitz_DebugLog(bbStringConcat(bbStringConcat(bbStringConcat(bbStringConcat(bbStringConcat(((BBString*)&_s445),bbt_tab),bbt_old_tag),((BBString*)&_s454)),bbt_n_name),bbt_info));
						bbOnDebugLeaveScope();
					}
					struct BBDebugStm __stmt_15 = {0x540807cbd0b3aa62, 338, 0};
					bbOnDebugEnterStm(&__stmt_15);
					if(bbStringEquals(bbt_new_tag, ((BBString*)&_s440))==1 || bbStringEquals(bbt_new_tag, ((BBString*)&_s460))==1){
						struct openb3d_openb3dcore_TMesh_obj* bbt_piv=(struct openb3d_openb3dcore_TMesh_obj*)((struct openb3d_openb3dcore_TMesh_obj*)&bbNullObject);
						struct BBDebugScope_1 __scope = {
							BBDEBUGSCOPE_LOCALBLOCK,
							0,
							{
								{
									BBDEBUGDECL_LOCAL,
									"piv",
									":TMesh",
									.var_address=&bbt_piv
								},
								{
									BBDEBUGDECL_END
								}
							}
						};
						bbOnDebugEnterScope((BBDebugScope *)&__scope);
						struct BBDebugStm __stmt_0 = {0x540807cbd0b3aa62, 341, 0};
						bbOnDebugEnterStm(&__stmt_0);
						bbt_piv=(struct openb3d_openb3dcore_TMesh_obj*)openb3d_openb3dcore_TMesh_Create_TTMesh();
						struct BBDebugStm __stmt_1 = {0x540807cbd0b3aa62, 342, 0};
						bbOnDebugEnterStm(&__stmt_1);
						((struct openb3d_openb3dcore_TMesh_obj*)bbNullObjectTest((BBObject*)bbt_piv))->clas->m_SetString_pbS((struct openb3d_openb3dcore_TEntity_obj*)bbt_piv,((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)bbt_piv))->_openb3d_openb3dcore_tentity_class_name ,((BBString*)&_s461));
						struct BBDebugStm __stmt_2 = {0x540807cbd0b3aa62, 343, 0};
						bbOnDebugEnterStm(&__stmt_2);
						((struct openb3d_openb3dcore_TMesh_obj*)bbNullObjectTest((BBObject*)bbt_piv))->clas->m_SetString_pbS((struct openb3d_openb3dcore_TEntity_obj*)bbt_piv,((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)bbt_piv))->_openb3d_openb3dcore_tentity_name ,bbt_n_name);
						struct BBDebugStm __stmt_3 = {0x540807cbd0b3aa62, 344, 0};
						bbOnDebugEnterStm(&__stmt_3);
						((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)bbt_piv))->_openb3d_openb3dcore_tentity_px [0]=bbt_n_px;
						struct BBDebugStm __stmt_4 = {0x540807cbd0b3aa62, 345, 0};
						bbOnDebugEnterStm(&__stmt_4);
						((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)bbt_piv))->_openb3d_openb3dcore_tentity_py [0]=bbt_n_py;
						struct BBDebugStm __stmt_5 = {0x540807cbd0b3aa62, 346, 0};
						bbOnDebugEnterStm(&__stmt_5);
						((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)bbt_piv))->_openb3d_openb3dcore_tentity_pz [0]=bbt_n_pz;
						struct BBDebugStm __stmt_6 = {0x540807cbd0b3aa62, 347, 0};
						bbOnDebugEnterStm(&__stmt_6);
						((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)bbt_piv))->_openb3d_openb3dcore_tentity_sx [0]=bbt_n_sx;
						struct BBDebugStm __stmt_7 = {0x540807cbd0b3aa62, 348, 0};
						bbOnDebugEnterStm(&__stmt_7);
						((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)bbt_piv))->_openb3d_openb3dcore_tentity_sy [0]=bbt_n_sy;
						struct BBDebugStm __stmt_8 = {0x540807cbd0b3aa62, 349, 0};
						bbOnDebugEnterStm(&__stmt_8);
						((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)bbt_piv))->_openb3d_openb3dcore_tentity_sz [0]=bbt_n_sz;
						struct BBDebugStm __stmt_9 = {0x540807cbd0b3aa62, 350, 0};
						bbOnDebugEnterStm(&__stmt_9);
						((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)bbt_piv))->_openb3d_openb3dcore_tentity_qw [0]=bbt_n_qw;
						struct BBDebugStm __stmt_10 = {0x540807cbd0b3aa62, 351, 0};
						bbOnDebugEnterStm(&__stmt_10);
						((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)bbt_piv))->_openb3d_openb3dcore_tentity_qx [0]=bbt_n_qx;
						struct BBDebugStm __stmt_11 = {0x540807cbd0b3aa62, 352, 0};
						bbOnDebugEnterStm(&__stmt_11);
						((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)bbt_piv))->_openb3d_openb3dcore_tentity_qy [0]=bbt_n_qy;
						struct BBDebugStm __stmt_12 = {0x540807cbd0b3aa62, 353, 0};
						bbOnDebugEnterStm(&__stmt_12);
						((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)bbt_piv))->_openb3d_openb3dcore_tentity_qz [0]=bbt_n_qz;
						struct BBDebugStm __stmt_13 = {0x540807cbd0b3aa62, 356, 0};
						bbOnDebugEnterStm(&__stmt_13);
						((struct openb3d_openb3dcore_TMesh_obj*)bbNullObjectTest((BBObject*)bbt_piv))->clas->m_EntityListAdd_TTListTObject((struct openb3d_openb3dcore_TEntity_obj*)bbt_piv,(struct brl_linkedlist_TList_obj*)openb3d_openb3dcore_TEntity_entity_list,(BBOBJECT)&bbNullObject);
						struct BBDebugStm __stmt_14 = {0x540807cbd0b3aa62, 357, 0};
						bbOnDebugEnterStm(&__stmt_14);
						bbt_last_ent=(struct openb3d_openb3dcore_TEntity_obj*)((struct openb3d_openb3dcore_TEntity_obj*)bbObjectDowncast((BBOBJECT)bbt_piv,(BBClass*)&openb3d_openb3dcore_TEntity));
						struct BBDebugStm __stmt_15 = {0x540807cbd0b3aa62, 360, 0};
						bbOnDebugEnterStm(&__stmt_15);
						if(((BBOBJECT)bbt_root_ent)==&bbNullObject){
							struct BBDebugScope __scope = {
								BBDEBUGSCOPE_LOCALBLOCK,
								0,
								{
									{
										BBDEBUGDECL_END
									}
								}
							};
							bbOnDebugEnterScope((BBDebugScope *)&__scope);
							struct BBDebugStm __stmt_0 = {0x540807cbd0b3aa62, 360, 0};
							bbOnDebugEnterStm(&__stmt_0);
							bbt_root_ent=(struct openb3d_openb3dcore_TEntity_obj*)((struct openb3d_openb3dcore_TEntity_obj*)bbObjectDowncast((BBOBJECT)bbt_piv,(BBClass*)&openb3d_openb3dcore_TEntity));
							bbOnDebugLeaveScope();
						}
						struct BBDebugStm __stmt_16 = {0x540807cbd0b3aa62, 363, 0};
						bbOnDebugEnterStm(&__stmt_16);
						if(((struct openb3d_openb3dcore_TEntity_obj*)bbt_root_ent)==((struct openb3d_openb3dcore_TEntity_obj*)bbObjectDowncast((BBOBJECT)bbt_piv,(BBClass*)&openb3d_openb3dcore_TEntity))){
							struct BBDebugScope __scope = {
								BBDEBUGSCOPE_LOCALBLOCK,
								0,
								{
									{
										BBDEBUGDECL_END
									}
								}
							};
							bbOnDebugEnterScope((BBDebugScope *)&__scope);
							struct BBDebugStm __stmt_0 = {0x540807cbd0b3aa62, 363, 0};
							bbOnDebugEnterStm(&__stmt_0);
							((struct openb3d_openb3dcore_TMesh_obj*)bbNullObjectTest((BBObject*)bbt_piv))->clas->m_AddParent_TTEntity((struct openb3d_openb3dcore_TEntity_obj*)bbt_piv,(struct openb3d_openb3dcore_TEntity_obj*)bbt_parent_ent_ext);
							bbOnDebugLeaveScope();
						}
						struct BBDebugStm __stmt_17 = {0x540807cbd0b3aa62, 366, 0};
						bbOnDebugEnterStm(&__stmt_17);
						if(bbt_node_level>0){
							struct BBDebugScope __scope = {
								BBDEBUGSCOPE_LOCALBLOCK,
								0,
								{
									{
										BBDEBUGDECL_END
									}
								}
							};
							bbOnDebugEnterScope((BBDebugScope *)&__scope);
							struct BBDebugStm __stmt_0 = {0x540807cbd0b3aa62, 366, 0};
							bbOnDebugEnterStm(&__stmt_0);
							((struct openb3d_openb3dcore_TMesh_obj*)bbNullObjectTest((BBObject*)bbt_piv))->clas->m_AddParent_TTEntity((struct openb3d_openb3dcore_TEntity_obj*)bbt_piv,(struct openb3d_openb3dcore_TEntity_obj*)bbt_parent_ent);
							bbOnDebugLeaveScope();
						}
						struct BBDebugStm __stmt_18 = {0x540807cbd0b3aa62, 368, 0};
						bbOnDebugEnterStm(&__stmt_18);
						openb3d_openb3dcore_TQuatPtr_QuatToMat_i_ffffTTMatPtr(-bbt_n_qw,bbt_n_qx,bbt_n_qy,-bbt_n_qz,(struct openb3d_openb3dcore_TMatPtr_obj*)((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)bbt_piv))->_openb3d_openb3dcore_tentity_mat );
						struct BBDebugStm __stmt_19 = {0x540807cbd0b3aa62, 370, 0};
						bbOnDebugEnterStm(&__stmt_19);
						((struct openb3d_openb3dcore_TMatPtr_obj*)bbNullObjectTest((BBObject*)((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)bbt_piv))->_openb3d_openb3dcore_tentity_mat ))->_openb3d_openb3dcore_tmatptr_grid [12]=bbt_n_px;
						struct BBDebugStm __stmt_20 = {0x540807cbd0b3aa62, 371, 0};
						bbOnDebugEnterStm(&__stmt_20);
						((struct openb3d_openb3dcore_TMatPtr_obj*)bbNullObjectTest((BBObject*)((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)bbt_piv))->_openb3d_openb3dcore_tentity_mat ))->_openb3d_openb3dcore_tmatptr_grid [13]=bbt_n_py;
						struct BBDebugStm __stmt_21 = {0x540807cbd0b3aa62, 372, 0};
						bbOnDebugEnterStm(&__stmt_21);
						((struct openb3d_openb3dcore_TMatPtr_obj*)bbNullObjectTest((BBObject*)((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)bbt_piv))->_openb3d_openb3dcore_tentity_mat ))->_openb3d_openb3dcore_tmatptr_grid [14]=bbt_n_pz;
						struct BBDebugStm __stmt_22 = {0x540807cbd0b3aa62, 374, 0};
						bbOnDebugEnterStm(&__stmt_22);
						struct openb3d_openb3dcore_TMatPtr_obj* bbt_8;
						(((struct openb3d_openb3dcore_TMatPtr_obj*)((struct openb3d_openb3dcore_TMatPtr_obj*)bbNullObjectTest((BBObject*)(bbt_8 = ((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)bbt_piv))->_openb3d_openb3dcore_tentity_mat ))))->clas)->m_Scale_fff((struct openb3d_openb3dcore_TMatPtr_obj*)bbt_8,bbt_n_sx,bbt_n_sy,bbt_n_sz);
						struct BBDebugStm __stmt_23 = {0x540807cbd0b3aa62, 376, 0};
						bbOnDebugEnterStm(&__stmt_23);
						if(((BBOBJECT)((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)bbt_piv))->_openb3d_openb3dcore_tentity_parent )!=&bbNullObject){
							struct openb3d_openb3dcore_TMatPtr_obj* bbt_new_mat=(struct openb3d_openb3dcore_TMatPtr_obj*)((struct openb3d_openb3dcore_TMatPtr_obj*)&bbNullObject);
							struct BBDebugScope_1 __scope = {
								BBDEBUGSCOPE_LOCALBLOCK,
								0,
								{
									{
										BBDEBUGDECL_LOCAL,
										"new_mat",
										":TMatPtr",
										.var_address=&bbt_new_mat
									},
									{
										BBDEBUGDECL_END
									}
								}
							};
							bbOnDebugEnterScope((BBDebugScope *)&__scope);
							struct BBDebugStm __stmt_0 = {0x540807cbd0b3aa62, 377, 0};
							bbOnDebugEnterStm(&__stmt_0);
							struct openb3d_openb3dcore_TMatPtr_obj* bbt_9;
							bbt_new_mat=(struct openb3d_openb3dcore_TMatPtr_obj*)(((struct openb3d_openb3dcore_TMatPtr_obj*)((struct openb3d_openb3dcore_TMatPtr_obj*)bbNullObjectTest((BBObject*)(bbt_9 = ((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)bbt_piv))->_openb3d_openb3dcore_tentity_parent ))->_openb3d_openb3dcore_tentity_mat ))))->clas)->m_Copy((struct openb3d_openb3dcore_TMatPtr_obj*)bbt_9);
							struct BBDebugStm __stmt_1 = {0x540807cbd0b3aa62, 378, 0};
							bbOnDebugEnterStm(&__stmt_1);
							((struct openb3d_openb3dcore_TMatPtr_obj*)bbNullObjectTest((BBObject*)bbt_new_mat))->clas->m_Multiply_TTMatPtr((struct openb3d_openb3dcore_TMatPtr_obj*)bbt_new_mat,(struct openb3d_openb3dcore_TMatPtr_obj*)((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)bbt_piv))->_openb3d_openb3dcore_tentity_mat );
							struct BBDebugStm __stmt_2 = {0x540807cbd0b3aa62, 379, 0};
							bbOnDebugEnterStm(&__stmt_2);
							struct openb3d_openb3dcore_TMatPtr_obj* bbt_10;
							(((struct openb3d_openb3dcore_TMatPtr_obj*)((struct openb3d_openb3dcore_TMatPtr_obj*)bbNullObjectTest((BBObject*)(bbt_10 = ((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)bbt_piv))->_openb3d_openb3dcore_tentity_mat ))))->clas)->m_Overwrite_TTMatPtr((struct openb3d_openb3dcore_TMatPtr_obj*)bbt_10,(struct openb3d_openb3dcore_TMatPtr_obj*)bbt_new_mat);
							bbOnDebugLeaveScope();
						}
						bbOnDebugLeaveScope();
					}
					bbOnDebugLeaveScope();
				}else{
					struct BBDebugScope __scope = {
						BBDEBUGSCOPE_LOCALBLOCK,
						0,
						{
							{
								BBDEBUGDECL_END
							}
						}
					};
					bbOnDebugEnterScope((BBDebugScope *)&__scope);
					struct BBDebugStm __stmt_0 = {0x540807cbd0b3aa62, 384, 0};
					bbOnDebugEnterStm(&__stmt_0);
					if(bbStringEquals(bbt_3, ((BBString*)&_s462))==1){
						struct BBDebugScope __scope = {
							BBDEBUGSCOPE_LOCALBLOCK,
							0,
							{
								{
									BBDEBUGDECL_END
								}
							}
						};
						bbOnDebugEnterScope((BBDebugScope *)&__scope);
						struct BBDebugStm __stmt_0 = {0x540807cbd0b3aa62, 386, 0};
						bbOnDebugEnterStm(&__stmt_0);
						bbt_m_brush_id=brl_stream_ReadInt((struct brl_stream_TStream_obj*)bbt_file);
						struct BBDebugStm __stmt_1 = {0x540807cbd0b3aa62, 388, 0};
						bbOnDebugEnterStm(&__stmt_1);
						if(openb3d_openb3dcore_TGlobal3D_Log_B3D!=0){
							struct BBDebugScope __scope = {
								BBDEBUGSCOPE_LOCALBLOCK,
								0,
								{
									{
										BBDEBUGDECL_END
									}
								}
							};
							bbOnDebugEnterScope((BBDebugScope *)&__scope);
							struct BBDebugStm __stmt_0 = {0x540807cbd0b3aa62, 388, 0};
							bbOnDebugEnterStm(&__stmt_0);
							brl_blitz_DebugLog(bbStringConcat(bbStringConcat(bbStringConcat(bbStringConcat(((BBString*)&_s445),bbt_tab),bbt_new_tag),((BBString*)&_s463)),bbStringFromInt(bbt_m_brush_id)));
							bbOnDebugLeaveScope();
						}
						struct BBDebugStm __stmt_2 = {0x540807cbd0b3aa62, 390, 0};
						bbOnDebugEnterStm(&__stmt_2);
						bbt_mesh=(struct openb3d_openb3dcore_TMesh_obj*)openb3d_openb3dcore_TMesh_Create_TTMesh();
						struct BBDebugStm __stmt_3 = {0x540807cbd0b3aa62, 391, 0};
						bbOnDebugEnterStm(&__stmt_3);
						((struct openb3d_openb3dcore_TMesh_obj*)bbNullObjectTest((BBObject*)bbt_mesh))->clas->m_SetString_pbS((struct openb3d_openb3dcore_TEntity_obj*)bbt_mesh,((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)bbt_mesh))->_openb3d_openb3dcore_tentity_class_name ,((BBString*)&_s461));
						struct BBDebugStm __stmt_4 = {0x540807cbd0b3aa62, 392, 0};
						bbOnDebugEnterStm(&__stmt_4);
						((struct openb3d_openb3dcore_TMesh_obj*)bbNullObjectTest((BBObject*)bbt_mesh))->clas->m_SetString_pbS((struct openb3d_openb3dcore_TEntity_obj*)bbt_mesh,((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)bbt_mesh))->_openb3d_openb3dcore_tentity_name ,bbt_n_name);
						struct BBDebugStm __stmt_5 = {0x540807cbd0b3aa62, 393, 0};
						bbOnDebugEnterStm(&__stmt_5);
						((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)bbt_mesh))->_openb3d_openb3dcore_tentity_px [0]=bbt_n_px;
						struct BBDebugStm __stmt_6 = {0x540807cbd0b3aa62, 394, 0};
						bbOnDebugEnterStm(&__stmt_6);
						((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)bbt_mesh))->_openb3d_openb3dcore_tentity_py [0]=bbt_n_py;
						struct BBDebugStm __stmt_7 = {0x540807cbd0b3aa62, 395, 0};
						bbOnDebugEnterStm(&__stmt_7);
						((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)bbt_mesh))->_openb3d_openb3dcore_tentity_pz [0]=bbt_n_pz;
						struct BBDebugStm __stmt_8 = {0x540807cbd0b3aa62, 396, 0};
						bbOnDebugEnterStm(&__stmt_8);
						((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)bbt_mesh))->_openb3d_openb3dcore_tentity_sx [0]=bbt_n_sx;
						struct BBDebugStm __stmt_9 = {0x540807cbd0b3aa62, 397, 0};
						bbOnDebugEnterStm(&__stmt_9);
						((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)bbt_mesh))->_openb3d_openb3dcore_tentity_sy [0]=bbt_n_sy;
						struct BBDebugStm __stmt_10 = {0x540807cbd0b3aa62, 398, 0};
						bbOnDebugEnterStm(&__stmt_10);
						((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)bbt_mesh))->_openb3d_openb3dcore_tentity_sz [0]=bbt_n_sz;
						struct BBDebugStm __stmt_11 = {0x540807cbd0b3aa62, 399, 0};
						bbOnDebugEnterStm(&__stmt_11);
						((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)bbt_mesh))->_openb3d_openb3dcore_tentity_qw [0]=bbt_n_qw;
						struct BBDebugStm __stmt_12 = {0x540807cbd0b3aa62, 400, 0};
						bbOnDebugEnterStm(&__stmt_12);
						((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)bbt_mesh))->_openb3d_openb3dcore_tentity_qx [0]=bbt_n_qx;
						struct BBDebugStm __stmt_13 = {0x540807cbd0b3aa62, 401, 0};
						bbOnDebugEnterStm(&__stmt_13);
						((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)bbt_mesh))->_openb3d_openb3dcore_tentity_qy [0]=bbt_n_qy;
						struct BBDebugStm __stmt_14 = {0x540807cbd0b3aa62, 402, 0};
						bbOnDebugEnterStm(&__stmt_14);
						((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)bbt_mesh))->_openb3d_openb3dcore_tentity_qz [0]=bbt_n_qz;
						struct BBDebugStm __stmt_15 = {0x540807cbd0b3aa62, 404, 0};
						bbOnDebugEnterStm(&__stmt_15);
						((struct openb3d_openb3dcore_TMesh_obj*)bbNullObjectTest((BBObject*)bbt_mesh))->clas->m_EntityListAdd_TTListTObject((struct openb3d_openb3dcore_TEntity_obj*)bbt_mesh,(struct brl_linkedlist_TList_obj*)openb3d_openb3dcore_TEntity_entity_list,(BBOBJECT)&bbNullObject);
						struct BBDebugStm __stmt_16 = {0x540807cbd0b3aa62, 405, 0};
						bbOnDebugEnterStm(&__stmt_16);
						bbt_last_ent=(struct openb3d_openb3dcore_TEntity_obj*)((struct openb3d_openb3dcore_TEntity_obj*)bbObjectDowncast((BBOBJECT)bbt_mesh,(BBClass*)&openb3d_openb3dcore_TEntity));
						struct BBDebugStm __stmt_17 = {0x540807cbd0b3aa62, 408, 0};
						bbOnDebugEnterStm(&__stmt_17);
						if(((BBOBJECT)bbt_root_ent)==&bbNullObject){
							struct BBDebugScope __scope = {
								BBDEBUGSCOPE_LOCALBLOCK,
								0,
								{
									{
										BBDEBUGDECL_END
									}
								}
							};
							bbOnDebugEnterScope((BBDebugScope *)&__scope);
							struct BBDebugStm __stmt_0 = {0x540807cbd0b3aa62, 408, 0};
							bbOnDebugEnterStm(&__stmt_0);
							bbt_root_ent=(struct openb3d_openb3dcore_TEntity_obj*)((struct openb3d_openb3dcore_TEntity_obj*)bbObjectDowncast((BBOBJECT)bbt_mesh,(BBClass*)&openb3d_openb3dcore_TEntity));
							bbOnDebugLeaveScope();
						}
						struct BBDebugStm __stmt_18 = {0x540807cbd0b3aa62, 411, 0};
						bbOnDebugEnterStm(&__stmt_18);
						if(((struct openb3d_openb3dcore_TEntity_obj*)bbt_root_ent)==((struct openb3d_openb3dcore_TEntity_obj*)bbObjectDowncast((BBOBJECT)bbt_mesh,(BBClass*)&openb3d_openb3dcore_TEntity))){
							struct BBDebugScope __scope = {
								BBDEBUGSCOPE_LOCALBLOCK,
								0,
								{
									{
										BBDEBUGDECL_END
									}
								}
							};
							bbOnDebugEnterScope((BBDebugScope *)&__scope);
							struct BBDebugStm __stmt_0 = {0x540807cbd0b3aa62, 411, 0};
							bbOnDebugEnterStm(&__stmt_0);
							((struct openb3d_openb3dcore_TMesh_obj*)bbNullObjectTest((BBObject*)bbt_mesh))->clas->m_AddParent_TTEntity((struct openb3d_openb3dcore_TEntity_obj*)bbt_mesh,(struct openb3d_openb3dcore_TEntity_obj*)bbt_parent_ent_ext);
							bbOnDebugLeaveScope();
						}
						struct BBDebugStm __stmt_19 = {0x540807cbd0b3aa62, 414, 0};
						bbOnDebugEnterStm(&__stmt_19);
						if(bbt_node_level>0){
							struct BBDebugScope __scope = {
								BBDEBUGSCOPE_LOCALBLOCK,
								0,
								{
									{
										BBDEBUGDECL_END
									}
								}
							};
							bbOnDebugEnterScope((BBDebugScope *)&__scope);
							struct BBDebugStm __stmt_0 = {0x540807cbd0b3aa62, 414, 0};
							bbOnDebugEnterStm(&__stmt_0);
							((struct openb3d_openb3dcore_TMesh_obj*)bbNullObjectTest((BBObject*)bbt_mesh))->clas->m_AddParent_TTEntity((struct openb3d_openb3dcore_TEntity_obj*)bbt_mesh,(struct openb3d_openb3dcore_TEntity_obj*)bbt_parent_ent);
							bbOnDebugLeaveScope();
						}
						struct BBDebugStm __stmt_20 = {0x540807cbd0b3aa62, 416, 0};
						bbOnDebugEnterStm(&__stmt_20);
						openb3d_openb3dcore_TQuatPtr_QuatToMat_i_ffffTTMatPtr(-bbt_n_qw,bbt_n_qx,bbt_n_qy,-bbt_n_qz,(struct openb3d_openb3dcore_TMatPtr_obj*)((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)bbt_mesh))->_openb3d_openb3dcore_tentity_mat );
						struct BBDebugStm __stmt_21 = {0x540807cbd0b3aa62, 418, 0};
						bbOnDebugEnterStm(&__stmt_21);
						((struct openb3d_openb3dcore_TMatPtr_obj*)bbNullObjectTest((BBObject*)((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)bbt_mesh))->_openb3d_openb3dcore_tentity_mat ))->_openb3d_openb3dcore_tmatptr_grid [12]=bbt_n_px;
						struct BBDebugStm __stmt_22 = {0x540807cbd0b3aa62, 419, 0};
						bbOnDebugEnterStm(&__stmt_22);
						((struct openb3d_openb3dcore_TMatPtr_obj*)bbNullObjectTest((BBObject*)((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)bbt_mesh))->_openb3d_openb3dcore_tentity_mat ))->_openb3d_openb3dcore_tmatptr_grid [13]=bbt_n_py;
						struct BBDebugStm __stmt_23 = {0x540807cbd0b3aa62, 420, 0};
						bbOnDebugEnterStm(&__stmt_23);
						((struct openb3d_openb3dcore_TMatPtr_obj*)bbNullObjectTest((BBObject*)((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)bbt_mesh))->_openb3d_openb3dcore_tentity_mat ))->_openb3d_openb3dcore_tmatptr_grid [14]=bbt_n_pz;
						struct BBDebugStm __stmt_24 = {0x540807cbd0b3aa62, 422, 0};
						bbOnDebugEnterStm(&__stmt_24);
						struct openb3d_openb3dcore_TMatPtr_obj* bbt_11;
						(((struct openb3d_openb3dcore_TMatPtr_obj*)((struct openb3d_openb3dcore_TMatPtr_obj*)bbNullObjectTest((BBObject*)(bbt_11 = ((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)bbt_mesh))->_openb3d_openb3dcore_tentity_mat ))))->clas)->m_Scale_fff((struct openb3d_openb3dcore_TMatPtr_obj*)bbt_11,bbt_n_sx,bbt_n_sy,bbt_n_sz);
						struct BBDebugStm __stmt_25 = {0x540807cbd0b3aa62, 424, 0};
						bbOnDebugEnterStm(&__stmt_25);
						if(((BBOBJECT)((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)bbt_mesh))->_openb3d_openb3dcore_tentity_parent )!=&bbNullObject){
							struct openb3d_openb3dcore_TMatPtr_obj* bbt_new_mat2=(struct openb3d_openb3dcore_TMatPtr_obj*)((struct openb3d_openb3dcore_TMatPtr_obj*)&bbNullObject);
							struct BBDebugScope_1 __scope = {
								BBDEBUGSCOPE_LOCALBLOCK,
								0,
								{
									{
										BBDEBUGDECL_LOCAL,
										"new_mat",
										":TMatPtr",
										.var_address=&bbt_new_mat2
									},
									{
										BBDEBUGDECL_END
									}
								}
							};
							bbOnDebugEnterScope((BBDebugScope *)&__scope);
							struct BBDebugStm __stmt_0 = {0x540807cbd0b3aa62, 425, 0};
							bbOnDebugEnterStm(&__stmt_0);
							struct openb3d_openb3dcore_TMatPtr_obj* bbt_12;
							bbt_new_mat2=(struct openb3d_openb3dcore_TMatPtr_obj*)(((struct openb3d_openb3dcore_TMatPtr_obj*)((struct openb3d_openb3dcore_TMatPtr_obj*)bbNullObjectTest((BBObject*)(bbt_12 = ((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)bbt_mesh))->_openb3d_openb3dcore_tentity_parent ))->_openb3d_openb3dcore_tentity_mat ))))->clas)->m_Copy((struct openb3d_openb3dcore_TMatPtr_obj*)bbt_12);
							struct BBDebugStm __stmt_1 = {0x540807cbd0b3aa62, 426, 0};
							bbOnDebugEnterStm(&__stmt_1);
							((struct openb3d_openb3dcore_TMatPtr_obj*)bbNullObjectTest((BBObject*)bbt_new_mat2))->clas->m_Multiply_TTMatPtr((struct openb3d_openb3dcore_TMatPtr_obj*)bbt_new_mat2,(struct openb3d_openb3dcore_TMatPtr_obj*)((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)bbt_mesh))->_openb3d_openb3dcore_tentity_mat );
							struct BBDebugStm __stmt_2 = {0x540807cbd0b3aa62, 427, 0};
							bbOnDebugEnterStm(&__stmt_2);
							struct openb3d_openb3dcore_TMatPtr_obj* bbt_13;
							(((struct openb3d_openb3dcore_TMatPtr_obj*)((struct openb3d_openb3dcore_TMatPtr_obj*)bbNullObjectTest((BBObject*)(bbt_13 = ((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)bbt_mesh))->_openb3d_openb3dcore_tentity_mat ))))->clas)->m_Overwrite_TTMatPtr((struct openb3d_openb3dcore_TMatPtr_obj*)bbt_13,(struct openb3d_openb3dcore_TMatPtr_obj*)bbt_new_mat2);
							bbOnDebugLeaveScope();
						}
						bbOnDebugLeaveScope();
					}else{
						struct BBDebugScope __scope = {
							BBDEBUGSCOPE_LOCALBLOCK,
							0,
							{
								{
									BBDEBUGDECL_END
								}
							}
						};
						bbOnDebugEnterScope((BBDebugScope *)&__scope);
						struct BBDebugStm __stmt_0 = {0x540807cbd0b3aa62, 430, 0};
						bbOnDebugEnterStm(&__stmt_0);
						if(bbStringEquals(bbt_3, ((BBString*)&_s464))==1){
							struct BBDebugScope __scope = {
								BBDEBUGSCOPE_LOCALBLOCK,
								0,
								{
									{
										BBDEBUGDECL_END
									}
								}
							};
							bbOnDebugEnterScope((BBDebugScope *)&__scope);
							struct BBDebugStm __stmt_0 = {0x540807cbd0b3aa62, 432, 0};
							bbOnDebugEnterStm(&__stmt_0);
							if(((BBOBJECT)bbt_v_mesh)!=&bbNullObject){
								struct BBDebugScope __scope = {
									BBDEBUGSCOPE_LOCALBLOCK,
									0,
									{
										{
											BBDEBUGDECL_END
										}
									}
								};
								bbOnDebugEnterScope((BBDebugScope *)&__scope);
								struct BBDebugStm __stmt_0 = {0x540807cbd0b3aa62, 432, 0};
								bbOnDebugEnterStm(&__stmt_0);
								bbt_v_mesh=(struct openb3d_openb3dcore_TMesh_obj*)&bbNullObject;
								bbOnDebugLeaveScope();
							}
							struct BBDebugStm __stmt_1 = {0x540807cbd0b3aa62, 433, 0};
							bbOnDebugEnterStm(&__stmt_1);
							if(((BBOBJECT)bbt_v_surf)!=&bbNullObject){
								struct BBDebugScope __scope = {
									BBDEBUGSCOPE_LOCALBLOCK,
									0,
									{
										{
											BBDEBUGDECL_END
										}
									}
								};
								bbOnDebugEnterScope((BBDebugScope *)&__scope);
								struct BBDebugStm __stmt_0 = {0x540807cbd0b3aa62, 433, 0};
								bbOnDebugEnterStm(&__stmt_0);
								bbt_v_surf=(struct openb3d_openb3dcore_TSurface_obj*)&bbNullObject;
								bbOnDebugLeaveScope();
							}
							struct BBDebugStm __stmt_2 = {0x540807cbd0b3aa62, 435, 0};
							bbOnDebugEnterStm(&__stmt_2);
							bbt_v_mesh=(struct openb3d_openb3dcore_TMesh_obj*)openb3d_openb3dcore_TMesh_Create_TTMesh();
							struct BBDebugStm __stmt_3 = {0x540807cbd0b3aa62, 436, 0};
							bbOnDebugEnterStm(&__stmt_3);
							bbt_v_surf=(struct openb3d_openb3dcore_TSurface_obj*)((struct openb3d_openb3dcore_TMesh_obj*)bbNullObjectTest((BBObject*)bbt_v_mesh))->clas->m_CreateSurface_TTBrush((struct openb3d_openb3dcore_TMesh_obj*)bbt_v_mesh,(struct openb3d_openb3dcore_TBrush_obj*)&bbNullObject);
							struct BBDebugStm __stmt_4 = {0x540807cbd0b3aa62, 437, 0};
							bbOnDebugEnterStm(&__stmt_4);
							bbt_v_flags=brl_stream_ReadInt((struct brl_stream_TStream_obj*)bbt_file);
							struct BBDebugStm __stmt_5 = {0x540807cbd0b3aa62, 438, 0};
							bbOnDebugEnterStm(&__stmt_5);
							bbt_v_tc_sets=brl_stream_ReadInt((struct brl_stream_TStream_obj*)bbt_file);
							struct BBDebugStm __stmt_6 = {0x540807cbd0b3aa62, 439, 0};
							bbOnDebugEnterStm(&__stmt_6);
							bbt_v_tc_size=brl_stream_ReadInt((struct brl_stream_TStream_obj*)bbt_file);
							struct BBDebugStm __stmt_7 = {0x540807cbd0b3aa62, 441, 0};
							bbOnDebugEnterStm(&__stmt_7);
							if(openb3d_openb3dcore_TGlobal3D_Log_B3D!=0){
								struct BBDebugScope __scope = {
									BBDEBUGSCOPE_LOCALBLOCK,
									0,
									{
										{
											BBDEBUGDECL_END
										}
									}
								};
								bbOnDebugEnterScope((BBDebugScope *)&__scope);
								struct BBDebugStm __stmt_0 = {0x540807cbd0b3aa62, 441, 0};
								bbOnDebugEnterStm(&__stmt_0);
								brl_blitz_DebugLog(bbStringConcat(bbStringConcat(bbStringConcat(bbStringConcat(bbStringConcat(bbStringConcat(bbStringConcat(bbStringConcat(((BBString*)&_s445),bbt_tab),bbt_new_tag),((BBString*)&_s447)),bbStringFromInt(bbt_v_flags)),((BBString*)&_s465)),bbStringFromInt(bbt_v_tc_sets)),((BBString*)&_s466)),bbStringFromInt(bbt_v_tc_size)));
								bbOnDebugLeaveScope();
							}
							struct BBDebugStm __stmt_8 = {0x540807cbd0b3aa62, 443, 0};
							bbOnDebugEnterStm(&__stmt_8);
							bbt_v_sz=(12+((bbt_v_tc_sets*bbt_v_tc_size)*4));
							struct BBDebugStm __stmt_9 = {0x540807cbd0b3aa62, 444, 0};
							bbOnDebugEnterStm(&__stmt_9);
							if(((unsigned int)(bbt_v_flags)&(unsigned int)(1))!=0){
								struct BBDebugScope __scope = {
									BBDEBUGSCOPE_LOCALBLOCK,
									0,
									{
										{
											BBDEBUGDECL_END
										}
									}
								};
								bbOnDebugEnterScope((BBDebugScope *)&__scope);
								struct BBDebugStm __stmt_0 = {0x540807cbd0b3aa62, 444, 0};
								bbOnDebugEnterStm(&__stmt_0);
								bbt_v_sz=(bbt_v_sz+12);
								bbOnDebugLeaveScope();
							}
							struct BBDebugStm __stmt_10 = {0x540807cbd0b3aa62, 445, 0};
							bbOnDebugEnterStm(&__stmt_10);
							if(((unsigned int)(bbt_v_flags)&(unsigned int)(2))!=0){
								struct BBDebugScope __scope = {
									BBDEBUGSCOPE_LOCALBLOCK,
									0,
									{
										{
											BBDEBUGDECL_END
										}
									}
								};
								bbOnDebugEnterScope((BBDebugScope *)&__scope);
								struct BBDebugStm __stmt_0 = {0x540807cbd0b3aa62, 445, 0};
								bbOnDebugEnterStm(&__stmt_0);
								bbt_v_sz=(bbt_v_sz+16);
								bbOnDebugLeaveScope();
							}
							struct BBDebugStm __stmt_11 = {0x540807cbd0b3aa62, 447, 0};
							bbOnDebugEnterStm(&__stmt_11);
							bbt_new_tag=openb3d_openb3dcore_TB3D_ReadTag_S_TTStream((struct brl_stream_TStream_obj*)bbt_file);
							struct BBDebugStm __stmt_12 = {0x540807cbd0b3aa62, 449, 0};
							bbOnDebugEnterStm(&__stmt_12);
							while((openb3d_openb3dcore_TB3D_NewTag_i_S(bbt_new_tag)!=1) && (brl_stream_Eof((struct brl_stream_TStream_obj*)bbt_file)==0)){
								struct BBDebugScope __scope = {
									BBDEBUGSCOPE_LOCALBLOCK,
									0,
									{
										{
											BBDEBUGDECL_END
										}
									}
								};
								bbOnDebugEnterScope((BBDebugScope *)&__scope);
								struct BBDebugStm __stmt_0 = {0x540807cbd0b3aa62, 451, 0};
								bbOnDebugEnterStm(&__stmt_0);
								bbt_v_x=brl_stream_ReadFloat((struct brl_stream_TStream_obj*)bbt_file);
								struct BBDebugStm __stmt_1 = {0x540807cbd0b3aa62, 452, 0};
								bbOnDebugEnterStm(&__stmt_1);
								bbt_v_y=brl_stream_ReadFloat((struct brl_stream_TStream_obj*)bbt_file);
								struct BBDebugStm __stmt_2 = {0x540807cbd0b3aa62, 453, 0};
								bbOnDebugEnterStm(&__stmt_2);
								bbt_v_z=brl_stream_ReadFloat((struct brl_stream_TStream_obj*)bbt_file);
								struct BBDebugStm __stmt_3 = {0x540807cbd0b3aa62, 455, 0};
								bbOnDebugEnterStm(&__stmt_3);
								if(((unsigned int)(bbt_v_flags)&(unsigned int)(1))!=0){
									struct BBDebugScope __scope = {
										BBDEBUGSCOPE_LOCALBLOCK,
										0,
										{
											{
												BBDEBUGDECL_END
											}
										}
									};
									bbOnDebugEnterScope((BBDebugScope *)&__scope);
									struct BBDebugStm __stmt_0 = {0x540807cbd0b3aa62, 456, 0};
									bbOnDebugEnterStm(&__stmt_0);
									bbt_v_nx=brl_stream_ReadFloat((struct brl_stream_TStream_obj*)bbt_file);
									struct BBDebugStm __stmt_1 = {0x540807cbd0b3aa62, 457, 0};
									bbOnDebugEnterStm(&__stmt_1);
									bbt_v_ny=brl_stream_ReadFloat((struct brl_stream_TStream_obj*)bbt_file);
									struct BBDebugStm __stmt_2 = {0x540807cbd0b3aa62, 458, 0};
									bbOnDebugEnterStm(&__stmt_2);
									bbt_v_nz=brl_stream_ReadFloat((struct brl_stream_TStream_obj*)bbt_file);
									bbOnDebugLeaveScope();
								}
								struct BBDebugStm __stmt_4 = {0x540807cbd0b3aa62, 461, 0};
								bbOnDebugEnterStm(&__stmt_4);
								if(((unsigned int)(bbt_v_flags)&(unsigned int)(2))!=0){
									struct BBDebugScope __scope = {
										BBDEBUGSCOPE_LOCALBLOCK,
										0,
										{
											{
												BBDEBUGDECL_END
											}
										}
									};
									bbOnDebugEnterScope((BBDebugScope *)&__scope);
									struct BBDebugStm __stmt_0 = {0x540807cbd0b3aa62, 462, 0};
									bbOnDebugEnterStm(&__stmt_0);
									bbt_v_r=(brl_stream_ReadFloat((struct brl_stream_TStream_obj*)bbt_file)*255.0f);
									struct BBDebugStm __stmt_1 = {0x540807cbd0b3aa62, 463, 0};
									bbOnDebugEnterStm(&__stmt_1);
									bbt_v_g=(brl_stream_ReadFloat((struct brl_stream_TStream_obj*)bbt_file)*255.0f);
									struct BBDebugStm __stmt_2 = {0x540807cbd0b3aa62, 464, 0};
									bbOnDebugEnterStm(&__stmt_2);
									bbt_v_b=(brl_stream_ReadFloat((struct brl_stream_TStream_obj*)bbt_file)*255.0f);
									struct BBDebugStm __stmt_3 = {0x540807cbd0b3aa62, 465, 0};
									bbOnDebugEnterStm(&__stmt_3);
									bbt_v_a=brl_stream_ReadFloat((struct brl_stream_TStream_obj*)bbt_file);
									bbOnDebugLeaveScope();
								}
								struct BBDebugStm __stmt_5 = {0x540807cbd0b3aa62, 468, 0};
								bbOnDebugEnterStm(&__stmt_5);
								bbt_v_id=((struct openb3d_openb3dcore_TSurface_obj*)bbNullObjectTest((BBObject*)bbt_v_surf))->clas->m_AddVertex_ffffff((struct openb3d_openb3dcore_TSurface_obj*)bbt_v_surf,bbt_v_x,bbt_v_y,bbt_v_z,0.00000000f,0.00000000f,0.00000000f);
								struct BBDebugStm __stmt_6 = {0x540807cbd0b3aa62, 469, 0};
								bbOnDebugEnterStm(&__stmt_6);
								((struct openb3d_openb3dcore_TSurface_obj*)bbNullObjectTest((BBObject*)bbt_v_surf))->clas->m_VertexNormal_ifff((struct openb3d_openb3dcore_TSurface_obj*)bbt_v_surf,bbt_v_id,bbt_v_nx,bbt_v_ny,bbt_v_nz);
								struct BBDebugStm __stmt_7 = {0x540807cbd0b3aa62, 470, 0};
								bbOnDebugEnterStm(&__stmt_7);
								((struct openb3d_openb3dcore_TSurface_obj*)bbNullObjectTest((BBObject*)bbt_v_surf))->clas->m_VertexColor_iffff((struct openb3d_openb3dcore_TSurface_obj*)bbt_v_surf,bbt_v_id,bbt_v_r,bbt_v_g,bbt_v_b,bbt_v_a);
								struct BBDebugStm __stmt_8 = {0x540807cbd0b3aa62, 473, 0};
								bbOnDebugEnterStm(&__stmt_8);
								{
									BBINT bbt_j=0;
									BBINT bbt_14=(bbt_v_tc_sets-1);
									for(;(bbt_j<=bbt_14);bbt_j=(bbt_j+1)){
										struct BBDebugScope_1 __scope = {
											BBDEBUGSCOPE_LOCALBLOCK,
											0,
											{
												{
													BBDEBUGDECL_LOCAL,
													"j",
													"i",
													.var_address=&bbt_j
												},
												{
													BBDEBUGDECL_END
												}
											}
										};
										bbOnDebugEnterScope((BBDebugScope *)&__scope);
										struct BBDebugStm __stmt_0 = {0x540807cbd0b3aa62, 474, 0};
										bbOnDebugEnterStm(&__stmt_0);
										{
											BBINT bbt_k=1;
											BBINT bbt_15=bbt_v_tc_size;
											for(;(bbt_k<=bbt_15);bbt_k=(bbt_k+1)){
												struct BBDebugScope_1 __scope = {
													BBDEBUGSCOPE_LOCALBLOCK,
													0,
													{
														{
															BBDEBUGDECL_LOCAL,
															"k",
															"i",
															.var_address=&bbt_k
														},
														{
															BBDEBUGDECL_END
														}
													}
												};
												bbOnDebugEnterScope((BBDebugScope *)&__scope);
												struct BBDebugStm __stmt_0 = {0x540807cbd0b3aa62, 475, 0};
												bbOnDebugEnterStm(&__stmt_0);
												if(bbt_k==1){
													struct BBDebugScope __scope = {
														BBDEBUGSCOPE_LOCALBLOCK,
														0,
														{
															{
																BBDEBUGDECL_END
															}
														}
													};
													bbOnDebugEnterScope((BBDebugScope *)&__scope);
													struct BBDebugStm __stmt_0 = {0x540807cbd0b3aa62, 475, 0};
													bbOnDebugEnterStm(&__stmt_0);
													bbt_v_u=brl_stream_ReadFloat((struct brl_stream_TStream_obj*)bbt_file);
													bbOnDebugLeaveScope();
												}
												struct BBDebugStm __stmt_1 = {0x540807cbd0b3aa62, 476, 0};
												bbOnDebugEnterStm(&__stmt_1);
												if(bbt_k==2){
													struct BBDebugScope __scope = {
														BBDEBUGSCOPE_LOCALBLOCK,
														0,
														{
															{
																BBDEBUGDECL_END
															}
														}
													};
													bbOnDebugEnterScope((BBDebugScope *)&__scope);
													struct BBDebugStm __stmt_0 = {0x540807cbd0b3aa62, 476, 0};
													bbOnDebugEnterStm(&__stmt_0);
													bbt_v_v=brl_stream_ReadFloat((struct brl_stream_TStream_obj*)bbt_file);
													bbOnDebugLeaveScope();
												}
												struct BBDebugStm __stmt_2 = {0x540807cbd0b3aa62, 477, 0};
												bbOnDebugEnterStm(&__stmt_2);
												if(bbt_k==3){
													struct BBDebugScope __scope = {
														BBDEBUGSCOPE_LOCALBLOCK,
														0,
														{
															{
																BBDEBUGDECL_END
															}
														}
													};
													bbOnDebugEnterScope((BBDebugScope *)&__scope);
													struct BBDebugStm __stmt_0 = {0x540807cbd0b3aa62, 477, 0};
													bbOnDebugEnterStm(&__stmt_0);
													bbt_v_w=brl_stream_ReadFloat((struct brl_stream_TStream_obj*)bbt_file);
													bbOnDebugLeaveScope();
												}
												bbOnDebugLeaveScope();
											}
										}
										struct BBDebugStm __stmt_1 = {0x540807cbd0b3aa62, 480, 0};
										bbOnDebugEnterStm(&__stmt_1);
										if((bbt_j==0) || (bbt_j==1)){
											struct BBDebugScope __scope = {
												BBDEBUGSCOPE_LOCALBLOCK,
												0,
												{
													{
														BBDEBUGDECL_END
													}
												}
											};
											bbOnDebugEnterScope((BBDebugScope *)&__scope);
											struct BBDebugStm __stmt_0 = {0x540807cbd0b3aa62, 481, 0};
											bbOnDebugEnterStm(&__stmt_0);
											((struct openb3d_openb3dcore_TSurface_obj*)bbNullObjectTest((BBObject*)bbt_v_surf))->clas->m_VertexTexCoords_ifffi((struct openb3d_openb3dcore_TSurface_obj*)bbt_v_surf,bbt_v_id,bbt_v_u,bbt_v_v,bbt_v_w,bbt_j);
											struct BBDebugStm __stmt_1 = {0x540807cbd0b3aa62, 482, 0};
											bbOnDebugEnterStm(&__stmt_1);
											if((openb3d_openb3dcore_TGlobal3D_Log_B3D!=0) && (bbt_v_id==0)){
												struct BBDebugScope __scope = {
													BBDEBUGSCOPE_LOCALBLOCK,
													0,
													{
														{
															BBDEBUGDECL_END
														}
													}
												};
												bbOnDebugEnterScope((BBDebugScope *)&__scope);
												struct BBDebugStm __stmt_0 = {0x540807cbd0b3aa62, 482, 0};
												bbOnDebugEnterStm(&__stmt_0);
												brl_blitz_DebugLog(bbStringConcat(bbStringConcat(bbStringConcat(bbStringConcat(bbStringConcat(bbStringConcat(bbStringConcat(((BBString*)&_s467),bbStringFromFloat(bbt_v_u)),((BBString*)&_s468)),bbStringFromFloat(bbt_v_v)),((BBString*)&_s469)),bbStringFromInt(bbt_j)),((BBString*)&_s470)),bbStringFromInt(bbt_v_tc_sets)));
												bbOnDebugLeaveScope();
											}
											bbOnDebugLeaveScope();
										}
										bbOnDebugLeaveScope();
									}
								}
								struct BBDebugStm __stmt_9 = {0x540807cbd0b3aa62, 486, 0};
								bbOnDebugEnterStm(&__stmt_9);
								bbt_new_tag=openb3d_openb3dcore_TB3D_ReadTag_S_TTStream((struct brl_stream_TStream_obj*)bbt_file);
								bbOnDebugLeaveScope();
							}
							bbOnDebugLeaveScope();
						}else{
							struct BBDebugScope __scope = {
								BBDEBUGSCOPE_LOCALBLOCK,
								0,
								{
									{
										BBDEBUGDECL_END
									}
								}
							};
							bbOnDebugEnterScope((BBDebugScope *)&__scope);
							struct BBDebugStm __stmt_0 = {0x540807cbd0b3aa62, 489, 0};
							bbOnDebugEnterStm(&__stmt_0);
							if(bbStringEquals(bbt_3, ((BBString*)&_s471))==1){
								BBINT bbt_old_tr_brush_id=0;
								struct BBDebugScope_1 __scope = {
									BBDEBUGSCOPE_LOCALBLOCK,
									0,
									{
										{
											BBDEBUGDECL_LOCAL,
											"old_tr_brush_id",
											"i",
											.var_address=&bbt_old_tr_brush_id
										},
										{
											BBDEBUGDECL_END
										}
									}
								};
								bbOnDebugEnterScope((BBDebugScope *)&__scope);
								struct BBDebugStm __stmt_0 = {0x540807cbd0b3aa62, 491, 0};
								bbOnDebugEnterStm(&__stmt_0);
								bbt_old_tr_brush_id=bbt_tr_brush_id;
								struct BBDebugStm __stmt_1 = {0x540807cbd0b3aa62, 492, 0};
								bbOnDebugEnterStm(&__stmt_1);
								bbt_tr_brush_id=brl_stream_ReadInt((struct brl_stream_TStream_obj*)bbt_file);
								struct BBDebugStm __stmt_2 = {0x540807cbd0b3aa62, 494, 0};
								bbOnDebugEnterStm(&__stmt_2);
								if(openb3d_openb3dcore_TGlobal3D_Log_B3D!=0){
									struct BBDebugScope __scope = {
										BBDEBUGSCOPE_LOCALBLOCK,
										0,
										{
											{
												BBDEBUGDECL_END
											}
										}
									};
									bbOnDebugEnterScope((BBDebugScope *)&__scope);
									struct BBDebugStm __stmt_0 = {0x540807cbd0b3aa62, 494, 0};
									bbOnDebugEnterStm(&__stmt_0);
									brl_blitz_DebugLog(bbStringConcat(bbStringConcat(bbStringConcat(bbStringConcat(((BBString*)&_s445),bbt_tab),bbt_old_tag),((BBString*)&_s472)),bbStringFromInt(bbt_tr_brush_id)));
									bbOnDebugLeaveScope();
								}
								struct BBDebugStm __stmt_3 = {0x540807cbd0b3aa62, 497, 0};
								bbOnDebugEnterStm(&__stmt_3);
								if(bbStringEquals(bbt_prev_tag, ((BBString*)&_s471))!=1 || (bbt_tr_brush_id!=bbt_old_tr_brush_id)){
									struct BBDebugScope __scope = {
										BBDEBUGSCOPE_LOCALBLOCK,
										0,
										{
											{
												BBDEBUGDECL_END
											}
										}
									};
									bbOnDebugEnterScope((BBDebugScope *)&__scope);
									struct BBDebugStm __stmt_0 = {0x540807cbd0b3aa62, 500, 0};
									bbOnDebugEnterStm(&__stmt_0);
									if(bbStringEquals(bbt_prev_tag, ((BBString*)&_s471))==1){
										struct BBDebugScope __scope = {
											BBDEBUGSCOPE_LOCALBLOCK,
											0,
											{
												{
													BBDEBUGDECL_END
												}
											}
										};
										bbOnDebugEnterScope((BBDebugScope *)&__scope);
										struct BBDebugStm __stmt_0 = {0x540807cbd0b3aa62, 500, 0};
										bbOnDebugEnterStm(&__stmt_0);
										openb3d_openb3dcore_TB3D_TrimVerts_i_TTSurface((struct openb3d_openb3dcore_TSurface_obj*)bbt_surf);
										bbOnDebugLeaveScope();
									}
									struct BBDebugStm __stmt_1 = {0x540807cbd0b3aa62, 503, 0};
									bbOnDebugEnterStm(&__stmt_1);
									bbt_surf=(struct openb3d_openb3dcore_TSurface_obj*)((struct openb3d_openb3dcore_TMesh_obj*)bbNullObjectTest((BBObject*)bbt_mesh))->clas->m_CreateSurface_TTBrush((struct openb3d_openb3dcore_TMesh_obj*)bbt_mesh,(struct openb3d_openb3dcore_TBrush_obj*)&bbNullObject);
									struct BBDebugStm __stmt_2 = {0x540807cbd0b3aa62, 505, 0};
									bbOnDebugEnterStm(&__stmt_2);
									((struct openb3d_openb3dcore_TSurface_obj*)bbNullObjectTest((BBObject*)bbt_surf))->_openb3d_openb3dcore_tsurface_vert_coords =((struct openb3d_openb3dcore_TSurface_obj*)bbNullObjectTest((BBObject*)bbt_surf))->clas->m_SurfaceFloatArrayCopy_iTTSurface((struct openb3d_openb3dcore_TSurface_obj*)bbt_surf,3,(struct openb3d_openb3dcore_TSurface_obj*)bbt_v_surf);
									struct BBDebugStm __stmt_3 = {0x540807cbd0b3aa62, 506, 0};
									bbOnDebugEnterStm(&__stmt_3);
									((struct openb3d_openb3dcore_TSurface_obj*)bbNullObjectTest((BBObject*)bbt_surf))->_openb3d_openb3dcore_tsurface_vert_norm =((struct openb3d_openb3dcore_TSurface_obj*)bbNullObjectTest((BBObject*)bbt_surf))->clas->m_SurfaceFloatArrayCopy_iTTSurface((struct openb3d_openb3dcore_TSurface_obj*)bbt_surf,4,(struct openb3d_openb3dcore_TSurface_obj*)bbt_v_surf);
									struct BBDebugStm __stmt_4 = {0x540807cbd0b3aa62, 507, 0};
									bbOnDebugEnterStm(&__stmt_4);
									((struct openb3d_openb3dcore_TSurface_obj*)bbNullObjectTest((BBObject*)bbt_surf))->_openb3d_openb3dcore_tsurface_vert_tex_coords0 =((struct openb3d_openb3dcore_TSurface_obj*)bbNullObjectTest((BBObject*)bbt_surf))->clas->m_SurfaceFloatArrayCopy_iTTSurface((struct openb3d_openb3dcore_TSurface_obj*)bbt_surf,5,(struct openb3d_openb3dcore_TSurface_obj*)bbt_v_surf);
									struct BBDebugStm __stmt_5 = {0x540807cbd0b3aa62, 508, 0};
									bbOnDebugEnterStm(&__stmt_5);
									((struct openb3d_openb3dcore_TSurface_obj*)bbNullObjectTest((BBObject*)bbt_surf))->_openb3d_openb3dcore_tsurface_vert_tex_coords1 =((struct openb3d_openb3dcore_TSurface_obj*)bbNullObjectTest((BBObject*)bbt_surf))->clas->m_SurfaceFloatArrayCopy_iTTSurface((struct openb3d_openb3dcore_TSurface_obj*)bbt_surf,6,(struct openb3d_openb3dcore_TSurface_obj*)bbt_v_surf);
									struct BBDebugStm __stmt_6 = {0x540807cbd0b3aa62, 509, 0};
									bbOnDebugEnterStm(&__stmt_6);
									((struct openb3d_openb3dcore_TSurface_obj*)bbNullObjectTest((BBObject*)bbt_surf))->_openb3d_openb3dcore_tsurface_vert_col =((struct openb3d_openb3dcore_TSurface_obj*)bbNullObjectTest((BBObject*)bbt_surf))->clas->m_SurfaceFloatArrayCopy_iTTSurface((struct openb3d_openb3dcore_TSurface_obj*)bbt_surf,7,(struct openb3d_openb3dcore_TSurface_obj*)bbt_v_surf);
									struct BBDebugStm __stmt_7 = {0x540807cbd0b3aa62, 511, 0};
									bbOnDebugEnterStm(&__stmt_7);
									((struct openb3d_openb3dcore_TSurface_obj*)bbNullObjectTest((BBObject*)bbt_surf))->_openb3d_openb3dcore_tsurface_no_verts [0]=((struct openb3d_openb3dcore_TSurface_obj*)bbNullObjectTest((BBObject*)bbt_v_surf))->_openb3d_openb3dcore_tsurface_no_verts [0];
									bbOnDebugLeaveScope();
								}
								struct BBDebugStm __stmt_4 = {0x540807cbd0b3aa62, 514, 0};
								bbOnDebugEnterStm(&__stmt_4);
								bbt_tr_sz=12;
								struct BBDebugStm __stmt_5 = {0x540807cbd0b3aa62, 515, 0};
								bbOnDebugEnterStm(&__stmt_5);
								bbt_old_tag=bbt_new_tag;
								struct BBDebugStm __stmt_6 = {0x540807cbd0b3aa62, 516, 0};
								bbOnDebugEnterStm(&__stmt_6);
								bbt_new_tag=openb3d_openb3dcore_TB3D_ReadTag_S_TTStream((struct brl_stream_TStream_obj*)bbt_file);
								struct BBDebugStm __stmt_7 = {0x540807cbd0b3aa62, 518, 0};
								bbOnDebugEnterStm(&__stmt_7);
								while((openb3d_openb3dcore_TB3D_NewTag_i_S(bbt_new_tag)!=1) && (brl_stream_Eof((struct brl_stream_TStream_obj*)bbt_file)==0)){
									struct BBDebugScope __scope = {
										BBDEBUGSCOPE_LOCALBLOCK,
										0,
										{
											{
												BBDEBUGDECL_END
											}
										}
									};
									bbOnDebugEnterScope((BBDebugScope *)&__scope);
									struct BBDebugStm __stmt_0 = {0x540807cbd0b3aa62, 520, 0};
									bbOnDebugEnterStm(&__stmt_0);
									bbt_tr_vid0=brl_stream_ReadInt((struct brl_stream_TStream_obj*)bbt_file);
									struct BBDebugStm __stmt_1 = {0x540807cbd0b3aa62, 521, 0};
									bbOnDebugEnterStm(&__stmt_1);
									bbt_tr_vid1=brl_stream_ReadInt((struct brl_stream_TStream_obj*)bbt_file);
									struct BBDebugStm __stmt_2 = {0x540807cbd0b3aa62, 522, 0};
									bbOnDebugEnterStm(&__stmt_2);
									bbt_tr_vid2=brl_stream_ReadInt((struct brl_stream_TStream_obj*)bbt_file);
									struct BBDebugStm __stmt_3 = {0x540807cbd0b3aa62, 526, 0};
									bbOnDebugEnterStm(&__stmt_3);
									if(bbt_tr_vid0<((struct openb3d_openb3dcore_TSurface_obj*)bbNullObjectTest((BBObject*)bbt_surf))->_openb3d_openb3dcore_tsurface_vmin [0]){
										struct BBDebugScope __scope = {
											BBDEBUGSCOPE_LOCALBLOCK,
											0,
											{
												{
													BBDEBUGDECL_END
												}
											}
										};
										bbOnDebugEnterScope((BBDebugScope *)&__scope);
										struct BBDebugStm __stmt_0 = {0x540807cbd0b3aa62, 526, 0};
										bbOnDebugEnterStm(&__stmt_0);
										((struct openb3d_openb3dcore_TSurface_obj*)bbNullObjectTest((BBObject*)bbt_surf))->_openb3d_openb3dcore_tsurface_vmin [0]=bbt_tr_vid0;
										bbOnDebugLeaveScope();
									}
									struct BBDebugStm __stmt_4 = {0x540807cbd0b3aa62, 527, 0};
									bbOnDebugEnterStm(&__stmt_4);
									if(bbt_tr_vid1<((struct openb3d_openb3dcore_TSurface_obj*)bbNullObjectTest((BBObject*)bbt_surf))->_openb3d_openb3dcore_tsurface_vmin [0]){
										struct BBDebugScope __scope = {
											BBDEBUGSCOPE_LOCALBLOCK,
											0,
											{
												{
													BBDEBUGDECL_END
												}
											}
										};
										bbOnDebugEnterScope((BBDebugScope *)&__scope);
										struct BBDebugStm __stmt_0 = {0x540807cbd0b3aa62, 527, 0};
										bbOnDebugEnterStm(&__stmt_0);
										((struct openb3d_openb3dcore_TSurface_obj*)bbNullObjectTest((BBObject*)bbt_surf))->_openb3d_openb3dcore_tsurface_vmin [0]=bbt_tr_vid1;
										bbOnDebugLeaveScope();
									}
									struct BBDebugStm __stmt_5 = {0x540807cbd0b3aa62, 528, 0};
									bbOnDebugEnterStm(&__stmt_5);
									if(bbt_tr_vid2<((struct openb3d_openb3dcore_TSurface_obj*)bbNullObjectTest((BBObject*)bbt_surf))->_openb3d_openb3dcore_tsurface_vmin [0]){
										struct BBDebugScope __scope = {
											BBDEBUGSCOPE_LOCALBLOCK,
											0,
											{
												{
													BBDEBUGDECL_END
												}
											}
										};
										bbOnDebugEnterScope((BBDebugScope *)&__scope);
										struct BBDebugStm __stmt_0 = {0x540807cbd0b3aa62, 528, 0};
										bbOnDebugEnterStm(&__stmt_0);
										((struct openb3d_openb3dcore_TSurface_obj*)bbNullObjectTest((BBObject*)bbt_surf))->_openb3d_openb3dcore_tsurface_vmin [0]=bbt_tr_vid2;
										bbOnDebugLeaveScope();
									}
									struct BBDebugStm __stmt_6 = {0x540807cbd0b3aa62, 530, 0};
									bbOnDebugEnterStm(&__stmt_6);
									if(bbt_tr_vid0>((struct openb3d_openb3dcore_TSurface_obj*)bbNullObjectTest((BBObject*)bbt_surf))->_openb3d_openb3dcore_tsurface_vmax [0]){
										struct BBDebugScope __scope = {
											BBDEBUGSCOPE_LOCALBLOCK,
											0,
											{
												{
													BBDEBUGDECL_END
												}
											}
										};
										bbOnDebugEnterScope((BBDebugScope *)&__scope);
										struct BBDebugStm __stmt_0 = {0x540807cbd0b3aa62, 530, 0};
										bbOnDebugEnterStm(&__stmt_0);
										((struct openb3d_openb3dcore_TSurface_obj*)bbNullObjectTest((BBObject*)bbt_surf))->_openb3d_openb3dcore_tsurface_vmax [0]=bbt_tr_vid0;
										bbOnDebugLeaveScope();
									}
									struct BBDebugStm __stmt_7 = {0x540807cbd0b3aa62, 531, 0};
									bbOnDebugEnterStm(&__stmt_7);
									if(bbt_tr_vid1>((struct openb3d_openb3dcore_TSurface_obj*)bbNullObjectTest((BBObject*)bbt_surf))->_openb3d_openb3dcore_tsurface_vmax [0]){
										struct BBDebugScope __scope = {
											BBDEBUGSCOPE_LOCALBLOCK,
											0,
											{
												{
													BBDEBUGDECL_END
												}
											}
										};
										bbOnDebugEnterScope((BBDebugScope *)&__scope);
										struct BBDebugStm __stmt_0 = {0x540807cbd0b3aa62, 531, 0};
										bbOnDebugEnterStm(&__stmt_0);
										((struct openb3d_openb3dcore_TSurface_obj*)bbNullObjectTest((BBObject*)bbt_surf))->_openb3d_openb3dcore_tsurface_vmax [0]=bbt_tr_vid1;
										bbOnDebugLeaveScope();
									}
									struct BBDebugStm __stmt_8 = {0x540807cbd0b3aa62, 532, 0};
									bbOnDebugEnterStm(&__stmt_8);
									if(bbt_tr_vid2>((struct openb3d_openb3dcore_TSurface_obj*)bbNullObjectTest((BBObject*)bbt_surf))->_openb3d_openb3dcore_tsurface_vmax [0]){
										struct BBDebugScope __scope = {
											BBDEBUGSCOPE_LOCALBLOCK,
											0,
											{
												{
													BBDEBUGDECL_END
												}
											}
										};
										bbOnDebugEnterScope((BBDebugScope *)&__scope);
										struct BBDebugStm __stmt_0 = {0x540807cbd0b3aa62, 532, 0};
										bbOnDebugEnterStm(&__stmt_0);
										((struct openb3d_openb3dcore_TSurface_obj*)bbNullObjectTest((BBObject*)bbt_surf))->_openb3d_openb3dcore_tsurface_vmax [0]=bbt_tr_vid2;
										bbOnDebugLeaveScope();
									}
									struct BBDebugStm __stmt_9 = {0x540807cbd0b3aa62, 534, 0};
									bbOnDebugEnterStm(&__stmt_9);
									((struct openb3d_openb3dcore_TSurface_obj*)bbNullObjectTest((BBObject*)bbt_surf))->clas->m_AddTriangle_iii((struct openb3d_openb3dcore_TSurface_obj*)bbt_surf,bbt_tr_vid0,bbt_tr_vid1,bbt_tr_vid2);
									struct BBDebugStm __stmt_10 = {0x540807cbd0b3aa62, 536, 0};
									bbOnDebugEnterStm(&__stmt_10);
									bbt_new_tag=openb3d_openb3dcore_TB3D_ReadTag_S_TTStream((struct brl_stream_TStream_obj*)bbt_file);
									bbOnDebugLeaveScope();
								}
								struct BBDebugStm __stmt_8 = {0x540807cbd0b3aa62, 540, 0};
								bbOnDebugEnterStm(&__stmt_8);
								if(bbt_m_brush_id>-1){
									struct BBDebugScope __scope = {
										BBDEBUGSCOPE_LOCALBLOCK,
										0,
										{
											{
												BBDEBUGDECL_END
											}
										}
									};
									bbOnDebugEnterScope((BBDebugScope *)&__scope);
									struct BBDebugStm __stmt_0 = {0x540807cbd0b3aa62, 540, 0};
									bbOnDebugEnterStm(&__stmt_0);
									((struct openb3d_openb3dcore_TMesh_obj*)bbNullObjectTest((BBObject*)bbt_mesh))->clas->m_PaintEntity_TTBrush((struct openb3d_openb3dcore_TEntity_obj*)bbt_mesh,(struct openb3d_openb3dcore_TBrush_obj*)((struct openb3d_openb3dcore_TBrush_obj**)BBARRAYDATAINDEX((bbt_brush),(bbt_brush)->dims,((BBUINT)bbt_m_brush_id)))[((BBUINT)bbt_m_brush_id)]);
									bbOnDebugLeaveScope();
								}
								struct BBDebugStm __stmt_9 = {0x540807cbd0b3aa62, 541, 0};
								bbOnDebugEnterStm(&__stmt_9);
								if(bbt_tr_brush_id>-1){
									struct BBDebugScope __scope = {
										BBDEBUGSCOPE_LOCALBLOCK,
										0,
										{
											{
												BBDEBUGDECL_END
											}
										}
									};
									bbOnDebugEnterScope((BBDebugScope *)&__scope);
									struct BBDebugStm __stmt_0 = {0x540807cbd0b3aa62, 541, 0};
									bbOnDebugEnterStm(&__stmt_0);
									((struct openb3d_openb3dcore_TSurface_obj*)bbNullObjectTest((BBObject*)bbt_surf))->clas->m_PaintSurface_TTBrush((struct openb3d_openb3dcore_TSurface_obj*)bbt_surf,(struct openb3d_openb3dcore_TBrush_obj*)((struct openb3d_openb3dcore_TBrush_obj**)BBARRAYDATAINDEX((bbt_brush),(bbt_brush)->dims,((BBUINT)bbt_tr_brush_id)))[((BBUINT)bbt_tr_brush_id)]);
									bbOnDebugLeaveScope();
								}
								struct BBDebugStm __stmt_10 = {0x540807cbd0b3aa62, 544, 0};
								bbOnDebugEnterStm(&__stmt_10);
								if((((unsigned int)(bbt_v_flags)&(unsigned int)(1))==0) && bbStringEquals(bbt_new_tag, ((BBString*)&_s471))!=1){
									struct BBDebugScope __scope = {
										BBDEBUGSCOPE_LOCALBLOCK,
										0,
										{
											{
												BBDEBUGDECL_END
											}
										}
									};
									bbOnDebugEnterScope((BBDebugScope *)&__scope);
									struct BBDebugStm __stmt_0 = {0x540807cbd0b3aa62, 544, 0};
									bbOnDebugEnterStm(&__stmt_0);
									((struct openb3d_openb3dcore_TMesh_obj*)bbNullObjectTest((BBObject*)bbt_mesh))->clas->m_UpdateNormals((struct openb3d_openb3dcore_TMesh_obj*)bbt_mesh);
									bbOnDebugLeaveScope();
								}
								struct BBDebugStm __stmt_11 = {0x540807cbd0b3aa62, 547, 0};
								bbOnDebugEnterStm(&__stmt_11);
								if(bbStringEquals(bbt_new_tag, ((BBString*)&_s471))!=1){
									struct BBDebugScope __scope = {
										BBDEBUGSCOPE_LOCALBLOCK,
										0,
										{
											{
												BBDEBUGDECL_END
											}
										}
									};
									bbOnDebugEnterScope((BBDebugScope *)&__scope);
									struct BBDebugStm __stmt_0 = {0x540807cbd0b3aa62, 547, 0};
									bbOnDebugEnterStm(&__stmt_0);
									openb3d_openb3dcore_TB3D_TrimVerts_i_TTSurface((struct openb3d_openb3dcore_TSurface_obj*)bbt_surf);
									bbOnDebugLeaveScope();
								}
								bbOnDebugLeaveScope();
							}else{
								struct BBDebugScope __scope = {
									BBDEBUGSCOPE_LOCALBLOCK,
									0,
									{
										{
											BBDEBUGDECL_END
										}
									}
								};
								bbOnDebugEnterScope((BBDebugScope *)&__scope);
								struct BBDebugStm __stmt_0 = {0x540807cbd0b3aa62, 549, 0};
								bbOnDebugEnterStm(&__stmt_0);
								if(bbStringEquals(bbt_3, ((BBString*)&_s460))==1){
									struct BBDebugScope __scope = {
										BBDEBUGSCOPE_LOCALBLOCK,
										0,
										{
											{
												BBDEBUGDECL_END
											}
										}
									};
									bbOnDebugEnterScope((BBDebugScope *)&__scope);
									struct BBDebugStm __stmt_0 = {0x540807cbd0b3aa62, 551, 0};
									bbOnDebugEnterStm(&__stmt_0);
									bbt_a_flags=brl_stream_ReadInt((struct brl_stream_TStream_obj*)bbt_file);
									struct BBDebugStm __stmt_1 = {0x540807cbd0b3aa62, 552, 0};
									bbOnDebugEnterStm(&__stmt_1);
									bbt_a_frames=brl_stream_ReadInt((struct brl_stream_TStream_obj*)bbt_file);
									struct BBDebugStm __stmt_2 = {0x540807cbd0b3aa62, 553, 0};
									bbOnDebugEnterStm(&__stmt_2);
									bbt_a_fps=((BBINT)brl_stream_ReadFloat((struct brl_stream_TStream_obj*)bbt_file));
									struct BBDebugStm __stmt_3 = {0x540807cbd0b3aa62, 555, 0};
									bbOnDebugEnterStm(&__stmt_3);
									if(openb3d_openb3dcore_TGlobal3D_Log_B3D!=0){
										struct BBDebugScope __scope = {
											BBDEBUGSCOPE_LOCALBLOCK,
											0,
											{
												{
													BBDEBUGDECL_END
												}
											}
										};
										bbOnDebugEnterScope((BBDebugScope *)&__scope);
										struct BBDebugStm __stmt_0 = {0x540807cbd0b3aa62, 555, 0};
										bbOnDebugEnterStm(&__stmt_0);
										brl_blitz_DebugLog(bbStringConcat(bbStringConcat(bbStringConcat(bbStringConcat(bbStringConcat(bbStringConcat(bbStringConcat(bbStringConcat(((BBString*)&_s445),bbt_tab),bbt_new_tag),((BBString*)&_s447)),bbStringFromInt(bbt_a_flags)),((BBString*)&_s473)),bbStringFromInt(bbt_a_frames)),((BBString*)&_s474)),bbStringFromInt(bbt_a_fps)));
										bbOnDebugLeaveScope();
									}
									struct BBDebugStm __stmt_4 = {0x540807cbd0b3aa62, 557, 0};
									bbOnDebugEnterStm(&__stmt_4);
									if(((BBOBJECT)bbt_mesh)!=&bbNullObject){
										struct BBDebugScope __scope = {
											BBDEBUGSCOPE_LOCALBLOCK,
											0,
											{
												{
													BBDEBUGDECL_END
												}
											}
										};
										bbOnDebugEnterScope((BBDebugScope *)&__scope);
										struct BBDebugStm __stmt_0 = {0x540807cbd0b3aa62, 558, 0};
										bbOnDebugEnterStm(&__stmt_0);
										((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)bbt_mesh))->_openb3d_openb3dcore_tentity_anim [0]=1;
										struct BBDebugStm __stmt_1 = {0x540807cbd0b3aa62, 561, 0};
										bbOnDebugEnterStm(&__stmt_1);
										((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)bbt_mesh))->_openb3d_openb3dcore_tentity_anim_seqs_first [0]=0;
										struct BBDebugStm __stmt_2 = {0x540807cbd0b3aa62, 562, 0};
										bbOnDebugEnterStm(&__stmt_2);
										((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)bbt_mesh))->_openb3d_openb3dcore_tentity_anim_seqs_last [0]=bbt_a_frames;
										struct BBDebugStm __stmt_3 = {0x540807cbd0b3aa62, 565, 0};
										bbOnDebugEnterStm(&__stmt_3);
										struct brl_linkedlist_TList_obj* bbt_17;
										struct brl_linkedlist_TListEnum_obj* bbt_16=(struct brl_linkedlist_TListEnum_obj*)(((struct brl_linkedlist_TList_obj*)((struct brl_linkedlist_TList_obj*)bbNullObjectTest((BBObject*)(bbt_17 = ((struct openb3d_openb3dcore_TMesh_obj*)bbNullObjectTest((BBObject*)bbt_mesh))->_openb3d_openb3dcore_tmesh_surf_list ))))->clas)->m_ObjectEnumerator((struct brl_linkedlist_TList_obj*)bbt_17);
										while(((struct brl_linkedlist_TListEnum_obj*)bbNullObjectTest((BBObject*)bbt_16))->clas->m_HasNext((struct brl_linkedlist_TListEnum_obj*)bbt_16)!=0){
											struct openb3d_openb3dcore_TSurface_obj* bbt_surf2=(struct openb3d_openb3dcore_TSurface_obj*)((struct openb3d_openb3dcore_TSurface_obj*)&bbNullObject);
											struct openb3d_openb3dcore_TSurface_obj* bbt_anim_surf=(struct openb3d_openb3dcore_TSurface_obj*)((struct openb3d_openb3dcore_TSurface_obj*)&bbNullObject);
											struct BBDebugScope_2 __scope = {
												BBDEBUGSCOPE_LOCALBLOCK,
												0,
												{
													{
														BBDEBUGDECL_LOCAL,
														"surf",
														":TSurface",
														.var_address=&bbt_surf2
													},
													{
														BBDEBUGDECL_LOCAL,
														"anim_surf",
														":TSurface",
														.var_address=&bbt_anim_surf
													},
													{
														BBDEBUGDECL_END
													}
												}
											};
											bbOnDebugEnterScope((BBDebugScope *)&__scope);
											bbt_surf2=(struct openb3d_openb3dcore_TSurface_obj*)((struct openb3d_openb3dcore_TSurface_obj*)bbObjectDowncast((BBOBJECT)((struct brl_linkedlist_TListEnum_obj*)bbNullObjectTest((BBObject*)bbt_16))->clas->m_NextObject((struct brl_linkedlist_TListEnum_obj*)bbt_16),(BBClass*)&openb3d_openb3dcore_TSurface));
											if(((BBOBJECT)bbt_surf2)==&bbNullObject){
												bbOnDebugLeaveScope();
												continue;
											}
											struct BBDebugStm __stmt_0 = {0x540807cbd0b3aa62, 566, 0};
											bbOnDebugEnterStm(&__stmt_0);
											bbt_anim_surf=(struct openb3d_openb3dcore_TSurface_obj*)openb3d_openb3dcore_TSurface_Create_TTSurface();
											struct BBDebugStm __stmt_1 = {0x540807cbd0b3aa62, 567, 0};
											bbOnDebugEnterStm(&__stmt_1);
											((struct openb3d_openb3dcore_TMesh_obj*)bbNullObjectTest((BBObject*)bbt_mesh))->clas->m_MeshListAdd_TTListTObject((struct openb3d_openb3dcore_TMesh_obj*)bbt_mesh,(struct brl_linkedlist_TList_obj*)((struct openb3d_openb3dcore_TMesh_obj*)bbNullObjectTest((BBObject*)bbt_mesh))->_openb3d_openb3dcore_tmesh_anim_surf_list ,(BBOBJECT)bbt_anim_surf);
											struct BBDebugStm __stmt_2 = {0x540807cbd0b3aa62, 569, 0};
											bbOnDebugEnterStm(&__stmt_2);
											((struct openb3d_openb3dcore_TSurface_obj*)bbNullObjectTest((BBObject*)bbt_anim_surf))->_openb3d_openb3dcore_tsurface_no_verts [0]=((struct openb3d_openb3dcore_TSurface_obj*)bbNullObjectTest((BBObject*)bbt_surf2))->_openb3d_openb3dcore_tsurface_no_verts [0];
											struct BBDebugStm __stmt_3 = {0x540807cbd0b3aa62, 571, 0};
											bbOnDebugEnterStm(&__stmt_3);
											((struct openb3d_openb3dcore_TSurface_obj*)bbNullObjectTest((BBObject*)bbt_anim_surf))->_openb3d_openb3dcore_tsurface_vert_coords =((struct openb3d_openb3dcore_TSurface_obj*)bbNullObjectTest((BBObject*)bbt_anim_surf))->clas->m_SurfaceFloatArrayCopy_iTTSurface((struct openb3d_openb3dcore_TSurface_obj*)bbt_anim_surf,3,(struct openb3d_openb3dcore_TSurface_obj*)bbt_surf2);
											struct BBDebugStm __stmt_4 = {0x540807cbd0b3aa62, 573, 0};
											bbOnDebugEnterStm(&__stmt_4);
											((struct openb3d_openb3dcore_TSurface_obj*)bbNullObjectTest((BBObject*)bbt_anim_surf))->_openb3d_openb3dcore_tsurface_vert_bone1_no =((struct openb3d_openb3dcore_TSurface_obj*)bbNullObjectTest((BBObject*)bbt_anim_surf))->clas->m_SurfaceIntArrayResize_ii((struct openb3d_openb3dcore_TSurface_obj*)bbt_anim_surf,9,(((struct openb3d_openb3dcore_TSurface_obj*)bbNullObjectTest((BBObject*)bbt_surf2))->_openb3d_openb3dcore_tsurface_no_verts [0]+1));
											struct BBDebugStm __stmt_5 = {0x540807cbd0b3aa62, 574, 0};
											bbOnDebugEnterStm(&__stmt_5);
											((struct openb3d_openb3dcore_TSurface_obj*)bbNullObjectTest((BBObject*)bbt_anim_surf))->_openb3d_openb3dcore_tsurface_vert_bone2_no =((struct openb3d_openb3dcore_TSurface_obj*)bbNullObjectTest((BBObject*)bbt_anim_surf))->clas->m_SurfaceIntArrayResize_ii((struct openb3d_openb3dcore_TSurface_obj*)bbt_anim_surf,10,(((struct openb3d_openb3dcore_TSurface_obj*)bbNullObjectTest((BBObject*)bbt_surf2))->_openb3d_openb3dcore_tsurface_no_verts [0]+1));
											struct BBDebugStm __stmt_6 = {0x540807cbd0b3aa62, 575, 0};
											bbOnDebugEnterStm(&__stmt_6);
											((struct openb3d_openb3dcore_TSurface_obj*)bbNullObjectTest((BBObject*)bbt_anim_surf))->_openb3d_openb3dcore_tsurface_vert_bone3_no =((struct openb3d_openb3dcore_TSurface_obj*)bbNullObjectTest((BBObject*)bbt_anim_surf))->clas->m_SurfaceIntArrayResize_ii((struct openb3d_openb3dcore_TSurface_obj*)bbt_anim_surf,11,(((struct openb3d_openb3dcore_TSurface_obj*)bbNullObjectTest((BBObject*)bbt_surf2))->_openb3d_openb3dcore_tsurface_no_verts [0]+1));
											struct BBDebugStm __stmt_7 = {0x540807cbd0b3aa62, 576, 0};
											bbOnDebugEnterStm(&__stmt_7);
											((struct openb3d_openb3dcore_TSurface_obj*)bbNullObjectTest((BBObject*)bbt_anim_surf))->_openb3d_openb3dcore_tsurface_vert_bone4_no =((struct openb3d_openb3dcore_TSurface_obj*)bbNullObjectTest((BBObject*)bbt_anim_surf))->clas->m_SurfaceIntArrayResize_ii((struct openb3d_openb3dcore_TSurface_obj*)bbt_anim_surf,12,(((struct openb3d_openb3dcore_TSurface_obj*)bbNullObjectTest((BBObject*)bbt_surf2))->_openb3d_openb3dcore_tsurface_no_verts [0]+1));
											struct BBDebugStm __stmt_8 = {0x540807cbd0b3aa62, 578, 0};
											bbOnDebugEnterStm(&__stmt_8);
											((struct openb3d_openb3dcore_TSurface_obj*)bbNullObjectTest((BBObject*)bbt_anim_surf))->_openb3d_openb3dcore_tsurface_vert_weight1 =((struct openb3d_openb3dcore_TSurface_obj*)bbNullObjectTest((BBObject*)bbt_anim_surf))->clas->m_SurfaceFloatArrayResize_ii((struct openb3d_openb3dcore_TSurface_obj*)bbt_anim_surf,13,(((struct openb3d_openb3dcore_TSurface_obj*)bbNullObjectTest((BBObject*)bbt_surf2))->_openb3d_openb3dcore_tsurface_no_verts [0]+1));
											struct BBDebugStm __stmt_9 = {0x540807cbd0b3aa62, 579, 0};
											bbOnDebugEnterStm(&__stmt_9);
											((struct openb3d_openb3dcore_TSurface_obj*)bbNullObjectTest((BBObject*)bbt_anim_surf))->_openb3d_openb3dcore_tsurface_vert_weight2 =((struct openb3d_openb3dcore_TSurface_obj*)bbNullObjectTest((BBObject*)bbt_anim_surf))->clas->m_SurfaceFloatArrayResize_ii((struct openb3d_openb3dcore_TSurface_obj*)bbt_anim_surf,14,(((struct openb3d_openb3dcore_TSurface_obj*)bbNullObjectTest((BBObject*)bbt_surf2))->_openb3d_openb3dcore_tsurface_no_verts [0]+1));
											struct BBDebugStm __stmt_10 = {0x540807cbd0b3aa62, 580, 0};
											bbOnDebugEnterStm(&__stmt_10);
											((struct openb3d_openb3dcore_TSurface_obj*)bbNullObjectTest((BBObject*)bbt_anim_surf))->_openb3d_openb3dcore_tsurface_vert_weight3 =((struct openb3d_openb3dcore_TSurface_obj*)bbNullObjectTest((BBObject*)bbt_anim_surf))->clas->m_SurfaceFloatArrayResize_ii((struct openb3d_openb3dcore_TSurface_obj*)bbt_anim_surf,15,(((struct openb3d_openb3dcore_TSurface_obj*)bbNullObjectTest((BBObject*)bbt_surf2))->_openb3d_openb3dcore_tsurface_no_verts [0]+1));
											struct BBDebugStm __stmt_11 = {0x540807cbd0b3aa62, 581, 0};
											bbOnDebugEnterStm(&__stmt_11);
											((struct openb3d_openb3dcore_TSurface_obj*)bbNullObjectTest((BBObject*)bbt_anim_surf))->_openb3d_openb3dcore_tsurface_vert_weight4 =((struct openb3d_openb3dcore_TSurface_obj*)bbNullObjectTest((BBObject*)bbt_anim_surf))->clas->m_SurfaceFloatArrayResize_ii((struct openb3d_openb3dcore_TSurface_obj*)bbt_anim_surf,16,(((struct openb3d_openb3dcore_TSurface_obj*)bbNullObjectTest((BBObject*)bbt_surf2))->_openb3d_openb3dcore_tsurface_no_verts [0]+1));
											struct BBDebugStm __stmt_12 = {0x540807cbd0b3aa62, 584, 0};
											bbOnDebugEnterStm(&__stmt_12);
											((struct openb3d_openb3dcore_TSurface_obj*)bbNullObjectTest((BBObject*)bbt_anim_surf))->_openb3d_openb3dcore_tsurface_vmin [0]=((struct openb3d_openb3dcore_TSurface_obj*)bbNullObjectTest((BBObject*)bbt_surf2))->_openb3d_openb3dcore_tsurface_vmin [0];
											struct BBDebugStm __stmt_13 = {0x540807cbd0b3aa62, 585, 0};
											bbOnDebugEnterStm(&__stmt_13);
											((struct openb3d_openb3dcore_TSurface_obj*)bbNullObjectTest((BBObject*)bbt_anim_surf))->_openb3d_openb3dcore_tsurface_vmax [0]=((struct openb3d_openb3dcore_TSurface_obj*)bbNullObjectTest((BBObject*)bbt_surf2))->_openb3d_openb3dcore_tsurface_vmax [0];
											bbOnDebugLeaveScope();
										}
										bbOnDebugLeaveScope();
									}
									bbOnDebugLeaveScope();
								}else{
									struct BBDebugScope __scope = {
										BBDEBUGSCOPE_LOCALBLOCK,
										0,
										{
											{
												BBDEBUGDECL_END
											}
										}
									};
									bbOnDebugEnterScope((BBDebugScope *)&__scope);
									struct BBDebugStm __stmt_0 = {0x540807cbd0b3aa62, 590, 0};
									bbOnDebugEnterStm(&__stmt_0);
									if(bbStringEquals(bbt_3, ((BBString*)&_s475))==1){
										BBINT bbt_ix2=0;
										struct BBDebugScope_1 __scope = {
											BBDEBUGSCOPE_LOCALBLOCK,
											0,
											{
												{
													BBDEBUGDECL_LOCAL,
													"ix",
													"i",
													.var_address=&bbt_ix2
												},
												{
													BBDEBUGDECL_END
												}
											}
										};
										bbOnDebugEnterScope((BBDebugScope *)&__scope);
										struct BBDebugStm __stmt_0 = {0x540807cbd0b3aa62, 592, 0};
										bbOnDebugEnterStm(&__stmt_0);
										bbt_ix2=0;
										struct BBDebugStm __stmt_1 = {0x540807cbd0b3aa62, 593, 0};
										bbOnDebugEnterStm(&__stmt_1);
										bbt_old_tag=bbt_new_tag;
										struct BBDebugStm __stmt_2 = {0x540807cbd0b3aa62, 594, 0};
										bbOnDebugEnterStm(&__stmt_2);
										bbt_new_tag=openb3d_openb3dcore_TB3D_ReadTag_S_TTStream((struct brl_stream_TStream_obj*)bbt_file);
										struct BBDebugStm __stmt_3 = {0x540807cbd0b3aa62, 596, 0};
										bbOnDebugEnterStm(&__stmt_3);
										bbt_bo_bone=(struct openb3d_openb3dcore_TBone_obj*)openb3d_openb3dcore_TBone_Create_TTBone();
										struct BBDebugStm __stmt_4 = {0x540807cbd0b3aa62, 597, 0};
										bbOnDebugEnterStm(&__stmt_4);
										bbt_bo_no_bones=(bbt_bo_no_bones+1);
										struct BBDebugStm __stmt_5 = {0x540807cbd0b3aa62, 599, 0};
										bbOnDebugEnterStm(&__stmt_5);
										while((openb3d_openb3dcore_TB3D_NewTag_i_S(bbt_new_tag)!=1) && (brl_stream_Eof((struct brl_stream_TStream_obj*)bbt_file)==0)){
											struct openb3d_openb3dcore_TSurface_obj* bbt_anim_surf2=(struct openb3d_openb3dcore_TSurface_obj*)((struct openb3d_openb3dcore_TSurface_obj*)&bbNullObject);
											struct BBDebugScope_1 __scope = {
												BBDEBUGSCOPE_LOCALBLOCK,
												0,
												{
													{
														BBDEBUGDECL_LOCAL,
														"anim_surf",
														":TSurface",
														.var_address=&bbt_anim_surf2
													},
													{
														BBDEBUGDECL_END
													}
												}
											};
											bbOnDebugEnterScope((BBDebugScope *)&__scope);
											struct BBDebugStm __stmt_0 = {0x540807cbd0b3aa62, 601, 0};
											bbOnDebugEnterStm(&__stmt_0);
											bbt_bo_vert_id=brl_stream_ReadInt((struct brl_stream_TStream_obj*)bbt_file);
											struct BBDebugStm __stmt_1 = {0x540807cbd0b3aa62, 602, 0};
											bbOnDebugEnterStm(&__stmt_1);
											bbt_bo_vert_w=brl_stream_ReadFloat((struct brl_stream_TStream_obj*)bbt_file);
											struct BBDebugStm __stmt_2 = {0x540807cbd0b3aa62, 607, 0};
											bbOnDebugEnterStm(&__stmt_2);
											bbt_anim_surf2=(struct openb3d_openb3dcore_TSurface_obj*)((struct openb3d_openb3dcore_TSurface_obj*)&bbNullObject);
											struct BBDebugStm __stmt_3 = {0x540807cbd0b3aa62, 608, 0};
											bbOnDebugEnterStm(&__stmt_3);
											struct brl_linkedlist_TList_obj* bbt_19;
											struct brl_linkedlist_TListEnum_obj* bbt_18=(struct brl_linkedlist_TListEnum_obj*)(((struct brl_linkedlist_TList_obj*)((struct brl_linkedlist_TList_obj*)bbNullObjectTest((BBObject*)(bbt_19 = ((struct openb3d_openb3dcore_TMesh_obj*)bbNullObjectTest((BBObject*)bbt_mesh))->_openb3d_openb3dcore_tmesh_anim_surf_list ))))->clas)->m_ObjectEnumerator((struct brl_linkedlist_TList_obj*)bbt_19);
											while(((struct brl_linkedlist_TListEnum_obj*)bbNullObjectTest((BBObject*)bbt_18))->clas->m_HasNext((struct brl_linkedlist_TListEnum_obj*)bbt_18)!=0){
												struct BBDebugScope __scope = {
													BBDEBUGSCOPE_LOCALBLOCK,
													0,
													{
														{
															BBDEBUGDECL_END
														}
													}
												};
												bbOnDebugEnterScope((BBDebugScope *)&__scope);
												struct BBDebugStm __stmt_0 = {0x540807cbd0b3aa62, 608, 0};
												bbOnDebugEnterStm(&__stmt_0);
												bbt_anim_surf2=(struct openb3d_openb3dcore_TSurface_obj*)((struct openb3d_openb3dcore_TSurface_obj*)bbObjectDowncast((BBOBJECT)((struct brl_linkedlist_TListEnum_obj*)bbNullObjectTest((BBObject*)bbt_18))->clas->m_NextObject((struct brl_linkedlist_TListEnum_obj*)bbt_18),(BBClass*)&openb3d_openb3dcore_TSurface));
												struct BBDebugStm __stmt_1 = {0x540807cbd0b3aa62, 608, 0};
												bbOnDebugEnterStm(&__stmt_1);
												if(((BBOBJECT)bbt_anim_surf2)==&bbNullObject){
													struct BBDebugScope __scope = {
														BBDEBUGSCOPE_LOCALBLOCK,
														0,
														{
															{
																BBDEBUGDECL_END
															}
														}
													};
													bbOnDebugEnterScope((BBDebugScope *)&__scope);
													struct BBDebugStm __stmt_0 = {0x540807cbd0b3aa62, 608, 0};
													bbOnDebugEnterStm(&__stmt_0);
													bbOnDebugLeaveScope();
													bbOnDebugLeaveScope();
													continue;
												}
												struct BBDebugStm __stmt_2 = {0x540807cbd0b3aa62, 609, 0};
												bbOnDebugEnterStm(&__stmt_2);
												if((bbt_bo_vert_id>=((struct openb3d_openb3dcore_TSurface_obj*)bbNullObjectTest((BBObject*)bbt_anim_surf2))->_openb3d_openb3dcore_tsurface_vmin [0]) && (bbt_bo_vert_id<=((struct openb3d_openb3dcore_TSurface_obj*)bbNullObjectTest((BBObject*)bbt_anim_surf2))->_openb3d_openb3dcore_tsurface_vmax [0])){
													struct BBDebugScope __scope = {
														BBDEBUGSCOPE_LOCALBLOCK,
														0,
														{
															{
																BBDEBUGDECL_END
															}
														}
													};
													bbOnDebugEnterScope((BBDebugScope *)&__scope);
													struct BBDebugStm __stmt_0 = {0x540807cbd0b3aa62, 610, 0};
													bbOnDebugEnterStm(&__stmt_0);
													if(((BBOBJECT)bbt_anim_surf2)!=&bbNullObject){
														BBINT bbt_vid=0;
														struct BBDebugScope_1 __scope = {
															BBDEBUGSCOPE_LOCALBLOCK,
															0,
															{
																{
																	BBDEBUGDECL_LOCAL,
																	"vid",
																	"i",
																	.var_address=&bbt_vid
																},
																{
																	BBDEBUGDECL_END
																}
															}
														};
														bbOnDebugEnterScope((BBDebugScope *)&__scope);
														struct BBDebugStm __stmt_0 = {0x540807cbd0b3aa62, 611, 0};
														bbOnDebugEnterStm(&__stmt_0);
														bbt_vid=(bbt_bo_vert_id-((struct openb3d_openb3dcore_TSurface_obj*)bbNullObjectTest((BBObject*)bbt_anim_surf2))->_openb3d_openb3dcore_tsurface_vmin [0]);
														struct BBDebugStm __stmt_1 = {0x540807cbd0b3aa62, 613, 0};
														bbOnDebugEnterStm(&__stmt_1);
														if(bbt_bo_vert_w>((struct openb3d_openb3dcore_TSurface_obj*)bbNullObjectTest((BBObject*)bbt_anim_surf2))->_openb3d_openb3dcore_tsurface_vert_weight1 [bbt_vid]){
															struct BBDebugScope __scope = {
																BBDEBUGSCOPE_LOCALBLOCK,
																0,
																{
																	{
																		BBDEBUGDECL_END
																	}
																}
															};
															bbOnDebugEnterScope((BBDebugScope *)&__scope);
															struct BBDebugStm __stmt_0 = {0x540807cbd0b3aa62, 615, 0};
															bbOnDebugEnterStm(&__stmt_0);
															((struct openb3d_openb3dcore_TSurface_obj*)bbNullObjectTest((BBObject*)bbt_anim_surf2))->_openb3d_openb3dcore_tsurface_vert_bone4_no [bbt_vid]=((struct openb3d_openb3dcore_TSurface_obj*)bbNullObjectTest((BBObject*)bbt_anim_surf2))->_openb3d_openb3dcore_tsurface_vert_bone3_no [bbt_vid];
															struct BBDebugStm __stmt_1 = {0x540807cbd0b3aa62, 616, 0};
															bbOnDebugEnterStm(&__stmt_1);
															((struct openb3d_openb3dcore_TSurface_obj*)bbNullObjectTest((BBObject*)bbt_anim_surf2))->_openb3d_openb3dcore_tsurface_vert_weight4 [bbt_vid]=((struct openb3d_openb3dcore_TSurface_obj*)bbNullObjectTest((BBObject*)bbt_anim_surf2))->_openb3d_openb3dcore_tsurface_vert_weight3 [bbt_vid];
															struct BBDebugStm __stmt_2 = {0x540807cbd0b3aa62, 618, 0};
															bbOnDebugEnterStm(&__stmt_2);
															((struct openb3d_openb3dcore_TSurface_obj*)bbNullObjectTest((BBObject*)bbt_anim_surf2))->_openb3d_openb3dcore_tsurface_vert_bone3_no [bbt_vid]=((struct openb3d_openb3dcore_TSurface_obj*)bbNullObjectTest((BBObject*)bbt_anim_surf2))->_openb3d_openb3dcore_tsurface_vert_bone2_no [bbt_vid];
															struct BBDebugStm __stmt_3 = {0x540807cbd0b3aa62, 619, 0};
															bbOnDebugEnterStm(&__stmt_3);
															((struct openb3d_openb3dcore_TSurface_obj*)bbNullObjectTest((BBObject*)bbt_anim_surf2))->_openb3d_openb3dcore_tsurface_vert_weight3 [bbt_vid]=((struct openb3d_openb3dcore_TSurface_obj*)bbNullObjectTest((BBObject*)bbt_anim_surf2))->_openb3d_openb3dcore_tsurface_vert_weight2 [bbt_vid];
															struct BBDebugStm __stmt_4 = {0x540807cbd0b3aa62, 621, 0};
															bbOnDebugEnterStm(&__stmt_4);
															((struct openb3d_openb3dcore_TSurface_obj*)bbNullObjectTest((BBObject*)bbt_anim_surf2))->_openb3d_openb3dcore_tsurface_vert_bone2_no [bbt_vid]=((struct openb3d_openb3dcore_TSurface_obj*)bbNullObjectTest((BBObject*)bbt_anim_surf2))->_openb3d_openb3dcore_tsurface_vert_bone1_no [bbt_vid];
															struct BBDebugStm __stmt_5 = {0x540807cbd0b3aa62, 622, 0};
															bbOnDebugEnterStm(&__stmt_5);
															((struct openb3d_openb3dcore_TSurface_obj*)bbNullObjectTest((BBObject*)bbt_anim_surf2))->_openb3d_openb3dcore_tsurface_vert_weight2 [bbt_vid]=((struct openb3d_openb3dcore_TSurface_obj*)bbNullObjectTest((BBObject*)bbt_anim_surf2))->_openb3d_openb3dcore_tsurface_vert_weight1 [bbt_vid];
															struct BBDebugStm __stmt_6 = {0x540807cbd0b3aa62, 624, 0};
															bbOnDebugEnterStm(&__stmt_6);
															((struct openb3d_openb3dcore_TSurface_obj*)bbNullObjectTest((BBObject*)bbt_anim_surf2))->_openb3d_openb3dcore_tsurface_vert_bone1_no [bbt_vid]=bbt_bo_no_bones;
															struct BBDebugStm __stmt_7 = {0x540807cbd0b3aa62, 625, 0};
															bbOnDebugEnterStm(&__stmt_7);
															((struct openb3d_openb3dcore_TSurface_obj*)bbNullObjectTest((BBObject*)bbt_anim_surf2))->_openb3d_openb3dcore_tsurface_vert_weight1 [bbt_vid]=bbt_bo_vert_w;
															bbOnDebugLeaveScope();
														}else{
															struct BBDebugScope __scope = {
																BBDEBUGSCOPE_LOCALBLOCK,
																0,
																{
																	{
																		BBDEBUGDECL_END
																	}
																}
															};
															bbOnDebugEnterScope((BBDebugScope *)&__scope);
															struct BBDebugStm __stmt_0 = {0x540807cbd0b3aa62, 627, 0};
															bbOnDebugEnterStm(&__stmt_0);
															if(bbt_bo_vert_w>((struct openb3d_openb3dcore_TSurface_obj*)bbNullObjectTest((BBObject*)bbt_anim_surf2))->_openb3d_openb3dcore_tsurface_vert_weight2 [bbt_vid]){
																struct BBDebugScope __scope = {
																	BBDEBUGSCOPE_LOCALBLOCK,
																	0,
																	{
																		{
																			BBDEBUGDECL_END
																		}
																	}
																};
																bbOnDebugEnterScope((BBDebugScope *)&__scope);
																struct BBDebugStm __stmt_0 = {0x540807cbd0b3aa62, 629, 0};
																bbOnDebugEnterStm(&__stmt_0);
																((struct openb3d_openb3dcore_TSurface_obj*)bbNullObjectTest((BBObject*)bbt_anim_surf2))->_openb3d_openb3dcore_tsurface_vert_bone4_no [bbt_vid]=((struct openb3d_openb3dcore_TSurface_obj*)bbNullObjectTest((BBObject*)bbt_anim_surf2))->_openb3d_openb3dcore_tsurface_vert_bone3_no [bbt_vid];
																struct BBDebugStm __stmt_1 = {0x540807cbd0b3aa62, 630, 0};
																bbOnDebugEnterStm(&__stmt_1);
																((struct openb3d_openb3dcore_TSurface_obj*)bbNullObjectTest((BBObject*)bbt_anim_surf2))->_openb3d_openb3dcore_tsurface_vert_weight4 [bbt_vid]=((struct openb3d_openb3dcore_TSurface_obj*)bbNullObjectTest((BBObject*)bbt_anim_surf2))->_openb3d_openb3dcore_tsurface_vert_weight3 [bbt_vid];
																struct BBDebugStm __stmt_2 = {0x540807cbd0b3aa62, 632, 0};
																bbOnDebugEnterStm(&__stmt_2);
																((struct openb3d_openb3dcore_TSurface_obj*)bbNullObjectTest((BBObject*)bbt_anim_surf2))->_openb3d_openb3dcore_tsurface_vert_bone3_no [bbt_vid]=((struct openb3d_openb3dcore_TSurface_obj*)bbNullObjectTest((BBObject*)bbt_anim_surf2))->_openb3d_openb3dcore_tsurface_vert_bone2_no [bbt_vid];
																struct BBDebugStm __stmt_3 = {0x540807cbd0b3aa62, 633, 0};
																bbOnDebugEnterStm(&__stmt_3);
																((struct openb3d_openb3dcore_TSurface_obj*)bbNullObjectTest((BBObject*)bbt_anim_surf2))->_openb3d_openb3dcore_tsurface_vert_weight3 [bbt_vid]=((struct openb3d_openb3dcore_TSurface_obj*)bbNullObjectTest((BBObject*)bbt_anim_surf2))->_openb3d_openb3dcore_tsurface_vert_weight2 [bbt_vid];
																struct BBDebugStm __stmt_4 = {0x540807cbd0b3aa62, 635, 0};
																bbOnDebugEnterStm(&__stmt_4);
																((struct openb3d_openb3dcore_TSurface_obj*)bbNullObjectTest((BBObject*)bbt_anim_surf2))->_openb3d_openb3dcore_tsurface_vert_bone2_no [bbt_vid]=bbt_bo_no_bones;
																struct BBDebugStm __stmt_5 = {0x540807cbd0b3aa62, 636, 0};
																bbOnDebugEnterStm(&__stmt_5);
																((struct openb3d_openb3dcore_TSurface_obj*)bbNullObjectTest((BBObject*)bbt_anim_surf2))->_openb3d_openb3dcore_tsurface_vert_weight2 [bbt_vid]=bbt_bo_vert_w;
																bbOnDebugLeaveScope();
															}else{
																struct BBDebugScope __scope = {
																	BBDEBUGSCOPE_LOCALBLOCK,
																	0,
																	{
																		{
																			BBDEBUGDECL_END
																		}
																	}
																};
																bbOnDebugEnterScope((BBDebugScope *)&__scope);
																struct BBDebugStm __stmt_0 = {0x540807cbd0b3aa62, 638, 0};
																bbOnDebugEnterStm(&__stmt_0);
																if(bbt_bo_vert_w>((struct openb3d_openb3dcore_TSurface_obj*)bbNullObjectTest((BBObject*)bbt_anim_surf2))->_openb3d_openb3dcore_tsurface_vert_weight3 [bbt_vid]){
																	struct BBDebugScope __scope = {
																		BBDEBUGSCOPE_LOCALBLOCK,
																		0,
																		{
																			{
																				BBDEBUGDECL_END
																			}
																		}
																	};
																	bbOnDebugEnterScope((BBDebugScope *)&__scope);
																	struct BBDebugStm __stmt_0 = {0x540807cbd0b3aa62, 640, 0};
																	bbOnDebugEnterStm(&__stmt_0);
																	((struct openb3d_openb3dcore_TSurface_obj*)bbNullObjectTest((BBObject*)bbt_anim_surf2))->_openb3d_openb3dcore_tsurface_vert_bone4_no [bbt_vid]=((struct openb3d_openb3dcore_TSurface_obj*)bbNullObjectTest((BBObject*)bbt_anim_surf2))->_openb3d_openb3dcore_tsurface_vert_bone3_no [bbt_vid];
																	struct BBDebugStm __stmt_1 = {0x540807cbd0b3aa62, 641, 0};
																	bbOnDebugEnterStm(&__stmt_1);
																	((struct openb3d_openb3dcore_TSurface_obj*)bbNullObjectTest((BBObject*)bbt_anim_surf2))->_openb3d_openb3dcore_tsurface_vert_weight4 [bbt_vid]=((struct openb3d_openb3dcore_TSurface_obj*)bbNullObjectTest((BBObject*)bbt_anim_surf2))->_openb3d_openb3dcore_tsurface_vert_weight3 [bbt_vid];
																	struct BBDebugStm __stmt_2 = {0x540807cbd0b3aa62, 643, 0};
																	bbOnDebugEnterStm(&__stmt_2);
																	((struct openb3d_openb3dcore_TSurface_obj*)bbNullObjectTest((BBObject*)bbt_anim_surf2))->_openb3d_openb3dcore_tsurface_vert_bone3_no [bbt_vid]=bbt_bo_no_bones;
																	struct BBDebugStm __stmt_3 = {0x540807cbd0b3aa62, 644, 0};
																	bbOnDebugEnterStm(&__stmt_3);
																	((struct openb3d_openb3dcore_TSurface_obj*)bbNullObjectTest((BBObject*)bbt_anim_surf2))->_openb3d_openb3dcore_tsurface_vert_weight3 [bbt_vid]=bbt_bo_vert_w;
																	bbOnDebugLeaveScope();
																}else{
																	struct BBDebugScope __scope = {
																		BBDEBUGSCOPE_LOCALBLOCK,
																		0,
																		{
																			{
																				BBDEBUGDECL_END
																			}
																		}
																	};
																	bbOnDebugEnterScope((BBDebugScope *)&__scope);
																	struct BBDebugStm __stmt_0 = {0x540807cbd0b3aa62, 646, 0};
																	bbOnDebugEnterStm(&__stmt_0);
																	if(bbt_bo_vert_w>((struct openb3d_openb3dcore_TSurface_obj*)bbNullObjectTest((BBObject*)bbt_anim_surf2))->_openb3d_openb3dcore_tsurface_vert_weight4 [bbt_vid]){
																		struct BBDebugScope __scope = {
																			BBDEBUGSCOPE_LOCALBLOCK,
																			0,
																			{
																				{
																					BBDEBUGDECL_END
																				}
																			}
																		};
																		bbOnDebugEnterScope((BBDebugScope *)&__scope);
																		struct BBDebugStm __stmt_0 = {0x540807cbd0b3aa62, 648, 0};
																		bbOnDebugEnterStm(&__stmt_0);
																		((struct openb3d_openb3dcore_TSurface_obj*)bbNullObjectTest((BBObject*)bbt_anim_surf2))->_openb3d_openb3dcore_tsurface_vert_bone4_no [bbt_vid]=bbt_bo_no_bones;
																		struct BBDebugStm __stmt_1 = {0x540807cbd0b3aa62, 649, 0};
																		bbOnDebugEnterStm(&__stmt_1);
																		((struct openb3d_openb3dcore_TSurface_obj*)bbNullObjectTest((BBObject*)bbt_anim_surf2))->_openb3d_openb3dcore_tsurface_vert_weight4 [bbt_vid]=bbt_bo_vert_w;
																		bbOnDebugLeaveScope();
																	}
																	bbOnDebugLeaveScope();
																}
																bbOnDebugLeaveScope();
															}
															bbOnDebugLeaveScope();
														}
														bbOnDebugLeaveScope();
													}
													bbOnDebugLeaveScope();
												}
												bbOnDebugLeaveScope();
											}
											struct BBDebugStm __stmt_4 = {0x540807cbd0b3aa62, 657, 0};
											bbOnDebugEnterStm(&__stmt_4);
											bbt_new_tag=openb3d_openb3dcore_TB3D_ReadTag_S_TTStream((struct brl_stream_TStream_obj*)bbt_file);
											bbOnDebugLeaveScope();
										}
										struct BBDebugStm __stmt_6 = {0x540807cbd0b3aa62, 660, 0};
										bbOnDebugEnterStm(&__stmt_6);
										((struct openb3d_openb3dcore_TBone_obj*)bbNullObjectTest((BBObject*)bbt_bo_bone))->clas->m_SetString_pbS((struct openb3d_openb3dcore_TEntity_obj*)bbt_bo_bone,((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)bbt_bo_bone))->_openb3d_openb3dcore_tentity_class_name ,((BBString*)&_s476));
										struct BBDebugStm __stmt_7 = {0x540807cbd0b3aa62, 661, 0};
										bbOnDebugEnterStm(&__stmt_7);
										((struct openb3d_openb3dcore_TBone_obj*)bbNullObjectTest((BBObject*)bbt_bo_bone))->clas->m_SetString_pbS((struct openb3d_openb3dcore_TEntity_obj*)bbt_bo_bone,((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)bbt_bo_bone))->_openb3d_openb3dcore_tentity_name ,bbt_n_name);
										struct BBDebugStm __stmt_8 = {0x540807cbd0b3aa62, 662, 0};
										bbOnDebugEnterStm(&__stmt_8);
										((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)bbt_bo_bone))->_openb3d_openb3dcore_tentity_px [0]=bbt_n_px;
										struct BBDebugStm __stmt_9 = {0x540807cbd0b3aa62, 663, 0};
										bbOnDebugEnterStm(&__stmt_9);
										((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)bbt_bo_bone))->_openb3d_openb3dcore_tentity_py [0]=bbt_n_py;
										struct BBDebugStm __stmt_10 = {0x540807cbd0b3aa62, 664, 0};
										bbOnDebugEnterStm(&__stmt_10);
										((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)bbt_bo_bone))->_openb3d_openb3dcore_tentity_pz [0]=bbt_n_pz;
										struct BBDebugStm __stmt_11 = {0x540807cbd0b3aa62, 665, 0};
										bbOnDebugEnterStm(&__stmt_11);
										((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)bbt_bo_bone))->_openb3d_openb3dcore_tentity_sx [0]=bbt_n_sx;
										struct BBDebugStm __stmt_12 = {0x540807cbd0b3aa62, 666, 0};
										bbOnDebugEnterStm(&__stmt_12);
										((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)bbt_bo_bone))->_openb3d_openb3dcore_tentity_sy [0]=bbt_n_sy;
										struct BBDebugStm __stmt_13 = {0x540807cbd0b3aa62, 667, 0};
										bbOnDebugEnterStm(&__stmt_13);
										((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)bbt_bo_bone))->_openb3d_openb3dcore_tentity_sz [0]=bbt_n_sz;
										struct BBDebugStm __stmt_14 = {0x540807cbd0b3aa62, 668, 0};
										bbOnDebugEnterStm(&__stmt_14);
										((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)bbt_bo_bone))->_openb3d_openb3dcore_tentity_qw [0]=bbt_n_qw;
										struct BBDebugStm __stmt_15 = {0x540807cbd0b3aa62, 669, 0};
										bbOnDebugEnterStm(&__stmt_15);
										((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)bbt_bo_bone))->_openb3d_openb3dcore_tentity_qx [0]=bbt_n_qx;
										struct BBDebugStm __stmt_16 = {0x540807cbd0b3aa62, 670, 0};
										bbOnDebugEnterStm(&__stmt_16);
										((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)bbt_bo_bone))->_openb3d_openb3dcore_tentity_qy [0]=bbt_n_qy;
										struct BBDebugStm __stmt_17 = {0x540807cbd0b3aa62, 671, 0};
										bbOnDebugEnterStm(&__stmt_17);
										((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)bbt_bo_bone))->_openb3d_openb3dcore_tentity_qz [0]=bbt_n_qz;
										struct BBDebugStm __stmt_18 = {0x540807cbd0b3aa62, 673, 0};
										bbOnDebugEnterStm(&__stmt_18);
										((struct openb3d_openb3dcore_TBone_obj*)bbNullObjectTest((BBObject*)bbt_bo_bone))->_openb3d_openb3dcore_tbone_n_px [0]=bbt_n_px;
										struct BBDebugStm __stmt_19 = {0x540807cbd0b3aa62, 674, 0};
										bbOnDebugEnterStm(&__stmt_19);
										((struct openb3d_openb3dcore_TBone_obj*)bbNullObjectTest((BBObject*)bbt_bo_bone))->_openb3d_openb3dcore_tbone_n_py [0]=bbt_n_py;
										struct BBDebugStm __stmt_20 = {0x540807cbd0b3aa62, 675, 0};
										bbOnDebugEnterStm(&__stmt_20);
										((struct openb3d_openb3dcore_TBone_obj*)bbNullObjectTest((BBObject*)bbt_bo_bone))->_openb3d_openb3dcore_tbone_n_pz [0]=bbt_n_pz;
										struct BBDebugStm __stmt_21 = {0x540807cbd0b3aa62, 676, 0};
										bbOnDebugEnterStm(&__stmt_21);
										((struct openb3d_openb3dcore_TBone_obj*)bbNullObjectTest((BBObject*)bbt_bo_bone))->_openb3d_openb3dcore_tbone_n_sx [0]=bbt_n_sx;
										struct BBDebugStm __stmt_22 = {0x540807cbd0b3aa62, 677, 0};
										bbOnDebugEnterStm(&__stmt_22);
										((struct openb3d_openb3dcore_TBone_obj*)bbNullObjectTest((BBObject*)bbt_bo_bone))->_openb3d_openb3dcore_tbone_n_sy [0]=bbt_n_sy;
										struct BBDebugStm __stmt_23 = {0x540807cbd0b3aa62, 678, 0};
										bbOnDebugEnterStm(&__stmt_23);
										((struct openb3d_openb3dcore_TBone_obj*)bbNullObjectTest((BBObject*)bbt_bo_bone))->_openb3d_openb3dcore_tbone_n_sz [0]=bbt_n_sz;
										struct BBDebugStm __stmt_24 = {0x540807cbd0b3aa62, 679, 0};
										bbOnDebugEnterStm(&__stmt_24);
										((struct openb3d_openb3dcore_TBone_obj*)bbNullObjectTest((BBObject*)bbt_bo_bone))->_openb3d_openb3dcore_tbone_n_qw [0]=bbt_n_qw;
										struct BBDebugStm __stmt_25 = {0x540807cbd0b3aa62, 680, 0};
										bbOnDebugEnterStm(&__stmt_25);
										((struct openb3d_openb3dcore_TBone_obj*)bbNullObjectTest((BBObject*)bbt_bo_bone))->_openb3d_openb3dcore_tbone_n_qx [0]=bbt_n_qx;
										struct BBDebugStm __stmt_26 = {0x540807cbd0b3aa62, 681, 0};
										bbOnDebugEnterStm(&__stmt_26);
										((struct openb3d_openb3dcore_TBone_obj*)bbNullObjectTest((BBObject*)bbt_bo_bone))->_openb3d_openb3dcore_tbone_n_qy [0]=bbt_n_qy;
										struct BBDebugStm __stmt_27 = {0x540807cbd0b3aa62, 682, 0};
										bbOnDebugEnterStm(&__stmt_27);
										((struct openb3d_openb3dcore_TBone_obj*)bbNullObjectTest((BBObject*)bbt_bo_bone))->_openb3d_openb3dcore_tbone_n_qz [0]=bbt_n_qz;
										struct BBDebugStm __stmt_28 = {0x540807cbd0b3aa62, 684, 0};
										bbOnDebugEnterStm(&__stmt_28);
										((struct openb3d_openb3dcore_TBone_obj*)bbNullObjectTest((BBObject*)bbt_bo_bone))->_openb3d_openb3dcore_tbone_keys =(struct openb3d_openb3dcore_TAnimationKeys_obj*)openb3d_openb3dcore_TAnimationKeys_Create_TTAnimationKeys_TTBone((struct openb3d_openb3dcore_TBone_obj*)bbt_bo_bone);
										struct BBDebugStm __stmt_29 = {0x540807cbd0b3aa62, 685, 0};
										bbOnDebugEnterStm(&__stmt_29);
										((struct openb3d_openb3dcore_TAnimationKeys_obj*)bbNullObjectTest((BBObject*)((struct openb3d_openb3dcore_TBone_obj*)bbNullObjectTest((BBObject*)bbt_bo_bone))->_openb3d_openb3dcore_tbone_keys ))->_openb3d_openb3dcore_tanimationkeys_frames [0]=bbt_a_frames;
										struct BBDebugStm __stmt_30 = {0x540807cbd0b3aa62, 687, 0};
										bbOnDebugEnterStm(&__stmt_30);
										struct openb3d_openb3dcore_TAnimationKeys_obj* bbt_20;
										((struct openb3d_openb3dcore_TAnimationKeys_obj*)bbNullObjectTest((BBObject*)((struct openb3d_openb3dcore_TBone_obj*)bbNullObjectTest((BBObject*)bbt_bo_bone))->_openb3d_openb3dcore_tbone_keys ))->_openb3d_openb3dcore_tanimationkeys_flags =(((struct openb3d_openb3dcore_TAnimationKeys_obj*)((struct openb3d_openb3dcore_TAnimationKeys_obj*)bbNullObjectTest((BBObject*)(bbt_20 = ((struct openb3d_openb3dcore_TBone_obj*)bbNullObjectTest((BBObject*)bbt_bo_bone))->_openb3d_openb3dcore_tbone_keys ))))->clas)->m_AnimationKeysIntArrayResize_ii((struct openb3d_openb3dcore_TAnimationKeys_obj*)bbt_20,2,(bbt_a_frames+1));
										struct BBDebugStm __stmt_31 = {0x540807cbd0b3aa62, 689, 0};
										bbOnDebugEnterStm(&__stmt_31);
										struct openb3d_openb3dcore_TAnimationKeys_obj* bbt_21;
										((struct openb3d_openb3dcore_TAnimationKeys_obj*)bbNullObjectTest((BBObject*)((struct openb3d_openb3dcore_TBone_obj*)bbNullObjectTest((BBObject*)bbt_bo_bone))->_openb3d_openb3dcore_tbone_keys ))->_openb3d_openb3dcore_tanimationkeys_px =(((struct openb3d_openb3dcore_TAnimationKeys_obj*)((struct openb3d_openb3dcore_TAnimationKeys_obj*)bbNullObjectTest((BBObject*)(bbt_21 = ((struct openb3d_openb3dcore_TBone_obj*)bbNullObjectTest((BBObject*)bbt_bo_bone))->_openb3d_openb3dcore_tbone_keys ))))->clas)->m_AnimationKeysFloatArrayResize_ii((struct openb3d_openb3dcore_TAnimationKeys_obj*)bbt_21,3,(bbt_a_frames+1));
										struct BBDebugStm __stmt_32 = {0x540807cbd0b3aa62, 690, 0};
										bbOnDebugEnterStm(&__stmt_32);
										struct openb3d_openb3dcore_TAnimationKeys_obj* bbt_22;
										((struct openb3d_openb3dcore_TAnimationKeys_obj*)bbNullObjectTest((BBObject*)((struct openb3d_openb3dcore_TBone_obj*)bbNullObjectTest((BBObject*)bbt_bo_bone))->_openb3d_openb3dcore_tbone_keys ))->_openb3d_openb3dcore_tanimationkeys_py =(((struct openb3d_openb3dcore_TAnimationKeys_obj*)((struct openb3d_openb3dcore_TAnimationKeys_obj*)bbNullObjectTest((BBObject*)(bbt_22 = ((struct openb3d_openb3dcore_TBone_obj*)bbNullObjectTest((BBObject*)bbt_bo_bone))->_openb3d_openb3dcore_tbone_keys ))))->clas)->m_AnimationKeysFloatArrayResize_ii((struct openb3d_openb3dcore_TAnimationKeys_obj*)bbt_22,4,(bbt_a_frames+1));
										struct BBDebugStm __stmt_33 = {0x540807cbd0b3aa62, 691, 0};
										bbOnDebugEnterStm(&__stmt_33);
										struct openb3d_openb3dcore_TAnimationKeys_obj* bbt_23;
										((struct openb3d_openb3dcore_TAnimationKeys_obj*)bbNullObjectTest((BBObject*)((struct openb3d_openb3dcore_TBone_obj*)bbNullObjectTest((BBObject*)bbt_bo_bone))->_openb3d_openb3dcore_tbone_keys ))->_openb3d_openb3dcore_tanimationkeys_pz =(((struct openb3d_openb3dcore_TAnimationKeys_obj*)((struct openb3d_openb3dcore_TAnimationKeys_obj*)bbNullObjectTest((BBObject*)(bbt_23 = ((struct openb3d_openb3dcore_TBone_obj*)bbNullObjectTest((BBObject*)bbt_bo_bone))->_openb3d_openb3dcore_tbone_keys ))))->clas)->m_AnimationKeysFloatArrayResize_ii((struct openb3d_openb3dcore_TAnimationKeys_obj*)bbt_23,5,(bbt_a_frames+1));
										struct BBDebugStm __stmt_34 = {0x540807cbd0b3aa62, 692, 0};
										bbOnDebugEnterStm(&__stmt_34);
										struct openb3d_openb3dcore_TAnimationKeys_obj* bbt_24;
										((struct openb3d_openb3dcore_TAnimationKeys_obj*)bbNullObjectTest((BBObject*)((struct openb3d_openb3dcore_TBone_obj*)bbNullObjectTest((BBObject*)bbt_bo_bone))->_openb3d_openb3dcore_tbone_keys ))->_openb3d_openb3dcore_tanimationkeys_sx =(((struct openb3d_openb3dcore_TAnimationKeys_obj*)((struct openb3d_openb3dcore_TAnimationKeys_obj*)bbNullObjectTest((BBObject*)(bbt_24 = ((struct openb3d_openb3dcore_TBone_obj*)bbNullObjectTest((BBObject*)bbt_bo_bone))->_openb3d_openb3dcore_tbone_keys ))))->clas)->m_AnimationKeysFloatArrayResize_ii((struct openb3d_openb3dcore_TAnimationKeys_obj*)bbt_24,6,(bbt_a_frames+1));
										struct BBDebugStm __stmt_35 = {0x540807cbd0b3aa62, 693, 0};
										bbOnDebugEnterStm(&__stmt_35);
										struct openb3d_openb3dcore_TAnimationKeys_obj* bbt_25;
										((struct openb3d_openb3dcore_TAnimationKeys_obj*)bbNullObjectTest((BBObject*)((struct openb3d_openb3dcore_TBone_obj*)bbNullObjectTest((BBObject*)bbt_bo_bone))->_openb3d_openb3dcore_tbone_keys ))->_openb3d_openb3dcore_tanimationkeys_sy =(((struct openb3d_openb3dcore_TAnimationKeys_obj*)((struct openb3d_openb3dcore_TAnimationKeys_obj*)bbNullObjectTest((BBObject*)(bbt_25 = ((struct openb3d_openb3dcore_TBone_obj*)bbNullObjectTest((BBObject*)bbt_bo_bone))->_openb3d_openb3dcore_tbone_keys ))))->clas)->m_AnimationKeysFloatArrayResize_ii((struct openb3d_openb3dcore_TAnimationKeys_obj*)bbt_25,7,(bbt_a_frames+1));
										struct BBDebugStm __stmt_36 = {0x540807cbd0b3aa62, 694, 0};
										bbOnDebugEnterStm(&__stmt_36);
										struct openb3d_openb3dcore_TAnimationKeys_obj* bbt_26;
										((struct openb3d_openb3dcore_TAnimationKeys_obj*)bbNullObjectTest((BBObject*)((struct openb3d_openb3dcore_TBone_obj*)bbNullObjectTest((BBObject*)bbt_bo_bone))->_openb3d_openb3dcore_tbone_keys ))->_openb3d_openb3dcore_tanimationkeys_sz =(((struct openb3d_openb3dcore_TAnimationKeys_obj*)((struct openb3d_openb3dcore_TAnimationKeys_obj*)bbNullObjectTest((BBObject*)(bbt_26 = ((struct openb3d_openb3dcore_TBone_obj*)bbNullObjectTest((BBObject*)bbt_bo_bone))->_openb3d_openb3dcore_tbone_keys ))))->clas)->m_AnimationKeysFloatArrayResize_ii((struct openb3d_openb3dcore_TAnimationKeys_obj*)bbt_26,8,(bbt_a_frames+1));
										struct BBDebugStm __stmt_37 = {0x540807cbd0b3aa62, 695, 0};
										bbOnDebugEnterStm(&__stmt_37);
										struct openb3d_openb3dcore_TAnimationKeys_obj* bbt_27;
										((struct openb3d_openb3dcore_TAnimationKeys_obj*)bbNullObjectTest((BBObject*)((struct openb3d_openb3dcore_TBone_obj*)bbNullObjectTest((BBObject*)bbt_bo_bone))->_openb3d_openb3dcore_tbone_keys ))->_openb3d_openb3dcore_tanimationkeys_qw =(((struct openb3d_openb3dcore_TAnimationKeys_obj*)((struct openb3d_openb3dcore_TAnimationKeys_obj*)bbNullObjectTest((BBObject*)(bbt_27 = ((struct openb3d_openb3dcore_TBone_obj*)bbNullObjectTest((BBObject*)bbt_bo_bone))->_openb3d_openb3dcore_tbone_keys ))))->clas)->m_AnimationKeysFloatArrayResize_ii((struct openb3d_openb3dcore_TAnimationKeys_obj*)bbt_27,9,(bbt_a_frames+1));
										struct BBDebugStm __stmt_38 = {0x540807cbd0b3aa62, 696, 0};
										bbOnDebugEnterStm(&__stmt_38);
										struct openb3d_openb3dcore_TAnimationKeys_obj* bbt_28;
										((struct openb3d_openb3dcore_TAnimationKeys_obj*)bbNullObjectTest((BBObject*)((struct openb3d_openb3dcore_TBone_obj*)bbNullObjectTest((BBObject*)bbt_bo_bone))->_openb3d_openb3dcore_tbone_keys ))->_openb3d_openb3dcore_tanimationkeys_qx =(((struct openb3d_openb3dcore_TAnimationKeys_obj*)((struct openb3d_openb3dcore_TAnimationKeys_obj*)bbNullObjectTest((BBObject*)(bbt_28 = ((struct openb3d_openb3dcore_TBone_obj*)bbNullObjectTest((BBObject*)bbt_bo_bone))->_openb3d_openb3dcore_tbone_keys ))))->clas)->m_AnimationKeysFloatArrayResize_ii((struct openb3d_openb3dcore_TAnimationKeys_obj*)bbt_28,10,(bbt_a_frames+1));
										struct BBDebugStm __stmt_39 = {0x540807cbd0b3aa62, 697, 0};
										bbOnDebugEnterStm(&__stmt_39);
										struct openb3d_openb3dcore_TAnimationKeys_obj* bbt_29;
										((struct openb3d_openb3dcore_TAnimationKeys_obj*)bbNullObjectTest((BBObject*)((struct openb3d_openb3dcore_TBone_obj*)bbNullObjectTest((BBObject*)bbt_bo_bone))->_openb3d_openb3dcore_tbone_keys ))->_openb3d_openb3dcore_tanimationkeys_qy =(((struct openb3d_openb3dcore_TAnimationKeys_obj*)((struct openb3d_openb3dcore_TAnimationKeys_obj*)bbNullObjectTest((BBObject*)(bbt_29 = ((struct openb3d_openb3dcore_TBone_obj*)bbNullObjectTest((BBObject*)bbt_bo_bone))->_openb3d_openb3dcore_tbone_keys ))))->clas)->m_AnimationKeysFloatArrayResize_ii((struct openb3d_openb3dcore_TAnimationKeys_obj*)bbt_29,11,(bbt_a_frames+1));
										struct BBDebugStm __stmt_40 = {0x540807cbd0b3aa62, 698, 0};
										bbOnDebugEnterStm(&__stmt_40);
										struct openb3d_openb3dcore_TAnimationKeys_obj* bbt_30;
										((struct openb3d_openb3dcore_TAnimationKeys_obj*)bbNullObjectTest((BBObject*)((struct openb3d_openb3dcore_TBone_obj*)bbNullObjectTest((BBObject*)bbt_bo_bone))->_openb3d_openb3dcore_tbone_keys ))->_openb3d_openb3dcore_tanimationkeys_qz =(((struct openb3d_openb3dcore_TAnimationKeys_obj*)((struct openb3d_openb3dcore_TAnimationKeys_obj*)bbNullObjectTest((BBObject*)(bbt_30 = ((struct openb3d_openb3dcore_TBone_obj*)bbNullObjectTest((BBObject*)bbt_bo_bone))->_openb3d_openb3dcore_tbone_keys ))))->clas)->m_AnimationKeysFloatArrayResize_ii((struct openb3d_openb3dcore_TAnimationKeys_obj*)bbt_30,12,(bbt_a_frames+1));
										struct BBDebugStm __stmt_41 = {0x540807cbd0b3aa62, 701, 0};
										bbOnDebugEnterStm(&__stmt_41);
										if(((BBOBJECT)bbt_root_ent)==&bbNullObject){
											struct BBDebugScope __scope = {
												BBDEBUGSCOPE_LOCALBLOCK,
												0,
												{
													{
														BBDEBUGDECL_END
													}
												}
											};
											bbOnDebugEnterScope((BBDebugScope *)&__scope);
											struct BBDebugStm __stmt_0 = {0x540807cbd0b3aa62, 701, 0};
											bbOnDebugEnterStm(&__stmt_0);
											bbt_root_ent=(struct openb3d_openb3dcore_TEntity_obj*)((struct openb3d_openb3dcore_TEntity_obj*)bbObjectDowncast((BBOBJECT)bbt_bo_bone,(BBClass*)&openb3d_openb3dcore_TEntity));
											bbOnDebugLeaveScope();
										}
										struct BBDebugStm __stmt_42 = {0x540807cbd0b3aa62, 704, 0};
										bbOnDebugEnterStm(&__stmt_42);
										if(bbt_node_level>0){
											struct BBDebugScope __scope = {
												BBDEBUGSCOPE_LOCALBLOCK,
												0,
												{
													{
														BBDEBUGDECL_END
													}
												}
											};
											bbOnDebugEnterScope((BBDebugScope *)&__scope);
											struct BBDebugStm __stmt_0 = {0x540807cbd0b3aa62, 704, 0};
											bbOnDebugEnterStm(&__stmt_0);
											((struct openb3d_openb3dcore_TBone_obj*)bbNullObjectTest((BBObject*)bbt_bo_bone))->clas->m_AddParent_TTEntity((struct openb3d_openb3dcore_TEntity_obj*)bbt_bo_bone,(struct openb3d_openb3dcore_TEntity_obj*)bbt_parent_ent);
											bbOnDebugLeaveScope();
										}
										struct BBDebugStm __stmt_43 = {0x540807cbd0b3aa62, 706, 0};
										bbOnDebugEnterStm(&__stmt_43);
										openb3d_openb3dcore_TQuatPtr_QuatToMat_i_ffffTTMatPtr(-((struct openb3d_openb3dcore_TBone_obj*)bbNullObjectTest((BBObject*)bbt_bo_bone))->_openb3d_openb3dcore_tbone_n_qw [0],((struct openb3d_openb3dcore_TBone_obj*)bbNullObjectTest((BBObject*)bbt_bo_bone))->_openb3d_openb3dcore_tbone_n_qx [0],((struct openb3d_openb3dcore_TBone_obj*)bbNullObjectTest((BBObject*)bbt_bo_bone))->_openb3d_openb3dcore_tbone_n_qy [0],-((struct openb3d_openb3dcore_TBone_obj*)bbNullObjectTest((BBObject*)bbt_bo_bone))->_openb3d_openb3dcore_tbone_n_qz [0],(struct openb3d_openb3dcore_TMatPtr_obj*)((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)bbt_bo_bone))->_openb3d_openb3dcore_tentity_mat );
										struct BBDebugStm __stmt_44 = {0x540807cbd0b3aa62, 708, 0};
										bbOnDebugEnterStm(&__stmt_44);
										((struct openb3d_openb3dcore_TMatPtr_obj*)bbNullObjectTest((BBObject*)((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)bbt_bo_bone))->_openb3d_openb3dcore_tentity_mat ))->_openb3d_openb3dcore_tmatptr_grid [12]=((struct openb3d_openb3dcore_TBone_obj*)bbNullObjectTest((BBObject*)bbt_bo_bone))->_openb3d_openb3dcore_tbone_n_px [0];
										struct BBDebugStm __stmt_45 = {0x540807cbd0b3aa62, 709, 0};
										bbOnDebugEnterStm(&__stmt_45);
										((struct openb3d_openb3dcore_TMatPtr_obj*)bbNullObjectTest((BBObject*)((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)bbt_bo_bone))->_openb3d_openb3dcore_tentity_mat ))->_openb3d_openb3dcore_tmatptr_grid [13]=((struct openb3d_openb3dcore_TBone_obj*)bbNullObjectTest((BBObject*)bbt_bo_bone))->_openb3d_openb3dcore_tbone_n_py [0];
										struct BBDebugStm __stmt_46 = {0x540807cbd0b3aa62, 710, 0};
										bbOnDebugEnterStm(&__stmt_46);
										((struct openb3d_openb3dcore_TMatPtr_obj*)bbNullObjectTest((BBObject*)((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)bbt_bo_bone))->_openb3d_openb3dcore_tentity_mat ))->_openb3d_openb3dcore_tmatptr_grid [14]=((struct openb3d_openb3dcore_TBone_obj*)bbNullObjectTest((BBObject*)bbt_bo_bone))->_openb3d_openb3dcore_tbone_n_pz [0];
										struct BBDebugStm __stmt_47 = {0x540807cbd0b3aa62, 713, 0};
										bbOnDebugEnterStm(&__stmt_47);
										if((((BBOBJECT)((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)bbt_bo_bone))->_openb3d_openb3dcore_tentity_parent )!=&bbNullObject) && (((BBOBJECT)((struct openb3d_openb3dcore_TBone_obj*)bbObjectDowncast((BBOBJECT)((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)bbt_bo_bone))->_openb3d_openb3dcore_tentity_parent ,(BBClass*)&openb3d_openb3dcore_TBone)))!=&bbNullObject)){
											struct openb3d_openb3dcore_TMatPtr_obj* bbt_new_mat3=(struct openb3d_openb3dcore_TMatPtr_obj*)((struct openb3d_openb3dcore_TMatPtr_obj*)&bbNullObject);
											struct BBDebugScope_1 __scope = {
												BBDEBUGSCOPE_LOCALBLOCK,
												0,
												{
													{
														BBDEBUGDECL_LOCAL,
														"new_mat",
														":TMatPtr",
														.var_address=&bbt_new_mat3
													},
													{
														BBDEBUGDECL_END
													}
												}
											};
											bbOnDebugEnterScope((BBDebugScope *)&__scope);
											struct BBDebugStm __stmt_0 = {0x540807cbd0b3aa62, 714, 0};
											bbOnDebugEnterStm(&__stmt_0);
											struct openb3d_openb3dcore_TMatPtr_obj* bbt_31;
											bbt_new_mat3=(struct openb3d_openb3dcore_TMatPtr_obj*)(((struct openb3d_openb3dcore_TMatPtr_obj*)((struct openb3d_openb3dcore_TMatPtr_obj*)bbNullObjectTest((BBObject*)(bbt_31 = ((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)bbt_bo_bone))->_openb3d_openb3dcore_tentity_parent ))->_openb3d_openb3dcore_tentity_mat ))))->clas)->m_Copy((struct openb3d_openb3dcore_TMatPtr_obj*)bbt_31);
											struct BBDebugStm __stmt_1 = {0x540807cbd0b3aa62, 715, 0};
											bbOnDebugEnterStm(&__stmt_1);
											((struct openb3d_openb3dcore_TMatPtr_obj*)bbNullObjectTest((BBObject*)bbt_new_mat3))->clas->m_Multiply_TTMatPtr((struct openb3d_openb3dcore_TMatPtr_obj*)bbt_new_mat3,(struct openb3d_openb3dcore_TMatPtr_obj*)((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)bbt_bo_bone))->_openb3d_openb3dcore_tentity_mat );
											struct BBDebugStm __stmt_2 = {0x540807cbd0b3aa62, 716, 0};
											bbOnDebugEnterStm(&__stmt_2);
											struct openb3d_openb3dcore_TMatPtr_obj* bbt_32;
											(((struct openb3d_openb3dcore_TMatPtr_obj*)((struct openb3d_openb3dcore_TMatPtr_obj*)bbNullObjectTest((BBObject*)(bbt_32 = ((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)bbt_bo_bone))->_openb3d_openb3dcore_tentity_mat ))))->clas)->m_Overwrite_TTMatPtr((struct openb3d_openb3dcore_TMatPtr_obj*)bbt_32,(struct openb3d_openb3dcore_TMatPtr_obj*)bbt_new_mat3);
											struct BBDebugStm __stmt_3 = {0x540807cbd0b3aa62, 717, 0};
											bbOnDebugEnterStm(&__stmt_3);
											bbt_new_mat3=(struct openb3d_openb3dcore_TMatPtr_obj*)&bbNullObject;
											bbOnDebugLeaveScope();
										}
										struct BBDebugStm __stmt_48 = {0x540807cbd0b3aa62, 720, 0};
										bbOnDebugEnterStm(&__stmt_48);
										struct openb3d_openb3dcore_TMatPtr_obj* bbt_33;
										(((struct openb3d_openb3dcore_TMatPtr_obj*)((struct openb3d_openb3dcore_TMatPtr_obj*)bbNullObjectTest((BBObject*)(bbt_33 = ((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)bbt_bo_bone))->_openb3d_openb3dcore_tentity_mat ))))->clas)->m_GetInverse_TTMatPtr((struct openb3d_openb3dcore_TMatPtr_obj*)bbt_33,(struct openb3d_openb3dcore_TMatPtr_obj*)((struct openb3d_openb3dcore_TBone_obj*)bbNullObjectTest((BBObject*)bbt_bo_bone))->_openb3d_openb3dcore_tbone_inv_mat );
										struct BBDebugStm __stmt_49 = {0x540807cbd0b3aa62, 722, 0};
										bbOnDebugEnterStm(&__stmt_49);
										if(bbStringEquals(bbt_new_tag, ((BBString*)&_s477))!=1){
											struct BBDebugScope __scope = {
												BBDEBUGSCOPE_LOCALBLOCK,
												0,
												{
													{
														BBDEBUGDECL_END
													}
												}
											};
											bbOnDebugEnterScope((BBDebugScope *)&__scope);
											struct BBDebugStm __stmt_0 = {0x540807cbd0b3aa62, 723, 0};
											bbOnDebugEnterStm(&__stmt_0);
											((struct openb3d_openb3dcore_TBone_obj*)bbNullObjectTest((BBObject*)bbt_bo_bone))->clas->m_EntityListAdd_TTListTObject((struct openb3d_openb3dcore_TEntity_obj*)bbt_bo_bone,(struct brl_linkedlist_TList_obj*)openb3d_openb3dcore_TEntity_entity_list,(BBOBJECT)&bbNullObject);
											struct BBDebugStm __stmt_1 = {0x540807cbd0b3aa62, 725, 0};
											bbOnDebugEnterStm(&__stmt_1);
											((struct openb3d_openb3dcore_TMesh_obj*)bbNullObjectTest((BBObject*)bbt_mesh))->clas->m_MeshArrayResize_ii((struct openb3d_openb3dcore_TMesh_obj*)bbt_mesh,4,bbt_bo_no_bones);
											struct BBDebugStm __stmt_2 = {0x540807cbd0b3aa62, 726, 0};
											bbOnDebugEnterStm(&__stmt_2);
											((struct openb3d_openb3dcore_TMesh_obj*)bbNullObjectTest((BBObject*)bbt_mesh))->clas->m_MeshArraySet_iiTObject((struct openb3d_openb3dcore_TMesh_obj*)bbt_mesh,4,(bbt_bo_no_bones-1),(BBOBJECT)bbt_bo_bone);
											struct BBDebugStm __stmt_3 = {0x540807cbd0b3aa62, 728, 0};
											bbOnDebugEnterStm(&__stmt_3);
											bbt_last_ent=(struct openb3d_openb3dcore_TEntity_obj*)((struct openb3d_openb3dcore_TEntity_obj*)bbObjectDowncast((BBOBJECT)bbt_bo_bone,(BBClass*)&openb3d_openb3dcore_TEntity));
											bbOnDebugLeaveScope();
										}
										bbOnDebugLeaveScope();
									}else{
										struct BBDebugScope __scope = {
											BBDEBUGSCOPE_LOCALBLOCK,
											0,
											{
												{
													BBDEBUGDECL_END
												}
											}
										};
										bbOnDebugEnterScope((BBDebugScope *)&__scope);
										struct BBDebugStm __stmt_0 = {0x540807cbd0b3aa62, 731, 0};
										bbOnDebugEnterStm(&__stmt_0);
										if(bbStringEquals(bbt_3, ((BBString*)&_s477))==1){
											struct BBDebugScope __scope = {
												BBDEBUGSCOPE_LOCALBLOCK,
												0,
												{
													{
														BBDEBUGDECL_END
													}
												}
											};
											bbOnDebugEnterScope((BBDebugScope *)&__scope);
											struct BBDebugStm __stmt_0 = {0x540807cbd0b3aa62, 733, 0};
											bbOnDebugEnterStm(&__stmt_0);
											bbt_old_tag=bbt_new_tag;
											struct BBDebugStm __stmt_1 = {0x540807cbd0b3aa62, 734, 0};
											bbOnDebugEnterStm(&__stmt_1);
											bbt_k_flags=brl_stream_ReadInt((struct brl_stream_TStream_obj*)bbt_file);
											struct BBDebugStm __stmt_2 = {0x540807cbd0b3aa62, 735, 0};
											bbOnDebugEnterStm(&__stmt_2);
											bbt_new_tag=openb3d_openb3dcore_TB3D_ReadTag_S_TTStream((struct brl_stream_TStream_obj*)bbt_file);
											struct BBDebugStm __stmt_3 = {0x540807cbd0b3aa62, 737, 0};
											bbOnDebugEnterStm(&__stmt_3);
											while((openb3d_openb3dcore_TB3D_NewTag_i_S(bbt_new_tag)!=1) && (brl_stream_Eof((struct brl_stream_TStream_obj*)bbt_file)==0)){
												struct BBDebugScope __scope = {
													BBDEBUGSCOPE_LOCALBLOCK,
													0,
													{
														{
															BBDEBUGDECL_END
														}
													}
												};
												bbOnDebugEnterScope((BBDebugScope *)&__scope);
												struct BBDebugStm __stmt_0 = {0x540807cbd0b3aa62, 738, 0};
												bbOnDebugEnterStm(&__stmt_0);
												bbt_k_frame=brl_stream_ReadInt((struct brl_stream_TStream_obj*)bbt_file);
												struct BBDebugStm __stmt_1 = {0x540807cbd0b3aa62, 742, 0};
												bbOnDebugEnterStm(&__stmt_1);
												if(((unsigned int)(bbt_k_flags)&(unsigned int)(1))!=0){
													struct BBDebugScope __scope = {
														BBDEBUGSCOPE_LOCALBLOCK,
														0,
														{
															{
																BBDEBUGDECL_END
															}
														}
													};
													bbOnDebugEnterScope((BBDebugScope *)&__scope);
													struct BBDebugStm __stmt_0 = {0x540807cbd0b3aa62, 743, 0};
													bbOnDebugEnterStm(&__stmt_0);
													bbt_k_px=brl_stream_ReadFloat((struct brl_stream_TStream_obj*)bbt_file);
													struct BBDebugStm __stmt_1 = {0x540807cbd0b3aa62, 744, 0};
													bbOnDebugEnterStm(&__stmt_1);
													bbt_k_py=brl_stream_ReadFloat((struct brl_stream_TStream_obj*)bbt_file);
													struct BBDebugStm __stmt_2 = {0x540807cbd0b3aa62, 745, 0};
													bbOnDebugEnterStm(&__stmt_2);
													bbt_k_pz=-brl_stream_ReadFloat((struct brl_stream_TStream_obj*)bbt_file);
													bbOnDebugLeaveScope();
												}
												struct BBDebugStm __stmt_2 = {0x540807cbd0b3aa62, 747, 0};
												bbOnDebugEnterStm(&__stmt_2);
												if(((unsigned int)(bbt_k_flags)&(unsigned int)(2))!=0){
													struct BBDebugScope __scope = {
														BBDEBUGSCOPE_LOCALBLOCK,
														0,
														{
															{
																BBDEBUGDECL_END
															}
														}
													};
													bbOnDebugEnterScope((BBDebugScope *)&__scope);
													struct BBDebugStm __stmt_0 = {0x540807cbd0b3aa62, 748, 0};
													bbOnDebugEnterStm(&__stmt_0);
													bbt_k_sx=brl_stream_ReadFloat((struct brl_stream_TStream_obj*)bbt_file);
													struct BBDebugStm __stmt_1 = {0x540807cbd0b3aa62, 749, 0};
													bbOnDebugEnterStm(&__stmt_1);
													bbt_k_sy=brl_stream_ReadFloat((struct brl_stream_TStream_obj*)bbt_file);
													struct BBDebugStm __stmt_2 = {0x540807cbd0b3aa62, 750, 0};
													bbOnDebugEnterStm(&__stmt_2);
													bbt_k_sz=brl_stream_ReadFloat((struct brl_stream_TStream_obj*)bbt_file);
													bbOnDebugLeaveScope();
												}
												struct BBDebugStm __stmt_3 = {0x540807cbd0b3aa62, 752, 0};
												bbOnDebugEnterStm(&__stmt_3);
												if(((unsigned int)(bbt_k_flags)&(unsigned int)(4))!=0){
													struct BBDebugScope __scope = {
														BBDEBUGSCOPE_LOCALBLOCK,
														0,
														{
															{
																BBDEBUGDECL_END
															}
														}
													};
													bbOnDebugEnterScope((BBDebugScope *)&__scope);
													struct BBDebugStm __stmt_0 = {0x540807cbd0b3aa62, 753, 0};
													bbOnDebugEnterStm(&__stmt_0);
													bbt_k_qw=-brl_stream_ReadFloat((struct brl_stream_TStream_obj*)bbt_file);
													struct BBDebugStm __stmt_1 = {0x540807cbd0b3aa62, 754, 0};
													bbOnDebugEnterStm(&__stmt_1);
													bbt_k_qx=brl_stream_ReadFloat((struct brl_stream_TStream_obj*)bbt_file);
													struct BBDebugStm __stmt_2 = {0x540807cbd0b3aa62, 755, 0};
													bbOnDebugEnterStm(&__stmt_2);
													bbt_k_qy=brl_stream_ReadFloat((struct brl_stream_TStream_obj*)bbt_file);
													struct BBDebugStm __stmt_3 = {0x540807cbd0b3aa62, 756, 0};
													bbOnDebugEnterStm(&__stmt_3);
													bbt_k_qz=-brl_stream_ReadFloat((struct brl_stream_TStream_obj*)bbt_file);
													bbOnDebugLeaveScope();
												}
												struct BBDebugStm __stmt_4 = {0x540807cbd0b3aa62, 760, 0};
												bbOnDebugEnterStm(&__stmt_4);
												if(((BBOBJECT)bbt_bo_bone)!=&bbNullObject){
													struct BBDebugScope __scope = {
														BBDEBUGSCOPE_LOCALBLOCK,
														0,
														{
															{
																BBDEBUGDECL_END
															}
														}
													};
													bbOnDebugEnterScope((BBDebugScope *)&__scope);
													struct BBDebugStm __stmt_0 = {0x540807cbd0b3aa62, 762, 0};
													bbOnDebugEnterStm(&__stmt_0);
													((struct openb3d_openb3dcore_TAnimationKeys_obj*)bbNullObjectTest((BBObject*)((struct openb3d_openb3dcore_TBone_obj*)bbNullObjectTest((BBObject*)bbt_bo_bone))->_openb3d_openb3dcore_tbone_keys ))->_openb3d_openb3dcore_tanimationkeys_flags [bbt_k_frame]=(((struct openb3d_openb3dcore_TAnimationKeys_obj*)bbNullObjectTest((BBObject*)((struct openb3d_openb3dcore_TBone_obj*)bbNullObjectTest((BBObject*)bbt_bo_bone))->_openb3d_openb3dcore_tbone_keys ))->_openb3d_openb3dcore_tanimationkeys_flags [bbt_k_frame]+bbt_k_flags);
													struct BBDebugStm __stmt_1 = {0x540807cbd0b3aa62, 763, 0};
													bbOnDebugEnterStm(&__stmt_1);
													if(((unsigned int)(bbt_k_flags)&(unsigned int)(1))!=0){
														struct BBDebugScope __scope = {
															BBDEBUGSCOPE_LOCALBLOCK,
															0,
															{
																{
																	BBDEBUGDECL_END
																}
															}
														};
														bbOnDebugEnterScope((BBDebugScope *)&__scope);
														struct BBDebugStm __stmt_0 = {0x540807cbd0b3aa62, 764, 0};
														bbOnDebugEnterStm(&__stmt_0);
														((struct openb3d_openb3dcore_TAnimationKeys_obj*)bbNullObjectTest((BBObject*)((struct openb3d_openb3dcore_TBone_obj*)bbNullObjectTest((BBObject*)bbt_bo_bone))->_openb3d_openb3dcore_tbone_keys ))->_openb3d_openb3dcore_tanimationkeys_px [bbt_k_frame]=bbt_k_px;
														struct BBDebugStm __stmt_1 = {0x540807cbd0b3aa62, 765, 0};
														bbOnDebugEnterStm(&__stmt_1);
														((struct openb3d_openb3dcore_TAnimationKeys_obj*)bbNullObjectTest((BBObject*)((struct openb3d_openb3dcore_TBone_obj*)bbNullObjectTest((BBObject*)bbt_bo_bone))->_openb3d_openb3dcore_tbone_keys ))->_openb3d_openb3dcore_tanimationkeys_py [bbt_k_frame]=bbt_k_py;
														struct BBDebugStm __stmt_2 = {0x540807cbd0b3aa62, 766, 0};
														bbOnDebugEnterStm(&__stmt_2);
														((struct openb3d_openb3dcore_TAnimationKeys_obj*)bbNullObjectTest((BBObject*)((struct openb3d_openb3dcore_TBone_obj*)bbNullObjectTest((BBObject*)bbt_bo_bone))->_openb3d_openb3dcore_tbone_keys ))->_openb3d_openb3dcore_tanimationkeys_pz [bbt_k_frame]=bbt_k_pz;
														bbOnDebugLeaveScope();
													}
													struct BBDebugStm __stmt_2 = {0x540807cbd0b3aa62, 768, 0};
													bbOnDebugEnterStm(&__stmt_2);
													if(((unsigned int)(bbt_k_flags)&(unsigned int)(2))!=0){
														struct BBDebugScope __scope = {
															BBDEBUGSCOPE_LOCALBLOCK,
															0,
															{
																{
																	BBDEBUGDECL_END
																}
															}
														};
														bbOnDebugEnterScope((BBDebugScope *)&__scope);
														struct BBDebugStm __stmt_0 = {0x540807cbd0b3aa62, 769, 0};
														bbOnDebugEnterStm(&__stmt_0);
														((struct openb3d_openb3dcore_TAnimationKeys_obj*)bbNullObjectTest((BBObject*)((struct openb3d_openb3dcore_TBone_obj*)bbNullObjectTest((BBObject*)bbt_bo_bone))->_openb3d_openb3dcore_tbone_keys ))->_openb3d_openb3dcore_tanimationkeys_sx [bbt_k_frame]=bbt_k_sx;
														struct BBDebugStm __stmt_1 = {0x540807cbd0b3aa62, 770, 0};
														bbOnDebugEnterStm(&__stmt_1);
														((struct openb3d_openb3dcore_TAnimationKeys_obj*)bbNullObjectTest((BBObject*)((struct openb3d_openb3dcore_TBone_obj*)bbNullObjectTest((BBObject*)bbt_bo_bone))->_openb3d_openb3dcore_tbone_keys ))->_openb3d_openb3dcore_tanimationkeys_sy [bbt_k_frame]=bbt_k_sy;
														struct BBDebugStm __stmt_2 = {0x540807cbd0b3aa62, 771, 0};
														bbOnDebugEnterStm(&__stmt_2);
														((struct openb3d_openb3dcore_TAnimationKeys_obj*)bbNullObjectTest((BBObject*)((struct openb3d_openb3dcore_TBone_obj*)bbNullObjectTest((BBObject*)bbt_bo_bone))->_openb3d_openb3dcore_tbone_keys ))->_openb3d_openb3dcore_tanimationkeys_sz [bbt_k_frame]=bbt_k_sz;
														bbOnDebugLeaveScope();
													}
													struct BBDebugStm __stmt_3 = {0x540807cbd0b3aa62, 773, 0};
													bbOnDebugEnterStm(&__stmt_3);
													if(((unsigned int)(bbt_k_flags)&(unsigned int)(4))!=0){
														struct BBDebugScope __scope = {
															BBDEBUGSCOPE_LOCALBLOCK,
															0,
															{
																{
																	BBDEBUGDECL_END
																}
															}
														};
														bbOnDebugEnterScope((BBDebugScope *)&__scope);
														struct BBDebugStm __stmt_0 = {0x540807cbd0b3aa62, 774, 0};
														bbOnDebugEnterStm(&__stmt_0);
														((struct openb3d_openb3dcore_TAnimationKeys_obj*)bbNullObjectTest((BBObject*)((struct openb3d_openb3dcore_TBone_obj*)bbNullObjectTest((BBObject*)bbt_bo_bone))->_openb3d_openb3dcore_tbone_keys ))->_openb3d_openb3dcore_tanimationkeys_qw [bbt_k_frame]=bbt_k_qw;
														struct BBDebugStm __stmt_1 = {0x540807cbd0b3aa62, 775, 0};
														bbOnDebugEnterStm(&__stmt_1);
														((struct openb3d_openb3dcore_TAnimationKeys_obj*)bbNullObjectTest((BBObject*)((struct openb3d_openb3dcore_TBone_obj*)bbNullObjectTest((BBObject*)bbt_bo_bone))->_openb3d_openb3dcore_tbone_keys ))->_openb3d_openb3dcore_tanimationkeys_qx [bbt_k_frame]=bbt_k_qx;
														struct BBDebugStm __stmt_2 = {0x540807cbd0b3aa62, 776, 0};
														bbOnDebugEnterStm(&__stmt_2);
														((struct openb3d_openb3dcore_TAnimationKeys_obj*)bbNullObjectTest((BBObject*)((struct openb3d_openb3dcore_TBone_obj*)bbNullObjectTest((BBObject*)bbt_bo_bone))->_openb3d_openb3dcore_tbone_keys ))->_openb3d_openb3dcore_tanimationkeys_qy [bbt_k_frame]=bbt_k_qy;
														struct BBDebugStm __stmt_3 = {0x540807cbd0b3aa62, 777, 0};
														bbOnDebugEnterStm(&__stmt_3);
														((struct openb3d_openb3dcore_TAnimationKeys_obj*)bbNullObjectTest((BBObject*)((struct openb3d_openb3dcore_TBone_obj*)bbNullObjectTest((BBObject*)bbt_bo_bone))->_openb3d_openb3dcore_tbone_keys ))->_openb3d_openb3dcore_tanimationkeys_qz [bbt_k_frame]=bbt_k_qz;
														bbOnDebugLeaveScope();
													}
													bbOnDebugLeaveScope();
												}
												struct BBDebugStm __stmt_5 = {0x540807cbd0b3aa62, 782, 0};
												bbOnDebugEnterStm(&__stmt_5);
												bbt_new_tag=openb3d_openb3dcore_TB3D_ReadTag_S_TTStream((struct brl_stream_TStream_obj*)bbt_file);
												bbOnDebugLeaveScope();
											}
											struct BBDebugStm __stmt_4 = {0x540807cbd0b3aa62, 785, 0};
											bbOnDebugEnterStm(&__stmt_4);
											if(bbStringEquals(bbt_new_tag, ((BBString*)&_s477))!=1){
												struct BBDebugScope __scope = {
													BBDEBUGSCOPE_LOCALBLOCK,
													0,
													{
														{
															BBDEBUGDECL_END
														}
													}
												};
												bbOnDebugEnterScope((BBDebugScope *)&__scope);
												struct BBDebugStm __stmt_0 = {0x540807cbd0b3aa62, 788, 0};
												bbOnDebugEnterStm(&__stmt_0);
												if(((BBOBJECT)bbt_bo_bone)!=&bbNullObject){
													struct BBDebugScope __scope = {
														BBDEBUGSCOPE_LOCALBLOCK,
														0,
														{
															{
																BBDEBUGDECL_END
															}
														}
													};
													bbOnDebugEnterScope((BBDebugScope *)&__scope);
													struct BBDebugStm __stmt_0 = {0x540807cbd0b3aa62, 789, 0};
													bbOnDebugEnterStm(&__stmt_0);
													((struct openb3d_openb3dcore_TBone_obj*)bbNullObjectTest((BBObject*)bbt_bo_bone))->clas->m_EntityListAdd_TTListTObject((struct openb3d_openb3dcore_TEntity_obj*)bbt_bo_bone,(struct brl_linkedlist_TList_obj*)openb3d_openb3dcore_TEntity_entity_list,(BBOBJECT)&bbNullObject);
													struct BBDebugStm __stmt_1 = {0x540807cbd0b3aa62, 791, 0};
													bbOnDebugEnterStm(&__stmt_1);
													((struct openb3d_openb3dcore_TMesh_obj*)bbNullObjectTest((BBObject*)bbt_mesh))->clas->m_MeshArrayResize_ii((struct openb3d_openb3dcore_TMesh_obj*)bbt_mesh,4,bbt_bo_no_bones);
													struct BBDebugStm __stmt_2 = {0x540807cbd0b3aa62, 792, 0};
													bbOnDebugEnterStm(&__stmt_2);
													((struct openb3d_openb3dcore_TMesh_obj*)bbNullObjectTest((BBObject*)bbt_mesh))->clas->m_MeshArraySet_iiTObject((struct openb3d_openb3dcore_TMesh_obj*)bbt_mesh,4,(bbt_bo_no_bones-1),(BBOBJECT)bbt_bo_bone);
													struct BBDebugStm __stmt_3 = {0x540807cbd0b3aa62, 794, 0};
													bbOnDebugEnterStm(&__stmt_3);
													bbt_last_ent=(struct openb3d_openb3dcore_TEntity_obj*)((struct openb3d_openb3dcore_TEntity_obj*)bbObjectDowncast((BBOBJECT)bbt_bo_bone,(BBClass*)&openb3d_openb3dcore_TEntity));
													bbOnDebugLeaveScope();
												}
												bbOnDebugLeaveScope();
											}
											bbOnDebugLeaveScope();
										}else{
											struct BBDebugScope __scope = {
												BBDEBUGSCOPE_LOCALBLOCK,
												0,
												{
													{
														BBDEBUGDECL_END
													}
												}
											};
											bbOnDebugEnterScope((BBDebugScope *)&__scope);
											struct BBDebugStm __stmt_0 = {0x540807cbd0b3aa62, 800, 0};
											bbOnDebugEnterStm(&__stmt_0);
											brl_stream_ReadByte((struct brl_stream_TStream_obj*)bbt_file);
											bbOnDebugLeaveScope();
										}
										bbOnDebugLeaveScope();
									}
									bbOnDebugLeaveScope();
								}
								bbOnDebugLeaveScope();
							}
							bbOnDebugLeaveScope();
						}
						bbOnDebugLeaveScope();
					}
					bbOnDebugLeaveScope();
				}
				bbOnDebugLeaveScope();
			}
			bbOnDebugLeaveScope();
		}
		bbOnDebugLeaveScope();
	}while(!(brl_stream_Eof((struct brl_stream_TStream_obj*)bbt_file)==1));
	struct BBDebugStm __stmt_124 = {0x540807cbd0b3aa62, 805, 0};
	bbOnDebugEnterStm(&__stmt_124);
	if(openb3d_openb3dcore_TGlobal3D_Log_B3D!=0){
		struct brl_linkedlist_TList_obj* bbt_temp_list=(struct brl_linkedlist_TList_obj*)((struct brl_linkedlist_TList_obj*)&bbNullObject);
		BBINT bbt_count_children=0;
		struct BBDebugScope_2 __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_LOCAL,
					"temp_list",
					":TList",
					.var_address=&bbt_temp_list
				},
				{
					BBDEBUGDECL_LOCAL,
					"count_children",
					"i",
					.var_address=&bbt_count_children
				},
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x540807cbd0b3aa62, 806, 0};
		bbOnDebugEnterStm(&__stmt_0);
		bbt_temp_list=(struct brl_linkedlist_TList_obj*)brl_linkedlist_CreateList();
		struct BBDebugStm __stmt_1 = {0x540807cbd0b3aa62, 807, 0};
		bbOnDebugEnterStm(&__stmt_1);
		if(((BBOBJECT)bbt_root_ent)!=&bbNullObject){
			struct BBDebugScope __scope = {
				BBDEBUGSCOPE_LOCALBLOCK,
				0,
				{
					{
						BBDEBUGDECL_END
					}
				}
			};
			bbOnDebugEnterScope((BBDebugScope *)&__scope);
			struct BBDebugStm __stmt_0 = {0x540807cbd0b3aa62, 807, 0};
			bbOnDebugEnterStm(&__stmt_0);
			brl_linkedlist_ListAddLast((struct brl_linkedlist_TList_obj*)bbt_temp_list,(BBOBJECT)((struct openb3d_openb3dcore_TMesh_obj*)bbObjectDowncast((BBOBJECT)bbt_root_ent,(BBClass*)&openb3d_openb3dcore_TMesh)));
			bbOnDebugLeaveScope();
		}
		struct BBDebugStm __stmt_2 = {0x540807cbd0b3aa62, 808, 0};
		bbOnDebugEnterStm(&__stmt_2);
		bbt_count_children=openb3d_openb3dcore_TEntity_CountAllChildren_i_TTEntityi((struct openb3d_openb3dcore_TEntity_obj*)((struct openb3d_openb3dcore_TEntity_obj*)bbObjectDowncast((BBOBJECT)((struct openb3d_openb3dcore_TMesh_obj*)bbObjectDowncast((BBOBJECT)bbt_root_ent,(BBClass*)&openb3d_openb3dcore_TMesh)),(BBClass*)&openb3d_openb3dcore_TEntity)),0);
		struct BBDebugStm __stmt_3 = {0x540807cbd0b3aa62, 810, 0};
		bbOnDebugEnterStm(&__stmt_3);
		{
			BBINT bbt_child_no=1;
			BBINT bbt_34=bbt_count_children;
			for(;(bbt_child_no<=bbt_34);bbt_child_no=(bbt_child_no+1)){
				BBINT bbt_count=0;
				struct openb3d_openb3dcore_TEntity_obj* bbt_child=(struct openb3d_openb3dcore_TEntity_obj*)((struct openb3d_openb3dcore_TEntity_obj*)&bbNullObject);
				struct openb3d_openb3dcore_TMesh_obj* bbt_child_mesh=(struct openb3d_openb3dcore_TMesh_obj*)((struct openb3d_openb3dcore_TMesh_obj*)&bbNullObject);
				struct BBDebugScope_4 __scope = {
					BBDEBUGSCOPE_LOCALBLOCK,
					0,
					{
						{
							BBDEBUGDECL_LOCAL,
							"child_no",
							"i",
							.var_address=&bbt_child_no
						},
						{
							BBDEBUGDECL_LOCAL,
							"count",
							"i",
							.var_address=&bbt_count
						},
						{
							BBDEBUGDECL_LOCAL,
							"child",
							":TEntity",
							.var_address=&bbt_child
						},
						{
							BBDEBUGDECL_LOCAL,
							"child_mesh",
							":TMesh",
							.var_address=&bbt_child_mesh
						},
						{
							BBDEBUGDECL_END
						}
					}
				};
				bbOnDebugEnterScope((BBDebugScope *)&__scope);
				struct BBDebugStm __stmt_0 = {0x540807cbd0b3aa62, 811, 0};
				bbOnDebugEnterStm(&__stmt_0);
				bbt_count=0;
				struct BBDebugStm __stmt_1 = {0x540807cbd0b3aa62, 812, 0};
				bbOnDebugEnterStm(&__stmt_1);
				struct openb3d_openb3dcore_TMesh_obj* bbt_35;
				bbt_child=(struct openb3d_openb3dcore_TEntity_obj*)(((struct openb3d_openb3dcore_TMesh_obj*)((struct openb3d_openb3dcore_TMesh_obj*)bbNullObjectTest((BBObject*)(bbt_35 = ((struct openb3d_openb3dcore_TMesh_obj*)bbObjectDowncast((BBOBJECT)bbt_root_ent,(BBClass*)&openb3d_openb3dcore_TMesh))))))->clas)->m_GetChildFromAll_iviTTEntity((struct openb3d_openb3dcore_TEntity_obj*)bbt_35,bbt_child_no,(&bbt_count),(struct openb3d_openb3dcore_TEntity_obj*)&bbNullObject);
				struct BBDebugStm __stmt_2 = {0x540807cbd0b3aa62, 813, 0};
				bbOnDebugEnterStm(&__stmt_2);
				bbt_child_mesh=(struct openb3d_openb3dcore_TMesh_obj*)((struct openb3d_openb3dcore_TMesh_obj*)bbObjectDowncast((BBOBJECT)bbt_child,(BBClass*)&openb3d_openb3dcore_TMesh));
				struct BBDebugStm __stmt_3 = {0x540807cbd0b3aa62, 814, 0};
				bbOnDebugEnterStm(&__stmt_3);
				if(((BBOBJECT)bbt_child_mesh)!=&bbNullObject){
					struct BBDebugScope __scope = {
						BBDEBUGSCOPE_LOCALBLOCK,
						0,
						{
							{
								BBDEBUGDECL_END
							}
						}
					};
					bbOnDebugEnterScope((BBDebugScope *)&__scope);
					struct BBDebugStm __stmt_0 = {0x540807cbd0b3aa62, 814, 0};
					bbOnDebugEnterStm(&__stmt_0);
					brl_linkedlist_ListAddLast((struct brl_linkedlist_TList_obj*)bbt_temp_list,(BBOBJECT)bbt_child);
					bbOnDebugLeaveScope();
				}
				bbOnDebugLeaveScope();
			}
		}
		struct BBDebugStm __stmt_4 = {0x540807cbd0b3aa62, 817, 0};
		bbOnDebugEnterStm(&__stmt_4);
		struct brl_linkedlist_TListEnum_obj* bbt_36=(struct brl_linkedlist_TListEnum_obj*)((struct brl_linkedlist_TList_obj*)bbNullObjectTest((BBObject*)bbt_temp_list))->clas->m_ObjectEnumerator((struct brl_linkedlist_TList_obj*)bbt_temp_list);
		while(((struct brl_linkedlist_TListEnum_obj*)bbNullObjectTest((BBObject*)bbt_36))->clas->m_HasNext((struct brl_linkedlist_TListEnum_obj*)bbt_36)!=0){
			struct openb3d_openb3dcore_TMesh_obj* bbt_child_mesh2=(struct openb3d_openb3dcore_TMesh_obj*)((struct openb3d_openb3dcore_TMesh_obj*)&bbNullObject);
			struct BBDebugScope_1 __scope = {
				BBDEBUGSCOPE_LOCALBLOCK,
				0,
				{
					{
						BBDEBUGDECL_LOCAL,
						"child_mesh",
						":TMesh",
						.var_address=&bbt_child_mesh2
					},
					{
						BBDEBUGDECL_END
					}
				}
			};
			bbOnDebugEnterScope((BBDebugScope *)&__scope);
			bbt_child_mesh2=(struct openb3d_openb3dcore_TMesh_obj*)((struct openb3d_openb3dcore_TMesh_obj*)bbObjectDowncast((BBOBJECT)((struct brl_linkedlist_TListEnum_obj*)bbNullObjectTest((BBObject*)bbt_36))->clas->m_NextObject((struct brl_linkedlist_TListEnum_obj*)bbt_36),(BBClass*)&openb3d_openb3dcore_TMesh));
			if(((BBOBJECT)bbt_child_mesh2)==&bbNullObject){
				bbOnDebugLeaveScope();
				continue;
			}
			struct BBDebugStm __stmt_0 = {0x540807cbd0b3aa62, 818, 0};
			bbOnDebugEnterStm(&__stmt_0);
			if(openb3d_openb3dcore_TGlobal3D_Log_B3D!=0){
				struct BBDebugScope __scope = {
					BBDEBUGSCOPE_LOCALBLOCK,
					0,
					{
						{
							BBDEBUGDECL_END
						}
					}
				};
				bbOnDebugEnterScope((BBDebugScope *)&__scope);
				struct BBDebugStm __stmt_0 = {0x540807cbd0b3aa62, 818, 0};
				bbOnDebugEnterStm(&__stmt_0);
				brl_blitz_DebugLog(bbStringConcat(((BBString*)&_s478),((struct openb3d_openb3dcore_TMesh_obj*)bbNullObjectTest((BBObject*)bbt_child_mesh2))->clas->m_EntityName((struct openb3d_openb3dcore_TEntity_obj*)bbt_child_mesh2)));
				bbOnDebugLeaveScope();
			}
			struct BBDebugStm __stmt_1 = {0x540807cbd0b3aa62, 819, 0};
			bbOnDebugEnterStm(&__stmt_1);
			struct brl_linkedlist_TList_obj* bbt_38;
			struct brl_linkedlist_TListEnum_obj* bbt_37=(struct brl_linkedlist_TListEnum_obj*)(((struct brl_linkedlist_TList_obj*)((struct brl_linkedlist_TList_obj*)bbNullObjectTest((BBObject*)(bbt_38 = ((struct openb3d_openb3dcore_TMesh_obj*)bbNullObjectTest((BBObject*)bbt_child_mesh2))->_openb3d_openb3dcore_tmesh_surf_list ))))->clas)->m_ObjectEnumerator((struct brl_linkedlist_TList_obj*)bbt_38);
			while(((struct brl_linkedlist_TListEnum_obj*)bbNullObjectTest((BBObject*)bbt_37))->clas->m_HasNext((struct brl_linkedlist_TListEnum_obj*)bbt_37)!=0){
				struct openb3d_openb3dcore_TSurface_obj* bbt_surf3=(struct openb3d_openb3dcore_TSurface_obj*)((struct openb3d_openb3dcore_TSurface_obj*)&bbNullObject);
				struct BBDebugScope_1 __scope = {
					BBDEBUGSCOPE_LOCALBLOCK,
					0,
					{
						{
							BBDEBUGDECL_LOCAL,
							"surf",
							":TSurface",
							.var_address=&bbt_surf3
						},
						{
							BBDEBUGDECL_END
						}
					}
				};
				bbOnDebugEnterScope((BBDebugScope *)&__scope);
				bbt_surf3=(struct openb3d_openb3dcore_TSurface_obj*)((struct openb3d_openb3dcore_TSurface_obj*)bbObjectDowncast((BBOBJECT)((struct brl_linkedlist_TListEnum_obj*)bbNullObjectTest((BBObject*)bbt_37))->clas->m_NextObject((struct brl_linkedlist_TListEnum_obj*)bbt_37),(BBClass*)&openb3d_openb3dcore_TSurface));
				if(((BBOBJECT)bbt_surf3)==&bbNullObject){
					bbOnDebugLeaveScope();
					continue;
				}
				struct BBDebugStm __stmt_0 = {0x540807cbd0b3aa62, 820, 0};
				bbOnDebugEnterStm(&__stmt_0);
				if(openb3d_openb3dcore_TGlobal3D_Log_B3D!=0){
					struct BBDebugScope __scope = {
						BBDEBUGSCOPE_LOCALBLOCK,
						0,
						{
							{
								BBDEBUGDECL_END
							}
						}
					};
					bbOnDebugEnterScope((BBDebugScope *)&__scope);
					struct BBDebugStm __stmt_0 = {0x540807cbd0b3aa62, 820, 0};
					bbOnDebugEnterStm(&__stmt_0);
					brl_blitz_DebugLog(bbStringConcat(bbStringConcat(bbStringConcat(((BBString*)&_s479),bbStringFromInt(((struct openb3d_openb3dcore_TSurface_obj*)bbNullObjectTest((BBObject*)bbt_surf3))->_openb3d_openb3dcore_tsurface_no_verts [0])),((BBString*)&_s480)),bbStringFromInt(((struct openb3d_openb3dcore_TSurface_obj*)bbNullObjectTest((BBObject*)bbt_surf3))->_openb3d_openb3dcore_tsurface_no_tris [0])));
					bbOnDebugLeaveScope();
				}
				bbOnDebugLeaveScope();
			}
			bbOnDebugLeaveScope();
		}
		bbOnDebugLeaveScope();
	}
	struct BBDebugStm __stmt_125 = {0x540807cbd0b3aa62, 825, 0};
	bbOnDebugEnterStm(&__stmt_125);
	brl_filesystem_ChangeDir(bbt_cd);
	struct BBDebugStm __stmt_126 = {0x540807cbd0b3aa62, 826, 0};
	bbOnDebugEnterStm(&__stmt_126);
	if(openb3d_openb3dcore_TGlobal3D_Log_B3D!=0){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x540807cbd0b3aa62, 826, 0};
		bbOnDebugEnterStm(&__stmt_0);
		brl_blitz_DebugLog((BBString*)&bbEmptyString);
		bbOnDebugLeaveScope();
	}
	struct BBDebugStm __stmt_127 = {0x540807cbd0b3aa62, 827, 0};
	bbOnDebugEnterStm(&__stmt_127);
	bbOnDebugLeaveScope();
	return (struct openb3d_openb3dcore_TMesh_obj*)((struct openb3d_openb3dcore_TMesh_obj*)bbObjectDowncast((BBOBJECT)bbt_root_ent,(BBClass*)&openb3d_openb3dcore_TMesh));
}
BBINT openb3d_openb3dcore_TB3D_TrimVerts_i_TTSurface(struct openb3d_openb3dcore_TSurface_obj* bbt_surf){
	struct BBDebugScope_1 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"TrimVerts",
		{
			{
				BBDEBUGDECL_LOCAL,
				"surf",
				":TSurface",
				.var_address=&bbt_surf
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x540807cbd0b3aa62, 835, 0};
	bbOnDebugEnterStm(&__stmt_0);
	ModelTrimVerts_(openb3d_openb3dcore_TSurface_GetInstance_pb_TTSurface((struct openb3d_openb3dcore_TSurface_obj*)bbt_surf));
	struct BBDebugStm __stmt_1 = {0x540807cbd0b3aa62, 837, 0};
	bbOnDebugEnterStm(&__stmt_1);
	((struct openb3d_openb3dcore_TSurface_obj*)bbNullObjectTest((BBObject*)bbt_surf))->_openb3d_openb3dcore_tsurface_vert_coords =SurfaceFloat_(openb3d_openb3dcore_TSurface_GetInstance_pb_TTSurface((struct openb3d_openb3dcore_TSurface_obj*)bbt_surf),3);
	struct BBDebugStm __stmt_2 = {0x540807cbd0b3aa62, 838, 0};
	bbOnDebugEnterStm(&__stmt_2);
	((struct openb3d_openb3dcore_TSurface_obj*)bbNullObjectTest((BBObject*)bbt_surf))->_openb3d_openb3dcore_tsurface_vert_norm =SurfaceFloat_(openb3d_openb3dcore_TSurface_GetInstance_pb_TTSurface((struct openb3d_openb3dcore_TSurface_obj*)bbt_surf),4);
	struct BBDebugStm __stmt_3 = {0x540807cbd0b3aa62, 839, 0};
	bbOnDebugEnterStm(&__stmt_3);
	((struct openb3d_openb3dcore_TSurface_obj*)bbNullObjectTest((BBObject*)bbt_surf))->_openb3d_openb3dcore_tsurface_vert_tex_coords0 =SurfaceFloat_(openb3d_openb3dcore_TSurface_GetInstance_pb_TTSurface((struct openb3d_openb3dcore_TSurface_obj*)bbt_surf),5);
	struct BBDebugStm __stmt_4 = {0x540807cbd0b3aa62, 840, 0};
	bbOnDebugEnterStm(&__stmt_4);
	((struct openb3d_openb3dcore_TSurface_obj*)bbNullObjectTest((BBObject*)bbt_surf))->_openb3d_openb3dcore_tsurface_vert_tex_coords1 =SurfaceFloat_(openb3d_openb3dcore_TSurface_GetInstance_pb_TTSurface((struct openb3d_openb3dcore_TSurface_obj*)bbt_surf),6);
	struct BBDebugStm __stmt_5 = {0x540807cbd0b3aa62, 841, 0};
	bbOnDebugEnterStm(&__stmt_5);
	((struct openb3d_openb3dcore_TSurface_obj*)bbNullObjectTest((BBObject*)bbt_surf))->_openb3d_openb3dcore_tsurface_vert_col =SurfaceFloat_(openb3d_openb3dcore_TSurface_GetInstance_pb_TTSurface((struct openb3d_openb3dcore_TSurface_obj*)bbt_surf),7);
	struct BBDebugStm __stmt_6 = {0x540807cbd0b3aa62, 842, 0};
	bbOnDebugEnterStm(&__stmt_6);
	((struct openb3d_openb3dcore_TSurface_obj*)bbNullObjectTest((BBObject*)bbt_surf))->_openb3d_openb3dcore_tsurface_tris =SurfaceUShort_(openb3d_openb3dcore_TSurface_GetInstance_pb_TTSurface((struct openb3d_openb3dcore_TSurface_obj*)bbt_surf),8);
	bbOnDebugLeaveScope();
	return 0;
}
BBSTRING openb3d_openb3dcore_TB3D_b3dReadString_S_vTTStream(struct brl_stream_TStream_obj** bbt_file){
	BBSTRING bbt_t=(&bbEmptyString);
	struct BBDebugScope_2 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"b3dReadString",
		{
			{
				BBDEBUGDECL_VARPARAM,
				"file",
				":TStream",
				.var_address=&bbt_file
			},
			{
				BBDEBUGDECL_LOCAL,
				"t",
				"$",
				.var_address=&bbt_t
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x540807cbd0b3aa62, 848, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbt_t=((BBString*)&bbEmptyString);
	struct BBDebugStm __stmt_1 = {0x540807cbd0b3aa62, 853, 0};
	bbOnDebugEnterStm(&__stmt_1);
	do{
		BBINT bbt_ch=0;
		struct BBDebugScope_1 __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_LOCAL,
					"ch",
					"i",
					.var_address=&bbt_ch
				},
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x540807cbd0b3aa62, 850, 0};
		bbOnDebugEnterStm(&__stmt_0);
		bbt_ch=brl_stream_ReadByte((struct brl_stream_TStream_obj*)*bbt_file);
		struct BBDebugStm __stmt_1 = {0x540807cbd0b3aa62, 851, 0};
		bbOnDebugEnterStm(&__stmt_1);
		if(bbt_ch==0){
			struct BBDebugScope __scope = {
				BBDEBUGSCOPE_LOCALBLOCK,
				0,
				{
					{
						BBDEBUGDECL_END
					}
				}
			};
			bbOnDebugEnterScope((BBDebugScope *)&__scope);
			struct BBDebugStm __stmt_0 = {0x540807cbd0b3aa62, 851, 0};
			bbOnDebugEnterStm(&__stmt_0);
			bbOnDebugLeaveScope();
			bbOnDebugLeaveScope();
			bbOnDebugLeaveScope();
			return bbt_t;
		}
		struct BBDebugStm __stmt_2 = {0x540807cbd0b3aa62, 852, 0};
		bbOnDebugEnterStm(&__stmt_2);
		bbt_t=bbStringConcat(bbt_t,bbStringFromChar(bbt_ch));
		bbOnDebugLeaveScope();
	}while(!(0));
}
BBSTRING openb3d_openb3dcore_TB3D_ReadTag_S_TTStream(struct brl_stream_TStream_obj* bbt_file){
	BBINT bbt_pos=0;
	BBSTRING bbt_tag=(&bbEmptyString);
	struct BBDebugScope_3 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"ReadTag",
		{
			{
				BBDEBUGDECL_LOCAL,
				"file",
				":TStream",
				.var_address=&bbt_file
			},
			{
				BBDEBUGDECL_LOCAL,
				"pos",
				"i",
				.var_address=&bbt_pos
			},
			{
				BBDEBUGDECL_LOCAL,
				"tag",
				"$",
				.var_address=&bbt_tag
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x540807cbd0b3aa62, 859, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbt_pos=((BBINT)brl_stream_StreamPos((struct brl_stream_TStream_obj*)bbt_file));
	struct BBDebugStm __stmt_1 = {0x540807cbd0b3aa62, 860, 0};
	bbOnDebugEnterStm(&__stmt_1);
	bbt_tag=((BBString*)&bbEmptyString);
	struct BBDebugStm __stmt_2 = {0x540807cbd0b3aa62, 862, 0};
	bbOnDebugEnterStm(&__stmt_2);
	{
		BBINT bbt_i=1;
		for(;(bbt_i<=4);bbt_i=(bbt_i+1)){
			struct BBDebugScope_1 __scope = {
				BBDEBUGSCOPE_LOCALBLOCK,
				0,
				{
					{
						BBDEBUGDECL_LOCAL,
						"i",
						"i",
						.var_address=&bbt_i
					},
					{
						BBDEBUGDECL_END
					}
				}
			};
			bbOnDebugEnterScope((BBDebugScope *)&__scope);
			struct BBDebugStm __stmt_0 = {0x540807cbd0b3aa62, 863, 0};
			bbOnDebugEnterStm(&__stmt_0);
			if(brl_stream_StreamPos((struct brl_stream_TStream_obj*)bbt_file)<brl_stream_StreamSize((struct brl_stream_TStream_obj*)bbt_file)){
				BBINT bbt_rb=0;
				struct BBDebugScope_1 __scope = {
					BBDEBUGSCOPE_LOCALBLOCK,
					0,
					{
						{
							BBDEBUGDECL_LOCAL,
							"rb",
							"i",
							.var_address=&bbt_rb
						},
						{
							BBDEBUGDECL_END
						}
					}
				};
				bbOnDebugEnterScope((BBDebugScope *)&__scope);
				struct BBDebugStm __stmt_0 = {0x540807cbd0b3aa62, 864, 0};
				bbOnDebugEnterStm(&__stmt_0);
				bbt_rb=brl_stream_ReadByte((struct brl_stream_TStream_obj*)bbt_file);
				struct BBDebugStm __stmt_1 = {0x540807cbd0b3aa62, 865, 0};
				bbOnDebugEnterStm(&__stmt_1);
				bbt_tag=bbStringConcat(bbt_tag,bbStringFromChar(bbt_rb));
				bbOnDebugLeaveScope();
			}
			bbOnDebugLeaveScope();
		}
	}
	struct BBDebugStm __stmt_3 = {0x540807cbd0b3aa62, 869, 0};
	bbOnDebugEnterStm(&__stmt_3);
	brl_stream_SeekStream((struct brl_stream_TStream_obj*)bbt_file,((BBLONG)bbt_pos),0);
	struct BBDebugStm __stmt_4 = {0x540807cbd0b3aa62, 870, 0};
	bbOnDebugEnterStm(&__stmt_4);
	bbOnDebugLeaveScope();
	return bbt_tag;
}
BBINT openb3d_openb3dcore_TB3D_NewTag_i_S(BBSTRING bbt_tag){
	struct BBDebugScope_1 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"NewTag",
		{
			{
				BBDEBUGDECL_LOCAL,
				"tag",
				"$",
				.var_address=&bbt_tag
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x540807cbd0b3aa62, 876, 0};
	bbOnDebugEnterStm(&__stmt_0);
	BBSTRING bbt_=bbt_tag;
	struct BBDebugStm __stmt_1 = {0x540807cbd0b3aa62, 877, 0};
	bbOnDebugEnterStm(&__stmt_1);
	if(bbStringEquals(bbt_, ((BBString*)&_s444))==1){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x540807cbd0b3aa62, 877, 0};
		bbOnDebugEnterStm(&__stmt_0);
		bbOnDebugLeaveScope();
		bbOnDebugLeaveScope();
		return 1;
	}else{
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x540807cbd0b3aa62, 878, 0};
		bbOnDebugEnterStm(&__stmt_0);
		if(bbStringEquals(bbt_, ((BBString*)&_s453))==1){
			struct BBDebugScope __scope = {
				BBDEBUGSCOPE_LOCALBLOCK,
				0,
				{
					{
						BBDEBUGDECL_END
					}
				}
			};
			bbOnDebugEnterScope((BBDebugScope *)&__scope);
			struct BBDebugStm __stmt_0 = {0x540807cbd0b3aa62, 878, 0};
			bbOnDebugEnterStm(&__stmt_0);
			bbOnDebugLeaveScope();
			bbOnDebugLeaveScope();
			bbOnDebugLeaveScope();
			return 1;
		}else{
			struct BBDebugScope __scope = {
				BBDEBUGSCOPE_LOCALBLOCK,
				0,
				{
					{
						BBDEBUGDECL_END
					}
				}
			};
			bbOnDebugEnterScope((BBDebugScope *)&__scope);
			struct BBDebugStm __stmt_0 = {0x540807cbd0b3aa62, 879, 0};
			bbOnDebugEnterStm(&__stmt_0);
			if(bbStringEquals(bbt_, ((BBString*)&_s440))==1){
				struct BBDebugScope __scope = {
					BBDEBUGSCOPE_LOCALBLOCK,
					0,
					{
						{
							BBDEBUGDECL_END
						}
					}
				};
				bbOnDebugEnterScope((BBDebugScope *)&__scope);
				struct BBDebugStm __stmt_0 = {0x540807cbd0b3aa62, 879, 0};
				bbOnDebugEnterStm(&__stmt_0);
				bbOnDebugLeaveScope();
				bbOnDebugLeaveScope();
				bbOnDebugLeaveScope();
				bbOnDebugLeaveScope();
				return 1;
			}else{
				struct BBDebugScope __scope = {
					BBDEBUGSCOPE_LOCALBLOCK,
					0,
					{
						{
							BBDEBUGDECL_END
						}
					}
				};
				bbOnDebugEnterScope((BBDebugScope *)&__scope);
				struct BBDebugStm __stmt_0 = {0x540807cbd0b3aa62, 880, 0};
				bbOnDebugEnterStm(&__stmt_0);
				if(bbStringEquals(bbt_, ((BBString*)&_s460))==1){
					struct BBDebugScope __scope = {
						BBDEBUGSCOPE_LOCALBLOCK,
						0,
						{
							{
								BBDEBUGDECL_END
							}
						}
					};
					bbOnDebugEnterScope((BBDebugScope *)&__scope);
					struct BBDebugStm __stmt_0 = {0x540807cbd0b3aa62, 880, 0};
					bbOnDebugEnterStm(&__stmt_0);
					bbOnDebugLeaveScope();
					bbOnDebugLeaveScope();
					bbOnDebugLeaveScope();
					bbOnDebugLeaveScope();
					bbOnDebugLeaveScope();
					return 1;
				}else{
					struct BBDebugScope __scope = {
						BBDEBUGSCOPE_LOCALBLOCK,
						0,
						{
							{
								BBDEBUGDECL_END
							}
						}
					};
					bbOnDebugEnterScope((BBDebugScope *)&__scope);
					struct BBDebugStm __stmt_0 = {0x540807cbd0b3aa62, 881, 0};
					bbOnDebugEnterStm(&__stmt_0);
					if(bbStringEquals(bbt_, ((BBString*)&_s462))==1){
						struct BBDebugScope __scope = {
							BBDEBUGSCOPE_LOCALBLOCK,
							0,
							{
								{
									BBDEBUGDECL_END
								}
							}
						};
						bbOnDebugEnterScope((BBDebugScope *)&__scope);
						struct BBDebugStm __stmt_0 = {0x540807cbd0b3aa62, 881, 0};
						bbOnDebugEnterStm(&__stmt_0);
						bbOnDebugLeaveScope();
						bbOnDebugLeaveScope();
						bbOnDebugLeaveScope();
						bbOnDebugLeaveScope();
						bbOnDebugLeaveScope();
						bbOnDebugLeaveScope();
						return 1;
					}else{
						struct BBDebugScope __scope = {
							BBDEBUGSCOPE_LOCALBLOCK,
							0,
							{
								{
									BBDEBUGDECL_END
								}
							}
						};
						bbOnDebugEnterScope((BBDebugScope *)&__scope);
						struct BBDebugStm __stmt_0 = {0x540807cbd0b3aa62, 882, 0};
						bbOnDebugEnterStm(&__stmt_0);
						if(bbStringEquals(bbt_, ((BBString*)&_s464))==1){
							struct BBDebugScope __scope = {
								BBDEBUGSCOPE_LOCALBLOCK,
								0,
								{
									{
										BBDEBUGDECL_END
									}
								}
							};
							bbOnDebugEnterScope((BBDebugScope *)&__scope);
							struct BBDebugStm __stmt_0 = {0x540807cbd0b3aa62, 882, 0};
							bbOnDebugEnterStm(&__stmt_0);
							bbOnDebugLeaveScope();
							bbOnDebugLeaveScope();
							bbOnDebugLeaveScope();
							bbOnDebugLeaveScope();
							bbOnDebugLeaveScope();
							bbOnDebugLeaveScope();
							bbOnDebugLeaveScope();
							return 1;
						}else{
							struct BBDebugScope __scope = {
								BBDEBUGSCOPE_LOCALBLOCK,
								0,
								{
									{
										BBDEBUGDECL_END
									}
								}
							};
							bbOnDebugEnterScope((BBDebugScope *)&__scope);
							struct BBDebugStm __stmt_0 = {0x540807cbd0b3aa62, 883, 0};
							bbOnDebugEnterStm(&__stmt_0);
							if(bbStringEquals(bbt_, ((BBString*)&_s471))==1){
								struct BBDebugScope __scope = {
									BBDEBUGSCOPE_LOCALBLOCK,
									0,
									{
										{
											BBDEBUGDECL_END
										}
									}
								};
								bbOnDebugEnterScope((BBDebugScope *)&__scope);
								struct BBDebugStm __stmt_0 = {0x540807cbd0b3aa62, 883, 0};
								bbOnDebugEnterStm(&__stmt_0);
								bbOnDebugLeaveScope();
								bbOnDebugLeaveScope();
								bbOnDebugLeaveScope();
								bbOnDebugLeaveScope();
								bbOnDebugLeaveScope();
								bbOnDebugLeaveScope();
								bbOnDebugLeaveScope();
								bbOnDebugLeaveScope();
								return 1;
							}else{
								struct BBDebugScope __scope = {
									BBDEBUGSCOPE_LOCALBLOCK,
									0,
									{
										{
											BBDEBUGDECL_END
										}
									}
								};
								bbOnDebugEnterScope((BBDebugScope *)&__scope);
								struct BBDebugStm __stmt_0 = {0x540807cbd0b3aa62, 884, 0};
								bbOnDebugEnterStm(&__stmt_0);
								if(bbStringEquals(bbt_, ((BBString*)&_s475))==1){
									struct BBDebugScope __scope = {
										BBDEBUGSCOPE_LOCALBLOCK,
										0,
										{
											{
												BBDEBUGDECL_END
											}
										}
									};
									bbOnDebugEnterScope((BBDebugScope *)&__scope);
									struct BBDebugStm __stmt_0 = {0x540807cbd0b3aa62, 884, 0};
									bbOnDebugEnterStm(&__stmt_0);
									bbOnDebugLeaveScope();
									bbOnDebugLeaveScope();
									bbOnDebugLeaveScope();
									bbOnDebugLeaveScope();
									bbOnDebugLeaveScope();
									bbOnDebugLeaveScope();
									bbOnDebugLeaveScope();
									bbOnDebugLeaveScope();
									bbOnDebugLeaveScope();
									return 1;
								}else{
									struct BBDebugScope __scope = {
										BBDEBUGSCOPE_LOCALBLOCK,
										0,
										{
											{
												BBDEBUGDECL_END
											}
										}
									};
									bbOnDebugEnterScope((BBDebugScope *)&__scope);
									struct BBDebugStm __stmt_0 = {0x540807cbd0b3aa62, 885, 0};
									bbOnDebugEnterStm(&__stmt_0);
									if(bbStringEquals(bbt_, ((BBString*)&_s477))==1){
										struct BBDebugScope __scope = {
											BBDEBUGSCOPE_LOCALBLOCK,
											0,
											{
												{
													BBDEBUGDECL_END
												}
											}
										};
										bbOnDebugEnterScope((BBDebugScope *)&__scope);
										struct BBDebugStm __stmt_0 = {0x540807cbd0b3aa62, 885, 0};
										bbOnDebugEnterStm(&__stmt_0);
										bbOnDebugLeaveScope();
										bbOnDebugLeaveScope();
										bbOnDebugLeaveScope();
										bbOnDebugLeaveScope();
										bbOnDebugLeaveScope();
										bbOnDebugLeaveScope();
										bbOnDebugLeaveScope();
										bbOnDebugLeaveScope();
										bbOnDebugLeaveScope();
										bbOnDebugLeaveScope();
										return 1;
									}else{
										struct BBDebugScope __scope = {
											BBDEBUGSCOPE_LOCALBLOCK,
											0,
											{
												{
													BBDEBUGDECL_END
												}
											}
										};
										bbOnDebugEnterScope((BBDebugScope *)&__scope);
										struct BBDebugStm __stmt_0 = {0x540807cbd0b3aa62, 886, 0};
										bbOnDebugEnterStm(&__stmt_0);
										bbOnDebugLeaveScope();
										bbOnDebugLeaveScope();
										bbOnDebugLeaveScope();
										bbOnDebugLeaveScope();
										bbOnDebugLeaveScope();
										bbOnDebugLeaveScope();
										bbOnDebugLeaveScope();
										bbOnDebugLeaveScope();
										bbOnDebugLeaveScope();
										bbOnDebugLeaveScope();
										return 0;
									}
								}
							}
						}
					}
				}
			}
		}
	}
}
BBSTRING openb3d_openb3dcore_TB3D_filepath;
struct BBDebugScope_8 openb3d_openb3dcore_TB3D_scope ={
	BBDEBUGSCOPE_USERTYPE,
	"TB3D",
	{
		{
			BBDEBUGDECL_GLOBAL,
			"filepath",
			"$",
			.var_address=(void*)&openb3d_openb3dcore_TB3D_filepath
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"New",
			"()i",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_TB3D_New
		},
		{
			BBDEBUGDECL_TYPEFUNCTION,
			"LoadAnimB3D",
			"(:Object,:TEntity):TMesh",
			.func_ptr=(BBFuncPtr)&openb3d_openb3dcore_TB3D_LoadAnimB3D_TTMesh_TObjectTTEntity
		},
		{
			BBDEBUGDECL_TYPEFUNCTION,
			"LoadAnimB3DFromStream",
			"(:TStream,:Object,:TEntity):TMesh",
			.func_ptr=(BBFuncPtr)&openb3d_openb3dcore_TB3D_LoadAnimB3DFromStream_TTMesh_TTStreamTObjectTTEntity
		},
		{
			BBDEBUGDECL_TYPEFUNCTION,
			"TrimVerts",
			"(:TSurface)i",
			.func_ptr=(BBFuncPtr)&openb3d_openb3dcore_TB3D_TrimVerts_i_TTSurface
		},
		{
			BBDEBUGDECL_TYPEFUNCTION,
			"b3dReadString",
			"(:TStream)$",
			.func_ptr=(BBFuncPtr)&openb3d_openb3dcore_TB3D_b3dReadString_S_vTTStream
		},
		{
			BBDEBUGDECL_TYPEFUNCTION,
			"ReadTag",
			"(:TStream)$",
			.func_ptr=(BBFuncPtr)&openb3d_openb3dcore_TB3D_ReadTag_S_TTStream
		},
		{
			BBDEBUGDECL_TYPEFUNCTION,
			"NewTag",
			"($)i",
			.func_ptr=(BBFuncPtr)&openb3d_openb3dcore_TB3D_NewTag_i_S
		},
		{
			BBDEBUGDECL_END
		}
	}
};
struct BBClass_openb3d_openb3dcore_TB3D openb3d_openb3dcore_TB3D={
	&bbObjectClass,
	bbObjectFree,
	(BBDebugScope*)&openb3d_openb3dcore_TB3D_scope,
	sizeof(struct openb3d_openb3dcore_TB3D_obj),
	(void (*)(BBOBJECT))_openb3d_openb3dcore_TB3D_New,
	bbObjectDtor,
	bbObjectToString,
	bbObjectCompare,
	bbObjectSendMessage,
	0,
	0,
	0
	,0
	,sizeof(void*)
	,openb3d_openb3dcore_TB3D_LoadAnimB3D_TTMesh_TObjectTTEntity
	,openb3d_openb3dcore_TB3D_LoadAnimB3DFromStream_TTMesh_TTStreamTObjectTTEntity
	,openb3d_openb3dcore_TB3D_TrimVerts_i_TTSurface
	,openb3d_openb3dcore_TB3D_b3dReadString_S_vTTStream
	,openb3d_openb3dcore_TB3D_ReadTag_S_TTStream
	,openb3d_openb3dcore_TB3D_NewTag_i_S
};

void _openb3d_openb3dcore_TMD2Vertex_New(struct openb3d_openb3dcore_TMD2Vertex_obj* o) {
	bbObjectCtor((BBOBJECT)o);
	o->clas = &openb3d_openb3dcore_TMD2Vertex;
	((struct openb3d_openb3dcore_TMD2Vertex_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmd2vertex_x = .00000000f;
	((struct openb3d_openb3dcore_TMD2Vertex_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmd2vertex_y = .00000000f;
	((struct openb3d_openb3dcore_TMD2Vertex_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmd2vertex_z = .00000000f;
	((struct openb3d_openb3dcore_TMD2Vertex_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmd2vertex_normalindex = 0;
}
struct BBDebugScope_5 openb3d_openb3dcore_TMD2Vertex_scope ={
	BBDEBUGSCOPE_USERTYPE,
	"TMD2Vertex",
	{
		{
			BBDEBUGDECL_FIELD,
			"x",
			"f",
			.field_offset=offsetof(struct openb3d_openb3dcore_TMD2Vertex_obj,_openb3d_openb3dcore_tmd2vertex_x)
		},
		{
			BBDEBUGDECL_FIELD,
			"y",
			"f",
			.field_offset=offsetof(struct openb3d_openb3dcore_TMD2Vertex_obj,_openb3d_openb3dcore_tmd2vertex_y)
		},
		{
			BBDEBUGDECL_FIELD,
			"z",
			"f",
			.field_offset=offsetof(struct openb3d_openb3dcore_TMD2Vertex_obj,_openb3d_openb3dcore_tmd2vertex_z)
		},
		{
			BBDEBUGDECL_FIELD,
			"normalindex",
			"b",
			.field_offset=offsetof(struct openb3d_openb3dcore_TMD2Vertex_obj,_openb3d_openb3dcore_tmd2vertex_normalindex)
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"New",
			"()i",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_TMD2Vertex_New
		},
		{
			BBDEBUGDECL_END
		}
	}
};
struct BBClass_openb3d_openb3dcore_TMD2Vertex openb3d_openb3dcore_TMD2Vertex={
	&bbObjectClass,
	bbObjectFree,
	(BBDebugScope*)&openb3d_openb3dcore_TMD2Vertex_scope,
	sizeof(struct openb3d_openb3dcore_TMD2Vertex_obj),
	(void (*)(BBOBJECT))_openb3d_openb3dcore_TMD2Vertex_New,
	bbObjectDtor,
	bbObjectToString,
	bbObjectCompare,
	bbObjectSendMessage,
	0,
	0,
	offsetof(struct openb3d_openb3dcore_TMD2Vertex_obj,_openb3d_openb3dcore_tmd2vertex_normalindex) - offsetof(struct openb3d_openb3dcore_TMD2Vertex_obj,_openb3d_openb3dcore_tmd2vertex_x) + sizeof(BBBYTE)
	,0
	,offsetof(struct openb3d_openb3dcore_TMD2Vertex_obj,_openb3d_openb3dcore_tmd2vertex_x)
};

void _openb3d_openb3dcore_TMD2Triangle_New(struct openb3d_openb3dcore_TMD2Triangle_obj* o) {
	bbObjectCtor((BBOBJECT)o);
	o->clas = &openb3d_openb3dcore_TMD2Triangle;
	((struct openb3d_openb3dcore_TMD2Triangle_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmd2triangle_v0 = 0;
	((struct openb3d_openb3dcore_TMD2Triangle_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmd2triangle_v1 = 0;
	((struct openb3d_openb3dcore_TMD2Triangle_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmd2triangle_v2 = 0;
	((struct openb3d_openb3dcore_TMD2Triangle_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmd2triangle_t0 = 0;
	((struct openb3d_openb3dcore_TMD2Triangle_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmd2triangle_t1 = 0;
	((struct openb3d_openb3dcore_TMD2Triangle_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmd2triangle_t2 = 0;
}
struct BBDebugScope_7 openb3d_openb3dcore_TMD2Triangle_scope ={
	BBDEBUGSCOPE_USERTYPE,
	"TMD2Triangle",
	{
		{
			BBDEBUGDECL_FIELD,
			"v0",
			"s",
			.field_offset=offsetof(struct openb3d_openb3dcore_TMD2Triangle_obj,_openb3d_openb3dcore_tmd2triangle_v0)
		},
		{
			BBDEBUGDECL_FIELD,
			"v1",
			"s",
			.field_offset=offsetof(struct openb3d_openb3dcore_TMD2Triangle_obj,_openb3d_openb3dcore_tmd2triangle_v1)
		},
		{
			BBDEBUGDECL_FIELD,
			"v2",
			"s",
			.field_offset=offsetof(struct openb3d_openb3dcore_TMD2Triangle_obj,_openb3d_openb3dcore_tmd2triangle_v2)
		},
		{
			BBDEBUGDECL_FIELD,
			"t0",
			"s",
			.field_offset=offsetof(struct openb3d_openb3dcore_TMD2Triangle_obj,_openb3d_openb3dcore_tmd2triangle_t0)
		},
		{
			BBDEBUGDECL_FIELD,
			"t1",
			"s",
			.field_offset=offsetof(struct openb3d_openb3dcore_TMD2Triangle_obj,_openb3d_openb3dcore_tmd2triangle_t1)
		},
		{
			BBDEBUGDECL_FIELD,
			"t2",
			"s",
			.field_offset=offsetof(struct openb3d_openb3dcore_TMD2Triangle_obj,_openb3d_openb3dcore_tmd2triangle_t2)
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"New",
			"()i",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_TMD2Triangle_New
		},
		{
			BBDEBUGDECL_END
		}
	}
};
struct BBClass_openb3d_openb3dcore_TMD2Triangle openb3d_openb3dcore_TMD2Triangle={
	&bbObjectClass,
	bbObjectFree,
	(BBDebugScope*)&openb3d_openb3dcore_TMD2Triangle_scope,
	sizeof(struct openb3d_openb3dcore_TMD2Triangle_obj),
	(void (*)(BBOBJECT))_openb3d_openb3dcore_TMD2Triangle_New,
	bbObjectDtor,
	bbObjectToString,
	bbObjectCompare,
	bbObjectSendMessage,
	0,
	0,
	offsetof(struct openb3d_openb3dcore_TMD2Triangle_obj,_openb3d_openb3dcore_tmd2triangle_t2) - offsetof(struct openb3d_openb3dcore_TMD2Triangle_obj,_openb3d_openb3dcore_tmd2triangle_v0) + sizeof(BBSHORT)
	,0
	,offsetof(struct openb3d_openb3dcore_TMD2Triangle_obj,_openb3d_openb3dcore_tmd2triangle_v0)
};

void _openb3d_openb3dcore_TMD2TexCoords_New(struct openb3d_openb3dcore_TMD2TexCoords_obj* o) {
	bbObjectCtor((BBOBJECT)o);
	o->clas = &openb3d_openb3dcore_TMD2TexCoords;
	((struct openb3d_openb3dcore_TMD2TexCoords_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmd2texcoords_u = .00000000f;
	((struct openb3d_openb3dcore_TMD2TexCoords_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmd2texcoords_v = .00000000f;
}
struct BBDebugScope_3 openb3d_openb3dcore_TMD2TexCoords_scope ={
	BBDEBUGSCOPE_USERTYPE,
	"TMD2TexCoords",
	{
		{
			BBDEBUGDECL_FIELD,
			"u",
			"f",
			.field_offset=offsetof(struct openb3d_openb3dcore_TMD2TexCoords_obj,_openb3d_openb3dcore_tmd2texcoords_u)
		},
		{
			BBDEBUGDECL_FIELD,
			"v",
			"f",
			.field_offset=offsetof(struct openb3d_openb3dcore_TMD2TexCoords_obj,_openb3d_openb3dcore_tmd2texcoords_v)
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"New",
			"()i",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_TMD2TexCoords_New
		},
		{
			BBDEBUGDECL_END
		}
	}
};
struct BBClass_openb3d_openb3dcore_TMD2TexCoords openb3d_openb3dcore_TMD2TexCoords={
	&bbObjectClass,
	bbObjectFree,
	(BBDebugScope*)&openb3d_openb3dcore_TMD2TexCoords_scope,
	sizeof(struct openb3d_openb3dcore_TMD2TexCoords_obj),
	(void (*)(BBOBJECT))_openb3d_openb3dcore_TMD2TexCoords_New,
	bbObjectDtor,
	bbObjectToString,
	bbObjectCompare,
	bbObjectSendMessage,
	0,
	0,
	offsetof(struct openb3d_openb3dcore_TMD2TexCoords_obj,_openb3d_openb3dcore_tmd2texcoords_v) - offsetof(struct openb3d_openb3dcore_TMD2TexCoords_obj,_openb3d_openb3dcore_tmd2texcoords_u) + sizeof(BBFLOAT)
	,0
	,offsetof(struct openb3d_openb3dcore_TMD2TexCoords_obj,_openb3d_openb3dcore_tmd2texcoords_u)
};

void _openb3d_openb3dcore_TMD2Frame_New(struct openb3d_openb3dcore_TMD2Frame_obj* o) {
	bbObjectCtor((BBOBJECT)o);
	o->clas = &openb3d_openb3dcore_TMD2Frame;
	((struct openb3d_openb3dcore_TMD2Frame_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmd2frame_name = ((BBString*)&bbEmptyString);
	((struct openb3d_openb3dcore_TMD2Frame_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmd2frame_sx = .00000000f;
	((struct openb3d_openb3dcore_TMD2Frame_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmd2frame_sy = .00000000f;
	((struct openb3d_openb3dcore_TMD2Frame_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmd2frame_sz = .00000000f;
	((struct openb3d_openb3dcore_TMD2Frame_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmd2frame_tx = .00000000f;
	((struct openb3d_openb3dcore_TMD2Frame_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmd2frame_ty = .00000000f;
	((struct openb3d_openb3dcore_TMD2Frame_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmd2frame_tz = .00000000f;
	((struct openb3d_openb3dcore_TMD2Frame_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmd2frame_verts = (&bbEmptyArray);
}
struct BBDebugScope_9 openb3d_openb3dcore_TMD2Frame_scope ={
	BBDEBUGSCOPE_USERTYPE,
	"TMD2Frame",
	{
		{
			BBDEBUGDECL_FIELD,
			"name",
			"$",
			.field_offset=offsetof(struct openb3d_openb3dcore_TMD2Frame_obj,_openb3d_openb3dcore_tmd2frame_name)
		},
		{
			BBDEBUGDECL_FIELD,
			"sx",
			"f",
			.field_offset=offsetof(struct openb3d_openb3dcore_TMD2Frame_obj,_openb3d_openb3dcore_tmd2frame_sx)
		},
		{
			BBDEBUGDECL_FIELD,
			"sy",
			"f",
			.field_offset=offsetof(struct openb3d_openb3dcore_TMD2Frame_obj,_openb3d_openb3dcore_tmd2frame_sy)
		},
		{
			BBDEBUGDECL_FIELD,
			"sz",
			"f",
			.field_offset=offsetof(struct openb3d_openb3dcore_TMD2Frame_obj,_openb3d_openb3dcore_tmd2frame_sz)
		},
		{
			BBDEBUGDECL_FIELD,
			"tx",
			"f",
			.field_offset=offsetof(struct openb3d_openb3dcore_TMD2Frame_obj,_openb3d_openb3dcore_tmd2frame_tx)
		},
		{
			BBDEBUGDECL_FIELD,
			"ty",
			"f",
			.field_offset=offsetof(struct openb3d_openb3dcore_TMD2Frame_obj,_openb3d_openb3dcore_tmd2frame_ty)
		},
		{
			BBDEBUGDECL_FIELD,
			"tz",
			"f",
			.field_offset=offsetof(struct openb3d_openb3dcore_TMD2Frame_obj,_openb3d_openb3dcore_tmd2frame_tz)
		},
		{
			BBDEBUGDECL_FIELD,
			"verts",
			"[]:TMD2Vertex",
			.field_offset=offsetof(struct openb3d_openb3dcore_TMD2Frame_obj,_openb3d_openb3dcore_tmd2frame_verts)
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"New",
			"()i",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_TMD2Frame_New
		},
		{
			BBDEBUGDECL_END
		}
	}
};
struct BBClass_openb3d_openb3dcore_TMD2Frame openb3d_openb3dcore_TMD2Frame={
	&bbObjectClass,
	bbObjectFree,
	(BBDebugScope*)&openb3d_openb3dcore_TMD2Frame_scope,
	sizeof(struct openb3d_openb3dcore_TMD2Frame_obj),
	(void (*)(BBOBJECT))_openb3d_openb3dcore_TMD2Frame_New,
	bbObjectDtor,
	bbObjectToString,
	bbObjectCompare,
	bbObjectSendMessage,
	0,
	0,
	offsetof(struct openb3d_openb3dcore_TMD2Frame_obj,_openb3d_openb3dcore_tmd2frame_verts) - offsetof(struct openb3d_openb3dcore_TMD2Frame_obj,_openb3d_openb3dcore_tmd2frame_name) + sizeof(BBARRAY)
	,0
	,offsetof(struct openb3d_openb3dcore_TMD2Frame_obj,_openb3d_openb3dcore_tmd2frame_name)
};

void _openb3d_openb3dcore_TMD2_New(struct openb3d_openb3dcore_TMD2_obj* o) {
	bbObjectCtor((BBOBJECT)o);
	o->clas = &openb3d_openb3dcore_TMD2;
}
struct openb3d_openb3dcore_TMesh_obj* openb3d_openb3dcore_TMD2_LoadMD2_TTMesh_TObjectTTEntity(BBOBJECT bbt_url,struct openb3d_openb3dcore_TEntity_obj* bbt_parent_ent){
	struct brl_stream_TStream_obj* bbt_file=(struct brl_stream_TStream_obj*)((struct brl_stream_TStream_obj*)&bbNullObject);
	struct openb3d_openb3dcore_TMesh_obj* bbt_mesh=(struct openb3d_openb3dcore_TMesh_obj*)((struct openb3d_openb3dcore_TMesh_obj*)&bbNullObject);
	struct BBDebugScope_4 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"LoadMD2",
		{
			{
				BBDEBUGDECL_LOCAL,
				"url",
				":Object",
				.var_address=&bbt_url
			},
			{
				BBDEBUGDECL_LOCAL,
				"parent_ent",
				":TEntity",
				.var_address=&bbt_parent_ent
			},
			{
				BBDEBUGDECL_LOCAL,
				"file",
				":TStream",
				.var_address=&bbt_file
			},
			{
				BBDEBUGDECL_LOCAL,
				"mesh",
				":TMesh",
				.var_address=&bbt_mesh
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0xfc793edde7789278, 192, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbt_file=(struct brl_stream_TStream_obj*)brl_endianstream_LittleEndianStream((struct brl_stream_TStream_obj*)brl_filesystem_ReadFile((BBOBJECT)bbt_url));
	struct BBDebugStm __stmt_1 = {0xfc793edde7789278, 193, 0};
	bbOnDebugEnterStm(&__stmt_1);
	if(((BBOBJECT)bbt_file)==&bbNullObject){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0xfc793edde7789278, 194, 0};
		bbOnDebugEnterStm(&__stmt_0);
		brl_blitz_DebugLog(bbStringConcat(((BBString*)&_s481),((BBString *)bbObjectStringcast((BBOBJECT)bbt_url))));
		struct BBDebugStm __stmt_1 = {0xfc793edde7789278, 195, 0};
		bbOnDebugEnterStm(&__stmt_1);
		bbOnDebugLeaveScope();
		bbOnDebugLeaveScope();
		return (struct openb3d_openb3dcore_TMesh_obj*)&bbNullObject;
	}
	struct BBDebugStm __stmt_2 = {0xfc793edde7789278, 198, 0};
	bbOnDebugEnterStm(&__stmt_2);
	bbt_mesh=(struct openb3d_openb3dcore_TMesh_obj*)openb3d_openb3dcore_TMD2_LoadMD2FromStream_TTMesh_TTStreamTObjectTTEntity((struct brl_stream_TStream_obj*)bbt_file,(BBOBJECT)bbt_url,(struct openb3d_openb3dcore_TEntity_obj*)bbt_parent_ent);
	struct BBDebugStm __stmt_3 = {0xfc793edde7789278, 200, 0};
	bbOnDebugEnterStm(&__stmt_3);
	brl_stream_CloseStream((struct brl_stream_TStream_obj*)bbt_file);
	struct BBDebugStm __stmt_4 = {0xfc793edde7789278, 201, 0};
	bbOnDebugEnterStm(&__stmt_4);
	bbOnDebugLeaveScope();
	return (struct openb3d_openb3dcore_TMesh_obj*)bbt_mesh;
}
struct openb3d_openb3dcore_TMesh_obj* openb3d_openb3dcore_TMD2_LoadMD2FromStream_TTMesh_TTStreamTObjectTTEntity(struct brl_stream_TStream_obj* bbt_file,BBOBJECT bbt_url,struct openb3d_openb3dcore_TEntity_obj* bbt_parent_ent){
	BBINT bbt_magic=0;
	BBINT bbt_version=0;
	struct openb3d_openb3dcore_TMesh_obj* bbt_mesh=(struct openb3d_openb3dcore_TMesh_obj*)((struct openb3d_openb3dcore_TMesh_obj*)&bbNullObject);
	BBINT bbt_skinwidth=0;
	BBINT bbt_skinheight=0;
	BBINT bbt_framesize=0;
	BBINT bbt_num_skins=0;
	BBINT bbt_num_vertices=0;
	BBINT bbt_num_st=0;
	BBINT bbt_num_tris=0;
	BBINT bbt_num_glcmds=0;
	BBINT bbt_num_frames=0;
	BBINT bbt_offset_skins=0;
	BBINT bbt_offset_st=0;
	BBINT bbt_offset_tris=0;
	BBINT bbt_offset_frames=0;
	BBINT bbt_offset_glcmds=0;
	BBINT bbt_offset_end=0;
	BBARRAY bbt_skin=(&bbEmptyArray);
	BBARRAY bbt_frames=(&bbEmptyArray);
	BBARRAY bbt_tris=(&bbEmptyArray);
	BBARRAY bbt_coords=(&bbEmptyArray);
	struct openb3d_openb3dcore_TSurface_obj* bbt_surf=(struct openb3d_openb3dcore_TSurface_obj*)((struct openb3d_openb3dcore_TSurface_obj*)&bbNullObject);
	struct openb3d_openb3dcore_TSurface_obj* bbt_anim_surf=(struct openb3d_openb3dcore_TSurface_obj*)((struct openb3d_openb3dcore_TSurface_obj*)&bbNullObject);
	struct BBDebugScope_27 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"LoadMD2FromStream",
		{
			{
				BBDEBUGDECL_LOCAL,
				"file",
				":TStream",
				.var_address=&bbt_file
			},
			{
				BBDEBUGDECL_LOCAL,
				"url",
				":Object",
				.var_address=&bbt_url
			},
			{
				BBDEBUGDECL_LOCAL,
				"parent_ent",
				":TEntity",
				.var_address=&bbt_parent_ent
			},
			{
				BBDEBUGDECL_LOCAL,
				"magic",
				"i",
				.var_address=&bbt_magic
			},
			{
				BBDEBUGDECL_LOCAL,
				"version",
				"i",
				.var_address=&bbt_version
			},
			{
				BBDEBUGDECL_LOCAL,
				"mesh",
				":TMesh",
				.var_address=&bbt_mesh
			},
			{
				BBDEBUGDECL_LOCAL,
				"skinwidth",
				"i",
				.var_address=&bbt_skinwidth
			},
			{
				BBDEBUGDECL_LOCAL,
				"skinheight",
				"i",
				.var_address=&bbt_skinheight
			},
			{
				BBDEBUGDECL_LOCAL,
				"framesize",
				"i",
				.var_address=&bbt_framesize
			},
			{
				BBDEBUGDECL_LOCAL,
				"num_skins",
				"i",
				.var_address=&bbt_num_skins
			},
			{
				BBDEBUGDECL_LOCAL,
				"num_vertices",
				"i",
				.var_address=&bbt_num_vertices
			},
			{
				BBDEBUGDECL_LOCAL,
				"num_st",
				"i",
				.var_address=&bbt_num_st
			},
			{
				BBDEBUGDECL_LOCAL,
				"num_tris",
				"i",
				.var_address=&bbt_num_tris
			},
			{
				BBDEBUGDECL_LOCAL,
				"num_glcmds",
				"i",
				.var_address=&bbt_num_glcmds
			},
			{
				BBDEBUGDECL_LOCAL,
				"num_frames",
				"i",
				.var_address=&bbt_num_frames
			},
			{
				BBDEBUGDECL_LOCAL,
				"offset_skins",
				"i",
				.var_address=&bbt_offset_skins
			},
			{
				BBDEBUGDECL_LOCAL,
				"offset_st",
				"i",
				.var_address=&bbt_offset_st
			},
			{
				BBDEBUGDECL_LOCAL,
				"offset_tris",
				"i",
				.var_address=&bbt_offset_tris
			},
			{
				BBDEBUGDECL_LOCAL,
				"offset_frames",
				"i",
				.var_address=&bbt_offset_frames
			},
			{
				BBDEBUGDECL_LOCAL,
				"offset_glcmds",
				"i",
				.var_address=&bbt_offset_glcmds
			},
			{
				BBDEBUGDECL_LOCAL,
				"offset_end",
				"i",
				.var_address=&bbt_offset_end
			},
			{
				BBDEBUGDECL_LOCAL,
				"skin",
				"[]$",
				.var_address=&bbt_skin
			},
			{
				BBDEBUGDECL_LOCAL,
				"frames",
				"[]:TMD2Frame",
				.var_address=&bbt_frames
			},
			{
				BBDEBUGDECL_LOCAL,
				"tris",
				"[]:TMD2Triangle",
				.var_address=&bbt_tris
			},
			{
				BBDEBUGDECL_LOCAL,
				"coords",
				"[]:TMD2TexCoords",
				.var_address=&bbt_coords
			},
			{
				BBDEBUGDECL_LOCAL,
				"surf",
				":TSurface",
				.var_address=&bbt_surf
			},
			{
				BBDEBUGDECL_LOCAL,
				"anim_surf",
				":TSurface",
				.var_address=&bbt_anim_surf
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0xfc793edde7789278, 205, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbt_magic=brl_stream_ReadInt((struct brl_stream_TStream_obj*)bbt_file);
	struct BBDebugStm __stmt_1 = {0xfc793edde7789278, 206, 0};
	bbOnDebugEnterStm(&__stmt_1);
	if(bbt_magic!=844121161){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0xfc793edde7789278, 207, 0};
		bbOnDebugEnterStm(&__stmt_0);
		brl_blitz_DebugLog(bbStringConcat(((BBString*)&_s482),((BBString *)bbObjectStringcast((BBOBJECT)bbt_url))));
		struct BBDebugStm __stmt_1 = {0xfc793edde7789278, 208, 0};
		bbOnDebugEnterStm(&__stmt_1);
		bbOnDebugLeaveScope();
		bbOnDebugLeaveScope();
		return (struct openb3d_openb3dcore_TMesh_obj*)&bbNullObject;
	}
	struct BBDebugStm __stmt_2 = {0xfc793edde7789278, 211, 0};
	bbOnDebugEnterStm(&__stmt_2);
	bbt_version=brl_stream_ReadInt((struct brl_stream_TStream_obj*)bbt_file);
	struct BBDebugStm __stmt_3 = {0xfc793edde7789278, 212, 0};
	bbOnDebugEnterStm(&__stmt_3);
	if(bbt_version!=8){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0xfc793edde7789278, 213, 0};
		bbOnDebugEnterStm(&__stmt_0);
		brl_blitz_DebugLog(bbStringConcat(((BBString*)&_s483),bbStringFromInt(bbt_version)));
		bbOnDebugLeaveScope();
	}
	struct BBDebugStm __stmt_4 = {0xfc793edde7789278, 216, 0};
	bbOnDebugEnterStm(&__stmt_4);
	bbt_mesh=(struct openb3d_openb3dcore_TMesh_obj*)openb3d_openb3dcore_TMesh_Create_TTMesh();
	struct BBDebugStm __stmt_5 = {0xfc793edde7789278, 217, 0};
	bbOnDebugEnterStm(&__stmt_5);
	((struct openb3d_openb3dcore_TMesh_obj*)bbNullObjectTest((BBObject*)bbt_mesh))->clas->m_SetString_pbS((struct openb3d_openb3dcore_TEntity_obj*)bbt_mesh,((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)bbt_mesh))->_openb3d_openb3dcore_tentity_class_name ,((BBString*)&_s461));
	struct BBDebugStm __stmt_6 = {0xfc793edde7789278, 218, 0};
	bbOnDebugEnterStm(&__stmt_6);
	((struct openb3d_openb3dcore_TMesh_obj*)bbNullObjectTest((BBObject*)bbt_mesh))->clas->m_AddParent_TTEntity((struct openb3d_openb3dcore_TEntity_obj*)bbt_mesh,(struct openb3d_openb3dcore_TEntity_obj*)bbt_parent_ent);
	struct BBDebugStm __stmt_7 = {0xfc793edde7789278, 219, 0};
	bbOnDebugEnterStm(&__stmt_7);
	((struct openb3d_openb3dcore_TMesh_obj*)bbNullObjectTest((BBObject*)bbt_mesh))->clas->m_EntityListAdd_TTListTObject((struct openb3d_openb3dcore_TEntity_obj*)bbt_mesh,(struct brl_linkedlist_TList_obj*)openb3d_openb3dcore_TEntity_entity_list,(BBOBJECT)&bbNullObject);
	struct BBDebugStm __stmt_8 = {0xfc793edde7789278, 221, 0};
	bbOnDebugEnterStm(&__stmt_8);
	bbt_skinwidth=brl_stream_ReadInt((struct brl_stream_TStream_obj*)bbt_file);
	struct BBDebugStm __stmt_9 = {0xfc793edde7789278, 222, 0};
	bbOnDebugEnterStm(&__stmt_9);
	bbt_skinheight=brl_stream_ReadInt((struct brl_stream_TStream_obj*)bbt_file);
	struct BBDebugStm __stmt_10 = {0xfc793edde7789278, 223, 0};
	bbOnDebugEnterStm(&__stmt_10);
	bbt_framesize=brl_stream_ReadInt((struct brl_stream_TStream_obj*)bbt_file);
	struct BBDebugStm __stmt_11 = {0xfc793edde7789278, 224, 0};
	bbOnDebugEnterStm(&__stmt_11);
	bbt_num_skins=brl_stream_ReadInt((struct brl_stream_TStream_obj*)bbt_file);
	struct BBDebugStm __stmt_12 = {0xfc793edde7789278, 225, 0};
	bbOnDebugEnterStm(&__stmt_12);
	bbt_num_vertices=brl_stream_ReadInt((struct brl_stream_TStream_obj*)bbt_file);
	struct BBDebugStm __stmt_13 = {0xfc793edde7789278, 226, 0};
	bbOnDebugEnterStm(&__stmt_13);
	bbt_num_st=brl_stream_ReadInt((struct brl_stream_TStream_obj*)bbt_file);
	struct BBDebugStm __stmt_14 = {0xfc793edde7789278, 227, 0};
	bbOnDebugEnterStm(&__stmt_14);
	bbt_num_tris=brl_stream_ReadInt((struct brl_stream_TStream_obj*)bbt_file);
	struct BBDebugStm __stmt_15 = {0xfc793edde7789278, 228, 0};
	bbOnDebugEnterStm(&__stmt_15);
	bbt_num_glcmds=brl_stream_ReadInt((struct brl_stream_TStream_obj*)bbt_file);
	struct BBDebugStm __stmt_16 = {0xfc793edde7789278, 229, 0};
	bbOnDebugEnterStm(&__stmt_16);
	bbt_num_frames=brl_stream_ReadInt((struct brl_stream_TStream_obj*)bbt_file);
	struct BBDebugStm __stmt_17 = {0xfc793edde7789278, 230, 0};
	bbOnDebugEnterStm(&__stmt_17);
	bbt_offset_skins=brl_stream_ReadInt((struct brl_stream_TStream_obj*)bbt_file);
	struct BBDebugStm __stmt_18 = {0xfc793edde7789278, 231, 0};
	bbOnDebugEnterStm(&__stmt_18);
	bbt_offset_st=brl_stream_ReadInt((struct brl_stream_TStream_obj*)bbt_file);
	struct BBDebugStm __stmt_19 = {0xfc793edde7789278, 232, 0};
	bbOnDebugEnterStm(&__stmt_19);
	bbt_offset_tris=brl_stream_ReadInt((struct brl_stream_TStream_obj*)bbt_file);
	struct BBDebugStm __stmt_20 = {0xfc793edde7789278, 233, 0};
	bbOnDebugEnterStm(&__stmt_20);
	bbt_offset_frames=brl_stream_ReadInt((struct brl_stream_TStream_obj*)bbt_file);
	struct BBDebugStm __stmt_21 = {0xfc793edde7789278, 234, 0};
	bbOnDebugEnterStm(&__stmt_21);
	bbt_offset_glcmds=brl_stream_ReadInt((struct brl_stream_TStream_obj*)bbt_file);
	struct BBDebugStm __stmt_22 = {0xfc793edde7789278, 235, 0};
	bbOnDebugEnterStm(&__stmt_22);
	bbt_offset_end=brl_stream_ReadInt((struct brl_stream_TStream_obj*)bbt_file);
	struct BBDebugStm __stmt_23 = {0xfc793edde7789278, 237, 0};
	bbOnDebugEnterStm(&__stmt_23);
	bbt_skin=bbArrayNew1D("$", bbt_num_skins);
	struct BBDebugStm __stmt_24 = {0xfc793edde7789278, 238, 0};
	bbOnDebugEnterStm(&__stmt_24);
	bbt_frames=bbArrayNew1D(":TMD2Frame", bbt_num_frames);
	struct BBDebugStm __stmt_25 = {0xfc793edde7789278, 239, 0};
	bbOnDebugEnterStm(&__stmt_25);
	bbt_tris=bbArrayNew1D(":TMD2Triangle", bbt_num_tris);
	struct BBDebugStm __stmt_26 = {0xfc793edde7789278, 240, 0};
	bbOnDebugEnterStm(&__stmt_26);
	bbt_coords=bbArrayNew1D(":TMD2TexCoords", bbt_num_st);
	struct BBDebugStm __stmt_27 = {0xfc793edde7789278, 242, 0};
	bbOnDebugEnterStm(&__stmt_27);
	if(openb3d_openb3dcore_TGlobal3D_Log_MD2!=0){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0xfc793edde7789278, 242, 0};
		bbOnDebugEnterStm(&__stmt_0);
		brl_blitz_DebugLog(bbStringConcat(((BBString*)&_s484),bbStringFromInt(bbt_skinwidth)));
		bbOnDebugLeaveScope();
	}
	struct BBDebugStm __stmt_28 = {0xfc793edde7789278, 243, 0};
	bbOnDebugEnterStm(&__stmt_28);
	if(openb3d_openb3dcore_TGlobal3D_Log_MD2!=0){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0xfc793edde7789278, 243, 0};
		bbOnDebugEnterStm(&__stmt_0);
		brl_blitz_DebugLog(bbStringConcat(((BBString*)&_s485),bbStringFromInt(bbt_skinheight)));
		bbOnDebugLeaveScope();
	}
	struct BBDebugStm __stmt_29 = {0xfc793edde7789278, 244, 0};
	bbOnDebugEnterStm(&__stmt_29);
	if(openb3d_openb3dcore_TGlobal3D_Log_MD2!=0){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0xfc793edde7789278, 244, 0};
		bbOnDebugEnterStm(&__stmt_0);
		brl_blitz_DebugLog(bbStringConcat(((BBString*)&_s486),bbStringFromInt(bbt_framesize)));
		bbOnDebugLeaveScope();
	}
	struct BBDebugStm __stmt_30 = {0xfc793edde7789278, 245, 0};
	bbOnDebugEnterStm(&__stmt_30);
	if(openb3d_openb3dcore_TGlobal3D_Log_MD2!=0){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0xfc793edde7789278, 245, 0};
		bbOnDebugEnterStm(&__stmt_0);
		brl_blitz_DebugLog(bbStringConcat(((BBString*)&_s487),bbStringFromInt(bbt_num_skins)));
		bbOnDebugLeaveScope();
	}
	struct BBDebugStm __stmt_31 = {0xfc793edde7789278, 246, 0};
	bbOnDebugEnterStm(&__stmt_31);
	if(openb3d_openb3dcore_TGlobal3D_Log_MD2!=0){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0xfc793edde7789278, 246, 0};
		bbOnDebugEnterStm(&__stmt_0);
		brl_blitz_DebugLog(bbStringConcat(((BBString*)&_s488),bbStringFromInt(bbt_num_vertices)));
		bbOnDebugLeaveScope();
	}
	struct BBDebugStm __stmt_32 = {0xfc793edde7789278, 247, 0};
	bbOnDebugEnterStm(&__stmt_32);
	if(openb3d_openb3dcore_TGlobal3D_Log_MD2!=0){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0xfc793edde7789278, 247, 0};
		bbOnDebugEnterStm(&__stmt_0);
		brl_blitz_DebugLog(bbStringConcat(((BBString*)&_s489),bbStringFromInt(bbt_num_st)));
		bbOnDebugLeaveScope();
	}
	struct BBDebugStm __stmt_33 = {0xfc793edde7789278, 248, 0};
	bbOnDebugEnterStm(&__stmt_33);
	if(openb3d_openb3dcore_TGlobal3D_Log_MD2!=0){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0xfc793edde7789278, 248, 0};
		bbOnDebugEnterStm(&__stmt_0);
		brl_blitz_DebugLog(bbStringConcat(((BBString*)&_s490),bbStringFromInt(bbt_num_tris)));
		bbOnDebugLeaveScope();
	}
	struct BBDebugStm __stmt_34 = {0xfc793edde7789278, 249, 0};
	bbOnDebugEnterStm(&__stmt_34);
	if(openb3d_openb3dcore_TGlobal3D_Log_MD2!=0){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0xfc793edde7789278, 249, 0};
		bbOnDebugEnterStm(&__stmt_0);
		brl_blitz_DebugLog(bbStringConcat(((BBString*)&_s491),bbStringFromInt(bbt_num_frames)));
		bbOnDebugLeaveScope();
	}
	struct BBDebugStm __stmt_35 = {0xfc793edde7789278, 250, 0};
	bbOnDebugEnterStm(&__stmt_35);
	if(openb3d_openb3dcore_TGlobal3D_Log_MD2!=0){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0xfc793edde7789278, 250, 0};
		bbOnDebugEnterStm(&__stmt_0);
		brl_blitz_DebugLog(bbStringConcat(((BBString*)&_s492),bbStringFromInt(bbt_offset_skins)));
		bbOnDebugLeaveScope();
	}
	struct BBDebugStm __stmt_36 = {0xfc793edde7789278, 251, 0};
	bbOnDebugEnterStm(&__stmt_36);
	if(openb3d_openb3dcore_TGlobal3D_Log_MD2!=0){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0xfc793edde7789278, 251, 0};
		bbOnDebugEnterStm(&__stmt_0);
		brl_blitz_DebugLog(bbStringConcat(((BBString*)&_s493),bbStringFromInt(bbt_offset_st)));
		bbOnDebugLeaveScope();
	}
	struct BBDebugStm __stmt_37 = {0xfc793edde7789278, 252, 0};
	bbOnDebugEnterStm(&__stmt_37);
	if(openb3d_openb3dcore_TGlobal3D_Log_MD2!=0){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0xfc793edde7789278, 252, 0};
		bbOnDebugEnterStm(&__stmt_0);
		brl_blitz_DebugLog(bbStringConcat(((BBString*)&_s494),bbStringFromInt(bbt_offset_tris)));
		bbOnDebugLeaveScope();
	}
	struct BBDebugStm __stmt_38 = {0xfc793edde7789278, 253, 0};
	bbOnDebugEnterStm(&__stmt_38);
	if(openb3d_openb3dcore_TGlobal3D_Log_MD2!=0){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0xfc793edde7789278, 253, 0};
		bbOnDebugEnterStm(&__stmt_0);
		brl_blitz_DebugLog(bbStringConcat(((BBString*)&_s495),bbStringFromInt(bbt_offset_frames)));
		bbOnDebugLeaveScope();
	}
	struct BBDebugStm __stmt_39 = {0xfc793edde7789278, 255, 0};
	bbOnDebugEnterStm(&__stmt_39);
	bbt_surf=(struct openb3d_openb3dcore_TSurface_obj*)((struct openb3d_openb3dcore_TMesh_obj*)bbNullObjectTest((BBObject*)bbt_mesh))->clas->m_CreateSurface_TTBrush((struct openb3d_openb3dcore_TMesh_obj*)bbt_mesh,(struct openb3d_openb3dcore_TBrush_obj*)&bbNullObject);
	struct BBDebugStm __stmt_40 = {0xfc793edde7789278, 256, 0};
	bbOnDebugEnterStm(&__stmt_40);
	((struct openb3d_openb3dcore_TSurface_obj*)bbNullObjectTest((BBObject*)bbt_surf))->_openb3d_openb3dcore_tsurface_no_verts [0]=bbt_num_vertices;
	struct BBDebugStm __stmt_41 = {0xfc793edde7789278, 257, 0};
	bbOnDebugEnterStm(&__stmt_41);
	((struct openb3d_openb3dcore_TSurface_obj*)bbNullObjectTest((BBObject*)bbt_surf))->_openb3d_openb3dcore_tsurface_vert_tex_coords0 =((struct openb3d_openb3dcore_TSurface_obj*)bbNullObjectTest((BBObject*)bbt_surf))->clas->m_SurfaceFloatArrayResize_ii((struct openb3d_openb3dcore_TSurface_obj*)bbt_surf,5,(bbt_num_vertices*2));
	struct BBDebugStm __stmt_42 = {0xfc793edde7789278, 258, 0};
	bbOnDebugEnterStm(&__stmt_42);
	((struct openb3d_openb3dcore_TSurface_obj*)bbNullObjectTest((BBObject*)bbt_surf))->_openb3d_openb3dcore_tsurface_vert_tex_coords1 =((struct openb3d_openb3dcore_TSurface_obj*)bbNullObjectTest((BBObject*)bbt_surf))->clas->m_SurfaceFloatArrayResize_ii((struct openb3d_openb3dcore_TSurface_obj*)bbt_surf,6,(bbt_num_vertices*2));
	struct BBDebugStm __stmt_43 = {0xfc793edde7789278, 259, 0};
	bbOnDebugEnterStm(&__stmt_43);
	((struct openb3d_openb3dcore_TSurface_obj*)bbNullObjectTest((BBObject*)bbt_surf))->_openb3d_openb3dcore_tsurface_vert_col =((struct openb3d_openb3dcore_TSurface_obj*)bbNullObjectTest((BBObject*)bbt_surf))->clas->m_SurfaceFloatArrayResize_ii((struct openb3d_openb3dcore_TSurface_obj*)bbt_surf,7,(bbt_num_vertices*4));
	struct BBDebugStm __stmt_44 = {0xfc793edde7789278, 261, 0};
	bbOnDebugEnterStm(&__stmt_44);
	bbt_anim_surf=(struct openb3d_openb3dcore_TSurface_obj*)openb3d_openb3dcore_TSurface_Create_TTSurface();
	struct BBDebugStm __stmt_45 = {0xfc793edde7789278, 262, 0};
	bbOnDebugEnterStm(&__stmt_45);
	((struct openb3d_openb3dcore_TMesh_obj*)bbNullObjectTest((BBObject*)bbt_mesh))->clas->m_MeshListAdd_TTListTObject((struct openb3d_openb3dcore_TMesh_obj*)bbt_mesh,(struct brl_linkedlist_TList_obj*)((struct openb3d_openb3dcore_TMesh_obj*)bbNullObjectTest((BBObject*)bbt_mesh))->_openb3d_openb3dcore_tmesh_anim_surf_list ,(BBOBJECT)bbt_anim_surf);
	struct BBDebugStm __stmt_46 = {0xfc793edde7789278, 263, 0};
	bbOnDebugEnterStm(&__stmt_46);
	((struct openb3d_openb3dcore_TSurface_obj*)bbNullObjectTest((BBObject*)bbt_anim_surf))->_openb3d_openb3dcore_tsurface_no_verts [0]=((struct openb3d_openb3dcore_TSurface_obj*)bbNullObjectTest((BBObject*)bbt_surf))->_openb3d_openb3dcore_tsurface_no_verts [0];
	struct BBDebugStm __stmt_47 = {0xfc793edde7789278, 264, 0};
	bbOnDebugEnterStm(&__stmt_47);
	((struct openb3d_openb3dcore_TSurface_obj*)bbNullObjectTest((BBObject*)bbt_anim_surf))->_openb3d_openb3dcore_tsurface_vert_coords =((struct openb3d_openb3dcore_TSurface_obj*)bbNullObjectTest((BBObject*)bbt_anim_surf))->clas->m_SurfaceFloatArrayResize_ii((struct openb3d_openb3dcore_TSurface_obj*)bbt_anim_surf,3,(bbt_num_vertices*3));
	struct BBDebugStm __stmt_48 = {0xfc793edde7789278, 266, 0};
	bbOnDebugEnterStm(&__stmt_48);
	brl_stream_SeekStream((struct brl_stream_TStream_obj*)bbt_file,((BBLONG)bbt_offset_skins),0);
	struct BBDebugStm __stmt_49 = {0xfc793edde7789278, 268, 0};
	bbOnDebugEnterStm(&__stmt_49);
	{
		BBINT bbt_i=0;
		BBINT bbt_=bbt_num_skins;
		for(;(bbt_i<bbt_);bbt_i=(bbt_i+1)){
			struct BBDebugScope_1 __scope = {
				BBDEBUGSCOPE_LOCALBLOCK,
				0,
				{
					{
						BBDEBUGDECL_LOCAL,
						"i",
						"i",
						.var_address=&bbt_i
					},
					{
						BBDEBUGDECL_END
					}
				}
			};
			bbOnDebugEnterScope((BBDebugScope *)&__scope);
			struct BBDebugStm __stmt_0 = {0xfc793edde7789278, 269, 0};
			bbOnDebugEnterStm(&__stmt_0);
			((BBSTRING*)BBARRAYDATAINDEX((bbt_skin),(bbt_skin)->dims,((BBUINT)bbt_i)))[((BBUINT)bbt_i)]=brl_stream_ReadString2((struct brl_stream_TStream_obj*)bbt_file,64);
			bbOnDebugLeaveScope();
		}
	}
	struct BBDebugStm __stmt_50 = {0xfc793edde7789278, 272, 0};
	bbOnDebugEnterStm(&__stmt_50);
	brl_stream_SeekStream((struct brl_stream_TStream_obj*)bbt_file,((BBLONG)bbt_offset_st),0);
	struct BBDebugStm __stmt_51 = {0xfc793edde7789278, 274, 0};
	bbOnDebugEnterStm(&__stmt_51);
	{
		BBINT bbt_i2=0;
		BBINT bbt_2=bbt_num_st;
		for(;(bbt_i2<bbt_2);bbt_i2=(bbt_i2+1)){
			struct BBDebugScope_1 __scope = {
				BBDEBUGSCOPE_LOCALBLOCK,
				0,
				{
					{
						BBDEBUGDECL_LOCAL,
						"i",
						"i",
						.var_address=&bbt_i2
					},
					{
						BBDEBUGDECL_END
					}
				}
			};
			bbOnDebugEnterScope((BBDebugScope *)&__scope);
			struct BBDebugStm __stmt_0 = {0xfc793edde7789278, 275, 0};
			bbOnDebugEnterStm(&__stmt_0);
			((struct openb3d_openb3dcore_TMD2TexCoords_obj**)BBARRAYDATAINDEX((bbt_coords),(bbt_coords)->dims,((BBUINT)bbt_i2)))[((BBUINT)bbt_i2)]=(struct openb3d_openb3dcore_TMD2TexCoords_obj*)(struct openb3d_openb3dcore_TMD2TexCoords_obj*)bbObjectAtomicNew((BBClass *)&openb3d_openb3dcore_TMD2TexCoords);
			struct BBDebugStm __stmt_1 = {0xfc793edde7789278, 276, 0};
			bbOnDebugEnterStm(&__stmt_1);
			((struct openb3d_openb3dcore_TMD2TexCoords_obj*)bbNullObjectTest((BBObject*)((struct openb3d_openb3dcore_TMD2TexCoords_obj**)BBARRAYDATAINDEX((bbt_coords),(bbt_coords)->dims,((BBUINT)bbt_i2)))[((BBUINT)bbt_i2)]))->_openb3d_openb3dcore_tmd2texcoords_u =(((BBFLOAT)brl_stream_ReadShort((struct brl_stream_TStream_obj*)bbt_file))/((BBFLOAT)bbt_skinwidth));
			struct BBDebugStm __stmt_2 = {0xfc793edde7789278, 277, 0};
			bbOnDebugEnterStm(&__stmt_2);
			((struct openb3d_openb3dcore_TMD2TexCoords_obj*)bbNullObjectTest((BBObject*)((struct openb3d_openb3dcore_TMD2TexCoords_obj**)BBARRAYDATAINDEX((bbt_coords),(bbt_coords)->dims,((BBUINT)bbt_i2)))[((BBUINT)bbt_i2)]))->_openb3d_openb3dcore_tmd2texcoords_v =(((BBFLOAT)brl_stream_ReadShort((struct brl_stream_TStream_obj*)bbt_file))/((BBFLOAT)bbt_skinheight));
			bbOnDebugLeaveScope();
		}
	}
	struct BBDebugStm __stmt_52 = {0xfc793edde7789278, 280, 0};
	bbOnDebugEnterStm(&__stmt_52);
	brl_stream_SeekStream((struct brl_stream_TStream_obj*)bbt_file,((BBLONG)bbt_offset_tris),0);
	struct BBDebugStm __stmt_53 = {0xfc793edde7789278, 282, 0};
	bbOnDebugEnterStm(&__stmt_53);
	{
		BBINT bbt_i3=0;
		BBINT bbt_3=bbt_num_tris;
		for(;(bbt_i3<bbt_3);bbt_i3=(bbt_i3+1)){
			struct BBDebugScope_1 __scope = {
				BBDEBUGSCOPE_LOCALBLOCK,
				0,
				{
					{
						BBDEBUGDECL_LOCAL,
						"i",
						"i",
						.var_address=&bbt_i3
					},
					{
						BBDEBUGDECL_END
					}
				}
			};
			bbOnDebugEnterScope((BBDebugScope *)&__scope);
			struct BBDebugStm __stmt_0 = {0xfc793edde7789278, 283, 0};
			bbOnDebugEnterStm(&__stmt_0);
			((struct openb3d_openb3dcore_TMD2Triangle_obj**)BBARRAYDATAINDEX((bbt_tris),(bbt_tris)->dims,((BBUINT)bbt_i3)))[((BBUINT)bbt_i3)]=(struct openb3d_openb3dcore_TMD2Triangle_obj*)(struct openb3d_openb3dcore_TMD2Triangle_obj*)bbObjectAtomicNew((BBClass *)&openb3d_openb3dcore_TMD2Triangle);
			struct BBDebugStm __stmt_1 = {0xfc793edde7789278, 284, 0};
			bbOnDebugEnterStm(&__stmt_1);
			((struct openb3d_openb3dcore_TMD2Triangle_obj*)bbNullObjectTest((BBObject*)((struct openb3d_openb3dcore_TMD2Triangle_obj**)BBARRAYDATAINDEX((bbt_tris),(bbt_tris)->dims,((BBUINT)bbt_i3)))[((BBUINT)bbt_i3)]))->_openb3d_openb3dcore_tmd2triangle_v0 =((BBSHORT)brl_stream_ReadShort((struct brl_stream_TStream_obj*)bbt_file));
			struct BBDebugStm __stmt_2 = {0xfc793edde7789278, 285, 0};
			bbOnDebugEnterStm(&__stmt_2);
			((struct openb3d_openb3dcore_TMD2Triangle_obj*)bbNullObjectTest((BBObject*)((struct openb3d_openb3dcore_TMD2Triangle_obj**)BBARRAYDATAINDEX((bbt_tris),(bbt_tris)->dims,((BBUINT)bbt_i3)))[((BBUINT)bbt_i3)]))->_openb3d_openb3dcore_tmd2triangle_v1 =((BBSHORT)brl_stream_ReadShort((struct brl_stream_TStream_obj*)bbt_file));
			struct BBDebugStm __stmt_3 = {0xfc793edde7789278, 286, 0};
			bbOnDebugEnterStm(&__stmt_3);
			((struct openb3d_openb3dcore_TMD2Triangle_obj*)bbNullObjectTest((BBObject*)((struct openb3d_openb3dcore_TMD2Triangle_obj**)BBARRAYDATAINDEX((bbt_tris),(bbt_tris)->dims,((BBUINT)bbt_i3)))[((BBUINT)bbt_i3)]))->_openb3d_openb3dcore_tmd2triangle_v2 =((BBSHORT)brl_stream_ReadShort((struct brl_stream_TStream_obj*)bbt_file));
			struct BBDebugStm __stmt_4 = {0xfc793edde7789278, 287, 0};
			bbOnDebugEnterStm(&__stmt_4);
			((struct openb3d_openb3dcore_TMD2Triangle_obj*)bbNullObjectTest((BBObject*)((struct openb3d_openb3dcore_TMD2Triangle_obj**)BBARRAYDATAINDEX((bbt_tris),(bbt_tris)->dims,((BBUINT)bbt_i3)))[((BBUINT)bbt_i3)]))->_openb3d_openb3dcore_tmd2triangle_t0 =((BBSHORT)brl_stream_ReadShort((struct brl_stream_TStream_obj*)bbt_file));
			struct BBDebugStm __stmt_5 = {0xfc793edde7789278, 288, 0};
			bbOnDebugEnterStm(&__stmt_5);
			((struct openb3d_openb3dcore_TMD2Triangle_obj*)bbNullObjectTest((BBObject*)((struct openb3d_openb3dcore_TMD2Triangle_obj**)BBARRAYDATAINDEX((bbt_tris),(bbt_tris)->dims,((BBUINT)bbt_i3)))[((BBUINT)bbt_i3)]))->_openb3d_openb3dcore_tmd2triangle_t1 =((BBSHORT)brl_stream_ReadShort((struct brl_stream_TStream_obj*)bbt_file));
			struct BBDebugStm __stmt_6 = {0xfc793edde7789278, 289, 0};
			bbOnDebugEnterStm(&__stmt_6);
			((struct openb3d_openb3dcore_TMD2Triangle_obj*)bbNullObjectTest((BBObject*)((struct openb3d_openb3dcore_TMD2Triangle_obj**)BBARRAYDATAINDEX((bbt_tris),(bbt_tris)->dims,((BBUINT)bbt_i3)))[((BBUINT)bbt_i3)]))->_openb3d_openb3dcore_tmd2triangle_t2 =((BBSHORT)brl_stream_ReadShort((struct brl_stream_TStream_obj*)bbt_file));
			struct BBDebugStm __stmt_7 = {0xfc793edde7789278, 291, 0};
			bbOnDebugEnterStm(&__stmt_7);
			((struct openb3d_openb3dcore_TSurface_obj*)bbNullObjectTest((BBObject*)bbt_surf))->clas->m_AddTriangle_iii((struct openb3d_openb3dcore_TSurface_obj*)bbt_surf,((BBINT)((struct openb3d_openb3dcore_TMD2Triangle_obj*)bbNullObjectTest((BBObject*)((struct openb3d_openb3dcore_TMD2Triangle_obj**)BBARRAYDATAINDEX((bbt_tris),(bbt_tris)->dims,((BBUINT)bbt_i3)))[((BBUINT)bbt_i3)]))->_openb3d_openb3dcore_tmd2triangle_v2 ),((BBINT)((struct openb3d_openb3dcore_TMD2Triangle_obj*)bbNullObjectTest((BBObject*)((struct openb3d_openb3dcore_TMD2Triangle_obj**)BBARRAYDATAINDEX((bbt_tris),(bbt_tris)->dims,((BBUINT)bbt_i3)))[((BBUINT)bbt_i3)]))->_openb3d_openb3dcore_tmd2triangle_v1 ),((BBINT)((struct openb3d_openb3dcore_TMD2Triangle_obj*)bbNullObjectTest((BBObject*)((struct openb3d_openb3dcore_TMD2Triangle_obj**)BBARRAYDATAINDEX((bbt_tris),(bbt_tris)->dims,((BBUINT)bbt_i3)))[((BBUINT)bbt_i3)]))->_openb3d_openb3dcore_tmd2triangle_v0 ));
			struct BBDebugStm __stmt_8 = {0xfc793edde7789278, 293, 0};
			bbOnDebugEnterStm(&__stmt_8);
			((struct openb3d_openb3dcore_TSurface_obj*)bbNullObjectTest((BBObject*)bbt_surf))->clas->m_VertexTexCoords_ifffi((struct openb3d_openb3dcore_TSurface_obj*)bbt_surf,((BBINT)((struct openb3d_openb3dcore_TMD2Triangle_obj*)bbNullObjectTest((BBObject*)((struct openb3d_openb3dcore_TMD2Triangle_obj**)BBARRAYDATAINDEX((bbt_tris),(bbt_tris)->dims,((BBUINT)bbt_i3)))[((BBUINT)bbt_i3)]))->_openb3d_openb3dcore_tmd2triangle_v0 ),((struct openb3d_openb3dcore_TMD2TexCoords_obj*)bbNullObjectTest((BBObject*)((struct openb3d_openb3dcore_TMD2TexCoords_obj**)BBARRAYDATAINDEX((bbt_coords),(bbt_coords)->dims,((BBUINT)((struct openb3d_openb3dcore_TMD2Triangle_obj*)bbNullObjectTest((BBObject*)((struct openb3d_openb3dcore_TMD2Triangle_obj**)BBARRAYDATAINDEX((bbt_tris),(bbt_tris)->dims,((BBUINT)bbt_i3)))[((BBUINT)bbt_i3)]))->_openb3d_openb3dcore_tmd2triangle_t0 )))[((BBUINT)((struct openb3d_openb3dcore_TMD2Triangle_obj*)bbNullObjectTest((BBObject*)((struct openb3d_openb3dcore_TMD2Triangle_obj**)BBARRAYDATAINDEX((bbt_tris),(bbt_tris)->dims,((BBUINT)bbt_i3)))[((BBUINT)bbt_i3)]))->_openb3d_openb3dcore_tmd2triangle_t0 )]))->_openb3d_openb3dcore_tmd2texcoords_u ,((struct openb3d_openb3dcore_TMD2TexCoords_obj*)bbNullObjectTest((BBObject*)((struct openb3d_openb3dcore_TMD2TexCoords_obj**)BBARRAYDATAINDEX((bbt_coords),(bbt_coords)->dims,((BBUINT)((struct openb3d_openb3dcore_TMD2Triangle_obj*)bbNullObjectTest((BBObject*)((struct openb3d_openb3dcore_TMD2Triangle_obj**)BBARRAYDATAINDEX((bbt_tris),(bbt_tris)->dims,((BBUINT)bbt_i3)))[((BBUINT)bbt_i3)]))->_openb3d_openb3dcore_tmd2triangle_t0 )))[((BBUINT)((struct openb3d_openb3dcore_TMD2Triangle_obj*)bbNullObjectTest((BBObject*)((struct openb3d_openb3dcore_TMD2Triangle_obj**)BBARRAYDATAINDEX((bbt_tris),(bbt_tris)->dims,((BBUINT)bbt_i3)))[((BBUINT)bbt_i3)]))->_openb3d_openb3dcore_tmd2triangle_t0 )]))->_openb3d_openb3dcore_tmd2texcoords_v ,0.00000000f,0);
			struct BBDebugStm __stmt_9 = {0xfc793edde7789278, 294, 0};
			bbOnDebugEnterStm(&__stmt_9);
			((struct openb3d_openb3dcore_TSurface_obj*)bbNullObjectTest((BBObject*)bbt_surf))->clas->m_VertexTexCoords_ifffi((struct openb3d_openb3dcore_TSurface_obj*)bbt_surf,((BBINT)((struct openb3d_openb3dcore_TMD2Triangle_obj*)bbNullObjectTest((BBObject*)((struct openb3d_openb3dcore_TMD2Triangle_obj**)BBARRAYDATAINDEX((bbt_tris),(bbt_tris)->dims,((BBUINT)bbt_i3)))[((BBUINT)bbt_i3)]))->_openb3d_openb3dcore_tmd2triangle_v1 ),((struct openb3d_openb3dcore_TMD2TexCoords_obj*)bbNullObjectTest((BBObject*)((struct openb3d_openb3dcore_TMD2TexCoords_obj**)BBARRAYDATAINDEX((bbt_coords),(bbt_coords)->dims,((BBUINT)((struct openb3d_openb3dcore_TMD2Triangle_obj*)bbNullObjectTest((BBObject*)((struct openb3d_openb3dcore_TMD2Triangle_obj**)BBARRAYDATAINDEX((bbt_tris),(bbt_tris)->dims,((BBUINT)bbt_i3)))[((BBUINT)bbt_i3)]))->_openb3d_openb3dcore_tmd2triangle_t1 )))[((BBUINT)((struct openb3d_openb3dcore_TMD2Triangle_obj*)bbNullObjectTest((BBObject*)((struct openb3d_openb3dcore_TMD2Triangle_obj**)BBARRAYDATAINDEX((bbt_tris),(bbt_tris)->dims,((BBUINT)bbt_i3)))[((BBUINT)bbt_i3)]))->_openb3d_openb3dcore_tmd2triangle_t1 )]))->_openb3d_openb3dcore_tmd2texcoords_u ,((struct openb3d_openb3dcore_TMD2TexCoords_obj*)bbNullObjectTest((BBObject*)((struct openb3d_openb3dcore_TMD2TexCoords_obj**)BBARRAYDATAINDEX((bbt_coords),(bbt_coords)->dims,((BBUINT)((struct openb3d_openb3dcore_TMD2Triangle_obj*)bbNullObjectTest((BBObject*)((struct openb3d_openb3dcore_TMD2Triangle_obj**)BBARRAYDATAINDEX((bbt_tris),(bbt_tris)->dims,((BBUINT)bbt_i3)))[((BBUINT)bbt_i3)]))->_openb3d_openb3dcore_tmd2triangle_t1 )))[((BBUINT)((struct openb3d_openb3dcore_TMD2Triangle_obj*)bbNullObjectTest((BBObject*)((struct openb3d_openb3dcore_TMD2Triangle_obj**)BBARRAYDATAINDEX((bbt_tris),(bbt_tris)->dims,((BBUINT)bbt_i3)))[((BBUINT)bbt_i3)]))->_openb3d_openb3dcore_tmd2triangle_t1 )]))->_openb3d_openb3dcore_tmd2texcoords_v ,0.00000000f,0);
			struct BBDebugStm __stmt_10 = {0xfc793edde7789278, 295, 0};
			bbOnDebugEnterStm(&__stmt_10);
			((struct openb3d_openb3dcore_TSurface_obj*)bbNullObjectTest((BBObject*)bbt_surf))->clas->m_VertexTexCoords_ifffi((struct openb3d_openb3dcore_TSurface_obj*)bbt_surf,((BBINT)((struct openb3d_openb3dcore_TMD2Triangle_obj*)bbNullObjectTest((BBObject*)((struct openb3d_openb3dcore_TMD2Triangle_obj**)BBARRAYDATAINDEX((bbt_tris),(bbt_tris)->dims,((BBUINT)bbt_i3)))[((BBUINT)bbt_i3)]))->_openb3d_openb3dcore_tmd2triangle_v2 ),((struct openb3d_openb3dcore_TMD2TexCoords_obj*)bbNullObjectTest((BBObject*)((struct openb3d_openb3dcore_TMD2TexCoords_obj**)BBARRAYDATAINDEX((bbt_coords),(bbt_coords)->dims,((BBUINT)((struct openb3d_openb3dcore_TMD2Triangle_obj*)bbNullObjectTest((BBObject*)((struct openb3d_openb3dcore_TMD2Triangle_obj**)BBARRAYDATAINDEX((bbt_tris),(bbt_tris)->dims,((BBUINT)bbt_i3)))[((BBUINT)bbt_i3)]))->_openb3d_openb3dcore_tmd2triangle_t2 )))[((BBUINT)((struct openb3d_openb3dcore_TMD2Triangle_obj*)bbNullObjectTest((BBObject*)((struct openb3d_openb3dcore_TMD2Triangle_obj**)BBARRAYDATAINDEX((bbt_tris),(bbt_tris)->dims,((BBUINT)bbt_i3)))[((BBUINT)bbt_i3)]))->_openb3d_openb3dcore_tmd2triangle_t2 )]))->_openb3d_openb3dcore_tmd2texcoords_u ,((struct openb3d_openb3dcore_TMD2TexCoords_obj*)bbNullObjectTest((BBObject*)((struct openb3d_openb3dcore_TMD2TexCoords_obj**)BBARRAYDATAINDEX((bbt_coords),(bbt_coords)->dims,((BBUINT)((struct openb3d_openb3dcore_TMD2Triangle_obj*)bbNullObjectTest((BBObject*)((struct openb3d_openb3dcore_TMD2Triangle_obj**)BBARRAYDATAINDEX((bbt_tris),(bbt_tris)->dims,((BBUINT)bbt_i3)))[((BBUINT)bbt_i3)]))->_openb3d_openb3dcore_tmd2triangle_t2 )))[((BBUINT)((struct openb3d_openb3dcore_TMD2Triangle_obj*)bbNullObjectTest((BBObject*)((struct openb3d_openb3dcore_TMD2Triangle_obj**)BBARRAYDATAINDEX((bbt_tris),(bbt_tris)->dims,((BBUINT)bbt_i3)))[((BBUINT)bbt_i3)]))->_openb3d_openb3dcore_tmd2triangle_t2 )]))->_openb3d_openb3dcore_tmd2texcoords_v ,0.00000000f,0);
			bbOnDebugLeaveScope();
		}
	}
	struct BBDebugStm __stmt_54 = {0xfc793edde7789278, 298, 0};
	bbOnDebugEnterStm(&__stmt_54);
	brl_stream_SeekStream((struct brl_stream_TStream_obj*)bbt_file,((BBLONG)bbt_offset_frames),0);
	struct BBDebugStm __stmt_55 = {0xfc793edde7789278, 300, 0};
	bbOnDebugEnterStm(&__stmt_55);
	{
		BBINT bbt_i4=0;
		BBINT bbt_4=bbt_num_frames;
		for(;(bbt_i4<bbt_4);bbt_i4=(bbt_i4+1)){
			struct BBDebugScope_1 __scope = {
				BBDEBUGSCOPE_LOCALBLOCK,
				0,
				{
					{
						BBDEBUGDECL_LOCAL,
						"i",
						"i",
						.var_address=&bbt_i4
					},
					{
						BBDEBUGDECL_END
					}
				}
			};
			bbOnDebugEnterScope((BBDebugScope *)&__scope);
			struct BBDebugStm __stmt_0 = {0xfc793edde7789278, 301, 0};
			bbOnDebugEnterStm(&__stmt_0);
			((struct openb3d_openb3dcore_TMD2Frame_obj**)BBARRAYDATAINDEX((bbt_frames),(bbt_frames)->dims,((BBUINT)bbt_i4)))[((BBUINT)bbt_i4)]=(struct openb3d_openb3dcore_TMD2Frame_obj*)(struct openb3d_openb3dcore_TMD2Frame_obj*)bbObjectNew((BBClass *)&openb3d_openb3dcore_TMD2Frame);
			struct BBDebugStm __stmt_1 = {0xfc793edde7789278, 302, 0};
			bbOnDebugEnterStm(&__stmt_1);
			((struct openb3d_openb3dcore_TMD2Frame_obj*)bbNullObjectTest((BBObject*)((struct openb3d_openb3dcore_TMD2Frame_obj**)BBARRAYDATAINDEX((bbt_frames),(bbt_frames)->dims,((BBUINT)bbt_i4)))[((BBUINT)bbt_i4)]))->_openb3d_openb3dcore_tmd2frame_sx =brl_stream_ReadFloat((struct brl_stream_TStream_obj*)bbt_file);
			struct BBDebugStm __stmt_2 = {0xfc793edde7789278, 303, 0};
			bbOnDebugEnterStm(&__stmt_2);
			((struct openb3d_openb3dcore_TMD2Frame_obj*)bbNullObjectTest((BBObject*)((struct openb3d_openb3dcore_TMD2Frame_obj**)BBARRAYDATAINDEX((bbt_frames),(bbt_frames)->dims,((BBUINT)bbt_i4)))[((BBUINT)bbt_i4)]))->_openb3d_openb3dcore_tmd2frame_sy =brl_stream_ReadFloat((struct brl_stream_TStream_obj*)bbt_file);
			struct BBDebugStm __stmt_3 = {0xfc793edde7789278, 304, 0};
			bbOnDebugEnterStm(&__stmt_3);
			((struct openb3d_openb3dcore_TMD2Frame_obj*)bbNullObjectTest((BBObject*)((struct openb3d_openb3dcore_TMD2Frame_obj**)BBARRAYDATAINDEX((bbt_frames),(bbt_frames)->dims,((BBUINT)bbt_i4)))[((BBUINT)bbt_i4)]))->_openb3d_openb3dcore_tmd2frame_sz =brl_stream_ReadFloat((struct brl_stream_TStream_obj*)bbt_file);
			struct BBDebugStm __stmt_4 = {0xfc793edde7789278, 305, 0};
			bbOnDebugEnterStm(&__stmt_4);
			((struct openb3d_openb3dcore_TMD2Frame_obj*)bbNullObjectTest((BBObject*)((struct openb3d_openb3dcore_TMD2Frame_obj**)BBARRAYDATAINDEX((bbt_frames),(bbt_frames)->dims,((BBUINT)bbt_i4)))[((BBUINT)bbt_i4)]))->_openb3d_openb3dcore_tmd2frame_tx =brl_stream_ReadFloat((struct brl_stream_TStream_obj*)bbt_file);
			struct BBDebugStm __stmt_5 = {0xfc793edde7789278, 306, 0};
			bbOnDebugEnterStm(&__stmt_5);
			((struct openb3d_openb3dcore_TMD2Frame_obj*)bbNullObjectTest((BBObject*)((struct openb3d_openb3dcore_TMD2Frame_obj**)BBARRAYDATAINDEX((bbt_frames),(bbt_frames)->dims,((BBUINT)bbt_i4)))[((BBUINT)bbt_i4)]))->_openb3d_openb3dcore_tmd2frame_ty =brl_stream_ReadFloat((struct brl_stream_TStream_obj*)bbt_file);
			struct BBDebugStm __stmt_6 = {0xfc793edde7789278, 307, 0};
			bbOnDebugEnterStm(&__stmt_6);
			((struct openb3d_openb3dcore_TMD2Frame_obj*)bbNullObjectTest((BBObject*)((struct openb3d_openb3dcore_TMD2Frame_obj**)BBARRAYDATAINDEX((bbt_frames),(bbt_frames)->dims,((BBUINT)bbt_i4)))[((BBUINT)bbt_i4)]))->_openb3d_openb3dcore_tmd2frame_tz =brl_stream_ReadFloat((struct brl_stream_TStream_obj*)bbt_file);
			struct BBDebugStm __stmt_7 = {0xfc793edde7789278, 309, 0};
			bbOnDebugEnterStm(&__stmt_7);
			((struct openb3d_openb3dcore_TMD2Frame_obj*)bbNullObjectTest((BBObject*)((struct openb3d_openb3dcore_TMD2Frame_obj**)BBARRAYDATAINDEX((bbt_frames),(bbt_frames)->dims,((BBUINT)bbt_i4)))[((BBUINT)bbt_i4)]))->_openb3d_openb3dcore_tmd2frame_name =brl_retro_Trim(brl_stream_ReadString2((struct brl_stream_TStream_obj*)bbt_file,16));
			struct BBDebugStm __stmt_8 = {0xfc793edde7789278, 310, 0};
			bbOnDebugEnterStm(&__stmt_8);
			if(bbt_i4==0){
				struct BBDebugScope __scope = {
					BBDEBUGSCOPE_LOCALBLOCK,
					0,
					{
						{
							BBDEBUGDECL_END
						}
					}
				};
				bbOnDebugEnterScope((BBDebugScope *)&__scope);
				struct BBDebugStm __stmt_0 = {0xfc793edde7789278, 310, 0};
				bbOnDebugEnterStm(&__stmt_0);
				((struct openb3d_openb3dcore_TMesh_obj*)bbNullObjectTest((BBObject*)bbt_mesh))->clas->m_SetString_pbS((struct openb3d_openb3dcore_TEntity_obj*)bbt_mesh,((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)bbt_mesh))->_openb3d_openb3dcore_tentity_name ,((struct openb3d_openb3dcore_TMD2Frame_obj*)bbNullObjectTest((BBObject*)((struct openb3d_openb3dcore_TMD2Frame_obj**)BBARRAYDATAINDEX((bbt_frames),(bbt_frames)->dims,((BBUINT)bbt_i4)))[((BBUINT)bbt_i4)]))->_openb3d_openb3dcore_tmd2frame_name );
				bbOnDebugLeaveScope();
			}
			struct BBDebugStm __stmt_9 = {0xfc793edde7789278, 312, 0};
			bbOnDebugEnterStm(&__stmt_9);
			if(openb3d_openb3dcore_TGlobal3D_Log_MD2!=0){
				struct BBDebugScope __scope = {
					BBDEBUGSCOPE_LOCALBLOCK,
					0,
					{
						{
							BBDEBUGDECL_END
						}
					}
				};
				bbOnDebugEnterScope((BBDebugScope *)&__scope);
				struct BBDebugStm __stmt_0 = {0xfc793edde7789278, 312, 0};
				bbOnDebugEnterStm(&__stmt_0);
				brl_blitz_DebugLog(bbStringConcat(bbStringConcat(bbStringConcat(((BBString*)&_s379),bbStringFromInt(bbt_i4)),((BBString*)&_s496)),((struct openb3d_openb3dcore_TMD2Frame_obj*)bbNullObjectTest((BBObject*)((struct openb3d_openb3dcore_TMD2Frame_obj**)BBARRAYDATAINDEX((bbt_frames),(bbt_frames)->dims,((BBUINT)bbt_i4)))[((BBUINT)bbt_i4)]))->_openb3d_openb3dcore_tmd2frame_name ));
				bbOnDebugLeaveScope();
			}
			struct BBDebugStm __stmt_10 = {0xfc793edde7789278, 313, 0};
			bbOnDebugEnterStm(&__stmt_10);
			if(openb3d_openb3dcore_TGlobal3D_Log_MD2!=0){
				struct BBDebugScope __scope = {
					BBDEBUGSCOPE_LOCALBLOCK,
					0,
					{
						{
							BBDEBUGDECL_END
						}
					}
				};
				bbOnDebugEnterScope((BBDebugScope *)&__scope);
				struct BBDebugStm __stmt_0 = {0xfc793edde7789278, 313, 0};
				bbOnDebugEnterStm(&__stmt_0);
				brl_blitz_DebugLog(bbStringConcat(bbStringConcat(bbStringConcat(bbStringConcat(bbStringConcat(((BBString*)&_s497),bbStringFromFloat(((struct openb3d_openb3dcore_TMD2Frame_obj*)bbNullObjectTest((BBObject*)((struct openb3d_openb3dcore_TMD2Frame_obj**)BBARRAYDATAINDEX((bbt_frames),(bbt_frames)->dims,((BBUINT)bbt_i4)))[((BBUINT)bbt_i4)]))->_openb3d_openb3dcore_tmd2frame_sx )),((BBString*)&_s498)),bbStringFromFloat(((struct openb3d_openb3dcore_TMD2Frame_obj*)bbNullObjectTest((BBObject*)((struct openb3d_openb3dcore_TMD2Frame_obj**)BBARRAYDATAINDEX((bbt_frames),(bbt_frames)->dims,((BBUINT)bbt_i4)))[((BBUINT)bbt_i4)]))->_openb3d_openb3dcore_tmd2frame_sy )),((BBString*)&_s498)),bbStringFromFloat(((struct openb3d_openb3dcore_TMD2Frame_obj*)bbNullObjectTest((BBObject*)((struct openb3d_openb3dcore_TMD2Frame_obj**)BBARRAYDATAINDEX((bbt_frames),(bbt_frames)->dims,((BBUINT)bbt_i4)))[((BBUINT)bbt_i4)]))->_openb3d_openb3dcore_tmd2frame_sz )));
				bbOnDebugLeaveScope();
			}
			struct BBDebugStm __stmt_11 = {0xfc793edde7789278, 314, 0};
			bbOnDebugEnterStm(&__stmt_11);
			if(openb3d_openb3dcore_TGlobal3D_Log_MD2!=0){
				struct BBDebugScope __scope = {
					BBDEBUGSCOPE_LOCALBLOCK,
					0,
					{
						{
							BBDEBUGDECL_END
						}
					}
				};
				bbOnDebugEnterScope((BBDebugScope *)&__scope);
				struct BBDebugStm __stmt_0 = {0xfc793edde7789278, 314, 0};
				bbOnDebugEnterStm(&__stmt_0);
				brl_blitz_DebugLog(bbStringConcat(bbStringConcat(bbStringConcat(bbStringConcat(bbStringConcat(((BBString*)&_s499),bbStringFromFloat(((struct openb3d_openb3dcore_TMD2Frame_obj*)bbNullObjectTest((BBObject*)((struct openb3d_openb3dcore_TMD2Frame_obj**)BBARRAYDATAINDEX((bbt_frames),(bbt_frames)->dims,((BBUINT)bbt_i4)))[((BBUINT)bbt_i4)]))->_openb3d_openb3dcore_tmd2frame_tx )),((BBString*)&_s498)),bbStringFromFloat(((struct openb3d_openb3dcore_TMD2Frame_obj*)bbNullObjectTest((BBObject*)((struct openb3d_openb3dcore_TMD2Frame_obj**)BBARRAYDATAINDEX((bbt_frames),(bbt_frames)->dims,((BBUINT)bbt_i4)))[((BBUINT)bbt_i4)]))->_openb3d_openb3dcore_tmd2frame_ty )),((BBString*)&_s498)),bbStringFromFloat(((struct openb3d_openb3dcore_TMD2Frame_obj*)bbNullObjectTest((BBObject*)((struct openb3d_openb3dcore_TMD2Frame_obj**)BBARRAYDATAINDEX((bbt_frames),(bbt_frames)->dims,((BBUINT)bbt_i4)))[((BBUINT)bbt_i4)]))->_openb3d_openb3dcore_tmd2frame_tz )));
				bbOnDebugLeaveScope();
			}
			struct BBDebugStm __stmt_12 = {0xfc793edde7789278, 316, 0};
			bbOnDebugEnterStm(&__stmt_12);
			((struct openb3d_openb3dcore_TMD2Frame_obj*)bbNullObjectTest((BBObject*)((struct openb3d_openb3dcore_TMD2Frame_obj**)BBARRAYDATAINDEX((bbt_frames),(bbt_frames)->dims,((BBUINT)bbt_i4)))[((BBUINT)bbt_i4)]))->_openb3d_openb3dcore_tmd2frame_verts =bbArrayNew1D(":TMD2Vertex", bbt_num_vertices);
			struct BBDebugStm __stmt_13 = {0xfc793edde7789278, 317, 0};
			bbOnDebugEnterStm(&__stmt_13);
			{
				BBINT bbt_v=0;
				BBINT bbt_5=bbt_num_vertices;
				for(;(bbt_v<bbt_5);bbt_v=(bbt_v+1)){
					struct BBDebugScope_1 __scope = {
						BBDEBUGSCOPE_LOCALBLOCK,
						0,
						{
							{
								BBDEBUGDECL_LOCAL,
								"v",
								"i",
								.var_address=&bbt_v
							},
							{
								BBDEBUGDECL_END
							}
						}
					};
					bbOnDebugEnterScope((BBDebugScope *)&__scope);
					struct BBDebugStm __stmt_0 = {0xfc793edde7789278, 318, 0};
					bbOnDebugEnterStm(&__stmt_0);
					((struct openb3d_openb3dcore_TMD2Vertex_obj**)BBARRAYDATAINDEX((((struct openb3d_openb3dcore_TMD2Frame_obj*)bbNullObjectTest((BBObject*)((struct openb3d_openb3dcore_TMD2Frame_obj**)BBARRAYDATAINDEX((bbt_frames),(bbt_frames)->dims,((BBUINT)bbt_i4)))[((BBUINT)bbt_i4)]))->_openb3d_openb3dcore_tmd2frame_verts ),(((struct openb3d_openb3dcore_TMD2Frame_obj*)bbNullObjectTest((BBObject*)((struct openb3d_openb3dcore_TMD2Frame_obj**)BBARRAYDATAINDEX((bbt_frames),(bbt_frames)->dims,((BBUINT)bbt_i4)))[((BBUINT)bbt_i4)]))->_openb3d_openb3dcore_tmd2frame_verts )->dims,((BBUINT)bbt_v)))[((BBUINT)bbt_v)]=(struct openb3d_openb3dcore_TMD2Vertex_obj*)(struct openb3d_openb3dcore_TMD2Vertex_obj*)bbObjectAtomicNew((BBClass *)&openb3d_openb3dcore_TMD2Vertex);
					struct BBDebugStm __stmt_1 = {0xfc793edde7789278, 319, 0};
					bbOnDebugEnterStm(&__stmt_1);
					((struct openb3d_openb3dcore_TMD2Vertex_obj*)bbNullObjectTest((BBObject*)((struct openb3d_openb3dcore_TMD2Vertex_obj**)BBARRAYDATAINDEX((((struct openb3d_openb3dcore_TMD2Frame_obj*)bbNullObjectTest((BBObject*)((struct openb3d_openb3dcore_TMD2Frame_obj**)BBARRAYDATAINDEX((bbt_frames),(bbt_frames)->dims,((BBUINT)bbt_i4)))[((BBUINT)bbt_i4)]))->_openb3d_openb3dcore_tmd2frame_verts ),(((struct openb3d_openb3dcore_TMD2Frame_obj*)bbNullObjectTest((BBObject*)((struct openb3d_openb3dcore_TMD2Frame_obj**)BBARRAYDATAINDEX((bbt_frames),(bbt_frames)->dims,((BBUINT)bbt_i4)))[((BBUINT)bbt_i4)]))->_openb3d_openb3dcore_tmd2frame_verts )->dims,((BBUINT)bbt_v)))[((BBUINT)bbt_v)]))->_openb3d_openb3dcore_tmd2vertex_x =((((BBFLOAT)brl_stream_ReadByte((struct brl_stream_TStream_obj*)bbt_file))*((struct openb3d_openb3dcore_TMD2Frame_obj*)bbNullObjectTest((BBObject*)((struct openb3d_openb3dcore_TMD2Frame_obj**)BBARRAYDATAINDEX((bbt_frames),(bbt_frames)->dims,((BBUINT)bbt_i4)))[((BBUINT)bbt_i4)]))->_openb3d_openb3dcore_tmd2frame_sx )+((struct openb3d_openb3dcore_TMD2Frame_obj*)bbNullObjectTest((BBObject*)((struct openb3d_openb3dcore_TMD2Frame_obj**)BBARRAYDATAINDEX((bbt_frames),(bbt_frames)->dims,((BBUINT)bbt_i4)))[((BBUINT)bbt_i4)]))->_openb3d_openb3dcore_tmd2frame_tx );
					struct BBDebugStm __stmt_2 = {0xfc793edde7789278, 320, 0};
					bbOnDebugEnterStm(&__stmt_2);
					((struct openb3d_openb3dcore_TMD2Vertex_obj*)bbNullObjectTest((BBObject*)((struct openb3d_openb3dcore_TMD2Vertex_obj**)BBARRAYDATAINDEX((((struct openb3d_openb3dcore_TMD2Frame_obj*)bbNullObjectTest((BBObject*)((struct openb3d_openb3dcore_TMD2Frame_obj**)BBARRAYDATAINDEX((bbt_frames),(bbt_frames)->dims,((BBUINT)bbt_i4)))[((BBUINT)bbt_i4)]))->_openb3d_openb3dcore_tmd2frame_verts ),(((struct openb3d_openb3dcore_TMD2Frame_obj*)bbNullObjectTest((BBObject*)((struct openb3d_openb3dcore_TMD2Frame_obj**)BBARRAYDATAINDEX((bbt_frames),(bbt_frames)->dims,((BBUINT)bbt_i4)))[((BBUINT)bbt_i4)]))->_openb3d_openb3dcore_tmd2frame_verts )->dims,((BBUINT)bbt_v)))[((BBUINT)bbt_v)]))->_openb3d_openb3dcore_tmd2vertex_y =((((BBFLOAT)brl_stream_ReadByte((struct brl_stream_TStream_obj*)bbt_file))*((struct openb3d_openb3dcore_TMD2Frame_obj*)bbNullObjectTest((BBObject*)((struct openb3d_openb3dcore_TMD2Frame_obj**)BBARRAYDATAINDEX((bbt_frames),(bbt_frames)->dims,((BBUINT)bbt_i4)))[((BBUINT)bbt_i4)]))->_openb3d_openb3dcore_tmd2frame_sy )+((struct openb3d_openb3dcore_TMD2Frame_obj*)bbNullObjectTest((BBObject*)((struct openb3d_openb3dcore_TMD2Frame_obj**)BBARRAYDATAINDEX((bbt_frames),(bbt_frames)->dims,((BBUINT)bbt_i4)))[((BBUINT)bbt_i4)]))->_openb3d_openb3dcore_tmd2frame_ty );
					struct BBDebugStm __stmt_3 = {0xfc793edde7789278, 321, 0};
					bbOnDebugEnterStm(&__stmt_3);
					((struct openb3d_openb3dcore_TMD2Vertex_obj*)bbNullObjectTest((BBObject*)((struct openb3d_openb3dcore_TMD2Vertex_obj**)BBARRAYDATAINDEX((((struct openb3d_openb3dcore_TMD2Frame_obj*)bbNullObjectTest((BBObject*)((struct openb3d_openb3dcore_TMD2Frame_obj**)BBARRAYDATAINDEX((bbt_frames),(bbt_frames)->dims,((BBUINT)bbt_i4)))[((BBUINT)bbt_i4)]))->_openb3d_openb3dcore_tmd2frame_verts ),(((struct openb3d_openb3dcore_TMD2Frame_obj*)bbNullObjectTest((BBObject*)((struct openb3d_openb3dcore_TMD2Frame_obj**)BBARRAYDATAINDEX((bbt_frames),(bbt_frames)->dims,((BBUINT)bbt_i4)))[((BBUINT)bbt_i4)]))->_openb3d_openb3dcore_tmd2frame_verts )->dims,((BBUINT)bbt_v)))[((BBUINT)bbt_v)]))->_openb3d_openb3dcore_tmd2vertex_z =((((BBFLOAT)brl_stream_ReadByte((struct brl_stream_TStream_obj*)bbt_file))*((struct openb3d_openb3dcore_TMD2Frame_obj*)bbNullObjectTest((BBObject*)((struct openb3d_openb3dcore_TMD2Frame_obj**)BBARRAYDATAINDEX((bbt_frames),(bbt_frames)->dims,((BBUINT)bbt_i4)))[((BBUINT)bbt_i4)]))->_openb3d_openb3dcore_tmd2frame_sz )+((struct openb3d_openb3dcore_TMD2Frame_obj*)bbNullObjectTest((BBObject*)((struct openb3d_openb3dcore_TMD2Frame_obj**)BBARRAYDATAINDEX((bbt_frames),(bbt_frames)->dims,((BBUINT)bbt_i4)))[((BBUINT)bbt_i4)]))->_openb3d_openb3dcore_tmd2frame_tz );
					struct BBDebugStm __stmt_4 = {0xfc793edde7789278, 322, 0};
					bbOnDebugEnterStm(&__stmt_4);
					((struct openb3d_openb3dcore_TMD2Vertex_obj*)bbNullObjectTest((BBObject*)((struct openb3d_openb3dcore_TMD2Vertex_obj**)BBARRAYDATAINDEX((((struct openb3d_openb3dcore_TMD2Frame_obj*)bbNullObjectTest((BBObject*)((struct openb3d_openb3dcore_TMD2Frame_obj**)BBARRAYDATAINDEX((bbt_frames),(bbt_frames)->dims,((BBUINT)bbt_i4)))[((BBUINT)bbt_i4)]))->_openb3d_openb3dcore_tmd2frame_verts ),(((struct openb3d_openb3dcore_TMD2Frame_obj*)bbNullObjectTest((BBObject*)((struct openb3d_openb3dcore_TMD2Frame_obj**)BBARRAYDATAINDEX((bbt_frames),(bbt_frames)->dims,((BBUINT)bbt_i4)))[((BBUINT)bbt_i4)]))->_openb3d_openb3dcore_tmd2frame_verts )->dims,((BBUINT)bbt_v)))[((BBUINT)bbt_v)]))->_openb3d_openb3dcore_tmd2vertex_normalindex =((BBBYTE)brl_stream_ReadByte((struct brl_stream_TStream_obj*)bbt_file));
					struct BBDebugStm __stmt_5 = {0xfc793edde7789278, 326, 0};
					bbOnDebugEnterStm(&__stmt_5);
					((struct openb3d_openb3dcore_TMatPtr_obj*)bbNullObjectTest((BBObject*)openb3d_openb3dcore_TGlobal3D_Matrix_MD2))->clas->m_TransformVec_vfvfvfi((struct openb3d_openb3dcore_TMatPtr_obj*)openb3d_openb3dcore_TGlobal3D_Matrix_MD2,(&((struct openb3d_openb3dcore_TMD2Vertex_obj*)bbNullObjectTest((BBObject*)((struct openb3d_openb3dcore_TMD2Vertex_obj**)BBARRAYDATAINDEX((((struct openb3d_openb3dcore_TMD2Frame_obj*)bbNullObjectTest((BBObject*)((struct openb3d_openb3dcore_TMD2Frame_obj**)BBARRAYDATAINDEX((bbt_frames),(bbt_frames)->dims,((BBUINT)bbt_i4)))[((BBUINT)bbt_i4)]))->_openb3d_openb3dcore_tmd2frame_verts ),(((struct openb3d_openb3dcore_TMD2Frame_obj*)bbNullObjectTest((BBObject*)((struct openb3d_openb3dcore_TMD2Frame_obj**)BBARRAYDATAINDEX((bbt_frames),(bbt_frames)->dims,((BBUINT)bbt_i4)))[((BBUINT)bbt_i4)]))->_openb3d_openb3dcore_tmd2frame_verts )->dims,((BBUINT)bbt_v)))[((BBUINT)bbt_v)]))->_openb3d_openb3dcore_tmd2vertex_x ),(&((struct openb3d_openb3dcore_TMD2Vertex_obj*)bbNullObjectTest((BBObject*)((struct openb3d_openb3dcore_TMD2Vertex_obj**)BBARRAYDATAINDEX((((struct openb3d_openb3dcore_TMD2Frame_obj*)bbNullObjectTest((BBObject*)((struct openb3d_openb3dcore_TMD2Frame_obj**)BBARRAYDATAINDEX((bbt_frames),(bbt_frames)->dims,((BBUINT)bbt_i4)))[((BBUINT)bbt_i4)]))->_openb3d_openb3dcore_tmd2frame_verts ),(((struct openb3d_openb3dcore_TMD2Frame_obj*)bbNullObjectTest((BBObject*)((struct openb3d_openb3dcore_TMD2Frame_obj**)BBARRAYDATAINDEX((bbt_frames),(bbt_frames)->dims,((BBUINT)bbt_i4)))[((BBUINT)bbt_i4)]))->_openb3d_openb3dcore_tmd2frame_verts )->dims,((BBUINT)bbt_v)))[((BBUINT)bbt_v)]))->_openb3d_openb3dcore_tmd2vertex_y ),(&((struct openb3d_openb3dcore_TMD2Vertex_obj*)bbNullObjectTest((BBObject*)((struct openb3d_openb3dcore_TMD2Vertex_obj**)BBARRAYDATAINDEX((((struct openb3d_openb3dcore_TMD2Frame_obj*)bbNullObjectTest((BBObject*)((struct openb3d_openb3dcore_TMD2Frame_obj**)BBARRAYDATAINDEX((bbt_frames),(bbt_frames)->dims,((BBUINT)bbt_i4)))[((BBUINT)bbt_i4)]))->_openb3d_openb3dcore_tmd2frame_verts ),(((struct openb3d_openb3dcore_TMD2Frame_obj*)bbNullObjectTest((BBObject*)((struct openb3d_openb3dcore_TMD2Frame_obj**)BBARRAYDATAINDEX((bbt_frames),(bbt_frames)->dims,((BBUINT)bbt_i4)))[((BBUINT)bbt_i4)]))->_openb3d_openb3dcore_tmd2frame_verts )->dims,((BBUINT)bbt_v)))[((BBUINT)bbt_v)]))->_openb3d_openb3dcore_tmd2vertex_z ),1);
					struct BBDebugStm __stmt_6 = {0xfc793edde7789278, 328, 0};
					bbOnDebugEnterStm(&__stmt_6);
					((struct openb3d_openb3dcore_TSurface_obj*)bbNullObjectTest((BBObject*)bbt_surf))->clas->m_SurfaceFloatArrayAdd_if((struct openb3d_openb3dcore_TSurface_obj*)bbt_surf,3,((struct openb3d_openb3dcore_TMD2Vertex_obj*)bbNullObjectTest((BBObject*)((struct openb3d_openb3dcore_TMD2Vertex_obj**)BBARRAYDATAINDEX((((struct openb3d_openb3dcore_TMD2Frame_obj*)bbNullObjectTest((BBObject*)((struct openb3d_openb3dcore_TMD2Frame_obj**)BBARRAYDATAINDEX((bbt_frames),(bbt_frames)->dims,((BBUINT)bbt_i4)))[((BBUINT)bbt_i4)]))->_openb3d_openb3dcore_tmd2frame_verts ),(((struct openb3d_openb3dcore_TMD2Frame_obj*)bbNullObjectTest((BBObject*)((struct openb3d_openb3dcore_TMD2Frame_obj**)BBARRAYDATAINDEX((bbt_frames),(bbt_frames)->dims,((BBUINT)bbt_i4)))[((BBUINT)bbt_i4)]))->_openb3d_openb3dcore_tmd2frame_verts )->dims,((BBUINT)bbt_v)))[((BBUINT)bbt_v)]))->_openb3d_openb3dcore_tmd2vertex_x );
					struct BBDebugStm __stmt_7 = {0xfc793edde7789278, 329, 0};
					bbOnDebugEnterStm(&__stmt_7);
					((struct openb3d_openb3dcore_TSurface_obj*)bbNullObjectTest((BBObject*)bbt_surf))->clas->m_SurfaceFloatArrayAdd_if((struct openb3d_openb3dcore_TSurface_obj*)bbt_surf,3,((struct openb3d_openb3dcore_TMD2Vertex_obj*)bbNullObjectTest((BBObject*)((struct openb3d_openb3dcore_TMD2Vertex_obj**)BBARRAYDATAINDEX((((struct openb3d_openb3dcore_TMD2Frame_obj*)bbNullObjectTest((BBObject*)((struct openb3d_openb3dcore_TMD2Frame_obj**)BBARRAYDATAINDEX((bbt_frames),(bbt_frames)->dims,((BBUINT)bbt_i4)))[((BBUINT)bbt_i4)]))->_openb3d_openb3dcore_tmd2frame_verts ),(((struct openb3d_openb3dcore_TMD2Frame_obj*)bbNullObjectTest((BBObject*)((struct openb3d_openb3dcore_TMD2Frame_obj**)BBARRAYDATAINDEX((bbt_frames),(bbt_frames)->dims,((BBUINT)bbt_i4)))[((BBUINT)bbt_i4)]))->_openb3d_openb3dcore_tmd2frame_verts )->dims,((BBUINT)bbt_v)))[((BBUINT)bbt_v)]))->_openb3d_openb3dcore_tmd2vertex_y );
					struct BBDebugStm __stmt_8 = {0xfc793edde7789278, 330, 0};
					bbOnDebugEnterStm(&__stmt_8);
					((struct openb3d_openb3dcore_TSurface_obj*)bbNullObjectTest((BBObject*)bbt_surf))->clas->m_SurfaceFloatArrayAdd_if((struct openb3d_openb3dcore_TSurface_obj*)bbt_surf,3,-((struct openb3d_openb3dcore_TMD2Vertex_obj*)bbNullObjectTest((BBObject*)((struct openb3d_openb3dcore_TMD2Vertex_obj**)BBARRAYDATAINDEX((((struct openb3d_openb3dcore_TMD2Frame_obj*)bbNullObjectTest((BBObject*)((struct openb3d_openb3dcore_TMD2Frame_obj**)BBARRAYDATAINDEX((bbt_frames),(bbt_frames)->dims,((BBUINT)bbt_i4)))[((BBUINT)bbt_i4)]))->_openb3d_openb3dcore_tmd2frame_verts ),(((struct openb3d_openb3dcore_TMD2Frame_obj*)bbNullObjectTest((BBObject*)((struct openb3d_openb3dcore_TMD2Frame_obj**)BBARRAYDATAINDEX((bbt_frames),(bbt_frames)->dims,((BBUINT)bbt_i4)))[((BBUINT)bbt_i4)]))->_openb3d_openb3dcore_tmd2frame_verts )->dims,((BBUINT)bbt_v)))[((BBUINT)bbt_v)]))->_openb3d_openb3dcore_tmd2vertex_z );
					struct BBDebugStm __stmt_9 = {0xfc793edde7789278, 332, 0};
					bbOnDebugEnterStm(&__stmt_9);
					((struct openb3d_openb3dcore_TSurface_obj*)bbNullObjectTest((BBObject*)bbt_surf))->clas->m_SurfaceFloatArrayAdd_if((struct openb3d_openb3dcore_TSurface_obj*)bbt_surf,4,((BBFLOAT*)BBARRAYDATAINDEX((openb3d_openb3dcore_TMD2_md2_anorms),(openb3d_openb3dcore_TMD2_md2_anorms)->dims,((BBUINT)(((BBINT)((struct openb3d_openb3dcore_TMD2Vertex_obj*)bbNullObjectTest((BBObject*)((struct openb3d_openb3dcore_TMD2Vertex_obj**)BBARRAYDATAINDEX((((struct openb3d_openb3dcore_TMD2Frame_obj*)bbNullObjectTest((BBObject*)((struct openb3d_openb3dcore_TMD2Frame_obj**)BBARRAYDATAINDEX((bbt_frames),(bbt_frames)->dims,((BBUINT)bbt_i4)))[((BBUINT)bbt_i4)]))->_openb3d_openb3dcore_tmd2frame_verts ),(((struct openb3d_openb3dcore_TMD2Frame_obj*)bbNullObjectTest((BBObject*)((struct openb3d_openb3dcore_TMD2Frame_obj**)BBARRAYDATAINDEX((bbt_frames),(bbt_frames)->dims,((BBUINT)bbt_i4)))[((BBUINT)bbt_i4)]))->_openb3d_openb3dcore_tmd2frame_verts )->dims,((BBUINT)bbt_v)))[((BBUINT)bbt_v)]))->_openb3d_openb3dcore_tmd2vertex_normalindex )+2))))[((BBUINT)(((BBINT)((struct openb3d_openb3dcore_TMD2Vertex_obj*)bbNullObjectTest((BBObject*)((struct openb3d_openb3dcore_TMD2Vertex_obj**)BBARRAYDATAINDEX((((struct openb3d_openb3dcore_TMD2Frame_obj*)bbNullObjectTest((BBObject*)((struct openb3d_openb3dcore_TMD2Frame_obj**)BBARRAYDATAINDEX((bbt_frames),(bbt_frames)->dims,((BBUINT)bbt_i4)))[((BBUINT)bbt_i4)]))->_openb3d_openb3dcore_tmd2frame_verts ),(((struct openb3d_openb3dcore_TMD2Frame_obj*)bbNullObjectTest((BBObject*)((struct openb3d_openb3dcore_TMD2Frame_obj**)BBARRAYDATAINDEX((bbt_frames),(bbt_frames)->dims,((BBUINT)bbt_i4)))[((BBUINT)bbt_i4)]))->_openb3d_openb3dcore_tmd2frame_verts )->dims,((BBUINT)bbt_v)))[((BBUINT)bbt_v)]))->_openb3d_openb3dcore_tmd2vertex_normalindex )+2))]);
					struct BBDebugStm __stmt_10 = {0xfc793edde7789278, 333, 0};
					bbOnDebugEnterStm(&__stmt_10);
					((struct openb3d_openb3dcore_TSurface_obj*)bbNullObjectTest((BBObject*)bbt_surf))->clas->m_SurfaceFloatArrayAdd_if((struct openb3d_openb3dcore_TSurface_obj*)bbt_surf,4,((BBFLOAT*)BBARRAYDATAINDEX((openb3d_openb3dcore_TMD2_md2_anorms),(openb3d_openb3dcore_TMD2_md2_anorms)->dims,((BBUINT)(((BBINT)((struct openb3d_openb3dcore_TMD2Vertex_obj*)bbNullObjectTest((BBObject*)((struct openb3d_openb3dcore_TMD2Vertex_obj**)BBARRAYDATAINDEX((((struct openb3d_openb3dcore_TMD2Frame_obj*)bbNullObjectTest((BBObject*)((struct openb3d_openb3dcore_TMD2Frame_obj**)BBARRAYDATAINDEX((bbt_frames),(bbt_frames)->dims,((BBUINT)bbt_i4)))[((BBUINT)bbt_i4)]))->_openb3d_openb3dcore_tmd2frame_verts ),(((struct openb3d_openb3dcore_TMD2Frame_obj*)bbNullObjectTest((BBObject*)((struct openb3d_openb3dcore_TMD2Frame_obj**)BBARRAYDATAINDEX((bbt_frames),(bbt_frames)->dims,((BBUINT)bbt_i4)))[((BBUINT)bbt_i4)]))->_openb3d_openb3dcore_tmd2frame_verts )->dims,((BBUINT)bbt_v)))[((BBUINT)bbt_v)]))->_openb3d_openb3dcore_tmd2vertex_normalindex )+1))))[((BBUINT)(((BBINT)((struct openb3d_openb3dcore_TMD2Vertex_obj*)bbNullObjectTest((BBObject*)((struct openb3d_openb3dcore_TMD2Vertex_obj**)BBARRAYDATAINDEX((((struct openb3d_openb3dcore_TMD2Frame_obj*)bbNullObjectTest((BBObject*)((struct openb3d_openb3dcore_TMD2Frame_obj**)BBARRAYDATAINDEX((bbt_frames),(bbt_frames)->dims,((BBUINT)bbt_i4)))[((BBUINT)bbt_i4)]))->_openb3d_openb3dcore_tmd2frame_verts ),(((struct openb3d_openb3dcore_TMD2Frame_obj*)bbNullObjectTest((BBObject*)((struct openb3d_openb3dcore_TMD2Frame_obj**)BBARRAYDATAINDEX((bbt_frames),(bbt_frames)->dims,((BBUINT)bbt_i4)))[((BBUINT)bbt_i4)]))->_openb3d_openb3dcore_tmd2frame_verts )->dims,((BBUINT)bbt_v)))[((BBUINT)bbt_v)]))->_openb3d_openb3dcore_tmd2vertex_normalindex )+1))]);
					struct BBDebugStm __stmt_11 = {0xfc793edde7789278, 334, 0};
					bbOnDebugEnterStm(&__stmt_11);
					((struct openb3d_openb3dcore_TSurface_obj*)bbNullObjectTest((BBObject*)bbt_surf))->clas->m_SurfaceFloatArrayAdd_if((struct openb3d_openb3dcore_TSurface_obj*)bbt_surf,4,-((BBFLOAT*)BBARRAYDATAINDEX((openb3d_openb3dcore_TMD2_md2_anorms),(openb3d_openb3dcore_TMD2_md2_anorms)->dims,((BBUINT)((struct openb3d_openb3dcore_TMD2Vertex_obj*)bbNullObjectTest((BBObject*)((struct openb3d_openb3dcore_TMD2Vertex_obj**)BBARRAYDATAINDEX((((struct openb3d_openb3dcore_TMD2Frame_obj*)bbNullObjectTest((BBObject*)((struct openb3d_openb3dcore_TMD2Frame_obj**)BBARRAYDATAINDEX((bbt_frames),(bbt_frames)->dims,((BBUINT)bbt_i4)))[((BBUINT)bbt_i4)]))->_openb3d_openb3dcore_tmd2frame_verts ),(((struct openb3d_openb3dcore_TMD2Frame_obj*)bbNullObjectTest((BBObject*)((struct openb3d_openb3dcore_TMD2Frame_obj**)BBARRAYDATAINDEX((bbt_frames),(bbt_frames)->dims,((BBUINT)bbt_i4)))[((BBUINT)bbt_i4)]))->_openb3d_openb3dcore_tmd2frame_verts )->dims,((BBUINT)bbt_v)))[((BBUINT)bbt_v)]))->_openb3d_openb3dcore_tmd2vertex_normalindex )))[((BBUINT)((struct openb3d_openb3dcore_TMD2Vertex_obj*)bbNullObjectTest((BBObject*)((struct openb3d_openb3dcore_TMD2Vertex_obj**)BBARRAYDATAINDEX((((struct openb3d_openb3dcore_TMD2Frame_obj*)bbNullObjectTest((BBObject*)((struct openb3d_openb3dcore_TMD2Frame_obj**)BBARRAYDATAINDEX((bbt_frames),(bbt_frames)->dims,((BBUINT)bbt_i4)))[((BBUINT)bbt_i4)]))->_openb3d_openb3dcore_tmd2frame_verts ),(((struct openb3d_openb3dcore_TMD2Frame_obj*)bbNullObjectTest((BBObject*)((struct openb3d_openb3dcore_TMD2Frame_obj**)BBARRAYDATAINDEX((bbt_frames),(bbt_frames)->dims,((BBUINT)bbt_i4)))[((BBUINT)bbt_i4)]))->_openb3d_openb3dcore_tmd2frame_verts )->dims,((BBUINT)bbt_v)))[((BBUINT)bbt_v)]))->_openb3d_openb3dcore_tmd2vertex_normalindex )]);
					bbOnDebugLeaveScope();
				}
			}
			struct BBDebugStm __stmt_14 = {0xfc793edde7789278, 337, 0};
			bbOnDebugEnterStm(&__stmt_14);
			((struct openb3d_openb3dcore_TSurface_obj*)bbNullObjectTest((BBObject*)bbt_anim_surf))->clas->m_SurfaceFloatArrayAdd_if((struct openb3d_openb3dcore_TSurface_obj*)bbt_anim_surf,16,((BBFLOAT)bbt_i4));
			bbOnDebugLeaveScope();
		}
	}
	struct BBDebugStm __stmt_56 = {0xfc793edde7789278, 340, 0};
	bbOnDebugEnterStm(&__stmt_56);
	if(bbt_num_frames>1){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0xfc793edde7789278, 340, 0};
		bbOnDebugEnterStm(&__stmt_0);
		((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)bbt_mesh))->_openb3d_openb3dcore_tentity_anim [0]=2;
		bbOnDebugLeaveScope();
	}
	struct BBDebugStm __stmt_57 = {0xfc793edde7789278, 341, 0};
	bbOnDebugEnterStm(&__stmt_57);
	((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)bbt_mesh))->_openb3d_openb3dcore_tentity_anim_seqs_first [0]=0;
	struct BBDebugStm __stmt_58 = {0xfc793edde7789278, 342, 0};
	bbOnDebugEnterStm(&__stmt_58);
	((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)bbt_mesh))->_openb3d_openb3dcore_tentity_anim_seqs_last [0]=(bbt_num_frames-1);
	struct BBDebugStm __stmt_59 = {0xfc793edde7789278, 343, 0};
	bbOnDebugEnterStm(&__stmt_59);
	((struct openb3d_openb3dcore_TMesh_obj*)bbNullObjectTest((BBObject*)bbt_mesh))->_openb3d_openb3dcore_tmesh_no_surfs [0]=-1;
	struct BBDebugStm __stmt_60 = {0xfc793edde7789278, 345, 0};
	bbOnDebugEnterStm(&__stmt_60);
	if(openb3d_openb3dcore_TGlobal3D_Log_MD2!=0){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0xfc793edde7789278, 345, 0};
		bbOnDebugEnterStm(&__stmt_0);
		brl_blitz_DebugLog((BBString*)&bbEmptyString);
		bbOnDebugLeaveScope();
	}
	struct BBDebugStm __stmt_61 = {0xfc793edde7789278, 346, 0};
	bbOnDebugEnterStm(&__stmt_61);
	bbOnDebugLeaveScope();
	return (struct openb3d_openb3dcore_TMesh_obj*)bbt_mesh;
}
BBARRAY openb3d_openb3dcore_TMD2_md2_anorms;
struct BBDebugScope_4 openb3d_openb3dcore_TMD2_scope ={
	BBDEBUGSCOPE_USERTYPE,
	"TMD2",
	{
		{
			BBDEBUGDECL_GLOBAL,
			"md2_anorms",
			"[]f",
			.var_address=(void*)&openb3d_openb3dcore_TMD2_md2_anorms
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"New",
			"()i",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_TMD2_New
		},
		{
			BBDEBUGDECL_TYPEFUNCTION,
			"LoadMD2",
			"(:Object,:TEntity):TMesh",
			.func_ptr=(BBFuncPtr)&openb3d_openb3dcore_TMD2_LoadMD2_TTMesh_TObjectTTEntity
		},
		{
			BBDEBUGDECL_TYPEFUNCTION,
			"LoadMD2FromStream",
			"(:TStream,:Object,:TEntity):TMesh",
			.func_ptr=(BBFuncPtr)&openb3d_openb3dcore_TMD2_LoadMD2FromStream_TTMesh_TTStreamTObjectTTEntity
		},
		{
			BBDEBUGDECL_END
		}
	}
};
struct BBClass_openb3d_openb3dcore_TMD2 openb3d_openb3dcore_TMD2={
	&bbObjectClass,
	bbObjectFree,
	(BBDebugScope*)&openb3d_openb3dcore_TMD2_scope,
	sizeof(struct openb3d_openb3dcore_TMD2_obj),
	(void (*)(BBOBJECT))_openb3d_openb3dcore_TMD2_New,
	bbObjectDtor,
	bbObjectToString,
	bbObjectCompare,
	bbObjectSendMessage,
	0,
	0,
	0
	,0
	,sizeof(void*)
	,openb3d_openb3dcore_TMD2_LoadMD2_TTMesh_TObjectTTEntity
	,openb3d_openb3dcore_TMD2_LoadMD2FromStream_TTMesh_TTStreamTObjectTTEntity
};

void _openb3d_openb3dcore_T3DS_New(struct openb3d_openb3dcore_T3DS_obj* o) {
	bbObjectCtor((BBOBJECT)o);
	o->clas = &openb3d_openb3dcore_T3DS;
	((struct openb3d_openb3dcore_T3DS_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_t3ds_stream = (struct brl_stream_TStream_obj*)((struct brl_stream_TStream_obj*)&bbNullObject);
	((struct openb3d_openb3dcore_T3DS_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_t3ds_chunkid = 0;
	((struct openb3d_openb3dcore_T3DS_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_t3ds_chunksize = 0;
	((struct openb3d_openb3dcore_T3DS_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_t3ds_surface = (struct openb3d_openb3dcore_TSurface_obj*)((struct openb3d_openb3dcore_TSurface_obj*)&bbNullObject);
	((struct openb3d_openb3dcore_T3DS_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_t3ds_mesh = (struct openb3d_openb3dcore_TMesh_obj*)((struct openb3d_openb3dcore_TMesh_obj*)&bbNullObject);
	((struct openb3d_openb3dcore_T3DS_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_t3ds_root = (struct openb3d_openb3dcore_TMesh_obj*)((struct openb3d_openb3dcore_TMesh_obj*)&bbNullObject);
	((struct openb3d_openb3dcore_T3DS_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_t3ds_new_surface = (struct openb3d_openb3dcore_TSurface_obj*)((struct openb3d_openb3dcore_TSurface_obj*)&bbNullObject);
	((struct openb3d_openb3dcore_T3DS_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_t3ds_new_mesh = (struct openb3d_openb3dcore_TMesh_obj*)((struct openb3d_openb3dcore_TMesh_obj*)&bbNullObject);
	((struct openb3d_openb3dcore_T3DS_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_t3ds_vertexcount = 0;
	((struct openb3d_openb3dcore_T3DS_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_t3ds_trianglecount = 0;
	((struct openb3d_openb3dcore_T3DS_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_t3ds_brush = (struct openb3d_openb3dcore_TBrush_obj*)((struct openb3d_openb3dcore_TBrush_obj*)&bbNullObject);
	((struct openb3d_openb3dcore_T3DS_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_t3ds_brushs = (struct brl_linkedlist_TList_obj*)((struct brl_linkedlist_TList_obj*)&bbNullObject);
	((struct openb3d_openb3dcore_T3DS_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_t3ds_texturelayer = 0;
	((struct openb3d_openb3dcore_T3DS_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_t3ds_texture = (struct openb3d_openb3dcore_TTexture_obj*)((struct openb3d_openb3dcore_TTexture_obj*)&bbNullObject);
	((struct openb3d_openb3dcore_T3DS_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_t3ds_movedtris = (&bbEmptyArray);
	((struct openb3d_openb3dcore_T3DS_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_t3ds_trisindex = 0;
	((struct openb3d_openb3dcore_T3DS_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_t3ds_objectnames = (&bbEmptyArray);
	((struct openb3d_openb3dcore_T3DS_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_t3ds_objectindex = 0;
	((struct openb3d_openb3dcore_T3DS_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_t3ds_red = 0;
	((struct openb3d_openb3dcore_T3DS_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_t3ds_green = 0;
	((struct openb3d_openb3dcore_T3DS_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_t3ds_blue = 0;
	((struct openb3d_openb3dcore_T3DS_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_t3ds_percent = 0;
	((struct openb3d_openb3dcore_T3DS_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_t3ds_meshes = (struct brl_linkedlist_TList_obj*)((struct brl_linkedlist_TList_obj*)&bbNullObject);
	((struct openb3d_openb3dcore_T3DS_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_t3ds_matrixmap = (struct brl_map_TMap_obj*)((struct brl_map_TMap_obj*)&bbNullObject);
	((struct openb3d_openb3dcore_T3DS_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_t3ds_new_matrix = (struct openb3d_openb3dcore_TMatPtr_obj*)((struct openb3d_openb3dcore_TMatPtr_obj*)&bbNullObject);
	((struct openb3d_openb3dcore_T3DS_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_t3ds_override_texflags = 0;
	struct BBDebugScope __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"New",
		{
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0xfcf57dd78e8efc53, 310, 0};
	bbOnDebugEnterStm(&__stmt_0);
	((struct openb3d_openb3dcore_T3DS_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_t3ds_stream =(struct brl_stream_TStream_obj*)&bbNullObject;
	struct BBDebugStm __stmt_1 = {0xfcf57dd78e8efc53, 311, 0};
	bbOnDebugEnterStm(&__stmt_1);
	((struct openb3d_openb3dcore_T3DS_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_t3ds_chunkid =0;
	struct BBDebugStm __stmt_2 = {0xfcf57dd78e8efc53, 312, 0};
	bbOnDebugEnterStm(&__stmt_2);
	((struct openb3d_openb3dcore_T3DS_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_t3ds_chunksize =0;
	struct BBDebugStm __stmt_3 = {0xfcf57dd78e8efc53, 313, 0};
	bbOnDebugEnterStm(&__stmt_3);
	((struct openb3d_openb3dcore_T3DS_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_t3ds_surface =(struct openb3d_openb3dcore_TSurface_obj*)&bbNullObject;
	struct BBDebugStm __stmt_4 = {0xfcf57dd78e8efc53, 314, 0};
	bbOnDebugEnterStm(&__stmt_4);
	((struct openb3d_openb3dcore_T3DS_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_t3ds_vertexcount =0;
	struct BBDebugStm __stmt_5 = {0xfcf57dd78e8efc53, 315, 0};
	bbOnDebugEnterStm(&__stmt_5);
	((struct openb3d_openb3dcore_T3DS_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_t3ds_trianglecount =0;
	struct BBDebugStm __stmt_6 = {0xfcf57dd78e8efc53, 316, 0};
	bbOnDebugEnterStm(&__stmt_6);
	((struct openb3d_openb3dcore_T3DS_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_t3ds_mesh =(struct openb3d_openb3dcore_TMesh_obj*)&bbNullObject;
	struct BBDebugStm __stmt_7 = {0xfcf57dd78e8efc53, 317, 0};
	bbOnDebugEnterStm(&__stmt_7);
	((struct openb3d_openb3dcore_T3DS_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_t3ds_root =(struct openb3d_openb3dcore_TMesh_obj*)&bbNullObject;
	struct BBDebugStm __stmt_8 = {0xfcf57dd78e8efc53, 318, 0};
	bbOnDebugEnterStm(&__stmt_8);
	((struct openb3d_openb3dcore_T3DS_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_t3ds_brush =(struct openb3d_openb3dcore_TBrush_obj*)&bbNullObject;
	struct BBDebugStm __stmt_9 = {0xfcf57dd78e8efc53, 319, 0};
	bbOnDebugEnterStm(&__stmt_9);
	((struct openb3d_openb3dcore_T3DS_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_t3ds_texturelayer =0;
	struct BBDebugStm __stmt_10 = {0xfcf57dd78e8efc53, 320, 0};
	bbOnDebugEnterStm(&__stmt_10);
	((struct openb3d_openb3dcore_T3DS_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_t3ds_texture =(struct openb3d_openb3dcore_TTexture_obj*)&bbNullObject;
	struct BBDebugStm __stmt_11 = {0xfcf57dd78e8efc53, 321, 0};
	bbOnDebugEnterStm(&__stmt_11);
	((struct openb3d_openb3dcore_T3DS_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_t3ds_brushs =(struct brl_linkedlist_TList_obj*)brl_linkedlist_CreateList();
	struct BBDebugStm __stmt_12 = {0xfcf57dd78e8efc53, 322, 0};
	bbOnDebugEnterStm(&__stmt_12);
	((struct openb3d_openb3dcore_T3DS_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_t3ds_trisindex =0;
	struct BBDebugStm __stmt_13 = {0xfcf57dd78e8efc53, 323, 0};
	bbOnDebugEnterStm(&__stmt_13);
	((struct openb3d_openb3dcore_T3DS_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_t3ds_objectindex =0;
	struct BBDebugStm __stmt_14 = {0xfcf57dd78e8efc53, 324, 0};
	bbOnDebugEnterStm(&__stmt_14);
	((struct openb3d_openb3dcore_T3DS_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_t3ds_meshes =(struct brl_linkedlist_TList_obj*)brl_linkedlist_CreateList();
	struct BBDebugStm __stmt_15 = {0xfcf57dd78e8efc53, 325, 0};
	bbOnDebugEnterStm(&__stmt_15);
	((struct openb3d_openb3dcore_T3DS_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_t3ds_matrixmap =(struct brl_map_TMap_obj*)brl_map_CreateMap();
	bbOnDebugLeaveScope();
}
BBINT _openb3d_openb3dcore_T3DS_ReadChunk(struct openb3d_openb3dcore_T3DS_obj* o){
	((struct openb3d_openb3dcore_T3DS_obj*)bbNullObjectTest((BBObject*)o));
	struct BBDebugScope_1 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"ReadChunk",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":T3DS",
				.var_address=&o
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0xfcf57dd78e8efc53, 52, 0};
	bbOnDebugEnterStm(&__stmt_0);
	if(((struct brl_stream_TStream_obj*)bbNullObjectTest((BBObject*)((struct openb3d_openb3dcore_T3DS_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_t3ds_stream ))->clas->m_Eof((struct brl_stream_TIO_obj*)((struct openb3d_openb3dcore_T3DS_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_t3ds_stream )!=0){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0xfcf57dd78e8efc53, 52, 0};
		bbOnDebugEnterStm(&__stmt_0);
		bbOnDebugLeaveScope();
		bbOnDebugLeaveScope();
		return 0;
	}
	struct BBDebugStm __stmt_1 = {0xfcf57dd78e8efc53, 54, 0};
	bbOnDebugEnterStm(&__stmt_1);
	((struct openb3d_openb3dcore_T3DS_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_t3ds_chunkid =((BBSHORT)((struct brl_stream_TStream_obj*)bbNullObjectTest((BBObject*)((struct openb3d_openb3dcore_T3DS_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_t3ds_stream ))->clas->m_ReadShort((struct brl_stream_TStream_obj*)((struct openb3d_openb3dcore_T3DS_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_t3ds_stream ));
	struct BBDebugStm __stmt_2 = {0xfcf57dd78e8efc53, 55, 0};
	bbOnDebugEnterStm(&__stmt_2);
	((struct openb3d_openb3dcore_T3DS_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_t3ds_chunksize =((struct brl_stream_TStream_obj*)bbNullObjectTest((BBObject*)((struct openb3d_openb3dcore_T3DS_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_t3ds_stream ))->clas->m_ReadInt((struct brl_stream_TStream_obj*)((struct openb3d_openb3dcore_T3DS_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_t3ds_stream );
	bbOnDebugLeaveScope();
	return 0;
}
BBINT _openb3d_openb3dcore_T3DS_SkipChunk(struct openb3d_openb3dcore_T3DS_obj* o){
	((struct openb3d_openb3dcore_T3DS_obj*)bbNullObjectTest((BBObject*)o));
	struct BBDebugScope_1 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"SkipChunk",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":T3DS",
				.var_address=&o
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0xfcf57dd78e8efc53, 59, 0};
	bbOnDebugEnterStm(&__stmt_0);
	((struct brl_stream_TStream_obj*)bbNullObjectTest((BBObject*)((struct openb3d_openb3dcore_T3DS_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_t3ds_stream ))->clas->m_Seek_li((struct brl_stream_TIO_obj*)((struct openb3d_openb3dcore_T3DS_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_t3ds_stream ,((((struct brl_stream_TStream_obj*)bbNullObjectTest((BBObject*)((struct openb3d_openb3dcore_T3DS_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_t3ds_stream ))->clas->m_Pos((struct brl_stream_TIO_obj*)((struct openb3d_openb3dcore_T3DS_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_t3ds_stream )+((BBLONG)((struct openb3d_openb3dcore_T3DS_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_t3ds_chunksize ))-6LL),0);
	bbOnDebugLeaveScope();
	return 0;
}
BBSTRING _openb3d_openb3dcore_T3DS_ReadCString(struct openb3d_openb3dcore_T3DS_obj* o){
	((struct openb3d_openb3dcore_T3DS_obj*)bbNullObjectTest((BBObject*)o));
	BBBYTE bbt_Char=0;
	BBSTRING bbt_CString=(&bbEmptyString);
	struct BBDebugScope_3 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"ReadCString",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":T3DS",
				.var_address=&o
			},
			{
				BBDEBUGDECL_LOCAL,
				"Char",
				"b",
				.var_address=&bbt_Char
			},
			{
				BBDEBUGDECL_LOCAL,
				"CString",
				"$",
				.var_address=&bbt_CString
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0xfcf57dd78e8efc53, 63, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbt_Char=0;
	struct BBDebugStm __stmt_1 = {0xfcf57dd78e8efc53, 63, 0};
	bbOnDebugEnterStm(&__stmt_1);
	bbt_CString=((BBString*)&bbEmptyString);
	struct BBDebugStm __stmt_2 = {0xfcf57dd78e8efc53, 66, 0};
	bbOnDebugEnterStm(&__stmt_2);
	while(!(((struct brl_stream_TStream_obj*)bbNullObjectTest((BBObject*)((struct openb3d_openb3dcore_T3DS_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_t3ds_stream ))->clas->m_Eof((struct brl_stream_TIO_obj*)((struct openb3d_openb3dcore_T3DS_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_t3ds_stream )!=0)){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0xfcf57dd78e8efc53, 67, 0};
		bbOnDebugEnterStm(&__stmt_0);
		bbt_Char=((BBBYTE)((struct brl_stream_TStream_obj*)bbNullObjectTest((BBObject*)((struct openb3d_openb3dcore_T3DS_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_t3ds_stream ))->clas->m_ReadByte((struct brl_stream_TStream_obj*)((struct openb3d_openb3dcore_T3DS_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_t3ds_stream ));
		struct BBDebugStm __stmt_1 = {0xfcf57dd78e8efc53, 68, 0};
		bbOnDebugEnterStm(&__stmt_1);
		if(((BBINT)bbt_Char)==0){
			struct BBDebugScope __scope = {
				BBDEBUGSCOPE_LOCALBLOCK,
				0,
				{
					{
						BBDEBUGDECL_END
					}
				}
			};
			bbOnDebugEnterScope((BBDebugScope *)&__scope);
			struct BBDebugStm __stmt_0 = {0xfcf57dd78e8efc53, 68, 0};
			bbOnDebugEnterStm(&__stmt_0);
			bbOnDebugLeaveScope();
			bbOnDebugLeaveScope();
			break;
		}
		struct BBDebugStm __stmt_2 = {0xfcf57dd78e8efc53, 69, 0};
		bbOnDebugEnterStm(&__stmt_2);
		bbt_CString=bbStringConcat(bbt_CString,bbStringFromChar((BBINT)bbt_Char));
		bbOnDebugLeaveScope();
	}
	struct BBDebugStm __stmt_3 = {0xfcf57dd78e8efc53, 72, 0};
	bbOnDebugEnterStm(&__stmt_3);
	bbOnDebugLeaveScope();
	return bbt_CString;
}
BBINT _openb3d_openb3dcore_T3DS_ReadRGB_ivbvbvb(struct openb3d_openb3dcore_T3DS_obj* o,BBINT bbt_Format,BBBYTE* bbt_Red,BBBYTE* bbt_Green,BBBYTE* bbt_Blue){
	((struct openb3d_openb3dcore_T3DS_obj*)bbNullObjectTest((BBObject*)o));
	struct BBDebugScope_5 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"ReadRGB",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":T3DS",
				.var_address=&o
			},
			{
				BBDEBUGDECL_LOCAL,
				"Format",
				"i",
				.var_address=&bbt_Format
			},
			{
				BBDEBUGDECL_VARPARAM,
				"Red",
				"b",
				.var_address=&bbt_Red
			},
			{
				BBDEBUGDECL_VARPARAM,
				"Green",
				"b",
				.var_address=&bbt_Green
			},
			{
				BBDEBUGDECL_VARPARAM,
				"Blue",
				"b",
				.var_address=&bbt_Blue
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0xfcf57dd78e8efc53, 76, 0};
	bbOnDebugEnterStm(&__stmt_0);
	BBINT bbt_=bbt_Format;
	struct BBDebugStm __stmt_1 = {0xfcf57dd78e8efc53, 77, 0};
	bbOnDebugEnterStm(&__stmt_1);
	if(bbt_==16){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0xfcf57dd78e8efc53, 78, 0};
		bbOnDebugEnterStm(&__stmt_0);
		*bbt_Red=((BBBYTE)(((struct brl_stream_TStream_obj*)bbNullObjectTest((BBObject*)((struct openb3d_openb3dcore_T3DS_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_t3ds_stream ))->clas->m_ReadFloat((struct brl_stream_TStream_obj*)((struct openb3d_openb3dcore_T3DS_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_t3ds_stream )*255.000000f));
		struct BBDebugStm __stmt_1 = {0xfcf57dd78e8efc53, 79, 0};
		bbOnDebugEnterStm(&__stmt_1);
		*bbt_Green=((BBBYTE)(((struct brl_stream_TStream_obj*)bbNullObjectTest((BBObject*)((struct openb3d_openb3dcore_T3DS_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_t3ds_stream ))->clas->m_ReadFloat((struct brl_stream_TStream_obj*)((struct openb3d_openb3dcore_T3DS_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_t3ds_stream )*255.000000f));
		struct BBDebugStm __stmt_2 = {0xfcf57dd78e8efc53, 80, 0};
		bbOnDebugEnterStm(&__stmt_2);
		*bbt_Blue=((BBBYTE)(((struct brl_stream_TStream_obj*)bbNullObjectTest((BBObject*)((struct openb3d_openb3dcore_T3DS_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_t3ds_stream ))->clas->m_ReadFloat((struct brl_stream_TStream_obj*)((struct openb3d_openb3dcore_T3DS_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_t3ds_stream )*255.000000f));
		struct BBDebugStm __stmt_3 = {0xfcf57dd78e8efc53, 81, 0};
		bbOnDebugEnterStm(&__stmt_3);
		if(openb3d_openb3dcore_TGlobal3D_Log_3DS!=0){
			struct BBDebugScope __scope = {
				BBDEBUGSCOPE_LOCALBLOCK,
				0,
				{
					{
						BBDEBUGDECL_END
					}
				}
			};
			bbOnDebugEnterScope((BBDebugScope *)&__scope);
			struct BBDebugStm __stmt_0 = {0xfcf57dd78e8efc53, 81, 0};
			bbOnDebugEnterStm(&__stmt_0);
			brl_blitz_DebugLog(bbStringConcat(bbStringConcat(bbStringConcat(bbStringConcat(bbStringConcat(((BBString*)&_s500),bbStringFromInt(*bbt_Red)),((BBString*)&_s445)),bbStringFromInt(*bbt_Green)),((BBString*)&_s445)),bbStringFromInt(*bbt_Blue)));
			bbOnDebugLeaveScope();
		}
		bbOnDebugLeaveScope();
	}else{
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0xfcf57dd78e8efc53, 83, 0};
		bbOnDebugEnterStm(&__stmt_0);
		if(bbt_==17){
			struct BBDebugScope __scope = {
				BBDEBUGSCOPE_LOCALBLOCK,
				0,
				{
					{
						BBDEBUGDECL_END
					}
				}
			};
			bbOnDebugEnterScope((BBDebugScope *)&__scope);
			struct BBDebugStm __stmt_0 = {0xfcf57dd78e8efc53, 84, 0};
			bbOnDebugEnterStm(&__stmt_0);
			*bbt_Red=((BBBYTE)((struct brl_stream_TStream_obj*)bbNullObjectTest((BBObject*)((struct openb3d_openb3dcore_T3DS_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_t3ds_stream ))->clas->m_ReadByte((struct brl_stream_TStream_obj*)((struct openb3d_openb3dcore_T3DS_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_t3ds_stream ));
			struct BBDebugStm __stmt_1 = {0xfcf57dd78e8efc53, 85, 0};
			bbOnDebugEnterStm(&__stmt_1);
			*bbt_Green=((BBBYTE)((struct brl_stream_TStream_obj*)bbNullObjectTest((BBObject*)((struct openb3d_openb3dcore_T3DS_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_t3ds_stream ))->clas->m_ReadByte((struct brl_stream_TStream_obj*)((struct openb3d_openb3dcore_T3DS_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_t3ds_stream ));
			struct BBDebugStm __stmt_2 = {0xfcf57dd78e8efc53, 86, 0};
			bbOnDebugEnterStm(&__stmt_2);
			*bbt_Blue=((BBBYTE)((struct brl_stream_TStream_obj*)bbNullObjectTest((BBObject*)((struct openb3d_openb3dcore_T3DS_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_t3ds_stream ))->clas->m_ReadByte((struct brl_stream_TStream_obj*)((struct openb3d_openb3dcore_T3DS_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_t3ds_stream ));
			struct BBDebugStm __stmt_3 = {0xfcf57dd78e8efc53, 87, 0};
			bbOnDebugEnterStm(&__stmt_3);
			if(openb3d_openb3dcore_TGlobal3D_Log_3DS!=0){
				struct BBDebugScope __scope = {
					BBDEBUGSCOPE_LOCALBLOCK,
					0,
					{
						{
							BBDEBUGDECL_END
						}
					}
				};
				bbOnDebugEnterScope((BBDebugScope *)&__scope);
				struct BBDebugStm __stmt_0 = {0xfcf57dd78e8efc53, 87, 0};
				bbOnDebugEnterStm(&__stmt_0);
				brl_blitz_DebugLog(bbStringConcat(bbStringConcat(bbStringConcat(bbStringConcat(bbStringConcat(((BBString*)&_s501),bbStringFromInt(*bbt_Red)),((BBString*)&_s445)),bbStringFromInt(*bbt_Green)),((BBString*)&_s445)),bbStringFromInt(*bbt_Blue)));
				bbOnDebugLeaveScope();
			}
			bbOnDebugLeaveScope();
		}else{
			struct BBDebugScope __scope = {
				BBDEBUGSCOPE_LOCALBLOCK,
				0,
				{
					{
						BBDEBUGDECL_END
					}
				}
			};
			bbOnDebugEnterScope((BBDebugScope *)&__scope);
			struct BBDebugStm __stmt_0 = {0xfcf57dd78e8efc53, 89, 0};
			bbOnDebugEnterStm(&__stmt_0);
			if(bbt_==19){
				struct BBDebugScope __scope = {
					BBDEBUGSCOPE_LOCALBLOCK,
					0,
					{
						{
							BBDEBUGDECL_END
						}
					}
				};
				bbOnDebugEnterScope((BBDebugScope *)&__scope);
				struct BBDebugStm __stmt_0 = {0xfcf57dd78e8efc53, 90, 0};
				bbOnDebugEnterStm(&__stmt_0);
				*bbt_Red=((BBBYTE)(((struct brl_stream_TStream_obj*)bbNullObjectTest((BBObject*)((struct openb3d_openb3dcore_T3DS_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_t3ds_stream ))->clas->m_ReadFloat((struct brl_stream_TStream_obj*)((struct openb3d_openb3dcore_T3DS_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_t3ds_stream )*255.000000f));
				struct BBDebugStm __stmt_1 = {0xfcf57dd78e8efc53, 91, 0};
				bbOnDebugEnterStm(&__stmt_1);
				*bbt_Green=((BBBYTE)(((struct brl_stream_TStream_obj*)bbNullObjectTest((BBObject*)((struct openb3d_openb3dcore_T3DS_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_t3ds_stream ))->clas->m_ReadFloat((struct brl_stream_TStream_obj*)((struct openb3d_openb3dcore_T3DS_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_t3ds_stream )*255.000000f));
				struct BBDebugStm __stmt_2 = {0xfcf57dd78e8efc53, 92, 0};
				bbOnDebugEnterStm(&__stmt_2);
				*bbt_Blue=((BBBYTE)(((struct brl_stream_TStream_obj*)bbNullObjectTest((BBObject*)((struct openb3d_openb3dcore_T3DS_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_t3ds_stream ))->clas->m_ReadFloat((struct brl_stream_TStream_obj*)((struct openb3d_openb3dcore_T3DS_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_t3ds_stream )*255.000000f));
				struct BBDebugStm __stmt_3 = {0xfcf57dd78e8efc53, 93, 0};
				bbOnDebugEnterStm(&__stmt_3);
				if(openb3d_openb3dcore_TGlobal3D_Log_3DS!=0){
					struct BBDebugScope __scope = {
						BBDEBUGSCOPE_LOCALBLOCK,
						0,
						{
							{
								BBDEBUGDECL_END
							}
						}
					};
					bbOnDebugEnterScope((BBDebugScope *)&__scope);
					struct BBDebugStm __stmt_0 = {0xfcf57dd78e8efc53, 93, 0};
					bbOnDebugEnterStm(&__stmt_0);
					brl_blitz_DebugLog(bbStringConcat(bbStringConcat(bbStringConcat(bbStringConcat(bbStringConcat(((BBString*)&_s502),bbStringFromInt(*bbt_Red)),((BBString*)&_s445)),bbStringFromInt(*bbt_Green)),((BBString*)&_s445)),bbStringFromInt(*bbt_Blue)));
					bbOnDebugLeaveScope();
				}
				bbOnDebugLeaveScope();
			}else{
				struct BBDebugScope __scope = {
					BBDEBUGSCOPE_LOCALBLOCK,
					0,
					{
						{
							BBDEBUGDECL_END
						}
					}
				};
				bbOnDebugEnterScope((BBDebugScope *)&__scope);
				struct BBDebugStm __stmt_0 = {0xfcf57dd78e8efc53, 95, 0};
				bbOnDebugEnterStm(&__stmt_0);
				if(bbt_==18){
					struct BBDebugScope __scope = {
						BBDEBUGSCOPE_LOCALBLOCK,
						0,
						{
							{
								BBDEBUGDECL_END
							}
						}
					};
					bbOnDebugEnterScope((BBDebugScope *)&__scope);
					struct BBDebugStm __stmt_0 = {0xfcf57dd78e8efc53, 96, 0};
					bbOnDebugEnterStm(&__stmt_0);
					*bbt_Red=((BBBYTE)((struct brl_stream_TStream_obj*)bbNullObjectTest((BBObject*)((struct openb3d_openb3dcore_T3DS_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_t3ds_stream ))->clas->m_ReadByte((struct brl_stream_TStream_obj*)((struct openb3d_openb3dcore_T3DS_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_t3ds_stream ));
					struct BBDebugStm __stmt_1 = {0xfcf57dd78e8efc53, 97, 0};
					bbOnDebugEnterStm(&__stmt_1);
					*bbt_Green=((BBBYTE)((struct brl_stream_TStream_obj*)bbNullObjectTest((BBObject*)((struct openb3d_openb3dcore_T3DS_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_t3ds_stream ))->clas->m_ReadByte((struct brl_stream_TStream_obj*)((struct openb3d_openb3dcore_T3DS_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_t3ds_stream ));
					struct BBDebugStm __stmt_2 = {0xfcf57dd78e8efc53, 98, 0};
					bbOnDebugEnterStm(&__stmt_2);
					*bbt_Blue=((BBBYTE)((struct brl_stream_TStream_obj*)bbNullObjectTest((BBObject*)((struct openb3d_openb3dcore_T3DS_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_t3ds_stream ))->clas->m_ReadByte((struct brl_stream_TStream_obj*)((struct openb3d_openb3dcore_T3DS_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_t3ds_stream ));
					struct BBDebugStm __stmt_3 = {0xfcf57dd78e8efc53, 99, 0};
					bbOnDebugEnterStm(&__stmt_3);
					if(openb3d_openb3dcore_TGlobal3D_Log_3DS!=0){
						struct BBDebugScope __scope = {
							BBDEBUGSCOPE_LOCALBLOCK,
							0,
							{
								{
									BBDEBUGDECL_END
								}
							}
						};
						bbOnDebugEnterScope((BBDebugScope *)&__scope);
						struct BBDebugStm __stmt_0 = {0xfcf57dd78e8efc53, 99, 0};
						bbOnDebugEnterStm(&__stmt_0);
						brl_blitz_DebugLog(bbStringConcat(bbStringConcat(bbStringConcat(bbStringConcat(bbStringConcat(((BBString*)&_s503),bbStringFromInt(*bbt_Red)),((BBString*)&_s445)),bbStringFromInt(*bbt_Green)),((BBString*)&_s445)),bbStringFromInt(*bbt_Blue)));
						bbOnDebugLeaveScope();
					}
					bbOnDebugLeaveScope();
				}else{
					struct BBDebugScope __scope = {
						BBDEBUGSCOPE_LOCALBLOCK,
						0,
						{
							{
								BBDEBUGDECL_END
							}
						}
					};
					bbOnDebugEnterScope((BBDebugScope *)&__scope);
					struct BBDebugStm __stmt_0 = {0xfcf57dd78e8efc53, 102, 0};
					bbOnDebugEnterStm(&__stmt_0);
					((struct openb3d_openb3dcore_T3DS_obj*)bbNullObjectTest((BBObject*)o));
					((struct openb3d_openb3dcore_T3DS_obj*)o)->clas->m_SkipChunk((struct openb3d_openb3dcore_T3DS_obj*)o);
					bbOnDebugLeaveScope();
				}
				bbOnDebugLeaveScope();
			}
			bbOnDebugLeaveScope();
		}
		bbOnDebugLeaveScope();
	}
	bbOnDebugLeaveScope();
	return 0;
}
BBINT _openb3d_openb3dcore_T3DS_ReadPercent_ivi(struct openb3d_openb3dcore_T3DS_obj* o,BBINT bbt_Format,BBINT* bbt_Percent){
	((struct openb3d_openb3dcore_T3DS_obj*)bbNullObjectTest((BBObject*)o));
	struct BBDebugScope_3 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"ReadPercent",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":T3DS",
				.var_address=&o
			},
			{
				BBDEBUGDECL_LOCAL,
				"Format",
				"i",
				.var_address=&bbt_Format
			},
			{
				BBDEBUGDECL_VARPARAM,
				"Percent",
				"i",
				.var_address=&bbt_Percent
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0xfcf57dd78e8efc53, 107, 0};
	bbOnDebugEnterStm(&__stmt_0);
	BBINT bbt_=bbt_Format;
	struct BBDebugStm __stmt_1 = {0xfcf57dd78e8efc53, 108, 0};
	bbOnDebugEnterStm(&__stmt_1);
	if(bbt_==48){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0xfcf57dd78e8efc53, 109, 0};
		bbOnDebugEnterStm(&__stmt_0);
		*bbt_Percent=((struct brl_stream_TStream_obj*)bbNullObjectTest((BBObject*)((struct openb3d_openb3dcore_T3DS_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_t3ds_stream ))->clas->m_ReadShort((struct brl_stream_TStream_obj*)((struct openb3d_openb3dcore_T3DS_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_t3ds_stream );
		struct BBDebugStm __stmt_1 = {0xfcf57dd78e8efc53, 110, 0};
		bbOnDebugEnterStm(&__stmt_1);
		if(openb3d_openb3dcore_TGlobal3D_Log_3DS!=0){
			struct BBDebugScope __scope = {
				BBDEBUGSCOPE_LOCALBLOCK,
				0,
				{
					{
						BBDEBUGDECL_END
					}
				}
			};
			bbOnDebugEnterScope((BBDebugScope *)&__scope);
			struct BBDebugStm __stmt_0 = {0xfcf57dd78e8efc53, 110, 0};
			bbOnDebugEnterStm(&__stmt_0);
			brl_blitz_DebugLog(bbStringConcat(((BBString*)&_s504),bbStringFromInt(*bbt_Percent)));
			bbOnDebugLeaveScope();
		}
		bbOnDebugLeaveScope();
	}else{
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0xfcf57dd78e8efc53, 112, 0};
		bbOnDebugEnterStm(&__stmt_0);
		if(bbt_==49){
			struct BBDebugScope __scope = {
				BBDEBUGSCOPE_LOCALBLOCK,
				0,
				{
					{
						BBDEBUGDECL_END
					}
				}
			};
			bbOnDebugEnterScope((BBDebugScope *)&__scope);
			struct BBDebugStm __stmt_0 = {0xfcf57dd78e8efc53, 113, 0};
			bbOnDebugEnterStm(&__stmt_0);
			*bbt_Percent=((BBINT)((struct brl_stream_TStream_obj*)bbNullObjectTest((BBObject*)((struct openb3d_openb3dcore_T3DS_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_t3ds_stream ))->clas->m_ReadFloat((struct brl_stream_TStream_obj*)((struct openb3d_openb3dcore_T3DS_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_t3ds_stream ));
			struct BBDebugStm __stmt_1 = {0xfcf57dd78e8efc53, 114, 0};
			bbOnDebugEnterStm(&__stmt_1);
			if(openb3d_openb3dcore_TGlobal3D_Log_3DS!=0){
				struct BBDebugScope __scope = {
					BBDEBUGSCOPE_LOCALBLOCK,
					0,
					{
						{
							BBDEBUGDECL_END
						}
					}
				};
				bbOnDebugEnterScope((BBDebugScope *)&__scope);
				struct BBDebugStm __stmt_0 = {0xfcf57dd78e8efc53, 114, 0};
				bbOnDebugEnterStm(&__stmt_0);
				brl_blitz_DebugLog(bbStringConcat(((BBString*)&_s505),bbStringFromInt(*bbt_Percent)));
				bbOnDebugLeaveScope();
			}
			bbOnDebugLeaveScope();
		}else{
			struct BBDebugScope __scope = {
				BBDEBUGSCOPE_LOCALBLOCK,
				0,
				{
					{
						BBDEBUGDECL_END
					}
				}
			};
			bbOnDebugEnterScope((BBDebugScope *)&__scope);
			struct BBDebugStm __stmt_0 = {0xfcf57dd78e8efc53, 117, 0};
			bbOnDebugEnterStm(&__stmt_0);
			((struct openb3d_openb3dcore_T3DS_obj*)bbNullObjectTest((BBObject*)o));
			((struct openb3d_openb3dcore_T3DS_obj*)o)->clas->m_SkipChunk((struct openb3d_openb3dcore_T3DS_obj*)o);
			struct BBDebugStm __stmt_1 = {0xfcf57dd78e8efc53, 118, 0};
			bbOnDebugEnterStm(&__stmt_1);
			*bbt_Percent=0;
			bbOnDebugLeaveScope();
		}
		bbOnDebugLeaveScope();
	}
	bbOnDebugLeaveScope();
	return 0;
}
BBINT _openb3d_openb3dcore_T3DS_ReadVertexList(struct openb3d_openb3dcore_T3DS_obj* o){
	((struct openb3d_openb3dcore_T3DS_obj*)bbNullObjectTest((BBObject*)o));
	BBINT bbt_Index=0;
	BBARRAY bbt_Position=(&bbEmptyArray);
	struct BBDebugScope_3 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"ReadVertexList",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":T3DS",
				.var_address=&o
			},
			{
				BBDEBUGDECL_LOCAL,
				"Index",
				"i",
				.var_address=&bbt_Index
			},
			{
				BBDEBUGDECL_LOCAL,
				"Position",
				"[]f",
				.var_address=&bbt_Position
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0xfcf57dd78e8efc53, 123, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbt_Index=0;
	struct BBDebugStm __stmt_1 = {0xfcf57dd78e8efc53, 123, 0};
	bbOnDebugEnterStm(&__stmt_1);
	bbt_Position=bbArrayNew1D("f", 3);
	struct BBDebugStm __stmt_2 = {0xfcf57dd78e8efc53, 125, 0};
	bbOnDebugEnterStm(&__stmt_2);
	((struct openb3d_openb3dcore_T3DS_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_t3ds_vertexcount =((struct brl_stream_TStream_obj*)bbNullObjectTest((BBObject*)((struct openb3d_openb3dcore_T3DS_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_t3ds_stream ))->clas->m_ReadShort((struct brl_stream_TStream_obj*)((struct openb3d_openb3dcore_T3DS_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_t3ds_stream );
	struct BBDebugStm __stmt_3 = {0xfcf57dd78e8efc53, 126, 0};
	bbOnDebugEnterStm(&__stmt_3);
	if(openb3d_openb3dcore_TGlobal3D_Log_3DS!=0){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0xfcf57dd78e8efc53, 126, 0};
		bbOnDebugEnterStm(&__stmt_0);
		brl_blitz_DebugLog(bbStringConcat(((BBString*)&_s506),bbStringFromInt(((struct openb3d_openb3dcore_T3DS_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_t3ds_vertexcount )));
		bbOnDebugLeaveScope();
	}
	struct BBDebugStm __stmt_4 = {0xfcf57dd78e8efc53, 128, 0};
	bbOnDebugEnterStm(&__stmt_4);
	BBINT bbt_=(((struct openb3d_openb3dcore_T3DS_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_t3ds_vertexcount -1);
	for(bbt_Index=0;(bbt_Index<=bbt_);bbt_Index=(bbt_Index+1)){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0xfcf57dd78e8efc53, 129, 0};
		bbOnDebugEnterStm(&__stmt_0);
		((BBFLOAT*)BBARRAYDATAINDEX((bbt_Position),(bbt_Position)->dims,0U))[0U]=((struct brl_stream_TStream_obj*)bbNullObjectTest((BBObject*)((struct openb3d_openb3dcore_T3DS_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_t3ds_stream ))->clas->m_ReadFloat((struct brl_stream_TStream_obj*)((struct openb3d_openb3dcore_T3DS_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_t3ds_stream );
		struct BBDebugStm __stmt_1 = {0xfcf57dd78e8efc53, 130, 0};
		bbOnDebugEnterStm(&__stmt_1);
		((BBFLOAT*)BBARRAYDATAINDEX((bbt_Position),(bbt_Position)->dims,1U))[1U]=((struct brl_stream_TStream_obj*)bbNullObjectTest((BBObject*)((struct openb3d_openb3dcore_T3DS_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_t3ds_stream ))->clas->m_ReadFloat((struct brl_stream_TStream_obj*)((struct openb3d_openb3dcore_T3DS_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_t3ds_stream );
		struct BBDebugStm __stmt_2 = {0xfcf57dd78e8efc53, 131, 0};
		bbOnDebugEnterStm(&__stmt_2);
		((BBFLOAT*)BBARRAYDATAINDEX((bbt_Position),(bbt_Position)->dims,2U))[2U]=((struct brl_stream_TStream_obj*)bbNullObjectTest((BBObject*)((struct openb3d_openb3dcore_T3DS_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_t3ds_stream ))->clas->m_ReadFloat((struct brl_stream_TStream_obj*)((struct openb3d_openb3dcore_T3DS_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_t3ds_stream );
		struct BBDebugStm __stmt_3 = {0xfcf57dd78e8efc53, 133, 0};
		bbOnDebugEnterStm(&__stmt_3);
		((struct openb3d_openb3dcore_TSurface_obj*)bbNullObjectTest((BBObject*)((struct openb3d_openb3dcore_T3DS_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_t3ds_surface ))->clas->m_AddVertex_ffffff((struct openb3d_openb3dcore_TSurface_obj*)((struct openb3d_openb3dcore_T3DS_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_t3ds_surface ,((BBFLOAT*)BBARRAYDATAINDEX((bbt_Position),(bbt_Position)->dims,0U))[0U],((BBFLOAT*)BBARRAYDATAINDEX((bbt_Position),(bbt_Position)->dims,1U))[1U],-((BBFLOAT*)BBARRAYDATAINDEX((bbt_Position),(bbt_Position)->dims,2U))[2U],0.00000000f,0.00000000f,0.00000000f);
		bbOnDebugLeaveScope();
	}
	bbOnDebugLeaveScope();
	return 0;
}
BBINT _openb3d_openb3dcore_T3DS_ReadFaceList(struct openb3d_openb3dcore_T3DS_obj* o){
	((struct openb3d_openb3dcore_T3DS_obj*)bbNullObjectTest((BBObject*)o));
	BBINT bbt_Index=0;
	BBARRAY bbt_Indices=(&bbEmptyArray);
	struct BBDebugScope_3 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"ReadFaceList",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":T3DS",
				.var_address=&o
			},
			{
				BBDEBUGDECL_LOCAL,
				"Index",
				"i",
				.var_address=&bbt_Index
			},
			{
				BBDEBUGDECL_LOCAL,
				"Indices",
				"[]i",
				.var_address=&bbt_Indices
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0xfcf57dd78e8efc53, 140, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbt_Index=0;
	struct BBDebugStm __stmt_1 = {0xfcf57dd78e8efc53, 140, 0};
	bbOnDebugEnterStm(&__stmt_1);
	bbt_Indices=bbArrayNew1D("i", 3);
	struct BBDebugStm __stmt_2 = {0xfcf57dd78e8efc53, 142, 0};
	bbOnDebugEnterStm(&__stmt_2);
	((struct openb3d_openb3dcore_T3DS_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_t3ds_trianglecount =((struct brl_stream_TStream_obj*)bbNullObjectTest((BBObject*)((struct openb3d_openb3dcore_T3DS_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_t3ds_stream ))->clas->m_ReadShort((struct brl_stream_TStream_obj*)((struct openb3d_openb3dcore_T3DS_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_t3ds_stream );
	struct BBDebugStm __stmt_3 = {0xfcf57dd78e8efc53, 143, 0};
	bbOnDebugEnterStm(&__stmt_3);
	if(openb3d_openb3dcore_TGlobal3D_Log_3DS!=0){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0xfcf57dd78e8efc53, 143, 0};
		bbOnDebugEnterStm(&__stmt_0);
		brl_blitz_DebugLog(bbStringConcat(((BBString*)&_s507),bbStringFromInt(((struct openb3d_openb3dcore_T3DS_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_t3ds_trianglecount )));
		bbOnDebugLeaveScope();
	}
	struct BBDebugStm __stmt_4 = {0xfcf57dd78e8efc53, 145, 0};
	bbOnDebugEnterStm(&__stmt_4);
	BBINT bbt_=(((struct openb3d_openb3dcore_T3DS_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_t3ds_trianglecount -1);
	for(bbt_Index=0;(bbt_Index<=bbt_);bbt_Index=(bbt_Index+1)){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0xfcf57dd78e8efc53, 146, 0};
		bbOnDebugEnterStm(&__stmt_0);
		((BBINT*)BBARRAYDATAINDEX((bbt_Indices),(bbt_Indices)->dims,0U))[0U]=((struct brl_stream_TStream_obj*)bbNullObjectTest((BBObject*)((struct openb3d_openb3dcore_T3DS_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_t3ds_stream ))->clas->m_ReadShort((struct brl_stream_TStream_obj*)((struct openb3d_openb3dcore_T3DS_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_t3ds_stream );
		struct BBDebugStm __stmt_1 = {0xfcf57dd78e8efc53, 147, 0};
		bbOnDebugEnterStm(&__stmt_1);
		((BBINT*)BBARRAYDATAINDEX((bbt_Indices),(bbt_Indices)->dims,1U))[1U]=((struct brl_stream_TStream_obj*)bbNullObjectTest((BBObject*)((struct openb3d_openb3dcore_T3DS_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_t3ds_stream ))->clas->m_ReadShort((struct brl_stream_TStream_obj*)((struct openb3d_openb3dcore_T3DS_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_t3ds_stream );
		struct BBDebugStm __stmt_2 = {0xfcf57dd78e8efc53, 148, 0};
		bbOnDebugEnterStm(&__stmt_2);
		((BBINT*)BBARRAYDATAINDEX((bbt_Indices),(bbt_Indices)->dims,2U))[2U]=((struct brl_stream_TStream_obj*)bbNullObjectTest((BBObject*)((struct openb3d_openb3dcore_T3DS_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_t3ds_stream ))->clas->m_ReadShort((struct brl_stream_TStream_obj*)((struct openb3d_openb3dcore_T3DS_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_t3ds_stream );
		struct BBDebugStm __stmt_3 = {0xfcf57dd78e8efc53, 149, 0};
		bbOnDebugEnterStm(&__stmt_3);
		((struct brl_stream_TStream_obj*)bbNullObjectTest((BBObject*)((struct openb3d_openb3dcore_T3DS_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_t3ds_stream ))->clas->m_ReadShort((struct brl_stream_TStream_obj*)((struct openb3d_openb3dcore_T3DS_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_t3ds_stream );
		struct BBDebugStm __stmt_4 = {0xfcf57dd78e8efc53, 151, 0};
		bbOnDebugEnterStm(&__stmt_4);
		((struct openb3d_openb3dcore_TSurface_obj*)bbNullObjectTest((BBObject*)((struct openb3d_openb3dcore_T3DS_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_t3ds_surface ))->clas->m_AddTriangle_iii((struct openb3d_openb3dcore_TSurface_obj*)((struct openb3d_openb3dcore_T3DS_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_t3ds_surface ,((BBINT*)BBARRAYDATAINDEX((bbt_Indices),(bbt_Indices)->dims,2U))[2U],((BBINT*)BBARRAYDATAINDEX((bbt_Indices),(bbt_Indices)->dims,1U))[1U],((BBINT*)BBARRAYDATAINDEX((bbt_Indices),(bbt_Indices)->dims,0U))[0U]);
		bbOnDebugLeaveScope();
	}
	bbOnDebugLeaveScope();
	return 0;
}
BBINT _openb3d_openb3dcore_T3DS_ReadTexCoords(struct openb3d_openb3dcore_T3DS_obj* o){
	((struct openb3d_openb3dcore_T3DS_obj*)bbNullObjectTest((BBObject*)o));
	BBINT bbt_CoordCount=0;
	BBINT bbt_Index=0;
	BBFLOAT bbt_U=0;
	BBFLOAT bbt_V=0;
	struct BBDebugScope_5 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"ReadTexCoords",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":T3DS",
				.var_address=&o
			},
			{
				BBDEBUGDECL_LOCAL,
				"CoordCount",
				"i",
				.var_address=&bbt_CoordCount
			},
			{
				BBDEBUGDECL_LOCAL,
				"Index",
				"i",
				.var_address=&bbt_Index
			},
			{
				BBDEBUGDECL_LOCAL,
				"U",
				"f",
				.var_address=&bbt_U
			},
			{
				BBDEBUGDECL_LOCAL,
				"V",
				"f",
				.var_address=&bbt_V
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0xfcf57dd78e8efc53, 159, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbt_CoordCount=0;
	struct BBDebugStm __stmt_1 = {0xfcf57dd78e8efc53, 159, 0};
	bbOnDebugEnterStm(&__stmt_1);
	bbt_Index=0;
	struct BBDebugStm __stmt_2 = {0xfcf57dd78e8efc53, 159, 0};
	bbOnDebugEnterStm(&__stmt_2);
	bbt_U=.00000000f;
	struct BBDebugStm __stmt_3 = {0xfcf57dd78e8efc53, 159, 0};
	bbOnDebugEnterStm(&__stmt_3);
	bbt_V=.00000000f;
	struct BBDebugStm __stmt_4 = {0xfcf57dd78e8efc53, 161, 0};
	bbOnDebugEnterStm(&__stmt_4);
	bbt_CoordCount=((struct brl_stream_TStream_obj*)bbNullObjectTest((BBObject*)((struct openb3d_openb3dcore_T3DS_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_t3ds_stream ))->clas->m_ReadShort((struct brl_stream_TStream_obj*)((struct openb3d_openb3dcore_T3DS_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_t3ds_stream );
	struct BBDebugStm __stmt_5 = {0xfcf57dd78e8efc53, 162, 0};
	bbOnDebugEnterStm(&__stmt_5);
	if(openb3d_openb3dcore_TGlobal3D_Log_3DS!=0){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0xfcf57dd78e8efc53, 162, 0};
		bbOnDebugEnterStm(&__stmt_0);
		brl_blitz_DebugLog(bbStringConcat(((BBString*)&_s508),bbStringFromInt(bbt_CoordCount)));
		bbOnDebugLeaveScope();
	}
	struct BBDebugStm __stmt_6 = {0xfcf57dd78e8efc53, 164, 0};
	bbOnDebugEnterStm(&__stmt_6);
	BBINT bbt_=(bbt_CoordCount-1);
	for(bbt_Index=0;(bbt_Index<=bbt_);bbt_Index=(bbt_Index+1)){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0xfcf57dd78e8efc53, 165, 0};
		bbOnDebugEnterStm(&__stmt_0);
		bbt_U=((struct brl_stream_TStream_obj*)bbNullObjectTest((BBObject*)((struct openb3d_openb3dcore_T3DS_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_t3ds_stream ))->clas->m_ReadFloat((struct brl_stream_TStream_obj*)((struct openb3d_openb3dcore_T3DS_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_t3ds_stream );
		struct BBDebugStm __stmt_1 = {0xfcf57dd78e8efc53, 166, 0};
		bbOnDebugEnterStm(&__stmt_1);
		bbt_V=-((struct brl_stream_TStream_obj*)bbNullObjectTest((BBObject*)((struct openb3d_openb3dcore_T3DS_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_t3ds_stream ))->clas->m_ReadFloat((struct brl_stream_TStream_obj*)((struct openb3d_openb3dcore_T3DS_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_t3ds_stream );
		struct BBDebugStm __stmt_2 = {0xfcf57dd78e8efc53, 168, 0};
		bbOnDebugEnterStm(&__stmt_2);
		((struct openb3d_openb3dcore_TSurface_obj*)bbNullObjectTest((BBObject*)((struct openb3d_openb3dcore_T3DS_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_t3ds_surface ))->clas->m_VertexTexCoords_ifffi((struct openb3d_openb3dcore_TSurface_obj*)((struct openb3d_openb3dcore_T3DS_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_t3ds_surface ,bbt_Index,bbt_U,bbt_V,0.00000000f,0);
		struct BBDebugStm __stmt_3 = {0xfcf57dd78e8efc53, 169, 0};
		bbOnDebugEnterStm(&__stmt_3);
		((struct openb3d_openb3dcore_TSurface_obj*)bbNullObjectTest((BBObject*)((struct openb3d_openb3dcore_T3DS_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_t3ds_surface ))->clas->m_VertexTexCoords_ifffi((struct openb3d_openb3dcore_TSurface_obj*)((struct openb3d_openb3dcore_T3DS_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_t3ds_surface ,bbt_Index,bbt_U,bbt_V,0.00000000f,1);
		bbOnDebugLeaveScope();
	}
	bbOnDebugLeaveScope();
	return 0;
}
BBINT _openb3d_openb3dcore_T3DS_ReadTransMatrix(struct openb3d_openb3dcore_T3DS_obj* o){
	((struct openb3d_openb3dcore_T3DS_obj*)bbNullObjectTest((BBObject*)o));
	struct BBDebugScope_1 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"ReadTransMatrix",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":T3DS",
				.var_address=&o
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0xfcf57dd78e8efc53, 176, 0};
	bbOnDebugEnterStm(&__stmt_0);
	((struct openb3d_openb3dcore_T3DS_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_t3ds_new_matrix =(struct openb3d_openb3dcore_TMatPtr_obj*)openb3d_openb3dcore_TMatPtr_Create_TTMatPtr();
	struct BBDebugStm __stmt_1 = {0xfcf57dd78e8efc53, 177, 0};
	bbOnDebugEnterStm(&__stmt_1);
	((struct openb3d_openb3dcore_TMatPtr_obj*)bbNullObjectTest((BBObject*)((struct openb3d_openb3dcore_T3DS_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_t3ds_new_matrix ))->clas->m_LoadIdentity((struct openb3d_openb3dcore_TMatPtr_obj*)((struct openb3d_openb3dcore_T3DS_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_t3ds_new_matrix );
	struct BBDebugStm __stmt_2 = {0xfcf57dd78e8efc53, 179, 0};
	bbOnDebugEnterStm(&__stmt_2);
	{
		BBINT bbt_x=0;
		for(;(bbt_x<=3);bbt_x=(bbt_x+1)){
			struct BBDebugScope_1 __scope = {
				BBDEBUGSCOPE_LOCALBLOCK,
				0,
				{
					{
						BBDEBUGDECL_LOCAL,
						"x",
						"i",
						.var_address=&bbt_x
					},
					{
						BBDEBUGDECL_END
					}
				}
			};
			bbOnDebugEnterScope((BBDebugScope *)&__scope);
			struct BBDebugStm __stmt_0 = {0xfcf57dd78e8efc53, 180, 0};
			bbOnDebugEnterStm(&__stmt_0);
			{
				BBINT bbt_y=0;
				for(;(bbt_y<=2);bbt_y=(bbt_y+1)){
					struct BBDebugScope_1 __scope = {
						BBDEBUGSCOPE_LOCALBLOCK,
						0,
						{
							{
								BBDEBUGDECL_LOCAL,
								"y",
								"i",
								.var_address=&bbt_y
							},
							{
								BBDEBUGDECL_END
							}
						}
					};
					bbOnDebugEnterScope((BBDebugScope *)&__scope);
					struct BBDebugStm __stmt_0 = {0xfcf57dd78e8efc53, 181, 0};
					bbOnDebugEnterStm(&__stmt_0);
					((struct openb3d_openb3dcore_TMatPtr_obj*)bbNullObjectTest((BBObject*)((struct openb3d_openb3dcore_T3DS_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_t3ds_new_matrix ))->_openb3d_openb3dcore_tmatptr_grid [((4*bbt_x)+bbt_y)]=((struct brl_stream_TStream_obj*)bbNullObjectTest((BBObject*)((struct openb3d_openb3dcore_T3DS_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_t3ds_stream ))->clas->m_ReadFloat((struct brl_stream_TStream_obj*)((struct openb3d_openb3dcore_T3DS_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_t3ds_stream );
					bbOnDebugLeaveScope();
				}
			}
			bbOnDebugLeaveScope();
		}
	}
	struct BBDebugStm __stmt_3 = {0xfcf57dd78e8efc53, 185, 0};
	bbOnDebugEnterStm(&__stmt_3);
	if(openb3d_openb3dcore_TGlobal3D_Log_3DS!=0){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0xfcf57dd78e8efc53, 186, 0};
		bbOnDebugEnterStm(&__stmt_0);
		brl_blitz_DebugLog((BBString*)&_s509);
		bbOnDebugLeaveScope();
	}
	bbOnDebugLeaveScope();
	return 0;
}
BBINT _openb3d_openb3dcore_T3DS_ReadFaceMatList(struct openb3d_openb3dcore_T3DS_obj* o){
	((struct openb3d_openb3dcore_T3DS_obj*)bbNullObjectTest((BBObject*)o));
	BBSTRING bbt_BrushName=(&bbEmptyString);
	struct openb3d_openb3dcore_TBrush_obj* bbt_Brush=(struct openb3d_openb3dcore_TBrush_obj*)((struct openb3d_openb3dcore_TBrush_obj*)&bbNullObject);
	BBINT bbt_Found=0;
	BBINT bbt_Count=0;
	BBINT bbt_Index=0;
	BBSHORT bbt_v=0;
	BBINT bbt_i=0;
	struct BBDebugScope_8 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"ReadFaceMatList",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":T3DS",
				.var_address=&o
			},
			{
				BBDEBUGDECL_LOCAL,
				"BrushName",
				"$",
				.var_address=&bbt_BrushName
			},
			{
				BBDEBUGDECL_LOCAL,
				"Brush",
				":TBrush",
				.var_address=&bbt_Brush
			},
			{
				BBDEBUGDECL_LOCAL,
				"Found",
				"i",
				.var_address=&bbt_Found
			},
			{
				BBDEBUGDECL_LOCAL,
				"Count",
				"i",
				.var_address=&bbt_Count
			},
			{
				BBDEBUGDECL_LOCAL,
				"Index",
				"i",
				.var_address=&bbt_Index
			},
			{
				BBDEBUGDECL_LOCAL,
				"v",
				"s",
				.var_address=&bbt_v
			},
			{
				BBDEBUGDECL_LOCAL,
				"i",
				"i",
				.var_address=&bbt_i
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0xfcf57dd78e8efc53, 195, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbt_BrushName=((BBString*)&bbEmptyString);
	struct BBDebugStm __stmt_1 = {0xfcf57dd78e8efc53, 195, 0};
	bbOnDebugEnterStm(&__stmt_1);
	bbt_Brush=(struct openb3d_openb3dcore_TBrush_obj*)((struct openb3d_openb3dcore_TBrush_obj*)&bbNullObject);
	struct BBDebugStm __stmt_2 = {0xfcf57dd78e8efc53, 195, 0};
	bbOnDebugEnterStm(&__stmt_2);
	bbt_Found=0;
	struct BBDebugStm __stmt_3 = {0xfcf57dd78e8efc53, 195, 0};
	bbOnDebugEnterStm(&__stmt_3);
	bbt_Count=0;
	struct BBDebugStm __stmt_4 = {0xfcf57dd78e8efc53, 196, 0};
	bbOnDebugEnterStm(&__stmt_4);
	bbt_Index=0;
	struct BBDebugStm __stmt_5 = {0xfcf57dd78e8efc53, 196, 0};
	bbOnDebugEnterStm(&__stmt_5);
	bbt_v=0;
	struct BBDebugStm __stmt_6 = {0xfcf57dd78e8efc53, 196, 0};
	bbOnDebugEnterStm(&__stmt_6);
	bbt_i=0;
	struct BBDebugStm __stmt_7 = {0xfcf57dd78e8efc53, 198, 0};
	bbOnDebugEnterStm(&__stmt_7);
	((struct openb3d_openb3dcore_T3DS_obj*)bbNullObjectTest((BBObject*)o));
	bbt_BrushName=((struct openb3d_openb3dcore_T3DS_obj*)o)->clas->m_ReadCString((struct openb3d_openb3dcore_T3DS_obj*)o);
	struct BBDebugStm __stmt_8 = {0xfcf57dd78e8efc53, 199, 0};
	bbOnDebugEnterStm(&__stmt_8);
	bbt_Count=((struct brl_stream_TStream_obj*)bbNullObjectTest((BBObject*)((struct openb3d_openb3dcore_T3DS_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_t3ds_stream ))->clas->m_ReadShort((struct brl_stream_TStream_obj*)((struct openb3d_openb3dcore_T3DS_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_t3ds_stream );
	struct BBDebugStm __stmt_9 = {0xfcf57dd78e8efc53, 200, 0};
	bbOnDebugEnterStm(&__stmt_9);
	bbt_Found=0;
	struct BBDebugStm __stmt_10 = {0xfcf57dd78e8efc53, 203, 0};
	bbOnDebugEnterStm(&__stmt_10);
	struct brl_linkedlist_TListEnum_obj* bbt_=(struct brl_linkedlist_TListEnum_obj*)((struct brl_linkedlist_TList_obj*)bbNullObjectTest((BBObject*)((struct openb3d_openb3dcore_T3DS_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_t3ds_brushs ))->clas->m_ObjectEnumerator((struct brl_linkedlist_TList_obj*)((struct openb3d_openb3dcore_T3DS_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_t3ds_brushs );
	while(((struct brl_linkedlist_TListEnum_obj*)bbNullObjectTest((BBObject*)bbt_))->clas->m_HasNext((struct brl_linkedlist_TListEnum_obj*)bbt_)!=0){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0xfcf57dd78e8efc53, 203, 0};
		bbOnDebugEnterStm(&__stmt_0);
		bbt_Brush=(struct openb3d_openb3dcore_TBrush_obj*)((struct openb3d_openb3dcore_TBrush_obj*)bbObjectDowncast((BBOBJECT)((struct brl_linkedlist_TListEnum_obj*)bbNullObjectTest((BBObject*)bbt_))->clas->m_NextObject((struct brl_linkedlist_TListEnum_obj*)bbt_),(BBClass*)&openb3d_openb3dcore_TBrush));
		struct BBDebugStm __stmt_1 = {0xfcf57dd78e8efc53, 203, 0};
		bbOnDebugEnterStm(&__stmt_1);
		if(((BBOBJECT)bbt_Brush)==&bbNullObject){
			struct BBDebugScope __scope = {
				BBDEBUGSCOPE_LOCALBLOCK,
				0,
				{
					{
						BBDEBUGDECL_END
					}
				}
			};
			bbOnDebugEnterScope((BBDebugScope *)&__scope);
			struct BBDebugStm __stmt_0 = {0xfcf57dd78e8efc53, 203, 0};
			bbOnDebugEnterStm(&__stmt_0);
			bbOnDebugLeaveScope();
			bbOnDebugLeaveScope();
			continue;
		}
		struct BBDebugStm __stmt_2 = {0xfcf57dd78e8efc53, 204, 0};
		bbOnDebugEnterStm(&__stmt_2);
		if(bbStringEquals(((struct openb3d_openb3dcore_TBrush_obj*)bbNullObjectTest((BBObject*)bbt_Brush))->clas->m_GetString_pb((struct openb3d_openb3dcore_TBrush_obj*)bbt_Brush,((struct openb3d_openb3dcore_TBrush_obj*)bbNullObjectTest((BBObject*)bbt_Brush))->_openb3d_openb3dcore_tbrush_name ), bbt_BrushName)==1){
			struct BBDebugScope __scope = {
				BBDEBUGSCOPE_LOCALBLOCK,
				0,
				{
					{
						BBDEBUGDECL_END
					}
				}
			};
			bbOnDebugEnterScope((BBDebugScope *)&__scope);
			struct BBDebugStm __stmt_0 = {0xfcf57dd78e8efc53, 205, 0};
			bbOnDebugEnterStm(&__stmt_0);
			bbt_Found=1;
			struct BBDebugStm __stmt_1 = {0xfcf57dd78e8efc53, 206, 0};
			bbOnDebugEnterStm(&__stmt_1);
			bbOnDebugLeaveScope();
			bbOnDebugLeaveScope();
			break;
		}
		bbOnDebugLeaveScope();
	}
	struct BBDebugStm __stmt_11 = {0xfcf57dd78e8efc53, 209, 0};
	bbOnDebugEnterStm(&__stmt_11);
	if(openb3d_openb3dcore_TGlobal3D_Log_3DS!=0){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0xfcf57dd78e8efc53, 209, 0};
		bbOnDebugEnterStm(&__stmt_0);
		brl_blitz_DebugLog(bbStringConcat(((BBString*)&_s510),bbt_BrushName));
		bbOnDebugLeaveScope();
	}
	struct BBDebugStm __stmt_12 = {0xfcf57dd78e8efc53, 211, 0};
	bbOnDebugEnterStm(&__stmt_12);
	if(bbt_Found==1){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0xfcf57dd78e8efc53, 212, 0};
		bbOnDebugEnterStm(&__stmt_0);
		((struct openb3d_openb3dcore_T3DS_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_t3ds_new_mesh =(struct openb3d_openb3dcore_TMesh_obj*)openb3d_openb3dcore_TMesh_Create_TTMesh();
		struct BBDebugStm __stmt_1 = {0xfcf57dd78e8efc53, 213, 0};
		bbOnDebugEnterStm(&__stmt_1);
		if(((struct openb3d_openb3dcore_T3DS_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_t3ds_objectindex >0){
			struct BBDebugScope __scope = {
				BBDEBUGSCOPE_LOCALBLOCK,
				0,
				{
					{
						BBDEBUGDECL_END
					}
				}
			};
			bbOnDebugEnterScope((BBDebugScope *)&__scope);
			struct BBDebugStm __stmt_0 = {0xfcf57dd78e8efc53, 213, 0};
			bbOnDebugEnterStm(&__stmt_0);
			((struct openb3d_openb3dcore_TMesh_obj*)bbNullObjectTest((BBObject*)((struct openb3d_openb3dcore_T3DS_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_t3ds_new_mesh ))->clas->m_SetString_pbS((struct openb3d_openb3dcore_TEntity_obj*)((struct openb3d_openb3dcore_T3DS_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_t3ds_new_mesh ,((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)((struct openb3d_openb3dcore_T3DS_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_t3ds_new_mesh ))->_openb3d_openb3dcore_tentity_name ,((BBSTRING*)BBARRAYDATAINDEX((((struct openb3d_openb3dcore_T3DS_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_t3ds_objectnames ),(((struct openb3d_openb3dcore_T3DS_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_t3ds_objectnames )->dims,((BBUINT)(((struct openb3d_openb3dcore_T3DS_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_t3ds_objectindex -1))))[((BBUINT)(((struct openb3d_openb3dcore_T3DS_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_t3ds_objectindex -1))]);
			bbOnDebugLeaveScope();
		}
		struct BBDebugStm __stmt_2 = {0xfcf57dd78e8efc53, 214, 0};
		bbOnDebugEnterStm(&__stmt_2);
		((struct openb3d_openb3dcore_TMesh_obj*)bbNullObjectTest((BBObject*)((struct openb3d_openb3dcore_T3DS_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_t3ds_new_mesh ))->clas->m_SetString_pbS((struct openb3d_openb3dcore_TEntity_obj*)((struct openb3d_openb3dcore_T3DS_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_t3ds_new_mesh ,((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)((struct openb3d_openb3dcore_T3DS_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_t3ds_new_mesh ))->_openb3d_openb3dcore_tentity_class_name ,((BBString*)&_s461));
		struct BBDebugStm __stmt_3 = {0xfcf57dd78e8efc53, 215, 0};
		bbOnDebugEnterStm(&__stmt_3);
		((struct openb3d_openb3dcore_TMesh_obj*)bbNullObjectTest((BBObject*)((struct openb3d_openb3dcore_T3DS_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_t3ds_new_mesh ))->clas->m_AddParent_TTEntity((struct openb3d_openb3dcore_TEntity_obj*)((struct openb3d_openb3dcore_T3DS_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_t3ds_new_mesh ,(struct openb3d_openb3dcore_TEntity_obj*)((struct openb3d_openb3dcore_TEntity_obj*)bbObjectDowncast((BBOBJECT)((struct openb3d_openb3dcore_T3DS_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_t3ds_root ,(BBClass*)&openb3d_openb3dcore_TEntity)));
		struct BBDebugStm __stmt_4 = {0xfcf57dd78e8efc53, 216, 0};
		bbOnDebugEnterStm(&__stmt_4);
		((struct openb3d_openb3dcore_TMesh_obj*)bbNullObjectTest((BBObject*)((struct openb3d_openb3dcore_T3DS_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_t3ds_new_mesh ))->clas->m_EntityListAdd_TTListTObject((struct openb3d_openb3dcore_TEntity_obj*)((struct openb3d_openb3dcore_T3DS_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_t3ds_new_mesh ,(struct brl_linkedlist_TList_obj*)openb3d_openb3dcore_TEntity_entity_list,(BBOBJECT)&bbNullObject);
		struct BBDebugStm __stmt_5 = {0xfcf57dd78e8efc53, 217, 0};
		bbOnDebugEnterStm(&__stmt_5);
		((struct openb3d_openb3dcore_T3DS_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_t3ds_new_surface =(struct openb3d_openb3dcore_TSurface_obj*)((struct openb3d_openb3dcore_TMesh_obj*)bbNullObjectTest((BBObject*)((struct openb3d_openb3dcore_T3DS_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_t3ds_new_mesh ))->clas->m_CreateSurface_TTBrush((struct openb3d_openb3dcore_TMesh_obj*)((struct openb3d_openb3dcore_T3DS_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_t3ds_new_mesh ,(struct openb3d_openb3dcore_TBrush_obj*)&bbNullObject);
		struct BBDebugStm __stmt_6 = {0xfcf57dd78e8efc53, 218, 0};
		bbOnDebugEnterStm(&__stmt_6);
		brl_map_MapInsert((struct brl_map_TMap_obj*)((struct openb3d_openb3dcore_T3DS_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_t3ds_matrixmap ,(BBOBJECT)((struct openb3d_openb3dcore_T3DS_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_t3ds_new_mesh ,(BBOBJECT)((struct openb3d_openb3dcore_T3DS_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_t3ds_new_matrix );
		struct BBDebugStm __stmt_7 = {0xfcf57dd78e8efc53, 219, 0};
		bbOnDebugEnterStm(&__stmt_7);
		((struct brl_linkedlist_TList_obj*)bbNullObjectTest((BBObject*)((struct openb3d_openb3dcore_T3DS_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_t3ds_meshes ))->clas->m_AddLast_TObject((struct brl_linkedlist_TList_obj*)((struct openb3d_openb3dcore_T3DS_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_t3ds_meshes ,(BBOBJECT)((struct openb3d_openb3dcore_T3DS_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_t3ds_new_mesh );
		struct BBDebugStm __stmt_8 = {0xfcf57dd78e8efc53, 221, 0};
		bbOnDebugEnterStm(&__stmt_8);
		BBINT bbt_2=(bbt_Count-1);
		for(bbt_Index=0;(bbt_Index<=bbt_2);bbt_Index=(bbt_Index+1)){
			BBARRAY bbt_v0=(&bbEmptyArray);
			struct BBDebugScope_1 __scope = {
				BBDEBUGSCOPE_LOCALBLOCK,
				0,
				{
					{
						BBDEBUGDECL_LOCAL,
						"v0",
						"[]i",
						.var_address=&bbt_v0
					},
					{
						BBDEBUGDECL_END
					}
				}
			};
			bbOnDebugEnterScope((BBDebugScope *)&__scope);
			struct BBDebugStm __stmt_0 = {0xfcf57dd78e8efc53, 222, 0};
			bbOnDebugEnterStm(&__stmt_0);
			bbt_v=((BBSHORT)((struct brl_stream_TStream_obj*)bbNullObjectTest((BBObject*)((struct openb3d_openb3dcore_T3DS_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_t3ds_stream ))->clas->m_ReadShort((struct brl_stream_TStream_obj*)((struct openb3d_openb3dcore_T3DS_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_t3ds_stream ));
			struct BBDebugStm __stmt_1 = {0xfcf57dd78e8efc53, 223, 0};
			bbOnDebugEnterStm(&__stmt_1);
			bbt_v0=bbArrayNew1D("i", 3);
			struct BBDebugStm __stmt_2 = {0xfcf57dd78e8efc53, 224, 0};
			bbOnDebugEnterStm(&__stmt_2);
			for(bbt_i=0;(bbt_i<=2);bbt_i=(bbt_i+1)){
				BBFLOAT bbt_x=0;
				BBFLOAT bbt_y=0;
				BBFLOAT bbt_z=0;
				BBFLOAT bbt_u=0;
				BBFLOAT bbt_v2=0;
				BBFLOAT bbt_w=0;
				struct BBDebugScope_6 __scope = {
					BBDEBUGSCOPE_LOCALBLOCK,
					0,
					{
						{
							BBDEBUGDECL_LOCAL,
							"x",
							"f",
							.var_address=&bbt_x
						},
						{
							BBDEBUGDECL_LOCAL,
							"y",
							"f",
							.var_address=&bbt_y
						},
						{
							BBDEBUGDECL_LOCAL,
							"z",
							"f",
							.var_address=&bbt_z
						},
						{
							BBDEBUGDECL_LOCAL,
							"u",
							"f",
							.var_address=&bbt_u
						},
						{
							BBDEBUGDECL_LOCAL,
							"v",
							"f",
							.var_address=&bbt_v2
						},
						{
							BBDEBUGDECL_LOCAL,
							"w",
							"f",
							.var_address=&bbt_w
						},
						{
							BBDEBUGDECL_END
						}
					}
				};
				bbOnDebugEnterScope((BBDebugScope *)&__scope);
				struct BBDebugStm __stmt_0 = {0xfcf57dd78e8efc53, 225, 0};
				bbOnDebugEnterStm(&__stmt_0);
				((BBINT*)BBARRAYDATAINDEX((bbt_v0),(bbt_v0)->dims,((BBUINT)bbt_i)))[((BBUINT)bbt_i)]=((struct openb3d_openb3dcore_TSurface_obj*)bbNullObjectTest((BBObject*)((struct openb3d_openb3dcore_T3DS_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_t3ds_surface ))->clas->m_TriangleVertex_ii((struct openb3d_openb3dcore_TSurface_obj*)((struct openb3d_openb3dcore_T3DS_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_t3ds_surface ,((BBINT)bbt_v),bbt_i);
				struct BBDebugStm __stmt_1 = {0xfcf57dd78e8efc53, 226, 0};
				bbOnDebugEnterStm(&__stmt_1);
				bbt_x=((struct openb3d_openb3dcore_TSurface_obj*)bbNullObjectTest((BBObject*)((struct openb3d_openb3dcore_T3DS_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_t3ds_surface ))->clas->m_VertexX_i((struct openb3d_openb3dcore_TSurface_obj*)((struct openb3d_openb3dcore_T3DS_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_t3ds_surface ,((BBINT*)BBARRAYDATAINDEX((bbt_v0),(bbt_v0)->dims,((BBUINT)bbt_i)))[((BBUINT)bbt_i)]);
				struct BBDebugStm __stmt_2 = {0xfcf57dd78e8efc53, 227, 0};
				bbOnDebugEnterStm(&__stmt_2);
				bbt_y=((struct openb3d_openb3dcore_TSurface_obj*)bbNullObjectTest((BBObject*)((struct openb3d_openb3dcore_T3DS_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_t3ds_surface ))->clas->m_VertexY_i((struct openb3d_openb3dcore_TSurface_obj*)((struct openb3d_openb3dcore_T3DS_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_t3ds_surface ,((BBINT*)BBARRAYDATAINDEX((bbt_v0),(bbt_v0)->dims,((BBUINT)bbt_i)))[((BBUINT)bbt_i)]);
				struct BBDebugStm __stmt_3 = {0xfcf57dd78e8efc53, 228, 0};
				bbOnDebugEnterStm(&__stmt_3);
				bbt_z=((struct openb3d_openb3dcore_TSurface_obj*)bbNullObjectTest((BBObject*)((struct openb3d_openb3dcore_T3DS_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_t3ds_surface ))->clas->m_VertexZ_i((struct openb3d_openb3dcore_TSurface_obj*)((struct openb3d_openb3dcore_T3DS_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_t3ds_surface ,((BBINT*)BBARRAYDATAINDEX((bbt_v0),(bbt_v0)->dims,((BBUINT)bbt_i)))[((BBUINT)bbt_i)]);
				struct BBDebugStm __stmt_4 = {0xfcf57dd78e8efc53, 229, 0};
				bbOnDebugEnterStm(&__stmt_4);
				bbt_u=((struct openb3d_openb3dcore_TSurface_obj*)bbNullObjectTest((BBObject*)((struct openb3d_openb3dcore_T3DS_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_t3ds_surface ))->clas->m_VertexU_ii((struct openb3d_openb3dcore_TSurface_obj*)((struct openb3d_openb3dcore_T3DS_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_t3ds_surface ,((BBINT*)BBARRAYDATAINDEX((bbt_v0),(bbt_v0)->dims,((BBUINT)bbt_i)))[((BBUINT)bbt_i)],0);
				struct BBDebugStm __stmt_5 = {0xfcf57dd78e8efc53, 230, 0};
				bbOnDebugEnterStm(&__stmt_5);
				bbt_v2=((struct openb3d_openb3dcore_TSurface_obj*)bbNullObjectTest((BBObject*)((struct openb3d_openb3dcore_T3DS_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_t3ds_surface ))->clas->m_VertexV_ii((struct openb3d_openb3dcore_TSurface_obj*)((struct openb3d_openb3dcore_T3DS_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_t3ds_surface ,((BBINT*)BBARRAYDATAINDEX((bbt_v0),(bbt_v0)->dims,((BBUINT)bbt_i)))[((BBUINT)bbt_i)],0);
				struct BBDebugStm __stmt_6 = {0xfcf57dd78e8efc53, 231, 0};
				bbOnDebugEnterStm(&__stmt_6);
				bbt_w=((struct openb3d_openb3dcore_TSurface_obj*)bbNullObjectTest((BBObject*)((struct openb3d_openb3dcore_T3DS_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_t3ds_surface ))->clas->m_VertexW_ii((struct openb3d_openb3dcore_TSurface_obj*)((struct openb3d_openb3dcore_T3DS_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_t3ds_surface ,((BBINT*)BBARRAYDATAINDEX((bbt_v0),(bbt_v0)->dims,((BBUINT)bbt_i)))[((BBUINT)bbt_i)],0);
				struct BBDebugStm __stmt_7 = {0xfcf57dd78e8efc53, 232, 0};
				bbOnDebugEnterStm(&__stmt_7);
				((BBINT*)BBARRAYDATAINDEX((bbt_v0),(bbt_v0)->dims,((BBUINT)bbt_i)))[((BBUINT)bbt_i)]=((struct openb3d_openb3dcore_TSurface_obj*)bbNullObjectTest((BBObject*)((struct openb3d_openb3dcore_T3DS_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_t3ds_new_surface ))->clas->m_AddVertex_ffffff((struct openb3d_openb3dcore_TSurface_obj*)((struct openb3d_openb3dcore_T3DS_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_t3ds_new_surface ,bbt_x,bbt_y,bbt_z,bbt_u,bbt_v2,bbt_w);
				bbOnDebugLeaveScope();
			}
			struct BBDebugStm __stmt_3 = {0xfcf57dd78e8efc53, 234, 0};
			bbOnDebugEnterStm(&__stmt_3);
			((struct openb3d_openb3dcore_TSurface_obj*)bbNullObjectTest((BBObject*)((struct openb3d_openb3dcore_T3DS_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_t3ds_new_surface ))->clas->m_AddTriangle_iii((struct openb3d_openb3dcore_TSurface_obj*)((struct openb3d_openb3dcore_T3DS_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_t3ds_new_surface ,((BBINT*)BBARRAYDATAINDEX((bbt_v0),(bbt_v0)->dims,0U))[0U],((BBINT*)BBARRAYDATAINDEX((bbt_v0),(bbt_v0)->dims,1U))[1U],((BBINT*)BBARRAYDATAINDEX((bbt_v0),(bbt_v0)->dims,2U))[2U]);
			struct BBDebugStm __stmt_4 = {0xfcf57dd78e8efc53, 240, 0};
			bbOnDebugEnterStm(&__stmt_4);
			((struct openb3d_openb3dcore_T3DS_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_t3ds_movedtris =bbArraySlice("i",((struct openb3d_openb3dcore_T3DS_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_t3ds_movedtris ,0,(((struct openb3d_openb3dcore_T3DS_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_t3ds_trisindex +1));
			struct BBDebugStm __stmt_5 = {0xfcf57dd78e8efc53, 241, 0};
			bbOnDebugEnterStm(&__stmt_5);
			((BBINT*)BBARRAYDATAINDEX((((struct openb3d_openb3dcore_T3DS_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_t3ds_movedtris ),(((struct openb3d_openb3dcore_T3DS_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_t3ds_movedtris )->dims,((BBUINT)((struct openb3d_openb3dcore_T3DS_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_t3ds_trisindex )))[((BBUINT)((struct openb3d_openb3dcore_T3DS_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_t3ds_trisindex )]=((BBINT)bbt_v);
			struct BBDebugStm __stmt_6 = {0xfcf57dd78e8efc53, 242, 0};
			bbOnDebugEnterStm(&__stmt_6);
			((struct openb3d_openb3dcore_T3DS_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_t3ds_trisindex +=1;
			bbOnDebugLeaveScope();
		}
		struct BBDebugStm __stmt_9 = {0xfcf57dd78e8efc53, 245, 0};
		bbOnDebugEnterStm(&__stmt_9);
		((struct openb3d_openb3dcore_TSurface_obj*)bbNullObjectTest((BBObject*)((struct openb3d_openb3dcore_T3DS_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_t3ds_new_surface ))->clas->m_PaintSurface_TTBrush((struct openb3d_openb3dcore_TSurface_obj*)((struct openb3d_openb3dcore_T3DS_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_t3ds_new_surface ,(struct openb3d_openb3dcore_TBrush_obj*)bbt_Brush);
		bbOnDebugLeaveScope();
	}else{
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0xfcf57dd78e8efc53, 247, 0};
		bbOnDebugEnterStm(&__stmt_0);
		((struct brl_stream_TStream_obj*)bbNullObjectTest((BBObject*)((struct openb3d_openb3dcore_T3DS_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_t3ds_stream ))->clas->m_Seek_li((struct brl_stream_TIO_obj*)((struct openb3d_openb3dcore_T3DS_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_t3ds_stream ,(((struct brl_stream_TStream_obj*)bbNullObjectTest((BBObject*)((struct openb3d_openb3dcore_T3DS_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_t3ds_stream ))->clas->m_Pos((struct brl_stream_TIO_obj*)((struct openb3d_openb3dcore_T3DS_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_t3ds_stream )+((BBLONG)(bbt_Count*2))),0);
		bbOnDebugLeaveScope();
	}
	bbOnDebugLeaveScope();
	return 0;
}
BBINT _openb3d_openb3dcore_T3DS_LoadMap_SS(struct openb3d_openb3dcore_T3DS_obj* o,BBSTRING bbt_Dir,BBSTRING bbt_Filepath){
	((struct openb3d_openb3dcore_T3DS_obj*)bbNullObjectTest((BBObject*)o));
	BBSTRING bbt_Filename=(&bbEmptyString);
	BBSTRING bbt_Texname=(&bbEmptyString);
	struct BBDebugScope_5 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"LoadMap",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":T3DS",
				.var_address=&o
			},
			{
				BBDEBUGDECL_LOCAL,
				"Dir",
				"$",
				.var_address=&bbt_Dir
			},
			{
				BBDEBUGDECL_LOCAL,
				"Filepath",
				"$",
				.var_address=&bbt_Filepath
			},
			{
				BBDEBUGDECL_LOCAL,
				"Filename",
				"$",
				.var_address=&bbt_Filename
			},
			{
				BBDEBUGDECL_LOCAL,
				"Texname",
				"$",
				.var_address=&bbt_Texname
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0xfcf57dd78e8efc53, 253, 0};
	bbOnDebugEnterStm(&__stmt_0);
	((struct openb3d_openb3dcore_T3DS_obj*)bbNullObjectTest((BBObject*)o));
	bbt_Filename=((struct openb3d_openb3dcore_T3DS_obj*)o)->clas->m_ReadCString((struct openb3d_openb3dcore_T3DS_obj*)o);
	struct BBDebugStm __stmt_1 = {0xfcf57dd78e8efc53, 255, 0};
	bbOnDebugEnterStm(&__stmt_1);
	bbt_Texname=brl_filesystem_StripDir(bbt_Filename);
	struct BBDebugStm __stmt_2 = {0xfcf57dd78e8efc53, 256, 0};
	bbOnDebugEnterStm(&__stmt_2);
	if((bbStringStartsWith((BBSTRING)bbt_Dir,((BBString*)&_s450))!=0) || (bbStringStartsWith((BBSTRING)bbt_Dir,((BBString*)&_s451))!=0)){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0xfcf57dd78e8efc53, 257, 0};
		bbOnDebugEnterStm(&__stmt_0);
		bbt_Texname=bbStringConcat(bbStringConcat(bbt_Filepath,((BBString*)&_s401)),brl_filesystem_StripDir(bbt_Filename));
		bbOnDebugLeaveScope();
	}
	struct BBDebugStm __stmt_3 = {0xfcf57dd78e8efc53, 259, 0};
	bbOnDebugEnterStm(&__stmt_3);
	if(openb3d_openb3dcore_TGlobal3D_Log_3DS!=0){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0xfcf57dd78e8efc53, 259, 0};
		bbOnDebugEnterStm(&__stmt_0);
		brl_blitz_DebugLog(bbStringConcat(bbStringConcat(bbStringConcat(((BBString*)&_s511),bbt_Filename),((BBString*)&_s512)),bbt_Texname));
		bbOnDebugLeaveScope();
	}
	struct BBDebugStm __stmt_4 = {0xfcf57dd78e8efc53, 261, 0};
	bbOnDebugEnterStm(&__stmt_4);
	((struct openb3d_openb3dcore_T3DS_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_t3ds_texture =(struct openb3d_openb3dcore_TTexture_obj*)openb3d_openb3dcore_LoadTexture(bbt_Texname,((struct openb3d_openb3dcore_T3DS_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_t3ds_override_texflags ,(struct openb3d_openb3dcore_TTexture_obj*)&bbNullObject);
	struct BBDebugStm __stmt_5 = {0xfcf57dd78e8efc53, 263, 0};
	bbOnDebugEnterStm(&__stmt_5);
	if(((BBOBJECT)((struct openb3d_openb3dcore_T3DS_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_t3ds_texture )!=&bbNullObject){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0xfcf57dd78e8efc53, 264, 0};
		bbOnDebugEnterStm(&__stmt_0);
		if(((struct openb3d_openb3dcore_T3DS_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_t3ds_texturelayer ==41472){
			struct BBDebugScope __scope = {
				BBDEBUGSCOPE_LOCALBLOCK,
				0,
				{
					{
						BBDEBUGDECL_END
					}
				}
			};
			bbOnDebugEnterScope((BBDebugScope *)&__scope);
			struct BBDebugStm __stmt_0 = {0xfcf57dd78e8efc53, 265, 0};
			bbOnDebugEnterStm(&__stmt_0);
			((struct openb3d_openb3dcore_TBrush_obj*)bbNullObjectTest((BBObject*)((struct openb3d_openb3dcore_T3DS_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_t3ds_brush ))->clas->m_BrushTexture_TTTextureii((struct openb3d_openb3dcore_TBrush_obj*)((struct openb3d_openb3dcore_T3DS_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_t3ds_brush ,(struct openb3d_openb3dcore_TTexture_obj*)((struct openb3d_openb3dcore_T3DS_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_t3ds_texture ,0,0);
			bbOnDebugLeaveScope();
		}else{
			struct BBDebugScope __scope = {
				BBDEBUGSCOPE_LOCALBLOCK,
				0,
				{
					{
						BBDEBUGDECL_END
					}
				}
			};
			bbOnDebugEnterScope((BBDebugScope *)&__scope);
			struct BBDebugStm __stmt_0 = {0xfcf57dd78e8efc53, 267, 0};
			bbOnDebugEnterStm(&__stmt_0);
			((struct openb3d_openb3dcore_TBrush_obj*)bbNullObjectTest((BBObject*)((struct openb3d_openb3dcore_T3DS_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_t3ds_brush ))->clas->m_BrushTexture_TTTextureii((struct openb3d_openb3dcore_TBrush_obj*)((struct openb3d_openb3dcore_T3DS_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_t3ds_brush ,(struct openb3d_openb3dcore_TTexture_obj*)((struct openb3d_openb3dcore_T3DS_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_t3ds_texture ,0,1);
			bbOnDebugLeaveScope();
		}
		bbOnDebugLeaveScope();
	}
	bbOnDebugLeaveScope();
	return 0;
}
BBINT _openb3d_openb3dcore_T3DS_ReadMap_i(struct openb3d_openb3dcore_T3DS_obj* o,BBINT bbt_Layer){
	((struct openb3d_openb3dcore_T3DS_obj*)bbNullObjectTest((BBObject*)o));
	struct BBDebugScope_2 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"ReadMap",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":T3DS",
				.var_address=&o
			},
			{
				BBDEBUGDECL_LOCAL,
				"Layer",
				"i",
				.var_address=&bbt_Layer
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0xfcf57dd78e8efc53, 273, 0};
	bbOnDebugEnterStm(&__stmt_0);
	((struct openb3d_openb3dcore_T3DS_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_t3ds_texture =(struct openb3d_openb3dcore_TTexture_obj*)openb3d_openb3dcore_TTexture_Create_TTTexture();
	struct BBDebugStm __stmt_1 = {0xfcf57dd78e8efc53, 274, 0};
	bbOnDebugEnterStm(&__stmt_1);
	((struct openb3d_openb3dcore_T3DS_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_t3ds_texturelayer =bbt_Layer;
	bbOnDebugLeaveScope();
	return 0;
}
BBINT _openb3d_openb3dcore_T3DS_ReadTriMesh(struct openb3d_openb3dcore_T3DS_obj* o){
	((struct openb3d_openb3dcore_T3DS_obj*)bbNullObjectTest((BBObject*)o));
	BBINT bbt_CheckSurface=0;
	struct BBDebugScope_2 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"ReadTriMesh",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":T3DS",
				.var_address=&o
			},
			{
				BBDEBUGDECL_LOCAL,
				"CheckSurface",
				"i",
				.var_address=&bbt_CheckSurface
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0xfcf57dd78e8efc53, 279, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbt_CheckSurface=0;
	struct BBDebugStm __stmt_1 = {0xfcf57dd78e8efc53, 280, 0};
	bbOnDebugEnterStm(&__stmt_1);
	if(((BBOBJECT)((struct openb3d_openb3dcore_T3DS_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_t3ds_surface )!=&bbNullObject){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0xfcf57dd78e8efc53, 281, 0};
		bbOnDebugEnterStm(&__stmt_0);
		bbArraySort((struct bbArrayClass_obj*)((struct openb3d_openb3dcore_T3DS_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_t3ds_movedtris ,0);
		struct BBDebugStm __stmt_1 = {0xfcf57dd78e8efc53, 282, 0};
		bbOnDebugEnterStm(&__stmt_1);
		BBARRAY bbt_=((struct openb3d_openb3dcore_T3DS_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_t3ds_movedtris ;
		BBUINT bbt_2=0U;
		while(bbt_2<((BBUINT)(bbt_->scales[0]))){
			BBINT bbt_it=0;
			struct BBDebugScope_1 __scope = {
				BBDEBUGSCOPE_LOCALBLOCK,
				0,
				{
					{
						BBDEBUGDECL_LOCAL,
						"it",
						"i",
						.var_address=&bbt_it
					},
					{
						BBDEBUGDECL_END
					}
				}
			};
			bbOnDebugEnterScope((BBDebugScope *)&__scope);
			bbt_it=((BBINT*)BBARRAYDATAINDEX((bbt_),(bbt_)->dims,bbt_2))[bbt_2];
			bbt_2=(bbt_2+1U);
			struct BBDebugStm __stmt_0 = {0xfcf57dd78e8efc53, 283, 0};
			bbOnDebugEnterStm(&__stmt_0);
			((struct openb3d_openb3dcore_TSurface_obj*)bbNullObjectTest((BBObject*)((struct openb3d_openb3dcore_T3DS_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_t3ds_surface ))->clas->m_RemoveTri_i((struct openb3d_openb3dcore_TSurface_obj*)((struct openb3d_openb3dcore_T3DS_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_t3ds_surface ,bbt_it);
			struct BBDebugStm __stmt_1 = {0xfcf57dd78e8efc53, 284, 0};
			bbOnDebugEnterStm(&__stmt_1);
			bbt_CheckSurface=1;
			bbOnDebugLeaveScope();
		}
		struct BBDebugStm __stmt_2 = {0xfcf57dd78e8efc53, 286, 0};
		bbOnDebugEnterStm(&__stmt_2);
		((struct openb3d_openb3dcore_T3DS_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_t3ds_movedtris =bbArraySlice("i",((struct openb3d_openb3dcore_T3DS_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_t3ds_movedtris ,0,0);
		struct BBDebugStm __stmt_3 = {0xfcf57dd78e8efc53, 288, 0};
		bbOnDebugEnterStm(&__stmt_3);
		if((((struct openb3d_openb3dcore_TSurface_obj*)bbNullObjectTest((BBObject*)((struct openb3d_openb3dcore_T3DS_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_t3ds_surface ))->_openb3d_openb3dcore_tsurface_no_tris [0]==0) && (bbt_CheckSurface!=0)){
			struct BBDebugScope __scope = {
				BBDEBUGSCOPE_LOCALBLOCK,
				0,
				{
					{
						BBDEBUGDECL_END
					}
				}
			};
			bbOnDebugEnterScope((BBDebugScope *)&__scope);
			struct BBDebugStm __stmt_0 = {0xfcf57dd78e8efc53, 289, 0};
			bbOnDebugEnterStm(&__stmt_0);
			((struct openb3d_openb3dcore_TMesh_obj*)bbNullObjectTest((BBObject*)((struct openb3d_openb3dcore_T3DS_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_t3ds_root ))->clas->m_EntityListRemove_TTListTObject((struct openb3d_openb3dcore_TEntity_obj*)((struct openb3d_openb3dcore_T3DS_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_t3ds_root ,(struct brl_linkedlist_TList_obj*)((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)((struct openb3d_openb3dcore_T3DS_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_t3ds_root ))->_openb3d_openb3dcore_tentity_child_list ,(BBOBJECT)((struct openb3d_openb3dcore_T3DS_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_t3ds_mesh );
			struct BBDebugStm __stmt_1 = {0xfcf57dd78e8efc53, 290, 0};
			bbOnDebugEnterStm(&__stmt_1);
			((struct openb3d_openb3dcore_TMesh_obj*)bbNullObjectTest((BBObject*)((struct openb3d_openb3dcore_T3DS_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_t3ds_mesh ))->clas->m_FreeEntity((struct openb3d_openb3dcore_TMesh_obj*)((struct openb3d_openb3dcore_T3DS_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_t3ds_mesh );
			bbOnDebugLeaveScope();
		}
		bbOnDebugLeaveScope();
	}
	struct BBDebugStm __stmt_2 = {0xfcf57dd78e8efc53, 293, 0};
	bbOnDebugEnterStm(&__stmt_2);
	if(openb3d_openb3dcore_TGlobal3D_Log_3DS!=0){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0xfcf57dd78e8efc53, 293, 0};
		bbOnDebugEnterStm(&__stmt_0);
		brl_blitz_DebugLog(bbStringConcat(((BBString*)&_s513),bbStringFromInt(bbt_CheckSurface)));
		bbOnDebugLeaveScope();
	}
	struct BBDebugStm __stmt_3 = {0xfcf57dd78e8efc53, 296, 0};
	bbOnDebugEnterStm(&__stmt_3);
	((struct openb3d_openb3dcore_T3DS_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_t3ds_mesh =(struct openb3d_openb3dcore_TMesh_obj*)openb3d_openb3dcore_TMesh_Create_TTMesh();
	struct BBDebugStm __stmt_4 = {0xfcf57dd78e8efc53, 297, 0};
	bbOnDebugEnterStm(&__stmt_4);
	if(((struct openb3d_openb3dcore_T3DS_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_t3ds_objectindex >0){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0xfcf57dd78e8efc53, 297, 0};
		bbOnDebugEnterStm(&__stmt_0);
		((struct openb3d_openb3dcore_TMesh_obj*)bbNullObjectTest((BBObject*)((struct openb3d_openb3dcore_T3DS_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_t3ds_mesh ))->clas->m_SetString_pbS((struct openb3d_openb3dcore_TEntity_obj*)((struct openb3d_openb3dcore_T3DS_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_t3ds_mesh ,((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)((struct openb3d_openb3dcore_T3DS_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_t3ds_mesh ))->_openb3d_openb3dcore_tentity_name ,((BBSTRING*)BBARRAYDATAINDEX((((struct openb3d_openb3dcore_T3DS_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_t3ds_objectnames ),(((struct openb3d_openb3dcore_T3DS_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_t3ds_objectnames )->dims,((BBUINT)(((struct openb3d_openb3dcore_T3DS_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_t3ds_objectindex -1))))[((BBUINT)(((struct openb3d_openb3dcore_T3DS_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_t3ds_objectindex -1))]);
		bbOnDebugLeaveScope();
	}
	struct BBDebugStm __stmt_5 = {0xfcf57dd78e8efc53, 298, 0};
	bbOnDebugEnterStm(&__stmt_5);
	((struct openb3d_openb3dcore_TMesh_obj*)bbNullObjectTest((BBObject*)((struct openb3d_openb3dcore_T3DS_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_t3ds_mesh ))->clas->m_SetString_pbS((struct openb3d_openb3dcore_TEntity_obj*)((struct openb3d_openb3dcore_T3DS_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_t3ds_mesh ,((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)((struct openb3d_openb3dcore_T3DS_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_t3ds_mesh ))->_openb3d_openb3dcore_tentity_class_name ,((BBString*)&_s461));
	struct BBDebugStm __stmt_6 = {0xfcf57dd78e8efc53, 299, 0};
	bbOnDebugEnterStm(&__stmt_6);
	((struct openb3d_openb3dcore_TMesh_obj*)bbNullObjectTest((BBObject*)((struct openb3d_openb3dcore_T3DS_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_t3ds_mesh ))->clas->m_AddParent_TTEntity((struct openb3d_openb3dcore_TEntity_obj*)((struct openb3d_openb3dcore_T3DS_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_t3ds_mesh ,(struct openb3d_openb3dcore_TEntity_obj*)((struct openb3d_openb3dcore_TEntity_obj*)bbObjectDowncast((BBOBJECT)((struct openb3d_openb3dcore_T3DS_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_t3ds_root ,(BBClass*)&openb3d_openb3dcore_TEntity)));
	struct BBDebugStm __stmt_7 = {0xfcf57dd78e8efc53, 300, 0};
	bbOnDebugEnterStm(&__stmt_7);
	((struct openb3d_openb3dcore_TMesh_obj*)bbNullObjectTest((BBObject*)((struct openb3d_openb3dcore_T3DS_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_t3ds_mesh ))->clas->m_EntityListAdd_TTListTObject((struct openb3d_openb3dcore_TEntity_obj*)((struct openb3d_openb3dcore_T3DS_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_t3ds_mesh ,(struct brl_linkedlist_TList_obj*)openb3d_openb3dcore_TEntity_entity_list,(BBOBJECT)&bbNullObject);
	struct BBDebugStm __stmt_8 = {0xfcf57dd78e8efc53, 301, 0};
	bbOnDebugEnterStm(&__stmt_8);
	((struct openb3d_openb3dcore_T3DS_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_t3ds_surface =(struct openb3d_openb3dcore_TSurface_obj*)((struct openb3d_openb3dcore_TMesh_obj*)bbNullObjectTest((BBObject*)((struct openb3d_openb3dcore_T3DS_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_t3ds_mesh ))->clas->m_CreateSurface_TTBrush((struct openb3d_openb3dcore_TMesh_obj*)((struct openb3d_openb3dcore_T3DS_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_t3ds_mesh ,(struct openb3d_openb3dcore_TBrush_obj*)&bbNullObject);
	bbOnDebugLeaveScope();
	return 0;
}
BBINT _openb3d_openb3dcore_T3DS_ReadBrushBlock(struct openb3d_openb3dcore_T3DS_obj* o){
	((struct openb3d_openb3dcore_T3DS_obj*)bbNullObjectTest((BBObject*)o));
	struct BBDebugScope_1 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"ReadBrushBlock",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":T3DS",
				.var_address=&o
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0xfcf57dd78e8efc53, 305, 0};
	bbOnDebugEnterStm(&__stmt_0);
	((struct openb3d_openb3dcore_T3DS_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_t3ds_brush =(struct openb3d_openb3dcore_TBrush_obj*)openb3d_openb3dcore_CreateBrush(255.000000f,255.000000f,255.000000f);
	struct BBDebugStm __stmt_1 = {0xfcf57dd78e8efc53, 306, 0};
	bbOnDebugEnterStm(&__stmt_1);
	((struct brl_linkedlist_TList_obj*)bbNullObjectTest((BBObject*)((struct openb3d_openb3dcore_T3DS_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_t3ds_brushs ))->clas->m_AddLast_TObject((struct brl_linkedlist_TList_obj*)((struct openb3d_openb3dcore_T3DS_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_t3ds_brushs ,(BBOBJECT)((struct openb3d_openb3dcore_T3DS_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_t3ds_brush );
	bbOnDebugLeaveScope();
	return 0;
}
struct openb3d_openb3dcore_TMesh_obj* openb3d_openb3dcore_T3DS_Load3DS_TTMesh_TObjectTTEntityi(BBOBJECT bbt_url,struct openb3d_openb3dcore_TEntity_obj* bbt_parent_ent_ext,BBINT bbt_texflags){
	struct brl_stream_TStream_obj* bbt_file=(struct brl_stream_TStream_obj*)((struct brl_stream_TStream_obj*)&bbNullObject);
	struct openb3d_openb3dcore_T3DS_obj* bbt_model=(struct openb3d_openb3dcore_T3DS_obj*)((struct openb3d_openb3dcore_T3DS_obj*)&bbNullObject);
	struct openb3d_openb3dcore_TMesh_obj* bbt_mesh=(struct openb3d_openb3dcore_TMesh_obj*)((struct openb3d_openb3dcore_TMesh_obj*)&bbNullObject);
	struct BBDebugScope_6 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"Load3DS",
		{
			{
				BBDEBUGDECL_LOCAL,
				"url",
				":Object",
				.var_address=&bbt_url
			},
			{
				BBDEBUGDECL_LOCAL,
				"parent_ent_ext",
				":TEntity",
				.var_address=&bbt_parent_ent_ext
			},
			{
				BBDEBUGDECL_LOCAL,
				"texflags",
				"i",
				.var_address=&bbt_texflags
			},
			{
				BBDEBUGDECL_LOCAL,
				"file",
				":TStream",
				.var_address=&bbt_file
			},
			{
				BBDEBUGDECL_LOCAL,
				"model",
				":T3DS",
				.var_address=&bbt_model
			},
			{
				BBDEBUGDECL_LOCAL,
				"mesh",
				":TMesh",
				.var_address=&bbt_mesh
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0xfcf57dd78e8efc53, 329, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbt_file=(struct brl_stream_TStream_obj*)brl_endianstream_LittleEndianStream((struct brl_stream_TStream_obj*)brl_filesystem_ReadFile((BBOBJECT)bbt_url));
	struct BBDebugStm __stmt_1 = {0xfcf57dd78e8efc53, 330, 0};
	bbOnDebugEnterStm(&__stmt_1);
	if(((BBOBJECT)bbt_file)==&bbNullObject){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0xfcf57dd78e8efc53, 331, 0};
		bbOnDebugEnterStm(&__stmt_0);
		brl_blitz_DebugLog(bbStringConcat(((BBString*)&_s514),((BBString *)bbObjectStringcast((BBOBJECT)bbt_url))));
		struct BBDebugStm __stmt_1 = {0xfcf57dd78e8efc53, 332, 0};
		bbOnDebugEnterStm(&__stmt_1);
		bbOnDebugLeaveScope();
		bbOnDebugLeaveScope();
		return (struct openb3d_openb3dcore_TMesh_obj*)&bbNullObject;
	}
	struct BBDebugStm __stmt_2 = {0xfcf57dd78e8efc53, 335, 0};
	bbOnDebugEnterStm(&__stmt_2);
	bbt_model=(struct openb3d_openb3dcore_T3DS_obj*)(struct openb3d_openb3dcore_T3DS_obj*)bbObjectNew((BBClass *)&openb3d_openb3dcore_T3DS);
	struct BBDebugStm __stmt_3 = {0xfcf57dd78e8efc53, 336, 0};
	bbOnDebugEnterStm(&__stmt_3);
	bbt_mesh=(struct openb3d_openb3dcore_TMesh_obj*)((struct openb3d_openb3dcore_T3DS_obj*)bbNullObjectTest((BBObject*)bbt_model))->clas->m_Load3DSFromStream_TTStreamTObjectTTEntityi((struct openb3d_openb3dcore_T3DS_obj*)bbt_model,(struct brl_stream_TStream_obj*)bbt_file,(BBOBJECT)bbt_url,(struct openb3d_openb3dcore_TEntity_obj*)bbt_parent_ent_ext,bbt_texflags);
	struct BBDebugStm __stmt_4 = {0xfcf57dd78e8efc53, 338, 0};
	bbOnDebugEnterStm(&__stmt_4);
	((struct brl_stream_TStream_obj*)bbNullObjectTest((BBObject*)bbt_file))->clas->m_Close((struct brl_stream_TIO_obj*)bbt_file);
	struct BBDebugStm __stmt_5 = {0xfcf57dd78e8efc53, 339, 0};
	bbOnDebugEnterStm(&__stmt_5);
	bbOnDebugLeaveScope();
	return (struct openb3d_openb3dcore_TMesh_obj*)bbt_mesh;
}
struct openb3d_openb3dcore_TMesh_obj* _openb3d_openb3dcore_T3DS_Load3DSFromStream_TTStreamTObjectTTEntityi(struct openb3d_openb3dcore_T3DS_obj* o,struct brl_stream_TStream_obj* bbt_file,BBOBJECT bbt_url,struct openb3d_openb3dcore_TEntity_obj* bbt_parent_ent,BBINT bbt_texflags){
	((struct openb3d_openb3dcore_T3DS_obj*)bbNullObjectTest((BBObject*)o));
	BBINT bbt_Size=0;
	BBSTRING bbt_OldDir=(&bbEmptyString);
	BBSTRING bbt_Filepath=(&bbEmptyString);
	BBSTRING bbt_Dir=(&bbEmptyString);
	struct brl_pixmap_TPixmap_obj* bbt_Pixmap=(struct brl_pixmap_TPixmap_obj*)((struct brl_pixmap_TPixmap_obj*)&bbNullObject);
	BBSTRING bbt_BrushName=(&bbEmptyString);
	BBINT bbt_in=0;
	BBINT bbt_CheckSurface=0;
	struct BBDebugScope_13 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"Load3DSFromStream",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":T3DS",
				.var_address=&o
			},
			{
				BBDEBUGDECL_LOCAL,
				"file",
				":TStream",
				.var_address=&bbt_file
			},
			{
				BBDEBUGDECL_LOCAL,
				"url",
				":Object",
				.var_address=&bbt_url
			},
			{
				BBDEBUGDECL_LOCAL,
				"parent_ent",
				":TEntity",
				.var_address=&bbt_parent_ent
			},
			{
				BBDEBUGDECL_LOCAL,
				"texflags",
				"i",
				.var_address=&bbt_texflags
			},
			{
				BBDEBUGDECL_LOCAL,
				"Size",
				"i",
				.var_address=&bbt_Size
			},
			{
				BBDEBUGDECL_LOCAL,
				"OldDir",
				"$",
				.var_address=&bbt_OldDir
			},
			{
				BBDEBUGDECL_LOCAL,
				"Filepath",
				"$",
				.var_address=&bbt_Filepath
			},
			{
				BBDEBUGDECL_LOCAL,
				"Dir",
				"$",
				.var_address=&bbt_Dir
			},
			{
				BBDEBUGDECL_LOCAL,
				"Pixmap",
				":TPixmap",
				.var_address=&bbt_Pixmap
			},
			{
				BBDEBUGDECL_LOCAL,
				"BrushName",
				"$",
				.var_address=&bbt_BrushName
			},
			{
				BBDEBUGDECL_LOCAL,
				"in",
				"i",
				.var_address=&bbt_in
			},
			{
				BBDEBUGDECL_LOCAL,
				"CheckSurface",
				"i",
				.var_address=&bbt_CheckSurface
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0xfcf57dd78e8efc53, 343, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbt_Size=0;
	struct BBDebugStm __stmt_1 = {0xfcf57dd78e8efc53, 343, 0};
	bbOnDebugEnterStm(&__stmt_1);
	bbt_OldDir=((BBString*)&bbEmptyString);
	struct BBDebugStm __stmt_2 = {0xfcf57dd78e8efc53, 343, 0};
	bbOnDebugEnterStm(&__stmt_2);
	bbt_Filepath=((BBString*)&bbEmptyString);
	struct BBDebugStm __stmt_3 = {0xfcf57dd78e8efc53, 343, 0};
	bbOnDebugEnterStm(&__stmt_3);
	bbt_Dir=((BBString*)&bbEmptyString);
	struct BBDebugStm __stmt_4 = {0xfcf57dd78e8efc53, 344, 0};
	bbOnDebugEnterStm(&__stmt_4);
	bbt_Pixmap=(struct brl_pixmap_TPixmap_obj*)((struct brl_pixmap_TPixmap_obj*)&bbNullObject);
	struct BBDebugStm __stmt_5 = {0xfcf57dd78e8efc53, 344, 0};
	bbOnDebugEnterStm(&__stmt_5);
	bbt_BrushName=((BBString*)&bbEmptyString);
	struct BBDebugStm __stmt_6 = {0xfcf57dd78e8efc53, 346, 0};
	bbOnDebugEnterStm(&__stmt_6);
	((struct openb3d_openb3dcore_T3DS_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_t3ds_stream =(struct brl_stream_TStream_obj*)bbt_file;
	struct BBDebugStm __stmt_7 = {0xfcf57dd78e8efc53, 347, 0};
	bbOnDebugEnterStm(&__stmt_7);
	bbt_Size=((BBINT)((struct brl_stream_TStream_obj*)bbNullObjectTest((BBObject*)((struct openb3d_openb3dcore_T3DS_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_t3ds_stream ))->clas->m_Size((struct brl_stream_TIO_obj*)((struct openb3d_openb3dcore_T3DS_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_t3ds_stream ));
	struct BBDebugStm __stmt_8 = {0xfcf57dd78e8efc53, 348, 0};
	bbOnDebugEnterStm(&__stmt_8);
	bbt_Dir=((BBString *)bbObjectStringcast((BBOBJECT)bbt_url));
	struct BBDebugStm __stmt_9 = {0xfcf57dd78e8efc53, 349, 0};
	bbOnDebugEnterStm(&__stmt_9);
	bbt_OldDir=brl_filesystem_CurrentDir();
	struct BBDebugStm __stmt_10 = {0xfcf57dd78e8efc53, 350, 0};
	bbOnDebugEnterStm(&__stmt_10);
	if(bbt_texflags==-1){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0xfcf57dd78e8efc53, 350, 0};
		bbOnDebugEnterStm(&__stmt_0);
		((struct openb3d_openb3dcore_T3DS_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_t3ds_override_texflags =openb3d_openb3dcore_TGlobal3D_Texture_Flags;
		bbOnDebugLeaveScope();
	}else{
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0xfcf57dd78e8efc53, 350, 0};
		bbOnDebugEnterStm(&__stmt_0);
		((struct openb3d_openb3dcore_T3DS_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_t3ds_override_texflags =bbt_texflags;
		bbOnDebugLeaveScope();
	}
	struct BBDebugStm __stmt_11 = {0xfcf57dd78e8efc53, 353, 0};
	bbOnDebugEnterStm(&__stmt_11);
	((struct openb3d_openb3dcore_T3DS_obj*)bbNullObjectTest((BBObject*)o));
	((struct openb3d_openb3dcore_T3DS_obj*)o)->clas->m_ReadChunk((struct openb3d_openb3dcore_T3DS_obj*)o);
	struct BBDebugStm __stmt_12 = {0xfcf57dd78e8efc53, 354, 0};
	bbOnDebugEnterStm(&__stmt_12);
	if((((BBINT)((struct openb3d_openb3dcore_T3DS_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_t3ds_chunkid )!=19789) || (((struct openb3d_openb3dcore_T3DS_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_t3ds_chunksize !=bbt_Size)){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0xfcf57dd78e8efc53, 355, 0};
		bbOnDebugEnterStm(&__stmt_0);
		((struct brl_stream_TStream_obj*)bbNullObjectTest((BBObject*)((struct openb3d_openb3dcore_T3DS_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_t3ds_stream ))->clas->m_Close((struct brl_stream_TIO_obj*)((struct openb3d_openb3dcore_T3DS_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_t3ds_stream );
		struct BBDebugStm __stmt_1 = {0xfcf57dd78e8efc53, 356, 0};
		bbOnDebugEnterStm(&__stmt_1);
		brl_blitz_DebugLog(bbStringConcat(((BBString*)&_s515),bbt_Dir));
		struct BBDebugStm __stmt_2 = {0xfcf57dd78e8efc53, 357, 0};
		bbOnDebugEnterStm(&__stmt_2);
		bbOnDebugLeaveScope();
		bbOnDebugLeaveScope();
		return (struct openb3d_openb3dcore_TMesh_obj*)&bbNullObject;
	}
	struct BBDebugStm __stmt_13 = {0xfcf57dd78e8efc53, 359, 0};
	bbOnDebugEnterStm(&__stmt_13);
	if(openb3d_openb3dcore_TGlobal3D_Log_3DS!=0){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0xfcf57dd78e8efc53, 359, 0};
		bbOnDebugEnterStm(&__stmt_0);
		brl_blitz_DebugLog(bbStringConcat(bbStringConcat(bbStringConcat(((BBString*)&_s516),bbt_Dir),((BBString*)&_s517)),bbStringFromInt(bbt_Size)));
		bbOnDebugLeaveScope();
	}
	struct BBDebugStm __stmt_14 = {0xfcf57dd78e8efc53, 362, 0};
	bbOnDebugEnterStm(&__stmt_14);
	while(!(((struct brl_stream_TStream_obj*)bbNullObjectTest((BBObject*)((struct openb3d_openb3dcore_T3DS_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_t3ds_stream ))->clas->m_Eof((struct brl_stream_TIO_obj*)((struct openb3d_openb3dcore_T3DS_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_t3ds_stream )!=0)){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0xfcf57dd78e8efc53, 363, 0};
		bbOnDebugEnterStm(&__stmt_0);
		((struct openb3d_openb3dcore_T3DS_obj*)bbNullObjectTest((BBObject*)o));
		((struct openb3d_openb3dcore_T3DS_obj*)o)->clas->m_ReadChunk((struct openb3d_openb3dcore_T3DS_obj*)o);
		struct BBDebugStm __stmt_1 = {0xfcf57dd78e8efc53, 364, 0};
		bbOnDebugEnterStm(&__stmt_1);
		if(((BBINT)((struct openb3d_openb3dcore_T3DS_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_t3ds_chunkid )==15677){
			struct BBDebugScope __scope = {
				BBDEBUGSCOPE_LOCALBLOCK,
				0,
				{
					{
						BBDEBUGDECL_END
					}
				}
			};
			bbOnDebugEnterScope((BBDebugScope *)&__scope);
			struct BBDebugStm __stmt_0 = {0xfcf57dd78e8efc53, 365, 0};
			bbOnDebugEnterStm(&__stmt_0);
			bbOnDebugLeaveScope();
			bbOnDebugLeaveScope();
			break;
		}else{
			struct BBDebugScope __scope = {
				BBDEBUGSCOPE_LOCALBLOCK,
				0,
				{
					{
						BBDEBUGDECL_END
					}
				}
			};
			bbOnDebugEnterScope((BBDebugScope *)&__scope);
			struct BBDebugStm __stmt_0 = {0xfcf57dd78e8efc53, 367, 0};
			bbOnDebugEnterStm(&__stmt_0);
			((struct openb3d_openb3dcore_T3DS_obj*)bbNullObjectTest((BBObject*)o));
			((struct openb3d_openb3dcore_T3DS_obj*)o)->clas->m_SkipChunk((struct openb3d_openb3dcore_T3DS_obj*)o);
			bbOnDebugLeaveScope();
		}
		bbOnDebugLeaveScope();
	}
	struct BBDebugStm __stmt_15 = {0xfcf57dd78e8efc53, 371, 0};
	bbOnDebugEnterStm(&__stmt_15);
	bbt_in=0;
	struct BBDebugStm __stmt_16 = {0xfcf57dd78e8efc53, 372, 0};
	bbOnDebugEnterStm(&__stmt_16);
	while(brl_retro_Instr(bbt_Dir,((BBString*)&_s400),(bbt_in+1))!=0){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0xfcf57dd78e8efc53, 373, 0};
		bbOnDebugEnterStm(&__stmt_0);
		bbt_in=brl_retro_Instr(bbt_Dir,((BBString*)&_s400),(bbt_in+1));
		bbOnDebugLeaveScope();
	}
	struct BBDebugStm __stmt_17 = {0xfcf57dd78e8efc53, 375, 0};
	bbOnDebugEnterStm(&__stmt_17);
	while(brl_retro_Instr(bbt_Dir,((BBString*)&_s401),(bbt_in+1))!=0){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0xfcf57dd78e8efc53, 376, 0};
		bbOnDebugEnterStm(&__stmt_0);
		bbt_in=brl_retro_Instr(bbt_Dir,((BBString*)&_s401),(bbt_in+1));
		bbOnDebugLeaveScope();
	}
	struct BBDebugStm __stmt_18 = {0xfcf57dd78e8efc53, 378, 0};
	bbOnDebugEnterStm(&__stmt_18);
	if(bbt_in!=0){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0xfcf57dd78e8efc53, 378, 0};
		bbOnDebugEnterStm(&__stmt_0);
		bbt_Dir=brl_retro_Left(bbt_Dir,(bbt_in-1));
		bbOnDebugLeaveScope();
	}
	struct BBDebugStm __stmt_19 = {0xfcf57dd78e8efc53, 380, 0};
	bbOnDebugEnterStm(&__stmt_19);
	bbt_Filepath=brl_filesystem_ExtractDir((BBString *)bbObjectStringcast((BBOBJECT)bbt_url));
	struct BBDebugStm __stmt_20 = {0xfcf57dd78e8efc53, 381, 0};
	bbOnDebugEnterStm(&__stmt_20);
	if(bbStringEquals(bbt_Filepath, ((BBString*)&bbEmptyString))!=1){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0xfcf57dd78e8efc53, 381, 0};
		bbOnDebugEnterStm(&__stmt_0);
		brl_filesystem_ChangeDir(bbt_Filepath);
		bbOnDebugLeaveScope();
	}
	struct BBDebugStm __stmt_21 = {0xfcf57dd78e8efc53, 382, 0};
	bbOnDebugEnterStm(&__stmt_21);
	if(openb3d_openb3dcore_TGlobal3D_Log_3DS!=0){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0xfcf57dd78e8efc53, 382, 0};
		bbOnDebugEnterStm(&__stmt_0);
		brl_blitz_DebugLog(bbStringConcat(((BBString*)&_s518),bbt_OldDir));
		bbOnDebugLeaveScope();
	}
	struct BBDebugStm __stmt_22 = {0xfcf57dd78e8efc53, 384, 0};
	bbOnDebugEnterStm(&__stmt_22);
	((struct openb3d_openb3dcore_T3DS_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_t3ds_root =(struct openb3d_openb3dcore_TMesh_obj*)openb3d_openb3dcore_TMesh_Create_TTMesh();
	struct BBDebugStm __stmt_23 = {0xfcf57dd78e8efc53, 385, 0};
	bbOnDebugEnterStm(&__stmt_23);
	((struct openb3d_openb3dcore_TMesh_obj*)bbNullObjectTest((BBObject*)((struct openb3d_openb3dcore_T3DS_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_t3ds_root ))->clas->m_SetString_pbS((struct openb3d_openb3dcore_TEntity_obj*)((struct openb3d_openb3dcore_T3DS_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_t3ds_root ,((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)((struct openb3d_openb3dcore_T3DS_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_t3ds_root ))->_openb3d_openb3dcore_tentity_name ,((BBString*)&_s519));
	struct BBDebugStm __stmt_24 = {0xfcf57dd78e8efc53, 386, 0};
	bbOnDebugEnterStm(&__stmt_24);
	((struct openb3d_openb3dcore_TMesh_obj*)bbNullObjectTest((BBObject*)((struct openb3d_openb3dcore_T3DS_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_t3ds_root ))->clas->m_SetString_pbS((struct openb3d_openb3dcore_TEntity_obj*)((struct openb3d_openb3dcore_T3DS_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_t3ds_root ,((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)((struct openb3d_openb3dcore_T3DS_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_t3ds_root ))->_openb3d_openb3dcore_tentity_class_name ,((BBString*)&_s461));
	struct BBDebugStm __stmt_25 = {0xfcf57dd78e8efc53, 387, 0};
	bbOnDebugEnterStm(&__stmt_25);
	((struct openb3d_openb3dcore_TMesh_obj*)bbNullObjectTest((BBObject*)((struct openb3d_openb3dcore_T3DS_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_t3ds_root ))->clas->m_AddParent_TTEntity((struct openb3d_openb3dcore_TEntity_obj*)((struct openb3d_openb3dcore_T3DS_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_t3ds_root ,(struct openb3d_openb3dcore_TEntity_obj*)bbt_parent_ent);
	struct BBDebugStm __stmt_26 = {0xfcf57dd78e8efc53, 388, 0};
	bbOnDebugEnterStm(&__stmt_26);
	((struct openb3d_openb3dcore_TMesh_obj*)bbNullObjectTest((BBObject*)((struct openb3d_openb3dcore_T3DS_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_t3ds_root ))->clas->m_EntityListAdd_TTListTObject((struct openb3d_openb3dcore_TEntity_obj*)((struct openb3d_openb3dcore_T3DS_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_t3ds_root ,(struct brl_linkedlist_TList_obj*)openb3d_openb3dcore_TEntity_entity_list,(BBOBJECT)&bbNullObject);
	struct BBDebugStm __stmt_27 = {0xfcf57dd78e8efc53, 390, 0};
	bbOnDebugEnterStm(&__stmt_27);
	while(!(((struct brl_stream_TStream_obj*)bbNullObjectTest((BBObject*)((struct openb3d_openb3dcore_T3DS_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_t3ds_stream ))->clas->m_Eof((struct brl_stream_TIO_obj*)((struct openb3d_openb3dcore_T3DS_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_t3ds_stream )!=0)){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0xfcf57dd78e8efc53, 391, 0};
		bbOnDebugEnterStm(&__stmt_0);
		((struct openb3d_openb3dcore_T3DS_obj*)bbNullObjectTest((BBObject*)o));
		((struct openb3d_openb3dcore_T3DS_obj*)o)->clas->m_ReadChunk((struct openb3d_openb3dcore_T3DS_obj*)o);
		struct BBDebugStm __stmt_1 = {0xfcf57dd78e8efc53, 392, 0};
		bbOnDebugEnterStm(&__stmt_1);
		if(((BBINT)((struct openb3d_openb3dcore_T3DS_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_t3ds_chunkid )==0){
			struct BBDebugScope __scope = {
				BBDEBUGSCOPE_LOCALBLOCK,
				0,
				{
					{
						BBDEBUGDECL_END
					}
				}
			};
			bbOnDebugEnterScope((BBDebugScope *)&__scope);
			struct BBDebugStm __stmt_0 = {0xfcf57dd78e8efc53, 392, 0};
			bbOnDebugEnterStm(&__stmt_0);
			bbOnDebugLeaveScope();
			bbOnDebugLeaveScope();
			break;
		}
		struct BBDebugStm __stmt_2 = {0xfcf57dd78e8efc53, 394, 0};
		bbOnDebugEnterStm(&__stmt_2);
		BBSHORT bbt_=((struct openb3d_openb3dcore_T3DS_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_t3ds_chunkid ;
		struct BBDebugStm __stmt_3 = {0xfcf57dd78e8efc53, 395, 0};
		bbOnDebugEnterStm(&__stmt_3);
		if(((BBINT)bbt_)==16384){
			struct BBDebugScope __scope = {
				BBDEBUGSCOPE_LOCALBLOCK,
				0,
				{
					{
						BBDEBUGDECL_END
					}
				}
			};
			bbOnDebugEnterScope((BBDebugScope *)&__scope);
			struct BBDebugStm __stmt_0 = {0xfcf57dd78e8efc53, 396, 0};
			bbOnDebugEnterStm(&__stmt_0);
			((struct openb3d_openb3dcore_T3DS_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_t3ds_objectnames =bbArraySlice("$",((struct openb3d_openb3dcore_T3DS_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_t3ds_objectnames ,0,(((struct openb3d_openb3dcore_T3DS_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_t3ds_objectindex +1));
			struct BBDebugStm __stmt_1 = {0xfcf57dd78e8efc53, 397, 0};
			bbOnDebugEnterStm(&__stmt_1);
			((struct openb3d_openb3dcore_T3DS_obj*)bbNullObjectTest((BBObject*)o));
			((BBSTRING*)BBARRAYDATAINDEX((((struct openb3d_openb3dcore_T3DS_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_t3ds_objectnames ),(((struct openb3d_openb3dcore_T3DS_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_t3ds_objectnames )->dims,((BBUINT)((struct openb3d_openb3dcore_T3DS_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_t3ds_objectindex )))[((BBUINT)((struct openb3d_openb3dcore_T3DS_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_t3ds_objectindex )]=((struct openb3d_openb3dcore_T3DS_obj*)o)->clas->m_ReadCString((struct openb3d_openb3dcore_T3DS_obj*)o);
			struct BBDebugStm __stmt_2 = {0xfcf57dd78e8efc53, 398, 0};
			bbOnDebugEnterStm(&__stmt_2);
			((struct openb3d_openb3dcore_T3DS_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_t3ds_objectindex +=1;
			struct BBDebugStm __stmt_3 = {0xfcf57dd78e8efc53, 399, 0};
			bbOnDebugEnterStm(&__stmt_3);
			if(openb3d_openb3dcore_TGlobal3D_Log_3DS!=0){
				struct BBDebugScope __scope = {
					BBDEBUGSCOPE_LOCALBLOCK,
					0,
					{
						{
							BBDEBUGDECL_END
						}
					}
				};
				bbOnDebugEnterScope((BBDebugScope *)&__scope);
				struct BBDebugStm __stmt_0 = {0xfcf57dd78e8efc53, 399, 0};
				bbOnDebugEnterStm(&__stmt_0);
				brl_blitz_DebugLog(bbStringConcat(((BBString*)&_s520),((BBSTRING*)BBARRAYDATAINDEX((((struct openb3d_openb3dcore_T3DS_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_t3ds_objectnames ),(((struct openb3d_openb3dcore_T3DS_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_t3ds_objectnames )->dims,((BBUINT)(((struct openb3d_openb3dcore_T3DS_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_t3ds_objectindex -1))))[((BBUINT)(((struct openb3d_openb3dcore_T3DS_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_t3ds_objectindex -1))]));
				bbOnDebugLeaveScope();
			}
			bbOnDebugLeaveScope();
		}else{
			struct BBDebugScope __scope = {
				BBDEBUGSCOPE_LOCALBLOCK,
				0,
				{
					{
						BBDEBUGDECL_END
					}
				}
			};
			bbOnDebugEnterScope((BBDebugScope *)&__scope);
			struct BBDebugStm __stmt_0 = {0xfcf57dd78e8efc53, 401, 0};
			bbOnDebugEnterStm(&__stmt_0);
			if(((BBINT)bbt_)==45055){
				struct BBDebugScope __scope = {
					BBDEBUGSCOPE_LOCALBLOCK,
					0,
					{
						{
							BBDEBUGDECL_END
						}
					}
				};
				bbOnDebugEnterScope((BBDebugScope *)&__scope);
				struct BBDebugStm __stmt_0 = {0xfcf57dd78e8efc53, 402, 0};
				bbOnDebugEnterStm(&__stmt_0);
				((struct openb3d_openb3dcore_T3DS_obj*)bbNullObjectTest((BBObject*)o));
				((struct openb3d_openb3dcore_T3DS_obj*)o)->clas->m_ReadBrushBlock((struct openb3d_openb3dcore_T3DS_obj*)o);
				bbOnDebugLeaveScope();
			}else{
				struct BBDebugScope __scope = {
					BBDEBUGSCOPE_LOCALBLOCK,
					0,
					{
						{
							BBDEBUGDECL_END
						}
					}
				};
				bbOnDebugEnterScope((BBDebugScope *)&__scope);
				struct BBDebugStm __stmt_0 = {0xfcf57dd78e8efc53, 404, 0};
				bbOnDebugEnterStm(&__stmt_0);
				if(((BBINT)bbt_)==16640){
					struct BBDebugScope __scope = {
						BBDEBUGSCOPE_LOCALBLOCK,
						0,
						{
							{
								BBDEBUGDECL_END
							}
						}
					};
					bbOnDebugEnterScope((BBDebugScope *)&__scope);
					struct BBDebugStm __stmt_0 = {0xfcf57dd78e8efc53, 405, 0};
					bbOnDebugEnterStm(&__stmt_0);
					((struct openb3d_openb3dcore_T3DS_obj*)bbNullObjectTest((BBObject*)o));
					((struct openb3d_openb3dcore_T3DS_obj*)o)->clas->m_ReadTriMesh((struct openb3d_openb3dcore_T3DS_obj*)o);
					bbOnDebugLeaveScope();
				}else{
					struct BBDebugScope __scope = {
						BBDEBUGSCOPE_LOCALBLOCK,
						0,
						{
							{
								BBDEBUGDECL_END
							}
						}
					};
					bbOnDebugEnterScope((BBDebugScope *)&__scope);
					struct BBDebugStm __stmt_0 = {0xfcf57dd78e8efc53, 407, 0};
					bbOnDebugEnterStm(&__stmt_0);
					if(((BBINT)bbt_)==16656){
						struct BBDebugScope __scope = {
							BBDEBUGSCOPE_LOCALBLOCK,
							0,
							{
								{
									BBDEBUGDECL_END
								}
							}
						};
						bbOnDebugEnterScope((BBDebugScope *)&__scope);
						struct BBDebugStm __stmt_0 = {0xfcf57dd78e8efc53, 408, 0};
						bbOnDebugEnterStm(&__stmt_0);
						((struct openb3d_openb3dcore_T3DS_obj*)bbNullObjectTest((BBObject*)o));
						((struct openb3d_openb3dcore_T3DS_obj*)o)->clas->m_ReadVertexList((struct openb3d_openb3dcore_T3DS_obj*)o);
						bbOnDebugLeaveScope();
					}else{
						struct BBDebugScope __scope = {
							BBDEBUGSCOPE_LOCALBLOCK,
							0,
							{
								{
									BBDEBUGDECL_END
								}
							}
						};
						bbOnDebugEnterScope((BBDebugScope *)&__scope);
						struct BBDebugStm __stmt_0 = {0xfcf57dd78e8efc53, 410, 0};
						bbOnDebugEnterStm(&__stmt_0);
						if(((BBINT)bbt_)==16672){
							struct BBDebugScope __scope = {
								BBDEBUGSCOPE_LOCALBLOCK,
								0,
								{
									{
										BBDEBUGDECL_END
									}
								}
							};
							bbOnDebugEnterScope((BBDebugScope *)&__scope);
							struct BBDebugStm __stmt_0 = {0xfcf57dd78e8efc53, 411, 0};
							bbOnDebugEnterStm(&__stmt_0);
							((struct openb3d_openb3dcore_T3DS_obj*)bbNullObjectTest((BBObject*)o));
							((struct openb3d_openb3dcore_T3DS_obj*)o)->clas->m_ReadFaceList((struct openb3d_openb3dcore_T3DS_obj*)o);
							bbOnDebugLeaveScope();
						}else{
							struct BBDebugScope __scope = {
								BBDEBUGSCOPE_LOCALBLOCK,
								0,
								{
									{
										BBDEBUGDECL_END
									}
								}
							};
							bbOnDebugEnterScope((BBDebugScope *)&__scope);
							struct BBDebugStm __stmt_0 = {0xfcf57dd78e8efc53, 413, 0};
							bbOnDebugEnterStm(&__stmt_0);
							if(((BBINT)bbt_)==16688){
								struct BBDebugScope __scope = {
									BBDEBUGSCOPE_LOCALBLOCK,
									0,
									{
										{
											BBDEBUGDECL_END
										}
									}
								};
								bbOnDebugEnterScope((BBDebugScope *)&__scope);
								struct BBDebugStm __stmt_0 = {0xfcf57dd78e8efc53, 414, 0};
								bbOnDebugEnterStm(&__stmt_0);
								((struct openb3d_openb3dcore_T3DS_obj*)bbNullObjectTest((BBObject*)o));
								((struct openb3d_openb3dcore_T3DS_obj*)o)->clas->m_ReadFaceMatList((struct openb3d_openb3dcore_T3DS_obj*)o);
								bbOnDebugLeaveScope();
							}else{
								struct BBDebugScope __scope = {
									BBDEBUGSCOPE_LOCALBLOCK,
									0,
									{
										{
											BBDEBUGDECL_END
										}
									}
								};
								bbOnDebugEnterScope((BBDebugScope *)&__scope);
								struct BBDebugStm __stmt_0 = {0xfcf57dd78e8efc53, 416, 0};
								bbOnDebugEnterStm(&__stmt_0);
								if(((BBINT)bbt_)==16704){
									struct BBDebugScope __scope = {
										BBDEBUGSCOPE_LOCALBLOCK,
										0,
										{
											{
												BBDEBUGDECL_END
											}
										}
									};
									bbOnDebugEnterScope((BBDebugScope *)&__scope);
									struct BBDebugStm __stmt_0 = {0xfcf57dd78e8efc53, 417, 0};
									bbOnDebugEnterStm(&__stmt_0);
									((struct openb3d_openb3dcore_T3DS_obj*)bbNullObjectTest((BBObject*)o));
									((struct openb3d_openb3dcore_T3DS_obj*)o)->clas->m_ReadTexCoords((struct openb3d_openb3dcore_T3DS_obj*)o);
									bbOnDebugLeaveScope();
								}else{
									struct BBDebugScope __scope = {
										BBDEBUGSCOPE_LOCALBLOCK,
										0,
										{
											{
												BBDEBUGDECL_END
											}
										}
									};
									bbOnDebugEnterScope((BBDebugScope *)&__scope);
									struct BBDebugStm __stmt_0 = {0xfcf57dd78e8efc53, 419, 0};
									bbOnDebugEnterStm(&__stmt_0);
									if(((BBINT)bbt_)==16736){
										struct BBDebugScope __scope = {
											BBDEBUGSCOPE_LOCALBLOCK,
											0,
											{
												{
													BBDEBUGDECL_END
												}
											}
										};
										bbOnDebugEnterScope((BBDebugScope *)&__scope);
										struct BBDebugStm __stmt_0 = {0xfcf57dd78e8efc53, 420, 0};
										bbOnDebugEnterStm(&__stmt_0);
										((struct openb3d_openb3dcore_T3DS_obj*)bbNullObjectTest((BBObject*)o));
										((struct openb3d_openb3dcore_T3DS_obj*)o)->clas->m_ReadTransMatrix((struct openb3d_openb3dcore_T3DS_obj*)o);
										bbOnDebugLeaveScope();
									}else{
										struct BBDebugScope __scope = {
											BBDEBUGSCOPE_LOCALBLOCK,
											0,
											{
												{
													BBDEBUGDECL_END
												}
											}
										};
										bbOnDebugEnterScope((BBDebugScope *)&__scope);
										struct BBDebugStm __stmt_0 = {0xfcf57dd78e8efc53, 422, 0};
										bbOnDebugEnterStm(&__stmt_0);
										if(((BBINT)bbt_)==40960){
											struct BBDebugScope __scope = {
												BBDEBUGSCOPE_LOCALBLOCK,
												0,
												{
													{
														BBDEBUGDECL_END
													}
												}
											};
											bbOnDebugEnterScope((BBDebugScope *)&__scope);
											struct BBDebugStm __stmt_0 = {0xfcf57dd78e8efc53, 424, 0};
											bbOnDebugEnterStm(&__stmt_0);
											((struct openb3d_openb3dcore_T3DS_obj*)bbNullObjectTest((BBObject*)o));
											bbt_BrushName=((struct openb3d_openb3dcore_T3DS_obj*)o)->clas->m_ReadCString((struct openb3d_openb3dcore_T3DS_obj*)o);
											struct BBDebugStm __stmt_1 = {0xfcf57dd78e8efc53, 425, 0};
											bbOnDebugEnterStm(&__stmt_1);
											((struct openb3d_openb3dcore_TBrush_obj*)bbNullObjectTest((BBObject*)((struct openb3d_openb3dcore_T3DS_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_t3ds_brush ))->clas->m_SetString_pbS((struct openb3d_openb3dcore_TBrush_obj*)((struct openb3d_openb3dcore_T3DS_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_t3ds_brush ,((struct openb3d_openb3dcore_TBrush_obj*)bbNullObjectTest((BBObject*)((struct openb3d_openb3dcore_T3DS_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_t3ds_brush ))->_openb3d_openb3dcore_tbrush_name ,bbt_BrushName);
											struct BBDebugStm __stmt_2 = {0xfcf57dd78e8efc53, 426, 0};
											bbOnDebugEnterStm(&__stmt_2);
											if(openb3d_openb3dcore_TGlobal3D_Log_3DS!=0){
												struct BBDebugScope __scope = {
													BBDEBUGSCOPE_LOCALBLOCK,
													0,
													{
														{
															BBDEBUGDECL_END
														}
													}
												};
												bbOnDebugEnterScope((BBDebugScope *)&__scope);
												struct BBDebugStm __stmt_0 = {0xfcf57dd78e8efc53, 426, 0};
												bbOnDebugEnterStm(&__stmt_0);
												brl_blitz_DebugLog(bbStringConcat(((BBString*)&_s521),bbt_BrushName));
												bbOnDebugLeaveScope();
											}
											bbOnDebugLeaveScope();
										}else{
											struct BBDebugScope __scope = {
												BBDEBUGSCOPE_LOCALBLOCK,
												0,
												{
													{
														BBDEBUGDECL_END
													}
												}
											};
											bbOnDebugEnterScope((BBDebugScope *)&__scope);
											struct BBDebugStm __stmt_0 = {0xfcf57dd78e8efc53, 433, 0};
											bbOnDebugEnterStm(&__stmt_0);
											if(((BBINT)bbt_)==40992){
												struct BBDebugScope __scope = {
													BBDEBUGSCOPE_LOCALBLOCK,
													0,
													{
														{
															BBDEBUGDECL_END
														}
													}
												};
												bbOnDebugEnterScope((BBDebugScope *)&__scope);
												struct BBDebugStm __stmt_0 = {0xfcf57dd78e8efc53, 434, 0};
												bbOnDebugEnterStm(&__stmt_0);
												((struct openb3d_openb3dcore_T3DS_obj*)bbNullObjectTest((BBObject*)o));
												((struct openb3d_openb3dcore_T3DS_obj*)o)->clas->m_ReadChunk((struct openb3d_openb3dcore_T3DS_obj*)o);
												struct BBDebugStm __stmt_1 = {0xfcf57dd78e8efc53, 435, 0};
												bbOnDebugEnterStm(&__stmt_1);
												((struct openb3d_openb3dcore_T3DS_obj*)bbNullObjectTest((BBObject*)o));
												((struct openb3d_openb3dcore_T3DS_obj*)o)->clas->m_ReadRGB_ivbvbvb((struct openb3d_openb3dcore_T3DS_obj*)o,((BBINT)((struct openb3d_openb3dcore_T3DS_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_t3ds_chunkid ),(&((struct openb3d_openb3dcore_T3DS_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_t3ds_red ),(&((struct openb3d_openb3dcore_T3DS_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_t3ds_green ),(&((struct openb3d_openb3dcore_T3DS_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_t3ds_blue ));
												bbOnDebugLeaveScope();
											}else{
												struct BBDebugScope __scope = {
													BBDEBUGSCOPE_LOCALBLOCK,
													0,
													{
														{
															BBDEBUGDECL_END
														}
													}
												};
												bbOnDebugEnterScope((BBDebugScope *)&__scope);
												struct BBDebugStm __stmt_0 = {0xfcf57dd78e8efc53, 448, 0};
												bbOnDebugEnterStm(&__stmt_0);
												if(((BBINT)bbt_)==41728){
													struct BBDebugScope __scope = {
														BBDEBUGSCOPE_LOCALBLOCK,
														0,
														{
															{
																BBDEBUGDECL_END
															}
														}
													};
													bbOnDebugEnterScope((BBDebugScope *)&__scope);
													struct BBDebugStm __stmt_0 = {0xfcf57dd78e8efc53, 449, 0};
													bbOnDebugEnterStm(&__stmt_0);
													((struct openb3d_openb3dcore_T3DS_obj*)bbNullObjectTest((BBObject*)o));
													((struct openb3d_openb3dcore_T3DS_obj*)o)->clas->m_LoadMap_SS((struct openb3d_openb3dcore_T3DS_obj*)o,bbt_Dir,bbt_Filepath);
													struct BBDebugStm __stmt_1 = {0xfcf57dd78e8efc53, 450, 0};
													bbOnDebugEnterStm(&__stmt_1);
													if(((struct openb3d_openb3dcore_TBrush_obj*)bbNullObjectTest((BBObject*)((struct openb3d_openb3dcore_T3DS_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_t3ds_brush ))->_openb3d_openb3dcore_tbrush_no_texs [0]==0){
														struct BBDebugScope __scope = {
															BBDEBUGSCOPE_LOCALBLOCK,
															0,
															{
																{
																	BBDEBUGDECL_END
																}
															}
														};
														bbOnDebugEnterScope((BBDebugScope *)&__scope);
														struct BBDebugStm __stmt_0 = {0xfcf57dd78e8efc53, 450, 0};
														bbOnDebugEnterStm(&__stmt_0);
														((struct openb3d_openb3dcore_TBrush_obj*)bbNullObjectTest((BBObject*)((struct openb3d_openb3dcore_T3DS_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_t3ds_brush ))->clas->m_BrushColor_fff((struct openb3d_openb3dcore_TBrush_obj*)((struct openb3d_openb3dcore_T3DS_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_t3ds_brush ,((BBFLOAT)((struct openb3d_openb3dcore_T3DS_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_t3ds_red ),((BBFLOAT)((struct openb3d_openb3dcore_T3DS_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_t3ds_green ),((BBFLOAT)((struct openb3d_openb3dcore_T3DS_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_t3ds_blue ));
														bbOnDebugLeaveScope();
													}
													bbOnDebugLeaveScope();
												}else{
													struct BBDebugScope __scope = {
														BBDEBUGSCOPE_LOCALBLOCK,
														0,
														{
															{
																BBDEBUGDECL_END
															}
														}
													};
													bbOnDebugEnterScope((BBDebugScope *)&__scope);
													struct BBDebugStm __stmt_0 = {0xfcf57dd78e8efc53, 452, 0};
													bbOnDebugEnterStm(&__stmt_0);
													if(((BBINT)bbt_)==41812){
														struct BBDebugScope __scope = {
															BBDEBUGSCOPE_LOCALBLOCK,
															0,
															{
																{
																	BBDEBUGDECL_END
																}
															}
														};
														bbOnDebugEnterScope((BBDebugScope *)&__scope);
														struct BBDebugStm __stmt_0 = {0xfcf57dd78e8efc53, 453, 0};
														bbOnDebugEnterStm(&__stmt_0);
														((struct openb3d_openb3dcore_TTexture_obj*)bbNullObjectTest((BBObject*)((struct openb3d_openb3dcore_T3DS_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_t3ds_texture ))->_openb3d_openb3dcore_ttexture_v_scale [0]=((struct brl_stream_TStream_obj*)bbNullObjectTest((BBObject*)((struct openb3d_openb3dcore_T3DS_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_t3ds_stream ))->clas->m_ReadFloat((struct brl_stream_TStream_obj*)((struct openb3d_openb3dcore_T3DS_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_t3ds_stream );
														struct BBDebugStm __stmt_1 = {0xfcf57dd78e8efc53, 454, 0};
														bbOnDebugEnterStm(&__stmt_1);
														if(openb3d_openb3dcore_TGlobal3D_Log_3DS!=0){
															struct BBDebugScope __scope = {
																BBDEBUGSCOPE_LOCALBLOCK,
																0,
																{
																	{
																		BBDEBUGDECL_END
																	}
																}
															};
															bbOnDebugEnterScope((BBDebugScope *)&__scope);
															struct BBDebugStm __stmt_0 = {0xfcf57dd78e8efc53, 454, 0};
															bbOnDebugEnterStm(&__stmt_0);
															brl_blitz_DebugLog(bbStringConcat(((BBString*)&_s522),bbStringFromFloat(((struct openb3d_openb3dcore_TTexture_obj*)bbNullObjectTest((BBObject*)((struct openb3d_openb3dcore_T3DS_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_t3ds_texture ))->_openb3d_openb3dcore_ttexture_v_scale [0])));
															bbOnDebugLeaveScope();
														}
														bbOnDebugLeaveScope();
													}else{
														struct BBDebugScope __scope = {
															BBDEBUGSCOPE_LOCALBLOCK,
															0,
															{
																{
																	BBDEBUGDECL_END
																}
															}
														};
														bbOnDebugEnterScope((BBDebugScope *)&__scope);
														struct BBDebugStm __stmt_0 = {0xfcf57dd78e8efc53, 456, 0};
														bbOnDebugEnterStm(&__stmt_0);
														if(((BBINT)bbt_)==41814){
															struct BBDebugScope __scope = {
																BBDEBUGSCOPE_LOCALBLOCK,
																0,
																{
																	{
																		BBDEBUGDECL_END
																	}
																}
															};
															bbOnDebugEnterScope((BBDebugScope *)&__scope);
															struct BBDebugStm __stmt_0 = {0xfcf57dd78e8efc53, 457, 0};
															bbOnDebugEnterStm(&__stmt_0);
															((struct openb3d_openb3dcore_TTexture_obj*)bbNullObjectTest((BBObject*)((struct openb3d_openb3dcore_T3DS_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_t3ds_texture ))->_openb3d_openb3dcore_ttexture_u_scale [0]=((struct brl_stream_TStream_obj*)bbNullObjectTest((BBObject*)((struct openb3d_openb3dcore_T3DS_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_t3ds_stream ))->clas->m_ReadFloat((struct brl_stream_TStream_obj*)((struct openb3d_openb3dcore_T3DS_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_t3ds_stream );
															struct BBDebugStm __stmt_1 = {0xfcf57dd78e8efc53, 458, 0};
															bbOnDebugEnterStm(&__stmt_1);
															if(openb3d_openb3dcore_TGlobal3D_Log_3DS!=0){
																struct BBDebugScope __scope = {
																	BBDEBUGSCOPE_LOCALBLOCK,
																	0,
																	{
																		{
																			BBDEBUGDECL_END
																		}
																	}
																};
																bbOnDebugEnterScope((BBDebugScope *)&__scope);
																struct BBDebugStm __stmt_0 = {0xfcf57dd78e8efc53, 458, 0};
																bbOnDebugEnterStm(&__stmt_0);
																brl_blitz_DebugLog(bbStringConcat(((BBString*)&_s523),bbStringFromFloat(((struct openb3d_openb3dcore_TTexture_obj*)bbNullObjectTest((BBObject*)((struct openb3d_openb3dcore_T3DS_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_t3ds_texture ))->_openb3d_openb3dcore_ttexture_u_scale [0])));
																bbOnDebugLeaveScope();
															}
															bbOnDebugLeaveScope();
														}else{
															struct BBDebugScope __scope = {
																BBDEBUGSCOPE_LOCALBLOCK,
																0,
																{
																	{
																		BBDEBUGDECL_END
																	}
																}
															};
															bbOnDebugEnterScope((BBDebugScope *)&__scope);
															struct BBDebugStm __stmt_0 = {0xfcf57dd78e8efc53, 460, 0};
															bbOnDebugEnterStm(&__stmt_0);
															if(((BBINT)bbt_)==41816){
																struct BBDebugScope __scope = {
																	BBDEBUGSCOPE_LOCALBLOCK,
																	0,
																	{
																		{
																			BBDEBUGDECL_END
																		}
																	}
																};
																bbOnDebugEnterScope((BBDebugScope *)&__scope);
																struct BBDebugStm __stmt_0 = {0xfcf57dd78e8efc53, 461, 0};
																bbOnDebugEnterStm(&__stmt_0);
																((struct openb3d_openb3dcore_TTexture_obj*)bbNullObjectTest((BBObject*)((struct openb3d_openb3dcore_T3DS_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_t3ds_texture ))->_openb3d_openb3dcore_ttexture_u_pos [0]=((struct brl_stream_TStream_obj*)bbNullObjectTest((BBObject*)((struct openb3d_openb3dcore_T3DS_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_t3ds_stream ))->clas->m_ReadFloat((struct brl_stream_TStream_obj*)((struct openb3d_openb3dcore_T3DS_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_t3ds_stream );
																struct BBDebugStm __stmt_1 = {0xfcf57dd78e8efc53, 462, 0};
																bbOnDebugEnterStm(&__stmt_1);
																if(openb3d_openb3dcore_TGlobal3D_Log_3DS!=0){
																	struct BBDebugScope __scope = {
																		BBDEBUGSCOPE_LOCALBLOCK,
																		0,
																		{
																			{
																				BBDEBUGDECL_END
																			}
																		}
																	};
																	bbOnDebugEnterScope((BBDebugScope *)&__scope);
																	struct BBDebugStm __stmt_0 = {0xfcf57dd78e8efc53, 462, 0};
																	bbOnDebugEnterStm(&__stmt_0);
																	brl_blitz_DebugLog(bbStringConcat(((BBString*)&_s524),bbStringFromFloat(((struct openb3d_openb3dcore_TTexture_obj*)bbNullObjectTest((BBObject*)((struct openb3d_openb3dcore_T3DS_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_t3ds_texture ))->_openb3d_openb3dcore_ttexture_u_pos [0])));
																	bbOnDebugLeaveScope();
																}
																bbOnDebugLeaveScope();
															}else{
																struct BBDebugScope __scope = {
																	BBDEBUGSCOPE_LOCALBLOCK,
																	0,
																	{
																		{
																			BBDEBUGDECL_END
																		}
																	}
																};
																bbOnDebugEnterScope((BBDebugScope *)&__scope);
																struct BBDebugStm __stmt_0 = {0xfcf57dd78e8efc53, 464, 0};
																bbOnDebugEnterStm(&__stmt_0);
																if(((BBINT)bbt_)==41818){
																	struct BBDebugScope __scope = {
																		BBDEBUGSCOPE_LOCALBLOCK,
																		0,
																		{
																			{
																				BBDEBUGDECL_END
																			}
																		}
																	};
																	bbOnDebugEnterScope((BBDebugScope *)&__scope);
																	struct BBDebugStm __stmt_0 = {0xfcf57dd78e8efc53, 465, 0};
																	bbOnDebugEnterStm(&__stmt_0);
																	((struct openb3d_openb3dcore_TTexture_obj*)bbNullObjectTest((BBObject*)((struct openb3d_openb3dcore_T3DS_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_t3ds_texture ))->_openb3d_openb3dcore_ttexture_v_pos [0]=((struct brl_stream_TStream_obj*)bbNullObjectTest((BBObject*)((struct openb3d_openb3dcore_T3DS_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_t3ds_stream ))->clas->m_ReadFloat((struct brl_stream_TStream_obj*)((struct openb3d_openb3dcore_T3DS_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_t3ds_stream );
																	struct BBDebugStm __stmt_1 = {0xfcf57dd78e8efc53, 466, 0};
																	bbOnDebugEnterStm(&__stmt_1);
																	if(openb3d_openb3dcore_TGlobal3D_Log_3DS!=0){
																		struct BBDebugScope __scope = {
																			BBDEBUGSCOPE_LOCALBLOCK,
																			0,
																			{
																				{
																					BBDEBUGDECL_END
																				}
																			}
																		};
																		bbOnDebugEnterScope((BBDebugScope *)&__scope);
																		struct BBDebugStm __stmt_0 = {0xfcf57dd78e8efc53, 466, 0};
																		bbOnDebugEnterStm(&__stmt_0);
																		brl_blitz_DebugLog(bbStringConcat(((BBString*)&_s525),bbStringFromFloat(((struct openb3d_openb3dcore_TTexture_obj*)bbNullObjectTest((BBObject*)((struct openb3d_openb3dcore_T3DS_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_t3ds_texture ))->_openb3d_openb3dcore_ttexture_v_pos [0])));
																		bbOnDebugLeaveScope();
																	}
																	bbOnDebugLeaveScope();
																}else{
																	struct BBDebugScope __scope = {
																		BBDEBUGSCOPE_LOCALBLOCK,
																		0,
																		{
																			{
																				BBDEBUGDECL_END
																			}
																		}
																	};
																	bbOnDebugEnterScope((BBDebugScope *)&__scope);
																	struct BBDebugStm __stmt_0 = {0xfcf57dd78e8efc53, 468, 0};
																	bbOnDebugEnterStm(&__stmt_0);
																	if(((BBINT)bbt_)==41820){
																		struct BBDebugScope __scope = {
																			BBDEBUGSCOPE_LOCALBLOCK,
																			0,
																			{
																				{
																					BBDEBUGDECL_END
																				}
																			}
																		};
																		bbOnDebugEnterScope((BBDebugScope *)&__scope);
																		struct BBDebugStm __stmt_0 = {0xfcf57dd78e8efc53, 469, 0};
																		bbOnDebugEnterStm(&__stmt_0);
																		((struct openb3d_openb3dcore_TTexture_obj*)bbNullObjectTest((BBObject*)((struct openb3d_openb3dcore_T3DS_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_t3ds_texture ))->_openb3d_openb3dcore_ttexture_angle [0]=((struct brl_stream_TStream_obj*)bbNullObjectTest((BBObject*)((struct openb3d_openb3dcore_T3DS_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_t3ds_stream ))->clas->m_ReadFloat((struct brl_stream_TStream_obj*)((struct openb3d_openb3dcore_T3DS_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_t3ds_stream );
																		struct BBDebugStm __stmt_1 = {0xfcf57dd78e8efc53, 470, 0};
																		bbOnDebugEnterStm(&__stmt_1);
																		if(openb3d_openb3dcore_TGlobal3D_Log_3DS!=0){
																			struct BBDebugScope __scope = {
																				BBDEBUGSCOPE_LOCALBLOCK,
																				0,
																				{
																					{
																						BBDEBUGDECL_END
																					}
																				}
																			};
																			bbOnDebugEnterScope((BBDebugScope *)&__scope);
																			struct BBDebugStm __stmt_0 = {0xfcf57dd78e8efc53, 470, 0};
																			bbOnDebugEnterStm(&__stmt_0);
																			brl_blitz_DebugLog(bbStringConcat(((BBString*)&_s526),bbStringFromFloat(((struct openb3d_openb3dcore_TTexture_obj*)bbNullObjectTest((BBObject*)((struct openb3d_openb3dcore_T3DS_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_t3ds_texture ))->_openb3d_openb3dcore_ttexture_angle [0])));
																			bbOnDebugLeaveScope();
																		}
																		bbOnDebugLeaveScope();
																	}else{
																		struct BBDebugScope __scope = {
																			BBDEBUGSCOPE_LOCALBLOCK,
																			0,
																			{
																				{
																					BBDEBUGDECL_END
																				}
																			}
																		};
																		bbOnDebugEnterScope((BBDebugScope *)&__scope);
																		struct BBDebugStm __stmt_0 = {0xfcf57dd78e8efc53, 473, 0};
																		bbOnDebugEnterStm(&__stmt_0);
																		if((((BBINT)((struct openb3d_openb3dcore_T3DS_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_t3ds_chunkid )==41472) || (((BBINT)((struct openb3d_openb3dcore_T3DS_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_t3ds_chunkid )==41786)){
																			struct BBDebugScope __scope = {
																				BBDEBUGSCOPE_LOCALBLOCK,
																				0,
																				{
																					{
																						BBDEBUGDECL_END
																					}
																				}
																			};
																			bbOnDebugEnterScope((BBDebugScope *)&__scope);
																			struct BBDebugStm __stmt_0 = {0xfcf57dd78e8efc53, 474, 0};
																			bbOnDebugEnterStm(&__stmt_0);
																			((struct openb3d_openb3dcore_T3DS_obj*)bbNullObjectTest((BBObject*)o));
																			((struct openb3d_openb3dcore_T3DS_obj*)o)->clas->m_ReadMap_i((struct openb3d_openb3dcore_T3DS_obj*)o,((BBINT)((struct openb3d_openb3dcore_T3DS_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_t3ds_chunkid ));
																			bbOnDebugLeaveScope();
																		}else{
																			struct BBDebugScope __scope = {
																				BBDEBUGSCOPE_LOCALBLOCK,
																				0,
																				{
																					{
																						BBDEBUGDECL_END
																					}
																				}
																			};
																			bbOnDebugEnterScope((BBDebugScope *)&__scope);
																			struct BBDebugStm __stmt_0 = {0xfcf57dd78e8efc53, 476, 0};
																			bbOnDebugEnterStm(&__stmt_0);
																			((struct openb3d_openb3dcore_T3DS_obj*)bbNullObjectTest((BBObject*)o));
																			((struct openb3d_openb3dcore_T3DS_obj*)o)->clas->m_SkipChunk((struct openb3d_openb3dcore_T3DS_obj*)o);
																			bbOnDebugLeaveScope();
																		}
																		bbOnDebugLeaveScope();
																	}
																	bbOnDebugLeaveScope();
																}
																bbOnDebugLeaveScope();
															}
															bbOnDebugLeaveScope();
														}
														bbOnDebugLeaveScope();
													}
													bbOnDebugLeaveScope();
												}
												bbOnDebugLeaveScope();
											}
											bbOnDebugLeaveScope();
										}
										bbOnDebugLeaveScope();
									}
									bbOnDebugLeaveScope();
								}
								bbOnDebugLeaveScope();
							}
							bbOnDebugLeaveScope();
						}
						bbOnDebugLeaveScope();
					}
					bbOnDebugLeaveScope();
				}
				bbOnDebugLeaveScope();
			}
			bbOnDebugLeaveScope();
		}
		bbOnDebugLeaveScope();
	}
	struct BBDebugStm __stmt_28 = {0xfcf57dd78e8efc53, 481, 0};
	bbOnDebugEnterStm(&__stmt_28);
	((struct brl_stream_TStream_obj*)bbNullObjectTest((BBObject*)((struct openb3d_openb3dcore_T3DS_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_t3ds_stream ))->clas->m_Close((struct brl_stream_TIO_obj*)((struct openb3d_openb3dcore_T3DS_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_t3ds_stream );
	struct BBDebugStm __stmt_29 = {0xfcf57dd78e8efc53, 482, 0};
	bbOnDebugEnterStm(&__stmt_29);
	brl_filesystem_ChangeDir(bbt_OldDir);
	struct BBDebugStm __stmt_30 = {0xfcf57dd78e8efc53, 484, 0};
	bbOnDebugEnterStm(&__stmt_30);
	bbt_CheckSurface=0;
	struct BBDebugStm __stmt_31 = {0xfcf57dd78e8efc53, 485, 0};
	bbOnDebugEnterStm(&__stmt_31);
	if(((BBOBJECT)((struct openb3d_openb3dcore_T3DS_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_t3ds_surface )!=&bbNullObject){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0xfcf57dd78e8efc53, 486, 0};
		bbOnDebugEnterStm(&__stmt_0);
		bbArraySort((struct bbArrayClass_obj*)((struct openb3d_openb3dcore_T3DS_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_t3ds_movedtris ,0);
		struct BBDebugStm __stmt_1 = {0xfcf57dd78e8efc53, 487, 0};
		bbOnDebugEnterStm(&__stmt_1);
		BBARRAY bbt_2=((struct openb3d_openb3dcore_T3DS_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_t3ds_movedtris ;
		BBUINT bbt_3=0U;
		while(bbt_3<((BBUINT)(bbt_2->scales[0]))){
			BBINT bbt_it=0;
			struct BBDebugScope_1 __scope = {
				BBDEBUGSCOPE_LOCALBLOCK,
				0,
				{
					{
						BBDEBUGDECL_LOCAL,
						"it",
						"i",
						.var_address=&bbt_it
					},
					{
						BBDEBUGDECL_END
					}
				}
			};
			bbOnDebugEnterScope((BBDebugScope *)&__scope);
			bbt_it=((BBINT*)BBARRAYDATAINDEX((bbt_2),(bbt_2)->dims,bbt_3))[bbt_3];
			bbt_3=(bbt_3+1U);
			struct BBDebugStm __stmt_0 = {0xfcf57dd78e8efc53, 488, 0};
			bbOnDebugEnterStm(&__stmt_0);
			((struct openb3d_openb3dcore_TSurface_obj*)bbNullObjectTest((BBObject*)((struct openb3d_openb3dcore_T3DS_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_t3ds_surface ))->clas->m_RemoveTri_i((struct openb3d_openb3dcore_TSurface_obj*)((struct openb3d_openb3dcore_T3DS_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_t3ds_surface ,bbt_it);
			struct BBDebugStm __stmt_1 = {0xfcf57dd78e8efc53, 489, 0};
			bbOnDebugEnterStm(&__stmt_1);
			bbt_CheckSurface=1;
			bbOnDebugLeaveScope();
		}
		struct BBDebugStm __stmt_2 = {0xfcf57dd78e8efc53, 491, 0};
		bbOnDebugEnterStm(&__stmt_2);
		((struct openb3d_openb3dcore_T3DS_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_t3ds_movedtris =bbArraySlice("i",((struct openb3d_openb3dcore_T3DS_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_t3ds_movedtris ,0,0);
		struct BBDebugStm __stmt_3 = {0xfcf57dd78e8efc53, 493, 0};
		bbOnDebugEnterStm(&__stmt_3);
		if((((struct openb3d_openb3dcore_TSurface_obj*)bbNullObjectTest((BBObject*)((struct openb3d_openb3dcore_T3DS_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_t3ds_surface ))->_openb3d_openb3dcore_tsurface_no_tris [0]==0) && (bbt_CheckSurface!=0)){
			struct BBDebugScope __scope = {
				BBDEBUGSCOPE_LOCALBLOCK,
				0,
				{
					{
						BBDEBUGDECL_END
					}
				}
			};
			bbOnDebugEnterScope((BBDebugScope *)&__scope);
			struct BBDebugStm __stmt_0 = {0xfcf57dd78e8efc53, 494, 0};
			bbOnDebugEnterStm(&__stmt_0);
			((struct openb3d_openb3dcore_TMesh_obj*)bbNullObjectTest((BBObject*)((struct openb3d_openb3dcore_T3DS_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_t3ds_root ))->clas->m_EntityListRemove_TTListTObject((struct openb3d_openb3dcore_TEntity_obj*)((struct openb3d_openb3dcore_T3DS_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_t3ds_root ,(struct brl_linkedlist_TList_obj*)((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)((struct openb3d_openb3dcore_T3DS_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_t3ds_root ))->_openb3d_openb3dcore_tentity_child_list ,(BBOBJECT)((struct openb3d_openb3dcore_T3DS_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_t3ds_mesh );
			struct BBDebugStm __stmt_1 = {0xfcf57dd78e8efc53, 495, 0};
			bbOnDebugEnterStm(&__stmt_1);
			((struct openb3d_openb3dcore_TMesh_obj*)bbNullObjectTest((BBObject*)((struct openb3d_openb3dcore_T3DS_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_t3ds_mesh ))->clas->m_FreeEntity((struct openb3d_openb3dcore_TMesh_obj*)((struct openb3d_openb3dcore_T3DS_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_t3ds_mesh );
			bbOnDebugLeaveScope();
		}
		bbOnDebugLeaveScope();
	}
	struct BBDebugStm __stmt_32 = {0xfcf57dd78e8efc53, 498, 0};
	bbOnDebugEnterStm(&__stmt_32);
	if(openb3d_openb3dcore_TGlobal3D_Log_3DS!=0){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0xfcf57dd78e8efc53, 498, 0};
		bbOnDebugEnterStm(&__stmt_0);
		brl_blitz_DebugLog(bbStringConcat(((BBString*)&_s527),bbStringFromInt(bbt_CheckSurface)));
		bbOnDebugLeaveScope();
	}
	struct BBDebugStm __stmt_33 = {0xfcf57dd78e8efc53, 506, 0};
	bbOnDebugEnterStm(&__stmt_33);
	struct brl_linkedlist_TListEnum_obj* bbt_4=(struct brl_linkedlist_TListEnum_obj*)((struct brl_linkedlist_TList_obj*)bbNullObjectTest((BBObject*)((struct openb3d_openb3dcore_T3DS_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_t3ds_meshes ))->clas->m_ObjectEnumerator((struct brl_linkedlist_TList_obj*)((struct openb3d_openb3dcore_T3DS_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_t3ds_meshes );
	while(((struct brl_linkedlist_TListEnum_obj*)bbNullObjectTest((BBObject*)bbt_4))->clas->m_HasNext((struct brl_linkedlist_TListEnum_obj*)bbt_4)!=0){
		struct openb3d_openb3dcore_TMesh_obj* bbt_mesh2=(struct openb3d_openb3dcore_TMesh_obj*)((struct openb3d_openb3dcore_TMesh_obj*)&bbNullObject);
		struct openb3d_openb3dcore_TMatPtr_obj* bbt_mat=(struct openb3d_openb3dcore_TMatPtr_obj*)((struct openb3d_openb3dcore_TMatPtr_obj*)&bbNullObject);
		struct openb3d_openb3dcore_TMatPtr_obj* bbt_invmat=(struct openb3d_openb3dcore_TMatPtr_obj*)((struct openb3d_openb3dcore_TMatPtr_obj*)&bbNullObject);
		struct BBDebugScope_3 __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_LOCAL,
					"mesh2",
					":TMesh",
					.var_address=&bbt_mesh2
				},
				{
					BBDEBUGDECL_LOCAL,
					"mat",
					":TMatPtr",
					.var_address=&bbt_mat
				},
				{
					BBDEBUGDECL_LOCAL,
					"invmat",
					":TMatPtr",
					.var_address=&bbt_invmat
				},
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		bbt_mesh2=(struct openb3d_openb3dcore_TMesh_obj*)((struct openb3d_openb3dcore_TMesh_obj*)bbObjectDowncast((BBOBJECT)((struct brl_linkedlist_TListEnum_obj*)bbNullObjectTest((BBObject*)bbt_4))->clas->m_NextObject((struct brl_linkedlist_TListEnum_obj*)bbt_4),(BBClass*)&openb3d_openb3dcore_TMesh));
		if(((BBOBJECT)bbt_mesh2)==&bbNullObject){
			bbOnDebugLeaveScope();
			continue;
		}
		struct BBDebugStm __stmt_0 = {0xfcf57dd78e8efc53, 507, 0};
		bbOnDebugEnterStm(&__stmt_0);
		bbt_mat=(struct openb3d_openb3dcore_TMatPtr_obj*)((struct openb3d_openb3dcore_TMatPtr_obj*)bbObjectDowncast((BBOBJECT)brl_map_MapValueForKey((struct brl_map_TMap_obj*)((struct openb3d_openb3dcore_T3DS_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_t3ds_matrixmap ,(BBOBJECT)bbt_mesh2),(BBClass*)&openb3d_openb3dcore_TMatPtr));
		struct BBDebugStm __stmt_1 = {0xfcf57dd78e8efc53, 508, 0};
		bbOnDebugEnterStm(&__stmt_1);
		bbt_invmat=(struct openb3d_openb3dcore_TMatPtr_obj*)openb3d_openb3dcore_TMatPtr_Create_TTMatPtr();
		struct BBDebugStm __stmt_2 = {0xfcf57dd78e8efc53, 509, 0};
		bbOnDebugEnterStm(&__stmt_2);
		if(((BBOBJECT)bbt_mat)!=&bbNullObject){
			struct BBDebugScope __scope = {
				BBDEBUGSCOPE_LOCALBLOCK,
				0,
				{
					{
						BBDEBUGDECL_END
					}
				}
			};
			bbOnDebugEnterScope((BBDebugScope *)&__scope);
			struct BBDebugStm __stmt_0 = {0xfcf57dd78e8efc53, 509, 0};
			bbOnDebugEnterStm(&__stmt_0);
			((struct openb3d_openb3dcore_TMatPtr_obj*)bbNullObjectTest((BBObject*)bbt_mat))->clas->m_GetInverse_TTMatPtr((struct openb3d_openb3dcore_TMatPtr_obj*)bbt_mat,(struct openb3d_openb3dcore_TMatPtr_obj*)bbt_invmat);
			bbOnDebugLeaveScope();
		}
		struct BBDebugStm __stmt_3 = {0xfcf57dd78e8efc53, 511, 0};
		bbOnDebugEnterStm(&__stmt_3);
		struct brl_linkedlist_TList_obj* bbt_6;
		struct brl_linkedlist_TListEnum_obj* bbt_5=(struct brl_linkedlist_TListEnum_obj*)(((struct brl_linkedlist_TList_obj*)((struct brl_linkedlist_TList_obj*)bbNullObjectTest((BBObject*)(bbt_6 = ((struct openb3d_openb3dcore_TMesh_obj*)bbNullObjectTest((BBObject*)bbt_mesh2))->_openb3d_openb3dcore_tmesh_surf_list ))))->clas)->m_ObjectEnumerator((struct brl_linkedlist_TList_obj*)bbt_6);
		while(((struct brl_linkedlist_TListEnum_obj*)bbNullObjectTest((BBObject*)bbt_5))->clas->m_HasNext((struct brl_linkedlist_TListEnum_obj*)bbt_5)!=0){
			struct openb3d_openb3dcore_TSurface_obj* bbt_surf2=(struct openb3d_openb3dcore_TSurface_obj*)((struct openb3d_openb3dcore_TSurface_obj*)&bbNullObject);
			struct BBDebugScope_1 __scope = {
				BBDEBUGSCOPE_LOCALBLOCK,
				0,
				{
					{
						BBDEBUGDECL_LOCAL,
						"surf2",
						":TSurface",
						.var_address=&bbt_surf2
					},
					{
						BBDEBUGDECL_END
					}
				}
			};
			bbOnDebugEnterScope((BBDebugScope *)&__scope);
			bbt_surf2=(struct openb3d_openb3dcore_TSurface_obj*)((struct openb3d_openb3dcore_TSurface_obj*)bbObjectDowncast((BBOBJECT)((struct brl_linkedlist_TListEnum_obj*)bbNullObjectTest((BBObject*)bbt_5))->clas->m_NextObject((struct brl_linkedlist_TListEnum_obj*)bbt_5),(BBClass*)&openb3d_openb3dcore_TSurface));
			if(((BBOBJECT)bbt_surf2)==&bbNullObject){
				bbOnDebugLeaveScope();
				continue;
			}
			struct BBDebugStm __stmt_0 = {0xfcf57dd78e8efc53, 512, 0};
			bbOnDebugEnterStm(&__stmt_0);
			{
				BBINT bbt_v=0;
				BBINT bbt_7=((struct openb3d_openb3dcore_TSurface_obj*)bbNullObjectTest((BBObject*)bbt_surf2))->clas->m_CountVertices((struct openb3d_openb3dcore_TSurface_obj*)bbt_surf2);
				for(;(bbt_v<bbt_7);bbt_v=(bbt_v+1)){
					BBFLOAT bbt_px=0;
					BBFLOAT bbt_py=0;
					BBFLOAT bbt_pz=0;
					struct BBDebugScope_4 __scope = {
						BBDEBUGSCOPE_LOCALBLOCK,
						0,
						{
							{
								BBDEBUGDECL_LOCAL,
								"v",
								"i",
								.var_address=&bbt_v
							},
							{
								BBDEBUGDECL_LOCAL,
								"px",
								"f",
								.var_address=&bbt_px
							},
							{
								BBDEBUGDECL_LOCAL,
								"py",
								"f",
								.var_address=&bbt_py
							},
							{
								BBDEBUGDECL_LOCAL,
								"pz",
								"f",
								.var_address=&bbt_pz
							},
							{
								BBDEBUGDECL_END
							}
						}
					};
					bbOnDebugEnterScope((BBDebugScope *)&__scope);
					struct BBDebugStm __stmt_0 = {0xfcf57dd78e8efc53, 513, 0};
					bbOnDebugEnterStm(&__stmt_0);
					bbt_px=((struct openb3d_openb3dcore_TSurface_obj*)bbNullObjectTest((BBObject*)bbt_surf2))->clas->m_VertexX_i((struct openb3d_openb3dcore_TSurface_obj*)bbt_surf2,bbt_v);
					struct BBDebugStm __stmt_1 = {0xfcf57dd78e8efc53, 514, 0};
					bbOnDebugEnterStm(&__stmt_1);
					bbt_py=((struct openb3d_openb3dcore_TSurface_obj*)bbNullObjectTest((BBObject*)bbt_surf2))->clas->m_VertexY_i((struct openb3d_openb3dcore_TSurface_obj*)bbt_surf2,bbt_v);
					struct BBDebugStm __stmt_2 = {0xfcf57dd78e8efc53, 515, 0};
					bbOnDebugEnterStm(&__stmt_2);
					bbt_pz=((struct openb3d_openb3dcore_TSurface_obj*)bbNullObjectTest((BBObject*)bbt_surf2))->clas->m_VertexZ_i((struct openb3d_openb3dcore_TSurface_obj*)bbt_surf2,bbt_v);
					struct BBDebugStm __stmt_3 = {0xfcf57dd78e8efc53, 517, 0};
					bbOnDebugEnterStm(&__stmt_3);
					if(openb3d_openb3dcore_TGlobal3D_Mesh_Transform>0){
						struct BBDebugScope __scope = {
							BBDEBUGSCOPE_LOCALBLOCK,
							0,
							{
								{
									BBDEBUGDECL_END
								}
							}
						};
						bbOnDebugEnterScope((BBDebugScope *)&__scope);
						struct BBDebugStm __stmt_0 = {0xfcf57dd78e8efc53, 518, 0};
						bbOnDebugEnterStm(&__stmt_0);
						((struct openb3d_openb3dcore_TMatPtr_obj*)bbNullObjectTest((BBObject*)bbt_invmat))->clas->m_TransformVec_vfvfvfi((struct openb3d_openb3dcore_TMatPtr_obj*)bbt_invmat,(&bbt_px),(&bbt_py),(&bbt_pz),1);
						struct BBDebugStm __stmt_1 = {0xfcf57dd78e8efc53, 519, 0};
						bbOnDebugEnterStm(&__stmt_1);
						((struct openb3d_openb3dcore_TSurface_obj*)bbNullObjectTest((BBObject*)bbt_surf2))->clas->m_VertexCoords_ifff((struct openb3d_openb3dcore_TSurface_obj*)bbt_surf2,bbt_v,bbt_px,bbt_py,bbt_pz);
						bbOnDebugLeaveScope();
					}
					bbOnDebugLeaveScope();
				}
			}
			struct BBDebugStm __stmt_1 = {0xfcf57dd78e8efc53, 522, 0};
			bbOnDebugEnterStm(&__stmt_1);
			((struct openb3d_openb3dcore_TSurface_obj*)bbNullObjectTest((BBObject*)bbt_surf2))->clas->m_UpdateNormals((struct openb3d_openb3dcore_TSurface_obj*)bbt_surf2);
			bbOnDebugLeaveScope();
		}
		struct BBDebugStm __stmt_4 = {0xfcf57dd78e8efc53, 525, 0};
		bbOnDebugEnterStm(&__stmt_4);
		((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)bbt_mesh2))->_openb3d_openb3dcore_tentity_cull_radius [0]=0.0f;
		bbOnDebugLeaveScope();
	}
	struct BBDebugStm __stmt_34 = {0xfcf57dd78e8efc53, 528, 0};
	bbOnDebugEnterStm(&__stmt_34);
	if(openb3d_openb3dcore_TGlobal3D_Log_3DS!=0){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0xfcf57dd78e8efc53, 528, 0};
		bbOnDebugEnterStm(&__stmt_0);
		brl_blitz_DebugLog((BBString*)&bbEmptyString);
		bbOnDebugLeaveScope();
	}
	struct BBDebugStm __stmt_35 = {0xfcf57dd78e8efc53, 529, 0};
	bbOnDebugEnterStm(&__stmt_35);
	bbOnDebugLeaveScope();
	return (struct openb3d_openb3dcore_TMesh_obj*)((struct openb3d_openb3dcore_T3DS_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_t3ds_root ;
}
struct BBDebugScope_73 openb3d_openb3dcore_T3DS_scope ={
	BBDEBUGSCOPE_USERTYPE,
	"T3DS",
	{
		{
			BBDEBUGDECL_CONST,
			"M3D_3DS_M3DVERSION",
			"i",
			.const_value=(BBString*)&_s772
		},
		{
			BBDEBUGDECL_CONST,
			"M3D_3DS_RGB3F",
			"i",
			.const_value=(BBString*)&_s773
		},
		{
			BBDEBUGDECL_CONST,
			"M3D_3DS_RGB3B",
			"i",
			.const_value=(BBString*)&_s774
		},
		{
			BBDEBUGDECL_CONST,
			"M3D_3DS_RGBGAMMA3B",
			"i",
			.const_value=(BBString*)&_s775
		},
		{
			BBDEBUGDECL_CONST,
			"M3D_3DS_RGBGAMMA3F",
			"i",
			.const_value=(BBString*)&_s776
		},
		{
			BBDEBUGDECL_CONST,
			"M3D_3DS_PERCENTI",
			"i",
			.const_value=(BBString*)&_s777
		},
		{
			BBDEBUGDECL_CONST,
			"M3D_3DS_PERCENTF",
			"i",
			.const_value=(BBString*)&_s778
		},
		{
			BBDEBUGDECL_CONST,
			"M3D_3DS_MAIN",
			"i",
			.const_value=(BBString*)&_s779
		},
		{
			BBDEBUGDECL_CONST,
			"M3D_3DS_3DEDITOR",
			"i",
			.const_value=(BBString*)&_s780
		},
		{
			BBDEBUGDECL_CONST,
			"M3D_3DS_OBJECTBLOCK",
			"i",
			.const_value=(BBString*)&_s781
		},
		{
			BBDEBUGDECL_CONST,
			"M3D_3DS_TRIMESH",
			"i",
			.const_value=(BBString*)&_s782
		},
		{
			BBDEBUGDECL_CONST,
			"M3D_3DS_VERTEXLIST",
			"i",
			.const_value=(BBString*)&_s783
		},
		{
			BBDEBUGDECL_CONST,
			"M3D_3DS_FACELIST",
			"i",
			.const_value=(BBString*)&_s784
		},
		{
			BBDEBUGDECL_CONST,
			"M3D_3DS_FACEMATLIST",
			"i",
			.const_value=(BBString*)&_s785
		},
		{
			BBDEBUGDECL_CONST,
			"M3D_3DS_TEXCOORDS",
			"i",
			.const_value=(BBString*)&_s786
		},
		{
			BBDEBUGDECL_CONST,
			"M3D_3DS_TRANSMATRIX",
			"i",
			.const_value=(BBString*)&_s787
		},
		{
			BBDEBUGDECL_CONST,
			"M3D_3DS_BrushBLOCK",
			"i",
			.const_value=(BBString*)&_s788
		},
		{
			BBDEBUGDECL_CONST,
			"M3D_3DS_BrushNAME",
			"i",
			.const_value=(BBString*)&_s789
		},
		{
			BBDEBUGDECL_CONST,
			"M3D_3DS_BrushAMBIENT",
			"i",
			.const_value=(BBString*)&_s790
		},
		{
			BBDEBUGDECL_CONST,
			"M3D_3DS_BrushDIFFUSE",
			"i",
			.const_value=(BBString*)&_s791
		},
		{
			BBDEBUGDECL_CONST,
			"M3D_3DS_BrushSPECULAR",
			"i",
			.const_value=(BBString*)&_s792
		},
		{
			BBDEBUGDECL_CONST,
			"M3D_3DS_BrushSHININESS",
			"i",
			.const_value=(BBString*)&_s793
		},
		{
			BBDEBUGDECL_CONST,
			"M3D_3DS_TEXTUREMAP1",
			"i",
			.const_value=(BBString*)&_s794
		},
		{
			BBDEBUGDECL_CONST,
			"M3D_3DS_TEXTUREMAP2",
			"i",
			.const_value=(BBString*)&_s795
		},
		{
			BBDEBUGDECL_CONST,
			"M3D_3DS_MAPFILENAME",
			"i",
			.const_value=(BBString*)&_s796
		},
		{
			BBDEBUGDECL_CONST,
			"M3D_3DS_MAPVSCALE",
			"i",
			.const_value=(BBString*)&_s797
		},
		{
			BBDEBUGDECL_CONST,
			"M3D_3DS_MAPUSCALE",
			"i",
			.const_value=(BBString*)&_s798
		},
		{
			BBDEBUGDECL_CONST,
			"M3D_3DS_MAPUOFFSET",
			"i",
			.const_value=(BBString*)&_s799
		},
		{
			BBDEBUGDECL_CONST,
			"M3D_3DS_MAPVOFFSET",
			"i",
			.const_value=(BBString*)&_s800
		},
		{
			BBDEBUGDECL_CONST,
			"M3D_3DS_MAPROTATION",
			"i",
			.const_value=(BBString*)&_s801
		},
		{
			BBDEBUGDECL_FIELD,
			"Stream",
			":TStream",
			.field_offset=offsetof(struct openb3d_openb3dcore_T3DS_obj,_openb3d_openb3dcore_t3ds_stream)
		},
		{
			BBDEBUGDECL_FIELD,
			"ChunkID",
			"s",
			.field_offset=offsetof(struct openb3d_openb3dcore_T3DS_obj,_openb3d_openb3dcore_t3ds_chunkid)
		},
		{
			BBDEBUGDECL_FIELD,
			"ChunkSize",
			"i",
			.field_offset=offsetof(struct openb3d_openb3dcore_T3DS_obj,_openb3d_openb3dcore_t3ds_chunksize)
		},
		{
			BBDEBUGDECL_FIELD,
			"Surface",
			":TSurface",
			.field_offset=offsetof(struct openb3d_openb3dcore_T3DS_obj,_openb3d_openb3dcore_t3ds_surface)
		},
		{
			BBDEBUGDECL_FIELD,
			"Mesh",
			":TMesh",
			.field_offset=offsetof(struct openb3d_openb3dcore_T3DS_obj,_openb3d_openb3dcore_t3ds_mesh)
		},
		{
			BBDEBUGDECL_FIELD,
			"Root",
			":TMesh",
			.field_offset=offsetof(struct openb3d_openb3dcore_T3DS_obj,_openb3d_openb3dcore_t3ds_root)
		},
		{
			BBDEBUGDECL_FIELD,
			"New_surface",
			":TSurface",
			.field_offset=offsetof(struct openb3d_openb3dcore_T3DS_obj,_openb3d_openb3dcore_t3ds_new_surface)
		},
		{
			BBDEBUGDECL_FIELD,
			"New_mesh",
			":TMesh",
			.field_offset=offsetof(struct openb3d_openb3dcore_T3DS_obj,_openb3d_openb3dcore_t3ds_new_mesh)
		},
		{
			BBDEBUGDECL_FIELD,
			"VertexCount",
			"i",
			.field_offset=offsetof(struct openb3d_openb3dcore_T3DS_obj,_openb3d_openb3dcore_t3ds_vertexcount)
		},
		{
			BBDEBUGDECL_FIELD,
			"TriangleCount",
			"i",
			.field_offset=offsetof(struct openb3d_openb3dcore_T3DS_obj,_openb3d_openb3dcore_t3ds_trianglecount)
		},
		{
			BBDEBUGDECL_FIELD,
			"Brush",
			":TBrush",
			.field_offset=offsetof(struct openb3d_openb3dcore_T3DS_obj,_openb3d_openb3dcore_t3ds_brush)
		},
		{
			BBDEBUGDECL_FIELD,
			"Brushs",
			":TList",
			.field_offset=offsetof(struct openb3d_openb3dcore_T3DS_obj,_openb3d_openb3dcore_t3ds_brushs)
		},
		{
			BBDEBUGDECL_FIELD,
			"TextureLayer",
			"i",
			.field_offset=offsetof(struct openb3d_openb3dcore_T3DS_obj,_openb3d_openb3dcore_t3ds_texturelayer)
		},
		{
			BBDEBUGDECL_FIELD,
			"Texture",
			":TTexture",
			.field_offset=offsetof(struct openb3d_openb3dcore_T3DS_obj,_openb3d_openb3dcore_t3ds_texture)
		},
		{
			BBDEBUGDECL_FIELD,
			"MovedTris",
			"[]i",
			.field_offset=offsetof(struct openb3d_openb3dcore_T3DS_obj,_openb3d_openb3dcore_t3ds_movedtris)
		},
		{
			BBDEBUGDECL_FIELD,
			"TrisIndex",
			"i",
			.field_offset=offsetof(struct openb3d_openb3dcore_T3DS_obj,_openb3d_openb3dcore_t3ds_trisindex)
		},
		{
			BBDEBUGDECL_FIELD,
			"ObjectNames",
			"[]$",
			.field_offset=offsetof(struct openb3d_openb3dcore_T3DS_obj,_openb3d_openb3dcore_t3ds_objectnames)
		},
		{
			BBDEBUGDECL_FIELD,
			"ObjectIndex",
			"i",
			.field_offset=offsetof(struct openb3d_openb3dcore_T3DS_obj,_openb3d_openb3dcore_t3ds_objectindex)
		},
		{
			BBDEBUGDECL_FIELD,
			"Red",
			"b",
			.field_offset=offsetof(struct openb3d_openb3dcore_T3DS_obj,_openb3d_openb3dcore_t3ds_red)
		},
		{
			BBDEBUGDECL_FIELD,
			"Green",
			"b",
			.field_offset=offsetof(struct openb3d_openb3dcore_T3DS_obj,_openb3d_openb3dcore_t3ds_green)
		},
		{
			BBDEBUGDECL_FIELD,
			"Blue",
			"b",
			.field_offset=offsetof(struct openb3d_openb3dcore_T3DS_obj,_openb3d_openb3dcore_t3ds_blue)
		},
		{
			BBDEBUGDECL_FIELD,
			"Percent",
			"i",
			.field_offset=offsetof(struct openb3d_openb3dcore_T3DS_obj,_openb3d_openb3dcore_t3ds_percent)
		},
		{
			BBDEBUGDECL_FIELD,
			"Meshes",
			":TList",
			.field_offset=offsetof(struct openb3d_openb3dcore_T3DS_obj,_openb3d_openb3dcore_t3ds_meshes)
		},
		{
			BBDEBUGDECL_FIELD,
			"MatrixMap",
			":TMap",
			.field_offset=offsetof(struct openb3d_openb3dcore_T3DS_obj,_openb3d_openb3dcore_t3ds_matrixmap)
		},
		{
			BBDEBUGDECL_FIELD,
			"New_matrix",
			":TMatPtr",
			.field_offset=offsetof(struct openb3d_openb3dcore_T3DS_obj,_openb3d_openb3dcore_t3ds_new_matrix)
		},
		{
			BBDEBUGDECL_FIELD,
			"override_texflags",
			"i",
			.field_offset=offsetof(struct openb3d_openb3dcore_T3DS_obj,_openb3d_openb3dcore_t3ds_override_texflags)
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"New",
			"()i",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_T3DS_New
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"ReadChunk",
			"()i",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_T3DS_ReadChunk
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"SkipChunk",
			"()i",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_T3DS_SkipChunk
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"ReadCString",
			"()$",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_T3DS_ReadCString
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"ReadRGB",
			"(i,b,b,b)i",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_T3DS_ReadRGB_ivbvbvb
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"ReadPercent",
			"(i,i)i",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_T3DS_ReadPercent_ivi
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"ReadVertexList",
			"()i",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_T3DS_ReadVertexList
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"ReadFaceList",
			"()i",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_T3DS_ReadFaceList
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"ReadTexCoords",
			"()i",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_T3DS_ReadTexCoords
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"ReadTransMatrix",
			"()i",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_T3DS_ReadTransMatrix
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"ReadFaceMatList",
			"()i",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_T3DS_ReadFaceMatList
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"LoadMap",
			"($,$)i",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_T3DS_LoadMap_SS
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"ReadMap",
			"(i)i",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_T3DS_ReadMap_i
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"ReadTriMesh",
			"()i",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_T3DS_ReadTriMesh
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"ReadBrushBlock",
			"()i",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_T3DS_ReadBrushBlock
		},
		{
			BBDEBUGDECL_TYPEFUNCTION,
			"Load3DS",
			"(:Object,:TEntity,i):TMesh",
			.func_ptr=(BBFuncPtr)&openb3d_openb3dcore_T3DS_Load3DS_TTMesh_TObjectTTEntityi
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"Load3DSFromStream",
			"(:TStream,:Object,:TEntity,i):TMesh",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_T3DS_Load3DSFromStream_TTStreamTObjectTTEntityi
		},
		{
			BBDEBUGDECL_END
		}
	}
};
struct BBClass_openb3d_openb3dcore_T3DS openb3d_openb3dcore_T3DS={
	&bbObjectClass,
	bbObjectFree,
	(BBDebugScope*)&openb3d_openb3dcore_T3DS_scope,
	sizeof(struct openb3d_openb3dcore_T3DS_obj),
	(void (*)(BBOBJECT))_openb3d_openb3dcore_T3DS_New,
	bbObjectDtor,
	bbObjectToString,
	bbObjectCompare,
	bbObjectSendMessage,
	0,
	0,
	offsetof(struct openb3d_openb3dcore_T3DS_obj,_openb3d_openb3dcore_t3ds_override_texflags) - offsetof(struct openb3d_openb3dcore_T3DS_obj,_openb3d_openb3dcore_t3ds_stream) + sizeof(BBINT)
	,0
	,offsetof(struct openb3d_openb3dcore_T3DS_obj,_openb3d_openb3dcore_t3ds_stream)
	,_openb3d_openb3dcore_T3DS_ReadChunk
	,_openb3d_openb3dcore_T3DS_SkipChunk
	,_openb3d_openb3dcore_T3DS_ReadCString
	,_openb3d_openb3dcore_T3DS_ReadRGB_ivbvbvb
	,_openb3d_openb3dcore_T3DS_ReadPercent_ivi
	,_openb3d_openb3dcore_T3DS_ReadVertexList
	,_openb3d_openb3dcore_T3DS_ReadFaceList
	,_openb3d_openb3dcore_T3DS_ReadTexCoords
	,_openb3d_openb3dcore_T3DS_ReadTransMatrix
	,_openb3d_openb3dcore_T3DS_ReadFaceMatList
	,_openb3d_openb3dcore_T3DS_LoadMap_SS
	,_openb3d_openb3dcore_T3DS_ReadMap_i
	,_openb3d_openb3dcore_T3DS_ReadTriMesh
	,_openb3d_openb3dcore_T3DS_ReadBrushBlock
	,openb3d_openb3dcore_T3DS_Load3DS_TTMesh_TObjectTTEntityi
	,_openb3d_openb3dcore_T3DS_Load3DSFromStream_TTStreamTObjectTTEntityi
};

void _openb3d_openb3dcore_TChunk_New(struct openb3d_openb3dcore_TChunk_obj* o) {
	bbObjectCtor((BBOBJECT)o);
	o->clas = &openb3d_openb3dcore_TChunk;
	((struct openb3d_openb3dcore_TChunk_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tchunk_id = 0;
	((struct openb3d_openb3dcore_TChunk_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tchunk_size = 0;
	((struct openb3d_openb3dcore_TChunk_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tchunk_endchunk = 0;
}
struct openb3d_openb3dcore_TChunk_obj* openb3d_openb3dcore_TChunk_Create_TTChunk_iii(BBINT bbt_id,BBINT bbt_size,BBINT bbt_endchunk){
	struct openb3d_openb3dcore_TChunk_obj* bbt_c=(struct openb3d_openb3dcore_TChunk_obj*)((struct openb3d_openb3dcore_TChunk_obj*)&bbNullObject);
	struct BBDebugScope_4 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"Create",
		{
			{
				BBDEBUGDECL_LOCAL,
				"id",
				"i",
				.var_address=&bbt_id
			},
			{
				BBDEBUGDECL_LOCAL,
				"size",
				"i",
				.var_address=&bbt_size
			},
			{
				BBDEBUGDECL_LOCAL,
				"endchunk",
				"i",
				.var_address=&bbt_endchunk
			},
			{
				BBDEBUGDECL_LOCAL,
				"c",
				":TChunk",
				.var_address=&bbt_c
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x5661fee21fff696c, 11, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbt_c=(struct openb3d_openb3dcore_TChunk_obj*)(struct openb3d_openb3dcore_TChunk_obj*)bbObjectAtomicNew((BBClass *)&openb3d_openb3dcore_TChunk);
	struct BBDebugStm __stmt_1 = {0x5661fee21fff696c, 12, 0};
	bbOnDebugEnterStm(&__stmt_1);
	((struct openb3d_openb3dcore_TChunk_obj*)bbNullObjectTest((BBObject*)bbt_c))->_openb3d_openb3dcore_tchunk_id =bbt_id;
	struct BBDebugStm __stmt_2 = {0x5661fee21fff696c, 13, 0};
	bbOnDebugEnterStm(&__stmt_2);
	((struct openb3d_openb3dcore_TChunk_obj*)bbNullObjectTest((BBObject*)bbt_c))->_openb3d_openb3dcore_tchunk_size =bbt_size;
	struct BBDebugStm __stmt_3 = {0x5661fee21fff696c, 14, 0};
	bbOnDebugEnterStm(&__stmt_3);
	((struct openb3d_openb3dcore_TChunk_obj*)bbNullObjectTest((BBObject*)bbt_c))->_openb3d_openb3dcore_tchunk_endchunk =bbt_endchunk;
	struct BBDebugStm __stmt_4 = {0x5661fee21fff696c, 15, 0};
	bbOnDebugEnterStm(&__stmt_4);
	bbOnDebugLeaveScope();
	return (struct openb3d_openb3dcore_TChunk_obj*)bbt_c;
}
struct BBDebugScope_5 openb3d_openb3dcore_TChunk_scope ={
	BBDEBUGSCOPE_USERTYPE,
	"TChunk",
	{
		{
			BBDEBUGDECL_FIELD,
			"id",
			"i",
			.field_offset=offsetof(struct openb3d_openb3dcore_TChunk_obj,_openb3d_openb3dcore_tchunk_id)
		},
		{
			BBDEBUGDECL_FIELD,
			"size",
			"i",
			.field_offset=offsetof(struct openb3d_openb3dcore_TChunk_obj,_openb3d_openb3dcore_tchunk_size)
		},
		{
			BBDEBUGDECL_FIELD,
			"endchunk",
			"i",
			.field_offset=offsetof(struct openb3d_openb3dcore_TChunk_obj,_openb3d_openb3dcore_tchunk_endchunk)
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"New",
			"()i",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_TChunk_New
		},
		{
			BBDEBUGDECL_TYPEFUNCTION,
			"Create",
			"(i,i,i):TChunk",
			.func_ptr=(BBFuncPtr)&openb3d_openb3dcore_TChunk_Create_TTChunk_iii
		},
		{
			BBDEBUGDECL_END
		}
	}
};
struct BBClass_openb3d_openb3dcore_TChunk openb3d_openb3dcore_TChunk={
	&bbObjectClass,
	bbObjectFree,
	(BBDebugScope*)&openb3d_openb3dcore_TChunk_scope,
	sizeof(struct openb3d_openb3dcore_TChunk_obj),
	(void (*)(BBOBJECT))_openb3d_openb3dcore_TChunk_New,
	bbObjectDtor,
	bbObjectToString,
	bbObjectCompare,
	bbObjectSendMessage,
	0,
	0,
	offsetof(struct openb3d_openb3dcore_TChunk_obj,_openb3d_openb3dcore_tchunk_endchunk) - offsetof(struct openb3d_openb3dcore_TChunk_obj,_openb3d_openb3dcore_tchunk_id) + sizeof(BBINT)
	,0
	,offsetof(struct openb3d_openb3dcore_TChunk_obj,_openb3d_openb3dcore_tchunk_id)
	,openb3d_openb3dcore_TChunk_Create_TTChunk_iii
};

void _openb3d_openb3dcore_TAnimKey_New(struct openb3d_openb3dcore_TAnimKey_obj* o) {
	bbObjectCtor((BBOBJECT)o);
	o->clas = &openb3d_openb3dcore_TAnimKey;
	((struct openb3d_openb3dcore_TAnimKey_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tanimkey_pos = (&bbEmptyArray);
	((struct openb3d_openb3dcore_TAnimKey_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tanimkey_rot = (&bbEmptyArray);
	((struct openb3d_openb3dcore_TAnimKey_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tanimkey_size = (&bbEmptyArray);
}
struct openb3d_openb3dcore_TAnimKey_obj* _openb3d_openb3dcore_TAnimKey_Create_afafaf(struct openb3d_openb3dcore_TAnimKey_obj* o,BBARRAY bbt_ipos,BBARRAY bbt_irot,BBARRAY bbt_isize){
	((struct openb3d_openb3dcore_TAnimKey_obj*)bbNullObjectTest((BBObject*)o));
	struct BBDebugScope_4 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"Create",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TAnimKey",
				.var_address=&o
			},
			{
				BBDEBUGDECL_LOCAL,
				"ipos",
				"[]f",
				.var_address=&bbt_ipos
			},
			{
				BBDEBUGDECL_LOCAL,
				"irot",
				"[]f",
				.var_address=&bbt_irot
			},
			{
				BBDEBUGDECL_LOCAL,
				"isize",
				"[]f",
				.var_address=&bbt_isize
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x5661fee21fff696c, 28, 0};
	bbOnDebugEnterStm(&__stmt_0);
	((struct openb3d_openb3dcore_TAnimKey_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tanimkey_pos =bbArraySlice("f",bbt_ipos,0,(bbt_ipos)->scales[0]);
	struct BBDebugStm __stmt_1 = {0x5661fee21fff696c, 29, 0};
	bbOnDebugEnterStm(&__stmt_1);
	((struct openb3d_openb3dcore_TAnimKey_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tanimkey_rot =bbArraySlice("f",bbt_irot,0,(bbt_irot)->scales[0]);
	struct BBDebugStm __stmt_2 = {0x5661fee21fff696c, 30, 0};
	bbOnDebugEnterStm(&__stmt_2);
	((struct openb3d_openb3dcore_TAnimKey_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tanimkey_size =bbArraySlice("f",bbt_isize,0,(bbt_isize)->scales[0]);
	struct BBDebugStm __stmt_3 = {0x5661fee21fff696c, 31, 0};
	bbOnDebugEnterStm(&__stmt_3);
	bbOnDebugLeaveScope();
	return (struct openb3d_openb3dcore_TAnimKey_obj*)o;
}
struct openb3d_openb3dcore_TAnimKey_obj* _openb3d_openb3dcore_TAnimKey_Interpolate_TTAnimKeyf(struct openb3d_openb3dcore_TAnimKey_obj* o,struct openb3d_openb3dcore_TAnimKey_obj* bbt_key2,BBFLOAT bbt_time){
	((struct openb3d_openb3dcore_TAnimKey_obj*)bbNullObjectTest((BBObject*)o));
	struct openb3d_openb3dcore_TAnimKey_obj* bbt_ret=(struct openb3d_openb3dcore_TAnimKey_obj*)((struct openb3d_openb3dcore_TAnimKey_obj*)&bbNullObject);
	struct BBDebugScope_4 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"Interpolate",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TAnimKey",
				.var_address=&o
			},
			{
				BBDEBUGDECL_LOCAL,
				"key2",
				":TAnimKey",
				.var_address=&bbt_key2
			},
			{
				BBDEBUGDECL_LOCAL,
				"time",
				"f",
				.var_address=&bbt_time
			},
			{
				BBDEBUGDECL_LOCAL,
				"ret",
				":TAnimKey",
				.var_address=&bbt_ret
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x5661fee21fff696c, 35, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbt_ret=(struct openb3d_openb3dcore_TAnimKey_obj*)(struct openb3d_openb3dcore_TAnimKey_obj*)bbObjectNew((BBClass *)&openb3d_openb3dcore_TAnimKey);
	struct BBDebugStm __stmt_1 = {0x5661fee21fff696c, 39, 0};
	bbOnDebugEnterStm(&__stmt_1);
	bbOnDebugLeaveScope();
	return (struct openb3d_openb3dcore_TAnimKey_obj*)bbt_ret;
}
struct openb3d_openb3dcore_TAnimKey_obj* _openb3d_openb3dcore_TAnimKey_Empty(struct openb3d_openb3dcore_TAnimKey_obj* o){
	((struct openb3d_openb3dcore_TAnimKey_obj*)bbNullObjectTest((BBObject*)o));
	struct BBDebugScope_1 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"Empty",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TAnimKey",
				.var_address=&o
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x5661fee21fff696c, 43, 0};
	bbOnDebugEnterStm(&__stmt_0);
	BBFLOAT bbt_[]={0.0f,0.0f,0.0f};
	BBARRAY bbt_2 = bbArrayFromData("f",3,bbt_);
	((struct openb3d_openb3dcore_TAnimKey_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tanimkey_pos =bbt_2;
	struct BBDebugStm __stmt_1 = {0x5661fee21fff696c, 44, 0};
	bbOnDebugEnterStm(&__stmt_1);
	BBFLOAT bbt_3[]={1.0f,0.0f,0.0f,0.0f};
	BBARRAY bbt_4 = bbArrayFromData("f",4,bbt_3);
	((struct openb3d_openb3dcore_TAnimKey_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tanimkey_rot =bbt_4;
	struct BBDebugStm __stmt_2 = {0x5661fee21fff696c, 45, 0};
	bbOnDebugEnterStm(&__stmt_2);
	BBFLOAT bbt_5[]={1.0f,1.0f,1.0f};
	BBARRAY bbt_6 = bbArrayFromData("f",3,bbt_5);
	((struct openb3d_openb3dcore_TAnimKey_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tanimkey_size =bbt_6;
	struct BBDebugStm __stmt_3 = {0x5661fee21fff696c, 46, 0};
	bbOnDebugEnterStm(&__stmt_3);
	bbOnDebugLeaveScope();
	return (struct openb3d_openb3dcore_TAnimKey_obj*)o;
}
struct BBDebugScope_7 openb3d_openb3dcore_TAnimKey_scope ={
	BBDEBUGSCOPE_USERTYPE,
	"TAnimKey",
	{
		{
			BBDEBUGDECL_FIELD,
			"pos",
			"[]f",
			.field_offset=offsetof(struct openb3d_openb3dcore_TAnimKey_obj,_openb3d_openb3dcore_tanimkey_pos)
		},
		{
			BBDEBUGDECL_FIELD,
			"rot",
			"[]f",
			.field_offset=offsetof(struct openb3d_openb3dcore_TAnimKey_obj,_openb3d_openb3dcore_tanimkey_rot)
		},
		{
			BBDEBUGDECL_FIELD,
			"size",
			"[]f",
			.field_offset=offsetof(struct openb3d_openb3dcore_TAnimKey_obj,_openb3d_openb3dcore_tanimkey_size)
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"New",
			"()i",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_TAnimKey_New
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"Create",
			"([]f,[]f,[]f):TAnimKey",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_TAnimKey_Create_afafaf
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"Interpolate",
			"(:TAnimKey,f):TAnimKey",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_TAnimKey_Interpolate_TTAnimKeyf
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"Empty",
			"():TAnimKey",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_TAnimKey_Empty
		},
		{
			BBDEBUGDECL_END
		}
	}
};
struct BBClass_openb3d_openb3dcore_TAnimKey openb3d_openb3dcore_TAnimKey={
	&bbObjectClass,
	bbObjectFree,
	(BBDebugScope*)&openb3d_openb3dcore_TAnimKey_scope,
	sizeof(struct openb3d_openb3dcore_TAnimKey_obj),
	(void (*)(BBOBJECT))_openb3d_openb3dcore_TAnimKey_New,
	bbObjectDtor,
	bbObjectToString,
	bbObjectCompare,
	bbObjectSendMessage,
	0,
	0,
	offsetof(struct openb3d_openb3dcore_TAnimKey_obj,_openb3d_openb3dcore_tanimkey_size) - offsetof(struct openb3d_openb3dcore_TAnimKey_obj,_openb3d_openb3dcore_tanimkey_pos) + sizeof(BBARRAY)
	,0
	,offsetof(struct openb3d_openb3dcore_TAnimKey_obj,_openb3d_openb3dcore_tanimkey_pos)
	,_openb3d_openb3dcore_TAnimKey_Create_afafaf
	,_openb3d_openb3dcore_TAnimKey_Interpolate_TTAnimKeyf
	,_openb3d_openb3dcore_TAnimKey_Empty
};

void _openb3d_openb3dcore_T3DS2_New(struct openb3d_openb3dcore_T3DS2_obj* o) {
	bbObjectCtor((BBOBJECT)o);
	o->clas = &openb3d_openb3dcore_T3DS2;
	((struct openb3d_openb3dcore_T3DS2_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_t3ds2_objlist = (struct brl_linkedlist_TList_obj*)((struct brl_linkedlist_TList_obj*)&bbNullObject);
	((struct openb3d_openb3dcore_T3DS2_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_t3ds2_materialmap = (struct brl_map_TMap_obj*)((struct brl_map_TMap_obj*)&bbNullObject);
	((struct openb3d_openb3dcore_T3DS2_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_t3ds2_materialcolormap = (struct brl_map_TMap_obj*)((struct brl_map_TMap_obj*)&bbNullObject);
	((struct openb3d_openb3dcore_T3DS2_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_t3ds2_materialshinemap = (struct brl_map_TMap_obj*)((struct brl_map_TMap_obj*)&bbNullObject);
	((struct openb3d_openb3dcore_T3DS2_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_t3ds2_materiallayermap = (struct brl_map_TMap_obj*)((struct brl_map_TMap_obj*)&bbNullObject);
	((struct openb3d_openb3dcore_T3DS2_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_t3ds2_matrixmap = (struct brl_map_TMap_obj*)((struct brl_map_TMap_obj*)&bbNullObject);
	((struct openb3d_openb3dcore_T3DS2_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_t3ds2_filepath = ((BBString*)&bbEmptyString);
	((struct openb3d_openb3dcore_T3DS2_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_t3ds2_filename = ((BBString*)&bbEmptyString);
	((struct openb3d_openb3dcore_T3DS2_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_t3ds2_stream = (struct brl_stream_TStream_obj*)((struct brl_stream_TStream_obj*)&bbNullObject);
	((struct openb3d_openb3dcore_T3DS2_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_t3ds2_defaultbrush = (struct openb3d_openb3dcore_TBrush_obj*)((struct openb3d_openb3dcore_TBrush_obj*)&bbNullObject);
	((struct openb3d_openb3dcore_T3DS2_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_t3ds2_root = (struct openb3d_openb3dcore_TMesh_obj*)((struct openb3d_openb3dcore_TMesh_obj*)&bbNullObject);
	((struct openb3d_openb3dcore_T3DS2_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_t3ds2_override_texflags = 0;
}
struct openb3d_openb3dcore_TEntity_obj* _openb3d_openb3dcore_T3DS2_GetObject_i(struct openb3d_openb3dcore_T3DS2_obj* o,BBINT bbt_index){
	((struct openb3d_openb3dcore_T3DS2_obj*)bbNullObjectTest((BBObject*)o));
	struct BBDebugScope_2 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"GetObject",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":T3DS2",
				.var_address=&o
			},
			{
				BBDEBUGDECL_LOCAL,
				"index",
				"i",
				.var_address=&bbt_index
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x5661fee21fff696c, 166, 0};
	bbOnDebugEnterStm(&__stmt_0);
	if(bbt_index<0){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x5661fee21fff696c, 166, 0};
		bbOnDebugEnterStm(&__stmt_0);
		bbOnDebugLeaveScope();
		bbOnDebugLeaveScope();
		return (struct openb3d_openb3dcore_TEntity_obj*)&bbNullObject;
	}
	struct BBDebugStm __stmt_1 = {0x5661fee21fff696c, 167, 0};
	bbOnDebugEnterStm(&__stmt_1);
	if(bbt_index>=((struct brl_linkedlist_TList_obj*)bbNullObjectTest((BBObject*)((struct openb3d_openb3dcore_T3DS2_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_t3ds2_objlist ))->clas->m_Count((struct brl_linkedlist_TList_obj*)((struct openb3d_openb3dcore_T3DS2_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_t3ds2_objlist )){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x5661fee21fff696c, 167, 0};
		bbOnDebugEnterStm(&__stmt_0);
		bbOnDebugLeaveScope();
		bbOnDebugLeaveScope();
		return (struct openb3d_openb3dcore_TEntity_obj*)&bbNullObject;
	}
	struct BBDebugStm __stmt_2 = {0x5661fee21fff696c, 170, 0};
	bbOnDebugEnterStm(&__stmt_2);
	BBARRAY bbt_=((struct brl_linkedlist_TList_obj*)bbNullObjectTest((BBObject*)((struct openb3d_openb3dcore_T3DS2_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_t3ds2_objlist ))->clas->m_ToArray((struct brl_linkedlist_TList_obj*)((struct openb3d_openb3dcore_T3DS2_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_t3ds2_objlist );
	bbOnDebugLeaveScope();
	return (struct openb3d_openb3dcore_TEntity_obj*)((struct openb3d_openb3dcore_TEntity_obj*)bbObjectDowncast((BBOBJECT)((BBOBJECT*)BBARRAYDATAINDEX((bbt_),(bbt_)->dims,((BBUINT)bbt_index)))[((BBUINT)bbt_index)],(BBClass*)&openb3d_openb3dcore_TEntity));
}
struct openb3d_openb3dcore_TChunk_obj* _openb3d_openb3dcore_T3DS2_ReadChunk(struct openb3d_openb3dcore_T3DS2_obj* o){
	((struct openb3d_openb3dcore_T3DS2_obj*)bbNullObjectTest((BBObject*)o));
	BBINT bbt_id=0;
	BBINT bbt_size=0;
	BBINT bbt_endchunk=0;
	struct BBDebugScope_4 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"ReadChunk",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":T3DS2",
				.var_address=&o
			},
			{
				BBDEBUGDECL_LOCAL,
				"id",
				"i",
				.var_address=&bbt_id
			},
			{
				BBDEBUGDECL_LOCAL,
				"size",
				"i",
				.var_address=&bbt_size
			},
			{
				BBDEBUGDECL_LOCAL,
				"endchunk",
				"i",
				.var_address=&bbt_endchunk
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x5661fee21fff696c, 174, 0};
	bbOnDebugEnterStm(&__stmt_0);
	if(((struct brl_stream_TStream_obj*)bbNullObjectTest((BBObject*)((struct openb3d_openb3dcore_T3DS2_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_t3ds2_stream ))->clas->m_Eof((struct brl_stream_TIO_obj*)((struct openb3d_openb3dcore_T3DS2_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_t3ds2_stream )!=0){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x5661fee21fff696c, 174, 0};
		bbOnDebugEnterStm(&__stmt_0);
		bbOnDebugLeaveScope();
		bbOnDebugLeaveScope();
		return (struct openb3d_openb3dcore_TChunk_obj*)openb3d_openb3dcore_TChunk_Create_TTChunk_iii(0,0,0);
	}
	struct BBDebugStm __stmt_1 = {0x5661fee21fff696c, 176, 0};
	bbOnDebugEnterStm(&__stmt_1);
	bbt_id=((struct brl_stream_TStream_obj*)bbNullObjectTest((BBObject*)((struct openb3d_openb3dcore_T3DS2_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_t3ds2_stream ))->clas->m_ReadShort((struct brl_stream_TStream_obj*)((struct openb3d_openb3dcore_T3DS2_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_t3ds2_stream );
	struct BBDebugStm __stmt_2 = {0x5661fee21fff696c, 177, 0};
	bbOnDebugEnterStm(&__stmt_2);
	bbt_size=((struct brl_stream_TStream_obj*)bbNullObjectTest((BBObject*)((struct openb3d_openb3dcore_T3DS2_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_t3ds2_stream ))->clas->m_ReadInt((struct brl_stream_TStream_obj*)((struct openb3d_openb3dcore_T3DS2_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_t3ds2_stream );
	struct BBDebugStm __stmt_3 = {0x5661fee21fff696c, 178, 0};
	bbOnDebugEnterStm(&__stmt_3);
	bbt_endchunk=((BBINT)((brl_stream_StreamPos((struct brl_stream_TStream_obj*)((struct openb3d_openb3dcore_T3DS2_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_t3ds2_stream )+((BBLONG)bbt_size))-6LL));
	struct BBDebugStm __stmt_4 = {0x5661fee21fff696c, 180, 0};
	bbOnDebugEnterStm(&__stmt_4);
	bbOnDebugLeaveScope();
	return (struct openb3d_openb3dcore_TChunk_obj*)openb3d_openb3dcore_TChunk_Create_TTChunk_iii(bbt_id,bbt_size,bbt_endchunk);
}
BBSTRING _openb3d_openb3dcore_T3DS2_ParseString(struct openb3d_openb3dcore_T3DS2_obj* o){
	((struct openb3d_openb3dcore_T3DS2_obj*)bbNullObjectTest((BBObject*)o));
	BBBYTE bbt_char=0;
	BBSTRING bbt_CString=(&bbEmptyString);
	struct BBDebugScope_3 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"ParseString",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":T3DS2",
				.var_address=&o
			},
			{
				BBDEBUGDECL_LOCAL,
				"char",
				"b",
				.var_address=&bbt_char
			},
			{
				BBDEBUGDECL_LOCAL,
				"CString",
				"$",
				.var_address=&bbt_CString
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x5661fee21fff696c, 184, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbt_char=0;
	struct BBDebugStm __stmt_1 = {0x5661fee21fff696c, 184, 0};
	bbOnDebugEnterStm(&__stmt_1);
	bbt_CString=((BBString*)&bbEmptyString);
	struct BBDebugStm __stmt_2 = {0x5661fee21fff696c, 186, 0};
	bbOnDebugEnterStm(&__stmt_2);
	while(!(((struct brl_stream_TStream_obj*)bbNullObjectTest((BBObject*)((struct openb3d_openb3dcore_T3DS2_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_t3ds2_stream ))->clas->m_Eof((struct brl_stream_TIO_obj*)((struct openb3d_openb3dcore_T3DS2_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_t3ds2_stream )!=0)){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x5661fee21fff696c, 187, 0};
		bbOnDebugEnterStm(&__stmt_0);
		bbt_char=((BBBYTE)((struct brl_stream_TStream_obj*)bbNullObjectTest((BBObject*)((struct openb3d_openb3dcore_T3DS2_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_t3ds2_stream ))->clas->m_ReadByte((struct brl_stream_TStream_obj*)((struct openb3d_openb3dcore_T3DS2_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_t3ds2_stream ));
		struct BBDebugStm __stmt_1 = {0x5661fee21fff696c, 188, 0};
		bbOnDebugEnterStm(&__stmt_1);
		if(((BBINT)bbt_char)==0){
			struct BBDebugScope __scope = {
				BBDEBUGSCOPE_LOCALBLOCK,
				0,
				{
					{
						BBDEBUGDECL_END
					}
				}
			};
			bbOnDebugEnterScope((BBDebugScope *)&__scope);
			struct BBDebugStm __stmt_0 = {0x5661fee21fff696c, 188, 0};
			bbOnDebugEnterStm(&__stmt_0);
			bbOnDebugLeaveScope();
			bbOnDebugLeaveScope();
			break;
		}
		struct BBDebugStm __stmt_2 = {0x5661fee21fff696c, 189, 0};
		bbOnDebugEnterStm(&__stmt_2);
		bbt_CString=bbStringConcat(bbt_CString,bbStringFromChar((BBINT)bbt_char));
		bbOnDebugLeaveScope();
	}
	struct BBDebugStm __stmt_3 = {0x5661fee21fff696c, 192, 0};
	bbOnDebugEnterStm(&__stmt_3);
	bbOnDebugLeaveScope();
	return bbt_CString;
}
BBSHORT _openb3d_openb3dcore_T3DS2_ParseVertexList_TTSurfaceTTEntity(struct openb3d_openb3dcore_T3DS2_obj* o,struct openb3d_openb3dcore_TSurface_obj* bbt_surface,struct openb3d_openb3dcore_TEntity_obj* bbt_parent){
	((struct openb3d_openb3dcore_T3DS2_obj*)bbNullObjectTest((BBObject*)o));
	BBSHORT bbt_count=0;
	struct BBDebugScope_4 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"ParseVertexList",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":T3DS2",
				.var_address=&o
			},
			{
				BBDEBUGDECL_LOCAL,
				"surface",
				":TSurface",
				.var_address=&bbt_surface
			},
			{
				BBDEBUGDECL_LOCAL,
				"parent",
				":TEntity",
				.var_address=&bbt_parent
			},
			{
				BBDEBUGDECL_LOCAL,
				"count",
				"s",
				.var_address=&bbt_count
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x5661fee21fff696c, 196, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbt_count=((BBSHORT)((struct brl_stream_TStream_obj*)bbNullObjectTest((BBObject*)((struct openb3d_openb3dcore_T3DS2_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_t3ds2_stream ))->clas->m_ReadShort((struct brl_stream_TStream_obj*)((struct openb3d_openb3dcore_T3DS2_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_t3ds2_stream ));
	struct BBDebugStm __stmt_1 = {0x5661fee21fff696c, 198, 0};
	bbOnDebugEnterStm(&__stmt_1);
	((struct openb3d_openb3dcore_TSurface_obj*)bbNullObjectTest((BBObject*)bbt_surface))->_openb3d_openb3dcore_tsurface_no_verts [0]=((BBINT)bbt_count);
	struct BBDebugStm __stmt_2 = {0x5661fee21fff696c, 199, 0};
	bbOnDebugEnterStm(&__stmt_2);
	((struct openb3d_openb3dcore_TSurface_obj*)bbNullObjectTest((BBObject*)bbt_surface))->_openb3d_openb3dcore_tsurface_vert_norm =((struct openb3d_openb3dcore_TSurface_obj*)bbNullObjectTest((BBObject*)bbt_surface))->clas->m_SurfaceFloatArrayResize_ii((struct openb3d_openb3dcore_TSurface_obj*)bbt_surface,4,(((BBINT)bbt_count)*3));
	struct BBDebugStm __stmt_3 = {0x5661fee21fff696c, 200, 0};
	bbOnDebugEnterStm(&__stmt_3);
	((struct openb3d_openb3dcore_TSurface_obj*)bbNullObjectTest((BBObject*)bbt_surface))->_openb3d_openb3dcore_tsurface_vert_col =((struct openb3d_openb3dcore_TSurface_obj*)bbNullObjectTest((BBObject*)bbt_surface))->clas->m_SurfaceFloatArrayResize_ii((struct openb3d_openb3dcore_TSurface_obj*)bbt_surface,7,(((BBINT)bbt_count)*4));
	struct BBDebugStm __stmt_4 = {0x5661fee21fff696c, 202, 0};
	bbOnDebugEnterStm(&__stmt_4);
	{
		BBINT bbt_id=0;
		BBINT bbt_=((BBINT)bbt_count);
		for(;(bbt_id<bbt_);bbt_id=(bbt_id+1)){
			BBFLOAT bbt_x=0;
			BBFLOAT bbt_y=0;
			BBFLOAT bbt_z=0;
			struct BBDebugScope_4 __scope = {
				BBDEBUGSCOPE_LOCALBLOCK,
				0,
				{
					{
						BBDEBUGDECL_LOCAL,
						"id",
						"i",
						.var_address=&bbt_id
					},
					{
						BBDEBUGDECL_LOCAL,
						"x",
						"f",
						.var_address=&bbt_x
					},
					{
						BBDEBUGDECL_LOCAL,
						"y",
						"f",
						.var_address=&bbt_y
					},
					{
						BBDEBUGDECL_LOCAL,
						"z",
						"f",
						.var_address=&bbt_z
					},
					{
						BBDEBUGDECL_END
					}
				}
			};
			bbOnDebugEnterScope((BBDebugScope *)&__scope);
			struct BBDebugStm __stmt_0 = {0x5661fee21fff696c, 203, 0};
			bbOnDebugEnterStm(&__stmt_0);
			bbt_x=((struct brl_stream_TStream_obj*)bbNullObjectTest((BBObject*)((struct openb3d_openb3dcore_T3DS2_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_t3ds2_stream ))->clas->m_ReadFloat((struct brl_stream_TStream_obj*)((struct openb3d_openb3dcore_T3DS2_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_t3ds2_stream );
			struct BBDebugStm __stmt_1 = {0x5661fee21fff696c, 204, 0};
			bbOnDebugEnterStm(&__stmt_1);
			bbt_y=((struct brl_stream_TStream_obj*)bbNullObjectTest((BBObject*)((struct openb3d_openb3dcore_T3DS2_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_t3ds2_stream ))->clas->m_ReadFloat((struct brl_stream_TStream_obj*)((struct openb3d_openb3dcore_T3DS2_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_t3ds2_stream );
			struct BBDebugStm __stmt_2 = {0x5661fee21fff696c, 205, 0};
			bbOnDebugEnterStm(&__stmt_2);
			bbt_z=((struct brl_stream_TStream_obj*)bbNullObjectTest((BBObject*)((struct openb3d_openb3dcore_T3DS2_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_t3ds2_stream ))->clas->m_ReadFloat((struct brl_stream_TStream_obj*)((struct openb3d_openb3dcore_T3DS2_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_t3ds2_stream );
			struct BBDebugStm __stmt_3 = {0x5661fee21fff696c, 207, 0};
			bbOnDebugEnterStm(&__stmt_3);
			((struct openb3d_openb3dcore_TSurface_obj*)bbNullObjectTest((BBObject*)bbt_surface))->clas->m_SurfaceFloatArrayAdd_if((struct openb3d_openb3dcore_TSurface_obj*)bbt_surface,3,bbt_x);
			struct BBDebugStm __stmt_4 = {0x5661fee21fff696c, 208, 0};
			bbOnDebugEnterStm(&__stmt_4);
			((struct openb3d_openb3dcore_TSurface_obj*)bbNullObjectTest((BBObject*)bbt_surface))->clas->m_SurfaceFloatArrayAdd_if((struct openb3d_openb3dcore_TSurface_obj*)bbt_surface,3,bbt_y);
			struct BBDebugStm __stmt_5 = {0x5661fee21fff696c, 209, 0};
			bbOnDebugEnterStm(&__stmt_5);
			((struct openb3d_openb3dcore_TSurface_obj*)bbNullObjectTest((BBObject*)bbt_surface))->clas->m_SurfaceFloatArrayAdd_if((struct openb3d_openb3dcore_TSurface_obj*)bbt_surface,3,bbt_z);
			bbOnDebugLeaveScope();
		}
	}
	struct BBDebugStm __stmt_5 = {0x5661fee21fff696c, 212, 0};
	bbOnDebugEnterStm(&__stmt_5);
	bbOnDebugLeaveScope();
	return bbt_count;
}
BBINT _openb3d_openb3dcore_T3DS2_ParseMapList_TTSurfaceTTEntity(struct openb3d_openb3dcore_T3DS2_obj* o,struct openb3d_openb3dcore_TSurface_obj* bbt_surface,struct openb3d_openb3dcore_TEntity_obj* bbt_parent){
	((struct openb3d_openb3dcore_T3DS2_obj*)bbNullObjectTest((BBObject*)o));
	BBSHORT bbt_count=0;
	struct BBDebugScope_4 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"ParseMapList",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":T3DS2",
				.var_address=&o
			},
			{
				BBDEBUGDECL_LOCAL,
				"surface",
				":TSurface",
				.var_address=&bbt_surface
			},
			{
				BBDEBUGDECL_LOCAL,
				"parent",
				":TEntity",
				.var_address=&bbt_parent
			},
			{
				BBDEBUGDECL_LOCAL,
				"count",
				"s",
				.var_address=&bbt_count
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x5661fee21fff696c, 216, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbt_count=((BBSHORT)((struct brl_stream_TStream_obj*)bbNullObjectTest((BBObject*)((struct openb3d_openb3dcore_T3DS2_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_t3ds2_stream ))->clas->m_ReadShort((struct brl_stream_TStream_obj*)((struct openb3d_openb3dcore_T3DS2_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_t3ds2_stream ));
	struct BBDebugStm __stmt_1 = {0x5661fee21fff696c, 218, 0};
	bbOnDebugEnterStm(&__stmt_1);
	((struct openb3d_openb3dcore_TSurface_obj*)bbNullObjectTest((BBObject*)bbt_surface))->_openb3d_openb3dcore_tsurface_vert_tex_coords0 =((struct openb3d_openb3dcore_TSurface_obj*)bbNullObjectTest((BBObject*)bbt_surface))->clas->m_SurfaceFloatArrayResize_ii((struct openb3d_openb3dcore_TSurface_obj*)bbt_surface,5,(((BBINT)bbt_count)*2));
	struct BBDebugStm __stmt_2 = {0x5661fee21fff696c, 219, 0};
	bbOnDebugEnterStm(&__stmt_2);
	((struct openb3d_openb3dcore_TSurface_obj*)bbNullObjectTest((BBObject*)bbt_surface))->_openb3d_openb3dcore_tsurface_vert_tex_coords1 =((struct openb3d_openb3dcore_TSurface_obj*)bbNullObjectTest((BBObject*)bbt_surface))->clas->m_SurfaceFloatArrayResize_ii((struct openb3d_openb3dcore_TSurface_obj*)bbt_surface,6,(((BBINT)bbt_count)*2));
	struct BBDebugStm __stmt_3 = {0x5661fee21fff696c, 221, 0};
	bbOnDebugEnterStm(&__stmt_3);
	{
		BBINT bbt_id=0;
		BBINT bbt_=((BBINT)bbt_count);
		for(;(bbt_id<bbt_);bbt_id=(bbt_id+1)){
			BBFLOAT bbt_u=0;
			BBFLOAT bbt_v=0;
			struct BBDebugScope_3 __scope = {
				BBDEBUGSCOPE_LOCALBLOCK,
				0,
				{
					{
						BBDEBUGDECL_LOCAL,
						"id",
						"i",
						.var_address=&bbt_id
					},
					{
						BBDEBUGDECL_LOCAL,
						"u",
						"f",
						.var_address=&bbt_u
					},
					{
						BBDEBUGDECL_LOCAL,
						"v",
						"f",
						.var_address=&bbt_v
					},
					{
						BBDEBUGDECL_END
					}
				}
			};
			bbOnDebugEnterScope((BBDebugScope *)&__scope);
			struct BBDebugStm __stmt_0 = {0x5661fee21fff696c, 222, 0};
			bbOnDebugEnterStm(&__stmt_0);
			bbt_u=((struct brl_stream_TStream_obj*)bbNullObjectTest((BBObject*)((struct openb3d_openb3dcore_T3DS2_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_t3ds2_stream ))->clas->m_ReadFloat((struct brl_stream_TStream_obj*)((struct openb3d_openb3dcore_T3DS2_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_t3ds2_stream );
			struct BBDebugStm __stmt_1 = {0x5661fee21fff696c, 223, 0};
			bbOnDebugEnterStm(&__stmt_1);
			bbt_v=-((struct brl_stream_TStream_obj*)bbNullObjectTest((BBObject*)((struct openb3d_openb3dcore_T3DS2_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_t3ds2_stream ))->clas->m_ReadFloat((struct brl_stream_TStream_obj*)((struct openb3d_openb3dcore_T3DS2_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_t3ds2_stream );
			struct BBDebugStm __stmt_2 = {0x5661fee21fff696c, 225, 0};
			bbOnDebugEnterStm(&__stmt_2);
			((struct openb3d_openb3dcore_TSurface_obj*)bbNullObjectTest((BBObject*)bbt_surface))->clas->m_VertexTexCoords_ifffi((struct openb3d_openb3dcore_TSurface_obj*)bbt_surface,bbt_id,bbt_u,bbt_v,0.00000000f,0);
			struct BBDebugStm __stmt_3 = {0x5661fee21fff696c, 226, 0};
			bbOnDebugEnterStm(&__stmt_3);
			((struct openb3d_openb3dcore_TSurface_obj*)bbNullObjectTest((BBObject*)bbt_surface))->clas->m_VertexTexCoords_ifffi((struct openb3d_openb3dcore_TSurface_obj*)bbt_surface,bbt_id,bbt_u,bbt_v,0.00000000f,1);
			bbOnDebugLeaveScope();
		}
	}
	bbOnDebugLeaveScope();
	return 0;
}
BBINT _openb3d_openb3dcore_T3DS2_ParseFaceMatList_TTSurfaceTTEntity(struct openb3d_openb3dcore_T3DS2_obj* o,struct openb3d_openb3dcore_TSurface_obj* bbt_surface,struct openb3d_openb3dcore_TEntity_obj* bbt_parent){
	((struct openb3d_openb3dcore_T3DS2_obj*)bbNullObjectTest((BBObject*)o));
	BBSTRING bbt_matname=(&bbEmptyString);
	BBSHORT bbt_count=0;
	struct openb3d_openb3dcore_TTexture_obj* bbt_tex=(struct openb3d_openb3dcore_TTexture_obj*)((struct openb3d_openb3dcore_TTexture_obj*)&bbNullObject);
	BBARRAY bbt_col=(&bbEmptyArray);
	BBARRAY bbt_shine=(&bbEmptyArray);
	BBARRAY bbt_layer=(&bbEmptyArray);
	struct BBDebugScope_9 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"ParseFaceMatList",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":T3DS2",
				.var_address=&o
			},
			{
				BBDEBUGDECL_LOCAL,
				"surface",
				":TSurface",
				.var_address=&bbt_surface
			},
			{
				BBDEBUGDECL_LOCAL,
				"parent",
				":TEntity",
				.var_address=&bbt_parent
			},
			{
				BBDEBUGDECL_LOCAL,
				"matname",
				"$",
				.var_address=&bbt_matname
			},
			{
				BBDEBUGDECL_LOCAL,
				"count",
				"s",
				.var_address=&bbt_count
			},
			{
				BBDEBUGDECL_LOCAL,
				"tex",
				":TTexture",
				.var_address=&bbt_tex
			},
			{
				BBDEBUGDECL_LOCAL,
				"col",
				"[]b",
				.var_address=&bbt_col
			},
			{
				BBDEBUGDECL_LOCAL,
				"shine",
				"[]f",
				.var_address=&bbt_shine
			},
			{
				BBDEBUGDECL_LOCAL,
				"layer",
				"[]i",
				.var_address=&bbt_layer
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x5661fee21fff696c, 231, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbt_matname=((BBString*)&bbEmptyString);
	struct BBDebugStm __stmt_1 = {0x5661fee21fff696c, 231, 0};
	bbOnDebugEnterStm(&__stmt_1);
	bbt_count=0;
	struct BBDebugStm __stmt_2 = {0x5661fee21fff696c, 232, 0};
	bbOnDebugEnterStm(&__stmt_2);
	((struct openb3d_openb3dcore_T3DS2_obj*)bbNullObjectTest((BBObject*)o));
	bbt_matname=((struct openb3d_openb3dcore_T3DS2_obj*)o)->clas->m_ParseString((struct openb3d_openb3dcore_T3DS2_obj*)o);
	struct BBDebugStm __stmt_3 = {0x5661fee21fff696c, 234, 0};
	bbOnDebugEnterStm(&__stmt_3);
	bbt_tex=(struct openb3d_openb3dcore_TTexture_obj*)((struct openb3d_openb3dcore_TTexture_obj*)bbObjectDowncast((BBOBJECT)brl_map_MapValueForKey((struct brl_map_TMap_obj*)((struct openb3d_openb3dcore_T3DS2_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_t3ds2_materialmap ,(BBOBJECT)bbt_matname),(BBClass*)&openb3d_openb3dcore_TTexture));
	struct BBDebugStm __stmt_4 = {0x5661fee21fff696c, 235, 0};
	bbOnDebugEnterStm(&__stmt_4);
	bbt_col=bbArrayCastFromObject((BBOBJECT)brl_map_MapValueForKey((struct brl_map_TMap_obj*)((struct openb3d_openb3dcore_T3DS2_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_t3ds2_materialcolormap ,(BBOBJECT)bbt_matname),"b");
	struct BBDebugStm __stmt_5 = {0x5661fee21fff696c, 236, 0};
	bbOnDebugEnterStm(&__stmt_5);
	bbt_shine=bbArrayCastFromObject((BBOBJECT)brl_map_MapValueForKey((struct brl_map_TMap_obj*)((struct openb3d_openb3dcore_T3DS2_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_t3ds2_materialshinemap ,(BBOBJECT)bbt_matname),"f");
	struct BBDebugStm __stmt_6 = {0x5661fee21fff696c, 237, 0};
	bbOnDebugEnterStm(&__stmt_6);
	bbt_layer=bbArrayCastFromObject((BBOBJECT)brl_map_MapValueForKey((struct brl_map_TMap_obj*)((struct openb3d_openb3dcore_T3DS2_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_t3ds2_materiallayermap ,(BBOBJECT)bbt_matname),"i");
	struct BBDebugStm __stmt_7 = {0x5661fee21fff696c, 239, 0};
	bbOnDebugEnterStm(&__stmt_7);
	if(((BBOBJECT)bbt_tex)!=&bbNullObject){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x5661fee21fff696c, 240, 0};
		bbOnDebugEnterStm(&__stmt_0);
		struct openb3d_openb3dcore_TBrush_obj* bbt_;
		(((struct openb3d_openb3dcore_TBrush_obj*)((struct openb3d_openb3dcore_TBrush_obj*)bbNullObjectTest((BBObject*)(bbt_ = ((struct openb3d_openb3dcore_TSurface_obj*)bbNullObjectTest((BBObject*)bbt_surface))->_openb3d_openb3dcore_tsurface_brush ))))->clas)->m_BrushTexture_TTTextureii((struct openb3d_openb3dcore_TBrush_obj*)bbt_,(struct openb3d_openb3dcore_TTexture_obj*)bbt_tex,0,((BBINT*)BBARRAYDATAINDEX((bbt_layer),(bbt_layer)->dims,0U))[0U]);
		struct BBDebugStm __stmt_1 = {0x5661fee21fff696c, 241, 0};
		bbOnDebugEnterStm(&__stmt_1);
		struct openb3d_openb3dcore_TBrush_obj* bbt_2;
		(((struct openb3d_openb3dcore_TBrush_obj*)((struct openb3d_openb3dcore_TBrush_obj*)bbNullObjectTest((BBObject*)(bbt_2 = ((struct openb3d_openb3dcore_TSurface_obj*)bbNullObjectTest((BBObject*)bbt_surface))->_openb3d_openb3dcore_tsurface_brush ))))->clas)->m_BrushColor_fff((struct openb3d_openb3dcore_TBrush_obj*)bbt_2,255.000000f,255.000000f,255.000000f);
		bbOnDebugLeaveScope();
	}else{
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x5661fee21fff696c, 242, 0};
		bbOnDebugEnterStm(&__stmt_0);
		if(bbt_col!=(&bbEmptyArray)){
			struct BBDebugScope __scope = {
				BBDEBUGSCOPE_LOCALBLOCK,
				0,
				{
					{
						BBDEBUGDECL_END
					}
				}
			};
			bbOnDebugEnterScope((BBDebugScope *)&__scope);
			struct BBDebugStm __stmt_0 = {0x5661fee21fff696c, 243, 0};
			bbOnDebugEnterStm(&__stmt_0);
			struct openb3d_openb3dcore_TBrush_obj* bbt_3;
			(((struct openb3d_openb3dcore_TBrush_obj*)((struct openb3d_openb3dcore_TBrush_obj*)bbNullObjectTest((BBObject*)(bbt_3 = ((struct openb3d_openb3dcore_TSurface_obj*)bbNullObjectTest((BBObject*)bbt_surface))->_openb3d_openb3dcore_tsurface_brush ))))->clas)->m_BrushColor_fff((struct openb3d_openb3dcore_TBrush_obj*)bbt_3,((BBFLOAT)((BBBYTE*)BBARRAYDATAINDEX((bbt_col),(bbt_col)->dims,0U))[0U]),((BBFLOAT)((BBBYTE*)BBARRAYDATAINDEX((bbt_col),(bbt_col)->dims,1U))[1U]),((BBFLOAT)((BBBYTE*)BBARRAYDATAINDEX((bbt_col),(bbt_col)->dims,2U))[2U]));
			bbOnDebugLeaveScope();
		}
		bbOnDebugLeaveScope();
	}
	struct BBDebugStm __stmt_8 = {0x5661fee21fff696c, 245, 0};
	bbOnDebugEnterStm(&__stmt_8);
	if(bbt_shine!=(&bbEmptyArray)){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x5661fee21fff696c, 246, 0};
		bbOnDebugEnterStm(&__stmt_0);
		struct openb3d_openb3dcore_TBrush_obj* bbt_4;
		(((struct openb3d_openb3dcore_TBrush_obj*)((struct openb3d_openb3dcore_TBrush_obj*)bbNullObjectTest((BBObject*)(bbt_4 = ((struct openb3d_openb3dcore_TSurface_obj*)bbNullObjectTest((BBObject*)bbt_surface))->_openb3d_openb3dcore_tsurface_brush ))))->clas)->m_BrushShininess_f((struct openb3d_openb3dcore_TBrush_obj*)bbt_4,(((BBFLOAT*)BBARRAYDATAINDEX((bbt_shine),(bbt_shine)->dims,0U))[0U]/255.0f));
		bbOnDebugLeaveScope();
	}
	struct BBDebugStm __stmt_9 = {0x5661fee21fff696c, 249, 0};
	bbOnDebugEnterStm(&__stmt_9);
	bbt_count=((BBSHORT)((struct brl_stream_TStream_obj*)bbNullObjectTest((BBObject*)((struct openb3d_openb3dcore_T3DS2_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_t3ds2_stream ))->clas->m_ReadShort((struct brl_stream_TStream_obj*)((struct openb3d_openb3dcore_T3DS2_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_t3ds2_stream ));
	struct BBDebugStm __stmt_10 = {0x5661fee21fff696c, 250, 0};
	bbOnDebugEnterStm(&__stmt_10);
	brl_stream_SeekStream((struct brl_stream_TStream_obj*)((struct openb3d_openb3dcore_T3DS2_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_t3ds2_stream ,(((struct brl_stream_TStream_obj*)bbNullObjectTest((BBObject*)((struct openb3d_openb3dcore_T3DS2_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_t3ds2_stream ))->clas->m_Pos((struct brl_stream_TIO_obj*)((struct openb3d_openb3dcore_T3DS2_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_t3ds2_stream )+((BBLONG)(((BBINT)bbt_count)*2))),0);
	bbOnDebugLeaveScope();
	return 0;
}
BBSHORT _openb3d_openb3dcore_T3DS2_ParseFaceList_TTSurfaceTTEntityi(struct openb3d_openb3dcore_T3DS2_obj* o,struct openb3d_openb3dcore_TSurface_obj* bbt_surface,struct openb3d_openb3dcore_TEntity_obj* bbt_parent,BBINT bbt_endchunk){
	((struct openb3d_openb3dcore_T3DS2_obj*)bbNullObjectTest((BBObject*)o));
	BBSHORT bbt_count=0;
	struct BBDebugScope_5 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"ParseFaceList",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":T3DS2",
				.var_address=&o
			},
			{
				BBDEBUGDECL_LOCAL,
				"surface",
				":TSurface",
				.var_address=&bbt_surface
			},
			{
				BBDEBUGDECL_LOCAL,
				"parent",
				":TEntity",
				.var_address=&bbt_parent
			},
			{
				BBDEBUGDECL_LOCAL,
				"endchunk",
				"i",
				.var_address=&bbt_endchunk
			},
			{
				BBDEBUGDECL_LOCAL,
				"count",
				"s",
				.var_address=&bbt_count
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x5661fee21fff696c, 254, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbt_count=((BBSHORT)((struct brl_stream_TStream_obj*)bbNullObjectTest((BBObject*)((struct openb3d_openb3dcore_T3DS2_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_t3ds2_stream ))->clas->m_ReadShort((struct brl_stream_TStream_obj*)((struct openb3d_openb3dcore_T3DS2_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_t3ds2_stream ));
	struct BBDebugStm __stmt_1 = {0x5661fee21fff696c, 255, 0};
	bbOnDebugEnterStm(&__stmt_1);
	{
		BBINT bbt_id=0;
		BBINT bbt_=((BBINT)bbt_count);
		for(;(bbt_id<bbt_);bbt_id=(bbt_id+1)){
			BBINT bbt_v0=0;
			BBINT bbt_v1=0;
			BBINT bbt_v2=0;
			BBSHORT bbt_face_flags=0;
			struct BBDebugScope_5 __scope = {
				BBDEBUGSCOPE_LOCALBLOCK,
				0,
				{
					{
						BBDEBUGDECL_LOCAL,
						"id",
						"i",
						.var_address=&bbt_id
					},
					{
						BBDEBUGDECL_LOCAL,
						"v0",
						"i",
						.var_address=&bbt_v0
					},
					{
						BBDEBUGDECL_LOCAL,
						"v1",
						"i",
						.var_address=&bbt_v1
					},
					{
						BBDEBUGDECL_LOCAL,
						"v2",
						"i",
						.var_address=&bbt_v2
					},
					{
						BBDEBUGDECL_LOCAL,
						"face_flags",
						"s",
						.var_address=&bbt_face_flags
					},
					{
						BBDEBUGDECL_END
					}
				}
			};
			bbOnDebugEnterScope((BBDebugScope *)&__scope);
			struct BBDebugStm __stmt_0 = {0x5661fee21fff696c, 256, 0};
			bbOnDebugEnterStm(&__stmt_0);
			bbt_v0=((struct brl_stream_TStream_obj*)bbNullObjectTest((BBObject*)((struct openb3d_openb3dcore_T3DS2_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_t3ds2_stream ))->clas->m_ReadShort((struct brl_stream_TStream_obj*)((struct openb3d_openb3dcore_T3DS2_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_t3ds2_stream );
			struct BBDebugStm __stmt_1 = {0x5661fee21fff696c, 257, 0};
			bbOnDebugEnterStm(&__stmt_1);
			bbt_v1=((struct brl_stream_TStream_obj*)bbNullObjectTest((BBObject*)((struct openb3d_openb3dcore_T3DS2_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_t3ds2_stream ))->clas->m_ReadShort((struct brl_stream_TStream_obj*)((struct openb3d_openb3dcore_T3DS2_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_t3ds2_stream );
			struct BBDebugStm __stmt_2 = {0x5661fee21fff696c, 258, 0};
			bbOnDebugEnterStm(&__stmt_2);
			bbt_v2=((struct brl_stream_TStream_obj*)bbNullObjectTest((BBObject*)((struct openb3d_openb3dcore_T3DS2_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_t3ds2_stream ))->clas->m_ReadShort((struct brl_stream_TStream_obj*)((struct openb3d_openb3dcore_T3DS2_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_t3ds2_stream );
			struct BBDebugStm __stmt_3 = {0x5661fee21fff696c, 259, 0};
			bbOnDebugEnterStm(&__stmt_3);
			bbt_face_flags=((BBSHORT)((struct brl_stream_TStream_obj*)bbNullObjectTest((BBObject*)((struct openb3d_openb3dcore_T3DS2_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_t3ds2_stream ))->clas->m_ReadShort((struct brl_stream_TStream_obj*)((struct openb3d_openb3dcore_T3DS2_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_t3ds2_stream ));
			struct BBDebugStm __stmt_4 = {0x5661fee21fff696c, 261, 0};
			bbOnDebugEnterStm(&__stmt_4);
			((struct openb3d_openb3dcore_TSurface_obj*)bbNullObjectTest((BBObject*)bbt_surface))->clas->m_AddTriangle_iii((struct openb3d_openb3dcore_TSurface_obj*)bbt_surface,bbt_v2,bbt_v1,bbt_v0);
			bbOnDebugLeaveScope();
		}
	}
	struct BBDebugStm __stmt_2 = {0x5661fee21fff696c, 264, 0};
	bbOnDebugEnterStm(&__stmt_2);
	while(brl_stream_StreamPos((struct brl_stream_TStream_obj*)((struct openb3d_openb3dcore_T3DS2_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_t3ds2_stream )<((BBLONG)bbt_endchunk)){
		struct openb3d_openb3dcore_TChunk_obj* bbt_chunk=(struct openb3d_openb3dcore_TChunk_obj*)((struct openb3d_openb3dcore_TChunk_obj*)&bbNullObject);
		struct BBDebugScope_1 __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_LOCAL,
					"chunk",
					":TChunk",
					.var_address=&bbt_chunk
				},
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x5661fee21fff696c, 265, 0};
		bbOnDebugEnterStm(&__stmt_0);
		((struct openb3d_openb3dcore_T3DS2_obj*)bbNullObjectTest((BBObject*)o));
		bbt_chunk=(struct openb3d_openb3dcore_TChunk_obj*)((struct openb3d_openb3dcore_T3DS2_obj*)o)->clas->m_ReadChunk((struct openb3d_openb3dcore_T3DS2_obj*)o);
		struct BBDebugStm __stmt_1 = {0x5661fee21fff696c, 266, 0};
		bbOnDebugEnterStm(&__stmt_1);
		if(((struct openb3d_openb3dcore_TChunk_obj*)bbNullObjectTest((BBObject*)bbt_chunk))->_openb3d_openb3dcore_tchunk_id ==0){
			struct BBDebugScope __scope = {
				BBDEBUGSCOPE_LOCALBLOCK,
				0,
				{
					{
						BBDEBUGDECL_END
					}
				}
			};
			bbOnDebugEnterScope((BBDebugScope *)&__scope);
			struct BBDebugStm __stmt_0 = {0x5661fee21fff696c, 266, 0};
			bbOnDebugEnterStm(&__stmt_0);
			bbOnDebugLeaveScope();
			bbOnDebugLeaveScope();
			break;
		}
		struct BBDebugStm __stmt_2 = {0x5661fee21fff696c, 268, 0};
		bbOnDebugEnterStm(&__stmt_2);
		BBINT bbt_2=((struct openb3d_openb3dcore_TChunk_obj*)bbNullObjectTest((BBObject*)bbt_chunk))->_openb3d_openb3dcore_tchunk_id ;
		struct BBDebugStm __stmt_3 = {0x5661fee21fff696c, 269, 0};
		bbOnDebugEnterStm(&__stmt_3);
		if(bbt_2==16688){
			struct BBDebugScope __scope = {
				BBDEBUGSCOPE_LOCALBLOCK,
				0,
				{
					{
						BBDEBUGDECL_END
					}
				}
			};
			bbOnDebugEnterScope((BBDebugScope *)&__scope);
			struct BBDebugStm __stmt_0 = {0x5661fee21fff696c, 270, 0};
			bbOnDebugEnterStm(&__stmt_0);
			if(openb3d_openb3dcore_TGlobal3D_Log_3DS!=0){
				struct BBDebugScope __scope = {
					BBDEBUGSCOPE_LOCALBLOCK,
					0,
					{
						{
							BBDEBUGDECL_END
						}
					}
				};
				bbOnDebugEnterScope((BBDebugScope *)&__scope);
				struct BBDebugStm __stmt_0 = {0x5661fee21fff696c, 270, 0};
				bbOnDebugEnterStm(&__stmt_0);
				brl_blitz_DebugLog((BBString*)&_s528);
				bbOnDebugLeaveScope();
			}
			struct BBDebugStm __stmt_1 = {0x5661fee21fff696c, 271, 0};
			bbOnDebugEnterStm(&__stmt_1);
			((struct openb3d_openb3dcore_T3DS2_obj*)bbNullObjectTest((BBObject*)o));
			((struct openb3d_openb3dcore_T3DS2_obj*)o)->clas->m_ParseFaceMatList_TTSurfaceTTEntity((struct openb3d_openb3dcore_T3DS2_obj*)o,(struct openb3d_openb3dcore_TSurface_obj*)bbt_surface,(struct openb3d_openb3dcore_TEntity_obj*)bbt_parent);
			bbOnDebugLeaveScope();
		}else{
			struct BBDebugScope __scope = {
				BBDEBUGSCOPE_LOCALBLOCK,
				0,
				{
					{
						BBDEBUGDECL_END
					}
				}
			};
			bbOnDebugEnterScope((BBDebugScope *)&__scope);
			struct BBDebugStm __stmt_0 = {0x5661fee21fff696c, 278, 0};
			bbOnDebugEnterStm(&__stmt_0);
			brl_stream_SeekStream((struct brl_stream_TStream_obj*)((struct openb3d_openb3dcore_T3DS2_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_t3ds2_stream ,((BBLONG)((struct openb3d_openb3dcore_TChunk_obj*)bbNullObjectTest((BBObject*)bbt_chunk))->_openb3d_openb3dcore_tchunk_endchunk ),0);
			bbOnDebugLeaveScope();
		}
		bbOnDebugLeaveScope();
	}
	struct BBDebugStm __stmt_3 = {0x5661fee21fff696c, 282, 0};
	bbOnDebugEnterStm(&__stmt_3);
	bbOnDebugLeaveScope();
	return bbt_count;
}
BBSTRING _openb3d_openb3dcore_T3DS2_ParseMap_TTEntityi(struct openb3d_openb3dcore_T3DS2_obj* o,struct openb3d_openb3dcore_TEntity_obj* bbt_parent,BBINT bbt_endchunk){
	((struct openb3d_openb3dcore_T3DS2_obj*)bbNullObjectTest((BBObject*)o));
	BBSTRING bbt_texname=(&bbEmptyString);
	struct openb3d_openb3dcore_TTexture_obj* bbt_tex=(struct openb3d_openb3dcore_TTexture_obj*)((struct openb3d_openb3dcore_TTexture_obj*)&bbNullObject);
	BBFLOAT bbt_val=0;
	struct BBDebugScope_6 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"ParseMap",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":T3DS2",
				.var_address=&o
			},
			{
				BBDEBUGDECL_LOCAL,
				"parent",
				":TEntity",
				.var_address=&bbt_parent
			},
			{
				BBDEBUGDECL_LOCAL,
				"endchunk",
				"i",
				.var_address=&bbt_endchunk
			},
			{
				BBDEBUGDECL_LOCAL,
				"texname",
				"$",
				.var_address=&bbt_texname
			},
			{
				BBDEBUGDECL_LOCAL,
				"tex",
				":TTexture",
				.var_address=&bbt_tex
			},
			{
				BBDEBUGDECL_LOCAL,
				"val",
				"f",
				.var_address=&bbt_val
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x5661fee21fff696c, 286, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbt_texname=((BBString*)&bbEmptyString);
	struct BBDebugStm __stmt_1 = {0x5661fee21fff696c, 286, 0};
	bbOnDebugEnterStm(&__stmt_1);
	bbt_tex=(struct openb3d_openb3dcore_TTexture_obj*)((struct openb3d_openb3dcore_TTexture_obj*)&bbNullObject);
	struct BBDebugStm __stmt_2 = {0x5661fee21fff696c, 286, 0};
	bbOnDebugEnterStm(&__stmt_2);
	bbt_val=.00000000f;
	struct BBDebugStm __stmt_3 = {0x5661fee21fff696c, 288, 0};
	bbOnDebugEnterStm(&__stmt_3);
	while(brl_stream_StreamPos((struct brl_stream_TStream_obj*)((struct openb3d_openb3dcore_T3DS2_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_t3ds2_stream )<((BBLONG)bbt_endchunk)){
		struct openb3d_openb3dcore_TChunk_obj* bbt_chunk=(struct openb3d_openb3dcore_TChunk_obj*)((struct openb3d_openb3dcore_TChunk_obj*)&bbNullObject);
		struct BBDebugScope_1 __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_LOCAL,
					"chunk",
					":TChunk",
					.var_address=&bbt_chunk
				},
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x5661fee21fff696c, 289, 0};
		bbOnDebugEnterStm(&__stmt_0);
		((struct openb3d_openb3dcore_T3DS2_obj*)bbNullObjectTest((BBObject*)o));
		bbt_chunk=(struct openb3d_openb3dcore_TChunk_obj*)((struct openb3d_openb3dcore_T3DS2_obj*)o)->clas->m_ReadChunk((struct openb3d_openb3dcore_T3DS2_obj*)o);
		struct BBDebugStm __stmt_1 = {0x5661fee21fff696c, 290, 0};
		bbOnDebugEnterStm(&__stmt_1);
		if(((struct openb3d_openb3dcore_TChunk_obj*)bbNullObjectTest((BBObject*)bbt_chunk))->_openb3d_openb3dcore_tchunk_id ==0){
			struct BBDebugScope __scope = {
				BBDEBUGSCOPE_LOCALBLOCK,
				0,
				{
					{
						BBDEBUGDECL_END
					}
				}
			};
			bbOnDebugEnterScope((BBDebugScope *)&__scope);
			struct BBDebugStm __stmt_0 = {0x5661fee21fff696c, 290, 0};
			bbOnDebugEnterStm(&__stmt_0);
			bbOnDebugLeaveScope();
			bbOnDebugLeaveScope();
			break;
		}
		struct BBDebugStm __stmt_2 = {0x5661fee21fff696c, 292, 0};
		bbOnDebugEnterStm(&__stmt_2);
		BBINT bbt_=((struct openb3d_openb3dcore_TChunk_obj*)bbNullObjectTest((BBObject*)bbt_chunk))->_openb3d_openb3dcore_tchunk_id ;
		struct BBDebugStm __stmt_3 = {0x5661fee21fff696c, 293, 0};
		bbOnDebugEnterStm(&__stmt_3);
		if(bbt_==41728){
			struct BBDebugScope __scope = {
				BBDEBUGSCOPE_LOCALBLOCK,
				0,
				{
					{
						BBDEBUGDECL_END
					}
				}
			};
			bbOnDebugEnterScope((BBDebugScope *)&__scope);
			struct BBDebugStm __stmt_0 = {0x5661fee21fff696c, 294, 0};
			bbOnDebugEnterStm(&__stmt_0);
			((struct openb3d_openb3dcore_T3DS2_obj*)bbNullObjectTest((BBObject*)o));
			bbt_texname=((struct openb3d_openb3dcore_T3DS2_obj*)o)->clas->m_ParseString((struct openb3d_openb3dcore_T3DS2_obj*)o);
			struct BBDebugStm __stmt_1 = {0x5661fee21fff696c, 295, 0};
			bbOnDebugEnterStm(&__stmt_1);
			if(openb3d_openb3dcore_TGlobal3D_Log_3DS!=0){
				struct BBDebugScope __scope = {
					BBDEBUGSCOPE_LOCALBLOCK,
					0,
					{
						{
							BBDEBUGDECL_END
						}
					}
				};
				bbOnDebugEnterScope((BBDebugScope *)&__scope);
				struct BBDebugStm __stmt_0 = {0x5661fee21fff696c, 295, 0};
				bbOnDebugEnterStm(&__stmt_0);
				brl_blitz_DebugLog(bbStringConcat(((BBString*)&_s529),bbt_texname));
				bbOnDebugLeaveScope();
			}
			bbOnDebugLeaveScope();
		}else{
			struct BBDebugScope __scope = {
				BBDEBUGSCOPE_LOCALBLOCK,
				0,
				{
					{
						BBDEBUGDECL_END
					}
				}
			};
			bbOnDebugEnterScope((BBDebugScope *)&__scope);
			struct BBDebugStm __stmt_0 = {0x5661fee21fff696c, 309, 0};
			bbOnDebugEnterStm(&__stmt_0);
			if(bbt_==41812){
				struct BBDebugScope __scope = {
					BBDEBUGSCOPE_LOCALBLOCK,
					0,
					{
						{
							BBDEBUGDECL_END
						}
					}
				};
				bbOnDebugEnterScope((BBDebugScope *)&__scope);
				struct BBDebugStm __stmt_0 = {0x5661fee21fff696c, 310, 0};
				bbOnDebugEnterStm(&__stmt_0);
				bbt_val=((struct brl_stream_TStream_obj*)bbNullObjectTest((BBObject*)((struct openb3d_openb3dcore_T3DS2_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_t3ds2_stream ))->clas->m_ReadFloat((struct brl_stream_TStream_obj*)((struct openb3d_openb3dcore_T3DS2_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_t3ds2_stream );
				struct BBDebugStm __stmt_1 = {0x5661fee21fff696c, 311, 0};
				bbOnDebugEnterStm(&__stmt_1);
				bbt_tex=(struct openb3d_openb3dcore_TTexture_obj*)((struct openb3d_openb3dcore_TTexture_obj*)bbObjectDowncast((BBOBJECT)brl_map_MapValueForKey((struct brl_map_TMap_obj*)((struct openb3d_openb3dcore_T3DS2_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_t3ds2_materialmap ,(BBOBJECT)bbt_texname),(BBClass*)&openb3d_openb3dcore_TTexture));
				struct BBDebugStm __stmt_2 = {0x5661fee21fff696c, 312, 0};
				bbOnDebugEnterStm(&__stmt_2);
				if(((BBOBJECT)bbt_tex)!=&bbNullObject){
					struct BBDebugScope __scope = {
						BBDEBUGSCOPE_LOCALBLOCK,
						0,
						{
							{
								BBDEBUGDECL_END
							}
						}
					};
					bbOnDebugEnterScope((BBDebugScope *)&__scope);
					struct BBDebugStm __stmt_0 = {0x5661fee21fff696c, 312, 0};
					bbOnDebugEnterStm(&__stmt_0);
					((struct openb3d_openb3dcore_TTexture_obj*)bbNullObjectTest((BBObject*)bbt_tex))->_openb3d_openb3dcore_ttexture_v_scale [0]=bbt_val;
					bbOnDebugLeaveScope();
				}
				struct BBDebugStm __stmt_3 = {0x5661fee21fff696c, 313, 0};
				bbOnDebugEnterStm(&__stmt_3);
				if(openb3d_openb3dcore_TGlobal3D_Log_3DS!=0){
					struct BBDebugScope __scope = {
						BBDEBUGSCOPE_LOCALBLOCK,
						0,
						{
							{
								BBDEBUGDECL_END
							}
						}
					};
					bbOnDebugEnterScope((BBDebugScope *)&__scope);
					struct BBDebugStm __stmt_0 = {0x5661fee21fff696c, 313, 0};
					bbOnDebugEnterStm(&__stmt_0);
					brl_blitz_DebugLog(bbStringConcat(((BBString*)&_s530),bbStringFromFloat(bbt_val)));
					bbOnDebugLeaveScope();
				}
				bbOnDebugLeaveScope();
			}else{
				struct BBDebugScope __scope = {
					BBDEBUGSCOPE_LOCALBLOCK,
					0,
					{
						{
							BBDEBUGDECL_END
						}
					}
				};
				bbOnDebugEnterScope((BBDebugScope *)&__scope);
				struct BBDebugStm __stmt_0 = {0x5661fee21fff696c, 315, 0};
				bbOnDebugEnterStm(&__stmt_0);
				if(bbt_==41814){
					struct BBDebugScope __scope = {
						BBDEBUGSCOPE_LOCALBLOCK,
						0,
						{
							{
								BBDEBUGDECL_END
							}
						}
					};
					bbOnDebugEnterScope((BBDebugScope *)&__scope);
					struct BBDebugStm __stmt_0 = {0x5661fee21fff696c, 316, 0};
					bbOnDebugEnterStm(&__stmt_0);
					bbt_val=((struct brl_stream_TStream_obj*)bbNullObjectTest((BBObject*)((struct openb3d_openb3dcore_T3DS2_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_t3ds2_stream ))->clas->m_ReadFloat((struct brl_stream_TStream_obj*)((struct openb3d_openb3dcore_T3DS2_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_t3ds2_stream );
					struct BBDebugStm __stmt_1 = {0x5661fee21fff696c, 317, 0};
					bbOnDebugEnterStm(&__stmt_1);
					bbt_tex=(struct openb3d_openb3dcore_TTexture_obj*)((struct openb3d_openb3dcore_TTexture_obj*)bbObjectDowncast((BBOBJECT)brl_map_MapValueForKey((struct brl_map_TMap_obj*)((struct openb3d_openb3dcore_T3DS2_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_t3ds2_materialmap ,(BBOBJECT)bbt_texname),(BBClass*)&openb3d_openb3dcore_TTexture));
					struct BBDebugStm __stmt_2 = {0x5661fee21fff696c, 318, 0};
					bbOnDebugEnterStm(&__stmt_2);
					if(((BBOBJECT)bbt_tex)!=&bbNullObject){
						struct BBDebugScope __scope = {
							BBDEBUGSCOPE_LOCALBLOCK,
							0,
							{
								{
									BBDEBUGDECL_END
								}
							}
						};
						bbOnDebugEnterScope((BBDebugScope *)&__scope);
						struct BBDebugStm __stmt_0 = {0x5661fee21fff696c, 318, 0};
						bbOnDebugEnterStm(&__stmt_0);
						((struct openb3d_openb3dcore_TTexture_obj*)bbNullObjectTest((BBObject*)bbt_tex))->_openb3d_openb3dcore_ttexture_u_scale [0]=bbt_val;
						bbOnDebugLeaveScope();
					}
					struct BBDebugStm __stmt_3 = {0x5661fee21fff696c, 319, 0};
					bbOnDebugEnterStm(&__stmt_3);
					if(openb3d_openb3dcore_TGlobal3D_Log_3DS!=0){
						struct BBDebugScope __scope = {
							BBDEBUGSCOPE_LOCALBLOCK,
							0,
							{
								{
									BBDEBUGDECL_END
								}
							}
						};
						bbOnDebugEnterScope((BBDebugScope *)&__scope);
						struct BBDebugStm __stmt_0 = {0x5661fee21fff696c, 319, 0};
						bbOnDebugEnterStm(&__stmt_0);
						brl_blitz_DebugLog(bbStringConcat(((BBString*)&_s531),bbStringFromFloat(bbt_val)));
						bbOnDebugLeaveScope();
					}
					bbOnDebugLeaveScope();
				}else{
					struct BBDebugScope __scope = {
						BBDEBUGSCOPE_LOCALBLOCK,
						0,
						{
							{
								BBDEBUGDECL_END
							}
						}
					};
					bbOnDebugEnterScope((BBDebugScope *)&__scope);
					struct BBDebugStm __stmt_0 = {0x5661fee21fff696c, 321, 0};
					bbOnDebugEnterStm(&__stmt_0);
					if(bbt_==41816){
						struct BBDebugScope __scope = {
							BBDEBUGSCOPE_LOCALBLOCK,
							0,
							{
								{
									BBDEBUGDECL_END
								}
							}
						};
						bbOnDebugEnterScope((BBDebugScope *)&__scope);
						struct BBDebugStm __stmt_0 = {0x5661fee21fff696c, 322, 0};
						bbOnDebugEnterStm(&__stmt_0);
						bbt_val=((struct brl_stream_TStream_obj*)bbNullObjectTest((BBObject*)((struct openb3d_openb3dcore_T3DS2_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_t3ds2_stream ))->clas->m_ReadFloat((struct brl_stream_TStream_obj*)((struct openb3d_openb3dcore_T3DS2_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_t3ds2_stream );
						struct BBDebugStm __stmt_1 = {0x5661fee21fff696c, 323, 0};
						bbOnDebugEnterStm(&__stmt_1);
						bbt_tex=(struct openb3d_openb3dcore_TTexture_obj*)((struct openb3d_openb3dcore_TTexture_obj*)bbObjectDowncast((BBOBJECT)brl_map_MapValueForKey((struct brl_map_TMap_obj*)((struct openb3d_openb3dcore_T3DS2_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_t3ds2_materialmap ,(BBOBJECT)bbt_texname),(BBClass*)&openb3d_openb3dcore_TTexture));
						struct BBDebugStm __stmt_2 = {0x5661fee21fff696c, 324, 0};
						bbOnDebugEnterStm(&__stmt_2);
						if(((BBOBJECT)bbt_tex)!=&bbNullObject){
							struct BBDebugScope __scope = {
								BBDEBUGSCOPE_LOCALBLOCK,
								0,
								{
									{
										BBDEBUGDECL_END
									}
								}
							};
							bbOnDebugEnterScope((BBDebugScope *)&__scope);
							struct BBDebugStm __stmt_0 = {0x5661fee21fff696c, 324, 0};
							bbOnDebugEnterStm(&__stmt_0);
							((struct openb3d_openb3dcore_TTexture_obj*)bbNullObjectTest((BBObject*)bbt_tex))->_openb3d_openb3dcore_ttexture_u_pos [0]=bbt_val;
							bbOnDebugLeaveScope();
						}
						struct BBDebugStm __stmt_3 = {0x5661fee21fff696c, 325, 0};
						bbOnDebugEnterStm(&__stmt_3);
						if(openb3d_openb3dcore_TGlobal3D_Log_3DS!=0){
							struct BBDebugScope __scope = {
								BBDEBUGSCOPE_LOCALBLOCK,
								0,
								{
									{
										BBDEBUGDECL_END
									}
								}
							};
							bbOnDebugEnterScope((BBDebugScope *)&__scope);
							struct BBDebugStm __stmt_0 = {0x5661fee21fff696c, 325, 0};
							bbOnDebugEnterStm(&__stmt_0);
							brl_blitz_DebugLog(bbStringConcat(((BBString*)&_s532),bbStringFromFloat(bbt_val)));
							bbOnDebugLeaveScope();
						}
						bbOnDebugLeaveScope();
					}else{
						struct BBDebugScope __scope = {
							BBDEBUGSCOPE_LOCALBLOCK,
							0,
							{
								{
									BBDEBUGDECL_END
								}
							}
						};
						bbOnDebugEnterScope((BBDebugScope *)&__scope);
						struct BBDebugStm __stmt_0 = {0x5661fee21fff696c, 327, 0};
						bbOnDebugEnterStm(&__stmt_0);
						if(bbt_==41818){
							struct BBDebugScope __scope = {
								BBDEBUGSCOPE_LOCALBLOCK,
								0,
								{
									{
										BBDEBUGDECL_END
									}
								}
							};
							bbOnDebugEnterScope((BBDebugScope *)&__scope);
							struct BBDebugStm __stmt_0 = {0x5661fee21fff696c, 328, 0};
							bbOnDebugEnterStm(&__stmt_0);
							bbt_val=((struct brl_stream_TStream_obj*)bbNullObjectTest((BBObject*)((struct openb3d_openb3dcore_T3DS2_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_t3ds2_stream ))->clas->m_ReadFloat((struct brl_stream_TStream_obj*)((struct openb3d_openb3dcore_T3DS2_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_t3ds2_stream );
							struct BBDebugStm __stmt_1 = {0x5661fee21fff696c, 329, 0};
							bbOnDebugEnterStm(&__stmt_1);
							bbt_tex=(struct openb3d_openb3dcore_TTexture_obj*)((struct openb3d_openb3dcore_TTexture_obj*)bbObjectDowncast((BBOBJECT)brl_map_MapValueForKey((struct brl_map_TMap_obj*)((struct openb3d_openb3dcore_T3DS2_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_t3ds2_materialmap ,(BBOBJECT)bbt_texname),(BBClass*)&openb3d_openb3dcore_TTexture));
							struct BBDebugStm __stmt_2 = {0x5661fee21fff696c, 330, 0};
							bbOnDebugEnterStm(&__stmt_2);
							if(((BBOBJECT)bbt_tex)!=&bbNullObject){
								struct BBDebugScope __scope = {
									BBDEBUGSCOPE_LOCALBLOCK,
									0,
									{
										{
											BBDEBUGDECL_END
										}
									}
								};
								bbOnDebugEnterScope((BBDebugScope *)&__scope);
								struct BBDebugStm __stmt_0 = {0x5661fee21fff696c, 330, 0};
								bbOnDebugEnterStm(&__stmt_0);
								((struct openb3d_openb3dcore_TTexture_obj*)bbNullObjectTest((BBObject*)bbt_tex))->_openb3d_openb3dcore_ttexture_v_pos [0]=bbt_val;
								bbOnDebugLeaveScope();
							}
							struct BBDebugStm __stmt_3 = {0x5661fee21fff696c, 331, 0};
							bbOnDebugEnterStm(&__stmt_3);
							if(openb3d_openb3dcore_TGlobal3D_Log_3DS!=0){
								struct BBDebugScope __scope = {
									BBDEBUGSCOPE_LOCALBLOCK,
									0,
									{
										{
											BBDEBUGDECL_END
										}
									}
								};
								bbOnDebugEnterScope((BBDebugScope *)&__scope);
								struct BBDebugStm __stmt_0 = {0x5661fee21fff696c, 331, 0};
								bbOnDebugEnterStm(&__stmt_0);
								brl_blitz_DebugLog(bbStringConcat(((BBString*)&_s533),bbStringFromFloat(bbt_val)));
								bbOnDebugLeaveScope();
							}
							bbOnDebugLeaveScope();
						}else{
							struct BBDebugScope __scope = {
								BBDEBUGSCOPE_LOCALBLOCK,
								0,
								{
									{
										BBDEBUGDECL_END
									}
								}
							};
							bbOnDebugEnterScope((BBDebugScope *)&__scope);
							struct BBDebugStm __stmt_0 = {0x5661fee21fff696c, 333, 0};
							bbOnDebugEnterStm(&__stmt_0);
							if(bbt_==41820){
								struct BBDebugScope __scope = {
									BBDEBUGSCOPE_LOCALBLOCK,
									0,
									{
										{
											BBDEBUGDECL_END
										}
									}
								};
								bbOnDebugEnterScope((BBDebugScope *)&__scope);
								struct BBDebugStm __stmt_0 = {0x5661fee21fff696c, 334, 0};
								bbOnDebugEnterStm(&__stmt_0);
								bbt_val=((struct brl_stream_TStream_obj*)bbNullObjectTest((BBObject*)((struct openb3d_openb3dcore_T3DS2_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_t3ds2_stream ))->clas->m_ReadFloat((struct brl_stream_TStream_obj*)((struct openb3d_openb3dcore_T3DS2_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_t3ds2_stream );
								struct BBDebugStm __stmt_1 = {0x5661fee21fff696c, 335, 0};
								bbOnDebugEnterStm(&__stmt_1);
								bbt_tex=(struct openb3d_openb3dcore_TTexture_obj*)((struct openb3d_openb3dcore_TTexture_obj*)bbObjectDowncast((BBOBJECT)brl_map_MapValueForKey((struct brl_map_TMap_obj*)((struct openb3d_openb3dcore_T3DS2_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_t3ds2_materialmap ,(BBOBJECT)bbt_texname),(BBClass*)&openb3d_openb3dcore_TTexture));
								struct BBDebugStm __stmt_2 = {0x5661fee21fff696c, 336, 0};
								bbOnDebugEnterStm(&__stmt_2);
								if(((BBOBJECT)bbt_tex)!=&bbNullObject){
									struct BBDebugScope __scope = {
										BBDEBUGSCOPE_LOCALBLOCK,
										0,
										{
											{
												BBDEBUGDECL_END
											}
										}
									};
									bbOnDebugEnterScope((BBDebugScope *)&__scope);
									struct BBDebugStm __stmt_0 = {0x5661fee21fff696c, 336, 0};
									bbOnDebugEnterStm(&__stmt_0);
									((struct openb3d_openb3dcore_TTexture_obj*)bbNullObjectTest((BBObject*)bbt_tex))->_openb3d_openb3dcore_ttexture_angle [0]=bbt_val;
									bbOnDebugLeaveScope();
								}
								struct BBDebugStm __stmt_3 = {0x5661fee21fff696c, 337, 0};
								bbOnDebugEnterStm(&__stmt_3);
								if(openb3d_openb3dcore_TGlobal3D_Log_3DS!=0){
									struct BBDebugScope __scope = {
										BBDEBUGSCOPE_LOCALBLOCK,
										0,
										{
											{
												BBDEBUGDECL_END
											}
										}
									};
									bbOnDebugEnterScope((BBDebugScope *)&__scope);
									struct BBDebugStm __stmt_0 = {0x5661fee21fff696c, 337, 0};
									bbOnDebugEnterStm(&__stmt_0);
									brl_blitz_DebugLog(bbStringConcat(((BBString*)&_s534),bbStringFromFloat(bbt_val)));
									bbOnDebugLeaveScope();
								}
								bbOnDebugLeaveScope();
							}else{
								struct BBDebugScope __scope = {
									BBDEBUGSCOPE_LOCALBLOCK,
									0,
									{
										{
											BBDEBUGDECL_END
										}
									}
								};
								bbOnDebugEnterScope((BBDebugScope *)&__scope);
								struct BBDebugStm __stmt_0 = {0x5661fee21fff696c, 360, 0};
								bbOnDebugEnterStm(&__stmt_0);
								brl_stream_SeekStream((struct brl_stream_TStream_obj*)((struct openb3d_openb3dcore_T3DS2_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_t3ds2_stream ,((BBLONG)((struct openb3d_openb3dcore_TChunk_obj*)bbNullObjectTest((BBObject*)bbt_chunk))->_openb3d_openb3dcore_tchunk_endchunk ),0);
								bbOnDebugLeaveScope();
							}
							bbOnDebugLeaveScope();
						}
						bbOnDebugLeaveScope();
					}
					bbOnDebugLeaveScope();
				}
				bbOnDebugLeaveScope();
			}
			bbOnDebugLeaveScope();
		}
		bbOnDebugLeaveScope();
	}
	struct BBDebugStm __stmt_4 = {0x5661fee21fff696c, 364, 0};
	bbOnDebugEnterStm(&__stmt_4);
	bbOnDebugLeaveScope();
	return bbt_texname;
}
BBINT _openb3d_openb3dcore_T3DS2_ParseTriMesh_TTMeshTTEntityi(struct openb3d_openb3dcore_T3DS2_obj* o,struct openb3d_openb3dcore_TMesh_obj* bbt_mesh,struct openb3d_openb3dcore_TEntity_obj* bbt_parent,BBINT bbt_endchunk){
	((struct openb3d_openb3dcore_T3DS2_obj*)bbNullObjectTest((BBObject*)o));
	BBSHORT bbt_count=0;
	struct openb3d_openb3dcore_TSurface_obj* bbt_surface=(struct openb3d_openb3dcore_TSurface_obj*)((struct openb3d_openb3dcore_TSurface_obj*)&bbNullObject);
	struct openb3d_openb3dcore_TMatPtr_obj* bbt_matrix=(struct openb3d_openb3dcore_TMatPtr_obj*)((struct openb3d_openb3dcore_TMatPtr_obj*)&bbNullObject);
	struct BBDebugScope_7 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"ParseTriMesh",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":T3DS2",
				.var_address=&o
			},
			{
				BBDEBUGDECL_LOCAL,
				"mesh",
				":TMesh",
				.var_address=&bbt_mesh
			},
			{
				BBDEBUGDECL_LOCAL,
				"parent",
				":TEntity",
				.var_address=&bbt_parent
			},
			{
				BBDEBUGDECL_LOCAL,
				"endchunk",
				"i",
				.var_address=&bbt_endchunk
			},
			{
				BBDEBUGDECL_LOCAL,
				"count",
				"s",
				.var_address=&bbt_count
			},
			{
				BBDEBUGDECL_LOCAL,
				"surface",
				":TSurface",
				.var_address=&bbt_surface
			},
			{
				BBDEBUGDECL_LOCAL,
				"matrix",
				":TMatPtr",
				.var_address=&bbt_matrix
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x5661fee21fff696c, 368, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbt_count=0;
	struct BBDebugStm __stmt_1 = {0x5661fee21fff696c, 368, 0};
	bbOnDebugEnterStm(&__stmt_1);
	bbt_surface=(struct openb3d_openb3dcore_TSurface_obj*)&bbNullObject;
	struct BBDebugStm __stmt_2 = {0x5661fee21fff696c, 369, 0};
	bbOnDebugEnterStm(&__stmt_2);
	bbt_matrix=(struct openb3d_openb3dcore_TMatPtr_obj*)&bbNullObject;
	struct BBDebugStm __stmt_3 = {0x5661fee21fff696c, 371, 0};
	bbOnDebugEnterStm(&__stmt_3);
	while(brl_stream_StreamPos((struct brl_stream_TStream_obj*)((struct openb3d_openb3dcore_T3DS2_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_t3ds2_stream )<((BBLONG)bbt_endchunk)){
		struct openb3d_openb3dcore_TChunk_obj* bbt_chunk=(struct openb3d_openb3dcore_TChunk_obj*)((struct openb3d_openb3dcore_TChunk_obj*)&bbNullObject);
		struct BBDebugScope_1 __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_LOCAL,
					"chunk",
					":TChunk",
					.var_address=&bbt_chunk
				},
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x5661fee21fff696c, 372, 0};
		bbOnDebugEnterStm(&__stmt_0);
		((struct openb3d_openb3dcore_T3DS2_obj*)bbNullObjectTest((BBObject*)o));
		bbt_chunk=(struct openb3d_openb3dcore_TChunk_obj*)((struct openb3d_openb3dcore_T3DS2_obj*)o)->clas->m_ReadChunk((struct openb3d_openb3dcore_T3DS2_obj*)o);
		struct BBDebugStm __stmt_1 = {0x5661fee21fff696c, 373, 0};
		bbOnDebugEnterStm(&__stmt_1);
		if(((struct openb3d_openb3dcore_TChunk_obj*)bbNullObjectTest((BBObject*)bbt_chunk))->_openb3d_openb3dcore_tchunk_id ==0){
			struct BBDebugScope __scope = {
				BBDEBUGSCOPE_LOCALBLOCK,
				0,
				{
					{
						BBDEBUGDECL_END
					}
				}
			};
			bbOnDebugEnterScope((BBDebugScope *)&__scope);
			struct BBDebugStm __stmt_0 = {0x5661fee21fff696c, 373, 0};
			bbOnDebugEnterStm(&__stmt_0);
			bbOnDebugLeaveScope();
			bbOnDebugLeaveScope();
			break;
		}
		struct BBDebugStm __stmt_2 = {0x5661fee21fff696c, 375, 0};
		bbOnDebugEnterStm(&__stmt_2);
		BBINT bbt_=((struct openb3d_openb3dcore_TChunk_obj*)bbNullObjectTest((BBObject*)bbt_chunk))->_openb3d_openb3dcore_tchunk_id ;
		struct BBDebugStm __stmt_3 = {0x5661fee21fff696c, 376, 0};
		bbOnDebugEnterStm(&__stmt_3);
		if(bbt_==16656){
			struct BBDebugScope __scope = {
				BBDEBUGSCOPE_LOCALBLOCK,
				0,
				{
					{
						BBDEBUGDECL_END
					}
				}
			};
			bbOnDebugEnterScope((BBDebugScope *)&__scope);
			struct BBDebugStm __stmt_0 = {0x5661fee21fff696c, 377, 0};
			bbOnDebugEnterStm(&__stmt_0);
			if(((BBOBJECT)bbt_surface)==&bbNullObject){
				struct BBDebugScope __scope = {
					BBDEBUGSCOPE_LOCALBLOCK,
					0,
					{
						{
							BBDEBUGDECL_END
						}
					}
				};
				bbOnDebugEnterScope((BBDebugScope *)&__scope);
				struct BBDebugStm __stmt_0 = {0x5661fee21fff696c, 377, 0};
				bbOnDebugEnterStm(&__stmt_0);
				bbt_surface=(struct openb3d_openb3dcore_TSurface_obj*)((struct openb3d_openb3dcore_TMesh_obj*)bbNullObjectTest((BBObject*)bbt_mesh))->clas->m_CreateSurface_TTBrush((struct openb3d_openb3dcore_TMesh_obj*)bbt_mesh,(struct openb3d_openb3dcore_TBrush_obj*)&bbNullObject);
				bbOnDebugLeaveScope();
			}
			struct BBDebugStm __stmt_1 = {0x5661fee21fff696c, 378, 0};
			bbOnDebugEnterStm(&__stmt_1);
			((struct openb3d_openb3dcore_T3DS2_obj*)bbNullObjectTest((BBObject*)o));
			bbt_count=((struct openb3d_openb3dcore_T3DS2_obj*)o)->clas->m_ParseVertexList_TTSurfaceTTEntity((struct openb3d_openb3dcore_T3DS2_obj*)o,(struct openb3d_openb3dcore_TSurface_obj*)bbt_surface,(struct openb3d_openb3dcore_TEntity_obj*)bbt_parent);
			struct BBDebugStm __stmt_2 = {0x5661fee21fff696c, 379, 0};
			bbOnDebugEnterStm(&__stmt_2);
			if(openb3d_openb3dcore_TGlobal3D_Log_3DS!=0){
				struct BBDebugScope __scope = {
					BBDEBUGSCOPE_LOCALBLOCK,
					0,
					{
						{
							BBDEBUGDECL_END
						}
					}
				};
				bbOnDebugEnterScope((BBDebugScope *)&__scope);
				struct BBDebugStm __stmt_0 = {0x5661fee21fff696c, 379, 0};
				bbOnDebugEnterStm(&__stmt_0);
				brl_blitz_DebugLog(bbStringConcat(((BBString*)&_s535),bbStringFromInt(bbt_count)));
				bbOnDebugLeaveScope();
			}
			bbOnDebugLeaveScope();
		}else{
			struct BBDebugScope __scope = {
				BBDEBUGSCOPE_LOCALBLOCK,
				0,
				{
					{
						BBDEBUGDECL_END
					}
				}
			};
			bbOnDebugEnterScope((BBDebugScope *)&__scope);
			struct BBDebugStm __stmt_0 = {0x5661fee21fff696c, 381, 0};
			bbOnDebugEnterStm(&__stmt_0);
			if(bbt_==16672){
				struct BBDebugScope __scope = {
					BBDEBUGSCOPE_LOCALBLOCK,
					0,
					{
						{
							BBDEBUGDECL_END
						}
					}
				};
				bbOnDebugEnterScope((BBDebugScope *)&__scope);
				struct BBDebugStm __stmt_0 = {0x5661fee21fff696c, 382, 0};
				bbOnDebugEnterStm(&__stmt_0);
				if(((BBOBJECT)bbt_surface)==&bbNullObject){
					struct BBDebugScope __scope = {
						BBDEBUGSCOPE_LOCALBLOCK,
						0,
						{
							{
								BBDEBUGDECL_END
							}
						}
					};
					bbOnDebugEnterScope((BBDebugScope *)&__scope);
					struct BBDebugStm __stmt_0 = {0x5661fee21fff696c, 382, 0};
					bbOnDebugEnterStm(&__stmt_0);
					bbt_surface=(struct openb3d_openb3dcore_TSurface_obj*)((struct openb3d_openb3dcore_TMesh_obj*)bbNullObjectTest((BBObject*)bbt_mesh))->clas->m_CreateSurface_TTBrush((struct openb3d_openb3dcore_TMesh_obj*)bbt_mesh,(struct openb3d_openb3dcore_TBrush_obj*)&bbNullObject);
					bbOnDebugLeaveScope();
				}
				struct BBDebugStm __stmt_1 = {0x5661fee21fff696c, 383, 0};
				bbOnDebugEnterStm(&__stmt_1);
				((struct openb3d_openb3dcore_T3DS2_obj*)bbNullObjectTest((BBObject*)o));
				bbt_count=((struct openb3d_openb3dcore_T3DS2_obj*)o)->clas->m_ParseFaceList_TTSurfaceTTEntityi((struct openb3d_openb3dcore_T3DS2_obj*)o,(struct openb3d_openb3dcore_TSurface_obj*)bbt_surface,(struct openb3d_openb3dcore_TEntity_obj*)bbt_parent,((struct openb3d_openb3dcore_TChunk_obj*)bbNullObjectTest((BBObject*)bbt_chunk))->_openb3d_openb3dcore_tchunk_endchunk );
				struct BBDebugStm __stmt_2 = {0x5661fee21fff696c, 384, 0};
				bbOnDebugEnterStm(&__stmt_2);
				if(openb3d_openb3dcore_TGlobal3D_Log_3DS!=0){
					struct BBDebugScope __scope = {
						BBDEBUGSCOPE_LOCALBLOCK,
						0,
						{
							{
								BBDEBUGDECL_END
							}
						}
					};
					bbOnDebugEnterScope((BBDebugScope *)&__scope);
					struct BBDebugStm __stmt_0 = {0x5661fee21fff696c, 384, 0};
					bbOnDebugEnterStm(&__stmt_0);
					brl_blitz_DebugLog(bbStringConcat(((BBString*)&_s536),bbStringFromInt(bbt_count)));
					bbOnDebugLeaveScope();
				}
				bbOnDebugLeaveScope();
			}else{
				struct BBDebugScope __scope = {
					BBDEBUGSCOPE_LOCALBLOCK,
					0,
					{
						{
							BBDEBUGDECL_END
						}
					}
				};
				bbOnDebugEnterScope((BBDebugScope *)&__scope);
				struct BBDebugStm __stmt_0 = {0x5661fee21fff696c, 386, 0};
				bbOnDebugEnterStm(&__stmt_0);
				if(bbt_==16704){
					struct BBDebugScope __scope = {
						BBDEBUGSCOPE_LOCALBLOCK,
						0,
						{
							{
								BBDEBUGDECL_END
							}
						}
					};
					bbOnDebugEnterScope((BBDebugScope *)&__scope);
					struct BBDebugStm __stmt_0 = {0x5661fee21fff696c, 387, 0};
					bbOnDebugEnterStm(&__stmt_0);
					if(((BBOBJECT)bbt_surface)==&bbNullObject){
						struct BBDebugScope __scope = {
							BBDEBUGSCOPE_LOCALBLOCK,
							0,
							{
								{
									BBDEBUGDECL_END
								}
							}
						};
						bbOnDebugEnterScope((BBDebugScope *)&__scope);
						struct BBDebugStm __stmt_0 = {0x5661fee21fff696c, 387, 0};
						bbOnDebugEnterStm(&__stmt_0);
						bbt_surface=(struct openb3d_openb3dcore_TSurface_obj*)((struct openb3d_openb3dcore_TMesh_obj*)bbNullObjectTest((BBObject*)bbt_mesh))->clas->m_CreateSurface_TTBrush((struct openb3d_openb3dcore_TMesh_obj*)bbt_mesh,(struct openb3d_openb3dcore_TBrush_obj*)&bbNullObject);
						bbOnDebugLeaveScope();
					}
					struct BBDebugStm __stmt_1 = {0x5661fee21fff696c, 388, 0};
					bbOnDebugEnterStm(&__stmt_1);
					((struct openb3d_openb3dcore_T3DS2_obj*)bbNullObjectTest((BBObject*)o));
					((struct openb3d_openb3dcore_T3DS2_obj*)o)->clas->m_ParseMapList_TTSurfaceTTEntity((struct openb3d_openb3dcore_T3DS2_obj*)o,(struct openb3d_openb3dcore_TSurface_obj*)bbt_surface,(struct openb3d_openb3dcore_TEntity_obj*)bbt_parent);
					struct BBDebugStm __stmt_2 = {0x5661fee21fff696c, 389, 0};
					bbOnDebugEnterStm(&__stmt_2);
					if(openb3d_openb3dcore_TGlobal3D_Log_3DS!=0){
						struct BBDebugScope __scope = {
							BBDEBUGSCOPE_LOCALBLOCK,
							0,
							{
								{
									BBDEBUGDECL_END
								}
							}
						};
						bbOnDebugEnterScope((BBDebugScope *)&__scope);
						struct BBDebugStm __stmt_0 = {0x5661fee21fff696c, 389, 0};
						bbOnDebugEnterStm(&__stmt_0);
						brl_blitz_DebugLog((BBString*)&_s537);
						bbOnDebugLeaveScope();
					}
					bbOnDebugLeaveScope();
				}else{
					struct BBDebugScope __scope = {
						BBDEBUGSCOPE_LOCALBLOCK,
						0,
						{
							{
								BBDEBUGDECL_END
							}
						}
					};
					bbOnDebugEnterScope((BBDebugScope *)&__scope);
					struct BBDebugStm __stmt_0 = {0x5661fee21fff696c, 391, 0};
					bbOnDebugEnterStm(&__stmt_0);
					if(bbt_==16736){
						struct BBDebugScope __scope = {
							BBDEBUGSCOPE_LOCALBLOCK,
							0,
							{
								{
									BBDEBUGDECL_END
								}
							}
						};
						bbOnDebugEnterScope((BBDebugScope *)&__scope);
						struct BBDebugStm __stmt_0 = {0x5661fee21fff696c, 392, 0};
						bbOnDebugEnterStm(&__stmt_0);
						bbt_matrix=(struct openb3d_openb3dcore_TMatPtr_obj*)openb3d_openb3dcore_TMatPtr_Create_TTMatPtr();
						struct BBDebugStm __stmt_1 = {0x5661fee21fff696c, 393, 0};
						bbOnDebugEnterStm(&__stmt_1);
						((struct openb3d_openb3dcore_TMatPtr_obj*)bbNullObjectTest((BBObject*)bbt_matrix))->clas->m_LoadIdentity((struct openb3d_openb3dcore_TMatPtr_obj*)bbt_matrix);
						struct BBDebugStm __stmt_2 = {0x5661fee21fff696c, 395, 0};
						bbOnDebugEnterStm(&__stmt_2);
						{
							BBINT bbt_x=0;
							for(;(bbt_x<=3);bbt_x=(bbt_x+1)){
								struct BBDebugScope_1 __scope = {
									BBDEBUGSCOPE_LOCALBLOCK,
									0,
									{
										{
											BBDEBUGDECL_LOCAL,
											"x",
											"i",
											.var_address=&bbt_x
										},
										{
											BBDEBUGDECL_END
										}
									}
								};
								bbOnDebugEnterScope((BBDebugScope *)&__scope);
								struct BBDebugStm __stmt_0 = {0x5661fee21fff696c, 396, 0};
								bbOnDebugEnterStm(&__stmt_0);
								{
									BBINT bbt_y=0;
									for(;(bbt_y<=2);bbt_y=(bbt_y+1)){
										struct BBDebugScope_1 __scope = {
											BBDEBUGSCOPE_LOCALBLOCK,
											0,
											{
												{
													BBDEBUGDECL_LOCAL,
													"y",
													"i",
													.var_address=&bbt_y
												},
												{
													BBDEBUGDECL_END
												}
											}
										};
										bbOnDebugEnterScope((BBDebugScope *)&__scope);
										struct BBDebugStm __stmt_0 = {0x5661fee21fff696c, 397, 0};
										bbOnDebugEnterStm(&__stmt_0);
										((struct openb3d_openb3dcore_TMatPtr_obj*)bbNullObjectTest((BBObject*)bbt_matrix))->_openb3d_openb3dcore_tmatptr_grid [((4*bbt_x)+bbt_y)]=((struct brl_stream_TStream_obj*)bbNullObjectTest((BBObject*)((struct openb3d_openb3dcore_T3DS2_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_t3ds2_stream ))->clas->m_ReadFloat((struct brl_stream_TStream_obj*)((struct openb3d_openb3dcore_T3DS2_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_t3ds2_stream );
										bbOnDebugLeaveScope();
									}
								}
								bbOnDebugLeaveScope();
							}
						}
						struct BBDebugStm __stmt_3 = {0x5661fee21fff696c, 401, 0};
						bbOnDebugEnterStm(&__stmt_3);
						if(openb3d_openb3dcore_TGlobal3D_Log_3DS!=0){
							struct BBDebugScope __scope = {
								BBDEBUGSCOPE_LOCALBLOCK,
								0,
								{
									{
										BBDEBUGDECL_END
									}
								}
							};
							bbOnDebugEnterScope((BBDebugScope *)&__scope);
							struct BBDebugStm __stmt_0 = {0x5661fee21fff696c, 402, 0};
							bbOnDebugEnterStm(&__stmt_0);
							brl_blitz_DebugLog((BBString*)&_s538);
							bbOnDebugLeaveScope();
						}
						bbOnDebugLeaveScope();
					}else{
						struct BBDebugScope __scope = {
							BBDEBUGSCOPE_LOCALBLOCK,
							0,
							{
								{
									BBDEBUGDECL_END
								}
							}
						};
						bbOnDebugEnterScope((BBDebugScope *)&__scope);
						struct BBDebugStm __stmt_0 = {0x5661fee21fff696c, 409, 0};
						bbOnDebugEnterStm(&__stmt_0);
						brl_stream_SeekStream((struct brl_stream_TStream_obj*)((struct openb3d_openb3dcore_T3DS2_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_t3ds2_stream ,((BBLONG)((struct openb3d_openb3dcore_TChunk_obj*)bbNullObjectTest((BBObject*)bbt_chunk))->_openb3d_openb3dcore_tchunk_endchunk ),0);
						bbOnDebugLeaveScope();
					}
					bbOnDebugLeaveScope();
				}
				bbOnDebugLeaveScope();
			}
			bbOnDebugLeaveScope();
		}
		bbOnDebugLeaveScope();
	}
	struct BBDebugStm __stmt_4 = {0x5661fee21fff696c, 413, 0};
	bbOnDebugEnterStm(&__stmt_4);
	if(((BBOBJECT)bbt_matrix)!=&bbNullObject){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x5661fee21fff696c, 414, 0};
		bbOnDebugEnterStm(&__stmt_0);
		brl_map_MapInsert((struct brl_map_TMap_obj*)((struct openb3d_openb3dcore_T3DS2_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_t3ds2_matrixmap ,(BBOBJECT)bbt_mesh,(BBOBJECT)bbt_matrix);
		bbOnDebugLeaveScope();
	}
	bbOnDebugLeaveScope();
	return 0;
}
BBARRAY _openb3d_openb3dcore_T3DS2_ParseAnimKeys_TTEntityiaTTAnimKeyi(struct openb3d_openb3dcore_T3DS2_obj* o,struct openb3d_openb3dcore_TEntity_obj* bbt_parent,BBINT bbt_endchunk,BBARRAY bbt_animKeys,BBINT bbt_chunk){
	((struct openb3d_openb3dcore_T3DS2_obj*)bbNullObjectTest((BBObject*)o));
	BBINT bbt_flags=0;
	BBINT bbt_i1=0;
	BBINT bbt_i2=0;
	BBINT bbt_frameCount=0;
	BBINT bbt_s2=0;
	BBARRAY bbt_quat=(&bbEmptyArray);
	BBFLOAT bbt_ang=0;
	BBFLOAT bbt_x=0;
	BBFLOAT bbt_y=0;
	BBFLOAT bbt_z=0;
	struct BBDebugScope_15 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"ParseAnimKeys",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":T3DS2",
				.var_address=&o
			},
			{
				BBDEBUGDECL_LOCAL,
				"parent",
				":TEntity",
				.var_address=&bbt_parent
			},
			{
				BBDEBUGDECL_LOCAL,
				"endchunk",
				"i",
				.var_address=&bbt_endchunk
			},
			{
				BBDEBUGDECL_LOCAL,
				"animKeys",
				"[]:TAnimKey",
				.var_address=&bbt_animKeys
			},
			{
				BBDEBUGDECL_LOCAL,
				"chunk",
				"i",
				.var_address=&bbt_chunk
			},
			{
				BBDEBUGDECL_LOCAL,
				"flags",
				"i",
				.var_address=&bbt_flags
			},
			{
				BBDEBUGDECL_LOCAL,
				"i1",
				"i",
				.var_address=&bbt_i1
			},
			{
				BBDEBUGDECL_LOCAL,
				"i2",
				"i",
				.var_address=&bbt_i2
			},
			{
				BBDEBUGDECL_LOCAL,
				"frameCount",
				"i",
				.var_address=&bbt_frameCount
			},
			{
				BBDEBUGDECL_LOCAL,
				"s2",
				"i",
				.var_address=&bbt_s2
			},
			{
				BBDEBUGDECL_LOCAL,
				"quat",
				"[]f",
				.var_address=&bbt_quat
			},
			{
				BBDEBUGDECL_LOCAL,
				"ang",
				"f",
				.var_address=&bbt_ang
			},
			{
				BBDEBUGDECL_LOCAL,
				"x",
				"f",
				.var_address=&bbt_x
			},
			{
				BBDEBUGDECL_LOCAL,
				"y",
				"f",
				.var_address=&bbt_y
			},
			{
				BBDEBUGDECL_LOCAL,
				"z",
				"f",
				.var_address=&bbt_z
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x5661fee21fff696c, 419, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbt_flags=((struct brl_stream_TStream_obj*)bbNullObjectTest((BBObject*)((struct openb3d_openb3dcore_T3DS2_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_t3ds2_stream ))->clas->m_ReadShort((struct brl_stream_TStream_obj*)((struct openb3d_openb3dcore_T3DS2_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_t3ds2_stream );
	struct BBDebugStm __stmt_1 = {0x5661fee21fff696c, 420, 0};
	bbOnDebugEnterStm(&__stmt_1);
	bbt_i1=((struct brl_stream_TStream_obj*)bbNullObjectTest((BBObject*)((struct openb3d_openb3dcore_T3DS2_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_t3ds2_stream ))->clas->m_ReadInt((struct brl_stream_TStream_obj*)((struct openb3d_openb3dcore_T3DS2_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_t3ds2_stream );
	struct BBDebugStm __stmt_2 = {0x5661fee21fff696c, 421, 0};
	bbOnDebugEnterStm(&__stmt_2);
	bbt_i2=((struct brl_stream_TStream_obj*)bbNullObjectTest((BBObject*)((struct openb3d_openb3dcore_T3DS2_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_t3ds2_stream ))->clas->m_ReadInt((struct brl_stream_TStream_obj*)((struct openb3d_openb3dcore_T3DS2_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_t3ds2_stream );
	struct BBDebugStm __stmt_3 = {0x5661fee21fff696c, 422, 0};
	bbOnDebugEnterStm(&__stmt_3);
	bbt_frameCount=((struct brl_stream_TStream_obj*)bbNullObjectTest((BBObject*)((struct openb3d_openb3dcore_T3DS2_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_t3ds2_stream ))->clas->m_ReadShort((struct brl_stream_TStream_obj*)((struct openb3d_openb3dcore_T3DS2_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_t3ds2_stream );
	struct BBDebugStm __stmt_4 = {0x5661fee21fff696c, 423, 0};
	bbOnDebugEnterStm(&__stmt_4);
	bbt_s2=((struct brl_stream_TStream_obj*)bbNullObjectTest((BBObject*)((struct openb3d_openb3dcore_T3DS2_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_t3ds2_stream ))->clas->m_ReadShort((struct brl_stream_TStream_obj*)((struct openb3d_openb3dcore_T3DS2_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_t3ds2_stream );
	struct BBDebugStm __stmt_5 = {0x5661fee21fff696c, 425, 0};
	bbOnDebugEnterStm(&__stmt_5);
	if(bbt_frameCount>=(bbt_animKeys->scales[0])){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x5661fee21fff696c, 425, 0};
		bbOnDebugEnterStm(&__stmt_0);
		bbt_animKeys=bbArraySlice(":TAnimKey",bbt_animKeys,0,bbt_frameCount);
		bbOnDebugLeaveScope();
	}
	struct BBDebugStm __stmt_6 = {0x5661fee21fff696c, 427, 0};
	bbOnDebugEnterStm(&__stmt_6);
	BBFLOAT bbt_[]={1.0f,0.0f,0.0f,0.0f};
	BBARRAY bbt_2 = bbArrayFromData("f",4,bbt_);
	bbt_quat=bbt_2;
	struct BBDebugStm __stmt_7 = {0x5661fee21fff696c, 428, 0};
	bbOnDebugEnterStm(&__stmt_7);
	bbt_ang=.00000000f;
	struct BBDebugStm __stmt_8 = {0x5661fee21fff696c, 428, 0};
	bbOnDebugEnterStm(&__stmt_8);
	bbt_x=.00000000f;
	struct BBDebugStm __stmt_9 = {0x5661fee21fff696c, 428, 0};
	bbOnDebugEnterStm(&__stmt_9);
	bbt_y=.00000000f;
	struct BBDebugStm __stmt_10 = {0x5661fee21fff696c, 428, 0};
	bbOnDebugEnterStm(&__stmt_10);
	bbt_z=.00000000f;
	struct BBDebugStm __stmt_11 = {0x5661fee21fff696c, 430, 0};
	bbOnDebugEnterStm(&__stmt_11);
	{
		BBINT bbt_k=0;
		BBINT bbt_3=(bbt_frameCount-1);
		for(;(bbt_k<=bbt_3);bbt_k=(bbt_k+1)){
			BBINT bbt_time=0;
			BBINT bbt_flags2=0;
			BBINT bbt_m=0;
			struct BBDebugScope_4 __scope = {
				BBDEBUGSCOPE_LOCALBLOCK,
				0,
				{
					{
						BBDEBUGDECL_LOCAL,
						"k",
						"i",
						.var_address=&bbt_k
					},
					{
						BBDEBUGDECL_LOCAL,
						"time",
						"i",
						.var_address=&bbt_time
					},
					{
						BBDEBUGDECL_LOCAL,
						"flags",
						"i",
						.var_address=&bbt_flags2
					},
					{
						BBDEBUGDECL_LOCAL,
						"m",
						"i",
						.var_address=&bbt_m
					},
					{
						BBDEBUGDECL_END
					}
				}
			};
			bbOnDebugEnterScope((BBDebugScope *)&__scope);
			struct BBDebugStm __stmt_0 = {0x5661fee21fff696c, 431, 0};
			bbOnDebugEnterStm(&__stmt_0);
			bbt_time=((struct brl_stream_TStream_obj*)bbNullObjectTest((BBObject*)((struct openb3d_openb3dcore_T3DS2_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_t3ds2_stream ))->clas->m_ReadInt((struct brl_stream_TStream_obj*)((struct openb3d_openb3dcore_T3DS2_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_t3ds2_stream );
			struct BBDebugStm __stmt_1 = {0x5661fee21fff696c, 432, 0};
			bbOnDebugEnterStm(&__stmt_1);
			bbt_flags2=((struct brl_stream_TStream_obj*)bbNullObjectTest((BBObject*)((struct openb3d_openb3dcore_T3DS2_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_t3ds2_stream ))->clas->m_ReadShort((struct brl_stream_TStream_obj*)((struct openb3d_openb3dcore_T3DS2_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_t3ds2_stream );
			struct BBDebugStm __stmt_2 = {0x5661fee21fff696c, 433, 0};
			bbOnDebugEnterStm(&__stmt_2);
			if(bbt_time>=bbt_frameCount){
				struct BBDebugScope __scope = {
					BBDEBUGSCOPE_LOCALBLOCK,
					0,
					{
						{
							BBDEBUGDECL_END
						}
					}
				};
				bbOnDebugEnterScope((BBDebugScope *)&__scope);
				struct BBDebugStm __stmt_0 = {0x5661fee21fff696c, 433, 0};
				bbOnDebugEnterStm(&__stmt_0);
				bbt_time=(bbt_frameCount-1);
				bbOnDebugLeaveScope();
			}
			struct BBDebugStm __stmt_3 = {0x5661fee21fff696c, 435, 0};
			bbOnDebugEnterStm(&__stmt_3);
			bbt_m=0;
			struct BBDebugStm __stmt_4 = {0x5661fee21fff696c, 436, 0};
			bbOnDebugEnterStm(&__stmt_4);
			{
				BBINT bbt_i=1;
				for(;(bbt_i<=5);bbt_i=(bbt_i+1)){
					struct BBDebugScope_1 __scope = {
						BBDEBUGSCOPE_LOCALBLOCK,
						0,
						{
							{
								BBDEBUGDECL_LOCAL,
								"i",
								"i",
								.var_address=&bbt_i
							},
							{
								BBDEBUGDECL_END
							}
						}
					};
					bbOnDebugEnterScope((BBDebugScope *)&__scope);
					struct BBDebugStm __stmt_0 = {0x5661fee21fff696c, 437, 0};
					bbOnDebugEnterStm(&__stmt_0);
					if(((unsigned int)(bbt_flags2)&(unsigned int)(bbt_m))!=0){
						struct BBDebugScope __scope = {
							BBDEBUGSCOPE_LOCALBLOCK,
							0,
							{
								{
									BBDEBUGDECL_END
								}
							}
						};
						bbOnDebugEnterScope((BBDebugScope *)&__scope);
						struct BBDebugStm __stmt_0 = {0x5661fee21fff696c, 437, 0};
						bbOnDebugEnterStm(&__stmt_0);
						((struct brl_stream_TStream_obj*)bbNullObjectTest((BBObject*)((struct openb3d_openb3dcore_T3DS2_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_t3ds2_stream ))->clas->m_ReadFloat((struct brl_stream_TStream_obj*)((struct openb3d_openb3dcore_T3DS2_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_t3ds2_stream );
						bbOnDebugLeaveScope();
					}
					struct BBDebugStm __stmt_1 = {0x5661fee21fff696c, 438, 0};
					bbOnDebugEnterStm(&__stmt_1);
					bbt_m=(bbt_m*2);
					bbOnDebugLeaveScope();
				}
			}
			struct BBDebugStm __stmt_5 = {0x5661fee21fff696c, 441, 0};
			bbOnDebugEnterStm(&__stmt_5);
			if(((BBOBJECT)((struct openb3d_openb3dcore_TAnimKey_obj**)BBARRAYDATAINDEX((bbt_animKeys),(bbt_animKeys)->dims,((BBUINT)bbt_time)))[((BBUINT)bbt_time)])==&bbNullObject){
				struct BBDebugScope __scope = {
					BBDEBUGSCOPE_LOCALBLOCK,
					0,
					{
						{
							BBDEBUGDECL_END
						}
					}
				};
				bbOnDebugEnterScope((BBDebugScope *)&__scope);
				struct BBDebugStm __stmt_0 = {0x5661fee21fff696c, 441, 0};
				bbOnDebugEnterStm(&__stmt_0);
				((struct openb3d_openb3dcore_TAnimKey_obj**)BBARRAYDATAINDEX((bbt_animKeys),(bbt_animKeys)->dims,((BBUINT)bbt_time)))[((BBUINT)bbt_time)]=(struct openb3d_openb3dcore_TAnimKey_obj*)(struct openb3d_openb3dcore_TAnimKey_obj*)bbObjectNew((BBClass *)&openb3d_openb3dcore_TAnimKey);
				bbOnDebugLeaveScope();
			}
			struct BBDebugStm __stmt_6 = {0x5661fee21fff696c, 443, 0};
			bbOnDebugEnterStm(&__stmt_6);
			BBINT bbt_4=bbt_chunk;
			struct BBDebugStm __stmt_7 = {0x5661fee21fff696c, 444, 0};
			bbOnDebugEnterStm(&__stmt_7);
			if(bbt_4==45088){
				struct BBDebugScope __scope = {
					BBDEBUGSCOPE_LOCALBLOCK,
					0,
					{
						{
							BBDEBUGDECL_END
						}
					}
				};
				bbOnDebugEnterScope((BBDebugScope *)&__scope);
				struct BBDebugStm __stmt_0 = {0x5661fee21fff696c, 445, 0};
				bbOnDebugEnterStm(&__stmt_0);
				bbt_x=((struct brl_stream_TStream_obj*)bbNullObjectTest((BBObject*)((struct openb3d_openb3dcore_T3DS2_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_t3ds2_stream ))->clas->m_ReadFloat((struct brl_stream_TStream_obj*)((struct openb3d_openb3dcore_T3DS2_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_t3ds2_stream );
				struct BBDebugStm __stmt_1 = {0x5661fee21fff696c, 446, 0};
				bbOnDebugEnterStm(&__stmt_1);
				bbt_y=((struct brl_stream_TStream_obj*)bbNullObjectTest((BBObject*)((struct openb3d_openb3dcore_T3DS2_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_t3ds2_stream ))->clas->m_ReadFloat((struct brl_stream_TStream_obj*)((struct openb3d_openb3dcore_T3DS2_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_t3ds2_stream );
				struct BBDebugStm __stmt_2 = {0x5661fee21fff696c, 447, 0};
				bbOnDebugEnterStm(&__stmt_2);
				bbt_z=((struct brl_stream_TStream_obj*)bbNullObjectTest((BBObject*)((struct openb3d_openb3dcore_T3DS2_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_t3ds2_stream ))->clas->m_ReadFloat((struct brl_stream_TStream_obj*)((struct openb3d_openb3dcore_T3DS2_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_t3ds2_stream );
				struct BBDebugStm __stmt_3 = {0x5661fee21fff696c, 448, 0};
				bbOnDebugEnterStm(&__stmt_3);
				BBFLOAT bbt_5[]={bbt_x,bbt_y,bbt_z};
				BBARRAY bbt_6 = bbArrayFromData("f",3,bbt_5);
				((struct openb3d_openb3dcore_TAnimKey_obj*)bbNullObjectTest((BBObject*)((struct openb3d_openb3dcore_TAnimKey_obj**)BBARRAYDATAINDEX((bbt_animKeys),(bbt_animKeys)->dims,((BBUINT)bbt_time)))[((BBUINT)bbt_time)]))->_openb3d_openb3dcore_tanimkey_pos =bbt_6;
				bbOnDebugLeaveScope();
			}else{
				struct BBDebugScope __scope = {
					BBDEBUGSCOPE_LOCALBLOCK,
					0,
					{
						{
							BBDEBUGDECL_END
						}
					}
				};
				bbOnDebugEnterScope((BBDebugScope *)&__scope);
				struct BBDebugStm __stmt_0 = {0x5661fee21fff696c, 451, 0};
				bbOnDebugEnterStm(&__stmt_0);
				if(bbt_4==45089){
					struct BBDebugScope __scope = {
						BBDEBUGSCOPE_LOCALBLOCK,
						0,
						{
							{
								BBDEBUGDECL_END
							}
						}
					};
					bbOnDebugEnterScope((BBDebugScope *)&__scope);
					struct BBDebugStm __stmt_0 = {0x5661fee21fff696c, 452, 0};
					bbOnDebugEnterStm(&__stmt_0);
					bbt_ang=(-((struct brl_stream_TStream_obj*)bbNullObjectTest((BBObject*)((struct openb3d_openb3dcore_T3DS2_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_t3ds2_stream ))->clas->m_ReadFloat((struct brl_stream_TStream_obj*)((struct openb3d_openb3dcore_T3DS2_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_t3ds2_stream )/0.0175f);
					struct BBDebugStm __stmt_1 = {0x5661fee21fff696c, 453, 0};
					bbOnDebugEnterStm(&__stmt_1);
					bbt_x=((struct brl_stream_TStream_obj*)bbNullObjectTest((BBObject*)((struct openb3d_openb3dcore_T3DS2_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_t3ds2_stream ))->clas->m_ReadFloat((struct brl_stream_TStream_obj*)((struct openb3d_openb3dcore_T3DS2_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_t3ds2_stream );
					struct BBDebugStm __stmt_2 = {0x5661fee21fff696c, 454, 0};
					bbOnDebugEnterStm(&__stmt_2);
					bbt_y=((struct brl_stream_TStream_obj*)bbNullObjectTest((BBObject*)((struct openb3d_openb3dcore_T3DS2_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_t3ds2_stream ))->clas->m_ReadFloat((struct brl_stream_TStream_obj*)((struct openb3d_openb3dcore_T3DS2_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_t3ds2_stream );
					struct BBDebugStm __stmt_3 = {0x5661fee21fff696c, 455, 0};
					bbOnDebugEnterStm(&__stmt_3);
					bbt_z=((struct brl_stream_TStream_obj*)bbNullObjectTest((BBObject*)((struct openb3d_openb3dcore_T3DS2_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_t3ds2_stream ))->clas->m_ReadFloat((struct brl_stream_TStream_obj*)((struct openb3d_openb3dcore_T3DS2_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_t3ds2_stream );
					bbOnDebugLeaveScope();
				}else{
					struct BBDebugScope __scope = {
						BBDEBUGSCOPE_LOCALBLOCK,
						0,
						{
							{
								BBDEBUGDECL_END
							}
						}
					};
					bbOnDebugEnterScope((BBDebugScope *)&__scope);
					struct BBDebugStm __stmt_0 = {0x5661fee21fff696c, 471, 0};
					bbOnDebugEnterStm(&__stmt_0);
					if(bbt_4==45090){
						struct BBDebugScope __scope = {
							BBDEBUGSCOPE_LOCALBLOCK,
							0,
							{
								{
									BBDEBUGDECL_END
								}
							}
						};
						bbOnDebugEnterScope((BBDebugScope *)&__scope);
						struct BBDebugStm __stmt_0 = {0x5661fee21fff696c, 472, 0};
						bbOnDebugEnterStm(&__stmt_0);
						bbt_x=((struct brl_stream_TStream_obj*)bbNullObjectTest((BBObject*)((struct openb3d_openb3dcore_T3DS2_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_t3ds2_stream ))->clas->m_ReadFloat((struct brl_stream_TStream_obj*)((struct openb3d_openb3dcore_T3DS2_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_t3ds2_stream );
						struct BBDebugStm __stmt_1 = {0x5661fee21fff696c, 473, 0};
						bbOnDebugEnterStm(&__stmt_1);
						bbt_y=((struct brl_stream_TStream_obj*)bbNullObjectTest((BBObject*)((struct openb3d_openb3dcore_T3DS2_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_t3ds2_stream ))->clas->m_ReadFloat((struct brl_stream_TStream_obj*)((struct openb3d_openb3dcore_T3DS2_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_t3ds2_stream );
						struct BBDebugStm __stmt_2 = {0x5661fee21fff696c, 474, 0};
						bbOnDebugEnterStm(&__stmt_2);
						bbt_z=((struct brl_stream_TStream_obj*)bbNullObjectTest((BBObject*)((struct openb3d_openb3dcore_T3DS2_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_t3ds2_stream ))->clas->m_ReadFloat((struct brl_stream_TStream_obj*)((struct openb3d_openb3dcore_T3DS2_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_t3ds2_stream );
						struct BBDebugStm __stmt_3 = {0x5661fee21fff696c, 475, 0};
						bbOnDebugEnterStm(&__stmt_3);
						BBFLOAT bbt_7[]={bbt_x,bbt_y,bbt_z};
						BBARRAY bbt_8 = bbArrayFromData("f",3,bbt_7);
						((struct openb3d_openb3dcore_TAnimKey_obj*)bbNullObjectTest((BBObject*)((struct openb3d_openb3dcore_TAnimKey_obj**)BBARRAYDATAINDEX((bbt_animKeys),(bbt_animKeys)->dims,((BBUINT)bbt_time)))[((BBUINT)bbt_time)]))->_openb3d_openb3dcore_tanimkey_size =bbt_8;
						bbOnDebugLeaveScope();
					}
					bbOnDebugLeaveScope();
				}
				bbOnDebugLeaveScope();
			}
			bbOnDebugLeaveScope();
		}
	}
	struct BBDebugStm __stmt_12 = {0x5661fee21fff696c, 480, 0};
	bbOnDebugEnterStm(&__stmt_12);
	bbOnDebugLeaveScope();
	return bbt_animKeys;
}
BBINT _openb3d_openb3dcore_T3DS2_ParseMeshInfo_TTEntityi(struct openb3d_openb3dcore_T3DS2_obj* o,struct openb3d_openb3dcore_TEntity_obj* bbt_parent,BBINT bbt_endchunk){
	((struct openb3d_openb3dcore_T3DS2_obj*)bbNullObjectTest((BBObject*)o));
	BBSTRING bbt_objname=(&bbEmptyString);
	BBSTRING bbt_instname=(&bbEmptyString);
	BBINT bbt_id=0;
	BBINT bbt_parid=0;
	struct openb3d_openb3dcore_TMesh_obj* bbt_mesh=(struct openb3d_openb3dcore_TMesh_obj*)((struct openb3d_openb3dcore_TMesh_obj*)&bbNullObject);
	struct openb3d_openb3dcore_TSurface_obj* bbt_surface=(struct openb3d_openb3dcore_TSurface_obj*)((struct openb3d_openb3dcore_TSurface_obj*)&bbNullObject);
	BBFLOAT bbt_piv_x=0;
	BBFLOAT bbt_piv_y=0;
	BBFLOAT bbt_piv_z=0;
	BBARRAY bbt_animkeys=(&bbEmptyArray);
	struct BBDebugScope_13 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"ParseMeshInfo",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":T3DS2",
				.var_address=&o
			},
			{
				BBDEBUGDECL_LOCAL,
				"parent",
				":TEntity",
				.var_address=&bbt_parent
			},
			{
				BBDEBUGDECL_LOCAL,
				"endchunk",
				"i",
				.var_address=&bbt_endchunk
			},
			{
				BBDEBUGDECL_LOCAL,
				"objname",
				"$",
				.var_address=&bbt_objname
			},
			{
				BBDEBUGDECL_LOCAL,
				"instname",
				"$",
				.var_address=&bbt_instname
			},
			{
				BBDEBUGDECL_LOCAL,
				"id",
				"i",
				.var_address=&bbt_id
			},
			{
				BBDEBUGDECL_LOCAL,
				"parid",
				"i",
				.var_address=&bbt_parid
			},
			{
				BBDEBUGDECL_LOCAL,
				"mesh",
				":TMesh",
				.var_address=&bbt_mesh
			},
			{
				BBDEBUGDECL_LOCAL,
				"surface",
				":TSurface",
				.var_address=&bbt_surface
			},
			{
				BBDEBUGDECL_LOCAL,
				"piv_x",
				"f",
				.var_address=&bbt_piv_x
			},
			{
				BBDEBUGDECL_LOCAL,
				"piv_y",
				"f",
				.var_address=&bbt_piv_y
			},
			{
				BBDEBUGDECL_LOCAL,
				"piv_z",
				"f",
				.var_address=&bbt_piv_z
			},
			{
				BBDEBUGDECL_LOCAL,
				"animkeys",
				"[]:TAnimKey",
				.var_address=&bbt_animkeys
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x5661fee21fff696c, 484, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbt_objname=((BBString*)&bbEmptyString);
	struct BBDebugStm __stmt_1 = {0x5661fee21fff696c, 484, 0};
	bbOnDebugEnterStm(&__stmt_1);
	bbt_instname=((BBString*)&bbEmptyString);
	struct BBDebugStm __stmt_2 = {0x5661fee21fff696c, 485, 0};
	bbOnDebugEnterStm(&__stmt_2);
	bbt_id=-1;
	struct BBDebugStm __stmt_3 = {0x5661fee21fff696c, 485, 0};
	bbOnDebugEnterStm(&__stmt_3);
	bbt_parid=-1;
	struct BBDebugStm __stmt_4 = {0x5661fee21fff696c, 485, 0};
	bbOnDebugEnterStm(&__stmt_4);
	bbt_mesh=(struct openb3d_openb3dcore_TMesh_obj*)&bbNullObject;
	struct BBDebugStm __stmt_5 = {0x5661fee21fff696c, 485, 0};
	bbOnDebugEnterStm(&__stmt_5);
	bbt_surface=(struct openb3d_openb3dcore_TSurface_obj*)&bbNullObject;
	struct BBDebugStm __stmt_6 = {0x5661fee21fff696c, 486, 0};
	bbOnDebugEnterStm(&__stmt_6);
	bbt_piv_x=0.0f;
	struct BBDebugStm __stmt_7 = {0x5661fee21fff696c, 486, 0};
	bbOnDebugEnterStm(&__stmt_7);
	bbt_piv_y=0.0f;
	struct BBDebugStm __stmt_8 = {0x5661fee21fff696c, 486, 0};
	bbOnDebugEnterStm(&__stmt_8);
	bbt_piv_z=0.0f;
	struct BBDebugStm __stmt_9 = {0x5661fee21fff696c, 487, 0};
	bbOnDebugEnterStm(&__stmt_9);
	bbt_animkeys=bbArrayNew1D(":TAnimKey", 0);
	struct BBDebugStm __stmt_10 = {0x5661fee21fff696c, 490, 0};
	bbOnDebugEnterStm(&__stmt_10);
	while(brl_stream_StreamPos((struct brl_stream_TStream_obj*)((struct openb3d_openb3dcore_T3DS2_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_t3ds2_stream )<((BBLONG)bbt_endchunk)){
		struct openb3d_openb3dcore_TChunk_obj* bbt_chunk=(struct openb3d_openb3dcore_TChunk_obj*)((struct openb3d_openb3dcore_TChunk_obj*)&bbNullObject);
		struct BBDebugScope_1 __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_LOCAL,
					"chunk",
					":TChunk",
					.var_address=&bbt_chunk
				},
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x5661fee21fff696c, 491, 0};
		bbOnDebugEnterStm(&__stmt_0);
		((struct openb3d_openb3dcore_T3DS2_obj*)bbNullObjectTest((BBObject*)o));
		bbt_chunk=(struct openb3d_openb3dcore_TChunk_obj*)((struct openb3d_openb3dcore_T3DS2_obj*)o)->clas->m_ReadChunk((struct openb3d_openb3dcore_T3DS2_obj*)o);
		struct BBDebugStm __stmt_1 = {0x5661fee21fff696c, 492, 0};
		bbOnDebugEnterStm(&__stmt_1);
		if(((struct openb3d_openb3dcore_TChunk_obj*)bbNullObjectTest((BBObject*)bbt_chunk))->_openb3d_openb3dcore_tchunk_id ==0){
			struct BBDebugScope __scope = {
				BBDEBUGSCOPE_LOCALBLOCK,
				0,
				{
					{
						BBDEBUGDECL_END
					}
				}
			};
			bbOnDebugEnterScope((BBDebugScope *)&__scope);
			struct BBDebugStm __stmt_0 = {0x5661fee21fff696c, 492, 0};
			bbOnDebugEnterStm(&__stmt_0);
			bbOnDebugLeaveScope();
			bbOnDebugLeaveScope();
			break;
		}
		struct BBDebugStm __stmt_2 = {0x5661fee21fff696c, 494, 0};
		bbOnDebugEnterStm(&__stmt_2);
		BBINT bbt_=((struct openb3d_openb3dcore_TChunk_obj*)bbNullObjectTest((BBObject*)bbt_chunk))->_openb3d_openb3dcore_tchunk_id ;
		struct BBDebugStm __stmt_3 = {0x5661fee21fff696c, 495, 0};
		bbOnDebugEnterStm(&__stmt_3);
		if(bbt_==45104){
			struct BBDebugScope __scope = {
				BBDEBUGSCOPE_LOCALBLOCK,
				0,
				{
					{
						BBDEBUGDECL_END
					}
				}
			};
			bbOnDebugEnterScope((BBDebugScope *)&__scope);
			struct BBDebugStm __stmt_0 = {0x5661fee21fff696c, 496, 0};
			bbOnDebugEnterStm(&__stmt_0);
			bbt_id=((struct brl_stream_TStream_obj*)bbNullObjectTest((BBObject*)((struct openb3d_openb3dcore_T3DS2_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_t3ds2_stream ))->clas->m_ReadShort((struct brl_stream_TStream_obj*)((struct openb3d_openb3dcore_T3DS2_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_t3ds2_stream );
			struct BBDebugStm __stmt_1 = {0x5661fee21fff696c, 497, 0};
			bbOnDebugEnterStm(&__stmt_1);
			if(openb3d_openb3dcore_TGlobal3D_Log_3DS!=0){
				struct BBDebugScope __scope = {
					BBDEBUGSCOPE_LOCALBLOCK,
					0,
					{
						{
							BBDEBUGDECL_END
						}
					}
				};
				bbOnDebugEnterScope((BBDebugScope *)&__scope);
				struct BBDebugStm __stmt_0 = {0x5661fee21fff696c, 497, 0};
				bbOnDebugEnterStm(&__stmt_0);
				brl_blitz_DebugLog(bbStringConcat(((BBString*)&_s539),bbStringFromInt(bbt_id)));
				bbOnDebugLeaveScope();
			}
			bbOnDebugLeaveScope();
		}else{
			struct BBDebugScope __scope = {
				BBDEBUGSCOPE_LOCALBLOCK,
				0,
				{
					{
						BBDEBUGDECL_END
					}
				}
			};
			bbOnDebugEnterScope((BBDebugScope *)&__scope);
			struct BBDebugStm __stmt_0 = {0x5661fee21fff696c, 499, 0};
			bbOnDebugEnterStm(&__stmt_0);
			if(bbt_==45072){
				BBINT bbt_flag1=0;
				BBINT bbt_flag2=0;
				struct BBDebugScope_2 __scope = {
					BBDEBUGSCOPE_LOCALBLOCK,
					0,
					{
						{
							BBDEBUGDECL_LOCAL,
							"flag1",
							"i",
							.var_address=&bbt_flag1
						},
						{
							BBDEBUGDECL_LOCAL,
							"flag2",
							"i",
							.var_address=&bbt_flag2
						},
						{
							BBDEBUGDECL_END
						}
					}
				};
				bbOnDebugEnterScope((BBDebugScope *)&__scope);
				struct BBDebugStm __stmt_0 = {0x5661fee21fff696c, 501, 0};
				bbOnDebugEnterStm(&__stmt_0);
				((struct openb3d_openb3dcore_T3DS2_obj*)bbNullObjectTest((BBObject*)o));
				bbt_objname=((struct openb3d_openb3dcore_T3DS2_obj*)o)->clas->m_ParseString((struct openb3d_openb3dcore_T3DS2_obj*)o);
				struct BBDebugStm __stmt_1 = {0x5661fee21fff696c, 502, 0};
				bbOnDebugEnterStm(&__stmt_1);
				bbt_flag1=((struct brl_stream_TStream_obj*)bbNullObjectTest((BBObject*)((struct openb3d_openb3dcore_T3DS2_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_t3ds2_stream ))->clas->m_ReadShort((struct brl_stream_TStream_obj*)((struct openb3d_openb3dcore_T3DS2_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_t3ds2_stream );
				struct BBDebugStm __stmt_2 = {0x5661fee21fff696c, 503, 0};
				bbOnDebugEnterStm(&__stmt_2);
				bbt_flag2=((struct brl_stream_TStream_obj*)bbNullObjectTest((BBObject*)((struct openb3d_openb3dcore_T3DS2_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_t3ds2_stream ))->clas->m_ReadShort((struct brl_stream_TStream_obj*)((struct openb3d_openb3dcore_T3DS2_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_t3ds2_stream );
				struct BBDebugStm __stmt_3 = {0x5661fee21fff696c, 504, 0};
				bbOnDebugEnterStm(&__stmt_3);
				bbt_parid=((struct brl_stream_TStream_obj*)bbNullObjectTest((BBObject*)((struct openb3d_openb3dcore_T3DS2_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_t3ds2_stream ))->clas->m_ReadShort((struct brl_stream_TStream_obj*)((struct openb3d_openb3dcore_T3DS2_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_t3ds2_stream );
				struct BBDebugStm __stmt_4 = {0x5661fee21fff696c, 507, 0};
				bbOnDebugEnterStm(&__stmt_4);
				if(openb3d_openb3dcore_TGlobal3D_Log_3DS!=0){
					struct BBDebugScope __scope = {
						BBDEBUGSCOPE_LOCALBLOCK,
						0,
						{
							{
								BBDEBUGDECL_END
							}
						}
					};
					bbOnDebugEnterScope((BBDebugScope *)&__scope);
					struct BBDebugStm __stmt_0 = {0x5661fee21fff696c, 507, 0};
					bbOnDebugEnterStm(&__stmt_0);
					brl_blitz_DebugLog(bbStringConcat(bbStringConcat(bbStringConcat(((BBString*)&_s540),bbt_objname),((BBString*)&_s541)),bbStringFromInt(bbt_parid)));
					bbOnDebugLeaveScope();
				}
				bbOnDebugLeaveScope();
			}else{
				struct BBDebugScope __scope = {
					BBDEBUGSCOPE_LOCALBLOCK,
					0,
					{
						{
							BBDEBUGDECL_END
						}
					}
				};
				bbOnDebugEnterScope((BBDebugScope *)&__scope);
				struct BBDebugStm __stmt_0 = {0x5661fee21fff696c, 509, 0};
				bbOnDebugEnterStm(&__stmt_0);
				if(bbt_==45073){
					struct BBDebugScope __scope = {
						BBDEBUGSCOPE_LOCALBLOCK,
						0,
						{
							{
								BBDEBUGDECL_END
							}
						}
					};
					bbOnDebugEnterScope((BBDebugScope *)&__scope);
					struct BBDebugStm __stmt_0 = {0x5661fee21fff696c, 510, 0};
					bbOnDebugEnterStm(&__stmt_0);
					((struct openb3d_openb3dcore_T3DS2_obj*)bbNullObjectTest((BBObject*)o));
					bbt_instname=((struct openb3d_openb3dcore_T3DS2_obj*)o)->clas->m_ParseString((struct openb3d_openb3dcore_T3DS2_obj*)o);
					struct BBDebugStm __stmt_1 = {0x5661fee21fff696c, 511, 0};
					bbOnDebugEnterStm(&__stmt_1);
					if(openb3d_openb3dcore_TGlobal3D_Log_3DS!=0){
						struct BBDebugScope __scope = {
							BBDEBUGSCOPE_LOCALBLOCK,
							0,
							{
								{
									BBDEBUGDECL_END
								}
							}
						};
						bbOnDebugEnterScope((BBDebugScope *)&__scope);
						struct BBDebugStm __stmt_0 = {0x5661fee21fff696c, 511, 0};
						bbOnDebugEnterStm(&__stmt_0);
						brl_blitz_DebugLog(bbStringConcat(((BBString*)&_s542),bbt_instname));
						bbOnDebugLeaveScope();
					}
					bbOnDebugLeaveScope();
				}else{
					struct BBDebugScope __scope = {
						BBDEBUGSCOPE_LOCALBLOCK,
						0,
						{
							{
								BBDEBUGDECL_END
							}
						}
					};
					bbOnDebugEnterScope((BBDebugScope *)&__scope);
					struct BBDebugStm __stmt_0 = {0x5661fee21fff696c, 513, 0};
					bbOnDebugEnterStm(&__stmt_0);
					if(bbt_==45075){
						struct BBDebugScope __scope = {
							BBDEBUGSCOPE_LOCALBLOCK,
							0,
							{
								{
									BBDEBUGDECL_END
								}
							}
						};
						bbOnDebugEnterScope((BBDebugScope *)&__scope);
						struct BBDebugStm __stmt_0 = {0x5661fee21fff696c, 514, 0};
						bbOnDebugEnterStm(&__stmt_0);
						bbt_piv_x=((struct brl_stream_TStream_obj*)bbNullObjectTest((BBObject*)((struct openb3d_openb3dcore_T3DS2_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_t3ds2_stream ))->clas->m_ReadFloat((struct brl_stream_TStream_obj*)((struct openb3d_openb3dcore_T3DS2_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_t3ds2_stream );
						struct BBDebugStm __stmt_1 = {0x5661fee21fff696c, 515, 0};
						bbOnDebugEnterStm(&__stmt_1);
						bbt_piv_y=((struct brl_stream_TStream_obj*)bbNullObjectTest((BBObject*)((struct openb3d_openb3dcore_T3DS2_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_t3ds2_stream ))->clas->m_ReadFloat((struct brl_stream_TStream_obj*)((struct openb3d_openb3dcore_T3DS2_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_t3ds2_stream );
						struct BBDebugStm __stmt_2 = {0x5661fee21fff696c, 516, 0};
						bbOnDebugEnterStm(&__stmt_2);
						bbt_piv_z=((struct brl_stream_TStream_obj*)bbNullObjectTest((BBObject*)((struct openb3d_openb3dcore_T3DS2_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_t3ds2_stream ))->clas->m_ReadFloat((struct brl_stream_TStream_obj*)((struct openb3d_openb3dcore_T3DS2_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_t3ds2_stream );
						struct BBDebugStm __stmt_3 = {0x5661fee21fff696c, 517, 0};
						bbOnDebugEnterStm(&__stmt_3);
						if(openb3d_openb3dcore_TGlobal3D_Log_3DS!=0){
							struct BBDebugScope __scope = {
								BBDEBUGSCOPE_LOCALBLOCK,
								0,
								{
									{
										BBDEBUGDECL_END
									}
								}
							};
							bbOnDebugEnterScope((BBDebugScope *)&__scope);
							struct BBDebugStm __stmt_0 = {0x5661fee21fff696c, 517, 0};
							bbOnDebugEnterStm(&__stmt_0);
							brl_blitz_DebugLog(bbStringConcat(bbStringConcat(bbStringConcat(bbStringConcat(bbStringConcat(((BBString*)&_s543),bbStringFromFloat(bbt_piv_x)),((BBString*)&_s544)),bbStringFromFloat(bbt_piv_y)),((BBString*)&_s544)),bbStringFromFloat(bbt_piv_z)));
							bbOnDebugLeaveScope();
						}
						bbOnDebugLeaveScope();
					}else{
						struct BBDebugScope __scope = {
							BBDEBUGSCOPE_LOCALBLOCK,
							0,
							{
								{
									BBDEBUGDECL_END
								}
							}
						};
						bbOnDebugEnterScope((BBDebugScope *)&__scope);
						struct BBDebugStm __stmt_0 = {0x5661fee21fff696c, 523, 0};
						bbOnDebugEnterStm(&__stmt_0);
						if(bbt_==45088){
							struct BBDebugScope __scope = {
								BBDEBUGSCOPE_LOCALBLOCK,
								0,
								{
									{
										BBDEBUGDECL_END
									}
								}
							};
							bbOnDebugEnterScope((BBDebugScope *)&__scope);
							struct BBDebugStm __stmt_0 = {0x5661fee21fff696c, 524, 0};
							bbOnDebugEnterStm(&__stmt_0);
							((struct openb3d_openb3dcore_T3DS2_obj*)bbNullObjectTest((BBObject*)o));
							bbt_animkeys=((struct openb3d_openb3dcore_T3DS2_obj*)o)->clas->m_ParseAnimKeys_TTEntityiaTTAnimKeyi((struct openb3d_openb3dcore_T3DS2_obj*)o,(struct openb3d_openb3dcore_TEntity_obj*)bbt_parent,bbt_endchunk,bbt_animkeys,((struct openb3d_openb3dcore_TChunk_obj*)bbNullObjectTest((BBObject*)bbt_chunk))->_openb3d_openb3dcore_tchunk_id );
							bbOnDebugLeaveScope();
						}else{
							struct BBDebugScope __scope = {
								BBDEBUGSCOPE_LOCALBLOCK,
								0,
								{
									{
										BBDEBUGDECL_END
									}
								}
							};
							bbOnDebugEnterScope((BBDebugScope *)&__scope);
							struct BBDebugStm __stmt_0 = {0x5661fee21fff696c, 526, 0};
							bbOnDebugEnterStm(&__stmt_0);
							if(bbt_==45089){
								struct BBDebugScope __scope = {
									BBDEBUGSCOPE_LOCALBLOCK,
									0,
									{
										{
											BBDEBUGDECL_END
										}
									}
								};
								bbOnDebugEnterScope((BBDebugScope *)&__scope);
								struct BBDebugStm __stmt_0 = {0x5661fee21fff696c, 527, 0};
								bbOnDebugEnterStm(&__stmt_0);
								((struct openb3d_openb3dcore_T3DS2_obj*)bbNullObjectTest((BBObject*)o));
								bbt_animkeys=((struct openb3d_openb3dcore_T3DS2_obj*)o)->clas->m_ParseAnimKeys_TTEntityiaTTAnimKeyi((struct openb3d_openb3dcore_T3DS2_obj*)o,(struct openb3d_openb3dcore_TEntity_obj*)bbt_parent,bbt_endchunk,bbt_animkeys,((struct openb3d_openb3dcore_TChunk_obj*)bbNullObjectTest((BBObject*)bbt_chunk))->_openb3d_openb3dcore_tchunk_id );
								bbOnDebugLeaveScope();
							}else{
								struct BBDebugScope __scope = {
									BBDEBUGSCOPE_LOCALBLOCK,
									0,
									{
										{
											BBDEBUGDECL_END
										}
									}
								};
								bbOnDebugEnterScope((BBDebugScope *)&__scope);
								struct BBDebugStm __stmt_0 = {0x5661fee21fff696c, 529, 0};
								bbOnDebugEnterStm(&__stmt_0);
								if(bbt_==45090){
									struct BBDebugScope __scope = {
										BBDEBUGSCOPE_LOCALBLOCK,
										0,
										{
											{
												BBDEBUGDECL_END
											}
										}
									};
									bbOnDebugEnterScope((BBDebugScope *)&__scope);
									struct BBDebugStm __stmt_0 = {0x5661fee21fff696c, 530, 0};
									bbOnDebugEnterStm(&__stmt_0);
									((struct openb3d_openb3dcore_T3DS2_obj*)bbNullObjectTest((BBObject*)o));
									bbt_animkeys=((struct openb3d_openb3dcore_T3DS2_obj*)o)->clas->m_ParseAnimKeys_TTEntityiaTTAnimKeyi((struct openb3d_openb3dcore_T3DS2_obj*)o,(struct openb3d_openb3dcore_TEntity_obj*)bbt_parent,bbt_endchunk,bbt_animkeys,((struct openb3d_openb3dcore_TChunk_obj*)bbNullObjectTest((BBObject*)bbt_chunk))->_openb3d_openb3dcore_tchunk_id );
									bbOnDebugLeaveScope();
								}else{
									struct BBDebugScope __scope = {
										BBDEBUGSCOPE_LOCALBLOCK,
										0,
										{
											{
												BBDEBUGDECL_END
											}
										}
									};
									bbOnDebugEnterScope((BBDebugScope *)&__scope);
									struct BBDebugStm __stmt_0 = {0x5661fee21fff696c, 533, 0};
									bbOnDebugEnterStm(&__stmt_0);
									brl_stream_SeekStream((struct brl_stream_TStream_obj*)((struct openb3d_openb3dcore_T3DS2_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_t3ds2_stream ,((BBLONG)((struct openb3d_openb3dcore_TChunk_obj*)bbNullObjectTest((BBObject*)bbt_chunk))->_openb3d_openb3dcore_tchunk_endchunk ),0);
									bbOnDebugLeaveScope();
								}
								bbOnDebugLeaveScope();
							}
							bbOnDebugLeaveScope();
						}
						bbOnDebugLeaveScope();
					}
					bbOnDebugLeaveScope();
				}
				bbOnDebugLeaveScope();
			}
			bbOnDebugLeaveScope();
		}
		bbOnDebugLeaveScope();
	}
	struct BBDebugStm __stmt_11 = {0x5661fee21fff696c, 537, 0};
	bbOnDebugEnterStm(&__stmt_11);
	if(bbStringEquals(bbt_objname, ((BBString*)&_s545))==1){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x5661fee21fff696c, 538, 0};
		bbOnDebugEnterStm(&__stmt_0);
		bbt_mesh=(struct openb3d_openb3dcore_TMesh_obj*)openb3d_openb3dcore_TMesh_Create_TTMesh();
		struct BBDebugStm __stmt_1 = {0x5661fee21fff696c, 539, 0};
		bbOnDebugEnterStm(&__stmt_1);
		((struct openb3d_openb3dcore_TMesh_obj*)bbNullObjectTest((BBObject*)bbt_mesh))->clas->m_SetString_pbS((struct openb3d_openb3dcore_TEntity_obj*)bbt_mesh,((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)bbt_mesh))->_openb3d_openb3dcore_tentity_name ,bbt_instname);
		struct BBDebugStm __stmt_2 = {0x5661fee21fff696c, 540, 0};
		bbOnDebugEnterStm(&__stmt_2);
		((struct openb3d_openb3dcore_TMesh_obj*)bbNullObjectTest((BBObject*)bbt_mesh))->clas->m_SetString_pbS((struct openb3d_openb3dcore_TEntity_obj*)bbt_mesh,((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)bbt_mesh))->_openb3d_openb3dcore_tentity_class_name ,((BBString*)&_s461));
		struct BBDebugStm __stmt_3 = {0x5661fee21fff696c, 541, 0};
		bbOnDebugEnterStm(&__stmt_3);
		((struct openb3d_openb3dcore_TMesh_obj*)bbNullObjectTest((BBObject*)bbt_mesh))->clas->m_AddParent_TTEntity((struct openb3d_openb3dcore_TEntity_obj*)bbt_mesh,(struct openb3d_openb3dcore_TEntity_obj*)bbt_parent);
		struct BBDebugStm __stmt_4 = {0x5661fee21fff696c, 542, 0};
		bbOnDebugEnterStm(&__stmt_4);
		((struct openb3d_openb3dcore_TMesh_obj*)bbNullObjectTest((BBObject*)bbt_mesh))->clas->m_EntityListAdd_TTListTObject((struct openb3d_openb3dcore_TEntity_obj*)bbt_mesh,(struct brl_linkedlist_TList_obj*)openb3d_openb3dcore_TEntity_entity_list,(BBOBJECT)&bbNullObject);
		bbOnDebugLeaveScope();
	}
	bbOnDebugLeaveScope();
	return 0;
}
BBINT _openb3d_openb3dcore_T3DS2_ParseObject_TTEntityi(struct openb3d_openb3dcore_T3DS2_obj* o,struct openb3d_openb3dcore_TEntity_obj* bbt_parent,BBINT bbt_endchunk){
	((struct openb3d_openb3dcore_T3DS2_obj*)bbNullObjectTest((BBObject*)o));
	struct openb3d_openb3dcore_TMesh_obj* bbt_mesh=(struct openb3d_openb3dcore_TMesh_obj*)((struct openb3d_openb3dcore_TMesh_obj*)&bbNullObject);
	BBSTRING bbt_objname=(&bbEmptyString);
	struct BBDebugScope_5 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"ParseObject",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":T3DS2",
				.var_address=&o
			},
			{
				BBDEBUGDECL_LOCAL,
				"parent",
				":TEntity",
				.var_address=&bbt_parent
			},
			{
				BBDEBUGDECL_LOCAL,
				"endchunk",
				"i",
				.var_address=&bbt_endchunk
			},
			{
				BBDEBUGDECL_LOCAL,
				"mesh",
				":TMesh",
				.var_address=&bbt_mesh
			},
			{
				BBDEBUGDECL_LOCAL,
				"objname",
				"$",
				.var_address=&bbt_objname
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x5661fee21fff696c, 580, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbt_mesh=(struct openb3d_openb3dcore_TMesh_obj*)&bbNullObject;
	struct BBDebugStm __stmt_1 = {0x5661fee21fff696c, 581, 0};
	bbOnDebugEnterStm(&__stmt_1);
	((struct openb3d_openb3dcore_T3DS2_obj*)bbNullObjectTest((BBObject*)o));
	bbt_objname=((struct openb3d_openb3dcore_T3DS2_obj*)o)->clas->m_ParseString((struct openb3d_openb3dcore_T3DS2_obj*)o);
	struct BBDebugStm __stmt_2 = {0x5661fee21fff696c, 583, 0};
	bbOnDebugEnterStm(&__stmt_2);
	while(brl_stream_StreamPos((struct brl_stream_TStream_obj*)((struct openb3d_openb3dcore_T3DS2_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_t3ds2_stream )<((BBLONG)bbt_endchunk)){
		struct openb3d_openb3dcore_TChunk_obj* bbt_chunk=(struct openb3d_openb3dcore_TChunk_obj*)((struct openb3d_openb3dcore_TChunk_obj*)&bbNullObject);
		struct BBDebugScope_1 __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_LOCAL,
					"chunk",
					":TChunk",
					.var_address=&bbt_chunk
				},
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x5661fee21fff696c, 584, 0};
		bbOnDebugEnterStm(&__stmt_0);
		((struct openb3d_openb3dcore_T3DS2_obj*)bbNullObjectTest((BBObject*)o));
		bbt_chunk=(struct openb3d_openb3dcore_TChunk_obj*)((struct openb3d_openb3dcore_T3DS2_obj*)o)->clas->m_ReadChunk((struct openb3d_openb3dcore_T3DS2_obj*)o);
		struct BBDebugStm __stmt_1 = {0x5661fee21fff696c, 585, 0};
		bbOnDebugEnterStm(&__stmt_1);
		if(((struct openb3d_openb3dcore_TChunk_obj*)bbNullObjectTest((BBObject*)bbt_chunk))->_openb3d_openb3dcore_tchunk_id ==0){
			struct BBDebugScope __scope = {
				BBDEBUGSCOPE_LOCALBLOCK,
				0,
				{
					{
						BBDEBUGDECL_END
					}
				}
			};
			bbOnDebugEnterScope((BBDebugScope *)&__scope);
			struct BBDebugStm __stmt_0 = {0x5661fee21fff696c, 585, 0};
			bbOnDebugEnterStm(&__stmt_0);
			bbOnDebugLeaveScope();
			bbOnDebugLeaveScope();
			break;
		}
		struct BBDebugStm __stmt_2 = {0x5661fee21fff696c, 587, 0};
		bbOnDebugEnterStm(&__stmt_2);
		BBINT bbt_=((struct openb3d_openb3dcore_TChunk_obj*)bbNullObjectTest((BBObject*)bbt_chunk))->_openb3d_openb3dcore_tchunk_id ;
		struct BBDebugStm __stmt_3 = {0x5661fee21fff696c, 588, 0};
		bbOnDebugEnterStm(&__stmt_3);
		if(bbt_==16640){
			struct BBDebugScope __scope = {
				BBDEBUGSCOPE_LOCALBLOCK,
				0,
				{
					{
						BBDEBUGDECL_END
					}
				}
			};
			bbOnDebugEnterScope((BBDebugScope *)&__scope);
			struct BBDebugStm __stmt_0 = {0x5661fee21fff696c, 589, 0};
			bbOnDebugEnterStm(&__stmt_0);
			if(openb3d_openb3dcore_TGlobal3D_Log_3DS!=0){
				struct BBDebugScope __scope = {
					BBDEBUGSCOPE_LOCALBLOCK,
					0,
					{
						{
							BBDEBUGDECL_END
						}
					}
				};
				bbOnDebugEnterScope((BBDebugScope *)&__scope);
				struct BBDebugStm __stmt_0 = {0x5661fee21fff696c, 589, 0};
				bbOnDebugEnterStm(&__stmt_0);
				brl_blitz_DebugLog(bbStringConcat(((BBString*)&_s546),bbt_objname));
				bbOnDebugLeaveScope();
			}
			struct BBDebugStm __stmt_1 = {0x5661fee21fff696c, 590, 0};
			bbOnDebugEnterStm(&__stmt_1);
			bbt_mesh=(struct openb3d_openb3dcore_TMesh_obj*)openb3d_openb3dcore_TMesh_Create_TTMesh();
			struct BBDebugStm __stmt_2 = {0x5661fee21fff696c, 591, 0};
			bbOnDebugEnterStm(&__stmt_2);
			((struct openb3d_openb3dcore_TMesh_obj*)bbNullObjectTest((BBObject*)bbt_mesh))->clas->m_SetString_pbS((struct openb3d_openb3dcore_TEntity_obj*)bbt_mesh,((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)bbt_mesh))->_openb3d_openb3dcore_tentity_name ,bbt_objname);
			struct BBDebugStm __stmt_3 = {0x5661fee21fff696c, 592, 0};
			bbOnDebugEnterStm(&__stmt_3);
			((struct openb3d_openb3dcore_TMesh_obj*)bbNullObjectTest((BBObject*)bbt_mesh))->clas->m_SetString_pbS((struct openb3d_openb3dcore_TEntity_obj*)bbt_mesh,((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)bbt_mesh))->_openb3d_openb3dcore_tentity_class_name ,((BBString*)&_s461));
			struct BBDebugStm __stmt_4 = {0x5661fee21fff696c, 593, 0};
			bbOnDebugEnterStm(&__stmt_4);
			((struct openb3d_openb3dcore_TMesh_obj*)bbNullObjectTest((BBObject*)bbt_mesh))->clas->m_AddParent_TTEntity((struct openb3d_openb3dcore_TEntity_obj*)bbt_mesh,(struct openb3d_openb3dcore_TEntity_obj*)bbt_parent);
			struct BBDebugStm __stmt_5 = {0x5661fee21fff696c, 594, 0};
			bbOnDebugEnterStm(&__stmt_5);
			((struct openb3d_openb3dcore_TMesh_obj*)bbNullObjectTest((BBObject*)bbt_mesh))->clas->m_EntityListAdd_TTListTObject((struct openb3d_openb3dcore_TEntity_obj*)bbt_mesh,(struct brl_linkedlist_TList_obj*)openb3d_openb3dcore_TEntity_entity_list,(BBOBJECT)&bbNullObject);
			struct BBDebugStm __stmt_6 = {0x5661fee21fff696c, 595, 0};
			bbOnDebugEnterStm(&__stmt_6);
			brl_linkedlist_ListAddLast((struct brl_linkedlist_TList_obj*)((struct openb3d_openb3dcore_T3DS2_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_t3ds2_objlist ,(BBOBJECT)bbt_mesh);
			struct BBDebugStm __stmt_7 = {0x5661fee21fff696c, 596, 0};
			bbOnDebugEnterStm(&__stmt_7);
			((struct openb3d_openb3dcore_T3DS2_obj*)bbNullObjectTest((BBObject*)o));
			((struct openb3d_openb3dcore_T3DS2_obj*)o)->clas->m_ParseTriMesh_TTMeshTTEntityi((struct openb3d_openb3dcore_T3DS2_obj*)o,(struct openb3d_openb3dcore_TMesh_obj*)bbt_mesh,(struct openb3d_openb3dcore_TEntity_obj*)bbt_parent,((struct openb3d_openb3dcore_TChunk_obj*)bbNullObjectTest((BBObject*)bbt_chunk))->_openb3d_openb3dcore_tchunk_endchunk );
			bbOnDebugLeaveScope();
		}else{
			struct BBDebugScope __scope = {
				BBDEBUGSCOPE_LOCALBLOCK,
				0,
				{
					{
						BBDEBUGDECL_END
					}
				}
			};
			bbOnDebugEnterScope((BBDebugScope *)&__scope);
			struct BBDebugStm __stmt_0 = {0x5661fee21fff696c, 607, 0};
			bbOnDebugEnterStm(&__stmt_0);
			brl_stream_SeekStream((struct brl_stream_TStream_obj*)((struct openb3d_openb3dcore_T3DS2_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_t3ds2_stream ,((BBLONG)((struct openb3d_openb3dcore_TChunk_obj*)bbNullObjectTest((BBObject*)bbt_chunk))->_openb3d_openb3dcore_tchunk_endchunk ),0);
			bbOnDebugLeaveScope();
		}
		bbOnDebugLeaveScope();
	}
	bbOnDebugLeaveScope();
	return 0;
}
BBFLOAT _openb3d_openb3dcore_T3DS2_ParsePercent_TTEntityi(struct openb3d_openb3dcore_T3DS2_obj* o,struct openb3d_openb3dcore_TEntity_obj* bbt_parent,BBINT bbt_endchunk){
	((struct openb3d_openb3dcore_T3DS2_obj*)bbNullObjectTest((BBObject*)o));
	BBFLOAT bbt_pc=0;
	struct BBDebugScope_4 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"ParsePercent",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":T3DS2",
				.var_address=&o
			},
			{
				BBDEBUGDECL_LOCAL,
				"parent",
				":TEntity",
				.var_address=&bbt_parent
			},
			{
				BBDEBUGDECL_LOCAL,
				"endchunk",
				"i",
				.var_address=&bbt_endchunk
			},
			{
				BBDEBUGDECL_LOCAL,
				"pc",
				"f",
				.var_address=&bbt_pc
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x5661fee21fff696c, 614, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbt_pc=.00000000f;
	struct BBDebugStm __stmt_1 = {0x5661fee21fff696c, 616, 0};
	bbOnDebugEnterStm(&__stmt_1);
	while(brl_stream_StreamPos((struct brl_stream_TStream_obj*)((struct openb3d_openb3dcore_T3DS2_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_t3ds2_stream )<((BBLONG)bbt_endchunk)){
		struct openb3d_openb3dcore_TChunk_obj* bbt_chunk=(struct openb3d_openb3dcore_TChunk_obj*)((struct openb3d_openb3dcore_TChunk_obj*)&bbNullObject);
		struct BBDebugScope_1 __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_LOCAL,
					"chunk",
					":TChunk",
					.var_address=&bbt_chunk
				},
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x5661fee21fff696c, 617, 0};
		bbOnDebugEnterStm(&__stmt_0);
		((struct openb3d_openb3dcore_T3DS2_obj*)bbNullObjectTest((BBObject*)o));
		bbt_chunk=(struct openb3d_openb3dcore_TChunk_obj*)((struct openb3d_openb3dcore_T3DS2_obj*)o)->clas->m_ReadChunk((struct openb3d_openb3dcore_T3DS2_obj*)o);
		struct BBDebugStm __stmt_1 = {0x5661fee21fff696c, 618, 0};
		bbOnDebugEnterStm(&__stmt_1);
		if(((struct openb3d_openb3dcore_TChunk_obj*)bbNullObjectTest((BBObject*)bbt_chunk))->_openb3d_openb3dcore_tchunk_id ==0){
			struct BBDebugScope __scope = {
				BBDEBUGSCOPE_LOCALBLOCK,
				0,
				{
					{
						BBDEBUGDECL_END
					}
				}
			};
			bbOnDebugEnterScope((BBDebugScope *)&__scope);
			struct BBDebugStm __stmt_0 = {0x5661fee21fff696c, 618, 0};
			bbOnDebugEnterStm(&__stmt_0);
			bbOnDebugLeaveScope();
			bbOnDebugLeaveScope();
			break;
		}
		struct BBDebugStm __stmt_2 = {0x5661fee21fff696c, 620, 0};
		bbOnDebugEnterStm(&__stmt_2);
		BBINT bbt_=((struct openb3d_openb3dcore_TChunk_obj*)bbNullObjectTest((BBObject*)bbt_chunk))->_openb3d_openb3dcore_tchunk_id ;
		struct BBDebugStm __stmt_3 = {0x5661fee21fff696c, 621, 0};
		bbOnDebugEnterStm(&__stmt_3);
		if(bbt_==48){
			struct BBDebugScope __scope = {
				BBDEBUGSCOPE_LOCALBLOCK,
				0,
				{
					{
						BBDEBUGDECL_END
					}
				}
			};
			bbOnDebugEnterScope((BBDebugScope *)&__scope);
			struct BBDebugStm __stmt_0 = {0x5661fee21fff696c, 622, 0};
			bbOnDebugEnterStm(&__stmt_0);
			bbt_pc=(((BBFLOAT)((struct brl_stream_TStream_obj*)bbNullObjectTest((BBObject*)((struct openb3d_openb3dcore_T3DS2_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_t3ds2_stream ))->clas->m_ReadShort((struct brl_stream_TStream_obj*)((struct openb3d_openb3dcore_T3DS2_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_t3ds2_stream ))/100.0f);
			struct BBDebugStm __stmt_1 = {0x5661fee21fff696c, 623, 0};
			bbOnDebugEnterStm(&__stmt_1);
			if(openb3d_openb3dcore_TGlobal3D_Log_3DS!=0){
				struct BBDebugScope __scope = {
					BBDEBUGSCOPE_LOCALBLOCK,
					0,
					{
						{
							BBDEBUGDECL_END
						}
					}
				};
				bbOnDebugEnterScope((BBDebugScope *)&__scope);
				struct BBDebugStm __stmt_0 = {0x5661fee21fff696c, 623, 0};
				bbOnDebugEnterStm(&__stmt_0);
				brl_blitz_DebugLog(bbStringConcat(((BBString*)&_s547),bbStringFromFloat(bbt_pc)));
				bbOnDebugLeaveScope();
			}
			bbOnDebugLeaveScope();
		}else{
			struct BBDebugScope __scope = {
				BBDEBUGSCOPE_LOCALBLOCK,
				0,
				{
					{
						BBDEBUGDECL_END
					}
				}
			};
			bbOnDebugEnterScope((BBDebugScope *)&__scope);
			struct BBDebugStm __stmt_0 = {0x5661fee21fff696c, 625, 0};
			bbOnDebugEnterStm(&__stmt_0);
			if(bbt_==49){
				struct BBDebugScope __scope = {
					BBDEBUGSCOPE_LOCALBLOCK,
					0,
					{
						{
							BBDEBUGDECL_END
						}
					}
				};
				bbOnDebugEnterScope((BBDebugScope *)&__scope);
				struct BBDebugStm __stmt_0 = {0x5661fee21fff696c, 626, 0};
				bbOnDebugEnterStm(&__stmt_0);
				bbt_pc=(((struct brl_stream_TStream_obj*)bbNullObjectTest((BBObject*)((struct openb3d_openb3dcore_T3DS2_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_t3ds2_stream ))->clas->m_ReadFloat((struct brl_stream_TStream_obj*)((struct openb3d_openb3dcore_T3DS2_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_t3ds2_stream )/100.0f);
				struct BBDebugStm __stmt_1 = {0x5661fee21fff696c, 627, 0};
				bbOnDebugEnterStm(&__stmt_1);
				if(openb3d_openb3dcore_TGlobal3D_Log_3DS!=0){
					struct BBDebugScope __scope = {
						BBDEBUGSCOPE_LOCALBLOCK,
						0,
						{
							{
								BBDEBUGDECL_END
							}
						}
					};
					bbOnDebugEnterScope((BBDebugScope *)&__scope);
					struct BBDebugStm __stmt_0 = {0x5661fee21fff696c, 627, 0};
					bbOnDebugEnterStm(&__stmt_0);
					brl_blitz_DebugLog(bbStringConcat(((BBString*)&_s548),bbStringFromFloat(bbt_pc)));
					bbOnDebugLeaveScope();
				}
				bbOnDebugLeaveScope();
			}else{
				struct BBDebugScope __scope = {
					BBDEBUGSCOPE_LOCALBLOCK,
					0,
					{
						{
							BBDEBUGDECL_END
						}
					}
				};
				bbOnDebugEnterScope((BBDebugScope *)&__scope);
				struct BBDebugStm __stmt_0 = {0x5661fee21fff696c, 630, 0};
				bbOnDebugEnterStm(&__stmt_0);
				brl_stream_SeekStream((struct brl_stream_TStream_obj*)((struct openb3d_openb3dcore_T3DS2_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_t3ds2_stream ,((BBLONG)((struct openb3d_openb3dcore_TChunk_obj*)bbNullObjectTest((BBObject*)bbt_chunk))->_openb3d_openb3dcore_tchunk_endchunk ),0);
				bbOnDebugLeaveScope();
			}
			bbOnDebugLeaveScope();
		}
		bbOnDebugLeaveScope();
	}
	struct BBDebugStm __stmt_2 = {0x5661fee21fff696c, 634, 0};
	bbOnDebugEnterStm(&__stmt_2);
	bbOnDebugLeaveScope();
	return bbt_pc;
}
BBARRAY _openb3d_openb3dcore_T3DS2_ParseColor_TTEntityi(struct openb3d_openb3dcore_T3DS2_obj* o,struct openb3d_openb3dcore_TEntity_obj* bbt_parent,BBINT bbt_endchunk){
	((struct openb3d_openb3dcore_T3DS2_obj*)bbNullObjectTest((BBObject*)o));
	BBBYTE bbt_r=0;
	BBBYTE bbt_g=0;
	BBBYTE bbt_b=0;
	struct BBDebugScope_6 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"ParseColor",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":T3DS2",
				.var_address=&o
			},
			{
				BBDEBUGDECL_LOCAL,
				"parent",
				":TEntity",
				.var_address=&bbt_parent
			},
			{
				BBDEBUGDECL_LOCAL,
				"endchunk",
				"i",
				.var_address=&bbt_endchunk
			},
			{
				BBDEBUGDECL_LOCAL,
				"r",
				"b",
				.var_address=&bbt_r
			},
			{
				BBDEBUGDECL_LOCAL,
				"g",
				"b",
				.var_address=&bbt_g
			},
			{
				BBDEBUGDECL_LOCAL,
				"b",
				"b",
				.var_address=&bbt_b
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x5661fee21fff696c, 638, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbt_r=255;
	struct BBDebugStm __stmt_1 = {0x5661fee21fff696c, 638, 0};
	bbOnDebugEnterStm(&__stmt_1);
	bbt_g=255;
	struct BBDebugStm __stmt_2 = {0x5661fee21fff696c, 638, 0};
	bbOnDebugEnterStm(&__stmt_2);
	bbt_b=255;
	struct BBDebugStm __stmt_3 = {0x5661fee21fff696c, 640, 0};
	bbOnDebugEnterStm(&__stmt_3);
	while(brl_stream_StreamPos((struct brl_stream_TStream_obj*)((struct openb3d_openb3dcore_T3DS2_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_t3ds2_stream )<((BBLONG)bbt_endchunk)){
		struct openb3d_openb3dcore_TChunk_obj* bbt_chunk=(struct openb3d_openb3dcore_TChunk_obj*)((struct openb3d_openb3dcore_TChunk_obj*)&bbNullObject);
		struct BBDebugScope_1 __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_LOCAL,
					"chunk",
					":TChunk",
					.var_address=&bbt_chunk
				},
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x5661fee21fff696c, 641, 0};
		bbOnDebugEnterStm(&__stmt_0);
		((struct openb3d_openb3dcore_T3DS2_obj*)bbNullObjectTest((BBObject*)o));
		bbt_chunk=(struct openb3d_openb3dcore_TChunk_obj*)((struct openb3d_openb3dcore_T3DS2_obj*)o)->clas->m_ReadChunk((struct openb3d_openb3dcore_T3DS2_obj*)o);
		struct BBDebugStm __stmt_1 = {0x5661fee21fff696c, 642, 0};
		bbOnDebugEnterStm(&__stmt_1);
		if(((struct openb3d_openb3dcore_TChunk_obj*)bbNullObjectTest((BBObject*)bbt_chunk))->_openb3d_openb3dcore_tchunk_id ==0){
			struct BBDebugScope __scope = {
				BBDEBUGSCOPE_LOCALBLOCK,
				0,
				{
					{
						BBDEBUGDECL_END
					}
				}
			};
			bbOnDebugEnterScope((BBDebugScope *)&__scope);
			struct BBDebugStm __stmt_0 = {0x5661fee21fff696c, 642, 0};
			bbOnDebugEnterStm(&__stmt_0);
			bbOnDebugLeaveScope();
			bbOnDebugLeaveScope();
			break;
		}
		struct BBDebugStm __stmt_2 = {0x5661fee21fff696c, 644, 0};
		bbOnDebugEnterStm(&__stmt_2);
		BBINT bbt_=((struct openb3d_openb3dcore_TChunk_obj*)bbNullObjectTest((BBObject*)bbt_chunk))->_openb3d_openb3dcore_tchunk_id ;
		struct BBDebugStm __stmt_3 = {0x5661fee21fff696c, 645, 0};
		bbOnDebugEnterStm(&__stmt_3);
		if(bbt_==16){
			struct BBDebugScope __scope = {
				BBDEBUGSCOPE_LOCALBLOCK,
				0,
				{
					{
						BBDEBUGDECL_END
					}
				}
			};
			bbOnDebugEnterScope((BBDebugScope *)&__scope);
			struct BBDebugStm __stmt_0 = {0x5661fee21fff696c, 646, 0};
			bbOnDebugEnterStm(&__stmt_0);
			bbt_r=((BBBYTE)(((struct brl_stream_TStream_obj*)bbNullObjectTest((BBObject*)((struct openb3d_openb3dcore_T3DS2_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_t3ds2_stream ))->clas->m_ReadFloat((struct brl_stream_TStream_obj*)((struct openb3d_openb3dcore_T3DS2_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_t3ds2_stream )*255.000000f));
			struct BBDebugStm __stmt_1 = {0x5661fee21fff696c, 647, 0};
			bbOnDebugEnterStm(&__stmt_1);
			bbt_g=((BBBYTE)(((struct brl_stream_TStream_obj*)bbNullObjectTest((BBObject*)((struct openb3d_openb3dcore_T3DS2_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_t3ds2_stream ))->clas->m_ReadFloat((struct brl_stream_TStream_obj*)((struct openb3d_openb3dcore_T3DS2_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_t3ds2_stream )*255.000000f));
			struct BBDebugStm __stmt_2 = {0x5661fee21fff696c, 648, 0};
			bbOnDebugEnterStm(&__stmt_2);
			bbt_b=((BBBYTE)(((struct brl_stream_TStream_obj*)bbNullObjectTest((BBObject*)((struct openb3d_openb3dcore_T3DS2_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_t3ds2_stream ))->clas->m_ReadFloat((struct brl_stream_TStream_obj*)((struct openb3d_openb3dcore_T3DS2_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_t3ds2_stream )*255.000000f));
			struct BBDebugStm __stmt_3 = {0x5661fee21fff696c, 649, 0};
			bbOnDebugEnterStm(&__stmt_3);
			if(openb3d_openb3dcore_TGlobal3D_Log_3DS!=0){
				struct BBDebugScope __scope = {
					BBDEBUGSCOPE_LOCALBLOCK,
					0,
					{
						{
							BBDEBUGDECL_END
						}
					}
				};
				bbOnDebugEnterScope((BBDebugScope *)&__scope);
				struct BBDebugStm __stmt_0 = {0x5661fee21fff696c, 649, 0};
				bbOnDebugEnterStm(&__stmt_0);
				brl_blitz_DebugLog(bbStringConcat(bbStringConcat(bbStringConcat(bbStringConcat(bbStringConcat(((BBString*)&_s549),bbStringFromInt(bbt_r)),((BBString*)&_s544)),bbStringFromInt(bbt_g)),((BBString*)&_s544)),bbStringFromInt(bbt_b)));
				bbOnDebugLeaveScope();
			}
			bbOnDebugLeaveScope();
		}else{
			struct BBDebugScope __scope = {
				BBDEBUGSCOPE_LOCALBLOCK,
				0,
				{
					{
						BBDEBUGDECL_END
					}
				}
			};
			bbOnDebugEnterScope((BBDebugScope *)&__scope);
			struct BBDebugStm __stmt_0 = {0x5661fee21fff696c, 651, 0};
			bbOnDebugEnterStm(&__stmt_0);
			if(bbt_==17){
				struct BBDebugScope __scope = {
					BBDEBUGSCOPE_LOCALBLOCK,
					0,
					{
						{
							BBDEBUGDECL_END
						}
					}
				};
				bbOnDebugEnterScope((BBDebugScope *)&__scope);
				struct BBDebugStm __stmt_0 = {0x5661fee21fff696c, 652, 0};
				bbOnDebugEnterStm(&__stmt_0);
				bbt_r=((BBBYTE)((struct brl_stream_TStream_obj*)bbNullObjectTest((BBObject*)((struct openb3d_openb3dcore_T3DS2_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_t3ds2_stream ))->clas->m_ReadByte((struct brl_stream_TStream_obj*)((struct openb3d_openb3dcore_T3DS2_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_t3ds2_stream ));
				struct BBDebugStm __stmt_1 = {0x5661fee21fff696c, 653, 0};
				bbOnDebugEnterStm(&__stmt_1);
				bbt_g=((BBBYTE)((struct brl_stream_TStream_obj*)bbNullObjectTest((BBObject*)((struct openb3d_openb3dcore_T3DS2_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_t3ds2_stream ))->clas->m_ReadByte((struct brl_stream_TStream_obj*)((struct openb3d_openb3dcore_T3DS2_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_t3ds2_stream ));
				struct BBDebugStm __stmt_2 = {0x5661fee21fff696c, 654, 0};
				bbOnDebugEnterStm(&__stmt_2);
				bbt_b=((BBBYTE)((struct brl_stream_TStream_obj*)bbNullObjectTest((BBObject*)((struct openb3d_openb3dcore_T3DS2_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_t3ds2_stream ))->clas->m_ReadByte((struct brl_stream_TStream_obj*)((struct openb3d_openb3dcore_T3DS2_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_t3ds2_stream ));
				struct BBDebugStm __stmt_3 = {0x5661fee21fff696c, 655, 0};
				bbOnDebugEnterStm(&__stmt_3);
				if(openb3d_openb3dcore_TGlobal3D_Log_3DS!=0){
					struct BBDebugScope __scope = {
						BBDEBUGSCOPE_LOCALBLOCK,
						0,
						{
							{
								BBDEBUGDECL_END
							}
						}
					};
					bbOnDebugEnterScope((BBDebugScope *)&__scope);
					struct BBDebugStm __stmt_0 = {0x5661fee21fff696c, 655, 0};
					bbOnDebugEnterStm(&__stmt_0);
					brl_blitz_DebugLog(bbStringConcat(bbStringConcat(bbStringConcat(bbStringConcat(bbStringConcat(((BBString*)&_s550),bbStringFromInt(bbt_r)),((BBString*)&_s544)),bbStringFromInt(bbt_g)),((BBString*)&_s544)),bbStringFromInt(bbt_b)));
					bbOnDebugLeaveScope();
				}
				bbOnDebugLeaveScope();
			}else{
				struct BBDebugScope __scope = {
					BBDEBUGSCOPE_LOCALBLOCK,
					0,
					{
						{
							BBDEBUGDECL_END
						}
					}
				};
				bbOnDebugEnterScope((BBDebugScope *)&__scope);
				struct BBDebugStm __stmt_0 = {0x5661fee21fff696c, 657, 0};
				bbOnDebugEnterStm(&__stmt_0);
				if(bbt_==19){
					struct BBDebugScope __scope = {
						BBDEBUGSCOPE_LOCALBLOCK,
						0,
						{
							{
								BBDEBUGDECL_END
							}
						}
					};
					bbOnDebugEnterScope((BBDebugScope *)&__scope);
					struct BBDebugStm __stmt_0 = {0x5661fee21fff696c, 658, 0};
					bbOnDebugEnterStm(&__stmt_0);
					bbt_r=((BBBYTE)(((struct brl_stream_TStream_obj*)bbNullObjectTest((BBObject*)((struct openb3d_openb3dcore_T3DS2_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_t3ds2_stream ))->clas->m_ReadFloat((struct brl_stream_TStream_obj*)((struct openb3d_openb3dcore_T3DS2_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_t3ds2_stream )*255.000000f));
					struct BBDebugStm __stmt_1 = {0x5661fee21fff696c, 659, 0};
					bbOnDebugEnterStm(&__stmt_1);
					bbt_g=((BBBYTE)(((struct brl_stream_TStream_obj*)bbNullObjectTest((BBObject*)((struct openb3d_openb3dcore_T3DS2_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_t3ds2_stream ))->clas->m_ReadFloat((struct brl_stream_TStream_obj*)((struct openb3d_openb3dcore_T3DS2_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_t3ds2_stream )*255.000000f));
					struct BBDebugStm __stmt_2 = {0x5661fee21fff696c, 660, 0};
					bbOnDebugEnterStm(&__stmt_2);
					bbt_b=((BBBYTE)(((struct brl_stream_TStream_obj*)bbNullObjectTest((BBObject*)((struct openb3d_openb3dcore_T3DS2_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_t3ds2_stream ))->clas->m_ReadFloat((struct brl_stream_TStream_obj*)((struct openb3d_openb3dcore_T3DS2_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_t3ds2_stream )*255.000000f));
					struct BBDebugStm __stmt_3 = {0x5661fee21fff696c, 661, 0};
					bbOnDebugEnterStm(&__stmt_3);
					if(openb3d_openb3dcore_TGlobal3D_Log_3DS!=0){
						struct BBDebugScope __scope = {
							BBDEBUGSCOPE_LOCALBLOCK,
							0,
							{
								{
									BBDEBUGDECL_END
								}
							}
						};
						bbOnDebugEnterScope((BBDebugScope *)&__scope);
						struct BBDebugStm __stmt_0 = {0x5661fee21fff696c, 661, 0};
						bbOnDebugEnterStm(&__stmt_0);
						brl_blitz_DebugLog(bbStringConcat(bbStringConcat(bbStringConcat(bbStringConcat(bbStringConcat(((BBString*)&_s551),bbStringFromInt(bbt_r)),((BBString*)&_s544)),bbStringFromInt(bbt_g)),((BBString*)&_s544)),bbStringFromInt(bbt_b)));
						bbOnDebugLeaveScope();
					}
					bbOnDebugLeaveScope();
				}else{
					struct BBDebugScope __scope = {
						BBDEBUGSCOPE_LOCALBLOCK,
						0,
						{
							{
								BBDEBUGDECL_END
							}
						}
					};
					bbOnDebugEnterScope((BBDebugScope *)&__scope);
					struct BBDebugStm __stmt_0 = {0x5661fee21fff696c, 663, 0};
					bbOnDebugEnterStm(&__stmt_0);
					if(bbt_==18){
						struct BBDebugScope __scope = {
							BBDEBUGSCOPE_LOCALBLOCK,
							0,
							{
								{
									BBDEBUGDECL_END
								}
							}
						};
						bbOnDebugEnterScope((BBDebugScope *)&__scope);
						struct BBDebugStm __stmt_0 = {0x5661fee21fff696c, 664, 0};
						bbOnDebugEnterStm(&__stmt_0);
						bbt_r=((BBBYTE)((struct brl_stream_TStream_obj*)bbNullObjectTest((BBObject*)((struct openb3d_openb3dcore_T3DS2_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_t3ds2_stream ))->clas->m_ReadByte((struct brl_stream_TStream_obj*)((struct openb3d_openb3dcore_T3DS2_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_t3ds2_stream ));
						struct BBDebugStm __stmt_1 = {0x5661fee21fff696c, 665, 0};
						bbOnDebugEnterStm(&__stmt_1);
						bbt_g=((BBBYTE)((struct brl_stream_TStream_obj*)bbNullObjectTest((BBObject*)((struct openb3d_openb3dcore_T3DS2_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_t3ds2_stream ))->clas->m_ReadByte((struct brl_stream_TStream_obj*)((struct openb3d_openb3dcore_T3DS2_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_t3ds2_stream ));
						struct BBDebugStm __stmt_2 = {0x5661fee21fff696c, 666, 0};
						bbOnDebugEnterStm(&__stmt_2);
						bbt_b=((BBBYTE)((struct brl_stream_TStream_obj*)bbNullObjectTest((BBObject*)((struct openb3d_openb3dcore_T3DS2_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_t3ds2_stream ))->clas->m_ReadByte((struct brl_stream_TStream_obj*)((struct openb3d_openb3dcore_T3DS2_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_t3ds2_stream ));
						struct BBDebugStm __stmt_3 = {0x5661fee21fff696c, 667, 0};
						bbOnDebugEnterStm(&__stmt_3);
						if(openb3d_openb3dcore_TGlobal3D_Log_3DS!=0){
							struct BBDebugScope __scope = {
								BBDEBUGSCOPE_LOCALBLOCK,
								0,
								{
									{
										BBDEBUGDECL_END
									}
								}
							};
							bbOnDebugEnterScope((BBDebugScope *)&__scope);
							struct BBDebugStm __stmt_0 = {0x5661fee21fff696c, 667, 0};
							bbOnDebugEnterStm(&__stmt_0);
							brl_blitz_DebugLog(bbStringConcat(bbStringConcat(bbStringConcat(bbStringConcat(bbStringConcat(((BBString*)&_s552),bbStringFromInt(bbt_r)),((BBString*)&_s544)),bbStringFromInt(bbt_g)),((BBString*)&_s544)),bbStringFromInt(bbt_b)));
							bbOnDebugLeaveScope();
						}
						bbOnDebugLeaveScope();
					}else{
						struct BBDebugScope __scope = {
							BBDEBUGSCOPE_LOCALBLOCK,
							0,
							{
								{
									BBDEBUGDECL_END
								}
							}
						};
						bbOnDebugEnterScope((BBDebugScope *)&__scope);
						struct BBDebugStm __stmt_0 = {0x5661fee21fff696c, 670, 0};
						bbOnDebugEnterStm(&__stmt_0);
						brl_stream_SeekStream((struct brl_stream_TStream_obj*)((struct openb3d_openb3dcore_T3DS2_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_t3ds2_stream ,((BBLONG)((struct openb3d_openb3dcore_TChunk_obj*)bbNullObjectTest((BBObject*)bbt_chunk))->_openb3d_openb3dcore_tchunk_endchunk ),0);
						bbOnDebugLeaveScope();
					}
					bbOnDebugLeaveScope();
				}
				bbOnDebugLeaveScope();
			}
			bbOnDebugLeaveScope();
		}
		bbOnDebugLeaveScope();
	}
	struct BBDebugStm __stmt_4 = {0x5661fee21fff696c, 674, 0};
	bbOnDebugEnterStm(&__stmt_4);
	BBBYTE bbt_2[]={bbt_r,bbt_g,bbt_b};
	BBARRAY bbt_3 = bbArrayFromData("b",3,bbt_2);
	bbOnDebugLeaveScope();
	return bbt_3;
}
BBINT _openb3d_openb3dcore_T3DS2_ParseMaterial_TTEntityi(struct openb3d_openb3dcore_T3DS2_obj* o,struct openb3d_openb3dcore_TEntity_obj* bbt_parent,BBINT bbt_endchunk){
	((struct openb3d_openb3dcore_T3DS2_obj*)bbNullObjectTest((BBObject*)o));
	BBSTRING bbt_matname=(&bbEmptyString);
	BBSTRING bbt_texname=(&bbEmptyString);
	BBARRAY bbt_layer=(&bbEmptyArray);
	BBARRAY bbt_col=(&bbEmptyArray);
	BBARRAY bbt_shine=(&bbEmptyArray);
	BBSTRING bbt_name=(&bbEmptyString);
	struct openb3d_openb3dcore_TTexture_obj* bbt_tex=(struct openb3d_openb3dcore_TTexture_obj*)((struct openb3d_openb3dcore_TTexture_obj*)&bbNullObject);
	struct BBDebugScope_10 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"ParseMaterial",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":T3DS2",
				.var_address=&o
			},
			{
				BBDEBUGDECL_LOCAL,
				"parent",
				":TEntity",
				.var_address=&bbt_parent
			},
			{
				BBDEBUGDECL_LOCAL,
				"endchunk",
				"i",
				.var_address=&bbt_endchunk
			},
			{
				BBDEBUGDECL_LOCAL,
				"matname",
				"$",
				.var_address=&bbt_matname
			},
			{
				BBDEBUGDECL_LOCAL,
				"texname",
				"$",
				.var_address=&bbt_texname
			},
			{
				BBDEBUGDECL_LOCAL,
				"layer",
				"[]i",
				.var_address=&bbt_layer
			},
			{
				BBDEBUGDECL_LOCAL,
				"col",
				"[]b",
				.var_address=&bbt_col
			},
			{
				BBDEBUGDECL_LOCAL,
				"shine",
				"[]f",
				.var_address=&bbt_shine
			},
			{
				BBDEBUGDECL_LOCAL,
				"name",
				"$",
				.var_address=&bbt_name
			},
			{
				BBDEBUGDECL_LOCAL,
				"tex",
				":TTexture",
				.var_address=&bbt_tex
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x5661fee21fff696c, 678, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbt_matname=((BBString*)&bbEmptyString);
	struct BBDebugStm __stmt_1 = {0x5661fee21fff696c, 678, 0};
	bbOnDebugEnterStm(&__stmt_1);
	bbt_texname=((BBString*)&bbEmptyString);
	struct BBDebugStm __stmt_2 = {0x5661fee21fff696c, 678, 0};
	bbOnDebugEnterStm(&__stmt_2);
	BBINT bbt_[]={0};
	BBARRAY bbt_2 = bbArrayFromData("i",1,bbt_);
	bbt_layer=bbt_2;
	struct BBDebugStm __stmt_3 = {0x5661fee21fff696c, 679, 0};
	bbOnDebugEnterStm(&__stmt_3);
	BBBYTE bbt_3[]={255,255,255};
	BBARRAY bbt_4 = bbArrayFromData("b",3,bbt_3);
	bbt_col=bbt_4;
	struct BBDebugStm __stmt_4 = {0x5661fee21fff696c, 680, 0};
	bbOnDebugEnterStm(&__stmt_4);
	BBFLOAT bbt_5[]={1.0f};
	BBARRAY bbt_6 = bbArrayFromData("f",1,bbt_5);
	bbt_shine=bbt_6;
	struct BBDebugStm __stmt_5 = {0x5661fee21fff696c, 682, 0};
	bbOnDebugEnterStm(&__stmt_5);
	while(brl_stream_StreamPos((struct brl_stream_TStream_obj*)((struct openb3d_openb3dcore_T3DS2_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_t3ds2_stream )<((BBLONG)bbt_endchunk)){
		struct openb3d_openb3dcore_TChunk_obj* bbt_chunk=(struct openb3d_openb3dcore_TChunk_obj*)((struct openb3d_openb3dcore_TChunk_obj*)&bbNullObject);
		struct BBDebugScope_1 __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_LOCAL,
					"chunk",
					":TChunk",
					.var_address=&bbt_chunk
				},
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x5661fee21fff696c, 683, 0};
		bbOnDebugEnterStm(&__stmt_0);
		((struct openb3d_openb3dcore_T3DS2_obj*)bbNullObjectTest((BBObject*)o));
		bbt_chunk=(struct openb3d_openb3dcore_TChunk_obj*)((struct openb3d_openb3dcore_T3DS2_obj*)o)->clas->m_ReadChunk((struct openb3d_openb3dcore_T3DS2_obj*)o);
		struct BBDebugStm __stmt_1 = {0x5661fee21fff696c, 684, 0};
		bbOnDebugEnterStm(&__stmt_1);
		if(((struct openb3d_openb3dcore_TChunk_obj*)bbNullObjectTest((BBObject*)bbt_chunk))->_openb3d_openb3dcore_tchunk_id ==0){
			struct BBDebugScope __scope = {
				BBDEBUGSCOPE_LOCALBLOCK,
				0,
				{
					{
						BBDEBUGDECL_END
					}
				}
			};
			bbOnDebugEnterScope((BBDebugScope *)&__scope);
			struct BBDebugStm __stmt_0 = {0x5661fee21fff696c, 684, 0};
			bbOnDebugEnterStm(&__stmt_0);
			bbOnDebugLeaveScope();
			bbOnDebugLeaveScope();
			break;
		}
		struct BBDebugStm __stmt_2 = {0x5661fee21fff696c, 686, 0};
		bbOnDebugEnterStm(&__stmt_2);
		BBINT bbt_7=((struct openb3d_openb3dcore_TChunk_obj*)bbNullObjectTest((BBObject*)bbt_chunk))->_openb3d_openb3dcore_tchunk_id ;
		struct BBDebugStm __stmt_3 = {0x5661fee21fff696c, 687, 0};
		bbOnDebugEnterStm(&__stmt_3);
		if(bbt_7==40960){
			struct BBDebugScope __scope = {
				BBDEBUGSCOPE_LOCALBLOCK,
				0,
				{
					{
						BBDEBUGDECL_END
					}
				}
			};
			bbOnDebugEnterScope((BBDebugScope *)&__scope);
			struct BBDebugStm __stmt_0 = {0x5661fee21fff696c, 688, 0};
			bbOnDebugEnterStm(&__stmt_0);
			((struct openb3d_openb3dcore_T3DS2_obj*)bbNullObjectTest((BBObject*)o));
			bbt_matname=((struct openb3d_openb3dcore_T3DS2_obj*)o)->clas->m_ParseString((struct openb3d_openb3dcore_T3DS2_obj*)o);
			struct BBDebugStm __stmt_1 = {0x5661fee21fff696c, 689, 0};
			bbOnDebugEnterStm(&__stmt_1);
			if(openb3d_openb3dcore_TGlobal3D_Log_3DS!=0){
				struct BBDebugScope __scope = {
					BBDEBUGSCOPE_LOCALBLOCK,
					0,
					{
						{
							BBDEBUGDECL_END
						}
					}
				};
				bbOnDebugEnterScope((BBDebugScope *)&__scope);
				struct BBDebugStm __stmt_0 = {0x5661fee21fff696c, 689, 0};
				bbOnDebugEnterStm(&__stmt_0);
				brl_blitz_DebugLog(bbStringConcat(((BBString*)&_s553),bbt_matname));
				bbOnDebugLeaveScope();
			}
			bbOnDebugLeaveScope();
		}else{
			struct BBDebugScope __scope = {
				BBDEBUGSCOPE_LOCALBLOCK,
				0,
				{
					{
						BBDEBUGDECL_END
					}
				}
			};
			bbOnDebugEnterScope((BBDebugScope *)&__scope);
			struct BBDebugStm __stmt_0 = {0x5661fee21fff696c, 695, 0};
			bbOnDebugEnterStm(&__stmt_0);
			if(bbt_7==40992){
				struct BBDebugScope __scope = {
					BBDEBUGSCOPE_LOCALBLOCK,
					0,
					{
						{
							BBDEBUGDECL_END
						}
					}
				};
				bbOnDebugEnterScope((BBDebugScope *)&__scope);
				struct BBDebugStm __stmt_0 = {0x5661fee21fff696c, 696, 0};
				bbOnDebugEnterStm(&__stmt_0);
				((struct openb3d_openb3dcore_T3DS2_obj*)bbNullObjectTest((BBObject*)o));
				bbt_col=((struct openb3d_openb3dcore_T3DS2_obj*)o)->clas->m_ParseColor_TTEntityi((struct openb3d_openb3dcore_T3DS2_obj*)o,(struct openb3d_openb3dcore_TEntity_obj*)bbt_parent,((struct openb3d_openb3dcore_TChunk_obj*)bbNullObjectTest((BBObject*)bbt_chunk))->_openb3d_openb3dcore_tchunk_endchunk );
				struct BBDebugStm __stmt_1 = {0x5661fee21fff696c, 697, 0};
				bbOnDebugEnterStm(&__stmt_1);
				if(openb3d_openb3dcore_TGlobal3D_Log_3DS!=0){
					struct BBDebugScope __scope = {
						BBDEBUGSCOPE_LOCALBLOCK,
						0,
						{
							{
								BBDEBUGDECL_END
							}
						}
					};
					bbOnDebugEnterScope((BBDebugScope *)&__scope);
					struct BBDebugStm __stmt_0 = {0x5661fee21fff696c, 697, 0};
					bbOnDebugEnterStm(&__stmt_0);
					brl_blitz_DebugLog(bbStringConcat(bbStringConcat(bbStringConcat(bbStringConcat(bbStringConcat(((BBString*)&_s554),bbStringFromInt(((BBBYTE*)BBARRAYDATAINDEX((bbt_col),(bbt_col)->dims,0U))[0U])),((BBString*)&_s445)),bbStringFromInt(((BBBYTE*)BBARRAYDATAINDEX((bbt_col),(bbt_col)->dims,1U))[1U])),((BBString*)&_s445)),bbStringFromInt(((BBBYTE*)BBARRAYDATAINDEX((bbt_col),(bbt_col)->dims,2U))[2U])));
					bbOnDebugLeaveScope();
				}
				bbOnDebugLeaveScope();
			}else{
				struct BBDebugScope __scope = {
					BBDEBUGSCOPE_LOCALBLOCK,
					0,
					{
						{
							BBDEBUGDECL_END
						}
					}
				};
				bbOnDebugEnterScope((BBDebugScope *)&__scope);
				struct BBDebugStm __stmt_0 = {0x5661fee21fff696c, 703, 0};
				bbOnDebugEnterStm(&__stmt_0);
				if(bbt_7==41024){
					struct BBDebugScope __scope = {
						BBDEBUGSCOPE_LOCALBLOCK,
						0,
						{
							{
								BBDEBUGDECL_END
							}
						}
					};
					bbOnDebugEnterScope((BBDebugScope *)&__scope);
					struct BBDebugStm __stmt_0 = {0x5661fee21fff696c, 704, 0};
					bbOnDebugEnterStm(&__stmt_0);
					((struct openb3d_openb3dcore_T3DS2_obj*)bbNullObjectTest((BBObject*)o));
					((BBFLOAT*)BBARRAYDATAINDEX((bbt_shine),(bbt_shine)->dims,0U))[0U]=((struct openb3d_openb3dcore_T3DS2_obj*)o)->clas->m_ParsePercent_TTEntityi((struct openb3d_openb3dcore_T3DS2_obj*)o,(struct openb3d_openb3dcore_TEntity_obj*)bbt_parent,((struct openb3d_openb3dcore_TChunk_obj*)bbNullObjectTest((BBObject*)bbt_chunk))->_openb3d_openb3dcore_tchunk_endchunk );
					struct BBDebugStm __stmt_1 = {0x5661fee21fff696c, 705, 0};
					bbOnDebugEnterStm(&__stmt_1);
					if(openb3d_openb3dcore_TGlobal3D_Log_3DS!=0){
						struct BBDebugScope __scope = {
							BBDEBUGSCOPE_LOCALBLOCK,
							0,
							{
								{
									BBDEBUGDECL_END
								}
							}
						};
						bbOnDebugEnterScope((BBDebugScope *)&__scope);
						struct BBDebugStm __stmt_0 = {0x5661fee21fff696c, 705, 0};
						bbOnDebugEnterStm(&__stmt_0);
						brl_blitz_DebugLog(bbStringConcat(((BBString*)&_s555),bbStringFromFloat(((BBFLOAT*)BBARRAYDATAINDEX((bbt_shine),(bbt_shine)->dims,0U))[0U])));
						bbOnDebugLeaveScope();
					}
					bbOnDebugLeaveScope();
				}else{
					struct BBDebugScope __scope = {
						BBDEBUGSCOPE_LOCALBLOCK,
						0,
						{
							{
								BBDEBUGDECL_END
							}
						}
					};
					bbOnDebugEnterScope((BBDebugScope *)&__scope);
					struct BBDebugStm __stmt_0 = {0x5661fee21fff696c, 775, 0};
					bbOnDebugEnterStm(&__stmt_0);
					if(bbt_7==41472){
						struct BBDebugScope __scope = {
							BBDEBUGSCOPE_LOCALBLOCK,
							0,
							{
								{
									BBDEBUGDECL_END
								}
							}
						};
						bbOnDebugEnterScope((BBDebugScope *)&__scope);
						struct BBDebugStm __stmt_0 = {0x5661fee21fff696c, 776, 0};
						bbOnDebugEnterStm(&__stmt_0);
						if(openb3d_openb3dcore_TGlobal3D_Log_3DS!=0){
							struct BBDebugScope __scope = {
								BBDEBUGSCOPE_LOCALBLOCK,
								0,
								{
									{
										BBDEBUGDECL_END
									}
								}
							};
							bbOnDebugEnterScope((BBDebugScope *)&__scope);
							struct BBDebugStm __stmt_0 = {0x5661fee21fff696c, 776, 0};
							bbOnDebugEnterStm(&__stmt_0);
							brl_blitz_DebugLog((BBString*)&_s556);
							bbOnDebugLeaveScope();
						}
						struct BBDebugStm __stmt_1 = {0x5661fee21fff696c, 777, 0};
						bbOnDebugEnterStm(&__stmt_1);
						((BBINT*)BBARRAYDATAINDEX((bbt_layer),(bbt_layer)->dims,0U))[0U]=0;
						struct BBDebugStm __stmt_2 = {0x5661fee21fff696c, 778, 0};
						bbOnDebugEnterStm(&__stmt_2);
						((struct openb3d_openb3dcore_T3DS2_obj*)bbNullObjectTest((BBObject*)o));
						bbt_texname=((struct openb3d_openb3dcore_T3DS2_obj*)o)->clas->m_ParseMap_TTEntityi((struct openb3d_openb3dcore_T3DS2_obj*)o,(struct openb3d_openb3dcore_TEntity_obj*)bbt_parent,((struct openb3d_openb3dcore_TChunk_obj*)bbNullObjectTest((BBObject*)bbt_chunk))->_openb3d_openb3dcore_tchunk_endchunk );
						bbOnDebugLeaveScope();
					}else{
						struct BBDebugScope __scope = {
							BBDEBUGSCOPE_LOCALBLOCK,
							0,
							{
								{
									BBDEBUGDECL_END
								}
							}
						};
						bbOnDebugEnterScope((BBDebugScope *)&__scope);
						struct BBDebugStm __stmt_0 = {0x5661fee21fff696c, 780, 0};
						bbOnDebugEnterStm(&__stmt_0);
						if(bbt_7==41786){
							struct BBDebugScope __scope = {
								BBDEBUGSCOPE_LOCALBLOCK,
								0,
								{
									{
										BBDEBUGDECL_END
									}
								}
							};
							bbOnDebugEnterScope((BBDebugScope *)&__scope);
							struct BBDebugStm __stmt_0 = {0x5661fee21fff696c, 781, 0};
							bbOnDebugEnterStm(&__stmt_0);
							if(openb3d_openb3dcore_TGlobal3D_Log_3DS!=0){
								struct BBDebugScope __scope = {
									BBDEBUGSCOPE_LOCALBLOCK,
									0,
									{
										{
											BBDEBUGDECL_END
										}
									}
								};
								bbOnDebugEnterScope((BBDebugScope *)&__scope);
								struct BBDebugStm __stmt_0 = {0x5661fee21fff696c, 781, 0};
								bbOnDebugEnterStm(&__stmt_0);
								brl_blitz_DebugLog((BBString*)&_s557);
								bbOnDebugLeaveScope();
							}
							struct BBDebugStm __stmt_1 = {0x5661fee21fff696c, 782, 0};
							bbOnDebugEnterStm(&__stmt_1);
							((BBINT*)BBARRAYDATAINDEX((bbt_layer),(bbt_layer)->dims,0U))[0U]=1;
							struct BBDebugStm __stmt_2 = {0x5661fee21fff696c, 783, 0};
							bbOnDebugEnterStm(&__stmt_2);
							((struct openb3d_openb3dcore_T3DS2_obj*)bbNullObjectTest((BBObject*)o));
							bbt_texname=((struct openb3d_openb3dcore_T3DS2_obj*)o)->clas->m_ParseMap_TTEntityi((struct openb3d_openb3dcore_T3DS2_obj*)o,(struct openb3d_openb3dcore_TEntity_obj*)bbt_parent,((struct openb3d_openb3dcore_TChunk_obj*)bbNullObjectTest((BBObject*)bbt_chunk))->_openb3d_openb3dcore_tchunk_endchunk );
							bbOnDebugLeaveScope();
						}else{
							struct BBDebugScope __scope = {
								BBDEBUGSCOPE_LOCALBLOCK,
								0,
								{
									{
										BBDEBUGDECL_END
									}
								}
							};
							bbOnDebugEnterScope((BBDebugScope *)&__scope);
							struct BBDebugStm __stmt_0 = {0x5661fee21fff696c, 842, 0};
							bbOnDebugEnterStm(&__stmt_0);
							brl_stream_SeekStream((struct brl_stream_TStream_obj*)((struct openb3d_openb3dcore_T3DS2_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_t3ds2_stream ,((BBLONG)((struct openb3d_openb3dcore_TChunk_obj*)bbNullObjectTest((BBObject*)bbt_chunk))->_openb3d_openb3dcore_tchunk_endchunk ),0);
							bbOnDebugLeaveScope();
						}
						bbOnDebugLeaveScope();
					}
					bbOnDebugLeaveScope();
				}
				bbOnDebugLeaveScope();
			}
			bbOnDebugLeaveScope();
		}
		bbOnDebugLeaveScope();
	}
	struct BBDebugStm __stmt_6 = {0x5661fee21fff696c, 847, 0};
	bbOnDebugEnterStm(&__stmt_6);
	bbt_name=brl_filesystem_StripDir(bbt_texname);
	struct BBDebugStm __stmt_7 = {0x5661fee21fff696c, 848, 0};
	bbOnDebugEnterStm(&__stmt_7);
	if((bbStringStartsWith((BBSTRING)((struct openb3d_openb3dcore_T3DS2_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_t3ds2_filename ,((BBString*)&_s450))!=0) || (bbStringStartsWith((BBSTRING)((struct openb3d_openb3dcore_T3DS2_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_t3ds2_filename ,((BBString*)&_s451))!=0)){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x5661fee21fff696c, 849, 0};
		bbOnDebugEnterStm(&__stmt_0);
		bbt_name=bbStringConcat(bbStringConcat(((struct openb3d_openb3dcore_T3DS2_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_t3ds2_filepath ,((BBString*)&_s401)),brl_filesystem_StripDir(bbt_texname));
		bbOnDebugLeaveScope();
	}
	struct BBDebugStm __stmt_8 = {0x5661fee21fff696c, 852, 0};
	bbOnDebugEnterStm(&__stmt_8);
	bbt_tex=(struct openb3d_openb3dcore_TTexture_obj*)openb3d_openb3dcore_LoadTexture(bbt_name,((struct openb3d_openb3dcore_T3DS2_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_t3ds2_override_texflags ,(struct openb3d_openb3dcore_TTexture_obj*)&bbNullObject);
	struct BBDebugStm __stmt_9 = {0x5661fee21fff696c, 853, 0};
	bbOnDebugEnterStm(&__stmt_9);
	if(openb3d_openb3dcore_TGlobal3D_Log_3DS!=0){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x5661fee21fff696c, 853, 0};
		bbOnDebugEnterStm(&__stmt_0);
		brl_blitz_DebugLog(bbStringConcat(bbStringConcat(bbStringConcat(bbStringConcat(bbStringConcat(((BBString*)&_s558),bbt_name),((BBString*)&_s559)),bbt_matname),((BBString*)&_s560)),bbt_texname));
		bbOnDebugLeaveScope();
	}
	struct BBDebugStm __stmt_10 = {0x5661fee21fff696c, 855, 0};
	bbOnDebugEnterStm(&__stmt_10);
	brl_map_MapInsert((struct brl_map_TMap_obj*)((struct openb3d_openb3dcore_T3DS2_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_t3ds2_materialmap ,(BBOBJECT)bbt_matname,(BBOBJECT)bbt_tex);
	struct BBDebugStm __stmt_11 = {0x5661fee21fff696c, 856, 0};
	bbOnDebugEnterStm(&__stmt_11);
	brl_map_MapInsert((struct brl_map_TMap_obj*)((struct openb3d_openb3dcore_T3DS2_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_t3ds2_materialcolormap ,(BBOBJECT)bbt_matname,(BBOBJECT)bbt_col);
	struct BBDebugStm __stmt_12 = {0x5661fee21fff696c, 857, 0};
	bbOnDebugEnterStm(&__stmt_12);
	brl_map_MapInsert((struct brl_map_TMap_obj*)((struct openb3d_openb3dcore_T3DS2_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_t3ds2_materialshinemap ,(BBOBJECT)bbt_matname,(BBOBJECT)bbt_shine);
	struct BBDebugStm __stmt_13 = {0x5661fee21fff696c, 858, 0};
	bbOnDebugEnterStm(&__stmt_13);
	brl_map_MapInsert((struct brl_map_TMap_obj*)((struct openb3d_openb3dcore_T3DS2_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_t3ds2_materiallayermap ,(BBOBJECT)bbt_matname,(BBOBJECT)bbt_layer);
	struct BBDebugStm __stmt_14 = {0x5661fee21fff696c, 860, 0};
	bbOnDebugEnterStm(&__stmt_14);
	if(((BBOBJECT)bbt_tex)!=&bbNullObject){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x5661fee21fff696c, 861, 0};
		bbOnDebugEnterStm(&__stmt_0);
		((struct openb3d_openb3dcore_TBrush_obj*)bbNullObjectTest((BBObject*)((struct openb3d_openb3dcore_T3DS2_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_t3ds2_defaultbrush ))->clas->m_BrushTexture_TTTextureii((struct openb3d_openb3dcore_TBrush_obj*)((struct openb3d_openb3dcore_T3DS2_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_t3ds2_defaultbrush ,(struct openb3d_openb3dcore_TTexture_obj*)bbt_tex,0,((BBINT*)BBARRAYDATAINDEX((bbt_layer),(bbt_layer)->dims,0U))[0U]);
		struct BBDebugStm __stmt_1 = {0x5661fee21fff696c, 862, 0};
		bbOnDebugEnterStm(&__stmt_1);
		((struct openb3d_openb3dcore_TBrush_obj*)bbNullObjectTest((BBObject*)((struct openb3d_openb3dcore_T3DS2_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_t3ds2_defaultbrush ))->clas->m_BrushColor_fff((struct openb3d_openb3dcore_TBrush_obj*)((struct openb3d_openb3dcore_T3DS2_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_t3ds2_defaultbrush ,255.000000f,255.000000f,255.000000f);
		bbOnDebugLeaveScope();
	}else{
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x5661fee21fff696c, 863, 0};
		bbOnDebugEnterStm(&__stmt_0);
		if(bbt_col!=(&bbEmptyArray)){
			struct BBDebugScope __scope = {
				BBDEBUGSCOPE_LOCALBLOCK,
				0,
				{
					{
						BBDEBUGDECL_END
					}
				}
			};
			bbOnDebugEnterScope((BBDebugScope *)&__scope);
			struct BBDebugStm __stmt_0 = {0x5661fee21fff696c, 864, 0};
			bbOnDebugEnterStm(&__stmt_0);
			((struct openb3d_openb3dcore_TBrush_obj*)bbNullObjectTest((BBObject*)((struct openb3d_openb3dcore_T3DS2_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_t3ds2_defaultbrush ))->clas->m_BrushColor_fff((struct openb3d_openb3dcore_TBrush_obj*)((struct openb3d_openb3dcore_T3DS2_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_t3ds2_defaultbrush ,((BBFLOAT)((BBBYTE*)BBARRAYDATAINDEX((bbt_col),(bbt_col)->dims,0U))[0U]),((BBFLOAT)((BBBYTE*)BBARRAYDATAINDEX((bbt_col),(bbt_col)->dims,1U))[1U]),((BBFLOAT)((BBBYTE*)BBARRAYDATAINDEX((bbt_col),(bbt_col)->dims,2U))[2U]));
			bbOnDebugLeaveScope();
		}
		bbOnDebugLeaveScope();
	}
	struct BBDebugStm __stmt_15 = {0x5661fee21fff696c, 866, 0};
	bbOnDebugEnterStm(&__stmt_15);
	if(bbt_shine!=(&bbEmptyArray)){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x5661fee21fff696c, 867, 0};
		bbOnDebugEnterStm(&__stmt_0);
		((struct openb3d_openb3dcore_TBrush_obj*)bbNullObjectTest((BBObject*)((struct openb3d_openb3dcore_T3DS2_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_t3ds2_defaultbrush ))->clas->m_BrushShininess_f((struct openb3d_openb3dcore_TBrush_obj*)((struct openb3d_openb3dcore_T3DS2_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_t3ds2_defaultbrush ,(((BBFLOAT*)BBARRAYDATAINDEX((bbt_shine),(bbt_shine)->dims,0U))[0U]/255.0f));
		bbOnDebugLeaveScope();
	}
	bbOnDebugLeaveScope();
	return 0;
}
BBINT _openb3d_openb3dcore_T3DS2_ParseKeyFrames_TTEntityi(struct openb3d_openb3dcore_T3DS2_obj* o,struct openb3d_openb3dcore_TEntity_obj* bbt_parent,BBINT bbt_endchunk){
	((struct openb3d_openb3dcore_T3DS2_obj*)bbNullObjectTest((BBObject*)o));
	struct BBDebugScope_3 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"ParseKeyFrames",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":T3DS2",
				.var_address=&o
			},
			{
				BBDEBUGDECL_LOCAL,
				"parent",
				":TEntity",
				.var_address=&bbt_parent
			},
			{
				BBDEBUGDECL_LOCAL,
				"endchunk",
				"i",
				.var_address=&bbt_endchunk
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x5661fee21fff696c, 874, 0};
	bbOnDebugEnterStm(&__stmt_0);
	while(brl_stream_StreamPos((struct brl_stream_TStream_obj*)((struct openb3d_openb3dcore_T3DS2_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_t3ds2_stream )<((BBLONG)bbt_endchunk)){
		struct openb3d_openb3dcore_TChunk_obj* bbt_chunk=(struct openb3d_openb3dcore_TChunk_obj*)((struct openb3d_openb3dcore_TChunk_obj*)&bbNullObject);
		struct BBDebugScope_1 __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_LOCAL,
					"chunk",
					":TChunk",
					.var_address=&bbt_chunk
				},
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x5661fee21fff696c, 875, 0};
		bbOnDebugEnterStm(&__stmt_0);
		((struct openb3d_openb3dcore_T3DS2_obj*)bbNullObjectTest((BBObject*)o));
		bbt_chunk=(struct openb3d_openb3dcore_TChunk_obj*)((struct openb3d_openb3dcore_T3DS2_obj*)o)->clas->m_ReadChunk((struct openb3d_openb3dcore_T3DS2_obj*)o);
		struct BBDebugStm __stmt_1 = {0x5661fee21fff696c, 876, 0};
		bbOnDebugEnterStm(&__stmt_1);
		if(((struct openb3d_openb3dcore_TChunk_obj*)bbNullObjectTest((BBObject*)bbt_chunk))->_openb3d_openb3dcore_tchunk_id ==0){
			struct BBDebugScope __scope = {
				BBDEBUGSCOPE_LOCALBLOCK,
				0,
				{
					{
						BBDEBUGDECL_END
					}
				}
			};
			bbOnDebugEnterScope((BBDebugScope *)&__scope);
			struct BBDebugStm __stmt_0 = {0x5661fee21fff696c, 876, 0};
			bbOnDebugEnterStm(&__stmt_0);
			bbOnDebugLeaveScope();
			bbOnDebugLeaveScope();
			break;
		}
		struct BBDebugStm __stmt_2 = {0x5661fee21fff696c, 878, 0};
		bbOnDebugEnterStm(&__stmt_2);
		BBINT bbt_=((struct openb3d_openb3dcore_TChunk_obj*)bbNullObjectTest((BBObject*)bbt_chunk))->_openb3d_openb3dcore_tchunk_id ;
		struct BBDebugStm __stmt_3 = {0x5661fee21fff696c, 879, 0};
		bbOnDebugEnterStm(&__stmt_3);
		if(bbt_==45058){
			struct BBDebugScope __scope = {
				BBDEBUGSCOPE_LOCALBLOCK,
				0,
				{
					{
						BBDEBUGDECL_END
					}
				}
			};
			bbOnDebugEnterScope((BBDebugScope *)&__scope);
			struct BBDebugStm __stmt_0 = {0x5661fee21fff696c, 880, 0};
			bbOnDebugEnterStm(&__stmt_0);
			if(openb3d_openb3dcore_TGlobal3D_Log_3DS!=0){
				struct BBDebugScope __scope = {
					BBDEBUGSCOPE_LOCALBLOCK,
					0,
					{
						{
							BBDEBUGDECL_END
						}
					}
				};
				bbOnDebugEnterScope((BBDebugScope *)&__scope);
				struct BBDebugStm __stmt_0 = {0x5661fee21fff696c, 880, 0};
				bbOnDebugEnterStm(&__stmt_0);
				brl_blitz_DebugLog((BBString*)&_s561);
				bbOnDebugLeaveScope();
			}
			struct BBDebugStm __stmt_1 = {0x5661fee21fff696c, 881, 0};
			bbOnDebugEnterStm(&__stmt_1);
			((struct openb3d_openb3dcore_T3DS2_obj*)bbNullObjectTest((BBObject*)o));
			((struct openb3d_openb3dcore_T3DS2_obj*)o)->clas->m_ParseMeshInfo_TTEntityi((struct openb3d_openb3dcore_T3DS2_obj*)o,(struct openb3d_openb3dcore_TEntity_obj*)bbt_parent,((struct openb3d_openb3dcore_TChunk_obj*)bbNullObjectTest((BBObject*)bbt_chunk))->_openb3d_openb3dcore_tchunk_endchunk );
			bbOnDebugLeaveScope();
		}else{
			struct BBDebugScope __scope = {
				BBDEBUGSCOPE_LOCALBLOCK,
				0,
				{
					{
						BBDEBUGDECL_END
					}
				}
			};
			bbOnDebugEnterScope((BBDebugScope *)&__scope);
			struct BBDebugStm __stmt_0 = {0x5661fee21fff696c, 884, 0};
			bbOnDebugEnterStm(&__stmt_0);
			brl_stream_SeekStream((struct brl_stream_TStream_obj*)((struct openb3d_openb3dcore_T3DS2_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_t3ds2_stream ,((BBLONG)((struct openb3d_openb3dcore_TChunk_obj*)bbNullObjectTest((BBObject*)bbt_chunk))->_openb3d_openb3dcore_tchunk_endchunk ),0);
			bbOnDebugLeaveScope();
		}
		bbOnDebugLeaveScope();
	}
	bbOnDebugLeaveScope();
	return 0;
}
BBINT _openb3d_openb3dcore_T3DS2_ParseScene_TTEntityi(struct openb3d_openb3dcore_T3DS2_obj* o,struct openb3d_openb3dcore_TEntity_obj* bbt_parent,BBINT bbt_endchunk){
	((struct openb3d_openb3dcore_T3DS2_obj*)bbNullObjectTest((BBObject*)o));
	struct BBDebugScope_3 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"ParseScene",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":T3DS2",
				.var_address=&o
			},
			{
				BBDEBUGDECL_LOCAL,
				"parent",
				":TEntity",
				.var_address=&bbt_parent
			},
			{
				BBDEBUGDECL_LOCAL,
				"endchunk",
				"i",
				.var_address=&bbt_endchunk
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x5661fee21fff696c, 892, 0};
	bbOnDebugEnterStm(&__stmt_0);
	while(brl_stream_StreamPos((struct brl_stream_TStream_obj*)((struct openb3d_openb3dcore_T3DS2_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_t3ds2_stream )<((BBLONG)bbt_endchunk)){
		struct openb3d_openb3dcore_TChunk_obj* bbt_chunk=(struct openb3d_openb3dcore_TChunk_obj*)((struct openb3d_openb3dcore_TChunk_obj*)&bbNullObject);
		struct BBDebugScope_1 __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_LOCAL,
					"chunk",
					":TChunk",
					.var_address=&bbt_chunk
				},
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x5661fee21fff696c, 893, 0};
		bbOnDebugEnterStm(&__stmt_0);
		((struct openb3d_openb3dcore_T3DS2_obj*)bbNullObjectTest((BBObject*)o));
		bbt_chunk=(struct openb3d_openb3dcore_TChunk_obj*)((struct openb3d_openb3dcore_T3DS2_obj*)o)->clas->m_ReadChunk((struct openb3d_openb3dcore_T3DS2_obj*)o);
		struct BBDebugStm __stmt_1 = {0x5661fee21fff696c, 894, 0};
		bbOnDebugEnterStm(&__stmt_1);
		if(((struct openb3d_openb3dcore_TChunk_obj*)bbNullObjectTest((BBObject*)bbt_chunk))->_openb3d_openb3dcore_tchunk_id ==0){
			struct BBDebugScope __scope = {
				BBDEBUGSCOPE_LOCALBLOCK,
				0,
				{
					{
						BBDEBUGDECL_END
					}
				}
			};
			bbOnDebugEnterScope((BBDebugScope *)&__scope);
			struct BBDebugStm __stmt_0 = {0x5661fee21fff696c, 894, 0};
			bbOnDebugEnterStm(&__stmt_0);
			bbOnDebugLeaveScope();
			bbOnDebugLeaveScope();
			break;
		}
		struct BBDebugStm __stmt_2 = {0x5661fee21fff696c, 896, 0};
		bbOnDebugEnterStm(&__stmt_2);
		BBINT bbt_=((struct openb3d_openb3dcore_TChunk_obj*)bbNullObjectTest((BBObject*)bbt_chunk))->_openb3d_openb3dcore_tchunk_id ;
		struct BBDebugStm __stmt_3 = {0x5661fee21fff696c, 897, 0};
		bbOnDebugEnterStm(&__stmt_3);
		if(bbt_==16384){
			struct BBDebugScope __scope = {
				BBDEBUGSCOPE_LOCALBLOCK,
				0,
				{
					{
						BBDEBUGDECL_END
					}
				}
			};
			bbOnDebugEnterScope((BBDebugScope *)&__scope);
			struct BBDebugStm __stmt_0 = {0x5661fee21fff696c, 898, 0};
			bbOnDebugEnterStm(&__stmt_0);
			if(openb3d_openb3dcore_TGlobal3D_Log_3DS!=0){
				struct BBDebugScope __scope = {
					BBDEBUGSCOPE_LOCALBLOCK,
					0,
					{
						{
							BBDEBUGDECL_END
						}
					}
				};
				bbOnDebugEnterScope((BBDebugScope *)&__scope);
				struct BBDebugStm __stmt_0 = {0x5661fee21fff696c, 898, 0};
				bbOnDebugEnterStm(&__stmt_0);
				brl_blitz_DebugLog((BBString*)&_s562);
				bbOnDebugLeaveScope();
			}
			struct BBDebugStm __stmt_1 = {0x5661fee21fff696c, 899, 0};
			bbOnDebugEnterStm(&__stmt_1);
			((struct openb3d_openb3dcore_T3DS2_obj*)bbNullObjectTest((BBObject*)o));
			((struct openb3d_openb3dcore_T3DS2_obj*)o)->clas->m_ParseObject_TTEntityi((struct openb3d_openb3dcore_T3DS2_obj*)o,(struct openb3d_openb3dcore_TEntity_obj*)bbt_parent,((struct openb3d_openb3dcore_TChunk_obj*)bbNullObjectTest((BBObject*)bbt_chunk))->_openb3d_openb3dcore_tchunk_endchunk );
			bbOnDebugLeaveScope();
		}else{
			struct BBDebugScope __scope = {
				BBDEBUGSCOPE_LOCALBLOCK,
				0,
				{
					{
						BBDEBUGDECL_END
					}
				}
			};
			bbOnDebugEnterScope((BBDebugScope *)&__scope);
			struct BBDebugStm __stmt_0 = {0x5661fee21fff696c, 901, 0};
			bbOnDebugEnterStm(&__stmt_0);
			if(bbt_==45055){
				struct BBDebugScope __scope = {
					BBDEBUGSCOPE_LOCALBLOCK,
					0,
					{
						{
							BBDEBUGDECL_END
						}
					}
				};
				bbOnDebugEnterScope((BBDebugScope *)&__scope);
				struct BBDebugStm __stmt_0 = {0x5661fee21fff696c, 902, 0};
				bbOnDebugEnterStm(&__stmt_0);
				if(openb3d_openb3dcore_TGlobal3D_Log_3DS!=0){
					struct BBDebugScope __scope = {
						BBDEBUGSCOPE_LOCALBLOCK,
						0,
						{
							{
								BBDEBUGDECL_END
							}
						}
					};
					bbOnDebugEnterScope((BBDebugScope *)&__scope);
					struct BBDebugStm __stmt_0 = {0x5661fee21fff696c, 902, 0};
					bbOnDebugEnterStm(&__stmt_0);
					brl_blitz_DebugLog((BBString*)&_s563);
					bbOnDebugLeaveScope();
				}
				struct BBDebugStm __stmt_1 = {0x5661fee21fff696c, 903, 0};
				bbOnDebugEnterStm(&__stmt_1);
				((struct openb3d_openb3dcore_T3DS2_obj*)bbNullObjectTest((BBObject*)o));
				((struct openb3d_openb3dcore_T3DS2_obj*)o)->clas->m_ParseMaterial_TTEntityi((struct openb3d_openb3dcore_T3DS2_obj*)o,(struct openb3d_openb3dcore_TEntity_obj*)bbt_parent,((struct openb3d_openb3dcore_TChunk_obj*)bbNullObjectTest((BBObject*)bbt_chunk))->_openb3d_openb3dcore_tchunk_endchunk );
				bbOnDebugLeaveScope();
			}else{
				struct BBDebugScope __scope = {
					BBDEBUGSCOPE_LOCALBLOCK,
					0,
					{
						{
							BBDEBUGDECL_END
						}
					}
				};
				bbOnDebugEnterScope((BBDebugScope *)&__scope);
				struct BBDebugStm __stmt_0 = {0x5661fee21fff696c, 905, 0};
				bbOnDebugEnterStm(&__stmt_0);
				if(bbt_==256){
					BBFLOAT bbt_scale=0;
					struct BBDebugScope_1 __scope = {
						BBDEBUGSCOPE_LOCALBLOCK,
						0,
						{
							{
								BBDEBUGDECL_LOCAL,
								"scale",
								"f",
								.var_address=&bbt_scale
							},
							{
								BBDEBUGDECL_END
							}
						}
					};
					bbOnDebugEnterScope((BBDebugScope *)&__scope);
					struct BBDebugStm __stmt_0 = {0x5661fee21fff696c, 906, 0};
					bbOnDebugEnterStm(&__stmt_0);
					bbt_scale=((struct brl_stream_TStream_obj*)bbNullObjectTest((BBObject*)((struct openb3d_openb3dcore_T3DS2_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_t3ds2_stream ))->clas->m_ReadFloat((struct brl_stream_TStream_obj*)((struct openb3d_openb3dcore_T3DS2_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_t3ds2_stream );
					struct BBDebugStm __stmt_1 = {0x5661fee21fff696c, 907, 0};
					bbOnDebugEnterStm(&__stmt_1);
					if(openb3d_openb3dcore_TGlobal3D_Log_3DS!=0){
						struct BBDebugScope __scope = {
							BBDEBUGSCOPE_LOCALBLOCK,
							0,
							{
								{
									BBDEBUGDECL_END
								}
							}
						};
						bbOnDebugEnterScope((BBDebugScope *)&__scope);
						struct BBDebugStm __stmt_0 = {0x5661fee21fff696c, 907, 0};
						bbOnDebugEnterStm(&__stmt_0);
						brl_blitz_DebugLog(bbStringConcat(((BBString*)&_s564),bbStringFromFloat(bbt_scale)));
						bbOnDebugLeaveScope();
					}
					bbOnDebugLeaveScope();
				}else{
					struct BBDebugScope __scope = {
						BBDEBUGSCOPE_LOCALBLOCK,
						0,
						{
							{
								BBDEBUGDECL_END
							}
						}
					};
					bbOnDebugEnterScope((BBDebugScope *)&__scope);
					struct BBDebugStm __stmt_0 = {0x5661fee21fff696c, 910, 0};
					bbOnDebugEnterStm(&__stmt_0);
					brl_stream_SeekStream((struct brl_stream_TStream_obj*)((struct openb3d_openb3dcore_T3DS2_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_t3ds2_stream ,((BBLONG)((struct openb3d_openb3dcore_TChunk_obj*)bbNullObjectTest((BBObject*)bbt_chunk))->_openb3d_openb3dcore_tchunk_endchunk ),0);
					bbOnDebugLeaveScope();
				}
				bbOnDebugLeaveScope();
			}
			bbOnDebugLeaveScope();
		}
		bbOnDebugLeaveScope();
	}
	bbOnDebugLeaveScope();
	return 0;
}
struct openb3d_openb3dcore_TMesh_obj* _openb3d_openb3dcore_T3DS2_ParseFile_TObjectTTEntity(struct openb3d_openb3dcore_T3DS2_obj* o,BBOBJECT bbt_url,struct openb3d_openb3dcore_TEntity_obj* bbt_parent_ent){
	((struct openb3d_openb3dcore_T3DS2_obj*)bbNullObjectTest((BBObject*)o));
	struct openb3d_openb3dcore_TMesh_obj* bbt_parent=(struct openb3d_openb3dcore_TMesh_obj*)((struct openb3d_openb3dcore_TMesh_obj*)&bbNullObject);
	struct BBDebugScope_4 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"ParseFile",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":T3DS2",
				.var_address=&o
			},
			{
				BBDEBUGDECL_LOCAL,
				"url",
				":Object",
				.var_address=&bbt_url
			},
			{
				BBDEBUGDECL_LOCAL,
				"parent_ent",
				":TEntity",
				.var_address=&bbt_parent_ent
			},
			{
				BBDEBUGDECL_LOCAL,
				"parent",
				":TMesh",
				.var_address=&bbt_parent
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x5661fee21fff696c, 918, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbt_parent=(struct openb3d_openb3dcore_TMesh_obj*)openb3d_openb3dcore_TMesh_Create_TTMesh();
	struct BBDebugStm __stmt_1 = {0x5661fee21fff696c, 919, 0};
	bbOnDebugEnterStm(&__stmt_1);
	((struct openb3d_openb3dcore_TMesh_obj*)bbNullObjectTest((BBObject*)bbt_parent))->clas->m_SetString_pbS((struct openb3d_openb3dcore_TEntity_obj*)bbt_parent,((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)bbt_parent))->_openb3d_openb3dcore_tentity_name ,((BBString*)&_s519));
	struct BBDebugStm __stmt_2 = {0x5661fee21fff696c, 920, 0};
	bbOnDebugEnterStm(&__stmt_2);
	((struct openb3d_openb3dcore_TMesh_obj*)bbNullObjectTest((BBObject*)bbt_parent))->clas->m_SetString_pbS((struct openb3d_openb3dcore_TEntity_obj*)bbt_parent,((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)bbt_parent))->_openb3d_openb3dcore_tentity_class_name ,((BBString*)&_s461));
	struct BBDebugStm __stmt_3 = {0x5661fee21fff696c, 921, 0};
	bbOnDebugEnterStm(&__stmt_3);
	((struct openb3d_openb3dcore_TMesh_obj*)bbNullObjectTest((BBObject*)bbt_parent))->clas->m_AddParent_TTEntity((struct openb3d_openb3dcore_TEntity_obj*)bbt_parent,(struct openb3d_openb3dcore_TEntity_obj*)bbt_parent_ent);
	struct BBDebugStm __stmt_4 = {0x5661fee21fff696c, 922, 0};
	bbOnDebugEnterStm(&__stmt_4);
	((struct openb3d_openb3dcore_TMesh_obj*)bbNullObjectTest((BBObject*)bbt_parent))->clas->m_EntityListAdd_TTListTObject((struct openb3d_openb3dcore_TEntity_obj*)bbt_parent,(struct brl_linkedlist_TList_obj*)openb3d_openb3dcore_TEntity_entity_list,(BBOBJECT)&bbNullObject);
	struct BBDebugStm __stmt_5 = {0x5661fee21fff696c, 925, 0};
	bbOnDebugEnterStm(&__stmt_5);
	if(((BBOBJECT)((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)bbt_parent))->_openb3d_openb3dcore_tentity_parent )!=&bbNullObject){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x5661fee21fff696c, 926, 0};
		bbOnDebugEnterStm(&__stmt_0);
		struct openb3d_openb3dcore_TMatPtr_obj* bbt_;
		(((struct openb3d_openb3dcore_TMatPtr_obj*)((struct openb3d_openb3dcore_TMatPtr_obj*)bbNullObjectTest((BBObject*)(bbt_ = ((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)bbt_parent))->_openb3d_openb3dcore_tentity_mat ))))->clas)->m_Overwrite_TTMatPtr((struct openb3d_openb3dcore_TMatPtr_obj*)bbt_,(struct openb3d_openb3dcore_TMatPtr_obj*)((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)bbt_parent))->_openb3d_openb3dcore_tentity_parent ))->_openb3d_openb3dcore_tentity_mat );
		struct BBDebugStm __stmt_1 = {0x5661fee21fff696c, 927, 0};
		bbOnDebugEnterStm(&__stmt_1);
		((struct openb3d_openb3dcore_TMesh_obj*)bbNullObjectTest((BBObject*)bbt_parent))->clas->m_UpdateMat_b((struct openb3d_openb3dcore_TEntity_obj*)bbt_parent,0);
		bbOnDebugLeaveScope();
	}else{
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x5661fee21fff696c, 929, 0};
		bbOnDebugEnterStm(&__stmt_0);
		((struct openb3d_openb3dcore_TMesh_obj*)bbNullObjectTest((BBObject*)bbt_parent))->clas->m_UpdateMat_b((struct openb3d_openb3dcore_TEntity_obj*)bbt_parent,1);
		bbOnDebugLeaveScope();
	}
	struct BBDebugStm __stmt_6 = {0x5661fee21fff696c, 932, 0};
	bbOnDebugEnterStm(&__stmt_6);
	while(!(((struct brl_stream_TStream_obj*)bbNullObjectTest((BBObject*)((struct openb3d_openb3dcore_T3DS2_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_t3ds2_stream ))->clas->m_Eof((struct brl_stream_TIO_obj*)((struct openb3d_openb3dcore_T3DS2_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_t3ds2_stream )!=0)){
		struct openb3d_openb3dcore_TChunk_obj* bbt_chunk=(struct openb3d_openb3dcore_TChunk_obj*)((struct openb3d_openb3dcore_TChunk_obj*)&bbNullObject);
		struct BBDebugScope_1 __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_LOCAL,
					"chunk",
					":TChunk",
					.var_address=&bbt_chunk
				},
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x5661fee21fff696c, 933, 0};
		bbOnDebugEnterStm(&__stmt_0);
		((struct openb3d_openb3dcore_T3DS2_obj*)bbNullObjectTest((BBObject*)o));
		bbt_chunk=(struct openb3d_openb3dcore_TChunk_obj*)((struct openb3d_openb3dcore_T3DS2_obj*)o)->clas->m_ReadChunk((struct openb3d_openb3dcore_T3DS2_obj*)o);
		struct BBDebugStm __stmt_1 = {0x5661fee21fff696c, 934, 0};
		bbOnDebugEnterStm(&__stmt_1);
		if(((struct openb3d_openb3dcore_TChunk_obj*)bbNullObjectTest((BBObject*)bbt_chunk))->_openb3d_openb3dcore_tchunk_id ==0){
			struct BBDebugScope __scope = {
				BBDEBUGSCOPE_LOCALBLOCK,
				0,
				{
					{
						BBDEBUGDECL_END
					}
				}
			};
			bbOnDebugEnterScope((BBDebugScope *)&__scope);
			struct BBDebugStm __stmt_0 = {0x5661fee21fff696c, 934, 0};
			bbOnDebugEnterStm(&__stmt_0);
			bbOnDebugLeaveScope();
			bbOnDebugLeaveScope();
			break;
		}
		struct BBDebugStm __stmt_2 = {0x5661fee21fff696c, 936, 0};
		bbOnDebugEnterStm(&__stmt_2);
		BBINT bbt_2=((struct openb3d_openb3dcore_TChunk_obj*)bbNullObjectTest((BBObject*)bbt_chunk))->_openb3d_openb3dcore_tchunk_id ;
		struct BBDebugStm __stmt_3 = {0x5661fee21fff696c, 937, 0};
		bbOnDebugEnterStm(&__stmt_3);
		if(bbt_2==15677){
			struct BBDebugScope __scope = {
				BBDEBUGSCOPE_LOCALBLOCK,
				0,
				{
					{
						BBDEBUGDECL_END
					}
				}
			};
			bbOnDebugEnterScope((BBDebugScope *)&__scope);
			struct BBDebugStm __stmt_0 = {0x5661fee21fff696c, 938, 0};
			bbOnDebugEnterStm(&__stmt_0);
			if(openb3d_openb3dcore_TGlobal3D_Log_3DS!=0){
				struct BBDebugScope __scope = {
					BBDEBUGSCOPE_LOCALBLOCK,
					0,
					{
						{
							BBDEBUGDECL_END
						}
					}
				};
				bbOnDebugEnterScope((BBDebugScope *)&__scope);
				struct BBDebugStm __stmt_0 = {0x5661fee21fff696c, 938, 0};
				bbOnDebugEnterStm(&__stmt_0);
				brl_blitz_DebugLog((BBString*)&_s565);
				bbOnDebugLeaveScope();
			}
			struct BBDebugStm __stmt_1 = {0x5661fee21fff696c, 939, 0};
			bbOnDebugEnterStm(&__stmt_1);
			((struct openb3d_openb3dcore_T3DS2_obj*)bbNullObjectTest((BBObject*)o));
			((struct openb3d_openb3dcore_T3DS2_obj*)o)->clas->m_ParseScene_TTEntityi((struct openb3d_openb3dcore_T3DS2_obj*)o,(struct openb3d_openb3dcore_TEntity_obj*)((struct openb3d_openb3dcore_TEntity_obj*)bbObjectDowncast((BBOBJECT)bbt_parent,(BBClass*)&openb3d_openb3dcore_TEntity)),((struct openb3d_openb3dcore_TChunk_obj*)bbNullObjectTest((BBObject*)bbt_chunk))->_openb3d_openb3dcore_tchunk_endchunk );
			bbOnDebugLeaveScope();
		}else{
			struct BBDebugScope __scope = {
				BBDEBUGSCOPE_LOCALBLOCK,
				0,
				{
					{
						BBDEBUGDECL_END
					}
				}
			};
			bbOnDebugEnterScope((BBDebugScope *)&__scope);
			struct BBDebugStm __stmt_0 = {0x5661fee21fff696c, 941, 0};
			bbOnDebugEnterStm(&__stmt_0);
			if(bbt_2==45056){
				struct BBDebugScope __scope = {
					BBDEBUGSCOPE_LOCALBLOCK,
					0,
					{
						{
							BBDEBUGDECL_END
						}
					}
				};
				bbOnDebugEnterScope((BBDebugScope *)&__scope);
				struct BBDebugStm __stmt_0 = {0x5661fee21fff696c, 942, 0};
				bbOnDebugEnterStm(&__stmt_0);
				if(openb3d_openb3dcore_TGlobal3D_Log_3DS!=0){
					struct BBDebugScope __scope = {
						BBDEBUGSCOPE_LOCALBLOCK,
						0,
						{
							{
								BBDEBUGDECL_END
							}
						}
					};
					bbOnDebugEnterScope((BBDebugScope *)&__scope);
					struct BBDebugStm __stmt_0 = {0x5661fee21fff696c, 942, 0};
					bbOnDebugEnterStm(&__stmt_0);
					brl_blitz_DebugLog((BBString*)&_s566);
					bbOnDebugLeaveScope();
				}
				struct BBDebugStm __stmt_1 = {0x5661fee21fff696c, 943, 0};
				bbOnDebugEnterStm(&__stmt_1);
				((struct openb3d_openb3dcore_T3DS2_obj*)bbNullObjectTest((BBObject*)o));
				((struct openb3d_openb3dcore_T3DS2_obj*)o)->clas->m_ParseKeyFrames_TTEntityi((struct openb3d_openb3dcore_T3DS2_obj*)o,(struct openb3d_openb3dcore_TEntity_obj*)((struct openb3d_openb3dcore_TEntity_obj*)bbObjectDowncast((BBOBJECT)bbt_parent,(BBClass*)&openb3d_openb3dcore_TEntity)),((struct openb3d_openb3dcore_TChunk_obj*)bbNullObjectTest((BBObject*)bbt_chunk))->_openb3d_openb3dcore_tchunk_endchunk );
				bbOnDebugLeaveScope();
			}else{
				struct BBDebugScope __scope = {
					BBDEBUGSCOPE_LOCALBLOCK,
					0,
					{
						{
							BBDEBUGDECL_END
						}
					}
				};
				bbOnDebugEnterScope((BBDebugScope *)&__scope);
				struct BBDebugStm __stmt_0 = {0x5661fee21fff696c, 945, 0};
				bbOnDebugEnterStm(&__stmt_0);
				if(bbt_2==2){
					BBINT bbt_version=0;
					struct BBDebugScope_1 __scope = {
						BBDEBUGSCOPE_LOCALBLOCK,
						0,
						{
							{
								BBDEBUGDECL_LOCAL,
								"version",
								"i",
								.var_address=&bbt_version
							},
							{
								BBDEBUGDECL_END
							}
						}
					};
					bbOnDebugEnterScope((BBDebugScope *)&__scope);
					struct BBDebugStm __stmt_0 = {0x5661fee21fff696c, 946, 0};
					bbOnDebugEnterStm(&__stmt_0);
					bbt_version=((struct brl_stream_TStream_obj*)bbNullObjectTest((BBObject*)((struct openb3d_openb3dcore_T3DS2_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_t3ds2_stream ))->clas->m_ReadInt((struct brl_stream_TStream_obj*)((struct openb3d_openb3dcore_T3DS2_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_t3ds2_stream );
					struct BBDebugStm __stmt_1 = {0x5661fee21fff696c, 947, 0};
					bbOnDebugEnterStm(&__stmt_1);
					if(openb3d_openb3dcore_TGlobal3D_Log_3DS!=0){
						struct BBDebugScope __scope = {
							BBDEBUGSCOPE_LOCALBLOCK,
							0,
							{
								{
									BBDEBUGDECL_END
								}
							}
						};
						bbOnDebugEnterScope((BBDebugScope *)&__scope);
						struct BBDebugStm __stmt_0 = {0x5661fee21fff696c, 947, 0};
						bbOnDebugEnterStm(&__stmt_0);
						brl_blitz_DebugLog(bbStringConcat(((BBString*)&_s567),bbStringFromInt(bbt_version)));
						bbOnDebugLeaveScope();
					}
					bbOnDebugLeaveScope();
				}else{
					struct BBDebugScope __scope = {
						BBDEBUGSCOPE_LOCALBLOCK,
						0,
						{
							{
								BBDEBUGDECL_END
							}
						}
					};
					bbOnDebugEnterScope((BBDebugScope *)&__scope);
					struct BBDebugStm __stmt_0 = {0x5661fee21fff696c, 950, 0};
					bbOnDebugEnterStm(&__stmt_0);
					brl_stream_SeekStream((struct brl_stream_TStream_obj*)((struct openb3d_openb3dcore_T3DS2_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_t3ds2_stream ,((BBLONG)((struct openb3d_openb3dcore_TChunk_obj*)bbNullObjectTest((BBObject*)bbt_chunk))->_openb3d_openb3dcore_tchunk_endchunk ),0);
					bbOnDebugLeaveScope();
				}
				bbOnDebugLeaveScope();
			}
			bbOnDebugLeaveScope();
		}
		bbOnDebugLeaveScope();
	}
	struct BBDebugStm __stmt_7 = {0x5661fee21fff696c, 954, 0};
	bbOnDebugEnterStm(&__stmt_7);
	bbOnDebugLeaveScope();
	return (struct openb3d_openb3dcore_TMesh_obj*)bbt_parent;
}
struct openb3d_openb3dcore_TMesh_obj* openb3d_openb3dcore_T3DS2_LoadAnim3DS_TTMesh_TObjectTTEntityi(BBOBJECT bbt_url,struct openb3d_openb3dcore_TEntity_obj* bbt_parent_ent_ext,BBINT bbt_texflags){
	struct brl_stream_TStream_obj* bbt_file=(struct brl_stream_TStream_obj*)((struct brl_stream_TStream_obj*)&bbNullObject);
	struct openb3d_openb3dcore_T3DS2_obj* bbt_model=(struct openb3d_openb3dcore_T3DS2_obj*)((struct openb3d_openb3dcore_T3DS2_obj*)&bbNullObject);
	struct openb3d_openb3dcore_TMesh_obj* bbt_mesh=(struct openb3d_openb3dcore_TMesh_obj*)((struct openb3d_openb3dcore_TMesh_obj*)&bbNullObject);
	struct BBDebugScope_6 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"LoadAnim3DS",
		{
			{
				BBDEBUGDECL_LOCAL,
				"url",
				":Object",
				.var_address=&bbt_url
			},
			{
				BBDEBUGDECL_LOCAL,
				"parent_ent_ext",
				":TEntity",
				.var_address=&bbt_parent_ent_ext
			},
			{
				BBDEBUGDECL_LOCAL,
				"texflags",
				"i",
				.var_address=&bbt_texflags
			},
			{
				BBDEBUGDECL_LOCAL,
				"file",
				":TStream",
				.var_address=&bbt_file
			},
			{
				BBDEBUGDECL_LOCAL,
				"model",
				":T3DS2",
				.var_address=&bbt_model
			},
			{
				BBDEBUGDECL_LOCAL,
				"mesh",
				":TMesh",
				.var_address=&bbt_mesh
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x5661fee21fff696c, 958, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbt_file=(struct brl_stream_TStream_obj*)brl_endianstream_LittleEndianStream((struct brl_stream_TStream_obj*)brl_filesystem_ReadFile((BBOBJECT)bbt_url));
	struct BBDebugStm __stmt_1 = {0x5661fee21fff696c, 959, 0};
	bbOnDebugEnterStm(&__stmt_1);
	if(((BBOBJECT)bbt_file)==&bbNullObject){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x5661fee21fff696c, 960, 0};
		bbOnDebugEnterStm(&__stmt_0);
		brl_blitz_DebugLog(bbStringConcat(((BBString*)&_s514),((BBString *)bbObjectStringcast((BBOBJECT)bbt_url))));
		struct BBDebugStm __stmt_1 = {0x5661fee21fff696c, 961, 0};
		bbOnDebugEnterStm(&__stmt_1);
		bbOnDebugLeaveScope();
		bbOnDebugLeaveScope();
		return (struct openb3d_openb3dcore_TMesh_obj*)&bbNullObject;
	}
	struct BBDebugStm __stmt_2 = {0x5661fee21fff696c, 964, 0};
	bbOnDebugEnterStm(&__stmt_2);
	bbt_model=(struct openb3d_openb3dcore_T3DS2_obj*)(struct openb3d_openb3dcore_T3DS2_obj*)bbObjectNew((BBClass *)&openb3d_openb3dcore_T3DS2);
	struct BBDebugStm __stmt_3 = {0x5661fee21fff696c, 965, 0};
	bbOnDebugEnterStm(&__stmt_3);
	bbt_mesh=(struct openb3d_openb3dcore_TMesh_obj*)((struct openb3d_openb3dcore_T3DS2_obj*)bbNullObjectTest((BBObject*)bbt_model))->clas->m_LoadAnim3DSFromStream_TTStreamTObjectTTEntityi((struct openb3d_openb3dcore_T3DS2_obj*)bbt_model,(struct brl_stream_TStream_obj*)bbt_file,(BBOBJECT)bbt_url,(struct openb3d_openb3dcore_TEntity_obj*)bbt_parent_ent_ext,bbt_texflags);
	struct BBDebugStm __stmt_4 = {0x5661fee21fff696c, 967, 0};
	bbOnDebugEnterStm(&__stmt_4);
	((struct brl_stream_TStream_obj*)bbNullObjectTest((BBObject*)bbt_file))->clas->m_Close((struct brl_stream_TIO_obj*)bbt_file);
	struct BBDebugStm __stmt_5 = {0x5661fee21fff696c, 968, 0};
	bbOnDebugEnterStm(&__stmt_5);
	bbOnDebugLeaveScope();
	return (struct openb3d_openb3dcore_TMesh_obj*)bbt_mesh;
}
struct openb3d_openb3dcore_TMesh_obj* _openb3d_openb3dcore_T3DS2_LoadAnim3DSFromStream_TTStreamTObjectTTEntityi(struct openb3d_openb3dcore_T3DS2_obj* o,struct brl_stream_TStream_obj* bbt_file,BBOBJECT bbt_url,struct openb3d_openb3dcore_TEntity_obj* bbt_parent_ent,BBINT bbt_texflags){
	((struct openb3d_openb3dcore_T3DS2_obj*)bbNullObjectTest((BBObject*)o));
	BBSTRING bbt_olddir=(&bbEmptyString);
	struct openb3d_openb3dcore_TChunk_obj* bbt_chunk=(struct openb3d_openb3dcore_TChunk_obj*)((struct openb3d_openb3dcore_TChunk_obj*)&bbNullObject);
	struct BBDebugScope_7 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"LoadAnim3DSFromStream",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":T3DS2",
				.var_address=&o
			},
			{
				BBDEBUGDECL_LOCAL,
				"file",
				":TStream",
				.var_address=&bbt_file
			},
			{
				BBDEBUGDECL_LOCAL,
				"url",
				":Object",
				.var_address=&bbt_url
			},
			{
				BBDEBUGDECL_LOCAL,
				"parent_ent",
				":TEntity",
				.var_address=&bbt_parent_ent
			},
			{
				BBDEBUGDECL_LOCAL,
				"texflags",
				"i",
				.var_address=&bbt_texflags
			},
			{
				BBDEBUGDECL_LOCAL,
				"olddir",
				"$",
				.var_address=&bbt_olddir
			},
			{
				BBDEBUGDECL_LOCAL,
				"chunk",
				":TChunk",
				.var_address=&bbt_chunk
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x5661fee21fff696c, 973, 0};
	bbOnDebugEnterStm(&__stmt_0);
	((struct openb3d_openb3dcore_T3DS2_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_t3ds2_stream =(struct brl_stream_TStream_obj*)bbt_file;
	struct BBDebugStm __stmt_1 = {0x5661fee21fff696c, 974, 0};
	bbOnDebugEnterStm(&__stmt_1);
	((struct openb3d_openb3dcore_T3DS2_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_t3ds2_objlist =(struct brl_linkedlist_TList_obj*)brl_linkedlist_CreateList();
	struct BBDebugStm __stmt_2 = {0x5661fee21fff696c, 975, 0};
	bbOnDebugEnterStm(&__stmt_2);
	((struct openb3d_openb3dcore_T3DS2_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_t3ds2_materialmap =(struct brl_map_TMap_obj*)brl_map_CreateMap();
	struct BBDebugStm __stmt_3 = {0x5661fee21fff696c, 976, 0};
	bbOnDebugEnterStm(&__stmt_3);
	((struct openb3d_openb3dcore_T3DS2_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_t3ds2_materialcolormap =(struct brl_map_TMap_obj*)brl_map_CreateMap();
	struct BBDebugStm __stmt_4 = {0x5661fee21fff696c, 977, 0};
	bbOnDebugEnterStm(&__stmt_4);
	((struct openb3d_openb3dcore_T3DS2_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_t3ds2_materialshinemap =(struct brl_map_TMap_obj*)brl_map_CreateMap();
	struct BBDebugStm __stmt_5 = {0x5661fee21fff696c, 978, 0};
	bbOnDebugEnterStm(&__stmt_5);
	((struct openb3d_openb3dcore_T3DS2_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_t3ds2_materiallayermap =(struct brl_map_TMap_obj*)brl_map_CreateMap();
	struct BBDebugStm __stmt_6 = {0x5661fee21fff696c, 979, 0};
	bbOnDebugEnterStm(&__stmt_6);
	((struct openb3d_openb3dcore_T3DS2_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_t3ds2_matrixmap =(struct brl_map_TMap_obj*)brl_map_CreateMap();
	struct BBDebugStm __stmt_7 = {0x5661fee21fff696c, 980, 0};
	bbOnDebugEnterStm(&__stmt_7);
	((struct openb3d_openb3dcore_T3DS2_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_t3ds2_defaultbrush =(struct openb3d_openb3dcore_TBrush_obj*)openb3d_openb3dcore_CreateBrush(255.000000f,255.000000f,255.000000f);
	struct BBDebugStm __stmt_8 = {0x5661fee21fff696c, 981, 0};
	bbOnDebugEnterStm(&__stmt_8);
	if(bbt_texflags==-1){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x5661fee21fff696c, 981, 0};
		bbOnDebugEnterStm(&__stmt_0);
		((struct openb3d_openb3dcore_T3DS2_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_t3ds2_override_texflags =openb3d_openb3dcore_TGlobal3D_Texture_Flags;
		bbOnDebugLeaveScope();
	}else{
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x5661fee21fff696c, 981, 0};
		bbOnDebugEnterStm(&__stmt_0);
		((struct openb3d_openb3dcore_T3DS2_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_t3ds2_override_texflags =bbt_texflags;
		bbOnDebugLeaveScope();
	}
	struct BBDebugStm __stmt_9 = {0x5661fee21fff696c, 983, 0};
	bbOnDebugEnterStm(&__stmt_9);
	((struct openb3d_openb3dcore_T3DS2_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_t3ds2_filename =((BBString *)bbObjectStringcast((BBOBJECT)bbt_url));
	struct BBDebugStm __stmt_10 = {0x5661fee21fff696c, 984, 0};
	bbOnDebugEnterStm(&__stmt_10);
	((struct openb3d_openb3dcore_T3DS2_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_t3ds2_filepath =brl_filesystem_ExtractDir((BBString *)bbObjectStringcast((BBOBJECT)bbt_url));
	struct BBDebugStm __stmt_11 = {0x5661fee21fff696c, 985, 0};
	bbOnDebugEnterStm(&__stmt_11);
	bbt_olddir=brl_filesystem_CurrentDir();
	struct BBDebugStm __stmt_12 = {0x5661fee21fff696c, 986, 0};
	bbOnDebugEnterStm(&__stmt_12);
	if(bbStringEquals(((struct openb3d_openb3dcore_T3DS2_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_t3ds2_filepath , ((BBString*)&bbEmptyString))!=1){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x5661fee21fff696c, 986, 0};
		bbOnDebugEnterStm(&__stmt_0);
		brl_filesystem_ChangeDir(((struct openb3d_openb3dcore_T3DS2_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_t3ds2_filepath );
		bbOnDebugLeaveScope();
	}
	struct BBDebugStm __stmt_13 = {0x5661fee21fff696c, 988, 0};
	bbOnDebugEnterStm(&__stmt_13);
	((struct openb3d_openb3dcore_T3DS2_obj*)bbNullObjectTest((BBObject*)o));
	bbt_chunk=(struct openb3d_openb3dcore_TChunk_obj*)((struct openb3d_openb3dcore_T3DS2_obj*)o)->clas->m_ReadChunk((struct openb3d_openb3dcore_T3DS2_obj*)o);
	struct BBDebugStm __stmt_14 = {0x5661fee21fff696c, 989, 0};
	bbOnDebugEnterStm(&__stmt_14);
	if((((struct openb3d_openb3dcore_TChunk_obj*)bbNullObjectTest((BBObject*)bbt_chunk))->_openb3d_openb3dcore_tchunk_id !=19789) || (((BBLONG)((struct openb3d_openb3dcore_TChunk_obj*)bbNullObjectTest((BBObject*)bbt_chunk))->_openb3d_openb3dcore_tchunk_size )!=((struct brl_stream_TStream_obj*)bbNullObjectTest((BBObject*)((struct openb3d_openb3dcore_T3DS2_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_t3ds2_stream ))->clas->m_Size((struct brl_stream_TIO_obj*)((struct openb3d_openb3dcore_T3DS2_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_t3ds2_stream ))){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x5661fee21fff696c, 990, 0};
		bbOnDebugEnterStm(&__stmt_0);
		((struct brl_stream_TStream_obj*)bbNullObjectTest((BBObject*)((struct openb3d_openb3dcore_T3DS2_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_t3ds2_stream ))->clas->m_Close((struct brl_stream_TIO_obj*)((struct openb3d_openb3dcore_T3DS2_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_t3ds2_stream );
		struct BBDebugStm __stmt_1 = {0x5661fee21fff696c, 991, 0};
		bbOnDebugEnterStm(&__stmt_1);
		brl_blitz_DebugLog(bbStringConcat(((BBString*)&_s515),((struct openb3d_openb3dcore_T3DS2_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_t3ds2_filename ));
		struct BBDebugStm __stmt_2 = {0x5661fee21fff696c, 992, 0};
		bbOnDebugEnterStm(&__stmt_2);
		bbOnDebugLeaveScope();
		bbOnDebugLeaveScope();
		return (struct openb3d_openb3dcore_TMesh_obj*)&bbNullObject;
	}
	struct BBDebugStm __stmt_15 = {0x5661fee21fff696c, 994, 0};
	bbOnDebugEnterStm(&__stmt_15);
	if(openb3d_openb3dcore_TGlobal3D_Log_3DS!=0){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x5661fee21fff696c, 994, 0};
		bbOnDebugEnterStm(&__stmt_0);
		brl_blitz_DebugLog(bbStringConcat(((BBString*)&_s568),((struct openb3d_openb3dcore_T3DS2_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_t3ds2_filename ));
		bbOnDebugLeaveScope();
	}
	struct BBDebugStm __stmt_16 = {0x5661fee21fff696c, 996, 0};
	bbOnDebugEnterStm(&__stmt_16);
	((struct openb3d_openb3dcore_T3DS2_obj*)bbNullObjectTest((BBObject*)o));
	((struct openb3d_openb3dcore_T3DS2_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_t3ds2_root =(struct openb3d_openb3dcore_TMesh_obj*)((struct openb3d_openb3dcore_T3DS2_obj*)o)->clas->m_ParseFile_TObjectTTEntity((struct openb3d_openb3dcore_T3DS2_obj*)o,(BBOBJECT)bbt_url,(struct openb3d_openb3dcore_TEntity_obj*)bbt_parent_ent);
	struct BBDebugStm __stmt_17 = {0x5661fee21fff696c, 1001, 0};
	bbOnDebugEnterStm(&__stmt_17);
	brl_filesystem_ChangeDir(bbt_olddir);
	struct BBDebugStm __stmt_18 = {0x5661fee21fff696c, 1027, 0};
	bbOnDebugEnterStm(&__stmt_18);
	struct brl_linkedlist_TListEnum_obj* bbt_=(struct brl_linkedlist_TListEnum_obj*)((struct brl_linkedlist_TList_obj*)bbNullObjectTest((BBObject*)((struct openb3d_openb3dcore_T3DS2_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_t3ds2_objlist ))->clas->m_ObjectEnumerator((struct brl_linkedlist_TList_obj*)((struct openb3d_openb3dcore_T3DS2_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_t3ds2_objlist );
	while(((struct brl_linkedlist_TListEnum_obj*)bbNullObjectTest((BBObject*)bbt_))->clas->m_HasNext((struct brl_linkedlist_TListEnum_obj*)bbt_)!=0){
		struct openb3d_openb3dcore_TEntity_obj* bbt_ent=(struct openb3d_openb3dcore_TEntity_obj*)((struct openb3d_openb3dcore_TEntity_obj*)&bbNullObject);
		struct openb3d_openb3dcore_TMesh_obj* bbt_mesh2=(struct openb3d_openb3dcore_TMesh_obj*)((struct openb3d_openb3dcore_TMesh_obj*)&bbNullObject);
		struct openb3d_openb3dcore_TMatPtr_obj* bbt_mat=(struct openb3d_openb3dcore_TMatPtr_obj*)((struct openb3d_openb3dcore_TMatPtr_obj*)&bbNullObject);
		struct openb3d_openb3dcore_TMatPtr_obj* bbt_invmat=(struct openb3d_openb3dcore_TMatPtr_obj*)((struct openb3d_openb3dcore_TMatPtr_obj*)&bbNullObject);
		struct BBDebugScope_4 __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_LOCAL,
					"ent",
					":TEntity",
					.var_address=&bbt_ent
				},
				{
					BBDEBUGDECL_LOCAL,
					"mesh2",
					":TMesh",
					.var_address=&bbt_mesh2
				},
				{
					BBDEBUGDECL_LOCAL,
					"mat",
					":TMatPtr",
					.var_address=&bbt_mat
				},
				{
					BBDEBUGDECL_LOCAL,
					"invmat",
					":TMatPtr",
					.var_address=&bbt_invmat
				},
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		bbt_ent=(struct openb3d_openb3dcore_TEntity_obj*)((struct openb3d_openb3dcore_TEntity_obj*)bbObjectDowncast((BBOBJECT)((struct brl_linkedlist_TListEnum_obj*)bbNullObjectTest((BBObject*)bbt_))->clas->m_NextObject((struct brl_linkedlist_TListEnum_obj*)bbt_),(BBClass*)&openb3d_openb3dcore_TEntity));
		if(((BBOBJECT)bbt_ent)==&bbNullObject){
			bbOnDebugLeaveScope();
			continue;
		}
		struct BBDebugStm __stmt_0 = {0x5661fee21fff696c, 1028, 0};
		bbOnDebugEnterStm(&__stmt_0);
		bbt_mesh2=(struct openb3d_openb3dcore_TMesh_obj*)((struct openb3d_openb3dcore_TMesh_obj*)bbObjectDowncast((BBOBJECT)bbt_ent,(BBClass*)&openb3d_openb3dcore_TMesh));
		struct BBDebugStm __stmt_1 = {0x5661fee21fff696c, 1029, 0};
		bbOnDebugEnterStm(&__stmt_1);
		bbt_mat=(struct openb3d_openb3dcore_TMatPtr_obj*)((struct openb3d_openb3dcore_TMatPtr_obj*)bbObjectDowncast((BBOBJECT)brl_map_MapValueForKey((struct brl_map_TMap_obj*)((struct openb3d_openb3dcore_T3DS2_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_t3ds2_matrixmap ,(BBOBJECT)bbt_mesh2),(BBClass*)&openb3d_openb3dcore_TMatPtr));
		struct BBDebugStm __stmt_2 = {0x5661fee21fff696c, 1030, 0};
		bbOnDebugEnterStm(&__stmt_2);
		bbt_invmat=(struct openb3d_openb3dcore_TMatPtr_obj*)openb3d_openb3dcore_TMatPtr_Create_TTMatPtr();
		struct BBDebugStm __stmt_3 = {0x5661fee21fff696c, 1031, 0};
		bbOnDebugEnterStm(&__stmt_3);
		if(((BBOBJECT)bbt_mat)!=&bbNullObject){
			struct BBDebugScope __scope = {
				BBDEBUGSCOPE_LOCALBLOCK,
				0,
				{
					{
						BBDEBUGDECL_END
					}
				}
			};
			bbOnDebugEnterScope((BBDebugScope *)&__scope);
			struct BBDebugStm __stmt_0 = {0x5661fee21fff696c, 1031, 0};
			bbOnDebugEnterStm(&__stmt_0);
			((struct openb3d_openb3dcore_TMatPtr_obj*)bbNullObjectTest((BBObject*)bbt_mat))->clas->m_GetInverse_TTMatPtr((struct openb3d_openb3dcore_TMatPtr_obj*)bbt_mat,(struct openb3d_openb3dcore_TMatPtr_obj*)bbt_invmat);
			bbOnDebugLeaveScope();
		}
		struct BBDebugStm __stmt_4 = {0x5661fee21fff696c, 1033, 0};
		bbOnDebugEnterStm(&__stmt_4);
		struct brl_linkedlist_TList_obj* bbt_3;
		struct brl_linkedlist_TListEnum_obj* bbt_2=(struct brl_linkedlist_TListEnum_obj*)(((struct brl_linkedlist_TList_obj*)((struct brl_linkedlist_TList_obj*)bbNullObjectTest((BBObject*)(bbt_3 = ((struct openb3d_openb3dcore_TMesh_obj*)bbNullObjectTest((BBObject*)bbt_mesh2))->_openb3d_openb3dcore_tmesh_surf_list ))))->clas)->m_ObjectEnumerator((struct brl_linkedlist_TList_obj*)bbt_3);
		while(((struct brl_linkedlist_TListEnum_obj*)bbNullObjectTest((BBObject*)bbt_2))->clas->m_HasNext((struct brl_linkedlist_TListEnum_obj*)bbt_2)!=0){
			struct openb3d_openb3dcore_TSurface_obj* bbt_surf2=(struct openb3d_openb3dcore_TSurface_obj*)((struct openb3d_openb3dcore_TSurface_obj*)&bbNullObject);
			struct BBDebugScope_1 __scope = {
				BBDEBUGSCOPE_LOCALBLOCK,
				0,
				{
					{
						BBDEBUGDECL_LOCAL,
						"surf2",
						":TSurface",
						.var_address=&bbt_surf2
					},
					{
						BBDEBUGDECL_END
					}
				}
			};
			bbOnDebugEnterScope((BBDebugScope *)&__scope);
			bbt_surf2=(struct openb3d_openb3dcore_TSurface_obj*)((struct openb3d_openb3dcore_TSurface_obj*)bbObjectDowncast((BBOBJECT)((struct brl_linkedlist_TListEnum_obj*)bbNullObjectTest((BBObject*)bbt_2))->clas->m_NextObject((struct brl_linkedlist_TListEnum_obj*)bbt_2),(BBClass*)&openb3d_openb3dcore_TSurface));
			if(((BBOBJECT)bbt_surf2)==&bbNullObject){
				bbOnDebugLeaveScope();
				continue;
			}
			struct BBDebugStm __stmt_0 = {0x5661fee21fff696c, 1034, 0};
			bbOnDebugEnterStm(&__stmt_0);
			{
				BBINT bbt_v=0;
				BBINT bbt_4=((struct openb3d_openb3dcore_TSurface_obj*)bbNullObjectTest((BBObject*)bbt_surf2))->clas->m_CountVertices((struct openb3d_openb3dcore_TSurface_obj*)bbt_surf2);
				for(;(bbt_v<bbt_4);bbt_v=(bbt_v+1)){
					BBFLOAT bbt_px=0;
					BBFLOAT bbt_py=0;
					BBFLOAT bbt_pz=0;
					struct BBDebugScope_4 __scope = {
						BBDEBUGSCOPE_LOCALBLOCK,
						0,
						{
							{
								BBDEBUGDECL_LOCAL,
								"v",
								"i",
								.var_address=&bbt_v
							},
							{
								BBDEBUGDECL_LOCAL,
								"px",
								"f",
								.var_address=&bbt_px
							},
							{
								BBDEBUGDECL_LOCAL,
								"py",
								"f",
								.var_address=&bbt_py
							},
							{
								BBDEBUGDECL_LOCAL,
								"pz",
								"f",
								.var_address=&bbt_pz
							},
							{
								BBDEBUGDECL_END
							}
						}
					};
					bbOnDebugEnterScope((BBDebugScope *)&__scope);
					struct BBDebugStm __stmt_0 = {0x5661fee21fff696c, 1035, 0};
					bbOnDebugEnterStm(&__stmt_0);
					bbt_px=((struct openb3d_openb3dcore_TSurface_obj*)bbNullObjectTest((BBObject*)bbt_surf2))->_openb3d_openb3dcore_tsurface_vert_coords [((bbt_v*3)+0)];
					struct BBDebugStm __stmt_1 = {0x5661fee21fff696c, 1036, 0};
					bbOnDebugEnterStm(&__stmt_1);
					bbt_py=((struct openb3d_openb3dcore_TSurface_obj*)bbNullObjectTest((BBObject*)bbt_surf2))->_openb3d_openb3dcore_tsurface_vert_coords [((bbt_v*3)+1)];
					struct BBDebugStm __stmt_2 = {0x5661fee21fff696c, 1037, 0};
					bbOnDebugEnterStm(&__stmt_2);
					bbt_pz=-((struct openb3d_openb3dcore_TSurface_obj*)bbNullObjectTest((BBObject*)bbt_surf2))->_openb3d_openb3dcore_tsurface_vert_coords [((bbt_v*3)+2)];
					struct BBDebugStm __stmt_3 = {0x5661fee21fff696c, 1039, 0};
					bbOnDebugEnterStm(&__stmt_3);
					if(openb3d_openb3dcore_TGlobal3D_Mesh_Transform>0){
						struct BBDebugScope __scope = {
							BBDEBUGSCOPE_LOCALBLOCK,
							0,
							{
								{
									BBDEBUGDECL_END
								}
							}
						};
						bbOnDebugEnterScope((BBDebugScope *)&__scope);
						struct BBDebugStm __stmt_0 = {0x5661fee21fff696c, 1040, 0};
						bbOnDebugEnterStm(&__stmt_0);
						((struct openb3d_openb3dcore_TMatPtr_obj*)bbNullObjectTest((BBObject*)bbt_invmat))->clas->m_TransformVec_vfvfvfi((struct openb3d_openb3dcore_TMatPtr_obj*)bbt_invmat,(&bbt_px),(&bbt_py),(&bbt_pz),1);
						struct BBDebugStm __stmt_1 = {0x5661fee21fff696c, 1041, 0};
						bbOnDebugEnterStm(&__stmt_1);
						((struct openb3d_openb3dcore_TSurface_obj*)bbNullObjectTest((BBObject*)bbt_surf2))->_openb3d_openb3dcore_tsurface_vert_coords [((bbt_v*3)+0)]=bbt_px;
						struct BBDebugStm __stmt_2 = {0x5661fee21fff696c, 1042, 0};
						bbOnDebugEnterStm(&__stmt_2);
						((struct openb3d_openb3dcore_TSurface_obj*)bbNullObjectTest((BBObject*)bbt_surf2))->_openb3d_openb3dcore_tsurface_vert_coords [((bbt_v*3)+1)]=bbt_py;
						struct BBDebugStm __stmt_3 = {0x5661fee21fff696c, 1043, 0};
						bbOnDebugEnterStm(&__stmt_3);
						((struct openb3d_openb3dcore_TSurface_obj*)bbNullObjectTest((BBObject*)bbt_surf2))->_openb3d_openb3dcore_tsurface_vert_coords [((bbt_v*3)+2)]=-bbt_pz;
						bbOnDebugLeaveScope();
					}
					bbOnDebugLeaveScope();
				}
			}
			struct BBDebugStm __stmt_1 = {0x5661fee21fff696c, 1046, 0};
			bbOnDebugEnterStm(&__stmt_1);
			((struct openb3d_openb3dcore_TSurface_obj*)bbNullObjectTest((BBObject*)bbt_surf2))->clas->m_UpdateNormals((struct openb3d_openb3dcore_TSurface_obj*)bbt_surf2);
			bbOnDebugLeaveScope();
		}
		struct BBDebugStm __stmt_5 = {0x5661fee21fff696c, 1049, 0};
		bbOnDebugEnterStm(&__stmt_5);
		((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)bbt_mesh2))->_openb3d_openb3dcore_tentity_cull_radius [0]=0.0f;
		bbOnDebugLeaveScope();
	}
	struct BBDebugStm __stmt_19 = {0x5661fee21fff696c, 1081, 0};
	bbOnDebugEnterStm(&__stmt_19);
	if(openb3d_openb3dcore_TGlobal3D_Log_3DS!=0){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x5661fee21fff696c, 1081, 0};
		bbOnDebugEnterStm(&__stmt_0);
		brl_blitz_DebugLog((BBString*)&bbEmptyString);
		bbOnDebugLeaveScope();
	}
	struct BBDebugStm __stmt_20 = {0x5661fee21fff696c, 1082, 0};
	bbOnDebugEnterStm(&__stmt_20);
	bbOnDebugLeaveScope();
	return (struct openb3d_openb3dcore_TMesh_obj*)((struct openb3d_openb3dcore_T3DS2_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_t3ds2_root ;
}
struct BBDebugScope_120 openb3d_openb3dcore_T3DS2_scope ={
	BBDEBUGSCOPE_USERTYPE,
	"T3DS2",
	{
		{
			BBDEBUGDECL_CONST,
			"CHUNK_M3DVERSION",
			"i",
			.const_value=(BBString*)&_s772
		},
		{
			BBDEBUGDECL_CONST,
			"CHUNK_MASTERSCALE",
			"i",
			.const_value=(BBString*)&_s802
		},
		{
			BBDEBUGDECL_CONST,
			"CHUNK_BKGCOLOR",
			"i",
			.const_value=(BBString*)&_s803
		},
		{
			BBDEBUGDECL_CONST,
			"CHUNK_AMBCOLOR",
			"i",
			.const_value=(BBString*)&_s804
		},
		{
			BBDEBUGDECL_CONST,
			"CHUNK_RGB3F",
			"i",
			.const_value=(BBString*)&_s773
		},
		{
			BBDEBUGDECL_CONST,
			"CHUNK_RGB3B",
			"i",
			.const_value=(BBString*)&_s774
		},
		{
			BBDEBUGDECL_CONST,
			"CHUNK_RGBGAMMA3B",
			"i",
			.const_value=(BBString*)&_s775
		},
		{
			BBDEBUGDECL_CONST,
			"CHUNK_RGBGAMMA3F",
			"i",
			.const_value=(BBString*)&_s776
		},
		{
			BBDEBUGDECL_CONST,
			"CHUNK_PERCENTI",
			"i",
			.const_value=(BBString*)&_s777
		},
		{
			BBDEBUGDECL_CONST,
			"CHUNK_PERCENTF",
			"i",
			.const_value=(BBString*)&_s778
		},
		{
			BBDEBUGDECL_CONST,
			"CHUNK_MAIN",
			"i",
			.const_value=(BBString*)&_s779
		},
		{
			BBDEBUGDECL_CONST,
			"CHUNK_3DEDITOR",
			"i",
			.const_value=(BBString*)&_s780
		},
		{
			BBDEBUGDECL_CONST,
			"CHUNK_OBJECTBLOCK",
			"i",
			.const_value=(BBString*)&_s781
		},
		{
			BBDEBUGDECL_CONST,
			"CHUNK_TRIMESH",
			"i",
			.const_value=(BBString*)&_s782
		},
		{
			BBDEBUGDECL_CONST,
			"CHUNK_VERTEXLIST",
			"i",
			.const_value=(BBString*)&_s783
		},
		{
			BBDEBUGDECL_CONST,
			"CHUNK_FACELIST",
			"i",
			.const_value=(BBString*)&_s784
		},
		{
			BBDEBUGDECL_CONST,
			"CHUNK_FACEMATLIST",
			"i",
			.const_value=(BBString*)&_s785
		},
		{
			BBDEBUGDECL_CONST,
			"CHUNK_MAPLIST",
			"i",
			.const_value=(BBString*)&_s786
		},
		{
			BBDEBUGDECL_CONST,
			"CHUNK_SMOOTHLIST",
			"i",
			.const_value=(BBString*)&_s805
		},
		{
			BBDEBUGDECL_CONST,
			"CHUNK_TRANSMATRIX",
			"i",
			.const_value=(BBString*)&_s787
		},
		{
			BBDEBUGDECL_CONST,
			"CHUNK_LIGHT",
			"i",
			.const_value=(BBString*)&_s806
		},
		{
			BBDEBUGDECL_CONST,
			"CHUNK_SPOTLIGHT",
			"i",
			.const_value=(BBString*)&_s807
		},
		{
			BBDEBUGDECL_CONST,
			"CHUNK_CAMERA",
			"i",
			.const_value=(BBString*)&_s808
		},
		{
			BBDEBUGDECL_CONST,
			"CHUNK_MATBLOCK",
			"i",
			.const_value=(BBString*)&_s788
		},
		{
			BBDEBUGDECL_CONST,
			"CHUNK_MATNAME",
			"i",
			.const_value=(BBString*)&_s789
		},
		{
			BBDEBUGDECL_CONST,
			"CHUNK_AMBIENT",
			"i",
			.const_value=(BBString*)&_s790
		},
		{
			BBDEBUGDECL_CONST,
			"CHUNK_DIFFUSE",
			"i",
			.const_value=(BBString*)&_s791
		},
		{
			BBDEBUGDECL_CONST,
			"CHUNK_SPECULAR",
			"i",
			.const_value=(BBString*)&_s792
		},
		{
			BBDEBUGDECL_CONST,
			"CHUNK_SHININESS",
			"i",
			.const_value=(BBString*)&_s793
		},
		{
			BBDEBUGDECL_CONST,
			"CHUNK_SHININESSSTRENGTH",
			"i",
			.const_value=(BBString*)&_s809
		},
		{
			BBDEBUGDECL_CONST,
			"CHUNK_TRANSPARENCY",
			"i",
			.const_value=(BBString*)&_s810
		},
		{
			BBDEBUGDECL_CONST,
			"CHUNK_TRANSFALLOFF",
			"i",
			.const_value=(BBString*)&_s811
		},
		{
			BBDEBUGDECL_CONST,
			"CHUNK_REFLECTIONBLUR",
			"i",
			.const_value=(BBString*)&_s812
		},
		{
			BBDEBUGDECL_CONST,
			"CHUNK_TWOSIDED",
			"i",
			.const_value=(BBString*)&_s813
		},
		{
			BBDEBUGDECL_CONST,
			"CHUNK_ADDTRANSPARENCY",
			"i",
			.const_value=(BBString*)&_s814
		},
		{
			BBDEBUGDECL_CONST,
			"CHUNK_SELFILLUM",
			"i",
			.const_value=(BBString*)&_s815
		},
		{
			BBDEBUGDECL_CONST,
			"CHUNK_WIREFRAMEON",
			"i",
			.const_value=(BBString*)&_s816
		},
		{
			BBDEBUGDECL_CONST,
			"CHUNK_WIRETHICKNESS",
			"i",
			.const_value=(BBString*)&_s817
		},
		{
			BBDEBUGDECL_CONST,
			"CHUNK_FACEMAP",
			"i",
			.const_value=(BBString*)&_s818
		},
		{
			BBDEBUGDECL_CONST,
			"CHUNK_TRANSFALLOFFIN",
			"i",
			.const_value=(BBString*)&_s819
		},
		{
			BBDEBUGDECL_CONST,
			"CHUNK_SOFTEN",
			"i",
			.const_value=(BBString*)&_s820
		},
		{
			BBDEBUGDECL_CONST,
			"CHUNK_WIRETHICKNESSUNITS",
			"i",
			.const_value=(BBString*)&_s821
		},
		{
			BBDEBUGDECL_CONST,
			"CHUNK_RENDERTYPE",
			"i",
			.const_value=(BBString*)&_s822
		},
		{
			BBDEBUGDECL_CONST,
			"CHUNK_TRANSFALLOFF2",
			"i",
			.const_value=(BBString*)&_s823
		},
		{
			BBDEBUGDECL_CONST,
			"CHUNK_REFLECTIONBLUR2",
			"i",
			.const_value=(BBString*)&_s824
		},
		{
			BBDEBUGDECL_CONST,
			"CHUNK_BUMPMAPPERCENT",
			"i",
			.const_value=(BBString*)&_s825
		},
		{
			BBDEBUGDECL_CONST,
			"CHUNK_TEXTUREMAP1",
			"i",
			.const_value=(BBString*)&_s794
		},
		{
			BBDEBUGDECL_CONST,
			"CHUNK_TEXTUREMAP2",
			"i",
			.const_value=(BBString*)&_s795
		},
		{
			BBDEBUGDECL_CONST,
			"CHUNK_SPECULARMAP",
			"i",
			.const_value=(BBString*)&_s826
		},
		{
			BBDEBUGDECL_CONST,
			"CHUNK_OPACITYMAP",
			"i",
			.const_value=(BBString*)&_s827
		},
		{
			BBDEBUGDECL_CONST,
			"CHUNK_REFLECTIONMAP",
			"i",
			.const_value=(BBString*)&_s828
		},
		{
			BBDEBUGDECL_CONST,
			"CHUNK_BUMPMAP",
			"i",
			.const_value=(BBString*)&_s829
		},
		{
			BBDEBUGDECL_CONST,
			"CHUNK_SHININESSMAP",
			"i",
			.const_value=(BBString*)&_s830
		},
		{
			BBDEBUGDECL_CONST,
			"CHUNK_SELFILLUMMAP",
			"i",
			.const_value=(BBString*)&_s831
		},
		{
			BBDEBUGDECL_CONST,
			"CHUNK_MASKTEXTUREMAP1",
			"i",
			.const_value=(BBString*)&_s832
		},
		{
			BBDEBUGDECL_CONST,
			"CHUNK_MASKTEXTUREMAP2",
			"i",
			.const_value=(BBString*)&_s833
		},
		{
			BBDEBUGDECL_CONST,
			"CHUNK_MASKOPACITYMAP",
			"i",
			.const_value=(BBString*)&_s834
		},
		{
			BBDEBUGDECL_CONST,
			"CHUNK_MASKBUMPMAP",
			"i",
			.const_value=(BBString*)&_s835
		},
		{
			BBDEBUGDECL_CONST,
			"CHUNK_MASKSHININESSMAP",
			"i",
			.const_value=(BBString*)&_s836
		},
		{
			BBDEBUGDECL_CONST,
			"CHUNK_MASKSPECULARMAP",
			"i",
			.const_value=(BBString*)&_s837
		},
		{
			BBDEBUGDECL_CONST,
			"CHUNK_MASKSELFILLUMMAP",
			"i",
			.const_value=(BBString*)&_s838
		},
		{
			BBDEBUGDECL_CONST,
			"CHUNK_MASKREFLECTIONMAP",
			"i",
			.const_value=(BBString*)&_s839
		},
		{
			BBDEBUGDECL_CONST,
			"CHUNK_MAPFILENAME",
			"i",
			.const_value=(BBString*)&_s796
		},
		{
			BBDEBUGDECL_CONST,
			"CHUNK_AUTOREFLECTION",
			"i",
			.const_value=(BBString*)&_s840
		},
		{
			BBDEBUGDECL_CONST,
			"CHUNK_MAPPARAMETERS",
			"i",
			.const_value=(BBString*)&_s841
		},
		{
			BBDEBUGDECL_CONST,
			"CHUNK_BLUR",
			"i",
			.const_value=(BBString*)&_s842
		},
		{
			BBDEBUGDECL_CONST,
			"CHUNK_MAPVSCALE",
			"i",
			.const_value=(BBString*)&_s797
		},
		{
			BBDEBUGDECL_CONST,
			"CHUNK_MAPUSCALE",
			"i",
			.const_value=(BBString*)&_s798
		},
		{
			BBDEBUGDECL_CONST,
			"CHUNK_MAPUOFFSET",
			"i",
			.const_value=(BBString*)&_s799
		},
		{
			BBDEBUGDECL_CONST,
			"CHUNK_MAPVOFFSET",
			"i",
			.const_value=(BBString*)&_s800
		},
		{
			BBDEBUGDECL_CONST,
			"CHUNK_MAPROTATION",
			"i",
			.const_value=(BBString*)&_s801
		},
		{
			BBDEBUGDECL_CONST,
			"CHUNK_RGBALPHATINT1",
			"i",
			.const_value=(BBString*)&_s843
		},
		{
			BBDEBUGDECL_CONST,
			"CHUNK_RGBALPHATINT2",
			"i",
			.const_value=(BBString*)&_s844
		},
		{
			BBDEBUGDECL_CONST,
			"CHUNK_RGBTINTR",
			"i",
			.const_value=(BBString*)&_s845
		},
		{
			BBDEBUGDECL_CONST,
			"CHUNK_RGBTINTG",
			"i",
			.const_value=(BBString*)&_s846
		},
		{
			BBDEBUGDECL_CONST,
			"CHUNK_RGBTINTB",
			"i",
			.const_value=(BBString*)&_s847
		},
		{
			BBDEBUGDECL_CONST,
			"CHUNK_KEYFRAMER",
			"i",
			.const_value=(BBString*)&_s848
		},
		{
			BBDEBUGDECL_CONST,
			"CHUNK_MESHINFO",
			"i",
			.const_value=(BBString*)&_s849
		},
		{
			BBDEBUGDECL_CONST,
			"CHUNK_FRAMES",
			"i",
			.const_value=(BBString*)&_s850
		},
		{
			BBDEBUGDECL_CONST,
			"CHUNK_HIERINFO",
			"i",
			.const_value=(BBString*)&_s851
		},
		{
			BBDEBUGDECL_CONST,
			"CHUNK_INSTNAME",
			"i",
			.const_value=(BBString*)&_s852
		},
		{
			BBDEBUGDECL_CONST,
			"CHUNK_PIVOT",
			"i",
			.const_value=(BBString*)&_s853
		},
		{
			BBDEBUGDECL_CONST,
			"CHUNK_BOUNDBOX",
			"i",
			.const_value=(BBString*)&_s854
		},
		{
			BBDEBUGDECL_CONST,
			"CHUNK_POSTRACK",
			"i",
			.const_value=(BBString*)&_s855
		},
		{
			BBDEBUGDECL_CONST,
			"CHUNK_ROTTRACK",
			"i",
			.const_value=(BBString*)&_s856
		},
		{
			BBDEBUGDECL_CONST,
			"CHUNK_SCALETRACK",
			"i",
			.const_value=(BBString*)&_s857
		},
		{
			BBDEBUGDECL_CONST,
			"CHUNK_HIERPOS",
			"i",
			.const_value=(BBString*)&_s858
		},
		{
			BBDEBUGDECL_FIELD,
			"Objlist",
			":TList",
			.field_offset=offsetof(struct openb3d_openb3dcore_T3DS2_obj,_openb3d_openb3dcore_t3ds2_objlist)
		},
		{
			BBDEBUGDECL_FIELD,
			"Materialmap",
			":TMap",
			.field_offset=offsetof(struct openb3d_openb3dcore_T3DS2_obj,_openb3d_openb3dcore_t3ds2_materialmap)
		},
		{
			BBDEBUGDECL_FIELD,
			"Materialcolormap",
			":TMap",
			.field_offset=offsetof(struct openb3d_openb3dcore_T3DS2_obj,_openb3d_openb3dcore_t3ds2_materialcolormap)
		},
		{
			BBDEBUGDECL_FIELD,
			"Materialshinemap",
			":TMap",
			.field_offset=offsetof(struct openb3d_openb3dcore_T3DS2_obj,_openb3d_openb3dcore_t3ds2_materialshinemap)
		},
		{
			BBDEBUGDECL_FIELD,
			"Materiallayermap",
			":TMap",
			.field_offset=offsetof(struct openb3d_openb3dcore_T3DS2_obj,_openb3d_openb3dcore_t3ds2_materiallayermap)
		},
		{
			BBDEBUGDECL_FIELD,
			"Matrixmap",
			":TMap",
			.field_offset=offsetof(struct openb3d_openb3dcore_T3DS2_obj,_openb3d_openb3dcore_t3ds2_matrixmap)
		},
		{
			BBDEBUGDECL_FIELD,
			"Filepath",
			"$",
			.field_offset=offsetof(struct openb3d_openb3dcore_T3DS2_obj,_openb3d_openb3dcore_t3ds2_filepath)
		},
		{
			BBDEBUGDECL_FIELD,
			"Filename",
			"$",
			.field_offset=offsetof(struct openb3d_openb3dcore_T3DS2_obj,_openb3d_openb3dcore_t3ds2_filename)
		},
		{
			BBDEBUGDECL_FIELD,
			"Stream",
			":TStream",
			.field_offset=offsetof(struct openb3d_openb3dcore_T3DS2_obj,_openb3d_openb3dcore_t3ds2_stream)
		},
		{
			BBDEBUGDECL_FIELD,
			"Defaultbrush",
			":TBrush",
			.field_offset=offsetof(struct openb3d_openb3dcore_T3DS2_obj,_openb3d_openb3dcore_t3ds2_defaultbrush)
		},
		{
			BBDEBUGDECL_FIELD,
			"Root",
			":TMesh",
			.field_offset=offsetof(struct openb3d_openb3dcore_T3DS2_obj,_openb3d_openb3dcore_t3ds2_root)
		},
		{
			BBDEBUGDECL_FIELD,
			"override_texflags",
			"i",
			.field_offset=offsetof(struct openb3d_openb3dcore_T3DS2_obj,_openb3d_openb3dcore_t3ds2_override_texflags)
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"New",
			"()i",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_T3DS2_New
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"GetObject",
			"(i):TEntity",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_T3DS2_GetObject_i
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"ReadChunk",
			"():TChunk",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_T3DS2_ReadChunk
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"ParseString",
			"()$",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_T3DS2_ParseString
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"ParseVertexList",
			"(:TSurface,:TEntity)s",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_T3DS2_ParseVertexList_TTSurfaceTTEntity
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"ParseMapList",
			"(:TSurface,:TEntity)i",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_T3DS2_ParseMapList_TTSurfaceTTEntity
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"ParseFaceMatList",
			"(:TSurface,:TEntity)i",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_T3DS2_ParseFaceMatList_TTSurfaceTTEntity
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"ParseFaceList",
			"(:TSurface,:TEntity,i)s",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_T3DS2_ParseFaceList_TTSurfaceTTEntityi
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"ParseMap",
			"(:TEntity,i)$",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_T3DS2_ParseMap_TTEntityi
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"ParseTriMesh",
			"(:TMesh,:TEntity,i)i",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_T3DS2_ParseTriMesh_TTMeshTTEntityi
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"ParseAnimKeys",
			"(:TEntity,i,[]:TAnimKey,i)[]:TAnimKey",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_T3DS2_ParseAnimKeys_TTEntityiaTTAnimKeyi
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"ParseMeshInfo",
			"(:TEntity,i)i",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_T3DS2_ParseMeshInfo_TTEntityi
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"ParseObject",
			"(:TEntity,i)i",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_T3DS2_ParseObject_TTEntityi
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"ParsePercent",
			"(:TEntity,i)f",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_T3DS2_ParsePercent_TTEntityi
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"ParseColor",
			"(:TEntity,i)[]b",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_T3DS2_ParseColor_TTEntityi
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"ParseMaterial",
			"(:TEntity,i)i",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_T3DS2_ParseMaterial_TTEntityi
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"ParseKeyFrames",
			"(:TEntity,i)i",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_T3DS2_ParseKeyFrames_TTEntityi
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"ParseScene",
			"(:TEntity,i)i",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_T3DS2_ParseScene_TTEntityi
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"ParseFile",
			"(:Object,:TEntity):TMesh",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_T3DS2_ParseFile_TObjectTTEntity
		},
		{
			BBDEBUGDECL_TYPEFUNCTION,
			"LoadAnim3DS",
			"(:Object,:TEntity,i):TMesh",
			.func_ptr=(BBFuncPtr)&openb3d_openb3dcore_T3DS2_LoadAnim3DS_TTMesh_TObjectTTEntityi
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"LoadAnim3DSFromStream",
			"(:TStream,:Object,:TEntity,i):TMesh",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_T3DS2_LoadAnim3DSFromStream_TTStreamTObjectTTEntityi
		},
		{
			BBDEBUGDECL_END
		}
	}
};
struct BBClass_openb3d_openb3dcore_T3DS2 openb3d_openb3dcore_T3DS2={
	&bbObjectClass,
	bbObjectFree,
	(BBDebugScope*)&openb3d_openb3dcore_T3DS2_scope,
	sizeof(struct openb3d_openb3dcore_T3DS2_obj),
	(void (*)(BBOBJECT))_openb3d_openb3dcore_T3DS2_New,
	bbObjectDtor,
	bbObjectToString,
	bbObjectCompare,
	bbObjectSendMessage,
	0,
	0,
	offsetof(struct openb3d_openb3dcore_T3DS2_obj,_openb3d_openb3dcore_t3ds2_override_texflags) - offsetof(struct openb3d_openb3dcore_T3DS2_obj,_openb3d_openb3dcore_t3ds2_objlist) + sizeof(BBINT)
	,0
	,offsetof(struct openb3d_openb3dcore_T3DS2_obj,_openb3d_openb3dcore_t3ds2_objlist)
	,_openb3d_openb3dcore_T3DS2_GetObject_i
	,_openb3d_openb3dcore_T3DS2_ReadChunk
	,_openb3d_openb3dcore_T3DS2_ParseString
	,_openb3d_openb3dcore_T3DS2_ParseVertexList_TTSurfaceTTEntity
	,_openb3d_openb3dcore_T3DS2_ParseMapList_TTSurfaceTTEntity
	,_openb3d_openb3dcore_T3DS2_ParseFaceMatList_TTSurfaceTTEntity
	,_openb3d_openb3dcore_T3DS2_ParseFaceList_TTSurfaceTTEntityi
	,_openb3d_openb3dcore_T3DS2_ParseMap_TTEntityi
	,_openb3d_openb3dcore_T3DS2_ParseTriMesh_TTMeshTTEntityi
	,_openb3d_openb3dcore_T3DS2_ParseAnimKeys_TTEntityiaTTAnimKeyi
	,_openb3d_openb3dcore_T3DS2_ParseMeshInfo_TTEntityi
	,_openb3d_openb3dcore_T3DS2_ParseObject_TTEntityi
	,_openb3d_openb3dcore_T3DS2_ParsePercent_TTEntityi
	,_openb3d_openb3dcore_T3DS2_ParseColor_TTEntityi
	,_openb3d_openb3dcore_T3DS2_ParseMaterial_TTEntityi
	,_openb3d_openb3dcore_T3DS2_ParseKeyFrames_TTEntityi
	,_openb3d_openb3dcore_T3DS2_ParseScene_TTEntityi
	,_openb3d_openb3dcore_T3DS2_ParseFile_TObjectTTEntity
	,openb3d_openb3dcore_T3DS2_LoadAnim3DS_TTMesh_TObjectTTEntityi
	,_openb3d_openb3dcore_T3DS2_LoadAnim3DSFromStream_TTStreamTObjectTTEntityi
};

void _openb3d_openb3dcore_TOBJ_New(struct openb3d_openb3dcore_TOBJ_obj* o) {
	bbObjectCtor((BBOBJECT)o);
	o->clas = &openb3d_openb3dcore_TOBJ;
}
struct openb3d_openb3dcore_TMesh_obj* openb3d_openb3dcore_TOBJ_LoadOBJ_TTMesh_TObjectTTEntityi(BBOBJECT bbt_url,struct openb3d_openb3dcore_TEntity_obj* bbt_parent_ent_ext,BBINT bbt_texflags){
	struct brl_stream_TStream_obj* bbt_file=(struct brl_stream_TStream_obj*)((struct brl_stream_TStream_obj*)&bbNullObject);
	struct openb3d_openb3dcore_TMesh_obj* bbt_mesh=(struct openb3d_openb3dcore_TMesh_obj*)((struct openb3d_openb3dcore_TMesh_obj*)&bbNullObject);
	struct BBDebugScope_5 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"LoadOBJ",
		{
			{
				BBDEBUGDECL_LOCAL,
				"url",
				":Object",
				.var_address=&bbt_url
			},
			{
				BBDEBUGDECL_LOCAL,
				"parent_ent_ext",
				":TEntity",
				.var_address=&bbt_parent_ent_ext
			},
			{
				BBDEBUGDECL_LOCAL,
				"texflags",
				"i",
				.var_address=&bbt_texflags
			},
			{
				BBDEBUGDECL_LOCAL,
				"file",
				":TStream",
				.var_address=&bbt_file
			},
			{
				BBDEBUGDECL_LOCAL,
				"mesh",
				":TMesh",
				.var_address=&bbt_mesh
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0xb38e7c8d97adef99, 18, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbt_file=(struct brl_stream_TStream_obj*)brl_endianstream_LittleEndianStream((struct brl_stream_TStream_obj*)brl_filesystem_ReadFile((BBOBJECT)bbt_url));
	struct BBDebugStm __stmt_1 = {0xb38e7c8d97adef99, 19, 0};
	bbOnDebugEnterStm(&__stmt_1);
	if(((BBOBJECT)bbt_file)==&bbNullObject){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0xb38e7c8d97adef99, 20, 0};
		bbOnDebugEnterStm(&__stmt_0);
		brl_standardio_Print(bbStringConcat(((BBString*)&_s569),((BBString *)bbObjectStringcast((BBOBJECT)bbt_url))));
		struct BBDebugStm __stmt_1 = {0xb38e7c8d97adef99, 21, 0};
		bbOnDebugEnterStm(&__stmt_1);
		bbOnDebugLeaveScope();
		bbOnDebugLeaveScope();
		return (struct openb3d_openb3dcore_TMesh_obj*)&bbNullObject;
	}
	struct BBDebugStm __stmt_2 = {0xb38e7c8d97adef99, 24, 0};
	bbOnDebugEnterStm(&__stmt_2);
	bbt_mesh=(struct openb3d_openb3dcore_TMesh_obj*)openb3d_openb3dcore_TOBJ_LoadOBJFromStream_TTMesh_TTStreamTObjectTTEntityi((struct brl_stream_TStream_obj*)bbt_file,(BBOBJECT)bbt_url,(struct openb3d_openb3dcore_TEntity_obj*)bbt_parent_ent_ext,bbt_texflags);
	struct BBDebugStm __stmt_3 = {0xb38e7c8d97adef99, 26, 0};
	bbOnDebugEnterStm(&__stmt_3);
	brl_stream_CloseStream((struct brl_stream_TStream_obj*)bbt_file);
	struct BBDebugStm __stmt_4 = {0xb38e7c8d97adef99, 27, 0};
	bbOnDebugEnterStm(&__stmt_4);
	bbOnDebugLeaveScope();
	return (struct openb3d_openb3dcore_TMesh_obj*)bbt_mesh;
}
struct openb3d_openb3dcore_TMesh_obj* openb3d_openb3dcore_TOBJ_LoadOBJFromStream_TTMesh_TTStreamTObjectTTEntityi(struct brl_stream_TStream_obj* bbt_file,BBOBJECT bbt_url,struct openb3d_openb3dcore_TEntity_obj* bbt_parent_ent,BBINT bbt_texflags){
	BBSTRING bbt_cd=(&bbEmptyString);
	BBSTRING bbt_fname=(&bbEmptyString);
	struct openb3d_openb3dcore_TMesh_obj* bbt_mesh=(struct openb3d_openb3dcore_TMesh_obj*)((struct openb3d_openb3dcore_TMesh_obj*)&bbNullObject);
	struct BBDebugScope_7 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"LoadOBJFromStream",
		{
			{
				BBDEBUGDECL_LOCAL,
				"file",
				":TStream",
				.var_address=&bbt_file
			},
			{
				BBDEBUGDECL_LOCAL,
				"url",
				":Object",
				.var_address=&bbt_url
			},
			{
				BBDEBUGDECL_LOCAL,
				"parent_ent",
				":TEntity",
				.var_address=&bbt_parent_ent
			},
			{
				BBDEBUGDECL_LOCAL,
				"texflags",
				"i",
				.var_address=&bbt_texflags
			},
			{
				BBDEBUGDECL_LOCAL,
				"cd",
				"$",
				.var_address=&bbt_cd
			},
			{
				BBDEBUGDECL_LOCAL,
				"fname",
				"$",
				.var_address=&bbt_fname
			},
			{
				BBDEBUGDECL_LOCAL,
				"mesh",
				":TMesh",
				.var_address=&bbt_mesh
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0xb38e7c8d97adef99, 33, 0};
	bbOnDebugEnterStm(&__stmt_0);
	openb3d_openb3dcore_TOBJ_MeshPath=brl_filesystem_ExtractDir((BBString *)bbObjectStringcast((BBOBJECT)bbt_url));
	struct BBDebugStm __stmt_1 = {0xb38e7c8d97adef99, 34, 0};
	bbOnDebugEnterStm(&__stmt_1);
	openb3d_openb3dcore_TOBJ_MaterialPath=openb3d_openb3dcore_TOBJ_MeshPath;
	struct BBDebugStm __stmt_2 = {0xb38e7c8d97adef99, 35, 0};
	bbOnDebugEnterStm(&__stmt_2);
	openb3d_openb3dcore_TOBJ_TexturePath=openb3d_openb3dcore_TOBJ_MaterialPath;
	struct BBDebugStm __stmt_3 = {0xb38e7c8d97adef99, 36, 0};
	bbOnDebugEnterStm(&__stmt_3);
	if(bbt_texflags==-1){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0xb38e7c8d97adef99, 36, 0};
		bbOnDebugEnterStm(&__stmt_0);
		openb3d_openb3dcore_TOBJ_override_texflags=openb3d_openb3dcore_TGlobal3D_Texture_Flags;
		bbOnDebugLeaveScope();
	}else{
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0xb38e7c8d97adef99, 36, 0};
		bbOnDebugEnterStm(&__stmt_0);
		openb3d_openb3dcore_TOBJ_override_texflags=bbt_texflags;
		bbOnDebugLeaveScope();
	}
	struct BBDebugStm __stmt_4 = {0xb38e7c8d97adef99, 38, 0};
	bbOnDebugEnterStm(&__stmt_4);
	bbt_cd=brl_filesystem_CurrentDir();
	struct BBDebugStm __stmt_5 = {0xb38e7c8d97adef99, 39, 0};
	bbOnDebugEnterStm(&__stmt_5);
	bbt_fname=brl_filesystem_StripDir((BBString *)bbObjectStringcast((BBOBJECT)bbt_url));
	struct BBDebugStm __stmt_6 = {0xb38e7c8d97adef99, 40, 0};
	bbOnDebugEnterStm(&__stmt_6);
	bbt_mesh=(struct openb3d_openb3dcore_TMesh_obj*)((struct openb3d_openb3dcore_TMesh_obj*)&bbNullObject);
	struct BBDebugStm __stmt_7 = {0xb38e7c8d97adef99, 42, 0};
	bbOnDebugEnterStm(&__stmt_7);
	if(bbStringEquals(bbt_fname, ((BBString*)&bbEmptyString))!=1){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0xb38e7c8d97adef99, 44, 0};
		bbOnDebugEnterStm(&__stmt_0);
		bbt_mesh=(struct openb3d_openb3dcore_TMesh_obj*)openb3d_openb3dcore_TOBJ_ParseObj_TTMesh_TTStreamTTEntityS((struct brl_stream_TStream_obj*)bbt_file,(struct openb3d_openb3dcore_TEntity_obj*)bbt_parent_ent,((BBString*)&bbEmptyString));
		bbOnDebugLeaveScope();
	}
	struct BBDebugStm __stmt_8 = {0xb38e7c8d97adef99, 48, 0};
	bbOnDebugEnterStm(&__stmt_8);
	if(((BBOBJECT)bbt_mesh)==&bbNullObject){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0xb38e7c8d97adef99, 49, 0};
		bbOnDebugEnterStm(&__stmt_0);
		brl_standardio_Print(bbStringConcat(bbStringConcat(bbStringConcat(((BBString*)&_s570),openb3d_openb3dcore_TOBJ_MeshPath),((BBString*)&_s401)),bbt_fname));
		bbOnDebugLeaveScope();
	}else{
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0xb38e7c8d97adef99, 50, 0};
		bbOnDebugEnterStm(&__stmt_0);
		if(openb3d_openb3dcore_TGlobal3D_Log_OBJ!=0){
			struct BBDebugScope __scope = {
				BBDEBUGSCOPE_LOCALBLOCK,
				0,
				{
					{
						BBDEBUGDECL_END
					}
				}
			};
			bbOnDebugEnterScope((BBDebugScope *)&__scope);
			struct BBDebugStm __stmt_0 = {0xb38e7c8d97adef99, 51, 0};
			bbOnDebugEnterStm(&__stmt_0);
			brl_blitz_DebugLog(bbStringConcat(((BBString*)&_s571),bbt_fname));
			struct BBDebugStm __stmt_1 = {0xb38e7c8d97adef99, 52, 0};
			bbOnDebugEnterStm(&__stmt_1);
			brl_blitz_DebugLog(bbStringConcat(((BBString*)&_s572),openb3d_openb3dcore_TOBJ_MeshPath));
			struct BBDebugStm __stmt_2 = {0xb38e7c8d97adef99, 53, 0};
			bbOnDebugEnterStm(&__stmt_2);
			brl_blitz_DebugLog(bbStringConcat(((BBString*)&_s573),openb3d_openb3dcore_TOBJ_MaterialPath));
			struct BBDebugStm __stmt_3 = {0xb38e7c8d97adef99, 54, 0};
			bbOnDebugEnterStm(&__stmt_3);
			brl_blitz_DebugLog(bbStringConcat(((BBString*)&_s574),openb3d_openb3dcore_TOBJ_TexturePath));
			bbOnDebugLeaveScope();
		}
		bbOnDebugLeaveScope();
	}
	struct BBDebugStm __stmt_9 = {0xb38e7c8d97adef99, 57, 0};
	bbOnDebugEnterStm(&__stmt_9);
	brl_filesystem_ChangeDir(bbt_cd);
	struct BBDebugStm __stmt_10 = {0xb38e7c8d97adef99, 58, 0};
	bbOnDebugEnterStm(&__stmt_10);
	bbOnDebugLeaveScope();
	return (struct openb3d_openb3dcore_TMesh_obj*)bbt_mesh;
}
struct openb3d_openb3dcore_TMesh_obj* openb3d_openb3dcore_TOBJ_ParseObj_TTMesh_TTStreamTTEntityS(struct brl_stream_TStream_obj* bbt_file,struct openb3d_openb3dcore_TEntity_obj* bbt_parent_ent,BBSTRING bbt_mtllib_string){
	struct openb3d_openb3dcore_TOBJ_obj* bbt_stream=(struct openb3d_openb3dcore_TOBJ_obj*)((struct openb3d_openb3dcore_TOBJ_obj*)&bbNullObject);
	struct brl_map_TMap_obj* bbt_matlibsMap=(struct brl_map_TMap_obj*)((struct brl_map_TMap_obj*)&bbNullObject);
	BBARRAY bbt_matlibsArray=(&bbEmptyArray);
	BBINT bbt_matlibsArrayBuffSize=0;
	BBINT bbt_matlibsArrayCount=0;
	BBARRAY bbt_vertexP=(&bbEmptyArray);
	BBARRAY bbt_vertexN=(&bbEmptyArray);
	BBARRAY bbt_vertexT=(&bbEmptyArray);
	BBSTRING bbt_gname=(&bbEmptyString);
	BBINT bbt_snumber=0;
	BBINT bbt_hasNorms=0;
	BBINT bbt_VC=0;
	BBINT bbt_VN=0;
	BBINT bbt_VT=0;
	BBINT bbt_FC=0;
	BBINT bbt_TRI=0;
	BBINT bbt_SC=0;
	BBINT bbt_v0=0;
	BBINT bbt_v1=0;
	BBINT bbt_v2=0;
	BBINT bbt_ri=0;
	BBINT bbt_id=0;
	struct openb3d_openb3dcore_TMesh_obj* bbt_root=(struct openb3d_openb3dcore_TMesh_obj*)((struct openb3d_openb3dcore_TMesh_obj*)&bbNullObject);
	struct openb3d_openb3dcore_TMesh_obj* bbt_mesh=(struct openb3d_openb3dcore_TMesh_obj*)((struct openb3d_openb3dcore_TMesh_obj*)&bbNullObject);
	struct openb3d_openb3dcore_TSurface_obj* bbt_surface=(struct openb3d_openb3dcore_TSurface_obj*)((struct openb3d_openb3dcore_TSurface_obj*)&bbNullObject);
	BBINT bbt_meshonce=0;
	struct openb3d_openb3dcore_TObjMtl_obj* bbt_currMtl=(struct openb3d_openb3dcore_TObjMtl_obj*)((struct openb3d_openb3dcore_TObjMtl_obj*)&bbNullObject);
	BBSTRING bbt_curline=(&bbEmptyString);
	BBINT bbt_ms=0;
	BBINT bbt_startMs=0;
	struct BBDebugScope_33 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"ParseObj",
		{
			{
				BBDEBUGDECL_LOCAL,
				"file",
				":TStream",
				.var_address=&bbt_file
			},
			{
				BBDEBUGDECL_LOCAL,
				"parent_ent",
				":TEntity",
				.var_address=&bbt_parent_ent
			},
			{
				BBDEBUGDECL_LOCAL,
				"mtllib_string",
				"$",
				.var_address=&bbt_mtllib_string
			},
			{
				BBDEBUGDECL_LOCAL,
				"stream",
				":TOBJ",
				.var_address=&bbt_stream
			},
			{
				BBDEBUGDECL_LOCAL,
				"matlibsMap",
				":TMap",
				.var_address=&bbt_matlibsMap
			},
			{
				BBDEBUGDECL_LOCAL,
				"matlibsArray",
				"[]:TObjMtl",
				.var_address=&bbt_matlibsArray
			},
			{
				BBDEBUGDECL_LOCAL,
				"matlibsArrayBuffSize",
				"i",
				.var_address=&bbt_matlibsArrayBuffSize
			},
			{
				BBDEBUGDECL_LOCAL,
				"matlibsArrayCount",
				"i",
				.var_address=&bbt_matlibsArrayCount
			},
			{
				BBDEBUGDECL_LOCAL,
				"vertexP",
				"[]:TObjVertex",
				.var_address=&bbt_vertexP
			},
			{
				BBDEBUGDECL_LOCAL,
				"vertexN",
				"[]:TObjNormal",
				.var_address=&bbt_vertexN
			},
			{
				BBDEBUGDECL_LOCAL,
				"vertexT",
				"[]:TObjTexCoord",
				.var_address=&bbt_vertexT
			},
			{
				BBDEBUGDECL_LOCAL,
				"gname",
				"$",
				.var_address=&bbt_gname
			},
			{
				BBDEBUGDECL_LOCAL,
				"snumber",
				"i",
				.var_address=&bbt_snumber
			},
			{
				BBDEBUGDECL_LOCAL,
				"hasNorms",
				"i",
				.var_address=&bbt_hasNorms
			},
			{
				BBDEBUGDECL_LOCAL,
				"VC",
				"i",
				.var_address=&bbt_VC
			},
			{
				BBDEBUGDECL_LOCAL,
				"VN",
				"i",
				.var_address=&bbt_VN
			},
			{
				BBDEBUGDECL_LOCAL,
				"VT",
				"i",
				.var_address=&bbt_VT
			},
			{
				BBDEBUGDECL_LOCAL,
				"FC",
				"i",
				.var_address=&bbt_FC
			},
			{
				BBDEBUGDECL_LOCAL,
				"TRI",
				"i",
				.var_address=&bbt_TRI
			},
			{
				BBDEBUGDECL_LOCAL,
				"SC",
				"i",
				.var_address=&bbt_SC
			},
			{
				BBDEBUGDECL_LOCAL,
				"v0",
				"i",
				.var_address=&bbt_v0
			},
			{
				BBDEBUGDECL_LOCAL,
				"v1",
				"i",
				.var_address=&bbt_v1
			},
			{
				BBDEBUGDECL_LOCAL,
				"v2",
				"i",
				.var_address=&bbt_v2
			},
			{
				BBDEBUGDECL_LOCAL,
				"ri",
				"i",
				.var_address=&bbt_ri
			},
			{
				BBDEBUGDECL_LOCAL,
				"id",
				"i",
				.var_address=&bbt_id
			},
			{
				BBDEBUGDECL_LOCAL,
				"root",
				":TMesh",
				.var_address=&bbt_root
			},
			{
				BBDEBUGDECL_LOCAL,
				"mesh",
				":TMesh",
				.var_address=&bbt_mesh
			},
			{
				BBDEBUGDECL_LOCAL,
				"surface",
				":TSurface",
				.var_address=&bbt_surface
			},
			{
				BBDEBUGDECL_LOCAL,
				"meshonce",
				"i",
				.var_address=&bbt_meshonce
			},
			{
				BBDEBUGDECL_LOCAL,
				"currMtl",
				":TObjMtl",
				.var_address=&bbt_currMtl
			},
			{
				BBDEBUGDECL_LOCAL,
				"curline",
				"$",
				.var_address=&bbt_curline
			},
			{
				BBDEBUGDECL_LOCAL,
				"ms",
				"i",
				.var_address=&bbt_ms
			},
			{
				BBDEBUGDECL_LOCAL,
				"startMs",
				"i",
				.var_address=&bbt_startMs
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0xb38e7c8d97adef99, 64, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbt_stream=(struct openb3d_openb3dcore_TOBJ_obj*)(struct openb3d_openb3dcore_TOBJ_obj*)bbObjectAtomicNew((BBClass *)&openb3d_openb3dcore_TOBJ);
	struct BBDebugStm __stmt_1 = {0xb38e7c8d97adef99, 66, 0};
	bbOnDebugEnterStm(&__stmt_1);
	bbt_matlibsMap=(struct brl_map_TMap_obj*)((struct brl_map_TMap_obj*)&bbNullObject);
	struct BBDebugStm __stmt_2 = {0xb38e7c8d97adef99, 67, 0};
	bbOnDebugEnterStm(&__stmt_2);
	bbt_matlibsArray=(&bbEmptyArray);
	struct BBDebugStm __stmt_3 = {0xb38e7c8d97adef99, 68, 0};
	bbOnDebugEnterStm(&__stmt_3);
	bbt_matlibsArrayBuffSize=0;
	struct BBDebugStm __stmt_4 = {0xb38e7c8d97adef99, 69, 0};
	bbOnDebugEnterStm(&__stmt_4);
	bbt_matlibsArrayCount=0;
	struct BBDebugStm __stmt_5 = {0xb38e7c8d97adef99, 71, 0};
	bbOnDebugEnterStm(&__stmt_5);
	{
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0xb38e7c8d97adef99, 74, 0};
		bbOnDebugEnterStm(&__stmt_0);
		bbt_matlibsArrayBuffSize=64;
		struct BBDebugStm __stmt_1 = {0xb38e7c8d97adef99, 75, 0};
		bbOnDebugEnterStm(&__stmt_1);
		bbt_matlibsArray=bbArrayNew1D(":TObjMtl", bbt_matlibsArrayBuffSize);
		bbOnDebugLeaveScope();
	}
	struct BBDebugStm __stmt_6 = {0xb38e7c8d97adef99, 78, 0};
	bbOnDebugEnterStm(&__stmt_6);
	bbt_vertexP=bbArrayNew1D(":TObjVertex", 1024);
	struct BBDebugStm __stmt_7 = {0xb38e7c8d97adef99, 79, 0};
	bbOnDebugEnterStm(&__stmt_7);
	bbt_vertexN=bbArrayNew1D(":TObjNormal", 1024);
	struct BBDebugStm __stmt_8 = {0xb38e7c8d97adef99, 80, 0};
	bbOnDebugEnterStm(&__stmt_8);
	bbt_vertexT=bbArrayNew1D(":TObjTexCoord", 1024);
	struct BBDebugStm __stmt_9 = {0xb38e7c8d97adef99, 83, 0};
	bbOnDebugEnterStm(&__stmt_9);
	bbt_gname=((BBString*)&bbEmptyString);
	struct BBDebugStm __stmt_10 = {0xb38e7c8d97adef99, 84, 0};
	bbOnDebugEnterStm(&__stmt_10);
	bbt_snumber=-1;
	struct BBDebugStm __stmt_11 = {0xb38e7c8d97adef99, 89, 0};
	bbOnDebugEnterStm(&__stmt_11);
	bbt_hasNorms=0;
	struct BBDebugStm __stmt_12 = {0xb38e7c8d97adef99, 90, 0};
	bbOnDebugEnterStm(&__stmt_12);
	bbt_VC=0;
	struct BBDebugStm __stmt_13 = {0xb38e7c8d97adef99, 91, 0};
	bbOnDebugEnterStm(&__stmt_13);
	bbt_VN=0;
	struct BBDebugStm __stmt_14 = {0xb38e7c8d97adef99, 92, 0};
	bbOnDebugEnterStm(&__stmt_14);
	bbt_VT=0;
	struct BBDebugStm __stmt_15 = {0xb38e7c8d97adef99, 93, 0};
	bbOnDebugEnterStm(&__stmt_15);
	bbt_FC=0;
	struct BBDebugStm __stmt_16 = {0xb38e7c8d97adef99, 94, 0};
	bbOnDebugEnterStm(&__stmt_16);
	bbt_TRI=0;
	struct BBDebugStm __stmt_17 = {0xb38e7c8d97adef99, 95, 0};
	bbOnDebugEnterStm(&__stmt_17);
	bbt_SC=0;
	struct BBDebugStm __stmt_18 = {0xb38e7c8d97adef99, 97, 0};
	bbOnDebugEnterStm(&__stmt_18);
	bbt_v0=0;
	struct BBDebugStm __stmt_19 = {0xb38e7c8d97adef99, 98, 0};
	bbOnDebugEnterStm(&__stmt_19);
	bbt_v1=0;
	struct BBDebugStm __stmt_20 = {0xb38e7c8d97adef99, 99, 0};
	bbOnDebugEnterStm(&__stmt_20);
	bbt_v2=0;
	struct BBDebugStm __stmt_21 = {0xb38e7c8d97adef99, 100, 0};
	bbOnDebugEnterStm(&__stmt_21);
	bbt_ri=0;
	struct BBDebugStm __stmt_22 = {0xb38e7c8d97adef99, 101, 0};
	bbOnDebugEnterStm(&__stmt_22);
	bbt_id=0;
	struct BBDebugStm __stmt_23 = {0xb38e7c8d97adef99, 103, 0};
	bbOnDebugEnterStm(&__stmt_23);
	bbt_root=(struct openb3d_openb3dcore_TMesh_obj*)openb3d_openb3dcore_TMesh_Create_TTMesh();
	struct BBDebugStm __stmt_24 = {0xb38e7c8d97adef99, 104, 0};
	bbOnDebugEnterStm(&__stmt_24);
	((struct openb3d_openb3dcore_TMesh_obj*)bbNullObjectTest((BBObject*)bbt_root))->clas->m_SetString_pbS((struct openb3d_openb3dcore_TEntity_obj*)bbt_root,((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)bbt_root))->_openb3d_openb3dcore_tentity_name ,((BBString*)&_s519));
	struct BBDebugStm __stmt_25 = {0xb38e7c8d97adef99, 105, 0};
	bbOnDebugEnterStm(&__stmt_25);
	((struct openb3d_openb3dcore_TMesh_obj*)bbNullObjectTest((BBObject*)bbt_root))->clas->m_SetString_pbS((struct openb3d_openb3dcore_TEntity_obj*)bbt_root,((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)bbt_root))->_openb3d_openb3dcore_tentity_class_name ,((BBString*)&_s461));
	struct BBDebugStm __stmt_26 = {0xb38e7c8d97adef99, 106, 0};
	bbOnDebugEnterStm(&__stmt_26);
	((struct openb3d_openb3dcore_TMesh_obj*)bbNullObjectTest((BBObject*)bbt_root))->clas->m_AddParent_TTEntity((struct openb3d_openb3dcore_TEntity_obj*)bbt_root,(struct openb3d_openb3dcore_TEntity_obj*)bbt_parent_ent);
	struct BBDebugStm __stmt_27 = {0xb38e7c8d97adef99, 107, 0};
	bbOnDebugEnterStm(&__stmt_27);
	((struct openb3d_openb3dcore_TMesh_obj*)bbNullObjectTest((BBObject*)bbt_root))->clas->m_EntityListAdd_TTListTObject((struct openb3d_openb3dcore_TEntity_obj*)bbt_root,(struct brl_linkedlist_TList_obj*)openb3d_openb3dcore_TEntity_entity_list,(BBOBJECT)&bbNullObject);
	struct BBDebugStm __stmt_28 = {0xb38e7c8d97adef99, 109, 0};
	bbOnDebugEnterStm(&__stmt_28);
	bbt_mesh=(struct openb3d_openb3dcore_TMesh_obj*)((struct openb3d_openb3dcore_TMesh_obj*)&bbNullObject);
	struct BBDebugStm __stmt_29 = {0xb38e7c8d97adef99, 110, 0};
	bbOnDebugEnterStm(&__stmt_29);
	bbt_surface=(struct openb3d_openb3dcore_TSurface_obj*)((struct openb3d_openb3dcore_TSurface_obj*)&bbNullObject);
	struct BBDebugStm __stmt_30 = {0xb38e7c8d97adef99, 111, 0};
	bbOnDebugEnterStm(&__stmt_30);
	bbt_meshonce=0;
	struct BBDebugStm __stmt_31 = {0xb38e7c8d97adef99, 112, 0};
	bbOnDebugEnterStm(&__stmt_31);
	bbt_currMtl=(struct openb3d_openb3dcore_TObjMtl_obj*)((struct openb3d_openb3dcore_TObjMtl_obj*)&bbNullObject);
	struct BBDebugStm __stmt_32 = {0xb38e7c8d97adef99, 116, 0};
	bbOnDebugEnterStm(&__stmt_32);
	bbt_curline=((BBString*)&bbEmptyString);
	struct BBDebugStm __stmt_33 = {0xb38e7c8d97adef99, 117, 0};
	bbOnDebugEnterStm(&__stmt_33);
	bbt_ms=0;
	struct BBDebugStm __stmt_34 = {0xb38e7c8d97adef99, 118, 0};
	bbOnDebugEnterStm(&__stmt_34);
	bbt_startMs=bbMilliSecs();
	struct BBDebugStm __stmt_35 = {0xb38e7c8d97adef99, 120, 0};
	bbOnDebugEnterStm(&__stmt_35);
	while(brl_stream_StreamPos((struct brl_stream_TStream_obj*)bbt_file)<brl_stream_StreamSize((struct brl_stream_TStream_obj*)bbt_file)){
		BBSTRING bbt_tag=(&bbEmptyString);
		struct BBDebugScope_1 __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_LOCAL,
					"tag",
					"$",
					.var_address=&bbt_tag
				},
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0xb38e7c8d97adef99, 122, 0};
		bbOnDebugEnterStm(&__stmt_0);
		bbt_curline=brl_stream_ReadLine2((struct brl_stream_TStream_obj*)bbt_file);
		struct BBDebugStm __stmt_1 = {0xb38e7c8d97adef99, 123, 0};
		bbOnDebugEnterStm(&__stmt_1);
		if((bbt_curline->length)<1){
			struct BBDebugScope __scope = {
				BBDEBUGSCOPE_LOCALBLOCK,
				0,
				{
					{
						BBDEBUGDECL_END
					}
				}
			};
			bbOnDebugEnterScope((BBDebugScope *)&__scope);
			struct BBDebugStm __stmt_0 = {0xb38e7c8d97adef99, 123, 0};
			bbOnDebugEnterStm(&__stmt_0);
			bbOnDebugLeaveScope();
			bbOnDebugLeaveScope();
			continue;
		}
		struct BBDebugStm __stmt_2 = {0xb38e7c8d97adef99, 124, 0};
		bbOnDebugEnterStm(&__stmt_2);
		bbt_ms=bbMilliSecs();
		struct BBDebugStm __stmt_3 = {0xb38e7c8d97adef99, 127, 0};
		bbOnDebugEnterStm(&__stmt_3);
		BBSTRING bbt_=((BBString*)&_s575);
		if((bbt_curline)->buf[0U]==(bbt_)->buf[0U]){
			struct BBDebugScope __scope = {
				BBDEBUGSCOPE_LOCALBLOCK,
				0,
				{
					{
						BBDEBUGDECL_END
					}
				}
			};
			bbOnDebugEnterScope((BBDebugScope *)&__scope);
			struct BBDebugStm __stmt_0 = {0xb38e7c8d97adef99, 128, 0};
			bbOnDebugEnterStm(&__stmt_0);
			if(openb3d_openb3dcore_TGlobal3D_Log_OBJ!=0){
				struct BBDebugScope __scope = {
					BBDEBUGSCOPE_LOCALBLOCK,
					0,
					{
						{
							BBDEBUGDECL_END
						}
					}
				};
				bbOnDebugEnterScope((BBDebugScope *)&__scope);
				struct BBDebugStm __stmt_0 = {0xb38e7c8d97adef99, 128, 0};
				bbOnDebugEnterStm(&__stmt_0);
				brl_blitz_DebugLog(bbStringConcat(((BBString*)&_s576),bbt_curline));
				bbOnDebugLeaveScope();
			}
			struct BBDebugStm __stmt_1 = {0xb38e7c8d97adef99, 130, 0};
			bbOnDebugEnterStm(&__stmt_1);
			if(0 && (bbMilliSecs()!=bbt_ms)){
				struct BBDebugScope __scope = {
					BBDEBUGSCOPE_LOCALBLOCK,
					0,
					{
						{
							BBDEBUGDECL_END
						}
					}
				};
				bbOnDebugEnterScope((BBDebugScope *)&__scope);
				struct BBDebugStm __stmt_0 = {0xb38e7c8d97adef99, 130, 0};
				bbOnDebugEnterStm(&__stmt_0);
				brl_blitz_DebugLog(bbStringConcat(bbStringConcat(bbStringFromInt(bbMilliSecs()-bbt_ms),((BBString*)&_s577)),bbt_curline));
				bbOnDebugLeaveScope();
			}
			struct BBDebugStm __stmt_2 = {0xb38e7c8d97adef99, 131, 0};
			bbOnDebugEnterStm(&__stmt_2);
			bbOnDebugLeaveScope();
			bbOnDebugLeaveScope();
			continue;
		}
		struct BBDebugStm __stmt_4 = {0xb38e7c8d97adef99, 134, 0};
		bbOnDebugEnterStm(&__stmt_4);
		bbt_tag=bbStringToLower((BBSTRING)bbStringSlice(bbt_curline,0,9));
		struct BBDebugStm __stmt_5 = {0xb38e7c8d97adef99, 136, 0};
		bbOnDebugEnterStm(&__stmt_5);
		BBSTRING bbt_2=bbStringSlice(bbt_tag,0,2);
		struct BBDebugStm __stmt_6 = {0xb38e7c8d97adef99, 138, 0};
		bbOnDebugEnterStm(&__stmt_6);
		if(bbStringEquals(bbt_2, ((BBString*)&_s578))==1){
			struct BBDebugScope __scope = {
				BBDEBUGSCOPE_LOCALBLOCK,
				0,
				{
					{
						BBDEBUGDECL_END
					}
				}
			};
			bbOnDebugEnterScope((BBDebugScope *)&__scope);
			struct BBDebugStm __stmt_0 = {0xb38e7c8d97adef99, 139, 0};
			bbOnDebugEnterStm(&__stmt_0);
			((struct openb3d_openb3dcore_TMesh_obj*)bbNullObjectTest((BBObject*)bbt_root))->clas->m_SetString_pbS((struct openb3d_openb3dcore_TEntity_obj*)bbt_root,((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)bbt_root))->_openb3d_openb3dcore_tentity_name ,bbStringSlice(bbt_curline,2,(bbt_curline)->length));
			struct BBDebugStm __stmt_1 = {0xb38e7c8d97adef99, 141, 0};
			bbOnDebugEnterStm(&__stmt_1);
			if(0 && (bbMilliSecs()!=bbt_ms)){
				struct BBDebugScope __scope = {
					BBDEBUGSCOPE_LOCALBLOCK,
					0,
					{
						{
							BBDEBUGDECL_END
						}
					}
				};
				bbOnDebugEnterScope((BBDebugScope *)&__scope);
				struct BBDebugStm __stmt_0 = {0xb38e7c8d97adef99, 141, 0};
				bbOnDebugEnterStm(&__stmt_0);
				brl_blitz_DebugLog(bbStringConcat(bbStringConcat(bbStringFromInt(bbMilliSecs()-bbt_ms),((BBString*)&_s577)),bbt_curline));
				bbOnDebugLeaveScope();
			}
			struct BBDebugStm __stmt_2 = {0xb38e7c8d97adef99, 142, 0};
			bbOnDebugEnterStm(&__stmt_2);
			bbOnDebugLeaveScope();
			bbOnDebugLeaveScope();
			continue;
		}else{
			struct BBDebugScope __scope = {
				BBDEBUGSCOPE_LOCALBLOCK,
				0,
				{
					{
						BBDEBUGDECL_END
					}
				}
			};
			bbOnDebugEnterScope((BBDebugScope *)&__scope);
			struct BBDebugStm __stmt_0 = {0xb38e7c8d97adef99, 144, 0};
			bbOnDebugEnterStm(&__stmt_0);
			if(bbStringEquals(bbt_2, ((BBString*)&_s579))==1){
				struct BBDebugScope __scope = {
					BBDEBUGSCOPE_LOCALBLOCK,
					0,
					{
						{
							BBDEBUGDECL_END
						}
					}
				};
				bbOnDebugEnterScope((BBDebugScope *)&__scope);
				struct BBDebugStm __stmt_0 = {0xb38e7c8d97adef99, 145, 0};
				bbOnDebugEnterStm(&__stmt_0);
				bbt_gname=bbStringSlice(bbt_curline,2,(bbt_curline)->length);
				struct BBDebugStm __stmt_1 = {0xb38e7c8d97adef99, 148, 0};
				bbOnDebugEnterStm(&__stmt_1);
				if(0 && (bbMilliSecs()!=bbt_ms)){
					struct BBDebugScope __scope = {
						BBDEBUGSCOPE_LOCALBLOCK,
						0,
						{
							{
								BBDEBUGDECL_END
							}
						}
					};
					bbOnDebugEnterScope((BBDebugScope *)&__scope);
					struct BBDebugStm __stmt_0 = {0xb38e7c8d97adef99, 148, 0};
					bbOnDebugEnterStm(&__stmt_0);
					brl_blitz_DebugLog(bbStringConcat(bbStringConcat(bbStringFromInt(bbMilliSecs()-bbt_ms),((BBString*)&_s577)),bbt_curline));
					bbOnDebugLeaveScope();
				}
				struct BBDebugStm __stmt_2 = {0xb38e7c8d97adef99, 149, 0};
				bbOnDebugEnterStm(&__stmt_2);
				bbOnDebugLeaveScope();
				bbOnDebugLeaveScope();
				bbOnDebugLeaveScope();
				continue;
			}else{
				struct BBDebugScope __scope = {
					BBDEBUGSCOPE_LOCALBLOCK,
					0,
					{
						{
							BBDEBUGDECL_END
						}
					}
				};
				bbOnDebugEnterScope((BBDebugScope *)&__scope);
				struct BBDebugStm __stmt_0 = {0xb38e7c8d97adef99, 151, 0};
				bbOnDebugEnterStm(&__stmt_0);
				if(bbStringEquals(bbt_2, ((BBString*)&_s580))==1){
					BBSTRING bbt_tt=(&bbEmptyString);
					struct BBDebugScope_1 __scope = {
						BBDEBUGSCOPE_LOCALBLOCK,
						0,
						{
							{
								BBDEBUGDECL_LOCAL,
								"tt",
								"$",
								.var_address=&bbt_tt
							},
							{
								BBDEBUGDECL_END
							}
						}
					};
					bbOnDebugEnterScope((BBDebugScope *)&__scope);
					struct BBDebugStm __stmt_0 = {0xb38e7c8d97adef99, 152, 0};
					bbOnDebugEnterStm(&__stmt_0);
					bbt_tt=bbStringToLower((BBSTRING)bbStringSlice(bbt_curline,2,(bbt_curline)->length));
					struct BBDebugStm __stmt_1 = {0xb38e7c8d97adef99, 153, 0};
					bbOnDebugEnterStm(&__stmt_1);
					if(bbStringEquals(bbt_tt, ((BBString*)&_s581))!=1){
						struct BBDebugScope __scope = {
							BBDEBUGSCOPE_LOCALBLOCK,
							0,
							{
								{
									BBDEBUGDECL_END
								}
							}
						};
						bbOnDebugEnterScope((BBDebugScope *)&__scope);
						struct BBDebugStm __stmt_0 = {0xb38e7c8d97adef99, 153, 0};
						bbOnDebugEnterStm(&__stmt_0);
						bbt_snumber=bbStringToInt(bbStringSlice(bbt_curline,2,(bbt_curline)->length));
						bbOnDebugLeaveScope();
					}
					struct BBDebugStm __stmt_2 = {0xb38e7c8d97adef99, 156, 0};
					bbOnDebugEnterStm(&__stmt_2);
					if(0 && (bbMilliSecs()!=bbt_ms)){
						struct BBDebugScope __scope = {
							BBDEBUGSCOPE_LOCALBLOCK,
							0,
							{
								{
									BBDEBUGDECL_END
								}
							}
						};
						bbOnDebugEnterScope((BBDebugScope *)&__scope);
						struct BBDebugStm __stmt_0 = {0xb38e7c8d97adef99, 156, 0};
						bbOnDebugEnterStm(&__stmt_0);
						brl_blitz_DebugLog(bbStringConcat(bbStringConcat(bbStringFromInt(bbMilliSecs()-bbt_ms),((BBString*)&_s577)),bbt_curline));
						bbOnDebugLeaveScope();
					}
					struct BBDebugStm __stmt_3 = {0xb38e7c8d97adef99, 157, 0};
					bbOnDebugEnterStm(&__stmt_3);
					bbOnDebugLeaveScope();
					bbOnDebugLeaveScope();
					bbOnDebugLeaveScope();
					bbOnDebugLeaveScope();
					continue;
				}else{
					struct BBDebugScope __scope = {
						BBDEBUGSCOPE_LOCALBLOCK,
						0,
						{
							{
								BBDEBUGDECL_END
							}
						}
					};
					bbOnDebugEnterScope((BBDebugScope *)&__scope);
					struct BBDebugStm __stmt_0 = {0xb38e7c8d97adef99, 159, 0};
					bbOnDebugEnterStm(&__stmt_0);
					if(bbStringEquals(bbt_2, ((BBString*)&_s582))==1){
						struct BBDebugScope __scope = {
							BBDEBUGSCOPE_LOCALBLOCK,
							0,
							{
								{
									BBDEBUGDECL_END
								}
							}
						};
						bbOnDebugEnterScope((BBDebugScope *)&__scope);
						struct BBDebugStm __stmt_0 = {0xb38e7c8d97adef99, 160, 0};
						bbOnDebugEnterStm(&__stmt_0);
						if(bbt_meshonce==0){
							struct BBDebugScope __scope = {
								BBDEBUGSCOPE_LOCALBLOCK,
								0,
								{
									{
										BBDEBUGDECL_END
									}
								}
							};
							bbOnDebugEnterScope((BBDebugScope *)&__scope);
							struct BBDebugStm __stmt_0 = {0xb38e7c8d97adef99, 161, 0};
							bbOnDebugEnterStm(&__stmt_0);
							bbt_meshonce=1;
							struct BBDebugStm __stmt_1 = {0xb38e7c8d97adef99, 162, 0};
							bbOnDebugEnterStm(&__stmt_1);
							if(openb3d_openb3dcore_TGlobal3D_Log_OBJ!=0){
								struct BBDebugScope __scope = {
									BBDEBUGSCOPE_LOCALBLOCK,
									0,
									{
										{
											BBDEBUGDECL_END
										}
									}
								};
								bbOnDebugEnterScope((BBDebugScope *)&__scope);
								struct BBDebugStm __stmt_0 = {0xb38e7c8d97adef99, 162, 0};
								bbOnDebugEnterStm(&__stmt_0);
								brl_blitz_DebugLog((BBString*)&_s583);
								bbOnDebugLeaveScope();
							}
							struct BBDebugStm __stmt_2 = {0xb38e7c8d97adef99, 164, 0};
							bbOnDebugEnterStm(&__stmt_2);
							bbt_mesh=(struct openb3d_openb3dcore_TMesh_obj*)openb3d_openb3dcore_TMesh_Create_TTMesh();
							struct BBDebugStm __stmt_3 = {0xb38e7c8d97adef99, 165, 0};
							bbOnDebugEnterStm(&__stmt_3);
							((struct openb3d_openb3dcore_TMesh_obj*)bbNullObjectTest((BBObject*)bbt_mesh))->clas->m_SetString_pbS((struct openb3d_openb3dcore_TEntity_obj*)bbt_mesh,((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)bbt_mesh))->_openb3d_openb3dcore_tentity_class_name ,((BBString*)&_s461));
							struct BBDebugStm __stmt_4 = {0xb38e7c8d97adef99, 166, 0};
							bbOnDebugEnterStm(&__stmt_4);
							((struct openb3d_openb3dcore_TMesh_obj*)bbNullObjectTest((BBObject*)bbt_mesh))->clas->m_AddParent_TTEntity((struct openb3d_openb3dcore_TEntity_obj*)bbt_mesh,(struct openb3d_openb3dcore_TEntity_obj*)((struct openb3d_openb3dcore_TEntity_obj*)bbObjectDowncast((BBOBJECT)bbt_root,(BBClass*)&openb3d_openb3dcore_TEntity)));
							struct BBDebugStm __stmt_5 = {0xb38e7c8d97adef99, 167, 0};
							bbOnDebugEnterStm(&__stmt_5);
							((struct openb3d_openb3dcore_TMesh_obj*)bbNullObjectTest((BBObject*)bbt_mesh))->clas->m_EntityListAdd_TTListTObject((struct openb3d_openb3dcore_TEntity_obj*)bbt_mesh,(struct brl_linkedlist_TList_obj*)openb3d_openb3dcore_TEntity_entity_list,(BBOBJECT)&bbNullObject);
							bbOnDebugLeaveScope();
						}
						struct BBDebugStm __stmt_1 = {0xb38e7c8d97adef99, 170, 0};
						bbOnDebugEnterStm(&__stmt_1);
						if(bbt_VC>=((bbt_vertexP->scales[0])-1)){
							struct BBDebugScope __scope = {
								BBDEBUGSCOPE_LOCALBLOCK,
								0,
								{
									{
										BBDEBUGDECL_END
									}
								}
							};
							bbOnDebugEnterScope((BBDebugScope *)&__scope);
							struct BBDebugStm __stmt_0 = {0xb38e7c8d97adef99, 170, 0};
							bbOnDebugEnterStm(&__stmt_0);
							bbt_vertexP=bbArraySlice(":TObjVertex",bbt_vertexP,0,((bbt_vertexP->scales[0])+1024));
							bbOnDebugLeaveScope();
						}
						struct BBDebugStm __stmt_2 = {0xb38e7c8d97adef99, 172, 0};
						bbOnDebugEnterStm(&__stmt_2);
						((struct openb3d_openb3dcore_TObjVertex_obj**)BBARRAYDATAINDEX((bbt_vertexP),(bbt_vertexP)->dims,((BBUINT)(bbt_VC+1))))[((BBUINT)(bbt_VC+1))]=(struct openb3d_openb3dcore_TObjVertex_obj*)(struct openb3d_openb3dcore_TObjVertex_obj*)bbObjectAtomicNew((BBClass *)&openb3d_openb3dcore_TObjVertex);
						struct BBDebugStm __stmt_3 = {0xb38e7c8d97adef99, 173, 0};
						bbOnDebugEnterStm(&__stmt_3);
						struct openb3d_openb3dcore_TObjVertex_obj* bbt_3;
						(((struct openb3d_openb3dcore_TObjVertex_obj*)bbNullObjectTest((BBObject*)(bbt_3 = ((struct openb3d_openb3dcore_TObjVertex_obj**)BBARRAYDATAINDEX((bbt_vertexP),(bbt_vertexP)->dims,((BBUINT)(bbt_VC+1))))[((BBUINT)(bbt_VC+1))])))->clas)->m_GetValues_S((struct openb3d_openb3dcore_TObjVertex_obj*)bbt_3,bbStringSlice(bbt_curline,1,(bbt_curline)->length));
						struct BBDebugStm __stmt_4 = {0xb38e7c8d97adef99, 174, 0};
						bbOnDebugEnterStm(&__stmt_4);
						bbt_VC+=1;
						struct BBDebugStm __stmt_5 = {0xb38e7c8d97adef99, 176, 0};
						bbOnDebugEnterStm(&__stmt_5);
						if(0 && (bbMilliSecs()!=bbt_ms)){
							struct BBDebugScope __scope = {
								BBDEBUGSCOPE_LOCALBLOCK,
								0,
								{
									{
										BBDEBUGDECL_END
									}
								}
							};
							bbOnDebugEnterScope((BBDebugScope *)&__scope);
							struct BBDebugStm __stmt_0 = {0xb38e7c8d97adef99, 176, 0};
							bbOnDebugEnterStm(&__stmt_0);
							brl_blitz_DebugLog(bbStringConcat(bbStringConcat(bbStringFromInt(bbMilliSecs()-bbt_ms),((BBString*)&_s577)),bbt_curline));
							bbOnDebugLeaveScope();
						}
						struct BBDebugStm __stmt_6 = {0xb38e7c8d97adef99, 177, 0};
						bbOnDebugEnterStm(&__stmt_6);
						bbOnDebugLeaveScope();
						bbOnDebugLeaveScope();
						bbOnDebugLeaveScope();
						bbOnDebugLeaveScope();
						bbOnDebugLeaveScope();
						continue;
					}else{
						struct BBDebugScope __scope = {
							BBDEBUGSCOPE_LOCALBLOCK,
							0,
							{
								{
									BBDEBUGDECL_END
								}
							}
						};
						bbOnDebugEnterScope((BBDebugScope *)&__scope);
						struct BBDebugStm __stmt_0 = {0xb38e7c8d97adef99, 179, 0};
						bbOnDebugEnterStm(&__stmt_0);
						if(bbStringEquals(bbt_2, ((BBString*)&_s584))==1){
							struct BBDebugScope __scope = {
								BBDEBUGSCOPE_LOCALBLOCK,
								0,
								{
									{
										BBDEBUGDECL_END
									}
								}
							};
							bbOnDebugEnterScope((BBDebugScope *)&__scope);
							struct BBDebugStm __stmt_0 = {0xb38e7c8d97adef99, 180, 0};
							bbOnDebugEnterStm(&__stmt_0);
							if(!(((BBObject*)bbt_surface)!= &bbNullObject)){
								struct BBDebugScope __scope = {
									BBDEBUGSCOPE_LOCALBLOCK,
									0,
									{
										{
											BBDEBUGDECL_END
										}
									}
								};
								bbOnDebugEnterScope((BBDebugScope *)&__scope);
								struct BBDebugStm __stmt_0 = {0xb38e7c8d97adef99, 181, 0};
								bbOnDebugEnterStm(&__stmt_0);
								if(openb3d_openb3dcore_TGlobal3D_Log_OBJ!=0){
									struct BBDebugScope __scope = {
										BBDEBUGSCOPE_LOCALBLOCK,
										0,
										{
											{
												BBDEBUGDECL_END
											}
										}
									};
									bbOnDebugEnterScope((BBDebugScope *)&__scope);
									struct BBDebugStm __stmt_0 = {0xb38e7c8d97adef99, 181, 0};
									bbOnDebugEnterStm(&__stmt_0);
									brl_blitz_DebugLog((BBString*)&_s585);
									bbOnDebugLeaveScope();
								}
								struct BBDebugStm __stmt_1 = {0xb38e7c8d97adef99, 184, 0};
								bbOnDebugEnterStm(&__stmt_1);
								bbt_surface=(struct openb3d_openb3dcore_TSurface_obj*)((struct openb3d_openb3dcore_TMesh_obj*)bbNullObjectTest((BBObject*)bbt_mesh))->clas->m_CreateSurface_TTBrush((struct openb3d_openb3dcore_TMesh_obj*)bbt_mesh,(struct openb3d_openb3dcore_TBrush_obj*)&bbNullObject);
								struct BBDebugStm __stmt_2 = {0xb38e7c8d97adef99, 185, 0};
								bbOnDebugEnterStm(&__stmt_2);
								bbt_SC+=1;
								bbOnDebugLeaveScope();
							}
							struct BBDebugStm __stmt_1 = {0xb38e7c8d97adef99, 188, 0};
							bbOnDebugEnterStm(&__stmt_1);
							if(!(((BBObject*)bbt_currMtl)!= &bbNullObject)){
								struct BBDebugScope __scope = {
									BBDEBUGSCOPE_LOCALBLOCK,
									0,
									{
										{
											BBDEBUGDECL_END
										}
									}
								};
								bbOnDebugEnterScope((BBDebugScope *)&__scope);
								struct BBDebugStm __stmt_0 = {0xb38e7c8d97adef99, 188, 0};
								bbOnDebugEnterStm(&__stmt_0);
								bbt_currMtl=(struct openb3d_openb3dcore_TObjMtl_obj*)(struct openb3d_openb3dcore_TObjMtl_obj*)bbObjectNew((BBClass *)&openb3d_openb3dcore_TObjMtl);
								bbOnDebugLeaveScope();
							}
							struct BBDebugStm __stmt_2 = {0xb38e7c8d97adef99, 189, 0};
							bbOnDebugEnterStm(&__stmt_2);
							((struct openb3d_openb3dcore_TObjMtl_obj*)bbNullObjectTest((BBObject*)bbt_currMtl))->_openb3d_openb3dcore_tobjmtl_meshsurface =(struct openb3d_openb3dcore_TSurface_obj*)bbt_surface;
							struct BBDebugStm __stmt_3 = {0xb38e7c8d97adef99, 190, 0};
							bbOnDebugEnterStm(&__stmt_3);
							bbt_meshonce=0;
							struct BBDebugStm __stmt_4 = {0xb38e7c8d97adef99, 192, 0};
							bbOnDebugEnterStm(&__stmt_4);
							if(((BBObject*)bbt_surface)!= &bbNullObject){
								BBARRAY bbt_FV=(&bbEmptyArray);
								struct BBDebugScope_1 __scope = {
									BBDEBUGSCOPE_LOCALBLOCK,
									0,
									{
										{
											BBDEBUGDECL_LOCAL,
											"FV",
											"[]:TFaceData",
											.var_address=&bbt_FV
										},
										{
											BBDEBUGDECL_END
										}
									}
								};
								bbOnDebugEnterScope((BBDebugScope *)&__scope);
								struct BBDebugStm __stmt_0 = {0xb38e7c8d97adef99, 195, 0};
								bbOnDebugEnterStm(&__stmt_0);
								bbt_v0=0;
								struct BBDebugStm __stmt_1 = {0xb38e7c8d97adef99, 196, 0};
								bbOnDebugEnterStm(&__stmt_1);
								bbt_v1=0;
								struct BBDebugStm __stmt_2 = {0xb38e7c8d97adef99, 197, 0};
								bbOnDebugEnterStm(&__stmt_2);
								bbt_v2=0;
								struct BBDebugStm __stmt_3 = {0xb38e7c8d97adef99, 198, 0};
								bbOnDebugEnterStm(&__stmt_3);
								bbt_ri=0;
								struct BBDebugStm __stmt_4 = {0xb38e7c8d97adef99, 200, 0};
								bbOnDebugEnterStm(&__stmt_4);
								bbt_FV=openb3d_openb3dcore_TOBJ_ParseFaces_aTTFaceData_S(bbStringSlice(bbt_curline,2,(bbt_curline)->length));
								struct BBDebugStm __stmt_5 = {0xb38e7c8d97adef99, 205, 0};
								bbOnDebugEnterStm(&__stmt_5);
								BBINT bbt_4=((bbt_FV->scales[0])-1);
								for(bbt_id=2;(bbt_id<=bbt_4);bbt_id=(bbt_id+1)){
									struct BBDebugScope __scope = {
										BBDEBUGSCOPE_LOCALBLOCK,
										0,
										{
											{
												BBDEBUGDECL_END
											}
										}
									};
									bbOnDebugEnterScope((BBDebugScope *)&__scope);
									struct BBDebugStm __stmt_0 = {0xb38e7c8d97adef99, 207, 0};
									bbOnDebugEnterStm(&__stmt_0);
									bbt_v0=((struct openb3d_openb3dcore_TFaceData_obj*)bbNullObjectTest((BBObject*)((struct openb3d_openb3dcore_TFaceData_obj**)BBARRAYDATAINDEX((bbt_FV),(bbt_FV)->dims,0U))[0U]))->_openb3d_openb3dcore_tfacedata_vi ;
									struct BBDebugStm __stmt_1 = {0xb38e7c8d97adef99, 208, 0};
									bbOnDebugEnterStm(&__stmt_1);
									bbt_v1=((struct openb3d_openb3dcore_TFaceData_obj*)bbNullObjectTest((BBObject*)((struct openb3d_openb3dcore_TFaceData_obj**)BBARRAYDATAINDEX((bbt_FV),(bbt_FV)->dims,((BBUINT)(bbt_id-1))))[((BBUINT)(bbt_id-1))]))->_openb3d_openb3dcore_tfacedata_vi ;
									struct BBDebugStm __stmt_2 = {0xb38e7c8d97adef99, 209, 0};
									bbOnDebugEnterStm(&__stmt_2);
									bbt_v2=((struct openb3d_openb3dcore_TFaceData_obj*)bbNullObjectTest((BBObject*)((struct openb3d_openb3dcore_TFaceData_obj**)BBARRAYDATAINDEX((bbt_FV),(bbt_FV)->dims,((BBUINT)bbt_id)))[((BBUINT)bbt_id)]))->_openb3d_openb3dcore_tfacedata_vi ;
									struct BBDebugStm __stmt_3 = {0xb38e7c8d97adef99, 210, 0};
									bbOnDebugEnterStm(&__stmt_3);
									struct openb3d_openb3dcore_TVertCache_obj* bbt_5;
									bbt_ri=(((struct openb3d_openb3dcore_TVertCache_obj*)((struct openb3d_openb3dcore_TVertCache_obj*)bbNullObjectTest((BBObject*)(bbt_5 = ((struct openb3d_openb3dcore_TObjMtl_obj*)bbNullObjectTest((BBObject*)bbt_currMtl))->_openb3d_openb3dcore_tobjmtl_cache ))))->clas)->m_CheckVert_iii((struct openb3d_openb3dcore_TVertCache_obj*)bbt_5,bbt_v0,((struct openb3d_openb3dcore_TFaceData_obj*)bbNullObjectTest((BBObject*)((struct openb3d_openb3dcore_TFaceData_obj**)BBARRAYDATAINDEX((bbt_FV),(bbt_FV)->dims,0U))[0U]))->_openb3d_openb3dcore_tfacedata_ti ,((struct openb3d_openb3dcore_TFaceData_obj*)bbNullObjectTest((BBObject*)((struct openb3d_openb3dcore_TFaceData_obj**)BBARRAYDATAINDEX((bbt_FV),(bbt_FV)->dims,0U))[0U]))->_openb3d_openb3dcore_tfacedata_ni );
									struct BBDebugStm __stmt_4 = {0xb38e7c8d97adef99, 212, 0};
									bbOnDebugEnterStm(&__stmt_4);
									if(bbt_ri==0){
										struct BBDebugScope __scope = {
											BBDEBUGSCOPE_LOCALBLOCK,
											0,
											{
												{
													BBDEBUGDECL_END
												}
											}
										};
										bbOnDebugEnterScope((BBDebugScope *)&__scope);
										struct BBDebugStm __stmt_0 = {0xb38e7c8d97adef99, 213, 0};
										bbOnDebugEnterStm(&__stmt_0);
										bbt_v0=((struct openb3d_openb3dcore_TSurface_obj*)bbNullObjectTest((BBObject*)bbt_surface))->clas->m_AddVertex_ffffff((struct openb3d_openb3dcore_TSurface_obj*)bbt_surface,((struct openb3d_openb3dcore_TObjVertex_obj*)bbNullObjectTest((BBObject*)((struct openb3d_openb3dcore_TObjVertex_obj**)BBARRAYDATAINDEX((bbt_vertexP),(bbt_vertexP)->dims,((BBUINT)bbt_v0)))[((BBUINT)bbt_v0)]))->_openb3d_openb3dcore_tobjvertex_x ,((struct openb3d_openb3dcore_TObjVertex_obj*)bbNullObjectTest((BBObject*)((struct openb3d_openb3dcore_TObjVertex_obj**)BBARRAYDATAINDEX((bbt_vertexP),(bbt_vertexP)->dims,((BBUINT)bbt_v0)))[((BBUINT)bbt_v0)]))->_openb3d_openb3dcore_tobjvertex_y ,-((struct openb3d_openb3dcore_TObjVertex_obj*)bbNullObjectTest((BBObject*)((struct openb3d_openb3dcore_TObjVertex_obj**)BBARRAYDATAINDEX((bbt_vertexP),(bbt_vertexP)->dims,((BBUINT)bbt_v0)))[((BBUINT)bbt_v0)]))->_openb3d_openb3dcore_tobjvertex_z ,0.00000000f,0.00000000f,0.00000000f);
										struct BBDebugStm __stmt_1 = {0xb38e7c8d97adef99, 215, 0};
										bbOnDebugEnterStm(&__stmt_1);
										struct openb3d_openb3dcore_TVertCache_obj* bbt_6;
										(((struct openb3d_openb3dcore_TVertCache_obj*)((struct openb3d_openb3dcore_TVertCache_obj*)bbNullObjectTest((BBObject*)(bbt_6 = ((struct openb3d_openb3dcore_TObjMtl_obj*)bbNullObjectTest((BBObject*)bbt_currMtl))->_openb3d_openb3dcore_tobjmtl_cache ))))->clas)->m_SetCache_iiii((struct openb3d_openb3dcore_TVertCache_obj*)bbt_6,((struct openb3d_openb3dcore_TFaceData_obj*)bbNullObjectTest((BBObject*)((struct openb3d_openb3dcore_TFaceData_obj**)BBARRAYDATAINDEX((bbt_FV),(bbt_FV)->dims,0U))[0U]))->_openb3d_openb3dcore_tfacedata_vi ,(bbt_v0+1),((struct openb3d_openb3dcore_TFaceData_obj*)bbNullObjectTest((BBObject*)((struct openb3d_openb3dcore_TFaceData_obj**)BBARRAYDATAINDEX((bbt_FV),(bbt_FV)->dims,0U))[0U]))->_openb3d_openb3dcore_tfacedata_ti ,((struct openb3d_openb3dcore_TFaceData_obj*)bbNullObjectTest((BBObject*)((struct openb3d_openb3dcore_TFaceData_obj**)BBARRAYDATAINDEX((bbt_FV),(bbt_FV)->dims,0U))[0U]))->_openb3d_openb3dcore_tfacedata_ni );
										bbOnDebugLeaveScope();
									}else{
										struct BBDebugScope __scope = {
											BBDEBUGSCOPE_LOCALBLOCK,
											0,
											{
												{
													BBDEBUGDECL_END
												}
											}
										};
										bbOnDebugEnterScope((BBDebugScope *)&__scope);
										struct BBDebugStm __stmt_0 = {0xb38e7c8d97adef99, 216, 0};
										bbOnDebugEnterStm(&__stmt_0);
										if(bbt_ri==-1){
											struct BBDebugScope __scope = {
												BBDEBUGSCOPE_LOCALBLOCK,
												0,
												{
													{
														BBDEBUGDECL_END
													}
												}
											};
											bbOnDebugEnterScope((BBDebugScope *)&__scope);
											struct BBDebugStm __stmt_0 = {0xb38e7c8d97adef99, 218, 0};
											bbOnDebugEnterStm(&__stmt_0);
											bbt_v0=((struct openb3d_openb3dcore_TSurface_obj*)bbNullObjectTest((BBObject*)bbt_surface))->clas->m_AddVertex_ffffff((struct openb3d_openb3dcore_TSurface_obj*)bbt_surface,((struct openb3d_openb3dcore_TObjVertex_obj*)bbNullObjectTest((BBObject*)((struct openb3d_openb3dcore_TObjVertex_obj**)BBARRAYDATAINDEX((bbt_vertexP),(bbt_vertexP)->dims,((BBUINT)bbt_v0)))[((BBUINT)bbt_v0)]))->_openb3d_openb3dcore_tobjvertex_x ,((struct openb3d_openb3dcore_TObjVertex_obj*)bbNullObjectTest((BBObject*)((struct openb3d_openb3dcore_TObjVertex_obj**)BBARRAYDATAINDEX((bbt_vertexP),(bbt_vertexP)->dims,((BBUINT)bbt_v0)))[((BBUINT)bbt_v0)]))->_openb3d_openb3dcore_tobjvertex_y ,-((struct openb3d_openb3dcore_TObjVertex_obj*)bbNullObjectTest((BBObject*)((struct openb3d_openb3dcore_TObjVertex_obj**)BBARRAYDATAINDEX((bbt_vertexP),(bbt_vertexP)->dims,((BBUINT)bbt_v0)))[((BBUINT)bbt_v0)]))->_openb3d_openb3dcore_tobjvertex_z ,0.00000000f,0.00000000f,0.00000000f);
											struct BBDebugStm __stmt_1 = {0xb38e7c8d97adef99, 219, 0};
											bbOnDebugEnterStm(&__stmt_1);
											struct openb3d_openb3dcore_TVertCache_obj* bbt_7;
											(((struct openb3d_openb3dcore_TVertCache_obj*)((struct openb3d_openb3dcore_TVertCache_obj*)bbNullObjectTest((BBObject*)(bbt_7 = ((struct openb3d_openb3dcore_TObjMtl_obj*)bbNullObjectTest((BBObject*)bbt_currMtl))->_openb3d_openb3dcore_tobjmtl_cache ))))->clas)->m_SetCache_iiii((struct openb3d_openb3dcore_TVertCache_obj*)bbt_7,((struct openb3d_openb3dcore_TFaceData_obj*)bbNullObjectTest((BBObject*)((struct openb3d_openb3dcore_TFaceData_obj**)BBARRAYDATAINDEX((bbt_FV),(bbt_FV)->dims,0U))[0U]))->_openb3d_openb3dcore_tfacedata_vi ,(bbt_v0+1),((struct openb3d_openb3dcore_TFaceData_obj*)bbNullObjectTest((BBObject*)((struct openb3d_openb3dcore_TFaceData_obj**)BBARRAYDATAINDEX((bbt_FV),(bbt_FV)->dims,0U))[0U]))->_openb3d_openb3dcore_tfacedata_ti ,((struct openb3d_openb3dcore_TFaceData_obj*)bbNullObjectTest((BBObject*)((struct openb3d_openb3dcore_TFaceData_obj**)BBARRAYDATAINDEX((bbt_FV),(bbt_FV)->dims,0U))[0U]))->_openb3d_openb3dcore_tfacedata_ni );
											bbOnDebugLeaveScope();
										}else{
											struct BBDebugScope __scope = {
												BBDEBUGSCOPE_LOCALBLOCK,
												0,
												{
													{
														BBDEBUGDECL_END
													}
												}
											};
											bbOnDebugEnterScope((BBDebugScope *)&__scope);
											struct BBDebugStm __stmt_0 = {0xb38e7c8d97adef99, 222, 0};
											bbOnDebugEnterStm(&__stmt_0);
											bbt_v0=(bbt_ri-1);
											bbOnDebugLeaveScope();
										}
										bbOnDebugLeaveScope();
									}
									struct BBDebugStm __stmt_5 = {0xb38e7c8d97adef99, 224, 0};
									bbOnDebugEnterStm(&__stmt_5);
									if((bbt_ri==0) && (((BBOBJECT)((struct openb3d_openb3dcore_TObjVertex_obj**)BBARRAYDATAINDEX((bbt_vertexP),(bbt_vertexP)->dims,((BBUINT)(bbt_v0+1))))[((BBUINT)(bbt_v0+1))])!=&bbNullObject)){
										struct BBDebugScope __scope = {
											BBDEBUGSCOPE_LOCALBLOCK,
											0,
											{
												{
													BBDEBUGDECL_END
												}
											}
										};
										bbOnDebugEnterScope((BBDebugScope *)&__scope);
										struct BBDebugStm __stmt_0 = {0xb38e7c8d97adef99, 225, 0};
										bbOnDebugEnterStm(&__stmt_0);
										((struct openb3d_openb3dcore_TSurface_obj*)bbNullObjectTest((BBObject*)bbt_surface))->clas->m_VertexColor_iffff((struct openb3d_openb3dcore_TSurface_obj*)bbt_surface,bbt_v0,((struct openb3d_openb3dcore_TObjVertex_obj*)bbNullObjectTest((BBObject*)((struct openb3d_openb3dcore_TObjVertex_obj**)BBARRAYDATAINDEX((bbt_vertexP),(bbt_vertexP)->dims,((BBUINT)(bbt_v0+1))))[((BBUINT)(bbt_v0+1))]))->_openb3d_openb3dcore_tobjvertex_r ,((struct openb3d_openb3dcore_TObjVertex_obj*)bbNullObjectTest((BBObject*)((struct openb3d_openb3dcore_TObjVertex_obj**)BBARRAYDATAINDEX((bbt_vertexP),(bbt_vertexP)->dims,((BBUINT)(bbt_v0+1))))[((BBUINT)(bbt_v0+1))]))->_openb3d_openb3dcore_tobjvertex_g ,((struct openb3d_openb3dcore_TObjVertex_obj*)bbNullObjectTest((BBObject*)((struct openb3d_openb3dcore_TObjVertex_obj**)BBARRAYDATAINDEX((bbt_vertexP),(bbt_vertexP)->dims,((BBUINT)(bbt_v0+1))))[((BBUINT)(bbt_v0+1))]))->_openb3d_openb3dcore_tobjvertex_b ,1.00000000f);
										bbOnDebugLeaveScope();
									}
									struct BBDebugStm __stmt_6 = {0xb38e7c8d97adef99, 228, 0};
									bbOnDebugEnterStm(&__stmt_6);
									struct openb3d_openb3dcore_TVertCache_obj* bbt_8;
									bbt_ri=(((struct openb3d_openb3dcore_TVertCache_obj*)((struct openb3d_openb3dcore_TVertCache_obj*)bbNullObjectTest((BBObject*)(bbt_8 = ((struct openb3d_openb3dcore_TObjMtl_obj*)bbNullObjectTest((BBObject*)bbt_currMtl))->_openb3d_openb3dcore_tobjmtl_cache ))))->clas)->m_CheckVert_iii((struct openb3d_openb3dcore_TVertCache_obj*)bbt_8,bbt_v1,((struct openb3d_openb3dcore_TFaceData_obj*)bbNullObjectTest((BBObject*)((struct openb3d_openb3dcore_TFaceData_obj**)BBARRAYDATAINDEX((bbt_FV),(bbt_FV)->dims,((BBUINT)(bbt_id-1))))[((BBUINT)(bbt_id-1))]))->_openb3d_openb3dcore_tfacedata_ti ,((struct openb3d_openb3dcore_TFaceData_obj*)bbNullObjectTest((BBObject*)((struct openb3d_openb3dcore_TFaceData_obj**)BBARRAYDATAINDEX((bbt_FV),(bbt_FV)->dims,((BBUINT)(bbt_id-1))))[((BBUINT)(bbt_id-1))]))->_openb3d_openb3dcore_tfacedata_ni );
									struct BBDebugStm __stmt_7 = {0xb38e7c8d97adef99, 229, 0};
									bbOnDebugEnterStm(&__stmt_7);
									if(bbt_ri==0){
										struct BBDebugScope __scope = {
											BBDEBUGSCOPE_LOCALBLOCK,
											0,
											{
												{
													BBDEBUGDECL_END
												}
											}
										};
										bbOnDebugEnterScope((BBDebugScope *)&__scope);
										struct BBDebugStm __stmt_0 = {0xb38e7c8d97adef99, 230, 0};
										bbOnDebugEnterStm(&__stmt_0);
										bbt_v1=((struct openb3d_openb3dcore_TSurface_obj*)bbNullObjectTest((BBObject*)bbt_surface))->clas->m_AddVertex_ffffff((struct openb3d_openb3dcore_TSurface_obj*)bbt_surface,((struct openb3d_openb3dcore_TObjVertex_obj*)bbNullObjectTest((BBObject*)((struct openb3d_openb3dcore_TObjVertex_obj**)BBARRAYDATAINDEX((bbt_vertexP),(bbt_vertexP)->dims,((BBUINT)bbt_v1)))[((BBUINT)bbt_v1)]))->_openb3d_openb3dcore_tobjvertex_x ,((struct openb3d_openb3dcore_TObjVertex_obj*)bbNullObjectTest((BBObject*)((struct openb3d_openb3dcore_TObjVertex_obj**)BBARRAYDATAINDEX((bbt_vertexP),(bbt_vertexP)->dims,((BBUINT)bbt_v1)))[((BBUINT)bbt_v1)]))->_openb3d_openb3dcore_tobjvertex_y ,-((struct openb3d_openb3dcore_TObjVertex_obj*)bbNullObjectTest((BBObject*)((struct openb3d_openb3dcore_TObjVertex_obj**)BBARRAYDATAINDEX((bbt_vertexP),(bbt_vertexP)->dims,((BBUINT)bbt_v1)))[((BBUINT)bbt_v1)]))->_openb3d_openb3dcore_tobjvertex_z ,0.00000000f,0.00000000f,0.00000000f);
										struct BBDebugStm __stmt_1 = {0xb38e7c8d97adef99, 232, 0};
										bbOnDebugEnterStm(&__stmt_1);
										struct openb3d_openb3dcore_TVertCache_obj* bbt_9;
										(((struct openb3d_openb3dcore_TVertCache_obj*)((struct openb3d_openb3dcore_TVertCache_obj*)bbNullObjectTest((BBObject*)(bbt_9 = ((struct openb3d_openb3dcore_TObjMtl_obj*)bbNullObjectTest((BBObject*)bbt_currMtl))->_openb3d_openb3dcore_tobjmtl_cache ))))->clas)->m_SetCache_iiii((struct openb3d_openb3dcore_TVertCache_obj*)bbt_9,((struct openb3d_openb3dcore_TFaceData_obj*)bbNullObjectTest((BBObject*)((struct openb3d_openb3dcore_TFaceData_obj**)BBARRAYDATAINDEX((bbt_FV),(bbt_FV)->dims,((BBUINT)(bbt_id-1))))[((BBUINT)(bbt_id-1))]))->_openb3d_openb3dcore_tfacedata_vi ,(bbt_v1+1),((struct openb3d_openb3dcore_TFaceData_obj*)bbNullObjectTest((BBObject*)((struct openb3d_openb3dcore_TFaceData_obj**)BBARRAYDATAINDEX((bbt_FV),(bbt_FV)->dims,((BBUINT)(bbt_id-1))))[((BBUINT)(bbt_id-1))]))->_openb3d_openb3dcore_tfacedata_ti ,((struct openb3d_openb3dcore_TFaceData_obj*)bbNullObjectTest((BBObject*)((struct openb3d_openb3dcore_TFaceData_obj**)BBARRAYDATAINDEX((bbt_FV),(bbt_FV)->dims,((BBUINT)(bbt_id-1))))[((BBUINT)(bbt_id-1))]))->_openb3d_openb3dcore_tfacedata_ni );
										bbOnDebugLeaveScope();
									}else{
										struct BBDebugScope __scope = {
											BBDEBUGSCOPE_LOCALBLOCK,
											0,
											{
												{
													BBDEBUGDECL_END
												}
											}
										};
										bbOnDebugEnterScope((BBDebugScope *)&__scope);
										struct BBDebugStm __stmt_0 = {0xb38e7c8d97adef99, 233, 0};
										bbOnDebugEnterStm(&__stmt_0);
										if(bbt_ri==-1){
											struct BBDebugScope __scope = {
												BBDEBUGSCOPE_LOCALBLOCK,
												0,
												{
													{
														BBDEBUGDECL_END
													}
												}
											};
											bbOnDebugEnterScope((BBDebugScope *)&__scope);
											struct BBDebugStm __stmt_0 = {0xb38e7c8d97adef99, 235, 0};
											bbOnDebugEnterStm(&__stmt_0);
											bbt_v1=((struct openb3d_openb3dcore_TSurface_obj*)bbNullObjectTest((BBObject*)bbt_surface))->clas->m_AddVertex_ffffff((struct openb3d_openb3dcore_TSurface_obj*)bbt_surface,((struct openb3d_openb3dcore_TObjVertex_obj*)bbNullObjectTest((BBObject*)((struct openb3d_openb3dcore_TObjVertex_obj**)BBARRAYDATAINDEX((bbt_vertexP),(bbt_vertexP)->dims,((BBUINT)bbt_v1)))[((BBUINT)bbt_v1)]))->_openb3d_openb3dcore_tobjvertex_x ,((struct openb3d_openb3dcore_TObjVertex_obj*)bbNullObjectTest((BBObject*)((struct openb3d_openb3dcore_TObjVertex_obj**)BBARRAYDATAINDEX((bbt_vertexP),(bbt_vertexP)->dims,((BBUINT)bbt_v1)))[((BBUINT)bbt_v1)]))->_openb3d_openb3dcore_tobjvertex_y ,-((struct openb3d_openb3dcore_TObjVertex_obj*)bbNullObjectTest((BBObject*)((struct openb3d_openb3dcore_TObjVertex_obj**)BBARRAYDATAINDEX((bbt_vertexP),(bbt_vertexP)->dims,((BBUINT)bbt_v1)))[((BBUINT)bbt_v1)]))->_openb3d_openb3dcore_tobjvertex_z ,0.00000000f,0.00000000f,0.00000000f);
											struct BBDebugStm __stmt_1 = {0xb38e7c8d97adef99, 236, 0};
											bbOnDebugEnterStm(&__stmt_1);
											struct openb3d_openb3dcore_TVertCache_obj* bbt_10;
											(((struct openb3d_openb3dcore_TVertCache_obj*)((struct openb3d_openb3dcore_TVertCache_obj*)bbNullObjectTest((BBObject*)(bbt_10 = ((struct openb3d_openb3dcore_TObjMtl_obj*)bbNullObjectTest((BBObject*)bbt_currMtl))->_openb3d_openb3dcore_tobjmtl_cache ))))->clas)->m_SetCache_iiii((struct openb3d_openb3dcore_TVertCache_obj*)bbt_10,((struct openb3d_openb3dcore_TFaceData_obj*)bbNullObjectTest((BBObject*)((struct openb3d_openb3dcore_TFaceData_obj**)BBARRAYDATAINDEX((bbt_FV),(bbt_FV)->dims,((BBUINT)(bbt_id-1))))[((BBUINT)(bbt_id-1))]))->_openb3d_openb3dcore_tfacedata_vi ,(bbt_v1+1),((struct openb3d_openb3dcore_TFaceData_obj*)bbNullObjectTest((BBObject*)((struct openb3d_openb3dcore_TFaceData_obj**)BBARRAYDATAINDEX((bbt_FV),(bbt_FV)->dims,((BBUINT)(bbt_id-1))))[((BBUINT)(bbt_id-1))]))->_openb3d_openb3dcore_tfacedata_ti ,((struct openb3d_openb3dcore_TFaceData_obj*)bbNullObjectTest((BBObject*)((struct openb3d_openb3dcore_TFaceData_obj**)BBARRAYDATAINDEX((bbt_FV),(bbt_FV)->dims,((BBUINT)(bbt_id-1))))[((BBUINT)(bbt_id-1))]))->_openb3d_openb3dcore_tfacedata_ni );
											bbOnDebugLeaveScope();
										}else{
											struct BBDebugScope __scope = {
												BBDEBUGSCOPE_LOCALBLOCK,
												0,
												{
													{
														BBDEBUGDECL_END
													}
												}
											};
											bbOnDebugEnterScope((BBDebugScope *)&__scope);
											struct BBDebugStm __stmt_0 = {0xb38e7c8d97adef99, 239, 0};
											bbOnDebugEnterStm(&__stmt_0);
											bbt_v1=(bbt_ri-1);
											bbOnDebugLeaveScope();
										}
										bbOnDebugLeaveScope();
									}
									struct BBDebugStm __stmt_8 = {0xb38e7c8d97adef99, 241, 0};
									bbOnDebugEnterStm(&__stmt_8);
									if((bbt_ri==0) && (((BBOBJECT)((struct openb3d_openb3dcore_TObjVertex_obj**)BBARRAYDATAINDEX((bbt_vertexP),(bbt_vertexP)->dims,((BBUINT)(bbt_v1+1))))[((BBUINT)(bbt_v1+1))])!=&bbNullObject)){
										struct BBDebugScope __scope = {
											BBDEBUGSCOPE_LOCALBLOCK,
											0,
											{
												{
													BBDEBUGDECL_END
												}
											}
										};
										bbOnDebugEnterScope((BBDebugScope *)&__scope);
										struct BBDebugStm __stmt_0 = {0xb38e7c8d97adef99, 242, 0};
										bbOnDebugEnterStm(&__stmt_0);
										((struct openb3d_openb3dcore_TSurface_obj*)bbNullObjectTest((BBObject*)bbt_surface))->clas->m_VertexColor_iffff((struct openb3d_openb3dcore_TSurface_obj*)bbt_surface,bbt_v1,((struct openb3d_openb3dcore_TObjVertex_obj*)bbNullObjectTest((BBObject*)((struct openb3d_openb3dcore_TObjVertex_obj**)BBARRAYDATAINDEX((bbt_vertexP),(bbt_vertexP)->dims,((BBUINT)(bbt_v1+1))))[((BBUINT)(bbt_v1+1))]))->_openb3d_openb3dcore_tobjvertex_r ,((struct openb3d_openb3dcore_TObjVertex_obj*)bbNullObjectTest((BBObject*)((struct openb3d_openb3dcore_TObjVertex_obj**)BBARRAYDATAINDEX((bbt_vertexP),(bbt_vertexP)->dims,((BBUINT)(bbt_v1+1))))[((BBUINT)(bbt_v1+1))]))->_openb3d_openb3dcore_tobjvertex_g ,((struct openb3d_openb3dcore_TObjVertex_obj*)bbNullObjectTest((BBObject*)((struct openb3d_openb3dcore_TObjVertex_obj**)BBARRAYDATAINDEX((bbt_vertexP),(bbt_vertexP)->dims,((BBUINT)(bbt_v1+1))))[((BBUINT)(bbt_v1+1))]))->_openb3d_openb3dcore_tobjvertex_b ,1.00000000f);
										bbOnDebugLeaveScope();
									}
									struct BBDebugStm __stmt_9 = {0xb38e7c8d97adef99, 245, 0};
									bbOnDebugEnterStm(&__stmt_9);
									struct openb3d_openb3dcore_TVertCache_obj* bbt_11;
									bbt_ri=(((struct openb3d_openb3dcore_TVertCache_obj*)((struct openb3d_openb3dcore_TVertCache_obj*)bbNullObjectTest((BBObject*)(bbt_11 = ((struct openb3d_openb3dcore_TObjMtl_obj*)bbNullObjectTest((BBObject*)bbt_currMtl))->_openb3d_openb3dcore_tobjmtl_cache ))))->clas)->m_CheckVert_iii((struct openb3d_openb3dcore_TVertCache_obj*)bbt_11,bbt_v2,((struct openb3d_openb3dcore_TFaceData_obj*)bbNullObjectTest((BBObject*)((struct openb3d_openb3dcore_TFaceData_obj**)BBARRAYDATAINDEX((bbt_FV),(bbt_FV)->dims,((BBUINT)bbt_id)))[((BBUINT)bbt_id)]))->_openb3d_openb3dcore_tfacedata_ti ,((struct openb3d_openb3dcore_TFaceData_obj*)bbNullObjectTest((BBObject*)((struct openb3d_openb3dcore_TFaceData_obj**)BBARRAYDATAINDEX((bbt_FV),(bbt_FV)->dims,((BBUINT)bbt_id)))[((BBUINT)bbt_id)]))->_openb3d_openb3dcore_tfacedata_ni );
									struct BBDebugStm __stmt_10 = {0xb38e7c8d97adef99, 246, 0};
									bbOnDebugEnterStm(&__stmt_10);
									if(bbt_ri==0){
										struct BBDebugScope __scope = {
											BBDEBUGSCOPE_LOCALBLOCK,
											0,
											{
												{
													BBDEBUGDECL_END
												}
											}
										};
										bbOnDebugEnterScope((BBDebugScope *)&__scope);
										struct BBDebugStm __stmt_0 = {0xb38e7c8d97adef99, 247, 0};
										bbOnDebugEnterStm(&__stmt_0);
										bbt_v2=((struct openb3d_openb3dcore_TSurface_obj*)bbNullObjectTest((BBObject*)bbt_surface))->clas->m_AddVertex_ffffff((struct openb3d_openb3dcore_TSurface_obj*)bbt_surface,((struct openb3d_openb3dcore_TObjVertex_obj*)bbNullObjectTest((BBObject*)((struct openb3d_openb3dcore_TObjVertex_obj**)BBARRAYDATAINDEX((bbt_vertexP),(bbt_vertexP)->dims,((BBUINT)bbt_v2)))[((BBUINT)bbt_v2)]))->_openb3d_openb3dcore_tobjvertex_x ,((struct openb3d_openb3dcore_TObjVertex_obj*)bbNullObjectTest((BBObject*)((struct openb3d_openb3dcore_TObjVertex_obj**)BBARRAYDATAINDEX((bbt_vertexP),(bbt_vertexP)->dims,((BBUINT)bbt_v2)))[((BBUINT)bbt_v2)]))->_openb3d_openb3dcore_tobjvertex_y ,-((struct openb3d_openb3dcore_TObjVertex_obj*)bbNullObjectTest((BBObject*)((struct openb3d_openb3dcore_TObjVertex_obj**)BBARRAYDATAINDEX((bbt_vertexP),(bbt_vertexP)->dims,((BBUINT)bbt_v2)))[((BBUINT)bbt_v2)]))->_openb3d_openb3dcore_tobjvertex_z ,0.00000000f,0.00000000f,0.00000000f);
										struct BBDebugStm __stmt_1 = {0xb38e7c8d97adef99, 249, 0};
										bbOnDebugEnterStm(&__stmt_1);
										struct openb3d_openb3dcore_TVertCache_obj* bbt_12;
										(((struct openb3d_openb3dcore_TVertCache_obj*)((struct openb3d_openb3dcore_TVertCache_obj*)bbNullObjectTest((BBObject*)(bbt_12 = ((struct openb3d_openb3dcore_TObjMtl_obj*)bbNullObjectTest((BBObject*)bbt_currMtl))->_openb3d_openb3dcore_tobjmtl_cache ))))->clas)->m_SetCache_iiii((struct openb3d_openb3dcore_TVertCache_obj*)bbt_12,((struct openb3d_openb3dcore_TFaceData_obj*)bbNullObjectTest((BBObject*)((struct openb3d_openb3dcore_TFaceData_obj**)BBARRAYDATAINDEX((bbt_FV),(bbt_FV)->dims,((BBUINT)bbt_id)))[((BBUINT)bbt_id)]))->_openb3d_openb3dcore_tfacedata_vi ,(bbt_v2+1),((struct openb3d_openb3dcore_TFaceData_obj*)bbNullObjectTest((BBObject*)((struct openb3d_openb3dcore_TFaceData_obj**)BBARRAYDATAINDEX((bbt_FV),(bbt_FV)->dims,((BBUINT)bbt_id)))[((BBUINT)bbt_id)]))->_openb3d_openb3dcore_tfacedata_ti ,((struct openb3d_openb3dcore_TFaceData_obj*)bbNullObjectTest((BBObject*)((struct openb3d_openb3dcore_TFaceData_obj**)BBARRAYDATAINDEX((bbt_FV),(bbt_FV)->dims,((BBUINT)bbt_id)))[((BBUINT)bbt_id)]))->_openb3d_openb3dcore_tfacedata_ni );
										bbOnDebugLeaveScope();
									}else{
										struct BBDebugScope __scope = {
											BBDEBUGSCOPE_LOCALBLOCK,
											0,
											{
												{
													BBDEBUGDECL_END
												}
											}
										};
										bbOnDebugEnterScope((BBDebugScope *)&__scope);
										struct BBDebugStm __stmt_0 = {0xb38e7c8d97adef99, 250, 0};
										bbOnDebugEnterStm(&__stmt_0);
										if(bbt_ri==-1){
											struct BBDebugScope __scope = {
												BBDEBUGSCOPE_LOCALBLOCK,
												0,
												{
													{
														BBDEBUGDECL_END
													}
												}
											};
											bbOnDebugEnterScope((BBDebugScope *)&__scope);
											struct BBDebugStm __stmt_0 = {0xb38e7c8d97adef99, 252, 0};
											bbOnDebugEnterStm(&__stmt_0);
											bbt_v2=((struct openb3d_openb3dcore_TSurface_obj*)bbNullObjectTest((BBObject*)bbt_surface))->clas->m_AddVertex_ffffff((struct openb3d_openb3dcore_TSurface_obj*)bbt_surface,((struct openb3d_openb3dcore_TObjVertex_obj*)bbNullObjectTest((BBObject*)((struct openb3d_openb3dcore_TObjVertex_obj**)BBARRAYDATAINDEX((bbt_vertexP),(bbt_vertexP)->dims,((BBUINT)bbt_v2)))[((BBUINT)bbt_v2)]))->_openb3d_openb3dcore_tobjvertex_x ,((struct openb3d_openb3dcore_TObjVertex_obj*)bbNullObjectTest((BBObject*)((struct openb3d_openb3dcore_TObjVertex_obj**)BBARRAYDATAINDEX((bbt_vertexP),(bbt_vertexP)->dims,((BBUINT)bbt_v2)))[((BBUINT)bbt_v2)]))->_openb3d_openb3dcore_tobjvertex_y ,-((struct openb3d_openb3dcore_TObjVertex_obj*)bbNullObjectTest((BBObject*)((struct openb3d_openb3dcore_TObjVertex_obj**)BBARRAYDATAINDEX((bbt_vertexP),(bbt_vertexP)->dims,((BBUINT)bbt_v2)))[((BBUINT)bbt_v2)]))->_openb3d_openb3dcore_tobjvertex_z ,0.00000000f,0.00000000f,0.00000000f);
											struct BBDebugStm __stmt_1 = {0xb38e7c8d97adef99, 253, 0};
											bbOnDebugEnterStm(&__stmt_1);
											struct openb3d_openb3dcore_TVertCache_obj* bbt_13;
											(((struct openb3d_openb3dcore_TVertCache_obj*)((struct openb3d_openb3dcore_TVertCache_obj*)bbNullObjectTest((BBObject*)(bbt_13 = ((struct openb3d_openb3dcore_TObjMtl_obj*)bbNullObjectTest((BBObject*)bbt_currMtl))->_openb3d_openb3dcore_tobjmtl_cache ))))->clas)->m_SetCache_iiii((struct openb3d_openb3dcore_TVertCache_obj*)bbt_13,((struct openb3d_openb3dcore_TFaceData_obj*)bbNullObjectTest((BBObject*)((struct openb3d_openb3dcore_TFaceData_obj**)BBARRAYDATAINDEX((bbt_FV),(bbt_FV)->dims,((BBUINT)bbt_id)))[((BBUINT)bbt_id)]))->_openb3d_openb3dcore_tfacedata_vi ,(bbt_v2+1),((struct openb3d_openb3dcore_TFaceData_obj*)bbNullObjectTest((BBObject*)((struct openb3d_openb3dcore_TFaceData_obj**)BBARRAYDATAINDEX((bbt_FV),(bbt_FV)->dims,((BBUINT)bbt_id)))[((BBUINT)bbt_id)]))->_openb3d_openb3dcore_tfacedata_ti ,((struct openb3d_openb3dcore_TFaceData_obj*)bbNullObjectTest((BBObject*)((struct openb3d_openb3dcore_TFaceData_obj**)BBARRAYDATAINDEX((bbt_FV),(bbt_FV)->dims,((BBUINT)bbt_id)))[((BBUINT)bbt_id)]))->_openb3d_openb3dcore_tfacedata_ni );
											bbOnDebugLeaveScope();
										}else{
											struct BBDebugScope __scope = {
												BBDEBUGSCOPE_LOCALBLOCK,
												0,
												{
													{
														BBDEBUGDECL_END
													}
												}
											};
											bbOnDebugEnterScope((BBDebugScope *)&__scope);
											struct BBDebugStm __stmt_0 = {0xb38e7c8d97adef99, 256, 0};
											bbOnDebugEnterStm(&__stmt_0);
											bbt_v2=(bbt_ri-1);
											bbOnDebugLeaveScope();
										}
										bbOnDebugLeaveScope();
									}
									struct BBDebugStm __stmt_11 = {0xb38e7c8d97adef99, 258, 0};
									bbOnDebugEnterStm(&__stmt_11);
									if((bbt_ri==0) && (((BBOBJECT)((struct openb3d_openb3dcore_TObjVertex_obj**)BBARRAYDATAINDEX((bbt_vertexP),(bbt_vertexP)->dims,((BBUINT)(bbt_v2+1))))[((BBUINT)(bbt_v2+1))])!=&bbNullObject)){
										struct BBDebugScope __scope = {
											BBDEBUGSCOPE_LOCALBLOCK,
											0,
											{
												{
													BBDEBUGDECL_END
												}
											}
										};
										bbOnDebugEnterScope((BBDebugScope *)&__scope);
										struct BBDebugStm __stmt_0 = {0xb38e7c8d97adef99, 259, 0};
										bbOnDebugEnterStm(&__stmt_0);
										((struct openb3d_openb3dcore_TSurface_obj*)bbNullObjectTest((BBObject*)bbt_surface))->clas->m_VertexColor_iffff((struct openb3d_openb3dcore_TSurface_obj*)bbt_surface,bbt_v2,((struct openb3d_openb3dcore_TObjVertex_obj*)bbNullObjectTest((BBObject*)((struct openb3d_openb3dcore_TObjVertex_obj**)BBARRAYDATAINDEX((bbt_vertexP),(bbt_vertexP)->dims,((BBUINT)(bbt_v2+1))))[((BBUINT)(bbt_v2+1))]))->_openb3d_openb3dcore_tobjvertex_r ,((struct openb3d_openb3dcore_TObjVertex_obj*)bbNullObjectTest((BBObject*)((struct openb3d_openb3dcore_TObjVertex_obj**)BBARRAYDATAINDEX((bbt_vertexP),(bbt_vertexP)->dims,((BBUINT)(bbt_v2+1))))[((BBUINT)(bbt_v2+1))]))->_openb3d_openb3dcore_tobjvertex_g ,((struct openb3d_openb3dcore_TObjVertex_obj*)bbNullObjectTest((BBObject*)((struct openb3d_openb3dcore_TObjVertex_obj**)BBARRAYDATAINDEX((bbt_vertexP),(bbt_vertexP)->dims,((BBUINT)(bbt_v2+1))))[((BBUINT)(bbt_v2+1))]))->_openb3d_openb3dcore_tobjvertex_b ,1.00000000f);
										bbOnDebugLeaveScope();
									}
									struct BBDebugStm __stmt_12 = {0xb38e7c8d97adef99, 262, 0};
									bbOnDebugEnterStm(&__stmt_12);
									if((((BBOBJECT)((struct openb3d_openb3dcore_TObjNormal_obj**)BBARRAYDATAINDEX((bbt_vertexN),(bbt_vertexN)->dims,1U))[1U])!=&bbNullObject) && (((struct openb3d_openb3dcore_TFaceData_obj*)bbNullObjectTest((BBObject*)((struct openb3d_openb3dcore_TFaceData_obj**)BBARRAYDATAINDEX((bbt_FV),(bbt_FV)->dims,0U))[0U]))->_openb3d_openb3dcore_tfacedata_ni !=0)){
										struct BBDebugScope __scope = {
											BBDEBUGSCOPE_LOCALBLOCK,
											0,
											{
												{
													BBDEBUGDECL_END
												}
											}
										};
										bbOnDebugEnterScope((BBDebugScope *)&__scope);
										struct BBDebugStm __stmt_0 = {0xb38e7c8d97adef99, 263, 0};
										bbOnDebugEnterStm(&__stmt_0);
										((struct openb3d_openb3dcore_TSurface_obj*)bbNullObjectTest((BBObject*)bbt_surface))->clas->m_VertexNormal_ifff((struct openb3d_openb3dcore_TSurface_obj*)bbt_surface,bbt_v0,((struct openb3d_openb3dcore_TObjNormal_obj*)bbNullObjectTest((BBObject*)((struct openb3d_openb3dcore_TObjNormal_obj**)BBARRAYDATAINDEX((bbt_vertexN),(bbt_vertexN)->dims,((BBUINT)((struct openb3d_openb3dcore_TFaceData_obj*)bbNullObjectTest((BBObject*)((struct openb3d_openb3dcore_TFaceData_obj**)BBARRAYDATAINDEX((bbt_FV),(bbt_FV)->dims,0U))[0U]))->_openb3d_openb3dcore_tfacedata_ni )))[((BBUINT)((struct openb3d_openb3dcore_TFaceData_obj*)bbNullObjectTest((BBObject*)((struct openb3d_openb3dcore_TFaceData_obj**)BBARRAYDATAINDEX((bbt_FV),(bbt_FV)->dims,0U))[0U]))->_openb3d_openb3dcore_tfacedata_ni )]))->_openb3d_openb3dcore_tobjnormal_nx ,((struct openb3d_openb3dcore_TObjNormal_obj*)bbNullObjectTest((BBObject*)((struct openb3d_openb3dcore_TObjNormal_obj**)BBARRAYDATAINDEX((bbt_vertexN),(bbt_vertexN)->dims,((BBUINT)((struct openb3d_openb3dcore_TFaceData_obj*)bbNullObjectTest((BBObject*)((struct openb3d_openb3dcore_TFaceData_obj**)BBARRAYDATAINDEX((bbt_FV),(bbt_FV)->dims,0U))[0U]))->_openb3d_openb3dcore_tfacedata_ni )))[((BBUINT)((struct openb3d_openb3dcore_TFaceData_obj*)bbNullObjectTest((BBObject*)((struct openb3d_openb3dcore_TFaceData_obj**)BBARRAYDATAINDEX((bbt_FV),(bbt_FV)->dims,0U))[0U]))->_openb3d_openb3dcore_tfacedata_ni )]))->_openb3d_openb3dcore_tobjnormal_ny ,((struct openb3d_openb3dcore_TObjNormal_obj*)bbNullObjectTest((BBObject*)((struct openb3d_openb3dcore_TObjNormal_obj**)BBARRAYDATAINDEX((bbt_vertexN),(bbt_vertexN)->dims,((BBUINT)((struct openb3d_openb3dcore_TFaceData_obj*)bbNullObjectTest((BBObject*)((struct openb3d_openb3dcore_TFaceData_obj**)BBARRAYDATAINDEX((bbt_FV),(bbt_FV)->dims,0U))[0U]))->_openb3d_openb3dcore_tfacedata_ni )))[((BBUINT)((struct openb3d_openb3dcore_TFaceData_obj*)bbNullObjectTest((BBObject*)((struct openb3d_openb3dcore_TFaceData_obj**)BBARRAYDATAINDEX((bbt_FV),(bbt_FV)->dims,0U))[0U]))->_openb3d_openb3dcore_tfacedata_ni )]))->_openb3d_openb3dcore_tobjnormal_nz );
										struct BBDebugStm __stmt_1 = {0xb38e7c8d97adef99, 264, 0};
										bbOnDebugEnterStm(&__stmt_1);
										((struct openb3d_openb3dcore_TSurface_obj*)bbNullObjectTest((BBObject*)bbt_surface))->clas->m_VertexNormal_ifff((struct openb3d_openb3dcore_TSurface_obj*)bbt_surface,bbt_v1,((struct openb3d_openb3dcore_TObjNormal_obj*)bbNullObjectTest((BBObject*)((struct openb3d_openb3dcore_TObjNormal_obj**)BBARRAYDATAINDEX((bbt_vertexN),(bbt_vertexN)->dims,((BBUINT)((struct openb3d_openb3dcore_TFaceData_obj*)bbNullObjectTest((BBObject*)((struct openb3d_openb3dcore_TFaceData_obj**)BBARRAYDATAINDEX((bbt_FV),(bbt_FV)->dims,((BBUINT)(bbt_id-1))))[((BBUINT)(bbt_id-1))]))->_openb3d_openb3dcore_tfacedata_ni )))[((BBUINT)((struct openb3d_openb3dcore_TFaceData_obj*)bbNullObjectTest((BBObject*)((struct openb3d_openb3dcore_TFaceData_obj**)BBARRAYDATAINDEX((bbt_FV),(bbt_FV)->dims,((BBUINT)(bbt_id-1))))[((BBUINT)(bbt_id-1))]))->_openb3d_openb3dcore_tfacedata_ni )]))->_openb3d_openb3dcore_tobjnormal_nx ,((struct openb3d_openb3dcore_TObjNormal_obj*)bbNullObjectTest((BBObject*)((struct openb3d_openb3dcore_TObjNormal_obj**)BBARRAYDATAINDEX((bbt_vertexN),(bbt_vertexN)->dims,((BBUINT)((struct openb3d_openb3dcore_TFaceData_obj*)bbNullObjectTest((BBObject*)((struct openb3d_openb3dcore_TFaceData_obj**)BBARRAYDATAINDEX((bbt_FV),(bbt_FV)->dims,((BBUINT)(bbt_id-1))))[((BBUINT)(bbt_id-1))]))->_openb3d_openb3dcore_tfacedata_ni )))[((BBUINT)((struct openb3d_openb3dcore_TFaceData_obj*)bbNullObjectTest((BBObject*)((struct openb3d_openb3dcore_TFaceData_obj**)BBARRAYDATAINDEX((bbt_FV),(bbt_FV)->dims,((BBUINT)(bbt_id-1))))[((BBUINT)(bbt_id-1))]))->_openb3d_openb3dcore_tfacedata_ni )]))->_openb3d_openb3dcore_tobjnormal_ny ,((struct openb3d_openb3dcore_TObjNormal_obj*)bbNullObjectTest((BBObject*)((struct openb3d_openb3dcore_TObjNormal_obj**)BBARRAYDATAINDEX((bbt_vertexN),(bbt_vertexN)->dims,((BBUINT)((struct openb3d_openb3dcore_TFaceData_obj*)bbNullObjectTest((BBObject*)((struct openb3d_openb3dcore_TFaceData_obj**)BBARRAYDATAINDEX((bbt_FV),(bbt_FV)->dims,((BBUINT)(bbt_id-1))))[((BBUINT)(bbt_id-1))]))->_openb3d_openb3dcore_tfacedata_ni )))[((BBUINT)((struct openb3d_openb3dcore_TFaceData_obj*)bbNullObjectTest((BBObject*)((struct openb3d_openb3dcore_TFaceData_obj**)BBARRAYDATAINDEX((bbt_FV),(bbt_FV)->dims,((BBUINT)(bbt_id-1))))[((BBUINT)(bbt_id-1))]))->_openb3d_openb3dcore_tfacedata_ni )]))->_openb3d_openb3dcore_tobjnormal_nz );
										struct BBDebugStm __stmt_2 = {0xb38e7c8d97adef99, 265, 0};
										bbOnDebugEnterStm(&__stmt_2);
										((struct openb3d_openb3dcore_TSurface_obj*)bbNullObjectTest((BBObject*)bbt_surface))->clas->m_VertexNormal_ifff((struct openb3d_openb3dcore_TSurface_obj*)bbt_surface,bbt_v2,((struct openb3d_openb3dcore_TObjNormal_obj*)bbNullObjectTest((BBObject*)((struct openb3d_openb3dcore_TObjNormal_obj**)BBARRAYDATAINDEX((bbt_vertexN),(bbt_vertexN)->dims,((BBUINT)((struct openb3d_openb3dcore_TFaceData_obj*)bbNullObjectTest((BBObject*)((struct openb3d_openb3dcore_TFaceData_obj**)BBARRAYDATAINDEX((bbt_FV),(bbt_FV)->dims,((BBUINT)bbt_id)))[((BBUINT)bbt_id)]))->_openb3d_openb3dcore_tfacedata_ni )))[((BBUINT)((struct openb3d_openb3dcore_TFaceData_obj*)bbNullObjectTest((BBObject*)((struct openb3d_openb3dcore_TFaceData_obj**)BBARRAYDATAINDEX((bbt_FV),(bbt_FV)->dims,((BBUINT)bbt_id)))[((BBUINT)bbt_id)]))->_openb3d_openb3dcore_tfacedata_ni )]))->_openb3d_openb3dcore_tobjnormal_nx ,((struct openb3d_openb3dcore_TObjNormal_obj*)bbNullObjectTest((BBObject*)((struct openb3d_openb3dcore_TObjNormal_obj**)BBARRAYDATAINDEX((bbt_vertexN),(bbt_vertexN)->dims,((BBUINT)((struct openb3d_openb3dcore_TFaceData_obj*)bbNullObjectTest((BBObject*)((struct openb3d_openb3dcore_TFaceData_obj**)BBARRAYDATAINDEX((bbt_FV),(bbt_FV)->dims,((BBUINT)bbt_id)))[((BBUINT)bbt_id)]))->_openb3d_openb3dcore_tfacedata_ni )))[((BBUINT)((struct openb3d_openb3dcore_TFaceData_obj*)bbNullObjectTest((BBObject*)((struct openb3d_openb3dcore_TFaceData_obj**)BBARRAYDATAINDEX((bbt_FV),(bbt_FV)->dims,((BBUINT)bbt_id)))[((BBUINT)bbt_id)]))->_openb3d_openb3dcore_tfacedata_ni )]))->_openb3d_openb3dcore_tobjnormal_ny ,((struct openb3d_openb3dcore_TObjNormal_obj*)bbNullObjectTest((BBObject*)((struct openb3d_openb3dcore_TObjNormal_obj**)BBARRAYDATAINDEX((bbt_vertexN),(bbt_vertexN)->dims,((BBUINT)((struct openb3d_openb3dcore_TFaceData_obj*)bbNullObjectTest((BBObject*)((struct openb3d_openb3dcore_TFaceData_obj**)BBARRAYDATAINDEX((bbt_FV),(bbt_FV)->dims,((BBUINT)bbt_id)))[((BBUINT)bbt_id)]))->_openb3d_openb3dcore_tfacedata_ni )))[((BBUINT)((struct openb3d_openb3dcore_TFaceData_obj*)bbNullObjectTest((BBObject*)((struct openb3d_openb3dcore_TFaceData_obj**)BBARRAYDATAINDEX((bbt_FV),(bbt_FV)->dims,((BBUINT)bbt_id)))[((BBUINT)bbt_id)]))->_openb3d_openb3dcore_tfacedata_ni )]))->_openb3d_openb3dcore_tobjnormal_nz );
										bbOnDebugLeaveScope();
									}
									struct BBDebugStm __stmt_13 = {0xb38e7c8d97adef99, 268, 0};
									bbOnDebugEnterStm(&__stmt_13);
									if((((BBOBJECT)((struct openb3d_openb3dcore_TObjTexCoord_obj**)BBARRAYDATAINDEX((bbt_vertexT),(bbt_vertexT)->dims,1U))[1U])!=&bbNullObject) && (((struct openb3d_openb3dcore_TFaceData_obj*)bbNullObjectTest((BBObject*)((struct openb3d_openb3dcore_TFaceData_obj**)BBARRAYDATAINDEX((bbt_FV),(bbt_FV)->dims,0U))[0U]))->_openb3d_openb3dcore_tfacedata_ti !=0)){
										struct BBDebugScope __scope = {
											BBDEBUGSCOPE_LOCALBLOCK,
											0,
											{
												{
													BBDEBUGDECL_END
												}
											}
										};
										bbOnDebugEnterScope((BBDebugScope *)&__scope);
										struct BBDebugStm __stmt_0 = {0xb38e7c8d97adef99, 269, 0};
										bbOnDebugEnterStm(&__stmt_0);
										((struct openb3d_openb3dcore_TSurface_obj*)bbNullObjectTest((BBObject*)bbt_surface))->clas->m_VertexTexCoords_ifffi((struct openb3d_openb3dcore_TSurface_obj*)bbt_surface,bbt_v0,((struct openb3d_openb3dcore_TObjTexCoord_obj*)bbNullObjectTest((BBObject*)((struct openb3d_openb3dcore_TObjTexCoord_obj**)BBARRAYDATAINDEX((bbt_vertexT),(bbt_vertexT)->dims,((BBUINT)((struct openb3d_openb3dcore_TFaceData_obj*)bbNullObjectTest((BBObject*)((struct openb3d_openb3dcore_TFaceData_obj**)BBARRAYDATAINDEX((bbt_FV),(bbt_FV)->dims,0U))[0U]))->_openb3d_openb3dcore_tfacedata_ti )))[((BBUINT)((struct openb3d_openb3dcore_TFaceData_obj*)bbNullObjectTest((BBObject*)((struct openb3d_openb3dcore_TFaceData_obj**)BBARRAYDATAINDEX((bbt_FV),(bbt_FV)->dims,0U))[0U]))->_openb3d_openb3dcore_tfacedata_ti )]))->_openb3d_openb3dcore_tobjtexcoord_u ,(1.00000000f-((struct openb3d_openb3dcore_TObjTexCoord_obj*)bbNullObjectTest((BBObject*)((struct openb3d_openb3dcore_TObjTexCoord_obj**)BBARRAYDATAINDEX((bbt_vertexT),(bbt_vertexT)->dims,((BBUINT)((struct openb3d_openb3dcore_TFaceData_obj*)bbNullObjectTest((BBObject*)((struct openb3d_openb3dcore_TFaceData_obj**)BBARRAYDATAINDEX((bbt_FV),(bbt_FV)->dims,0U))[0U]))->_openb3d_openb3dcore_tfacedata_ti )))[((BBUINT)((struct openb3d_openb3dcore_TFaceData_obj*)bbNullObjectTest((BBObject*)((struct openb3d_openb3dcore_TFaceData_obj**)BBARRAYDATAINDEX((bbt_FV),(bbt_FV)->dims,0U))[0U]))->_openb3d_openb3dcore_tfacedata_ti )]))->_openb3d_openb3dcore_tobjtexcoord_v ),0.00000000f,0);
										struct BBDebugStm __stmt_1 = {0xb38e7c8d97adef99, 270, 0};
										bbOnDebugEnterStm(&__stmt_1);
										((struct openb3d_openb3dcore_TSurface_obj*)bbNullObjectTest((BBObject*)bbt_surface))->clas->m_VertexTexCoords_ifffi((struct openb3d_openb3dcore_TSurface_obj*)bbt_surface,bbt_v1,((struct openb3d_openb3dcore_TObjTexCoord_obj*)bbNullObjectTest((BBObject*)((struct openb3d_openb3dcore_TObjTexCoord_obj**)BBARRAYDATAINDEX((bbt_vertexT),(bbt_vertexT)->dims,((BBUINT)((struct openb3d_openb3dcore_TFaceData_obj*)bbNullObjectTest((BBObject*)((struct openb3d_openb3dcore_TFaceData_obj**)BBARRAYDATAINDEX((bbt_FV),(bbt_FV)->dims,((BBUINT)(bbt_id-1))))[((BBUINT)(bbt_id-1))]))->_openb3d_openb3dcore_tfacedata_ti )))[((BBUINT)((struct openb3d_openb3dcore_TFaceData_obj*)bbNullObjectTest((BBObject*)((struct openb3d_openb3dcore_TFaceData_obj**)BBARRAYDATAINDEX((bbt_FV),(bbt_FV)->dims,((BBUINT)(bbt_id-1))))[((BBUINT)(bbt_id-1))]))->_openb3d_openb3dcore_tfacedata_ti )]))->_openb3d_openb3dcore_tobjtexcoord_u ,(1.00000000f-((struct openb3d_openb3dcore_TObjTexCoord_obj*)bbNullObjectTest((BBObject*)((struct openb3d_openb3dcore_TObjTexCoord_obj**)BBARRAYDATAINDEX((bbt_vertexT),(bbt_vertexT)->dims,((BBUINT)((struct openb3d_openb3dcore_TFaceData_obj*)bbNullObjectTest((BBObject*)((struct openb3d_openb3dcore_TFaceData_obj**)BBARRAYDATAINDEX((bbt_FV),(bbt_FV)->dims,((BBUINT)(bbt_id-1))))[((BBUINT)(bbt_id-1))]))->_openb3d_openb3dcore_tfacedata_ti )))[((BBUINT)((struct openb3d_openb3dcore_TFaceData_obj*)bbNullObjectTest((BBObject*)((struct openb3d_openb3dcore_TFaceData_obj**)BBARRAYDATAINDEX((bbt_FV),(bbt_FV)->dims,((BBUINT)(bbt_id-1))))[((BBUINT)(bbt_id-1))]))->_openb3d_openb3dcore_tfacedata_ti )]))->_openb3d_openb3dcore_tobjtexcoord_v ),0.00000000f,0);
										struct BBDebugStm __stmt_2 = {0xb38e7c8d97adef99, 271, 0};
										bbOnDebugEnterStm(&__stmt_2);
										((struct openb3d_openb3dcore_TSurface_obj*)bbNullObjectTest((BBObject*)bbt_surface))->clas->m_VertexTexCoords_ifffi((struct openb3d_openb3dcore_TSurface_obj*)bbt_surface,bbt_v2,((struct openb3d_openb3dcore_TObjTexCoord_obj*)bbNullObjectTest((BBObject*)((struct openb3d_openb3dcore_TObjTexCoord_obj**)BBARRAYDATAINDEX((bbt_vertexT),(bbt_vertexT)->dims,((BBUINT)((struct openb3d_openb3dcore_TFaceData_obj*)bbNullObjectTest((BBObject*)((struct openb3d_openb3dcore_TFaceData_obj**)BBARRAYDATAINDEX((bbt_FV),(bbt_FV)->dims,((BBUINT)bbt_id)))[((BBUINT)bbt_id)]))->_openb3d_openb3dcore_tfacedata_ti )))[((BBUINT)((struct openb3d_openb3dcore_TFaceData_obj*)bbNullObjectTest((BBObject*)((struct openb3d_openb3dcore_TFaceData_obj**)BBARRAYDATAINDEX((bbt_FV),(bbt_FV)->dims,((BBUINT)bbt_id)))[((BBUINT)bbt_id)]))->_openb3d_openb3dcore_tfacedata_ti )]))->_openb3d_openb3dcore_tobjtexcoord_u ,(1.00000000f-((struct openb3d_openb3dcore_TObjTexCoord_obj*)bbNullObjectTest((BBObject*)((struct openb3d_openb3dcore_TObjTexCoord_obj**)BBARRAYDATAINDEX((bbt_vertexT),(bbt_vertexT)->dims,((BBUINT)((struct openb3d_openb3dcore_TFaceData_obj*)bbNullObjectTest((BBObject*)((struct openb3d_openb3dcore_TFaceData_obj**)BBARRAYDATAINDEX((bbt_FV),(bbt_FV)->dims,((BBUINT)bbt_id)))[((BBUINT)bbt_id)]))->_openb3d_openb3dcore_tfacedata_ti )))[((BBUINT)((struct openb3d_openb3dcore_TFaceData_obj*)bbNullObjectTest((BBObject*)((struct openb3d_openb3dcore_TFaceData_obj**)BBARRAYDATAINDEX((bbt_FV),(bbt_FV)->dims,((BBUINT)bbt_id)))[((BBUINT)bbt_id)]))->_openb3d_openb3dcore_tfacedata_ti )]))->_openb3d_openb3dcore_tobjtexcoord_v ),0.00000000f,0);
										bbOnDebugLeaveScope();
									}
									struct BBDebugStm __stmt_14 = {0xb38e7c8d97adef99, 274, 0};
									bbOnDebugEnterStm(&__stmt_14);
									((struct openb3d_openb3dcore_TSurface_obj*)bbNullObjectTest((BBObject*)bbt_surface))->clas->m_AddTriangle_iii((struct openb3d_openb3dcore_TSurface_obj*)bbt_surface,bbt_v0,bbt_v2,bbt_v1);
									struct BBDebugStm __stmt_15 = {0xb38e7c8d97adef99, 275, 0};
									bbOnDebugEnterStm(&__stmt_15);
									bbt_TRI+=1;
									bbOnDebugLeaveScope();
								}
								struct BBDebugStm __stmt_6 = {0xb38e7c8d97adef99, 278, 0};
								bbOnDebugEnterStm(&__stmt_6);
								bbt_FC+=1;
								bbOnDebugLeaveScope();
							}
							struct BBDebugStm __stmt_5 = {0xb38e7c8d97adef99, 281, 0};
							bbOnDebugEnterStm(&__stmt_5);
							if(0 && (bbMilliSecs()!=bbt_ms)){
								struct BBDebugScope __scope = {
									BBDEBUGSCOPE_LOCALBLOCK,
									0,
									{
										{
											BBDEBUGDECL_END
										}
									}
								};
								bbOnDebugEnterScope((BBDebugScope *)&__scope);
								struct BBDebugStm __stmt_0 = {0xb38e7c8d97adef99, 281, 0};
								bbOnDebugEnterStm(&__stmt_0);
								brl_blitz_DebugLog(bbStringConcat(bbStringConcat(bbStringFromInt(bbMilliSecs()-bbt_ms),((BBString*)&_s577)),bbt_curline));
								bbOnDebugLeaveScope();
							}
							struct BBDebugStm __stmt_6 = {0xb38e7c8d97adef99, 282, 0};
							bbOnDebugEnterStm(&__stmt_6);
							bbOnDebugLeaveScope();
							bbOnDebugLeaveScope();
							bbOnDebugLeaveScope();
							bbOnDebugLeaveScope();
							bbOnDebugLeaveScope();
							bbOnDebugLeaveScope();
							continue;
						}
						bbOnDebugLeaveScope();
					}
					bbOnDebugLeaveScope();
				}
				bbOnDebugLeaveScope();
			}
			bbOnDebugLeaveScope();
		}
		struct BBDebugStm __stmt_7 = {0xb38e7c8d97adef99, 286, 0};
		bbOnDebugEnterStm(&__stmt_7);
		BBSTRING bbt_14=bbStringSlice(bbt_tag,0,3);
		struct BBDebugStm __stmt_8 = {0xb38e7c8d97adef99, 288, 0};
		bbOnDebugEnterStm(&__stmt_8);
		if(bbStringEquals(bbt_14, ((BBString*)&_s586))==1){
			struct BBDebugScope __scope = {
				BBDEBUGSCOPE_LOCALBLOCK,
				0,
				{
					{
						BBDEBUGDECL_END
					}
				}
			};
			bbOnDebugEnterScope((BBDebugScope *)&__scope);
			struct BBDebugStm __stmt_0 = {0xb38e7c8d97adef99, 289, 0};
			bbOnDebugEnterStm(&__stmt_0);
			if(bbt_VN>=((bbt_vertexN->scales[0])-1)){
				struct BBDebugScope __scope = {
					BBDEBUGSCOPE_LOCALBLOCK,
					0,
					{
						{
							BBDEBUGDECL_END
						}
					}
				};
				bbOnDebugEnterScope((BBDebugScope *)&__scope);
				struct BBDebugStm __stmt_0 = {0xb38e7c8d97adef99, 289, 0};
				bbOnDebugEnterStm(&__stmt_0);
				bbt_vertexN=bbArraySlice(":TObjNormal",bbt_vertexN,0,((bbt_vertexN->scales[0])+1024));
				bbOnDebugLeaveScope();
			}
			struct BBDebugStm __stmt_1 = {0xb38e7c8d97adef99, 291, 0};
			bbOnDebugEnterStm(&__stmt_1);
			((struct openb3d_openb3dcore_TObjNormal_obj**)BBARRAYDATAINDEX((bbt_vertexN),(bbt_vertexN)->dims,((BBUINT)(bbt_VN+1))))[((BBUINT)(bbt_VN+1))]=(struct openb3d_openb3dcore_TObjNormal_obj*)(struct openb3d_openb3dcore_TObjNormal_obj*)bbObjectAtomicNew((BBClass *)&openb3d_openb3dcore_TObjNormal);
			struct BBDebugStm __stmt_2 = {0xb38e7c8d97adef99, 292, 0};
			bbOnDebugEnterStm(&__stmt_2);
			struct openb3d_openb3dcore_TObjNormal_obj* bbt_15;
			(((struct openb3d_openb3dcore_TObjNormal_obj*)bbNullObjectTest((BBObject*)(bbt_15 = ((struct openb3d_openb3dcore_TObjNormal_obj**)BBARRAYDATAINDEX((bbt_vertexN),(bbt_vertexN)->dims,((BBUINT)(bbt_VN+1))))[((BBUINT)(bbt_VN+1))])))->clas)->m_GetValues_S((struct openb3d_openb3dcore_TObjNormal_obj*)bbt_15,bbStringSlice(bbt_curline,2,(bbt_curline)->length));
			struct BBDebugStm __stmt_3 = {0xb38e7c8d97adef99, 293, 0};
			bbOnDebugEnterStm(&__stmt_3);
			bbt_VN+=1;
			struct BBDebugStm __stmt_4 = {0xb38e7c8d97adef99, 294, 0};
			bbOnDebugEnterStm(&__stmt_4);
			bbt_hasNorms=1;
			struct BBDebugStm __stmt_5 = {0xb38e7c8d97adef99, 296, 0};
			bbOnDebugEnterStm(&__stmt_5);
			if(0 && (bbMilliSecs()!=bbt_ms)){
				struct BBDebugScope __scope = {
					BBDEBUGSCOPE_LOCALBLOCK,
					0,
					{
						{
							BBDEBUGDECL_END
						}
					}
				};
				bbOnDebugEnterScope((BBDebugScope *)&__scope);
				struct BBDebugStm __stmt_0 = {0xb38e7c8d97adef99, 296, 0};
				bbOnDebugEnterStm(&__stmt_0);
				brl_blitz_DebugLog(bbStringConcat(bbStringConcat(bbStringFromInt(bbMilliSecs()-bbt_ms),((BBString*)&_s577)),bbt_curline));
				bbOnDebugLeaveScope();
			}
			struct BBDebugStm __stmt_6 = {0xb38e7c8d97adef99, 297, 0};
			bbOnDebugEnterStm(&__stmt_6);
			bbOnDebugLeaveScope();
			bbOnDebugLeaveScope();
			continue;
		}else{
			struct BBDebugScope __scope = {
				BBDEBUGSCOPE_LOCALBLOCK,
				0,
				{
					{
						BBDEBUGDECL_END
					}
				}
			};
			bbOnDebugEnterScope((BBDebugScope *)&__scope);
			struct BBDebugStm __stmt_0 = {0xb38e7c8d97adef99, 299, 0};
			bbOnDebugEnterStm(&__stmt_0);
			if(bbStringEquals(bbt_14, ((BBString*)&_s587))==1){
				struct BBDebugScope __scope = {
					BBDEBUGSCOPE_LOCALBLOCK,
					0,
					{
						{
							BBDEBUGDECL_END
						}
					}
				};
				bbOnDebugEnterScope((BBDebugScope *)&__scope);
				struct BBDebugStm __stmt_0 = {0xb38e7c8d97adef99, 300, 0};
				bbOnDebugEnterStm(&__stmt_0);
				if(bbt_VT>=((bbt_vertexT->scales[0])-1)){
					struct BBDebugScope __scope = {
						BBDEBUGSCOPE_LOCALBLOCK,
						0,
						{
							{
								BBDEBUGDECL_END
							}
						}
					};
					bbOnDebugEnterScope((BBDebugScope *)&__scope);
					struct BBDebugStm __stmt_0 = {0xb38e7c8d97adef99, 300, 0};
					bbOnDebugEnterStm(&__stmt_0);
					bbt_vertexT=bbArraySlice(":TObjTexCoord",bbt_vertexT,0,((bbt_vertexT->scales[0])+1024));
					bbOnDebugLeaveScope();
				}
				struct BBDebugStm __stmt_1 = {0xb38e7c8d97adef99, 302, 0};
				bbOnDebugEnterStm(&__stmt_1);
				((struct openb3d_openb3dcore_TObjTexCoord_obj**)BBARRAYDATAINDEX((bbt_vertexT),(bbt_vertexT)->dims,((BBUINT)(bbt_VT+1))))[((BBUINT)(bbt_VT+1))]=(struct openb3d_openb3dcore_TObjTexCoord_obj*)(struct openb3d_openb3dcore_TObjTexCoord_obj*)bbObjectAtomicNew((BBClass *)&openb3d_openb3dcore_TObjTexCoord);
				struct BBDebugStm __stmt_2 = {0xb38e7c8d97adef99, 303, 0};
				bbOnDebugEnterStm(&__stmt_2);
				struct openb3d_openb3dcore_TObjTexCoord_obj* bbt_16;
				(((struct openb3d_openb3dcore_TObjTexCoord_obj*)bbNullObjectTest((BBObject*)(bbt_16 = ((struct openb3d_openb3dcore_TObjTexCoord_obj**)BBARRAYDATAINDEX((bbt_vertexT),(bbt_vertexT)->dims,((BBUINT)(bbt_VT+1))))[((BBUINT)(bbt_VT+1))])))->clas)->m_GetValues_S((struct openb3d_openb3dcore_TObjTexCoord_obj*)bbt_16,bbStringSlice(bbt_curline,2,(bbt_curline)->length));
				struct BBDebugStm __stmt_3 = {0xb38e7c8d97adef99, 304, 0};
				bbOnDebugEnterStm(&__stmt_3);
				bbt_VT+=1;
				struct BBDebugStm __stmt_4 = {0xb38e7c8d97adef99, 306, 0};
				bbOnDebugEnterStm(&__stmt_4);
				if(0 && (bbMilliSecs()!=bbt_ms)){
					struct BBDebugScope __scope = {
						BBDEBUGSCOPE_LOCALBLOCK,
						0,
						{
							{
								BBDEBUGDECL_END
							}
						}
					};
					bbOnDebugEnterScope((BBDebugScope *)&__scope);
					struct BBDebugStm __stmt_0 = {0xb38e7c8d97adef99, 306, 0};
					bbOnDebugEnterStm(&__stmt_0);
					brl_blitz_DebugLog(bbStringConcat(bbStringConcat(bbStringFromInt(bbMilliSecs()-bbt_ms),((BBString*)&_s577)),bbt_curline));
					bbOnDebugLeaveScope();
				}
				struct BBDebugStm __stmt_5 = {0xb38e7c8d97adef99, 307, 0};
				bbOnDebugEnterStm(&__stmt_5);
				bbOnDebugLeaveScope();
				bbOnDebugLeaveScope();
				bbOnDebugLeaveScope();
				continue;
			}
			bbOnDebugLeaveScope();
		}
		struct BBDebugStm __stmt_9 = {0xb38e7c8d97adef99, 311, 0};
		bbOnDebugEnterStm(&__stmt_9);
		BBSTRING bbt_17=bbStringSlice(bbt_tag,0,7);
		struct BBDebugStm __stmt_10 = {0xb38e7c8d97adef99, 313, 0};
		bbOnDebugEnterStm(&__stmt_10);
		if(bbStringEquals(bbt_17, ((BBString*)&_s588))==1){
			BBARRAY bbt_lib=(&bbEmptyArray);
			struct BBDebugScope_1 __scope = {
				BBDEBUGSCOPE_LOCALBLOCK,
				0,
				{
					{
						BBDEBUGDECL_LOCAL,
						"lib",
						"[]:TObjMtl",
						.var_address=&bbt_lib
					},
					{
						BBDEBUGDECL_END
					}
				}
			};
			bbOnDebugEnterScope((BBDebugScope *)&__scope);
			struct BBDebugStm __stmt_0 = {0xb38e7c8d97adef99, 314, 0};
			bbOnDebugEnterStm(&__stmt_0);
			if(openb3d_openb3dcore_TGlobal3D_Log_OBJ!=0){
				struct BBDebugScope __scope = {
					BBDEBUGSCOPE_LOCALBLOCK,
					0,
					{
						{
							BBDEBUGDECL_END
						}
					}
				};
				bbOnDebugEnterScope((BBDebugScope *)&__scope);
				struct BBDebugStm __stmt_0 = {0xb38e7c8d97adef99, 314, 0};
				bbOnDebugEnterStm(&__stmt_0);
				brl_blitz_DebugLog(bbStringConcat(bbStringConcat(bbStringConcat(((BBString*)&_s589),openb3d_openb3dcore_TOBJ_MaterialPath),((BBString*)&_s401)),bbStringSlice(bbt_curline,7,(bbt_curline)->length)));
				bbOnDebugLeaveScope();
			}
			struct BBDebugStm __stmt_1 = {0xb38e7c8d97adef99, 316, 0};
			bbOnDebugEnterStm(&__stmt_1);
			bbt_lib=openb3d_openb3dcore_TOBJ_ParseMTLLib_aTTObjMtl_SS(bbStringConcat(bbStringConcat(openb3d_openb3dcore_TOBJ_MaterialPath,((BBString*)&_s401)),bbStringSlice(bbt_curline,7,(bbt_curline)->length)),bbt_mtllib_string);
			struct BBDebugStm __stmt_2 = {0xb38e7c8d97adef99, 318, 0};
			bbOnDebugEnterStm(&__stmt_2);
			BBARRAY bbt_18=bbt_lib;
			BBUINT bbt_19=0U;
			while(bbt_19<((BBUINT)(bbt_18->scales[0]))){
				struct openb3d_openb3dcore_TObjMtl_obj* bbt_obj=(struct openb3d_openb3dcore_TObjMtl_obj*)((struct openb3d_openb3dcore_TObjMtl_obj*)&bbNullObject);
				struct BBDebugScope_1 __scope = {
					BBDEBUGSCOPE_LOCALBLOCK,
					0,
					{
						{
							BBDEBUGDECL_LOCAL,
							"obj",
							":TObjMtl",
							.var_address=&bbt_obj
						},
						{
							BBDEBUGDECL_END
						}
					}
				};
				bbOnDebugEnterScope((BBDebugScope *)&__scope);
				struct BBDebugStm __stmt_0 = {0xb38e7c8d97adef99, 318, 0};
				bbOnDebugEnterStm(&__stmt_0);
				bbt_obj=(struct openb3d_openb3dcore_TObjMtl_obj*)((struct openb3d_openb3dcore_TObjMtl_obj**)BBARRAYDATAINDEX((bbt_18),(bbt_18)->dims,bbt_19))[bbt_19];
				struct BBDebugStm __stmt_1 = {0xb38e7c8d97adef99, 318, 0};
				bbOnDebugEnterStm(&__stmt_1);
				bbt_19=(bbt_19+1U);
				struct BBDebugStm __stmt_2 = {0xb38e7c8d97adef99, 318, 0};
				bbOnDebugEnterStm(&__stmt_2);
				if(((BBOBJECT)bbt_obj)==&bbNullObject){
					struct BBDebugScope __scope = {
						BBDEBUGSCOPE_LOCALBLOCK,
						0,
						{
							{
								BBDEBUGDECL_END
							}
						}
					};
					bbOnDebugEnterScope((BBDebugScope *)&__scope);
					struct BBDebugStm __stmt_0 = {0xb38e7c8d97adef99, 318, 0};
					bbOnDebugEnterStm(&__stmt_0);
					bbOnDebugLeaveScope();
					bbOnDebugLeaveScope();
					continue;
				}
				struct BBDebugStm __stmt_3 = {0xb38e7c8d97adef99, 319, 0};
				bbOnDebugEnterStm(&__stmt_3);
				if(((BBObject*)bbt_obj)!= &bbNullObject){
					struct BBDebugScope __scope = {
						BBDEBUGSCOPE_LOCALBLOCK,
						0,
						{
							{
								BBDEBUGDECL_END
							}
						}
					};
					bbOnDebugEnterScope((BBDebugScope *)&__scope);
					struct BBDebugStm __stmt_0 = {0xb38e7c8d97adef99, 320, 0};
					bbOnDebugEnterStm(&__stmt_0);
					{
						struct BBDebugScope __scope = {
							BBDEBUGSCOPE_LOCALBLOCK,
							0,
							{
								{
									BBDEBUGDECL_END
								}
							}
						};
						bbOnDebugEnterScope((BBDebugScope *)&__scope);
						struct BBDebugStm __stmt_0 = {0xb38e7c8d97adef99, 323, 0};
						bbOnDebugEnterStm(&__stmt_0);
						if((bbt_matlibsArray->scales[0])<=(bbt_matlibsArrayCount+1)){
							struct BBDebugScope __scope = {
								BBDEBUGSCOPE_LOCALBLOCK,
								0,
								{
									{
										BBDEBUGDECL_END
									}
								}
							};
							bbOnDebugEnterScope((BBDebugScope *)&__scope);
							struct BBDebugStm __stmt_0 = {0xb38e7c8d97adef99, 324, 0};
							bbOnDebugEnterStm(&__stmt_0);
							bbt_matlibsArray=bbArraySlice(":TObjMtl",bbt_matlibsArray,0,((bbt_matlibsArray->scales[0])+bbt_matlibsArrayBuffSize));
							bbOnDebugLeaveScope();
						}
						struct BBDebugStm __stmt_1 = {0xb38e7c8d97adef99, 326, 0};
						bbOnDebugEnterStm(&__stmt_1);
						((struct openb3d_openb3dcore_TObjMtl_obj**)BBARRAYDATAINDEX((bbt_matlibsArray),(bbt_matlibsArray)->dims,((BBUINT)bbt_matlibsArrayCount)))[((BBUINT)bbt_matlibsArrayCount)]=(struct openb3d_openb3dcore_TObjMtl_obj*)bbt_obj;
						struct BBDebugStm __stmt_2 = {0xb38e7c8d97adef99, 327, 0};
						bbOnDebugEnterStm(&__stmt_2);
						bbt_matlibsArrayCount+=1;
						bbOnDebugLeaveScope();
					}
					bbOnDebugLeaveScope();
				}
				bbOnDebugLeaveScope();
			}
			struct BBDebugStm __stmt_3 = {0xb38e7c8d97adef99, 332, 0};
			bbOnDebugEnterStm(&__stmt_3);
			if(0 && (bbMilliSecs()!=bbt_ms)){
				struct BBDebugScope __scope = {
					BBDEBUGSCOPE_LOCALBLOCK,
					0,
					{
						{
							BBDEBUGDECL_END
						}
					}
				};
				bbOnDebugEnterScope((BBDebugScope *)&__scope);
				struct BBDebugStm __stmt_0 = {0xb38e7c8d97adef99, 332, 0};
				bbOnDebugEnterStm(&__stmt_0);
				brl_blitz_DebugLog(bbStringConcat(bbStringConcat(bbStringFromInt(bbMilliSecs()-bbt_ms),((BBString*)&_s577)),bbt_curline));
				bbOnDebugLeaveScope();
			}
			struct BBDebugStm __stmt_4 = {0xb38e7c8d97adef99, 333, 0};
			bbOnDebugEnterStm(&__stmt_4);
			bbOnDebugLeaveScope();
			bbOnDebugLeaveScope();
			continue;
		}else{
			struct BBDebugScope __scope = {
				BBDEBUGSCOPE_LOCALBLOCK,
				0,
				{
					{
						BBDEBUGDECL_END
					}
				}
			};
			bbOnDebugEnterScope((BBDebugScope *)&__scope);
			struct BBDebugStm __stmt_0 = {0xb38e7c8d97adef99, 335, 0};
			bbOnDebugEnterStm(&__stmt_0);
			if(bbStringEquals(bbt_17, ((BBString*)&_s590))==1){
				struct BBDebugScope __scope = {
					BBDEBUGSCOPE_LOCALBLOCK,
					0,
					{
						{
							BBDEBUGDECL_END
						}
					}
				};
				bbOnDebugEnterScope((BBDebugScope *)&__scope);
				struct BBDebugStm __stmt_0 = {0xb38e7c8d97adef99, 336, 0};
				bbOnDebugEnterStm(&__stmt_0);
				{
					BBSTRING bbt_texName=(&bbEmptyString);
					struct BBDebugScope_1 __scope = {
						BBDEBUGSCOPE_LOCALBLOCK,
						0,
						{
							{
								BBDEBUGDECL_LOCAL,
								"texName",
								"$",
								.var_address=&bbt_texName
							},
							{
								BBDEBUGDECL_END
							}
						}
					};
					bbOnDebugEnterScope((BBDebugScope *)&__scope);
					struct BBDebugStm __stmt_0 = {0xb38e7c8d97adef99, 339, 0};
					bbOnDebugEnterStm(&__stmt_0);
					bbt_texName=bbStringTrim((BBSTRING)bbStringSlice(bbt_curline,7,(bbt_curline)->length));
					struct BBDebugStm __stmt_1 = {0xb38e7c8d97adef99, 340, 0};
					bbOnDebugEnterStm(&__stmt_1);
					BBINT bbt_20=(bbt_matlibsArray->scales[0]);
					for(bbt_id=0;(bbt_id<bbt_20);bbt_id=(bbt_id+1)){
						struct BBDebugScope __scope = {
							BBDEBUGSCOPE_LOCALBLOCK,
							0,
							{
								{
									BBDEBUGDECL_END
								}
							}
						};
						bbOnDebugEnterScope((BBDebugScope *)&__scope);
						struct BBDebugStm __stmt_0 = {0xb38e7c8d97adef99, 341, 0};
						bbOnDebugEnterStm(&__stmt_0);
						if((((BBObject*)((struct openb3d_openb3dcore_TObjMtl_obj**)BBARRAYDATAINDEX((bbt_matlibsArray),(bbt_matlibsArray)->dims,((BBUINT)bbt_id)))[((BBUINT)bbt_id)])!= &bbNullObject) && bbStringEquals(((struct openb3d_openb3dcore_TObjMtl_obj*)bbNullObjectTest((BBObject*)((struct openb3d_openb3dcore_TObjMtl_obj**)BBARRAYDATAINDEX((bbt_matlibsArray),(bbt_matlibsArray)->dims,((BBUINT)bbt_id)))[((BBUINT)bbt_id)]))->_openb3d_openb3dcore_tobjmtl_name , bbt_texName)==1){
							struct BBDebugScope __scope = {
								BBDEBUGSCOPE_LOCALBLOCK,
								0,
								{
									{
										BBDEBUGDECL_END
									}
								}
							};
							bbOnDebugEnterScope((BBDebugScope *)&__scope);
							struct BBDebugStm __stmt_0 = {0xb38e7c8d97adef99, 342, 0};
							bbOnDebugEnterStm(&__stmt_0);
							bbt_currMtl=(struct openb3d_openb3dcore_TObjMtl_obj*)((struct openb3d_openb3dcore_TObjMtl_obj**)BBARRAYDATAINDEX((bbt_matlibsArray),(bbt_matlibsArray)->dims,((BBUINT)bbt_id)))[((BBUINT)bbt_id)];
							struct BBDebugStm __stmt_1 = {0xb38e7c8d97adef99, 343, 0};
							bbOnDebugEnterStm(&__stmt_1);
							bbOnDebugLeaveScope();
							bbOnDebugLeaveScope();
							break;
						}
						bbOnDebugLeaveScope();
					}
					bbOnDebugLeaveScope();
				}
				struct BBDebugStm __stmt_1 = {0xb38e7c8d97adef99, 354, 0};
				bbOnDebugEnterStm(&__stmt_1);
				if(((BBObject*)bbt_currMtl)!= &bbNullObject){
					struct BBDebugScope __scope = {
						BBDEBUGSCOPE_LOCALBLOCK,
						0,
						{
							{
								BBDEBUGDECL_END
							}
						}
					};
					bbOnDebugEnterScope((BBDebugScope *)&__scope);
					struct BBDebugStm __stmt_0 = {0xb38e7c8d97adef99, 357, 0};
					bbOnDebugEnterStm(&__stmt_0);
					if(((BBObject*)((struct openb3d_openb3dcore_TObjMtl_obj*)bbNullObjectTest((BBObject*)bbt_currMtl))->_openb3d_openb3dcore_tobjmtl_meshsurface )!= &bbNullObject){
						struct BBDebugScope __scope = {
							BBDEBUGSCOPE_LOCALBLOCK,
							0,
							{
								{
									BBDEBUGDECL_END
								}
							}
						};
						bbOnDebugEnterScope((BBDebugScope *)&__scope);
						struct BBDebugStm __stmt_0 = {0xb38e7c8d97adef99, 358, 0};
						bbOnDebugEnterStm(&__stmt_0);
						brl_blitz_DebugLog(bbStringConcat(((BBString*)&_s591),((struct openb3d_openb3dcore_TObjMtl_obj*)bbNullObjectTest((BBObject*)bbt_currMtl))->_openb3d_openb3dcore_tobjmtl_name ));
						bbOnDebugLeaveScope();
					}else{
						struct BBDebugScope __scope = {
							BBDEBUGSCOPE_LOCALBLOCK,
							0,
							{
								{
									BBDEBUGDECL_END
								}
							}
						};
						bbOnDebugEnterScope((BBDebugScope *)&__scope);
						struct BBDebugStm __stmt_0 = {0xb38e7c8d97adef99, 360, 0};
						bbOnDebugEnterStm(&__stmt_0);
						if(openb3d_openb3dcore_TGlobal3D_Log_OBJ!=0){
							struct BBDebugScope __scope = {
								BBDEBUGSCOPE_LOCALBLOCK,
								0,
								{
									{
										BBDEBUGDECL_END
									}
								}
							};
							bbOnDebugEnterScope((BBDebugScope *)&__scope);
							struct BBDebugStm __stmt_0 = {0xb38e7c8d97adef99, 360, 0};
							bbOnDebugEnterStm(&__stmt_0);
							brl_blitz_DebugLog((BBString*)&_s592);
							bbOnDebugLeaveScope();
						}
						struct BBDebugStm __stmt_1 = {0xb38e7c8d97adef99, 362, 0};
						bbOnDebugEnterStm(&__stmt_1);
						((struct openb3d_openb3dcore_TObjMtl_obj*)bbNullObjectTest((BBObject*)bbt_currMtl))->_openb3d_openb3dcore_tobjmtl_meshsurface =(struct openb3d_openb3dcore_TSurface_obj*)((struct openb3d_openb3dcore_TMesh_obj*)bbNullObjectTest((BBObject*)bbt_mesh))->clas->m_CreateSurface_TTBrush((struct openb3d_openb3dcore_TMesh_obj*)bbt_mesh,(struct openb3d_openb3dcore_TBrush_obj*)&bbNullObject);
						struct BBDebugStm __stmt_2 = {0xb38e7c8d97adef99, 363, 0};
						bbOnDebugEnterStm(&__stmt_2);
						struct openb3d_openb3dcore_TSurface_obj* bbt_21;
						(((struct openb3d_openb3dcore_TSurface_obj*)((struct openb3d_openb3dcore_TSurface_obj*)bbNullObjectTest((BBObject*)(bbt_21 = ((struct openb3d_openb3dcore_TObjMtl_obj*)bbNullObjectTest((BBObject*)bbt_currMtl))->_openb3d_openb3dcore_tobjmtl_meshsurface ))))->clas)->m_PaintSurface_TTBrush((struct openb3d_openb3dcore_TSurface_obj*)bbt_21,(struct openb3d_openb3dcore_TBrush_obj*)((struct openb3d_openb3dcore_TObjMtl_obj*)bbNullObjectTest((BBObject*)bbt_currMtl))->_openb3d_openb3dcore_tobjmtl_brush );
						struct BBDebugStm __stmt_3 = {0xb38e7c8d97adef99, 365, 0};
						bbOnDebugEnterStm(&__stmt_3);
						if(openb3d_openb3dcore_TGlobal3D_Log_OBJ!=0){
							struct BBDebugScope __scope = {
								BBDEBUGSCOPE_LOCALBLOCK,
								0,
								{
									{
										BBDEBUGDECL_END
									}
								}
							};
							bbOnDebugEnterScope((BBDebugScope *)&__scope);
							struct BBDebugStm __stmt_0 = {0xb38e7c8d97adef99, 365, 0};
							bbOnDebugEnterStm(&__stmt_0);
							brl_blitz_DebugLog(bbStringConcat(((BBString*)&_s593),((struct openb3d_openb3dcore_TObjMtl_obj*)bbNullObjectTest((BBObject*)bbt_currMtl))->_openb3d_openb3dcore_tobjmtl_name ));
							bbOnDebugLeaveScope();
						}
						struct BBDebugStm __stmt_4 = {0xb38e7c8d97adef99, 367, 0};
						bbOnDebugEnterStm(&__stmt_4);
						bbt_SC+=1;
						bbOnDebugLeaveScope();
					}
					struct BBDebugStm __stmt_1 = {0xb38e7c8d97adef99, 370, 0};
					bbOnDebugEnterStm(&__stmt_1);
					bbt_surface=(struct openb3d_openb3dcore_TSurface_obj*)((struct openb3d_openb3dcore_TObjMtl_obj*)bbNullObjectTest((BBObject*)bbt_currMtl))->_openb3d_openb3dcore_tobjmtl_meshsurface ;
					struct BBDebugStm __stmt_2 = {0xb38e7c8d97adef99, 371, 0};
					bbOnDebugEnterStm(&__stmt_2);
					if(!(((BBObject*)((struct openb3d_openb3dcore_TObjMtl_obj*)bbNullObjectTest((BBObject*)bbt_currMtl))->_openb3d_openb3dcore_tobjmtl_cache )!= &bbNullObject)){
						struct BBDebugScope __scope = {
							BBDEBUGSCOPE_LOCALBLOCK,
							0,
							{
								{
									BBDEBUGDECL_END
								}
							}
						};
						bbOnDebugEnterScope((BBDebugScope *)&__scope);
						struct BBDebugStm __stmt_0 = {0xb38e7c8d97adef99, 371, 0};
						bbOnDebugEnterStm(&__stmt_0);
						((struct openb3d_openb3dcore_TObjMtl_obj*)bbNullObjectTest((BBObject*)bbt_currMtl))->_openb3d_openb3dcore_tobjmtl_cache =(struct openb3d_openb3dcore_TVertCache_obj*)openb3d_openb3dcore_TVertCache_Create_TTVertCache_i(16);
						bbOnDebugLeaveScope();
					}
					struct BBDebugStm __stmt_3 = {0xb38e7c8d97adef99, 373, 0};
					bbOnDebugEnterStm(&__stmt_3);
					while(((struct openb3d_openb3dcore_TVertCache_obj*)bbNullObjectTest((BBObject*)((struct openb3d_openb3dcore_TObjMtl_obj*)bbNullObjectTest((BBObject*)bbt_currMtl))->_openb3d_openb3dcore_tobjmtl_cache ))->_openb3d_openb3dcore_tvertcache_size <(bbt_VC+1)){
						struct BBDebugScope __scope = {
							BBDEBUGSCOPE_LOCALBLOCK,
							0,
							{
								{
									BBDEBUGDECL_END
								}
							}
						};
						bbOnDebugEnterScope((BBDebugScope *)&__scope);
						struct BBDebugStm __stmt_0 = {0xb38e7c8d97adef99, 375, 0};
						bbOnDebugEnterStm(&__stmt_0);
						((struct openb3d_openb3dcore_TObjMtl_obj*)bbNullObjectTest((BBObject*)bbt_currMtl))->_openb3d_openb3dcore_tobjmtl_cache =(struct openb3d_openb3dcore_TVertCache_obj*)openb3d_openb3dcore_TVertCache_Create_TTVertCache_i(((struct openb3d_openb3dcore_TVertCache_obj*)bbNullObjectTest((BBObject*)((struct openb3d_openb3dcore_TObjMtl_obj*)bbNullObjectTest((BBObject*)bbt_currMtl))->_openb3d_openb3dcore_tobjmtl_cache ))->_openb3d_openb3dcore_tvertcache_size +16);
						bbOnDebugLeaveScope();
					}
					bbOnDebugLeaveScope();
				}
				struct BBDebugStm __stmt_2 = {0xb38e7c8d97adef99, 380, 0};
				bbOnDebugEnterStm(&__stmt_2);
				if(0 && (bbMilliSecs()!=bbt_ms)){
					struct BBDebugScope __scope = {
						BBDEBUGSCOPE_LOCALBLOCK,
						0,
						{
							{
								BBDEBUGDECL_END
							}
						}
					};
					bbOnDebugEnterScope((BBDebugScope *)&__scope);
					struct BBDebugStm __stmt_0 = {0xb38e7c8d97adef99, 380, 0};
					bbOnDebugEnterStm(&__stmt_0);
					brl_blitz_DebugLog(bbStringConcat(bbStringConcat(bbStringFromInt(bbMilliSecs()-bbt_ms),((BBString*)&_s577)),bbt_curline));
					bbOnDebugLeaveScope();
				}
				struct BBDebugStm __stmt_3 = {0xb38e7c8d97adef99, 381, 0};
				bbOnDebugEnterStm(&__stmt_3);
				bbOnDebugLeaveScope();
				bbOnDebugLeaveScope();
				bbOnDebugLeaveScope();
				continue;
			}
			bbOnDebugLeaveScope();
		}
		bbOnDebugLeaveScope();
	}
	struct BBDebugStm __stmt_36 = {0xb38e7c8d97adef99, 387, 0};
	bbOnDebugEnterStm(&__stmt_36);
	if(openb3d_openb3dcore_TGlobal3D_Log_OBJ!=0){
		BBINT bbt_count_children=0;
		struct BBDebugScope_1 __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_LOCAL,
					"count_children",
					"i",
					.var_address=&bbt_count_children
				},
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0xb38e7c8d97adef99, 388, 0};
		bbOnDebugEnterStm(&__stmt_0);
		brl_blitz_DebugLog(bbStringConcat(((BBString*)&_s594),bbStringFromInt(bbt_VC)));
		struct BBDebugStm __stmt_1 = {0xb38e7c8d97adef99, 389, 0};
		bbOnDebugEnterStm(&__stmt_1);
		brl_blitz_DebugLog(bbStringConcat(((BBString*)&_s595),bbStringFromInt(bbt_VN)));
		struct BBDebugStm __stmt_2 = {0xb38e7c8d97adef99, 390, 0};
		bbOnDebugEnterStm(&__stmt_2);
		brl_blitz_DebugLog(bbStringConcat(((BBString*)&_s596),bbStringFromInt(bbt_VT)));
		struct BBDebugStm __stmt_3 = {0xb38e7c8d97adef99, 391, 0};
		bbOnDebugEnterStm(&__stmt_3);
		brl_blitz_DebugLog(bbStringConcat(bbStringConcat(bbStringConcat(((BBString*)&_s597),bbStringFromInt(bbt_FC)),((BBString*)&_s598)),bbStringFromInt(bbt_TRI)));
		struct BBDebugStm __stmt_4 = {0xb38e7c8d97adef99, 392, 0};
		bbOnDebugEnterStm(&__stmt_4);
		brl_blitz_DebugLog(bbStringConcat(((BBString*)&_s599),bbStringFromInt(bbt_SC)));
		struct BBDebugStm __stmt_5 = {0xb38e7c8d97adef99, 402, 0};
		bbOnDebugEnterStm(&__stmt_5);
		bbt_count_children=openb3d_openb3dcore_TEntity_CountAllChildren_i_TTEntityi((struct openb3d_openb3dcore_TEntity_obj*)((struct openb3d_openb3dcore_TEntity_obj*)bbObjectDowncast((BBOBJECT)bbt_root,(BBClass*)&openb3d_openb3dcore_TEntity)),0);
		struct BBDebugStm __stmt_6 = {0xb38e7c8d97adef99, 403, 0};
		bbOnDebugEnterStm(&__stmt_6);
		{
			BBINT bbt_child_no=1;
			BBINT bbt_22=bbt_count_children;
			for(;(bbt_child_no<=bbt_22);bbt_child_no=(bbt_child_no+1)){
				BBINT bbt_count=0;
				struct openb3d_openb3dcore_TEntity_obj* bbt_child_ent=(struct openb3d_openb3dcore_TEntity_obj*)((struct openb3d_openb3dcore_TEntity_obj*)&bbNullObject);
				struct BBDebugScope_3 __scope = {
					BBDEBUGSCOPE_LOCALBLOCK,
					0,
					{
						{
							BBDEBUGDECL_LOCAL,
							"child_no",
							"i",
							.var_address=&bbt_child_no
						},
						{
							BBDEBUGDECL_LOCAL,
							"count",
							"i",
							.var_address=&bbt_count
						},
						{
							BBDEBUGDECL_LOCAL,
							"child_ent",
							":TEntity",
							.var_address=&bbt_child_ent
						},
						{
							BBDEBUGDECL_END
						}
					}
				};
				bbOnDebugEnterScope((BBDebugScope *)&__scope);
				struct BBDebugStm __stmt_0 = {0xb38e7c8d97adef99, 404, 0};
				bbOnDebugEnterStm(&__stmt_0);
				bbt_count=0;
				struct BBDebugStm __stmt_1 = {0xb38e7c8d97adef99, 405, 0};
				bbOnDebugEnterStm(&__stmt_1);
				bbt_child_ent=(struct openb3d_openb3dcore_TEntity_obj*)((struct openb3d_openb3dcore_TMesh_obj*)bbNullObjectTest((BBObject*)bbt_root))->clas->m_GetChildFromAll_iviTTEntity((struct openb3d_openb3dcore_TEntity_obj*)bbt_root,bbt_child_no,(&bbt_count),(struct openb3d_openb3dcore_TEntity_obj*)&bbNullObject);
				struct BBDebugStm __stmt_2 = {0xb38e7c8d97adef99, 406, 0};
				bbOnDebugEnterStm(&__stmt_2);
				{
					BBINT bbt_sid=1;
					BBINT bbt_23=openb3d_openb3dcore_CountSurfaces((struct openb3d_openb3dcore_TMesh_obj*)((struct openb3d_openb3dcore_TMesh_obj*)bbObjectDowncast((BBOBJECT)bbt_child_ent,(BBClass*)&openb3d_openb3dcore_TMesh)));
					for(;(bbt_sid<=bbt_23);bbt_sid=(bbt_sid+1)){
						struct openb3d_openb3dcore_TSurface_obj* bbt_surf=(struct openb3d_openb3dcore_TSurface_obj*)((struct openb3d_openb3dcore_TSurface_obj*)&bbNullObject);
						struct BBDebugScope_2 __scope = {
							BBDEBUGSCOPE_LOCALBLOCK,
							0,
							{
								{
									BBDEBUGDECL_LOCAL,
									"sid",
									"i",
									.var_address=&bbt_sid
								},
								{
									BBDEBUGDECL_LOCAL,
									"surf",
									":TSurface",
									.var_address=&bbt_surf
								},
								{
									BBDEBUGDECL_END
								}
							}
						};
						bbOnDebugEnterScope((BBDebugScope *)&__scope);
						struct BBDebugStm __stmt_0 = {0xb38e7c8d97adef99, 407, 0};
						bbOnDebugEnterStm(&__stmt_0);
						bbt_surf=(struct openb3d_openb3dcore_TSurface_obj*)openb3d_openb3dcore_GetSurface((struct openb3d_openb3dcore_TMesh_obj*)((struct openb3d_openb3dcore_TMesh_obj*)bbObjectDowncast((BBOBJECT)bbt_child_ent,(BBClass*)&openb3d_openb3dcore_TMesh)),bbt_sid);
						struct BBDebugStm __stmt_1 = {0xb38e7c8d97adef99, 408, 0};
						bbOnDebugEnterStm(&__stmt_1);
						brl_blitz_DebugLog(bbStringConcat(bbStringConcat(bbStringConcat(bbStringConcat(bbStringConcat(((BBString*)&_s600),bbStringFromInt(bbt_sid)),((BBString*)&_s601)),bbStringFromInt(((struct openb3d_openb3dcore_TSurface_obj*)bbNullObjectTest((BBObject*)bbt_surf))->_openb3d_openb3dcore_tsurface_no_verts [0])),((BBString*)&_s602)),bbStringFromInt(((struct openb3d_openb3dcore_TSurface_obj*)bbNullObjectTest((BBObject*)bbt_surf))->_openb3d_openb3dcore_tsurface_no_tris [0])));
						bbOnDebugLeaveScope();
					}
				}
				bbOnDebugLeaveScope();
			}
		}
		struct BBDebugStm __stmt_7 = {0xb38e7c8d97adef99, 411, 0};
		bbOnDebugEnterStm(&__stmt_7);
		brl_blitz_DebugLog((BBString*)&_s603);
		struct BBDebugStm __stmt_8 = {0xb38e7c8d97adef99, 413, 0};
		bbOnDebugEnterStm(&__stmt_8);
		if(bbMilliSecs()!=bbt_startMs){
			struct BBDebugScope __scope = {
				BBDEBUGSCOPE_LOCALBLOCK,
				0,
				{
					{
						BBDEBUGDECL_END
					}
				}
			};
			bbOnDebugEnterScope((BBDebugScope *)&__scope);
			struct BBDebugStm __stmt_0 = {0xb38e7c8d97adef99, 413, 0};
			bbOnDebugEnterStm(&__stmt_0);
			brl_blitz_DebugLog(bbStringConcat(bbStringFromFloat(((BBFLOAT)(bbMilliSecs()-bbt_startMs))/1000.0f),((BBString*)&_s604)));
			bbOnDebugLeaveScope();
		}
		bbOnDebugLeaveScope();
	}
	struct BBDebugStm __stmt_37 = {0xb38e7c8d97adef99, 423, 0};
	bbOnDebugEnterStm(&__stmt_37);
	if(!(bbt_hasNorms!=0)){
		BBINT bbt_count_children2=0;
		struct BBDebugScope_1 __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_LOCAL,
					"count_children",
					"i",
					.var_address=&bbt_count_children2
				},
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0xb38e7c8d97adef99, 424, 0};
		bbOnDebugEnterStm(&__stmt_0);
		if(openb3d_openb3dcore_TGlobal3D_Log_OBJ!=0){
			struct BBDebugScope __scope = {
				BBDEBUGSCOPE_LOCALBLOCK,
				0,
				{
					{
						BBDEBUGDECL_END
					}
				}
			};
			bbOnDebugEnterScope((BBDebugScope *)&__scope);
			struct BBDebugStm __stmt_0 = {0xb38e7c8d97adef99, 424, 0};
			bbOnDebugEnterStm(&__stmt_0);
			brl_blitz_DebugLog((BBString*)&_s605);
			bbOnDebugLeaveScope();
		}
		struct BBDebugStm __stmt_1 = {0xb38e7c8d97adef99, 426, 0};
		bbOnDebugEnterStm(&__stmt_1);
		bbt_count_children2=openb3d_openb3dcore_TEntity_CountAllChildren_i_TTEntityi((struct openb3d_openb3dcore_TEntity_obj*)((struct openb3d_openb3dcore_TEntity_obj*)bbObjectDowncast((BBOBJECT)bbt_root,(BBClass*)&openb3d_openb3dcore_TEntity)),0);
		struct BBDebugStm __stmt_2 = {0xb38e7c8d97adef99, 427, 0};
		bbOnDebugEnterStm(&__stmt_2);
		{
			BBINT bbt_child_no2=1;
			BBINT bbt_24=bbt_count_children2;
			for(;(bbt_child_no2<=bbt_24);bbt_child_no2=(bbt_child_no2+1)){
				BBINT bbt_count2=0;
				struct openb3d_openb3dcore_TEntity_obj* bbt_child_ent2=(struct openb3d_openb3dcore_TEntity_obj*)((struct openb3d_openb3dcore_TEntity_obj*)&bbNullObject);
				struct BBDebugScope_3 __scope = {
					BBDEBUGSCOPE_LOCALBLOCK,
					0,
					{
						{
							BBDEBUGDECL_LOCAL,
							"child_no",
							"i",
							.var_address=&bbt_child_no2
						},
						{
							BBDEBUGDECL_LOCAL,
							"count",
							"i",
							.var_address=&bbt_count2
						},
						{
							BBDEBUGDECL_LOCAL,
							"child_ent",
							":TEntity",
							.var_address=&bbt_child_ent2
						},
						{
							BBDEBUGDECL_END
						}
					}
				};
				bbOnDebugEnterScope((BBDebugScope *)&__scope);
				struct BBDebugStm __stmt_0 = {0xb38e7c8d97adef99, 428, 0};
				bbOnDebugEnterStm(&__stmt_0);
				bbt_count2=0;
				struct BBDebugStm __stmt_1 = {0xb38e7c8d97adef99, 429, 0};
				bbOnDebugEnterStm(&__stmt_1);
				bbt_child_ent2=(struct openb3d_openb3dcore_TEntity_obj*)((struct openb3d_openb3dcore_TMesh_obj*)bbNullObjectTest((BBObject*)bbt_root))->clas->m_GetChildFromAll_iviTTEntity((struct openb3d_openb3dcore_TEntity_obj*)bbt_root,bbt_child_no2,(&bbt_count2),(struct openb3d_openb3dcore_TEntity_obj*)&bbNullObject);
				struct BBDebugStm __stmt_2 = {0xb38e7c8d97adef99, 430, 0};
				bbOnDebugEnterStm(&__stmt_2);
				struct openb3d_openb3dcore_TMesh_obj* bbt_25;
				(((struct openb3d_openb3dcore_TMesh_obj*)((struct openb3d_openb3dcore_TMesh_obj*)bbNullObjectTest((BBObject*)(bbt_25 = ((struct openb3d_openb3dcore_TMesh_obj*)bbObjectDowncast((BBOBJECT)bbt_child_ent2,(BBClass*)&openb3d_openb3dcore_TMesh))))))->clas)->m_UpdateNormals((struct openb3d_openb3dcore_TMesh_obj*)bbt_25);
				bbOnDebugLeaveScope();
			}
		}
		bbOnDebugLeaveScope();
	}
	struct BBDebugStm __stmt_38 = {0xb38e7c8d97adef99, 434, 0};
	bbOnDebugEnterStm(&__stmt_38);
	bbOnDebugLeaveScope();
	return (struct openb3d_openb3dcore_TMesh_obj*)bbt_root;
}
BBARRAY openb3d_openb3dcore_TOBJ_ParseFaces_aTTFaceData_S(BBSTRING bbt_data){
	BBARRAY bbt_data1=(&bbEmptyArray);
	BBINT bbt_s=0;
	BBARRAY bbt_fdata=(&bbEmptyArray);
	struct BBDebugScope_4 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"ParseFaces",
		{
			{
				BBDEBUGDECL_LOCAL,
				"data",
				"$",
				.var_address=&bbt_data
			},
			{
				BBDEBUGDECL_LOCAL,
				"data1",
				"[]$",
				.var_address=&bbt_data1
			},
			{
				BBDEBUGDECL_LOCAL,
				"s",
				"i",
				.var_address=&bbt_s
			},
			{
				BBDEBUGDECL_LOCAL,
				"fdata",
				"[]:TFaceData",
				.var_address=&bbt_fdata
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0xb38e7c8d97adef99, 440, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbt_data1=bbStringSplit((BBSTRING)bbt_data,((BBString*)&_s445));
	struct BBDebugStm __stmt_1 = {0xb38e7c8d97adef99, 442, 0};
	bbOnDebugEnterStm(&__stmt_1);
	bbt_s=0;
	struct BBDebugStm __stmt_2 = {0xb38e7c8d97adef99, 443, 0};
	bbOnDebugEnterStm(&__stmt_2);
	bbt_fdata=bbArrayNew1D(":TFaceData", (bbt_data1->scales[0]));
	struct BBDebugStm __stmt_3 = {0xb38e7c8d97adef99, 445, 0};
	bbOnDebugEnterStm(&__stmt_3);
	{
		BBINT bbt_i=0;
		BBINT bbt_=((bbt_data1->scales[0])-1);
		for(;(bbt_i<=bbt_);bbt_i=(bbt_i+1)){
			BBARRAY bbt_D2=(&bbEmptyArray);
			struct BBDebugScope_2 __scope = {
				BBDEBUGSCOPE_LOCALBLOCK,
				0,
				{
					{
						BBDEBUGDECL_LOCAL,
						"i",
						"i",
						.var_address=&bbt_i
					},
					{
						BBDEBUGDECL_LOCAL,
						"D2",
						"[]$",
						.var_address=&bbt_D2
					},
					{
						BBDEBUGDECL_END
					}
				}
			};
			bbOnDebugEnterScope((BBDebugScope *)&__scope);
			struct BBDebugStm __stmt_0 = {0xb38e7c8d97adef99, 446, 0};
			bbOnDebugEnterStm(&__stmt_0);
			if(bbStringEquals(((BBSTRING*)BBARRAYDATAINDEX((bbt_data1),(bbt_data1)->dims,((BBUINT)bbt_i)))[((BBUINT)bbt_i)], ((BBString*)&bbEmptyString))==1){
				struct BBDebugScope __scope = {
					BBDEBUGSCOPE_LOCALBLOCK,
					0,
					{
						{
							BBDEBUGDECL_END
						}
					}
				};
				bbOnDebugEnterScope((BBDebugScope *)&__scope);
				struct BBDebugStm __stmt_0 = {0xb38e7c8d97adef99, 446, 0};
				bbOnDebugEnterStm(&__stmt_0);
				bbOnDebugLeaveScope();
				bbOnDebugLeaveScope();
				continue;
			}
			struct BBDebugStm __stmt_1 = {0xb38e7c8d97adef99, 448, 0};
			bbOnDebugEnterStm(&__stmt_1);
			((struct openb3d_openb3dcore_TFaceData_obj**)BBARRAYDATAINDEX((bbt_fdata),(bbt_fdata)->dims,((BBUINT)bbt_s)))[((BBUINT)bbt_s)]=(struct openb3d_openb3dcore_TFaceData_obj*)(struct openb3d_openb3dcore_TFaceData_obj*)bbObjectAtomicNew((BBClass *)&openb3d_openb3dcore_TFaceData);
			struct BBDebugStm __stmt_2 = {0xb38e7c8d97adef99, 449, 0};
			bbOnDebugEnterStm(&__stmt_2);
			bbt_D2=openb3d_openb3dcore_TOBJ_CustomSplit_aS_SS(((BBSTRING*)BBARRAYDATAINDEX((bbt_data1),(bbt_data1)->dims,((BBUINT)bbt_i)))[((BBUINT)bbt_i)],((BBString*)&_s401));
			struct BBDebugStm __stmt_3 = {0xb38e7c8d97adef99, 453, 0};
			bbOnDebugEnterStm(&__stmt_3);
			if(bbStringEquals(((BBSTRING*)BBARRAYDATAINDEX((bbt_D2),(bbt_D2)->dims,0U))[0U], ((BBString*)&bbEmptyString))!=1){
				struct BBDebugScope __scope = {
					BBDEBUGSCOPE_LOCALBLOCK,
					0,
					{
						{
							BBDEBUGDECL_END
						}
					}
				};
				bbOnDebugEnterScope((BBDebugScope *)&__scope);
				struct BBDebugStm __stmt_0 = {0xb38e7c8d97adef99, 453, 0};
				bbOnDebugEnterStm(&__stmt_0);
				((struct openb3d_openb3dcore_TFaceData_obj*)bbNullObjectTest((BBObject*)((struct openb3d_openb3dcore_TFaceData_obj**)BBARRAYDATAINDEX((bbt_fdata),(bbt_fdata)->dims,((BBUINT)bbt_s)))[((BBUINT)bbt_s)]))->_openb3d_openb3dcore_tfacedata_vi =bbStringToInt(((BBSTRING*)BBARRAYDATAINDEX((bbt_D2),(bbt_D2)->dims,0U))[0U]);
				bbOnDebugLeaveScope();
			}
			struct BBDebugStm __stmt_4 = {0xb38e7c8d97adef99, 454, 0};
			bbOnDebugEnterStm(&__stmt_4);
			if(bbStringEquals(((BBSTRING*)BBARRAYDATAINDEX((bbt_D2),(bbt_D2)->dims,1U))[1U], ((BBString*)&bbEmptyString))!=1){
				struct BBDebugScope __scope = {
					BBDEBUGSCOPE_LOCALBLOCK,
					0,
					{
						{
							BBDEBUGDECL_END
						}
					}
				};
				bbOnDebugEnterScope((BBDebugScope *)&__scope);
				struct BBDebugStm __stmt_0 = {0xb38e7c8d97adef99, 454, 0};
				bbOnDebugEnterStm(&__stmt_0);
				((struct openb3d_openb3dcore_TFaceData_obj*)bbNullObjectTest((BBObject*)((struct openb3d_openb3dcore_TFaceData_obj**)BBARRAYDATAINDEX((bbt_fdata),(bbt_fdata)->dims,((BBUINT)bbt_s)))[((BBUINT)bbt_s)]))->_openb3d_openb3dcore_tfacedata_ti =bbStringToInt(((BBSTRING*)BBARRAYDATAINDEX((bbt_D2),(bbt_D2)->dims,1U))[1U]);
				bbOnDebugLeaveScope();
			}
			struct BBDebugStm __stmt_5 = {0xb38e7c8d97adef99, 455, 0};
			bbOnDebugEnterStm(&__stmt_5);
			if(bbStringEquals(((BBSTRING*)BBARRAYDATAINDEX((bbt_D2),(bbt_D2)->dims,2U))[2U], ((BBString*)&bbEmptyString))!=1){
				struct BBDebugScope __scope = {
					BBDEBUGSCOPE_LOCALBLOCK,
					0,
					{
						{
							BBDEBUGDECL_END
						}
					}
				};
				bbOnDebugEnterScope((BBDebugScope *)&__scope);
				struct BBDebugStm __stmt_0 = {0xb38e7c8d97adef99, 455, 0};
				bbOnDebugEnterStm(&__stmt_0);
				((struct openb3d_openb3dcore_TFaceData_obj*)bbNullObjectTest((BBObject*)((struct openb3d_openb3dcore_TFaceData_obj**)BBARRAYDATAINDEX((bbt_fdata),(bbt_fdata)->dims,((BBUINT)bbt_s)))[((BBUINT)bbt_s)]))->_openb3d_openb3dcore_tfacedata_ni =bbStringToInt(((BBSTRING*)BBARRAYDATAINDEX((bbt_D2),(bbt_D2)->dims,2U))[2U]);
				bbOnDebugLeaveScope();
			}
			struct BBDebugStm __stmt_6 = {0xb38e7c8d97adef99, 457, 0};
			bbOnDebugEnterStm(&__stmt_6);
			if(((struct openb3d_openb3dcore_TFaceData_obj*)bbNullObjectTest((BBObject*)((struct openb3d_openb3dcore_TFaceData_obj**)BBARRAYDATAINDEX((bbt_fdata),(bbt_fdata)->dims,((BBUINT)bbt_s)))[((BBUINT)bbt_s)]))->_openb3d_openb3dcore_tfacedata_vi <0){
				struct BBDebugScope __scope = {
					BBDEBUGSCOPE_LOCALBLOCK,
					0,
					{
						{
							BBDEBUGDECL_END
						}
					}
				};
				bbOnDebugEnterScope((BBDebugScope *)&__scope);
				struct BBDebugStm __stmt_0 = {0xb38e7c8d97adef99, 457, 0};
				bbOnDebugEnterStm(&__stmt_0);
				((struct openb3d_openb3dcore_TFaceData_obj*)bbNullObjectTest((BBObject*)((struct openb3d_openb3dcore_TFaceData_obj**)BBARRAYDATAINDEX((bbt_fdata),(bbt_fdata)->dims,((BBUINT)bbt_s)))[((BBUINT)bbt_s)]))->_openb3d_openb3dcore_tfacedata_vi =0;
				bbOnDebugLeaveScope();
			}
			struct BBDebugStm __stmt_7 = {0xb38e7c8d97adef99, 458, 0};
			bbOnDebugEnterStm(&__stmt_7);
			if(((struct openb3d_openb3dcore_TFaceData_obj*)bbNullObjectTest((BBObject*)((struct openb3d_openb3dcore_TFaceData_obj**)BBARRAYDATAINDEX((bbt_fdata),(bbt_fdata)->dims,((BBUINT)bbt_s)))[((BBUINT)bbt_s)]))->_openb3d_openb3dcore_tfacedata_ti <0){
				struct BBDebugScope __scope = {
					BBDEBUGSCOPE_LOCALBLOCK,
					0,
					{
						{
							BBDEBUGDECL_END
						}
					}
				};
				bbOnDebugEnterScope((BBDebugScope *)&__scope);
				struct BBDebugStm __stmt_0 = {0xb38e7c8d97adef99, 458, 0};
				bbOnDebugEnterStm(&__stmt_0);
				((struct openb3d_openb3dcore_TFaceData_obj*)bbNullObjectTest((BBObject*)((struct openb3d_openb3dcore_TFaceData_obj**)BBARRAYDATAINDEX((bbt_fdata),(bbt_fdata)->dims,((BBUINT)bbt_s)))[((BBUINT)bbt_s)]))->_openb3d_openb3dcore_tfacedata_ti =0;
				bbOnDebugLeaveScope();
			}
			struct BBDebugStm __stmt_8 = {0xb38e7c8d97adef99, 459, 0};
			bbOnDebugEnterStm(&__stmt_8);
			if(((struct openb3d_openb3dcore_TFaceData_obj*)bbNullObjectTest((BBObject*)((struct openb3d_openb3dcore_TFaceData_obj**)BBARRAYDATAINDEX((bbt_fdata),(bbt_fdata)->dims,((BBUINT)bbt_s)))[((BBUINT)bbt_s)]))->_openb3d_openb3dcore_tfacedata_ni <0){
				struct BBDebugScope __scope = {
					BBDEBUGSCOPE_LOCALBLOCK,
					0,
					{
						{
							BBDEBUGDECL_END
						}
					}
				};
				bbOnDebugEnterScope((BBDebugScope *)&__scope);
				struct BBDebugStm __stmt_0 = {0xb38e7c8d97adef99, 459, 0};
				bbOnDebugEnterStm(&__stmt_0);
				((struct openb3d_openb3dcore_TFaceData_obj*)bbNullObjectTest((BBObject*)((struct openb3d_openb3dcore_TFaceData_obj**)BBARRAYDATAINDEX((bbt_fdata),(bbt_fdata)->dims,((BBUINT)bbt_s)))[((BBUINT)bbt_s)]))->_openb3d_openb3dcore_tfacedata_ni =0;
				bbOnDebugLeaveScope();
			}
			struct BBDebugStm __stmt_9 = {0xb38e7c8d97adef99, 461, 0};
			bbOnDebugEnterStm(&__stmt_9);
			bbt_s+=1;
			bbOnDebugLeaveScope();
		}
	}
	struct BBDebugStm __stmt_4 = {0xb38e7c8d97adef99, 464, 0};
	bbOnDebugEnterStm(&__stmt_4);
	bbt_fdata=bbArraySlice(":TFaceData",bbt_fdata,0,bbt_s);
	struct BBDebugStm __stmt_5 = {0xb38e7c8d97adef99, 465, 0};
	bbOnDebugEnterStm(&__stmt_5);
	bbOnDebugLeaveScope();
	return bbt_fdata;
}
BBARRAY openb3d_openb3dcore_TOBJ_CustomSplit_aS_SS(BBSTRING bbt_st,BBSTRING bbt_delim){
	BBARRAY bbt_out=(&bbEmptyArray);
	BBINT bbt_n=0;
	BBINT bbt_nn=0;
	BBINT bbt_reset=0;
	BBSTRING bbt_s=(&bbEmptyString);
	struct BBDebugScope_7 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"CustomSplit",
		{
			{
				BBDEBUGDECL_LOCAL,
				"st",
				"$",
				.var_address=&bbt_st
			},
			{
				BBDEBUGDECL_LOCAL,
				"delim",
				"$",
				.var_address=&bbt_delim
			},
			{
				BBDEBUGDECL_LOCAL,
				"out",
				"[]$",
				.var_address=&bbt_out
			},
			{
				BBDEBUGDECL_LOCAL,
				"n",
				"i",
				.var_address=&bbt_n
			},
			{
				BBDEBUGDECL_LOCAL,
				"nn",
				"i",
				.var_address=&bbt_nn
			},
			{
				BBDEBUGDECL_LOCAL,
				"reset",
				"i",
				.var_address=&bbt_reset
			},
			{
				BBDEBUGDECL_LOCAL,
				"s",
				"$",
				.var_address=&bbt_s
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0xb38e7c8d97adef99, 472, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbt_out=bbArrayNew1D("$", 3);
	struct BBDebugStm __stmt_1 = {0xb38e7c8d97adef99, 473, 0};
	bbOnDebugEnterStm(&__stmt_1);
	if((bbt_st->length)<1){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0xb38e7c8d97adef99, 473, 0};
		bbOnDebugEnterStm(&__stmt_0);
		BBSTRING bbt_[]={((BBString*)&bbEmptyString)};
		BBARRAY bbt_2 = bbArrayFromData("$",1,bbt_);
		bbOnDebugLeaveScope();
		bbOnDebugLeaveScope();
		return bbt_2;
	}
	struct BBDebugStm __stmt_2 = {0xb38e7c8d97adef99, 475, 0};
	bbOnDebugEnterStm(&__stmt_2);
	bbt_n=0;
	struct BBDebugStm __stmt_3 = {0xb38e7c8d97adef99, 475, 0};
	bbOnDebugEnterStm(&__stmt_3);
	bbt_nn=0;
	struct BBDebugStm __stmt_4 = {0xb38e7c8d97adef99, 476, 0};
	bbOnDebugEnterStm(&__stmt_4);
	bbt_reset=1;
	struct BBDebugStm __stmt_5 = {0xb38e7c8d97adef99, 477, 0};
	bbOnDebugEnterStm(&__stmt_5);
	bbt_s=((BBString*)&bbEmptyString);
	struct BBDebugStm __stmt_6 = {0xb38e7c8d97adef99, 479, 0};
	bbOnDebugEnterStm(&__stmt_6);
	{
		BBINT bbt_i=0;
		BBINT bbt_3=((bbt_st->length)-1);
		for(;(bbt_i<=bbt_3);bbt_i=(bbt_i+1)){
			struct BBDebugScope_1 __scope = {
				BBDEBUGSCOPE_LOCALBLOCK,
				0,
				{
					{
						BBDEBUGDECL_LOCAL,
						"i",
						"i",
						.var_address=&bbt_i
					},
					{
						BBDEBUGDECL_END
					}
				}
			};
			bbOnDebugEnterScope((BBDebugScope *)&__scope);
			struct BBDebugStm __stmt_0 = {0xb38e7c8d97adef99, 480, 0};
			bbOnDebugEnterStm(&__stmt_0);
			if(bbt_reset!=0){
				struct BBDebugScope __scope = {
					BBDEBUGSCOPE_LOCALBLOCK,
					0,
					{
						{
							BBDEBUGDECL_END
						}
					}
				};
				bbOnDebugEnterScope((BBDebugScope *)&__scope);
				struct BBDebugStm __stmt_0 = {0xb38e7c8d97adef99, 481, 0};
				bbOnDebugEnterStm(&__stmt_0);
				((BBSTRING*)BBARRAYDATAINDEX((bbt_out),(bbt_out)->dims,((BBUINT)bbt_n)))[((BBUINT)bbt_n)]=((BBString*)&_s606);
				struct BBDebugStm __stmt_1 = {0xb38e7c8d97adef99, 482, 0};
				bbOnDebugEnterStm(&__stmt_1);
				bbt_reset=0;
				bbOnDebugLeaveScope();
			}
			struct BBDebugStm __stmt_1 = {0xb38e7c8d97adef99, 484, 0};
			bbOnDebugEnterStm(&__stmt_1);
			if((bbt_st)->buf[((BBUINT)bbt_i)]==(bbt_delim)->buf[0U]){
				BBINT bbt_ii=0;
				struct BBDebugScope_1 __scope = {
					BBDEBUGSCOPE_LOCALBLOCK,
					0,
					{
						{
							BBDEBUGDECL_LOCAL,
							"ii",
							"i",
							.var_address=&bbt_ii
						},
						{
							BBDEBUGDECL_END
						}
					}
				};
				bbOnDebugEnterScope((BBDebugScope *)&__scope);
				struct BBDebugStm __stmt_0 = {0xb38e7c8d97adef99, 485, 0};
				bbOnDebugEnterStm(&__stmt_0);
				bbt_ii=(bbt_i+bbt_nn);
				struct BBDebugStm __stmt_1 = {0xb38e7c8d97adef99, 486, 0};
				bbOnDebugEnterStm(&__stmt_1);
				bbt_s=bbStringSlice(bbt_st,bbt_i,bbt_ii);
				struct BBDebugStm __stmt_2 = {0xb38e7c8d97adef99, 489, 0};
				bbOnDebugEnterStm(&__stmt_2);
				bbt_n+=1;
				struct BBDebugStm __stmt_3 = {0xb38e7c8d97adef99, 490, 0};
				bbOnDebugEnterStm(&__stmt_3);
				bbt_reset=1;
				struct BBDebugStm __stmt_4 = {0xb38e7c8d97adef99, 491, 0};
				bbOnDebugEnterStm(&__stmt_4);
				bbt_nn=0;
				bbOnDebugLeaveScope();
			}else{
				struct BBDebugScope __scope = {
					BBDEBUGSCOPE_LOCALBLOCK,
					0,
					{
						{
							BBDEBUGDECL_END
						}
					}
				};
				bbOnDebugEnterScope((BBDebugScope *)&__scope);
				struct BBDebugStm __stmt_0 = {0xb38e7c8d97adef99, 494, 0};
				bbOnDebugEnterStm(&__stmt_0);
				((BBSTRING*)BBARRAYDATAINDEX((bbt_out),(bbt_out)->dims,((BBUINT)bbt_n)))[((BBUINT)bbt_n)]=bbStringConcat(((BBSTRING*)BBARRAYDATAINDEX((bbt_out),(bbt_out)->dims,((BBUINT)bbt_n)))[((BBUINT)bbt_n)],bbStringFromChar((bbt_st)->buf[((BBUINT)bbt_i)]));
				struct BBDebugStm __stmt_1 = {0xb38e7c8d97adef99, 495, 0};
				bbOnDebugEnterStm(&__stmt_1);
				bbt_nn+=1;
				bbOnDebugLeaveScope();
			}
			bbOnDebugLeaveScope();
		}
	}
	struct BBDebugStm __stmt_7 = {0xb38e7c8d97adef99, 500, 0};
	bbOnDebugEnterStm(&__stmt_7);
	bbOnDebugLeaveScope();
	return bbt_out;
}
BBARRAY openb3d_openb3dcore_TOBJ_ParseMTLLib_aTTObjMtl_SS(BBSTRING bbt_url,BBSTRING bbt_mtllib_string){
	BBARRAY bbt_MatLib=(&bbEmptyArray);
	struct openb3d_openb3dcore_TOBJ_obj* bbt_stream=(struct openb3d_openb3dcore_TOBJ_obj*)((struct openb3d_openb3dcore_TOBJ_obj*)&bbNullObject);
	struct brl_stream_TStream_obj* bbt_file=(struct brl_stream_TStream_obj*)((struct brl_stream_TStream_obj*)&bbNullObject);
	BBINT bbt_CMI=0;
	BBINT bbt_is_brush=0;
	struct BBDebugScope_7 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"ParseMTLLib",
		{
			{
				BBDEBUGDECL_LOCAL,
				"url",
				"$",
				.var_address=&bbt_url
			},
			{
				BBDEBUGDECL_LOCAL,
				"mtllib_string",
				"$",
				.var_address=&bbt_mtllib_string
			},
			{
				BBDEBUGDECL_LOCAL,
				"MatLib",
				"[]:TObjMtl",
				.var_address=&bbt_MatLib
			},
			{
				BBDEBUGDECL_LOCAL,
				"stream",
				":TOBJ",
				.var_address=&bbt_stream
			},
			{
				BBDEBUGDECL_LOCAL,
				"file",
				":TStream",
				.var_address=&bbt_file
			},
			{
				BBDEBUGDECL_LOCAL,
				"CMI",
				"i",
				.var_address=&bbt_CMI
			},
			{
				BBDEBUGDECL_LOCAL,
				"is_brush",
				"i",
				.var_address=&bbt_is_brush
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0xb38e7c8d97adef99, 506, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbt_MatLib=bbArrayNew1D(":TObjMtl", 0);
	struct BBDebugStm __stmt_1 = {0xb38e7c8d97adef99, 507, 0};
	bbOnDebugEnterStm(&__stmt_1);
	bbt_stream=(struct openb3d_openb3dcore_TOBJ_obj*)(struct openb3d_openb3dcore_TOBJ_obj*)bbObjectAtomicNew((BBClass *)&openb3d_openb3dcore_TOBJ);
	struct BBDebugStm __stmt_2 = {0xb38e7c8d97adef99, 510, 0};
	bbOnDebugEnterStm(&__stmt_2);
	bbt_file=(struct brl_stream_TStream_obj*)brl_endianstream_LittleEndianStream((struct brl_stream_TStream_obj*)brl_filesystem_ReadFile((BBOBJECT)bbt_url));
	struct BBDebugStm __stmt_3 = {0xb38e7c8d97adef99, 511, 0};
	bbOnDebugEnterStm(&__stmt_3);
	if(((BBOBJECT)bbt_file)==&bbNullObject){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0xb38e7c8d97adef99, 512, 0};
		bbOnDebugEnterStm(&__stmt_0);
		brl_standardio_Print(bbStringConcat(((BBString*)&_s569),bbt_url));
		struct BBDebugStm __stmt_1 = {0xb38e7c8d97adef99, 513, 0};
		bbOnDebugEnterStm(&__stmt_1);
		bbOnDebugLeaveScope();
		bbOnDebugLeaveScope();
		return (&bbEmptyArray);
	}
	struct BBDebugStm __stmt_4 = {0xb38e7c8d97adef99, 516, 0};
	bbOnDebugEnterStm(&__stmt_4);
	bbt_CMI=-1;
	struct BBDebugStm __stmt_5 = {0xb38e7c8d97adef99, 517, 0};
	bbOnDebugEnterStm(&__stmt_5);
	bbt_is_brush=0;
	struct BBDebugStm __stmt_6 = {0xb38e7c8d97adef99, 519, 0};
	bbOnDebugEnterStm(&__stmt_6);
	while(brl_stream_StreamPos((struct brl_stream_TStream_obj*)bbt_file)<brl_stream_StreamSize((struct brl_stream_TStream_obj*)bbt_file)){
		BBSTRING bbt_curline=(&bbEmptyString);
		BBSTRING bbt_tag=(&bbEmptyString);
		struct BBDebugScope_2 __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_LOCAL,
					"curline",
					"$",
					.var_address=&bbt_curline
				},
				{
					BBDEBUGDECL_LOCAL,
					"tag",
					"$",
					.var_address=&bbt_tag
				},
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0xb38e7c8d97adef99, 521, 0};
		bbOnDebugEnterStm(&__stmt_0);
		bbt_curline=brl_stream_ReadLine2((struct brl_stream_TStream_obj*)bbt_file);
		struct BBDebugStm __stmt_1 = {0xb38e7c8d97adef99, 522, 0};
		bbOnDebugEnterStm(&__stmt_1);
		bbt_tag=bbStringToLower((BBSTRING)bbStringSlice(bbt_curline,0,9));
		struct BBDebugStm __stmt_2 = {0xb38e7c8d97adef99, 525, 0};
		bbOnDebugEnterStm(&__stmt_2);
		if(bbStringEquals(bbStringSlice(bbt_tag,0,7), ((BBString*)&_s607))==1){
			struct BBDebugScope __scope = {
				BBDEBUGSCOPE_LOCALBLOCK,
				0,
				{
					{
						BBDEBUGDECL_END
					}
				}
			};
			bbOnDebugEnterScope((BBDebugScope *)&__scope);
			struct BBDebugStm __stmt_0 = {0xb38e7c8d97adef99, 526, 0};
			bbOnDebugEnterStm(&__stmt_0);
			bbt_MatLib=bbArraySlice(":TObjMtl",bbt_MatLib,0,((bbt_MatLib->scales[0])+1));
			struct BBDebugStm __stmt_1 = {0xb38e7c8d97adef99, 527, 0};
			bbOnDebugEnterStm(&__stmt_1);
			bbt_CMI=((bbt_MatLib->scales[0])-1);
			struct BBDebugStm __stmt_2 = {0xb38e7c8d97adef99, 529, 0};
			bbOnDebugEnterStm(&__stmt_2);
			((struct openb3d_openb3dcore_TObjMtl_obj**)BBARRAYDATAINDEX((bbt_MatLib),(bbt_MatLib)->dims,((BBUINT)bbt_CMI)))[((BBUINT)bbt_CMI)]=(struct openb3d_openb3dcore_TObjMtl_obj*)(struct openb3d_openb3dcore_TObjMtl_obj*)bbObjectNew((BBClass *)&openb3d_openb3dcore_TObjMtl);
			struct BBDebugStm __stmt_3 = {0xb38e7c8d97adef99, 530, 0};
			bbOnDebugEnterStm(&__stmt_3);
			((struct openb3d_openb3dcore_TObjMtl_obj*)bbNullObjectTest((BBObject*)((struct openb3d_openb3dcore_TObjMtl_obj**)BBARRAYDATAINDEX((bbt_MatLib),(bbt_MatLib)->dims,((BBUINT)bbt_CMI)))[((BBUINT)bbt_CMI)]))->_openb3d_openb3dcore_tobjmtl_name =bbStringTrim((BBSTRING)bbStringSlice(bbt_curline,7,(bbt_curline)->length));
			struct BBDebugStm __stmt_4 = {0xb38e7c8d97adef99, 531, 0};
			bbOnDebugEnterStm(&__stmt_4);
			((struct openb3d_openb3dcore_TObjMtl_obj*)bbNullObjectTest((BBObject*)((struct openb3d_openb3dcore_TObjMtl_obj**)BBARRAYDATAINDEX((bbt_MatLib),(bbt_MatLib)->dims,((BBUINT)bbt_CMI)))[((BBUINT)bbt_CMI)]))->_openb3d_openb3dcore_tobjmtl_brush =(struct openb3d_openb3dcore_TBrush_obj*)openb3d_openb3dcore_CreateBrush(255.000000f,255.000000f,255.000000f);
			struct BBDebugStm __stmt_5 = {0xb38e7c8d97adef99, 532, 0};
			bbOnDebugEnterStm(&__stmt_5);
			struct openb3d_openb3dcore_TBrush_obj* bbt_;
			(((struct openb3d_openb3dcore_TBrush_obj*)((struct openb3d_openb3dcore_TBrush_obj*)bbNullObjectTest((BBObject*)(bbt_ = ((struct openb3d_openb3dcore_TObjMtl_obj*)bbNullObjectTest((BBObject*)((struct openb3d_openb3dcore_TObjMtl_obj**)BBARRAYDATAINDEX((bbt_MatLib),(bbt_MatLib)->dims,((BBUINT)bbt_CMI)))[((BBUINT)bbt_CMI)]))->_openb3d_openb3dcore_tobjmtl_brush ))))->clas)->m_BrushFX_i((struct openb3d_openb3dcore_TBrush_obj*)bbt_,0);
			struct BBDebugStm __stmt_6 = {0xb38e7c8d97adef99, 533, 0};
			bbOnDebugEnterStm(&__stmt_6);
			struct openb3d_openb3dcore_TBrush_obj* bbt_2;
			(((struct openb3d_openb3dcore_TBrush_obj*)((struct openb3d_openb3dcore_TBrush_obj*)bbNullObjectTest((BBObject*)(bbt_2 = ((struct openb3d_openb3dcore_TObjMtl_obj*)bbNullObjectTest((BBObject*)((struct openb3d_openb3dcore_TObjMtl_obj**)BBARRAYDATAINDEX((bbt_MatLib),(bbt_MatLib)->dims,((BBUINT)bbt_CMI)))[((BBUINT)bbt_CMI)]))->_openb3d_openb3dcore_tobjmtl_brush ))))->clas)->m_SetString_pbS((struct openb3d_openb3dcore_TBrush_obj*)bbt_2,((struct openb3d_openb3dcore_TBrush_obj*)bbNullObjectTest((BBObject*)((struct openb3d_openb3dcore_TObjMtl_obj*)bbNullObjectTest((BBObject*)((struct openb3d_openb3dcore_TObjMtl_obj**)BBARRAYDATAINDEX((bbt_MatLib),(bbt_MatLib)->dims,((BBUINT)bbt_CMI)))[((BBUINT)bbt_CMI)]))->_openb3d_openb3dcore_tobjmtl_brush ))->_openb3d_openb3dcore_tbrush_name ,((struct openb3d_openb3dcore_TObjMtl_obj*)bbNullObjectTest((BBObject*)((struct openb3d_openb3dcore_TObjMtl_obj**)BBARRAYDATAINDEX((bbt_MatLib),(bbt_MatLib)->dims,((BBUINT)bbt_CMI)))[((BBUINT)bbt_CMI)]))->_openb3d_openb3dcore_tobjmtl_name );
			struct BBDebugStm __stmt_7 = {0xb38e7c8d97adef99, 534, 0};
			bbOnDebugEnterStm(&__stmt_7);
			bbt_is_brush=1;
			struct BBDebugStm __stmt_8 = {0xb38e7c8d97adef99, 536, 0};
			bbOnDebugEnterStm(&__stmt_8);
			if(openb3d_openb3dcore_TGlobal3D_Log_OBJ!=0){
				struct BBDebugScope __scope = {
					BBDEBUGSCOPE_LOCALBLOCK,
					0,
					{
						{
							BBDEBUGDECL_END
						}
					}
				};
				bbOnDebugEnterScope((BBDebugScope *)&__scope);
				struct BBDebugStm __stmt_0 = {0xb38e7c8d97adef99, 536, 0};
				bbOnDebugEnterStm(&__stmt_0);
				brl_blitz_DebugLog(bbStringConcat(((BBString*)&_s608),((struct openb3d_openb3dcore_TObjMtl_obj*)bbNullObjectTest((BBObject*)((struct openb3d_openb3dcore_TObjMtl_obj**)BBARRAYDATAINDEX((bbt_MatLib),(bbt_MatLib)->dims,((BBUINT)bbt_CMI)))[((BBUINT)bbt_CMI)]))->_openb3d_openb3dcore_tobjmtl_name ));
				bbOnDebugLeaveScope();
			}
			bbOnDebugLeaveScope();
		}
		struct BBDebugStm __stmt_3 = {0xb38e7c8d97adef99, 540, 0};
		bbOnDebugEnterStm(&__stmt_3);
		if(bbStringEquals(bbStringSlice(bbt_tag,0,3), ((BBString*)&_s609))==1 && (bbt_is_brush!=0)){
			BBSTRING bbt_data=(&bbEmptyString);
			BBARRAY bbt_f=(&bbEmptyArray);
			BBINT bbt_comp=0;
			BBARRAY bbt_values=(&bbEmptyArray);
			struct BBDebugScope_4 __scope = {
				BBDEBUGSCOPE_LOCALBLOCK,
				0,
				{
					{
						BBDEBUGDECL_LOCAL,
						"data",
						"$",
						.var_address=&bbt_data
					},
					{
						BBDEBUGDECL_LOCAL,
						"f",
						"[]f",
						.var_address=&bbt_f
					},
					{
						BBDEBUGDECL_LOCAL,
						"comp",
						"i",
						.var_address=&bbt_comp
					},
					{
						BBDEBUGDECL_LOCAL,
						"values",
						"[]$",
						.var_address=&bbt_values
					},
					{
						BBDEBUGDECL_END
					}
				}
			};
			bbOnDebugEnterScope((BBDebugScope *)&__scope);
			struct BBDebugStm __stmt_0 = {0xb38e7c8d97adef99, 542, 0};
			bbOnDebugEnterStm(&__stmt_0);
			bbt_data=bbStringTrim((BBSTRING)bbStringSlice(bbt_curline,3,(bbt_curline)->length));
			struct BBDebugStm __stmt_1 = {0xb38e7c8d97adef99, 543, 0};
			bbOnDebugEnterStm(&__stmt_1);
			bbt_f=bbArrayNew1D("f", 3);
			struct BBDebugStm __stmt_2 = {0xb38e7c8d97adef99, 544, 0};
			bbOnDebugEnterStm(&__stmt_2);
			bbt_comp=0;
			struct BBDebugStm __stmt_3 = {0xb38e7c8d97adef99, 544, 0};
			bbOnDebugEnterStm(&__stmt_3);
			bbt_values=bbStringSplit((BBSTRING)bbt_data,((BBString*)&_s445));
			struct BBDebugStm __stmt_4 = {0xb38e7c8d97adef99, 546, 0};
			bbOnDebugEnterStm(&__stmt_4);
			{
				BBINT bbt_i=0;
				BBINT bbt_3=((bbt_values->scales[0])-1);
				for(;(bbt_i<=bbt_3);bbt_i=(bbt_i+1)){
					struct BBDebugScope_1 __scope = {
						BBDEBUGSCOPE_LOCALBLOCK,
						0,
						{
							{
								BBDEBUGDECL_LOCAL,
								"i",
								"i",
								.var_address=&bbt_i
							},
							{
								BBDEBUGDECL_END
							}
						}
					};
					bbOnDebugEnterScope((BBDebugScope *)&__scope);
					struct BBDebugStm __stmt_0 = {0xb38e7c8d97adef99, 547, 0};
					bbOnDebugEnterStm(&__stmt_0);
					if((((BBSTRING*)BBARRAYDATAINDEX((bbt_values),(bbt_values)->dims,((BBUINT)bbt_i)))[((BBUINT)bbt_i)]->length)>0){
						struct BBDebugScope __scope = {
							BBDEBUGSCOPE_LOCALBLOCK,
							0,
							{
								{
									BBDEBUGDECL_END
								}
							}
						};
						bbOnDebugEnterScope((BBDebugScope *)&__scope);
						struct BBDebugStm __stmt_0 = {0xb38e7c8d97adef99, 548, 0};
						bbOnDebugEnterStm(&__stmt_0);
						((BBSTRING*)BBARRAYDATAINDEX((bbt_values),(bbt_values)->dims,((BBUINT)bbt_comp)))[((BBUINT)bbt_comp)]=((BBSTRING*)BBARRAYDATAINDEX((bbt_values),(bbt_values)->dims,((BBUINT)bbt_i)))[((BBUINT)bbt_i)];
						struct BBDebugStm __stmt_1 = {0xb38e7c8d97adef99, 549, 0};
						bbOnDebugEnterStm(&__stmt_1);
						bbt_comp+=1;
						bbOnDebugLeaveScope();
					}
					bbOnDebugLeaveScope();
				}
			}
			struct BBDebugStm __stmt_5 = {0xb38e7c8d97adef99, 553, 0};
			bbOnDebugEnterStm(&__stmt_5);
			((BBFLOAT*)BBARRAYDATAINDEX((bbt_f),(bbt_f)->dims,0U))[0U]=bbStringToFloat(((BBSTRING*)BBARRAYDATAINDEX((bbt_values),(bbt_values)->dims,0U))[0U]);
			struct BBDebugStm __stmt_6 = {0xb38e7c8d97adef99, 554, 0};
			bbOnDebugEnterStm(&__stmt_6);
			((BBFLOAT*)BBARRAYDATAINDEX((bbt_f),(bbt_f)->dims,1U))[1U]=bbStringToFloat(((BBSTRING*)BBARRAYDATAINDEX((bbt_values),(bbt_values)->dims,1U))[1U]);
			struct BBDebugStm __stmt_7 = {0xb38e7c8d97adef99, 555, 0};
			bbOnDebugEnterStm(&__stmt_7);
			((BBFLOAT*)BBARRAYDATAINDEX((bbt_f),(bbt_f)->dims,2U))[2U]=bbStringToFloat(((BBSTRING*)BBARRAYDATAINDEX((bbt_values),(bbt_values)->dims,2U))[2U]);
			struct BBDebugStm __stmt_8 = {0xb38e7c8d97adef99, 559, 0};
			bbOnDebugEnterStm(&__stmt_8);
			struct openb3d_openb3dcore_TBrush_obj* bbt_4;
			(((struct openb3d_openb3dcore_TBrush_obj*)((struct openb3d_openb3dcore_TBrush_obj*)bbNullObjectTest((BBObject*)(bbt_4 = ((struct openb3d_openb3dcore_TObjMtl_obj*)bbNullObjectTest((BBObject*)((struct openb3d_openb3dcore_TObjMtl_obj**)BBARRAYDATAINDEX((bbt_MatLib),(bbt_MatLib)->dims,((BBUINT)bbt_CMI)))[((BBUINT)bbt_CMI)]))->_openb3d_openb3dcore_tobjmtl_brush ))))->clas)->m_BrushColor_fff((struct openb3d_openb3dcore_TBrush_obj*)bbt_4,(((BBFLOAT*)BBARRAYDATAINDEX((bbt_f),(bbt_f)->dims,0U))[0U]*255.000000f),(((BBFLOAT*)BBARRAYDATAINDEX((bbt_f),(bbt_f)->dims,1U))[1U]*255.000000f),(((BBFLOAT*)BBARRAYDATAINDEX((bbt_f),(bbt_f)->dims,2U))[2U]*255.000000f));
			struct BBDebugStm __stmt_9 = {0xb38e7c8d97adef99, 560, 0};
			bbOnDebugEnterStm(&__stmt_9);
			if(openb3d_openb3dcore_TGlobal3D_Log_OBJ!=0){
				struct BBDebugScope __scope = {
					BBDEBUGSCOPE_LOCALBLOCK,
					0,
					{
						{
							BBDEBUGDECL_END
						}
					}
				};
				bbOnDebugEnterScope((BBDebugScope *)&__scope);
				struct BBDebugStm __stmt_0 = {0xb38e7c8d97adef99, 560, 0};
				bbOnDebugEnterStm(&__stmt_0);
				brl_blitz_DebugLog(bbStringConcat(bbStringConcat(bbStringConcat(bbStringConcat(bbStringConcat(((BBString*)&_s610),bbStringFromFloat(((BBFLOAT*)BBARRAYDATAINDEX((bbt_f),(bbt_f)->dims,0U))[0U]*255.000000f)),((BBString*)&_s544)),bbStringFromFloat(((BBFLOAT*)BBARRAYDATAINDEX((bbt_f),(bbt_f)->dims,1U))[1U]*255.000000f)),((BBString*)&_s544)),bbStringFromFloat(((BBFLOAT*)BBARRAYDATAINDEX((bbt_f),(bbt_f)->dims,2U))[2U]*255.000000f)));
				bbOnDebugLeaveScope();
			}
			bbOnDebugLeaveScope();
		}
		struct BBDebugStm __stmt_4 = {0xb38e7c8d97adef99, 564, 0};
		bbOnDebugEnterStm(&__stmt_4);
		if(bbStringEquals(bbStringSlice(bbt_tag,0,2), ((BBString*)&_s611))==1 && (bbt_is_brush!=0)){
			struct BBDebugScope __scope = {
				BBDEBUGSCOPE_LOCALBLOCK,
				0,
				{
					{
						BBDEBUGDECL_END
					}
				}
			};
			bbOnDebugEnterScope((BBDebugScope *)&__scope);
			struct BBDebugStm __stmt_0 = {0xb38e7c8d97adef99, 565, 0};
			bbOnDebugEnterStm(&__stmt_0);
			struct openb3d_openb3dcore_TBrush_obj* bbt_5;
			(((struct openb3d_openb3dcore_TBrush_obj*)((struct openb3d_openb3dcore_TBrush_obj*)bbNullObjectTest((BBObject*)(bbt_5 = ((struct openb3d_openb3dcore_TObjMtl_obj*)bbNullObjectTest((BBObject*)((struct openb3d_openb3dcore_TObjMtl_obj**)BBARRAYDATAINDEX((bbt_MatLib),(bbt_MatLib)->dims,((BBUINT)bbt_CMI)))[((BBUINT)bbt_CMI)]))->_openb3d_openb3dcore_tobjmtl_brush ))))->clas)->m_BrushAlpha_f((struct openb3d_openb3dcore_TBrush_obj*)bbt_5,bbStringToFloat(bbStringSlice(bbt_curline,2,(bbt_curline)->length)));
			struct BBDebugStm __stmt_1 = {0xb38e7c8d97adef99, 566, 0};
			bbOnDebugEnterStm(&__stmt_1);
			if(openb3d_openb3dcore_TGlobal3D_Log_OBJ!=0){
				struct BBDebugScope __scope = {
					BBDEBUGSCOPE_LOCALBLOCK,
					0,
					{
						{
							BBDEBUGDECL_END
						}
					}
				};
				bbOnDebugEnterScope((BBDebugScope *)&__scope);
				struct BBDebugStm __stmt_0 = {0xb38e7c8d97adef99, 566, 0};
				bbOnDebugEnterStm(&__stmt_0);
				brl_blitz_DebugLog(bbStringConcat(((BBString*)&_s612),bbStringFromFloat(bbStringToFloat(bbStringSlice(bbt_curline,2,(bbt_curline)->length)))));
				bbOnDebugLeaveScope();
			}
			bbOnDebugLeaveScope();
		}
		struct BBDebugStm __stmt_5 = {0xb38e7c8d97adef99, 569, 0};
		bbOnDebugEnterStm(&__stmt_5);
		if(bbStringEquals(bbStringSlice(bbt_tag,0,3), ((BBString*)&_s613))==1 && (bbt_is_brush!=0)){
			struct BBDebugScope __scope = {
				BBDEBUGSCOPE_LOCALBLOCK,
				0,
				{
					{
						BBDEBUGDECL_END
					}
				}
			};
			bbOnDebugEnterScope((BBDebugScope *)&__scope);
			struct BBDebugStm __stmt_0 = {0xb38e7c8d97adef99, 570, 0};
			bbOnDebugEnterStm(&__stmt_0);
			struct openb3d_openb3dcore_TBrush_obj* bbt_6;
			(((struct openb3d_openb3dcore_TBrush_obj*)((struct openb3d_openb3dcore_TBrush_obj*)bbNullObjectTest((BBObject*)(bbt_6 = ((struct openb3d_openb3dcore_TObjMtl_obj*)bbNullObjectTest((BBObject*)((struct openb3d_openb3dcore_TObjMtl_obj**)BBARRAYDATAINDEX((bbt_MatLib),(bbt_MatLib)->dims,((BBUINT)bbt_CMI)))[((BBUINT)bbt_CMI)]))->_openb3d_openb3dcore_tobjmtl_brush ))))->clas)->m_BrushAlpha_f((struct openb3d_openb3dcore_TBrush_obj*)bbt_6,bbStringToFloat(bbStringSlice(bbt_curline,2,(bbt_curline)->length)));
			struct BBDebugStm __stmt_1 = {0xb38e7c8d97adef99, 571, 0};
			bbOnDebugEnterStm(&__stmt_1);
			if(openb3d_openb3dcore_TGlobal3D_Log_OBJ!=0){
				struct BBDebugScope __scope = {
					BBDEBUGSCOPE_LOCALBLOCK,
					0,
					{
						{
							BBDEBUGDECL_END
						}
					}
				};
				bbOnDebugEnterScope((BBDebugScope *)&__scope);
				struct BBDebugStm __stmt_0 = {0xb38e7c8d97adef99, 571, 0};
				bbOnDebugEnterStm(&__stmt_0);
				brl_blitz_DebugLog(bbStringConcat(((BBString*)&_s612),bbStringFromFloat(bbStringToFloat(bbStringSlice(bbt_curline,2,(bbt_curline)->length)))));
				bbOnDebugLeaveScope();
			}
			bbOnDebugLeaveScope();
		}
		struct BBDebugStm __stmt_6 = {0xb38e7c8d97adef99, 574, 0};
		bbOnDebugEnterStm(&__stmt_6);
		if(bbStringEquals(bbStringSlice(bbt_tag,0,7), ((BBString*)&_s614))==1 && (bbt_is_brush!=0)){
			BBARRAY bbt_texfile=(&bbEmptyArray);
			struct BBDebugScope_1 __scope = {
				BBDEBUGSCOPE_LOCALBLOCK,
				0,
				{
					{
						BBDEBUGDECL_LOCAL,
						"texfile",
						"[]$",
						.var_address=&bbt_texfile
					},
					{
						BBDEBUGDECL_END
					}
				}
			};
			bbOnDebugEnterScope((BBDebugScope *)&__scope);
			struct BBDebugStm __stmt_0 = {0xb38e7c8d97adef99, 576, 0};
			bbOnDebugEnterStm(&__stmt_0);
			bbt_texfile=bbStringSplit((BBSTRING)bbStringTrim((BBSTRING)bbStringSlice(bbt_curline,7,(bbt_curline)->length)),((BBString*)&_s400));
			struct BBDebugStm __stmt_1 = {0xb38e7c8d97adef99, 577, 0};
			bbOnDebugEnterStm(&__stmt_1);
			if((bbt_texfile->scales[0])<2){
				struct BBDebugScope __scope = {
					BBDEBUGSCOPE_LOCALBLOCK,
					0,
					{
						{
							BBDEBUGDECL_END
						}
					}
				};
				bbOnDebugEnterScope((BBDebugScope *)&__scope);
				struct BBDebugStm __stmt_0 = {0xb38e7c8d97adef99, 577, 0};
				bbOnDebugEnterStm(&__stmt_0);
				bbt_texfile=bbStringSplit((BBSTRING)bbStringTrim((BBSTRING)bbStringSlice(bbt_curline,7,(bbt_curline)->length)),((BBString*)&_s401));
				bbOnDebugLeaveScope();
			}
			struct BBDebugStm __stmt_2 = {0xb38e7c8d97adef99, 579, 0};
			bbOnDebugEnterStm(&__stmt_2);
			((BBSTRING*)BBARRAYDATAINDEX((bbt_texfile),(bbt_texfile)->dims,0U))[0U]=((BBSTRING*)BBARRAYDATAINDEX((bbt_texfile),(bbt_texfile)->dims,((BBUINT)((bbt_texfile->scales[0])-1))))[((BBUINT)((bbt_texfile->scales[0])-1))];
			struct BBDebugStm __stmt_3 = {0xb38e7c8d97adef99, 588, 0};
			bbOnDebugEnterStm(&__stmt_3);
			((struct openb3d_openb3dcore_TObjMtl_obj*)bbNullObjectTest((BBObject*)((struct openb3d_openb3dcore_TObjMtl_obj**)BBARRAYDATAINDEX((bbt_MatLib),(bbt_MatLib)->dims,((BBUINT)bbt_CMI)))[((BBUINT)bbt_CMI)]))->_openb3d_openb3dcore_tobjmtl_texture =(struct openb3d_openb3dcore_TTexture_obj*)openb3d_openb3dcore_LoadTexture(bbStringConcat(bbStringConcat(openb3d_openb3dcore_TOBJ_TexturePath,((BBString*)&_s401)),((BBSTRING*)BBARRAYDATAINDEX((bbt_texfile),(bbt_texfile)->dims,0U))[0U]),openb3d_openb3dcore_TOBJ_override_texflags,(struct openb3d_openb3dcore_TTexture_obj*)&bbNullObject);
			struct BBDebugStm __stmt_4 = {0xb38e7c8d97adef99, 590, 0};
			bbOnDebugEnterStm(&__stmt_4);
			struct openb3d_openb3dcore_TTexture_obj* bbt_7;
			if((((struct openb3d_openb3dcore_TTexture_obj*)((struct openb3d_openb3dcore_TTexture_obj*)bbNullObjectTest((BBObject*)(bbt_7 = ((struct openb3d_openb3dcore_TObjMtl_obj*)bbNullObjectTest((BBObject*)((struct openb3d_openb3dcore_TObjMtl_obj**)BBARRAYDATAINDEX((bbt_MatLib),(bbt_MatLib)->dims,((BBUINT)bbt_CMI)))[((BBUINT)bbt_CMI)]))->_openb3d_openb3dcore_tobjmtl_texture ))))->clas)->m_TextureHeight((struct openb3d_openb3dcore_TTexture_obj*)bbt_7)>0){
				struct BBDebugScope __scope = {
					BBDEBUGSCOPE_LOCALBLOCK,
					0,
					{
						{
							BBDEBUGDECL_END
						}
					}
				};
				bbOnDebugEnterScope((BBDebugScope *)&__scope);
				struct BBDebugStm __stmt_0 = {0xb38e7c8d97adef99, 591, 0};
				bbOnDebugEnterStm(&__stmt_0);
				struct openb3d_openb3dcore_TBrush_obj* bbt_8;
				(((struct openb3d_openb3dcore_TBrush_obj*)((struct openb3d_openb3dcore_TBrush_obj*)bbNullObjectTest((BBObject*)(bbt_8 = ((struct openb3d_openb3dcore_TObjMtl_obj*)bbNullObjectTest((BBObject*)((struct openb3d_openb3dcore_TObjMtl_obj**)BBARRAYDATAINDEX((bbt_MatLib),(bbt_MatLib)->dims,((BBUINT)bbt_CMI)))[((BBUINT)bbt_CMI)]))->_openb3d_openb3dcore_tobjmtl_brush ))))->clas)->m_BrushTexture_TTTextureii((struct openb3d_openb3dcore_TBrush_obj*)bbt_8,(struct openb3d_openb3dcore_TTexture_obj*)((struct openb3d_openb3dcore_TObjMtl_obj*)bbNullObjectTest((BBObject*)((struct openb3d_openb3dcore_TObjMtl_obj**)BBARRAYDATAINDEX((bbt_MatLib),(bbt_MatLib)->dims,((BBUINT)bbt_CMI)))[((BBUINT)bbt_CMI)]))->_openb3d_openb3dcore_tobjmtl_texture ,0,0);
				struct BBDebugStm __stmt_1 = {0xb38e7c8d97adef99, 592, 0};
				bbOnDebugEnterStm(&__stmt_1);
				if(openb3d_openb3dcore_TGlobal3D_Log_OBJ!=0){
					struct BBDebugScope __scope = {
						BBDEBUGSCOPE_LOCALBLOCK,
						0,
						{
							{
								BBDEBUGDECL_END
							}
						}
					};
					bbOnDebugEnterScope((BBDebugScope *)&__scope);
					struct BBDebugStm __stmt_0 = {0xb38e7c8d97adef99, 592, 0};
					bbOnDebugEnterStm(&__stmt_0);
					brl_blitz_DebugLog(bbStringConcat(bbStringConcat(bbStringConcat(((BBString*)&_s615),openb3d_openb3dcore_TOBJ_TexturePath),((BBString*)&_s401)),((BBSTRING*)BBARRAYDATAINDEX((bbt_texfile),(bbt_texfile)->dims,0U))[0U]));
					bbOnDebugLeaveScope();
				}
				bbOnDebugLeaveScope();
			}else{
				struct BBDebugScope __scope = {
					BBDEBUGSCOPE_LOCALBLOCK,
					0,
					{
						{
							BBDEBUGDECL_END
						}
					}
				};
				bbOnDebugEnterScope((BBDebugScope *)&__scope);
				struct BBDebugStm __stmt_0 = {0xb38e7c8d97adef99, 594, 0};
				bbOnDebugEnterStm(&__stmt_0);
				brl_standardio_Print(bbStringConcat(bbStringConcat(bbStringConcat(((BBString*)&_s616),openb3d_openb3dcore_TOBJ_TexturePath),((BBString*)&_s401)),((BBSTRING*)BBARRAYDATAINDEX((bbt_texfile),(bbt_texfile)->dims,0U))[0U]));
				bbOnDebugLeaveScope();
			}
			bbOnDebugLeaveScope();
		}
		bbOnDebugLeaveScope();
	}
	struct BBDebugStm __stmt_7 = {0xb38e7c8d97adef99, 601, 0};
	bbOnDebugEnterStm(&__stmt_7);
	bbOnDebugLeaveScope();
	return bbt_MatLib;
}
BBINT openb3d_openb3dcore_TOBJ_override_texflags;
BBSTRING openb3d_openb3dcore_TOBJ_MeshPath;
BBSTRING openb3d_openb3dcore_TOBJ_TexturePath;
BBSTRING openb3d_openb3dcore_TOBJ_MaterialPath;
struct BBDebugScope_14 openb3d_openb3dcore_TOBJ_scope ={
	BBDEBUGSCOPE_USERTYPE,
	"TOBJ",
	{
		{
			BBDEBUGDECL_CONST,
			"TIME",
			"i",
			.const_value=(BBString*)&_s606
		},
		{
			BBDEBUGDECL_CONST,
			"MATERIAL_USE_MAP",
			"i",
			.const_value=(BBString*)&_s606
		},
		{
			BBDEBUGDECL_CONST,
			"MAXVERTS",
			"i",
			.const_value=(BBString*)&_s859
		},
		{
			BBDEBUGDECL_GLOBAL,
			"override_texflags",
			"i",
			.var_address=(void*)&openb3d_openb3dcore_TOBJ_override_texflags
		},
		{
			BBDEBUGDECL_GLOBAL,
			"MeshPath",
			"$",
			.var_address=(void*)&openb3d_openb3dcore_TOBJ_MeshPath
		},
		{
			BBDEBUGDECL_GLOBAL,
			"TexturePath",
			"$",
			.var_address=(void*)&openb3d_openb3dcore_TOBJ_TexturePath
		},
		{
			BBDEBUGDECL_GLOBAL,
			"MaterialPath",
			"$",
			.var_address=(void*)&openb3d_openb3dcore_TOBJ_MaterialPath
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"New",
			"()i",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_TOBJ_New
		},
		{
			BBDEBUGDECL_TYPEFUNCTION,
			"LoadOBJ",
			"(:Object,:TEntity,i):TMesh",
			.func_ptr=(BBFuncPtr)&openb3d_openb3dcore_TOBJ_LoadOBJ_TTMesh_TObjectTTEntityi
		},
		{
			BBDEBUGDECL_TYPEFUNCTION,
			"LoadOBJFromStream",
			"(:TStream,:Object,:TEntity,i):TMesh",
			.func_ptr=(BBFuncPtr)&openb3d_openb3dcore_TOBJ_LoadOBJFromStream_TTMesh_TTStreamTObjectTTEntityi
		},
		{
			BBDEBUGDECL_TYPEFUNCTION,
			"ParseObj",
			"(:TStream,:TEntity,$):TMesh",
			.func_ptr=(BBFuncPtr)&openb3d_openb3dcore_TOBJ_ParseObj_TTMesh_TTStreamTTEntityS
		},
		{
			BBDEBUGDECL_TYPEFUNCTION,
			"ParseFaces",
			"($)[]:TFaceData",
			.func_ptr=(BBFuncPtr)&openb3d_openb3dcore_TOBJ_ParseFaces_aTTFaceData_S
		},
		{
			BBDEBUGDECL_TYPEFUNCTION,
			"CustomSplit",
			"($,$)[]$",
			.func_ptr=(BBFuncPtr)&openb3d_openb3dcore_TOBJ_CustomSplit_aS_SS
		},
		{
			BBDEBUGDECL_TYPEFUNCTION,
			"ParseMTLLib",
			"($,$)[]:TObjMtl",
			.func_ptr=(BBFuncPtr)&openb3d_openb3dcore_TOBJ_ParseMTLLib_aTTObjMtl_SS
		},
		{
			BBDEBUGDECL_END
		}
	}
};
struct BBClass_openb3d_openb3dcore_TOBJ openb3d_openb3dcore_TOBJ={
	&bbObjectClass,
	bbObjectFree,
	(BBDebugScope*)&openb3d_openb3dcore_TOBJ_scope,
	sizeof(struct openb3d_openb3dcore_TOBJ_obj),
	(void (*)(BBOBJECT))_openb3d_openb3dcore_TOBJ_New,
	bbObjectDtor,
	bbObjectToString,
	bbObjectCompare,
	bbObjectSendMessage,
	0,
	0,
	0
	,0
	,sizeof(void*)
	,openb3d_openb3dcore_TOBJ_LoadOBJ_TTMesh_TObjectTTEntityi
	,openb3d_openb3dcore_TOBJ_LoadOBJFromStream_TTMesh_TTStreamTObjectTTEntityi
	,openb3d_openb3dcore_TOBJ_ParseObj_TTMesh_TTStreamTTEntityS
	,openb3d_openb3dcore_TOBJ_ParseFaces_aTTFaceData_S
	,openb3d_openb3dcore_TOBJ_CustomSplit_aS_SS
	,openb3d_openb3dcore_TOBJ_ParseMTLLib_aTTObjMtl_SS
};

void _openb3d_openb3dcore_TFaceData_New(struct openb3d_openb3dcore_TFaceData_obj* o) {
	bbObjectCtor((BBOBJECT)o);
	o->clas = &openb3d_openb3dcore_TFaceData;
	((struct openb3d_openb3dcore_TFaceData_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tfacedata_vi = 0;
	((struct openb3d_openb3dcore_TFaceData_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tfacedata_ti = 0;
	((struct openb3d_openb3dcore_TFaceData_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tfacedata_ni = 0;
	((struct openb3d_openb3dcore_TFaceData_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tfacedata_its = 0;
}
struct BBDebugScope_5 openb3d_openb3dcore_TFaceData_scope ={
	BBDEBUGSCOPE_USERTYPE,
	"TFaceData",
	{
		{
			BBDEBUGDECL_FIELD,
			"vi",
			"i",
			.field_offset=offsetof(struct openb3d_openb3dcore_TFaceData_obj,_openb3d_openb3dcore_tfacedata_vi)
		},
		{
			BBDEBUGDECL_FIELD,
			"ti",
			"i",
			.field_offset=offsetof(struct openb3d_openb3dcore_TFaceData_obj,_openb3d_openb3dcore_tfacedata_ti)
		},
		{
			BBDEBUGDECL_FIELD,
			"ni",
			"i",
			.field_offset=offsetof(struct openb3d_openb3dcore_TFaceData_obj,_openb3d_openb3dcore_tfacedata_ni)
		},
		{
			BBDEBUGDECL_FIELD,
			"its",
			"i",
			.field_offset=offsetof(struct openb3d_openb3dcore_TFaceData_obj,_openb3d_openb3dcore_tfacedata_its)
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"New",
			"()i",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_TFaceData_New
		},
		{
			BBDEBUGDECL_END
		}
	}
};
struct BBClass_openb3d_openb3dcore_TFaceData openb3d_openb3dcore_TFaceData={
	&bbObjectClass,
	bbObjectFree,
	(BBDebugScope*)&openb3d_openb3dcore_TFaceData_scope,
	sizeof(struct openb3d_openb3dcore_TFaceData_obj),
	(void (*)(BBOBJECT))_openb3d_openb3dcore_TFaceData_New,
	bbObjectDtor,
	bbObjectToString,
	bbObjectCompare,
	bbObjectSendMessage,
	0,
	0,
	offsetof(struct openb3d_openb3dcore_TFaceData_obj,_openb3d_openb3dcore_tfacedata_its) - offsetof(struct openb3d_openb3dcore_TFaceData_obj,_openb3d_openb3dcore_tfacedata_vi) + sizeof(BBINT)
	,0
	,offsetof(struct openb3d_openb3dcore_TFaceData_obj,_openb3d_openb3dcore_tfacedata_vi)
};

void _openb3d_openb3dcore_TObjNormal_New(struct openb3d_openb3dcore_TObjNormal_obj* o) {
	bbObjectCtor((BBOBJECT)o);
	o->clas = &openb3d_openb3dcore_TObjNormal;
	((struct openb3d_openb3dcore_TObjNormal_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tobjnormal_nx = .00000000f;
	((struct openb3d_openb3dcore_TObjNormal_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tobjnormal_ny = .00000000f;
	((struct openb3d_openb3dcore_TObjNormal_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tobjnormal_nz = .00000000f;
}
BBINT _openb3d_openb3dcore_TObjNormal_GetValues_S(struct openb3d_openb3dcore_TObjNormal_obj* o,BBSTRING bbt_data){
	((struct openb3d_openb3dcore_TObjNormal_obj*)bbNullObjectTest((BBObject*)o));
	BBINT bbt_comp=0;
	BBARRAY bbt_values=(&bbEmptyArray);
	struct BBDebugScope_4 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"GetValues",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TObjNormal",
				.var_address=&o
			},
			{
				BBDEBUGDECL_LOCAL,
				"data",
				"$",
				.var_address=&bbt_data
			},
			{
				BBDEBUGDECL_LOCAL,
				"comp",
				"i",
				.var_address=&bbt_comp
			},
			{
				BBDEBUGDECL_LOCAL,
				"values",
				"[]$",
				.var_address=&bbt_values
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0xb38e7c8d97adef99, 622, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbt_comp=0;
	struct BBDebugStm __stmt_1 = {0xb38e7c8d97adef99, 622, 0};
	bbOnDebugEnterStm(&__stmt_1);
	bbt_values=bbStringSplit((BBSTRING)bbt_data,((BBString*)&_s445));
	struct BBDebugStm __stmt_2 = {0xb38e7c8d97adef99, 624, 0};
	bbOnDebugEnterStm(&__stmt_2);
	{
		BBINT bbt_i=0;
		BBINT bbt_=((bbt_values->scales[0])-1);
		for(;(bbt_i<=bbt_);bbt_i=(bbt_i+1)){
			struct BBDebugScope_1 __scope = {
				BBDEBUGSCOPE_LOCALBLOCK,
				0,
				{
					{
						BBDEBUGDECL_LOCAL,
						"i",
						"i",
						.var_address=&bbt_i
					},
					{
						BBDEBUGDECL_END
					}
				}
			};
			bbOnDebugEnterScope((BBDebugScope *)&__scope);
			struct BBDebugStm __stmt_0 = {0xb38e7c8d97adef99, 625, 0};
			bbOnDebugEnterStm(&__stmt_0);
			if((((BBSTRING*)BBARRAYDATAINDEX((bbt_values),(bbt_values)->dims,((BBUINT)bbt_i)))[((BBUINT)bbt_i)]->length)>0){
				struct BBDebugScope __scope = {
					BBDEBUGSCOPE_LOCALBLOCK,
					0,
					{
						{
							BBDEBUGDECL_END
						}
					}
				};
				bbOnDebugEnterScope((BBDebugScope *)&__scope);
				struct BBDebugStm __stmt_0 = {0xb38e7c8d97adef99, 626, 0};
				bbOnDebugEnterStm(&__stmt_0);
				((BBSTRING*)BBARRAYDATAINDEX((bbt_values),(bbt_values)->dims,((BBUINT)bbt_comp)))[((BBUINT)bbt_comp)]=((BBSTRING*)BBARRAYDATAINDEX((bbt_values),(bbt_values)->dims,((BBUINT)bbt_i)))[((BBUINT)bbt_i)];
				struct BBDebugStm __stmt_1 = {0xb38e7c8d97adef99, 627, 0};
				bbOnDebugEnterStm(&__stmt_1);
				bbt_comp+=1;
				bbOnDebugLeaveScope();
			}
			bbOnDebugLeaveScope();
		}
	}
	struct BBDebugStm __stmt_3 = {0xb38e7c8d97adef99, 631, 0};
	bbOnDebugEnterStm(&__stmt_3);
	((struct openb3d_openb3dcore_TObjNormal_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tobjnormal_nx =bbStringToFloat(((BBSTRING*)BBARRAYDATAINDEX((bbt_values),(bbt_values)->dims,0U))[0U]);
	struct BBDebugStm __stmt_4 = {0xb38e7c8d97adef99, 632, 0};
	bbOnDebugEnterStm(&__stmt_4);
	((struct openb3d_openb3dcore_TObjNormal_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tobjnormal_ny =bbStringToFloat(((BBSTRING*)BBARRAYDATAINDEX((bbt_values),(bbt_values)->dims,1U))[1U]);
	struct BBDebugStm __stmt_5 = {0xb38e7c8d97adef99, 633, 0};
	bbOnDebugEnterStm(&__stmt_5);
	((struct openb3d_openb3dcore_TObjNormal_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tobjnormal_nz =bbStringToFloat(((BBSTRING*)BBARRAYDATAINDEX((bbt_values),(bbt_values)->dims,2U))[2U]);
	bbOnDebugLeaveScope();
	return 0;
}
struct BBDebugScope_5 openb3d_openb3dcore_TObjNormal_scope ={
	BBDEBUGSCOPE_USERTYPE,
	"TObjNormal",
	{
		{
			BBDEBUGDECL_FIELD,
			"nx",
			"f",
			.field_offset=offsetof(struct openb3d_openb3dcore_TObjNormal_obj,_openb3d_openb3dcore_tobjnormal_nx)
		},
		{
			BBDEBUGDECL_FIELD,
			"ny",
			"f",
			.field_offset=offsetof(struct openb3d_openb3dcore_TObjNormal_obj,_openb3d_openb3dcore_tobjnormal_ny)
		},
		{
			BBDEBUGDECL_FIELD,
			"nz",
			"f",
			.field_offset=offsetof(struct openb3d_openb3dcore_TObjNormal_obj,_openb3d_openb3dcore_tobjnormal_nz)
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"New",
			"()i",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_TObjNormal_New
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"GetValues",
			"($)i",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_TObjNormal_GetValues_S
		},
		{
			BBDEBUGDECL_END
		}
	}
};
struct BBClass_openb3d_openb3dcore_TObjNormal openb3d_openb3dcore_TObjNormal={
	&bbObjectClass,
	bbObjectFree,
	(BBDebugScope*)&openb3d_openb3dcore_TObjNormal_scope,
	sizeof(struct openb3d_openb3dcore_TObjNormal_obj),
	(void (*)(BBOBJECT))_openb3d_openb3dcore_TObjNormal_New,
	bbObjectDtor,
	bbObjectToString,
	bbObjectCompare,
	bbObjectSendMessage,
	0,
	0,
	offsetof(struct openb3d_openb3dcore_TObjNormal_obj,_openb3d_openb3dcore_tobjnormal_nz) - offsetof(struct openb3d_openb3dcore_TObjNormal_obj,_openb3d_openb3dcore_tobjnormal_nx) + sizeof(BBFLOAT)
	,0
	,offsetof(struct openb3d_openb3dcore_TObjNormal_obj,_openb3d_openb3dcore_tobjnormal_nx)
	,_openb3d_openb3dcore_TObjNormal_GetValues_S
};

void _openb3d_openb3dcore_TObjTexCoord_New(struct openb3d_openb3dcore_TObjTexCoord_obj* o) {
	bbObjectCtor((BBOBJECT)o);
	o->clas = &openb3d_openb3dcore_TObjTexCoord;
	((struct openb3d_openb3dcore_TObjTexCoord_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tobjtexcoord_u = .00000000f;
	((struct openb3d_openb3dcore_TObjTexCoord_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tobjtexcoord_v = .00000000f;
	((struct openb3d_openb3dcore_TObjTexCoord_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tobjtexcoord_w = .00000000f;
}
BBINT _openb3d_openb3dcore_TObjTexCoord_GetValues_S(struct openb3d_openb3dcore_TObjTexCoord_obj* o,BBSTRING bbt_data){
	((struct openb3d_openb3dcore_TObjTexCoord_obj*)bbNullObjectTest((BBObject*)o));
	BBINT bbt_comp=0;
	BBARRAY bbt_values=(&bbEmptyArray);
	struct BBDebugScope_4 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"GetValues",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TObjTexCoord",
				.var_address=&o
			},
			{
				BBDEBUGDECL_LOCAL,
				"data",
				"$",
				.var_address=&bbt_data
			},
			{
				BBDEBUGDECL_LOCAL,
				"comp",
				"i",
				.var_address=&bbt_comp
			},
			{
				BBDEBUGDECL_LOCAL,
				"values",
				"[]$",
				.var_address=&bbt_values
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0xb38e7c8d97adef99, 647, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbt_comp=0;
	struct BBDebugStm __stmt_1 = {0xb38e7c8d97adef99, 647, 0};
	bbOnDebugEnterStm(&__stmt_1);
	bbt_values=bbStringSplit((BBSTRING)bbt_data,((BBString*)&_s445));
	struct BBDebugStm __stmt_2 = {0xb38e7c8d97adef99, 649, 0};
	bbOnDebugEnterStm(&__stmt_2);
	{
		BBINT bbt_i=0;
		BBINT bbt_=((bbt_values->scales[0])-1);
		for(;(bbt_i<=bbt_);bbt_i=(bbt_i+1)){
			struct BBDebugScope_1 __scope = {
				BBDEBUGSCOPE_LOCALBLOCK,
				0,
				{
					{
						BBDEBUGDECL_LOCAL,
						"i",
						"i",
						.var_address=&bbt_i
					},
					{
						BBDEBUGDECL_END
					}
				}
			};
			bbOnDebugEnterScope((BBDebugScope *)&__scope);
			struct BBDebugStm __stmt_0 = {0xb38e7c8d97adef99, 650, 0};
			bbOnDebugEnterStm(&__stmt_0);
			if((((BBSTRING*)BBARRAYDATAINDEX((bbt_values),(bbt_values)->dims,((BBUINT)bbt_i)))[((BBUINT)bbt_i)]->length)>0){
				struct BBDebugScope __scope = {
					BBDEBUGSCOPE_LOCALBLOCK,
					0,
					{
						{
							BBDEBUGDECL_END
						}
					}
				};
				bbOnDebugEnterScope((BBDebugScope *)&__scope);
				struct BBDebugStm __stmt_0 = {0xb38e7c8d97adef99, 651, 0};
				bbOnDebugEnterStm(&__stmt_0);
				((BBSTRING*)BBARRAYDATAINDEX((bbt_values),(bbt_values)->dims,((BBUINT)bbt_comp)))[((BBUINT)bbt_comp)]=((BBSTRING*)BBARRAYDATAINDEX((bbt_values),(bbt_values)->dims,((BBUINT)bbt_i)))[((BBUINT)bbt_i)];
				struct BBDebugStm __stmt_1 = {0xb38e7c8d97adef99, 652, 0};
				bbOnDebugEnterStm(&__stmt_1);
				bbt_comp+=1;
				bbOnDebugLeaveScope();
			}
			bbOnDebugLeaveScope();
		}
	}
	struct BBDebugStm __stmt_3 = {0xb38e7c8d97adef99, 656, 0};
	bbOnDebugEnterStm(&__stmt_3);
	((struct openb3d_openb3dcore_TObjTexCoord_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tobjtexcoord_u =bbStringToFloat(((BBSTRING*)BBARRAYDATAINDEX((bbt_values),(bbt_values)->dims,0U))[0U]);
	struct BBDebugStm __stmt_4 = {0xb38e7c8d97adef99, 657, 0};
	bbOnDebugEnterStm(&__stmt_4);
	((struct openb3d_openb3dcore_TObjTexCoord_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tobjtexcoord_v =bbStringToFloat(((BBSTRING*)BBARRAYDATAINDEX((bbt_values),(bbt_values)->dims,1U))[1U]);
	struct BBDebugStm __stmt_5 = {0xb38e7c8d97adef99, 659, 0};
	bbOnDebugEnterStm(&__stmt_5);
	if(bbt_comp==2){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0xb38e7c8d97adef99, 659, 0};
		bbOnDebugEnterStm(&__stmt_0);
		bbOnDebugLeaveScope();
		bbOnDebugLeaveScope();
		return 0;
	}
	struct BBDebugStm __stmt_6 = {0xb38e7c8d97adef99, 661, 0};
	bbOnDebugEnterStm(&__stmt_6);
	((struct openb3d_openb3dcore_TObjTexCoord_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tobjtexcoord_w =bbStringToFloat(((BBSTRING*)BBARRAYDATAINDEX((bbt_values),(bbt_values)->dims,((BBUINT)(bbt_comp-1))))[((BBUINT)(bbt_comp-1))]);
	bbOnDebugLeaveScope();
	return 0;
}
struct BBDebugScope_5 openb3d_openb3dcore_TObjTexCoord_scope ={
	BBDEBUGSCOPE_USERTYPE,
	"TObjTexCoord",
	{
		{
			BBDEBUGDECL_FIELD,
			"u",
			"f",
			.field_offset=offsetof(struct openb3d_openb3dcore_TObjTexCoord_obj,_openb3d_openb3dcore_tobjtexcoord_u)
		},
		{
			BBDEBUGDECL_FIELD,
			"v",
			"f",
			.field_offset=offsetof(struct openb3d_openb3dcore_TObjTexCoord_obj,_openb3d_openb3dcore_tobjtexcoord_v)
		},
		{
			BBDEBUGDECL_FIELD,
			"w",
			"f",
			.field_offset=offsetof(struct openb3d_openb3dcore_TObjTexCoord_obj,_openb3d_openb3dcore_tobjtexcoord_w)
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"New",
			"()i",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_TObjTexCoord_New
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"GetValues",
			"($)i",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_TObjTexCoord_GetValues_S
		},
		{
			BBDEBUGDECL_END
		}
	}
};
struct BBClass_openb3d_openb3dcore_TObjTexCoord openb3d_openb3dcore_TObjTexCoord={
	&bbObjectClass,
	bbObjectFree,
	(BBDebugScope*)&openb3d_openb3dcore_TObjTexCoord_scope,
	sizeof(struct openb3d_openb3dcore_TObjTexCoord_obj),
	(void (*)(BBOBJECT))_openb3d_openb3dcore_TObjTexCoord_New,
	bbObjectDtor,
	bbObjectToString,
	bbObjectCompare,
	bbObjectSendMessage,
	0,
	0,
	offsetof(struct openb3d_openb3dcore_TObjTexCoord_obj,_openb3d_openb3dcore_tobjtexcoord_w) - offsetof(struct openb3d_openb3dcore_TObjTexCoord_obj,_openb3d_openb3dcore_tobjtexcoord_u) + sizeof(BBFLOAT)
	,0
	,offsetof(struct openb3d_openb3dcore_TObjTexCoord_obj,_openb3d_openb3dcore_tobjtexcoord_u)
	,_openb3d_openb3dcore_TObjTexCoord_GetValues_S
};

void _openb3d_openb3dcore_TObjVertex_New(struct openb3d_openb3dcore_TObjVertex_obj* o) {
	bbObjectCtor((BBOBJECT)o);
	o->clas = &openb3d_openb3dcore_TObjVertex;
	((struct openb3d_openb3dcore_TObjVertex_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tobjvertex_x = .00000000f;
	((struct openb3d_openb3dcore_TObjVertex_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tobjvertex_y = .00000000f;
	((struct openb3d_openb3dcore_TObjVertex_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tobjvertex_z = .00000000f;
	((struct openb3d_openb3dcore_TObjVertex_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tobjvertex_w = .00000000f;
	((struct openb3d_openb3dcore_TObjVertex_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tobjvertex_r = .00000000f;
	((struct openb3d_openb3dcore_TObjVertex_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tobjvertex_g = .00000000f;
	((struct openb3d_openb3dcore_TObjVertex_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tobjvertex_b = .00000000f;
}
BBINT _openb3d_openb3dcore_TObjVertex_GetValues_S(struct openb3d_openb3dcore_TObjVertex_obj* o,BBSTRING bbt_data){
	((struct openb3d_openb3dcore_TObjVertex_obj*)bbNullObjectTest((BBObject*)o));
	BBINT bbt_comp=0;
	BBARRAY bbt_values=(&bbEmptyArray);
	struct BBDebugScope_4 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"GetValues",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TObjVertex",
				.var_address=&o
			},
			{
				BBDEBUGDECL_LOCAL,
				"data",
				"$",
				.var_address=&bbt_data
			},
			{
				BBDEBUGDECL_LOCAL,
				"comp",
				"i",
				.var_address=&bbt_comp
			},
			{
				BBDEBUGDECL_LOCAL,
				"values",
				"[]$",
				.var_address=&bbt_values
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0xb38e7c8d97adef99, 676, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbt_comp=0;
	struct BBDebugStm __stmt_1 = {0xb38e7c8d97adef99, 676, 0};
	bbOnDebugEnterStm(&__stmt_1);
	bbt_values=bbStringSplit((BBSTRING)bbt_data,((BBString*)&_s445));
	struct BBDebugStm __stmt_2 = {0xb38e7c8d97adef99, 678, 0};
	bbOnDebugEnterStm(&__stmt_2);
	{
		BBINT bbt_i=0;
		BBINT bbt_=((bbt_values->scales[0])-1);
		for(;(bbt_i<=bbt_);bbt_i=(bbt_i+1)){
			struct BBDebugScope_1 __scope = {
				BBDEBUGSCOPE_LOCALBLOCK,
				0,
				{
					{
						BBDEBUGDECL_LOCAL,
						"i",
						"i",
						.var_address=&bbt_i
					},
					{
						BBDEBUGDECL_END
					}
				}
			};
			bbOnDebugEnterScope((BBDebugScope *)&__scope);
			struct BBDebugStm __stmt_0 = {0xb38e7c8d97adef99, 679, 0};
			bbOnDebugEnterStm(&__stmt_0);
			if((((BBSTRING*)BBARRAYDATAINDEX((bbt_values),(bbt_values)->dims,((BBUINT)bbt_i)))[((BBUINT)bbt_i)]->length)>0){
				struct BBDebugScope __scope = {
					BBDEBUGSCOPE_LOCALBLOCK,
					0,
					{
						{
							BBDEBUGDECL_END
						}
					}
				};
				bbOnDebugEnterScope((BBDebugScope *)&__scope);
				struct BBDebugStm __stmt_0 = {0xb38e7c8d97adef99, 680, 0};
				bbOnDebugEnterStm(&__stmt_0);
				((BBSTRING*)BBARRAYDATAINDEX((bbt_values),(bbt_values)->dims,((BBUINT)bbt_comp)))[((BBUINT)bbt_comp)]=((BBSTRING*)BBARRAYDATAINDEX((bbt_values),(bbt_values)->dims,((BBUINT)bbt_i)))[((BBUINT)bbt_i)];
				struct BBDebugStm __stmt_1 = {0xb38e7c8d97adef99, 681, 0};
				bbOnDebugEnterStm(&__stmt_1);
				bbt_comp+=1;
				bbOnDebugLeaveScope();
			}
			bbOnDebugLeaveScope();
		}
	}
	struct BBDebugStm __stmt_3 = {0xb38e7c8d97adef99, 685, 0};
	bbOnDebugEnterStm(&__stmt_3);
	((struct openb3d_openb3dcore_TObjVertex_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tobjvertex_x =bbStringToFloat(((BBSTRING*)BBARRAYDATAINDEX((bbt_values),(bbt_values)->dims,0U))[0U]);
	struct BBDebugStm __stmt_4 = {0xb38e7c8d97adef99, 686, 0};
	bbOnDebugEnterStm(&__stmt_4);
	((struct openb3d_openb3dcore_TObjVertex_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tobjvertex_y =bbStringToFloat(((BBSTRING*)BBARRAYDATAINDEX((bbt_values),(bbt_values)->dims,1U))[1U]);
	struct BBDebugStm __stmt_5 = {0xb38e7c8d97adef99, 687, 0};
	bbOnDebugEnterStm(&__stmt_5);
	((struct openb3d_openb3dcore_TObjVertex_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tobjvertex_z =bbStringToFloat(((BBSTRING*)BBARRAYDATAINDEX((bbt_values),(bbt_values)->dims,2U))[2U]);
	struct BBDebugStm __stmt_6 = {0xb38e7c8d97adef99, 689, 0};
	bbOnDebugEnterStm(&__stmt_6);
	if((bbt_comp==3) || (bbt_comp==4)){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0xb38e7c8d97adef99, 689, 0};
		bbOnDebugEnterStm(&__stmt_0);
		bbOnDebugLeaveScope();
		bbOnDebugLeaveScope();
		return 0;
	}
	struct BBDebugStm __stmt_7 = {0xb38e7c8d97adef99, 691, 0};
	bbOnDebugEnterStm(&__stmt_7);
	((struct openb3d_openb3dcore_TObjVertex_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tobjvertex_r =(brl_blitz_Abs2(bbStringToFloat(((BBSTRING*)BBARRAYDATAINDEX((bbt_values),(bbt_values)->dims,((BBUINT)(bbt_comp-3))))[((BBUINT)(bbt_comp-3))]))*255.0f);
	struct BBDebugStm __stmt_8 = {0xb38e7c8d97adef99, 692, 0};
	bbOnDebugEnterStm(&__stmt_8);
	((struct openb3d_openb3dcore_TObjVertex_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tobjvertex_g =(brl_blitz_Abs2(bbStringToFloat(((BBSTRING*)BBARRAYDATAINDEX((bbt_values),(bbt_values)->dims,((BBUINT)(bbt_comp-2))))[((BBUINT)(bbt_comp-2))]))*255.0f);
	struct BBDebugStm __stmt_9 = {0xb38e7c8d97adef99, 693, 0};
	bbOnDebugEnterStm(&__stmt_9);
	((struct openb3d_openb3dcore_TObjVertex_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tobjvertex_b =(brl_blitz_Abs2(bbStringToFloat(((BBSTRING*)BBARRAYDATAINDEX((bbt_values),(bbt_values)->dims,((BBUINT)(bbt_comp-1))))[((BBUINT)(bbt_comp-1))]))*255.0f);
	bbOnDebugLeaveScope();
	return 0;
}
struct BBDebugScope_9 openb3d_openb3dcore_TObjVertex_scope ={
	BBDEBUGSCOPE_USERTYPE,
	"TObjVertex",
	{
		{
			BBDEBUGDECL_FIELD,
			"x",
			"f",
			.field_offset=offsetof(struct openb3d_openb3dcore_TObjVertex_obj,_openb3d_openb3dcore_tobjvertex_x)
		},
		{
			BBDEBUGDECL_FIELD,
			"y",
			"f",
			.field_offset=offsetof(struct openb3d_openb3dcore_TObjVertex_obj,_openb3d_openb3dcore_tobjvertex_y)
		},
		{
			BBDEBUGDECL_FIELD,
			"z",
			"f",
			.field_offset=offsetof(struct openb3d_openb3dcore_TObjVertex_obj,_openb3d_openb3dcore_tobjvertex_z)
		},
		{
			BBDEBUGDECL_FIELD,
			"w",
			"f",
			.field_offset=offsetof(struct openb3d_openb3dcore_TObjVertex_obj,_openb3d_openb3dcore_tobjvertex_w)
		},
		{
			BBDEBUGDECL_FIELD,
			"r",
			"f",
			.field_offset=offsetof(struct openb3d_openb3dcore_TObjVertex_obj,_openb3d_openb3dcore_tobjvertex_r)
		},
		{
			BBDEBUGDECL_FIELD,
			"g",
			"f",
			.field_offset=offsetof(struct openb3d_openb3dcore_TObjVertex_obj,_openb3d_openb3dcore_tobjvertex_g)
		},
		{
			BBDEBUGDECL_FIELD,
			"b",
			"f",
			.field_offset=offsetof(struct openb3d_openb3dcore_TObjVertex_obj,_openb3d_openb3dcore_tobjvertex_b)
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"New",
			"()i",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_TObjVertex_New
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"GetValues",
			"($)i",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_TObjVertex_GetValues_S
		},
		{
			BBDEBUGDECL_END
		}
	}
};
struct BBClass_openb3d_openb3dcore_TObjVertex openb3d_openb3dcore_TObjVertex={
	&bbObjectClass,
	bbObjectFree,
	(BBDebugScope*)&openb3d_openb3dcore_TObjVertex_scope,
	sizeof(struct openb3d_openb3dcore_TObjVertex_obj),
	(void (*)(BBOBJECT))_openb3d_openb3dcore_TObjVertex_New,
	bbObjectDtor,
	bbObjectToString,
	bbObjectCompare,
	bbObjectSendMessage,
	0,
	0,
	offsetof(struct openb3d_openb3dcore_TObjVertex_obj,_openb3d_openb3dcore_tobjvertex_b) - offsetof(struct openb3d_openb3dcore_TObjVertex_obj,_openb3d_openb3dcore_tobjvertex_x) + sizeof(BBFLOAT)
	,0
	,offsetof(struct openb3d_openb3dcore_TObjVertex_obj,_openb3d_openb3dcore_tobjvertex_x)
	,_openb3d_openb3dcore_TObjVertex_GetValues_S
};

void _openb3d_openb3dcore_TObjMtl_New(struct openb3d_openb3dcore_TObjMtl_obj* o) {
	bbObjectCtor((BBOBJECT)o);
	o->clas = &openb3d_openb3dcore_TObjMtl;
	((struct openb3d_openb3dcore_TObjMtl_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tobjmtl_name = ((BBString*)&bbEmptyString);
	((struct openb3d_openb3dcore_TObjMtl_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tobjmtl_brush = (struct openb3d_openb3dcore_TBrush_obj*)((struct openb3d_openb3dcore_TBrush_obj*)&bbNullObject);
	((struct openb3d_openb3dcore_TObjMtl_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tobjmtl_texture = (struct openb3d_openb3dcore_TTexture_obj*)((struct openb3d_openb3dcore_TTexture_obj*)&bbNullObject);
	((struct openb3d_openb3dcore_TObjMtl_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tobjmtl_meshsurface = (struct openb3d_openb3dcore_TSurface_obj*)((struct openb3d_openb3dcore_TSurface_obj*)&bbNullObject);
	((struct openb3d_openb3dcore_TObjMtl_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tobjmtl_cache = (struct openb3d_openb3dcore_TVertCache_obj*)((struct openb3d_openb3dcore_TVertCache_obj*)&bbNullObject);
	struct BBDebugScope __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"New",
		{
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0xb38e7c8d97adef99, 710, 0};
	bbOnDebugEnterStm(&__stmt_0);
	((struct openb3d_openb3dcore_TObjMtl_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tobjmtl_cache =(struct openb3d_openb3dcore_TVertCache_obj*)openb3d_openb3dcore_TVertCache_Create_TTVertCache_i(1);
	bbOnDebugLeaveScope();
}
struct BBDebugScope_6 openb3d_openb3dcore_TObjMtl_scope ={
	BBDEBUGSCOPE_USERTYPE,
	"TObjMtl",
	{
		{
			BBDEBUGDECL_FIELD,
			"name",
			"$",
			.field_offset=offsetof(struct openb3d_openb3dcore_TObjMtl_obj,_openb3d_openb3dcore_tobjmtl_name)
		},
		{
			BBDEBUGDECL_FIELD,
			"brush",
			":TBrush",
			.field_offset=offsetof(struct openb3d_openb3dcore_TObjMtl_obj,_openb3d_openb3dcore_tobjmtl_brush)
		},
		{
			BBDEBUGDECL_FIELD,
			"texture",
			":TTexture",
			.field_offset=offsetof(struct openb3d_openb3dcore_TObjMtl_obj,_openb3d_openb3dcore_tobjmtl_texture)
		},
		{
			BBDEBUGDECL_FIELD,
			"meshSurface",
			":TSurface",
			.field_offset=offsetof(struct openb3d_openb3dcore_TObjMtl_obj,_openb3d_openb3dcore_tobjmtl_meshsurface)
		},
		{
			BBDEBUGDECL_FIELD,
			"cache",
			":TVertCache",
			.field_offset=offsetof(struct openb3d_openb3dcore_TObjMtl_obj,_openb3d_openb3dcore_tobjmtl_cache)
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"New",
			"()i",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_TObjMtl_New
		},
		{
			BBDEBUGDECL_END
		}
	}
};
struct BBClass_openb3d_openb3dcore_TObjMtl openb3d_openb3dcore_TObjMtl={
	&bbObjectClass,
	bbObjectFree,
	(BBDebugScope*)&openb3d_openb3dcore_TObjMtl_scope,
	sizeof(struct openb3d_openb3dcore_TObjMtl_obj),
	(void (*)(BBOBJECT))_openb3d_openb3dcore_TObjMtl_New,
	bbObjectDtor,
	bbObjectToString,
	bbObjectCompare,
	bbObjectSendMessage,
	0,
	0,
	offsetof(struct openb3d_openb3dcore_TObjMtl_obj,_openb3d_openb3dcore_tobjmtl_cache) - offsetof(struct openb3d_openb3dcore_TObjMtl_obj,_openb3d_openb3dcore_tobjmtl_name) + sizeof(struct openb3d_openb3dcore_TVertCache_obj*)
	,0
	,offsetof(struct openb3d_openb3dcore_TObjMtl_obj,_openb3d_openb3dcore_tobjmtl_name)
};

void _openb3d_openb3dcore_TVertCache_New(struct openb3d_openb3dcore_TVertCache_obj* o) {
	bbObjectCtor((BBOBJECT)o);
	o->clas = &openb3d_openb3dcore_TVertCache;
	((struct openb3d_openb3dcore_TVertCache_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tvertcache_size = 1;
	((struct openb3d_openb3dcore_TVertCache_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tvertcache_realvertindex = bbArrayNew1D("i", 1);
	((struct openb3d_openb3dcore_TVertCache_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tvertcache_texusedindex = bbArrayNew1D("i", 1);
	((struct openb3d_openb3dcore_TVertCache_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tvertcache_normusedindex = bbArrayNew1D("i", 1);
}
struct openb3d_openb3dcore_TVertCache_obj* openb3d_openb3dcore_TVertCache_Create_TTVertCache_i(BBINT bbt_i){
	struct openb3d_openb3dcore_TVertCache_obj* bbt_c=(struct openb3d_openb3dcore_TVertCache_obj*)((struct openb3d_openb3dcore_TVertCache_obj*)&bbNullObject);
	struct BBDebugScope_2 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"Create",
		{
			{
				BBDEBUGDECL_LOCAL,
				"i",
				"i",
				.var_address=&bbt_i
			},
			{
				BBDEBUGDECL_LOCAL,
				"c",
				":TVertCache",
				.var_address=&bbt_c
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0xb38e7c8d97adef99, 724, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbt_c=(struct openb3d_openb3dcore_TVertCache_obj*)(struct openb3d_openb3dcore_TVertCache_obj*)bbObjectNew((BBClass *)&openb3d_openb3dcore_TVertCache);
	struct BBDebugStm __stmt_1 = {0xb38e7c8d97adef99, 725, 0};
	bbOnDebugEnterStm(&__stmt_1);
	((struct openb3d_openb3dcore_TVertCache_obj*)bbNullObjectTest((BBObject*)bbt_c))->_openb3d_openb3dcore_tvertcache_realvertindex =bbArrayNew1D("i", bbt_i);
	struct BBDebugStm __stmt_2 = {0xb38e7c8d97adef99, 726, 0};
	bbOnDebugEnterStm(&__stmt_2);
	((struct openb3d_openb3dcore_TVertCache_obj*)bbNullObjectTest((BBObject*)bbt_c))->_openb3d_openb3dcore_tvertcache_texusedindex =bbArrayNew1D("i", bbt_i);
	struct BBDebugStm __stmt_3 = {0xb38e7c8d97adef99, 727, 0};
	bbOnDebugEnterStm(&__stmt_3);
	((struct openb3d_openb3dcore_TVertCache_obj*)bbNullObjectTest((BBObject*)bbt_c))->_openb3d_openb3dcore_tvertcache_normusedindex =bbArrayNew1D("i", bbt_i);
	struct BBDebugStm __stmt_4 = {0xb38e7c8d97adef99, 728, 0};
	bbOnDebugEnterStm(&__stmt_4);
	((struct openb3d_openb3dcore_TVertCache_obj*)bbNullObjectTest((BBObject*)bbt_c))->_openb3d_openb3dcore_tvertcache_size =bbt_i;
	struct BBDebugStm __stmt_5 = {0xb38e7c8d97adef99, 729, 0};
	bbOnDebugEnterStm(&__stmt_5);
	bbOnDebugLeaveScope();
	return (struct openb3d_openb3dcore_TVertCache_obj*)bbt_c;
}
BBINT _openb3d_openb3dcore_TVertCache_CheckVert_iii(struct openb3d_openb3dcore_TVertCache_obj* o,BBINT bbt_vi,BBINT bbt_ti,BBINT bbt_ni){
	((struct openb3d_openb3dcore_TVertCache_obj*)bbNullObjectTest((BBObject*)o));
	struct BBDebugScope_4 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"CheckVert",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TVertCache",
				.var_address=&o
			},
			{
				BBDEBUGDECL_LOCAL,
				"vi",
				"i",
				.var_address=&bbt_vi
			},
			{
				BBDEBUGDECL_LOCAL,
				"ti",
				"i",
				.var_address=&bbt_ti
			},
			{
				BBDEBUGDECL_LOCAL,
				"ni",
				"i",
				.var_address=&bbt_ni
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0xb38e7c8d97adef99, 736, 0};
	bbOnDebugEnterStm(&__stmt_0);
	if(bbt_vi>(((struct openb3d_openb3dcore_TVertCache_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tvertcache_size -1)){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0xb38e7c8d97adef99, 736, 0};
		bbOnDebugEnterStm(&__stmt_0);
		bbOnDebugLeaveScope();
		bbOnDebugLeaveScope();
		return 0;
	}
	struct BBDebugStm __stmt_1 = {0xb38e7c8d97adef99, 737, 0};
	bbOnDebugEnterStm(&__stmt_1);
	if(!(((BBINT*)BBARRAYDATAINDEX((((struct openb3d_openb3dcore_TVertCache_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tvertcache_realvertindex ),(((struct openb3d_openb3dcore_TVertCache_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tvertcache_realvertindex )->dims,((BBUINT)bbt_vi)))[((BBUINT)bbt_vi)]!=0)){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0xb38e7c8d97adef99, 737, 0};
		bbOnDebugEnterStm(&__stmt_0);
		bbOnDebugLeaveScope();
		bbOnDebugLeaveScope();
		return 0;
	}
	struct BBDebugStm __stmt_2 = {0xb38e7c8d97adef99, 740, 0};
	bbOnDebugEnterStm(&__stmt_2);
	if((((BBINT*)BBARRAYDATAINDEX((((struct openb3d_openb3dcore_TVertCache_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tvertcache_texusedindex ),(((struct openb3d_openb3dcore_TVertCache_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tvertcache_texusedindex )->dims,((BBUINT)bbt_vi)))[((BBUINT)bbt_vi)]!=bbt_ti) && (bbt_ti!=0)){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0xb38e7c8d97adef99, 740, 0};
		bbOnDebugEnterStm(&__stmt_0);
		bbOnDebugLeaveScope();
		bbOnDebugLeaveScope();
		return -1;
	}
	struct BBDebugStm __stmt_3 = {0xb38e7c8d97adef99, 741, 0};
	bbOnDebugEnterStm(&__stmt_3);
	if((((BBINT*)BBARRAYDATAINDEX((((struct openb3d_openb3dcore_TVertCache_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tvertcache_normusedindex ),(((struct openb3d_openb3dcore_TVertCache_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tvertcache_normusedindex )->dims,((BBUINT)bbt_vi)))[((BBUINT)bbt_vi)]!=bbt_ni) && (bbt_ni!=0)){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0xb38e7c8d97adef99, 741, 0};
		bbOnDebugEnterStm(&__stmt_0);
		bbOnDebugLeaveScope();
		bbOnDebugLeaveScope();
		return -1;
	}
	struct BBDebugStm __stmt_4 = {0xb38e7c8d97adef99, 744, 0};
	bbOnDebugEnterStm(&__stmt_4);
	bbOnDebugLeaveScope();
	return ((BBINT*)BBARRAYDATAINDEX((((struct openb3d_openb3dcore_TVertCache_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tvertcache_realvertindex ),(((struct openb3d_openb3dcore_TVertCache_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tvertcache_realvertindex )->dims,((BBUINT)bbt_vi)))[((BBUINT)bbt_vi)];
}
BBINT _openb3d_openb3dcore_TVertCache_SetCache_iiii(struct openb3d_openb3dcore_TVertCache_obj* o,BBINT bbt_vi,BBINT bbt_reali,BBINT bbt_ti,BBINT bbt_ni){
	((struct openb3d_openb3dcore_TVertCache_obj*)bbNullObjectTest((BBObject*)o));
	struct BBDebugScope_5 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"SetCache",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TVertCache",
				.var_address=&o
			},
			{
				BBDEBUGDECL_LOCAL,
				"vi",
				"i",
				.var_address=&bbt_vi
			},
			{
				BBDEBUGDECL_LOCAL,
				"reali",
				"i",
				.var_address=&bbt_reali
			},
			{
				BBDEBUGDECL_LOCAL,
				"ti",
				"i",
				.var_address=&bbt_ti
			},
			{
				BBDEBUGDECL_LOCAL,
				"ni",
				"i",
				.var_address=&bbt_ni
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0xb38e7c8d97adef99, 751, 0};
	bbOnDebugEnterStm(&__stmt_0);
	if(bbt_vi>(((struct openb3d_openb3dcore_TVertCache_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tvertcache_size -1)){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0xb38e7c8d97adef99, 752, 0};
		bbOnDebugEnterStm(&__stmt_0);
		((struct openb3d_openb3dcore_TVertCache_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tvertcache_realvertindex =bbArraySlice("i",((struct openb3d_openb3dcore_TVertCache_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tvertcache_realvertindex ,0,(bbt_vi+1));
		struct BBDebugStm __stmt_1 = {0xb38e7c8d97adef99, 753, 0};
		bbOnDebugEnterStm(&__stmt_1);
		((struct openb3d_openb3dcore_TVertCache_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tvertcache_texusedindex =bbArraySlice("i",((struct openb3d_openb3dcore_TVertCache_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tvertcache_texusedindex ,0,(bbt_vi+1));
		struct BBDebugStm __stmt_2 = {0xb38e7c8d97adef99, 754, 0};
		bbOnDebugEnterStm(&__stmt_2);
		((struct openb3d_openb3dcore_TVertCache_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tvertcache_normusedindex =bbArraySlice("i",((struct openb3d_openb3dcore_TVertCache_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tvertcache_normusedindex ,0,(bbt_vi+1));
		struct BBDebugStm __stmt_3 = {0xb38e7c8d97adef99, 755, 0};
		bbOnDebugEnterStm(&__stmt_3);
		((struct openb3d_openb3dcore_TVertCache_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tvertcache_size =(bbt_vi+1);
		bbOnDebugLeaveScope();
	}
	struct BBDebugStm __stmt_1 = {0xb38e7c8d97adef99, 758, 0};
	bbOnDebugEnterStm(&__stmt_1);
	((BBINT*)BBARRAYDATAINDEX((((struct openb3d_openb3dcore_TVertCache_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tvertcache_realvertindex ),(((struct openb3d_openb3dcore_TVertCache_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tvertcache_realvertindex )->dims,((BBUINT)bbt_vi)))[((BBUINT)bbt_vi)]=bbt_reali;
	struct BBDebugStm __stmt_2 = {0xb38e7c8d97adef99, 759, 0};
	bbOnDebugEnterStm(&__stmt_2);
	((BBINT*)BBARRAYDATAINDEX((((struct openb3d_openb3dcore_TVertCache_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tvertcache_texusedindex ),(((struct openb3d_openb3dcore_TVertCache_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tvertcache_texusedindex )->dims,((BBUINT)bbt_vi)))[((BBUINT)bbt_vi)]=bbt_ti;
	struct BBDebugStm __stmt_3 = {0xb38e7c8d97adef99, 760, 0};
	bbOnDebugEnterStm(&__stmt_3);
	((BBINT*)BBARRAYDATAINDEX((((struct openb3d_openb3dcore_TVertCache_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tvertcache_normusedindex ),(((struct openb3d_openb3dcore_TVertCache_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tvertcache_normusedindex )->dims,((BBUINT)bbt_vi)))[((BBUINT)bbt_vi)]=bbt_ni;
	bbOnDebugLeaveScope();
	return 0;
}
struct BBDebugScope_8 openb3d_openb3dcore_TVertCache_scope ={
	BBDEBUGSCOPE_USERTYPE,
	"TVertCache",
	{
		{
			BBDEBUGDECL_FIELD,
			"size",
			"i",
			.field_offset=offsetof(struct openb3d_openb3dcore_TVertCache_obj,_openb3d_openb3dcore_tvertcache_size)
		},
		{
			BBDEBUGDECL_FIELD,
			"realvertindex",
			"[]i",
			.field_offset=offsetof(struct openb3d_openb3dcore_TVertCache_obj,_openb3d_openb3dcore_tvertcache_realvertindex)
		},
		{
			BBDEBUGDECL_FIELD,
			"texusedindex",
			"[]i",
			.field_offset=offsetof(struct openb3d_openb3dcore_TVertCache_obj,_openb3d_openb3dcore_tvertcache_texusedindex)
		},
		{
			BBDEBUGDECL_FIELD,
			"normusedindex",
			"[]i",
			.field_offset=offsetof(struct openb3d_openb3dcore_TVertCache_obj,_openb3d_openb3dcore_tvertcache_normusedindex)
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"New",
			"()i",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_TVertCache_New
		},
		{
			BBDEBUGDECL_TYPEFUNCTION,
			"Create",
			"(i):TVertCache",
			.func_ptr=(BBFuncPtr)&openb3d_openb3dcore_TVertCache_Create_TTVertCache_i
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"CheckVert",
			"(i,i,i)i",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_TVertCache_CheckVert_iii
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"SetCache",
			"(i,i,i,i)i",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_TVertCache_SetCache_iiii
		},
		{
			BBDEBUGDECL_END
		}
	}
};
struct BBClass_openb3d_openb3dcore_TVertCache openb3d_openb3dcore_TVertCache={
	&bbObjectClass,
	bbObjectFree,
	(BBDebugScope*)&openb3d_openb3dcore_TVertCache_scope,
	sizeof(struct openb3d_openb3dcore_TVertCache_obj),
	(void (*)(BBOBJECT))_openb3d_openb3dcore_TVertCache_New,
	bbObjectDtor,
	bbObjectToString,
	bbObjectCompare,
	bbObjectSendMessage,
	0,
	0,
	offsetof(struct openb3d_openb3dcore_TVertCache_obj,_openb3d_openb3dcore_tvertcache_normusedindex) - offsetof(struct openb3d_openb3dcore_TVertCache_obj,_openb3d_openb3dcore_tvertcache_size) + sizeof(BBARRAY)
	,0
	,offsetof(struct openb3d_openb3dcore_TVertCache_obj,_openb3d_openb3dcore_tvertcache_size)
	,openb3d_openb3dcore_TVertCache_Create_TTVertCache_i
	,_openb3d_openb3dcore_TVertCache_CheckVert_iii
	,_openb3d_openb3dcore_TVertCache_SetCache_iiii
};

void _openb3d_openb3dcore_TPick_New(struct openb3d_openb3dcore_TPick_obj* o) {
	bbObjectCtor((BBOBJECT)o);
	o->clas = &openb3d_openb3dcore_TPick;
}
BBINT openb3d_openb3dcore_TPick_InitGlobals_i(){
	struct BBDebugScope __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"InitGlobals",
		{
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x2ed5544e8f1c7263, 28, 0};
	bbOnDebugEnterStm(&__stmt_0);
	openb3d_openb3dcore_TPick_picked_x=StaticFloat_(35,2);
	struct BBDebugStm __stmt_1 = {0x2ed5544e8f1c7263, 29, 0};
	bbOnDebugEnterStm(&__stmt_1);
	openb3d_openb3dcore_TPick_picked_y=StaticFloat_(35,3);
	struct BBDebugStm __stmt_2 = {0x2ed5544e8f1c7263, 30, 0};
	bbOnDebugEnterStm(&__stmt_2);
	openb3d_openb3dcore_TPick_picked_z=StaticFloat_(35,4);
	struct BBDebugStm __stmt_3 = {0x2ed5544e8f1c7263, 31, 0};
	bbOnDebugEnterStm(&__stmt_3);
	openb3d_openb3dcore_TPick_picked_nx=StaticFloat_(35,5);
	struct BBDebugStm __stmt_4 = {0x2ed5544e8f1c7263, 32, 0};
	bbOnDebugEnterStm(&__stmt_4);
	openb3d_openb3dcore_TPick_picked_ny=StaticFloat_(35,6);
	struct BBDebugStm __stmt_5 = {0x2ed5544e8f1c7263, 33, 0};
	bbOnDebugEnterStm(&__stmt_5);
	openb3d_openb3dcore_TPick_picked_nz=StaticFloat_(35,7);
	struct BBDebugStm __stmt_6 = {0x2ed5544e8f1c7263, 34, 0};
	bbOnDebugEnterStm(&__stmt_6);
	openb3d_openb3dcore_TPick_picked_time=StaticFloat_(35,8);
	struct BBDebugStm __stmt_7 = {0x2ed5544e8f1c7263, 37, 0};
	bbOnDebugEnterStm(&__stmt_7);
	openb3d_openb3dcore_TPick_picked_triangle=StaticInt_(35,11);
	bbOnDebugLeaveScope();
	return 0;
}
BBINT openb3d_openb3dcore_TPick_DebugGlobals_i_ii(BBINT bbt_debug_subobjects,BBINT bbt_debug_base_types){
	BBSTRING bbt_pad=(&bbEmptyString);
	BBINT bbt_loop=0;
	struct BBDebugScope_4 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"DebugGlobals",
		{
			{
				BBDEBUGDECL_LOCAL,
				"debug_subobjects",
				"i",
				.var_address=&bbt_debug_subobjects
			},
			{
				BBDEBUGDECL_LOCAL,
				"debug_base_types",
				"i",
				.var_address=&bbt_debug_base_types
			},
			{
				BBDEBUGDECL_LOCAL,
				"pad",
				"$",
				.var_address=&bbt_pad
			},
			{
				BBDEBUGDECL_LOCAL,
				"loop",
				"i",
				.var_address=&bbt_loop
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x2ed5544e8f1c7263, 43, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbt_pad=((BBString*)&bbEmptyString);
	struct BBDebugStm __stmt_1 = {0x2ed5544e8f1c7263, 44, 0};
	bbOnDebugEnterStm(&__stmt_1);
	bbt_loop=bbt_debug_subobjects;
	struct BBDebugStm __stmt_2 = {0x2ed5544e8f1c7263, 45, 0};
	bbOnDebugEnterStm(&__stmt_2);
	if(bbt_debug_base_types>bbt_debug_subobjects){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x2ed5544e8f1c7263, 45, 0};
		bbOnDebugEnterStm(&__stmt_0);
		bbt_loop=bbt_debug_base_types;
		bbOnDebugLeaveScope();
	}
	struct BBDebugStm __stmt_3 = {0x2ed5544e8f1c7263, 46, 0};
	bbOnDebugEnterStm(&__stmt_3);
	{
		BBINT bbt_i=1;
		BBINT bbt_=bbt_loop;
		for(;(bbt_i<bbt_);bbt_i=(bbt_i+1)){
			struct BBDebugScope_1 __scope = {
				BBDEBUGSCOPE_LOCALBLOCK,
				0,
				{
					{
						BBDEBUGDECL_LOCAL,
						"i",
						"i",
						.var_address=&bbt_i
					},
					{
						BBDEBUGDECL_END
					}
				}
			};
			bbOnDebugEnterScope((BBDebugScope *)&__scope);
			struct BBDebugStm __stmt_0 = {0x2ed5544e8f1c7263, 47, 0};
			bbOnDebugEnterStm(&__stmt_0);
			bbt_pad=bbStringConcat(bbt_pad,((BBString*)&_s0));
			bbOnDebugLeaveScope();
		}
	}
	struct BBDebugStm __stmt_4 = {0x2ed5544e8f1c7263, 49, 0};
	bbOnDebugEnterStm(&__stmt_4);
	if(bbt_debug_subobjects!=0){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x2ed5544e8f1c7263, 49, 0};
		bbOnDebugEnterStm(&__stmt_0);
		bbt_debug_subobjects+=1;
		bbOnDebugLeaveScope();
	}
	struct BBDebugStm __stmt_5 = {0x2ed5544e8f1c7263, 50, 0};
	bbOnDebugEnterStm(&__stmt_5);
	if(bbt_debug_base_types!=0){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x2ed5544e8f1c7263, 50, 0};
		bbOnDebugEnterStm(&__stmt_0);
		bbt_debug_base_types+=1;
		bbOnDebugLeaveScope();
	}
	struct BBDebugStm __stmt_6 = {0x2ed5544e8f1c7263, 51, 0};
	bbOnDebugEnterStm(&__stmt_6);
	brl_blitz_DebugLog(bbStringConcat(bbt_pad,((BBString*)&_s617)));
	struct BBDebugStm __stmt_7 = {0x2ed5544e8f1c7263, 54, 0};
	bbOnDebugEnterStm(&__stmt_7);
	if(openb3d_openb3dcore_TPick_picked_x!=0){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x2ed5544e8f1c7263, 54, 0};
		bbOnDebugEnterStm(&__stmt_0);
		brl_blitz_DebugLog(bbStringConcat(bbStringConcat(bbt_pad,((BBString*)&_s618)),bbStringFromFloat(openb3d_openb3dcore_TPick_picked_x[0])));
		bbOnDebugLeaveScope();
	}else{
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x2ed5544e8f1c7263, 54, 0};
		bbOnDebugEnterStm(&__stmt_0);
		brl_blitz_DebugLog(bbStringConcat(bbt_pad,((BBString*)&_s619)));
		bbOnDebugLeaveScope();
	}
	struct BBDebugStm __stmt_8 = {0x2ed5544e8f1c7263, 55, 0};
	bbOnDebugEnterStm(&__stmt_8);
	if(openb3d_openb3dcore_TPick_picked_y!=0){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x2ed5544e8f1c7263, 55, 0};
		bbOnDebugEnterStm(&__stmt_0);
		brl_blitz_DebugLog(bbStringConcat(bbStringConcat(bbt_pad,((BBString*)&_s620)),bbStringFromFloat(openb3d_openb3dcore_TPick_picked_y[0])));
		bbOnDebugLeaveScope();
	}else{
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x2ed5544e8f1c7263, 55, 0};
		bbOnDebugEnterStm(&__stmt_0);
		brl_blitz_DebugLog(bbStringConcat(bbt_pad,((BBString*)&_s621)));
		bbOnDebugLeaveScope();
	}
	struct BBDebugStm __stmt_9 = {0x2ed5544e8f1c7263, 56, 0};
	bbOnDebugEnterStm(&__stmt_9);
	if(openb3d_openb3dcore_TPick_picked_z!=0){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x2ed5544e8f1c7263, 56, 0};
		bbOnDebugEnterStm(&__stmt_0);
		brl_blitz_DebugLog(bbStringConcat(bbStringConcat(bbt_pad,((BBString*)&_s622)),bbStringFromFloat(openb3d_openb3dcore_TPick_picked_z[0])));
		bbOnDebugLeaveScope();
	}else{
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x2ed5544e8f1c7263, 56, 0};
		bbOnDebugEnterStm(&__stmt_0);
		brl_blitz_DebugLog(bbStringConcat(bbt_pad,((BBString*)&_s623)));
		bbOnDebugLeaveScope();
	}
	struct BBDebugStm __stmt_10 = {0x2ed5544e8f1c7263, 57, 0};
	bbOnDebugEnterStm(&__stmt_10);
	if(openb3d_openb3dcore_TPick_picked_nx!=0){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x2ed5544e8f1c7263, 57, 0};
		bbOnDebugEnterStm(&__stmt_0);
		brl_blitz_DebugLog(bbStringConcat(bbStringConcat(bbt_pad,((BBString*)&_s624)),bbStringFromFloat(openb3d_openb3dcore_TPick_picked_nx[0])));
		bbOnDebugLeaveScope();
	}else{
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x2ed5544e8f1c7263, 57, 0};
		bbOnDebugEnterStm(&__stmt_0);
		brl_blitz_DebugLog(bbStringConcat(bbt_pad,((BBString*)&_s625)));
		bbOnDebugLeaveScope();
	}
	struct BBDebugStm __stmt_11 = {0x2ed5544e8f1c7263, 58, 0};
	bbOnDebugEnterStm(&__stmt_11);
	if(openb3d_openb3dcore_TPick_picked_ny!=0){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x2ed5544e8f1c7263, 58, 0};
		bbOnDebugEnterStm(&__stmt_0);
		brl_blitz_DebugLog(bbStringConcat(bbStringConcat(bbt_pad,((BBString*)&_s626)),bbStringFromFloat(openb3d_openb3dcore_TPick_picked_ny[0])));
		bbOnDebugLeaveScope();
	}else{
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x2ed5544e8f1c7263, 58, 0};
		bbOnDebugEnterStm(&__stmt_0);
		brl_blitz_DebugLog(bbStringConcat(bbt_pad,((BBString*)&_s627)));
		bbOnDebugLeaveScope();
	}
	struct BBDebugStm __stmt_12 = {0x2ed5544e8f1c7263, 59, 0};
	bbOnDebugEnterStm(&__stmt_12);
	if(openb3d_openb3dcore_TPick_picked_nz!=0){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x2ed5544e8f1c7263, 59, 0};
		bbOnDebugEnterStm(&__stmt_0);
		brl_blitz_DebugLog(bbStringConcat(bbStringConcat(bbt_pad,((BBString*)&_s628)),bbStringFromFloat(openb3d_openb3dcore_TPick_picked_nz[0])));
		bbOnDebugLeaveScope();
	}else{
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x2ed5544e8f1c7263, 59, 0};
		bbOnDebugEnterStm(&__stmt_0);
		brl_blitz_DebugLog(bbStringConcat(bbt_pad,((BBString*)&_s629)));
		bbOnDebugLeaveScope();
	}
	struct BBDebugStm __stmt_13 = {0x2ed5544e8f1c7263, 60, 0};
	bbOnDebugEnterStm(&__stmt_13);
	if(openb3d_openb3dcore_TPick_picked_time!=0){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x2ed5544e8f1c7263, 60, 0};
		bbOnDebugEnterStm(&__stmt_0);
		brl_blitz_DebugLog(bbStringConcat(bbStringConcat(bbt_pad,((BBString*)&_s630)),bbStringFromFloat(openb3d_openb3dcore_TPick_picked_time[0])));
		bbOnDebugLeaveScope();
	}else{
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x2ed5544e8f1c7263, 60, 0};
		bbOnDebugEnterStm(&__stmt_0);
		brl_blitz_DebugLog(bbStringConcat(bbt_pad,((BBString*)&_s631)));
		bbOnDebugLeaveScope();
	}
	struct BBDebugStm __stmt_14 = {0x2ed5544e8f1c7263, 63, 0};
	bbOnDebugEnterStm(&__stmt_14);
	if(openb3d_openb3dcore_TPick_picked_triangle!=0){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x2ed5544e8f1c7263, 63, 0};
		bbOnDebugEnterStm(&__stmt_0);
		brl_blitz_DebugLog(bbStringConcat(bbStringConcat(bbt_pad,((BBString*)&_s632)),bbStringFromInt(openb3d_openb3dcore_TPick_picked_triangle[0])));
		bbOnDebugLeaveScope();
	}else{
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x2ed5544e8f1c7263, 63, 0};
		bbOnDebugEnterStm(&__stmt_0);
		brl_blitz_DebugLog(bbStringConcat(bbt_pad,((BBString*)&_s633)));
		bbOnDebugLeaveScope();
	}
	struct BBDebugStm __stmt_15 = {0x2ed5544e8f1c7263, 66, 0};
	bbOnDebugEnterStm(&__stmt_15);
	brl_blitz_DebugLog(bbStringConcat(bbStringConcat(bbt_pad,((BBString*)&_s634)),openb3d_openb3dcore_StringPtr(openb3d_openb3dcore_TEntity_GetInstance_pb_TTEntity((struct openb3d_openb3dcore_TEntity_obj*)openb3d_openb3dcore_TPick_picked_ent))));
	struct BBDebugStm __stmt_16 = {0x2ed5544e8f1c7263, 67, 0};
	bbOnDebugEnterStm(&__stmt_16);
	if((bbt_debug_subobjects!=0) && (((BBOBJECT)openb3d_openb3dcore_TPick_picked_ent)!=&bbNullObject)){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x2ed5544e8f1c7263, 67, 0};
		bbOnDebugEnterStm(&__stmt_0);
		((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)openb3d_openb3dcore_TPick_picked_ent))->clas->m_DebugFields_ii((struct openb3d_openb3dcore_TEntity_obj*)openb3d_openb3dcore_TPick_picked_ent,bbt_debug_subobjects,bbt_debug_base_types);
		bbOnDebugLeaveScope();
	}
	struct BBDebugStm __stmt_17 = {0x2ed5544e8f1c7263, 70, 0};
	bbOnDebugEnterStm(&__stmt_17);
	brl_blitz_DebugLog(bbStringConcat(bbStringConcat(bbt_pad,((BBString*)&_s635)),openb3d_openb3dcore_StringPtr(openb3d_openb3dcore_TSurface_GetInstance_pb_TTSurface((struct openb3d_openb3dcore_TSurface_obj*)openb3d_openb3dcore_TPick_picked_surface))));
	struct BBDebugStm __stmt_18 = {0x2ed5544e8f1c7263, 71, 0};
	bbOnDebugEnterStm(&__stmt_18);
	if((bbt_debug_subobjects!=0) && (((BBOBJECT)openb3d_openb3dcore_TPick_picked_surface)!=&bbNullObject)){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x2ed5544e8f1c7263, 71, 0};
		bbOnDebugEnterStm(&__stmt_0);
		((struct openb3d_openb3dcore_TSurface_obj*)bbNullObjectTest((BBObject*)openb3d_openb3dcore_TPick_picked_surface))->clas->m_DebugFields_ii((struct openb3d_openb3dcore_TSurface_obj*)openb3d_openb3dcore_TPick_picked_surface,bbt_debug_subobjects,bbt_debug_base_types);
		bbOnDebugLeaveScope();
	}
	struct BBDebugStm __stmt_19 = {0x2ed5544e8f1c7263, 73, 0};
	bbOnDebugEnterStm(&__stmt_19);
	brl_blitz_DebugLog((BBString*)&bbEmptyString);
	bbOnDebugLeaveScope();
	return 0;
}
BBINT openb3d_openb3dcore_TPick_AddList__i_TTList(struct brl_linkedlist_TList_obj* bbt_list){
	struct BBDebugScope_1 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"AddList_",
		{
			{
				BBDEBUGDECL_LOCAL,
				"list",
				":TList",
				.var_address=&bbt_list
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x2ed5544e8f1c7263, 79, 0};
	bbOnDebugEnterStm(&__stmt_0);
	struct brl_linkedlist_TList_obj* bbt_=(struct brl_linkedlist_TList_obj*)bbt_list;
	struct BBDebugStm __stmt_1 = {0x2ed5544e8f1c7263, 80, 0};
	bbOnDebugEnterStm(&__stmt_1);
	if(((struct brl_linkedlist_TList_obj*)bbt_)==openb3d_openb3dcore_TPick_ent_list){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x2ed5544e8f1c7263, 81, 0};
		bbOnDebugEnterStm(&__stmt_0);
		if(StaticListSize_(35,1)!=0){
			BBBYTE* bbt_inst=0;
			struct openb3d_openb3dcore_TEntity_obj* bbt_obj=(struct openb3d_openb3dcore_TEntity_obj*)((struct openb3d_openb3dcore_TEntity_obj*)&bbNullObject);
			struct BBDebugScope_2 __scope = {
				BBDEBUGSCOPE_LOCALBLOCK,
				0,
				{
					{
						BBDEBUGDECL_LOCAL,
						"inst",
						"*b",
						.var_address=&bbt_inst
					},
					{
						BBDEBUGDECL_LOCAL,
						"obj",
						":TEntity",
						.var_address=&bbt_obj
					},
					{
						BBDEBUGDECL_END
					}
				}
			};
			bbOnDebugEnterScope((BBDebugScope *)&__scope);
			struct BBDebugStm __stmt_0 = {0x2ed5544e8f1c7263, 82, 0};
			bbOnDebugEnterStm(&__stmt_0);
			bbt_inst=StaticIterListEntity_(35,1,(&openb3d_openb3dcore_TPick_ent_list_id));
			struct BBDebugStm __stmt_1 = {0x2ed5544e8f1c7263, 83, 0};
			bbOnDebugEnterStm(&__stmt_1);
			bbt_obj=(struct openb3d_openb3dcore_TEntity_obj*)openb3d_openb3dcore_TEntity_GetObject_TTEntity_pb(bbt_inst);
			struct BBDebugStm __stmt_2 = {0x2ed5544e8f1c7263, 84, 0};
			bbOnDebugEnterStm(&__stmt_2);
			if((((BBObject*)bbt_obj)!= &bbNullObject) && (brl_linkedlist_ListContains((struct brl_linkedlist_TList_obj*)bbt_list,(BBOBJECT)bbt_obj)==0)){
				struct BBDebugScope __scope = {
					BBDEBUGSCOPE_LOCALBLOCK,
					0,
					{
						{
							BBDEBUGDECL_END
						}
					}
				};
				bbOnDebugEnterScope((BBDebugScope *)&__scope);
				struct BBDebugStm __stmt_0 = {0x2ed5544e8f1c7263, 84, 0};
				bbOnDebugEnterStm(&__stmt_0);
				brl_linkedlist_ListAddLast((struct brl_linkedlist_TList_obj*)bbt_list,(BBOBJECT)bbt_obj);
				bbOnDebugLeaveScope();
			}
			bbOnDebugLeaveScope();
		}
		bbOnDebugLeaveScope();
	}
	bbOnDebugLeaveScope();
	return 0;
}
BBINT openb3d_openb3dcore_TPick_CopyList__i_TTList(struct brl_linkedlist_TList_obj* bbt_list){
	struct BBDebugScope_1 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"CopyList_",
		{
			{
				BBDEBUGDECL_LOCAL,
				"list",
				":TList",
				.var_address=&bbt_list
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x2ed5544e8f1c7263, 92, 0};
	bbOnDebugEnterStm(&__stmt_0);
	brl_linkedlist_ClearList((struct brl_linkedlist_TList_obj*)bbt_list);
	struct BBDebugStm __stmt_1 = {0x2ed5544e8f1c7263, 94, 0};
	bbOnDebugEnterStm(&__stmt_1);
	struct brl_linkedlist_TList_obj* bbt_=(struct brl_linkedlist_TList_obj*)bbt_list;
	struct BBDebugStm __stmt_2 = {0x2ed5544e8f1c7263, 95, 0};
	bbOnDebugEnterStm(&__stmt_2);
	if(((struct brl_linkedlist_TList_obj*)bbt_)==openb3d_openb3dcore_TPick_ent_list){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x2ed5544e8f1c7263, 96, 0};
		bbOnDebugEnterStm(&__stmt_0);
		openb3d_openb3dcore_TPick_ent_list_id=0;
		struct BBDebugStm __stmt_1 = {0x2ed5544e8f1c7263, 97, 0};
		bbOnDebugEnterStm(&__stmt_1);
		{
			BBINT bbt_id=0;
			BBINT bbt_2=(StaticListSize_(35,1)-1);
			for(;(bbt_id<=bbt_2);bbt_id=(bbt_id+1)){
				BBBYTE* bbt_inst=0;
				struct openb3d_openb3dcore_TEntity_obj* bbt_obj=(struct openb3d_openb3dcore_TEntity_obj*)((struct openb3d_openb3dcore_TEntity_obj*)&bbNullObject);
				struct BBDebugScope_3 __scope = {
					BBDEBUGSCOPE_LOCALBLOCK,
					0,
					{
						{
							BBDEBUGDECL_LOCAL,
							"id",
							"i",
							.var_address=&bbt_id
						},
						{
							BBDEBUGDECL_LOCAL,
							"inst",
							"*b",
							.var_address=&bbt_inst
						},
						{
							BBDEBUGDECL_LOCAL,
							"obj",
							":TEntity",
							.var_address=&bbt_obj
						},
						{
							BBDEBUGDECL_END
						}
					}
				};
				bbOnDebugEnterScope((BBDebugScope *)&__scope);
				struct BBDebugStm __stmt_0 = {0x2ed5544e8f1c7263, 98, 0};
				bbOnDebugEnterStm(&__stmt_0);
				bbt_inst=StaticIterListEntity_(35,1,(&openb3d_openb3dcore_TPick_ent_list_id));
				struct BBDebugStm __stmt_1 = {0x2ed5544e8f1c7263, 99, 0};
				bbOnDebugEnterStm(&__stmt_1);
				bbt_obj=(struct openb3d_openb3dcore_TEntity_obj*)openb3d_openb3dcore_TEntity_GetObject_TTEntity_pb(bbt_inst);
				struct BBDebugStm __stmt_2 = {0x2ed5544e8f1c7263, 100, 0};
				bbOnDebugEnterStm(&__stmt_2);
				if(((BBObject*)bbt_obj)!= &bbNullObject){
					struct BBDebugScope __scope = {
						BBDEBUGSCOPE_LOCALBLOCK,
						0,
						{
							{
								BBDEBUGDECL_END
							}
						}
					};
					bbOnDebugEnterScope((BBDebugScope *)&__scope);
					struct BBDebugStm __stmt_0 = {0x2ed5544e8f1c7263, 100, 0};
					bbOnDebugEnterStm(&__stmt_0);
					brl_linkedlist_ListAddLast((struct brl_linkedlist_TList_obj*)bbt_list,(BBOBJECT)bbt_obj);
					bbOnDebugLeaveScope();
				}
				bbOnDebugLeaveScope();
			}
		}
		bbOnDebugLeaveScope();
	}
	bbOnDebugLeaveScope();
	return 0;
}
struct openb3d_openb3dcore_TEntity_obj* openb3d_openb3dcore_TPick_CameraPick_TTEntity_TTCameraff(struct openb3d_openb3dcore_TCamera_obj* bbt_cam,BBFLOAT bbt_x,BBFLOAT bbt_y){
	BBBYTE* bbt_inst=0;
	struct BBDebugScope_4 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"CameraPick",
		{
			{
				BBDEBUGDECL_LOCAL,
				"cam",
				":TCamera",
				.var_address=&bbt_cam
			},
			{
				BBDEBUGDECL_LOCAL,
				"x",
				"f",
				.var_address=&bbt_x
			},
			{
				BBDEBUGDECL_LOCAL,
				"y",
				"f",
				.var_address=&bbt_y
			},
			{
				BBDEBUGDECL_LOCAL,
				"inst",
				"*b",
				.var_address=&bbt_inst
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x2ed5544e8f1c7263, 110, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbt_inst=CameraPick_(openb3d_openb3dcore_TEntity_GetInstance_pb_TTEntity((struct openb3d_openb3dcore_TEntity_obj*)((struct openb3d_openb3dcore_TEntity_obj*)bbObjectDowncast((BBOBJECT)bbt_cam,(BBClass*)&openb3d_openb3dcore_TEntity))),bbt_x,bbt_y);
	struct BBDebugStm __stmt_1 = {0x2ed5544e8f1c7263, 111, 0};
	bbOnDebugEnterStm(&__stmt_1);
	bbOnDebugLeaveScope();
	return (struct openb3d_openb3dcore_TEntity_obj*)openb3d_openb3dcore_TEntity_GetObject_TTEntity_pb(bbt_inst);
}
struct openb3d_openb3dcore_TEntity_obj* openb3d_openb3dcore_TPick_EntityPick_TTEntity_TTEntityf(struct openb3d_openb3dcore_TEntity_obj* bbt_ent,BBFLOAT bbt_Range){
	BBBYTE* bbt_inst=0;
	struct BBDebugScope_3 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"EntityPick",
		{
			{
				BBDEBUGDECL_LOCAL,
				"ent",
				":TEntity",
				.var_address=&bbt_ent
			},
			{
				BBDEBUGDECL_LOCAL,
				"Range",
				"f",
				.var_address=&bbt_Range
			},
			{
				BBDEBUGDECL_LOCAL,
				"inst",
				"*b",
				.var_address=&bbt_inst
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x2ed5544e8f1c7263, 117, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbt_inst=EntityPick_(openb3d_openb3dcore_TEntity_GetInstance_pb_TTEntity((struct openb3d_openb3dcore_TEntity_obj*)bbt_ent),bbt_Range);
	struct BBDebugStm __stmt_1 = {0x2ed5544e8f1c7263, 118, 0};
	bbOnDebugEnterStm(&__stmt_1);
	bbOnDebugLeaveScope();
	return (struct openb3d_openb3dcore_TEntity_obj*)openb3d_openb3dcore_TEntity_GetObject_TTEntity_pb(bbt_inst);
}
struct openb3d_openb3dcore_TEntity_obj* openb3d_openb3dcore_TPick_LinePick_TTEntity_fffffff(BBFLOAT bbt_x,BBFLOAT bbt_y,BBFLOAT bbt_z,BBFLOAT bbt_dx,BBFLOAT bbt_dy,BBFLOAT bbt_dz,BBFLOAT bbt_radius){
	BBBYTE* bbt_inst=0;
	struct BBDebugScope_8 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"LinePick",
		{
			{
				BBDEBUGDECL_LOCAL,
				"x",
				"f",
				.var_address=&bbt_x
			},
			{
				BBDEBUGDECL_LOCAL,
				"y",
				"f",
				.var_address=&bbt_y
			},
			{
				BBDEBUGDECL_LOCAL,
				"z",
				"f",
				.var_address=&bbt_z
			},
			{
				BBDEBUGDECL_LOCAL,
				"dx",
				"f",
				.var_address=&bbt_dx
			},
			{
				BBDEBUGDECL_LOCAL,
				"dy",
				"f",
				.var_address=&bbt_dy
			},
			{
				BBDEBUGDECL_LOCAL,
				"dz",
				"f",
				.var_address=&bbt_dz
			},
			{
				BBDEBUGDECL_LOCAL,
				"radius",
				"f",
				.var_address=&bbt_radius
			},
			{
				BBDEBUGDECL_LOCAL,
				"inst",
				"*b",
				.var_address=&bbt_inst
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x2ed5544e8f1c7263, 125, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbt_inst=LinePick_(bbt_x,bbt_y,bbt_z,bbt_dx,bbt_dy,bbt_dz,bbt_radius);
	struct BBDebugStm __stmt_1 = {0x2ed5544e8f1c7263, 126, 0};
	bbOnDebugEnterStm(&__stmt_1);
	bbOnDebugLeaveScope();
	return (struct openb3d_openb3dcore_TEntity_obj*)openb3d_openb3dcore_TEntity_GetObject_TTEntity_pb(bbt_inst);
}
BBINT openb3d_openb3dcore_TPick_EntityVisible_i_TTEntityTTEntity(struct openb3d_openb3dcore_TEntity_obj* bbt_src_ent,struct openb3d_openb3dcore_TEntity_obj* bbt_dest_ent){
	struct BBDebugScope_2 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"EntityVisible",
		{
			{
				BBDEBUGDECL_LOCAL,
				"src_ent",
				":TEntity",
				.var_address=&bbt_src_ent
			},
			{
				BBDEBUGDECL_LOCAL,
				"dest_ent",
				":TEntity",
				.var_address=&bbt_dest_ent
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x2ed5544e8f1c7263, 132, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbOnDebugLeaveScope();
	return EntityVisible_(openb3d_openb3dcore_TEntity_GetInstance_pb_TTEntity((struct openb3d_openb3dcore_TEntity_obj*)bbt_src_ent),openb3d_openb3dcore_TEntity_GetInstance_pb_TTEntity((struct openb3d_openb3dcore_TEntity_obj*)bbt_dest_ent));
}
BBFLOAT openb3d_openb3dcore_TPick_PickedX_f(){
	struct BBDebugScope __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"PickedX",
		{
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x2ed5544e8f1c7263, 138, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbOnDebugLeaveScope();
	return PickedX_();
}
BBFLOAT openb3d_openb3dcore_TPick_PickedY_f(){
	struct BBDebugScope __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"PickedY",
		{
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x2ed5544e8f1c7263, 144, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbOnDebugLeaveScope();
	return PickedY_();
}
BBFLOAT openb3d_openb3dcore_TPick_PickedZ_f(){
	struct BBDebugScope __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"PickedZ",
		{
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x2ed5544e8f1c7263, 150, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbOnDebugLeaveScope();
	return PickedZ_();
}
BBFLOAT openb3d_openb3dcore_TPick_PickedNX_f(){
	struct BBDebugScope __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"PickedNX",
		{
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x2ed5544e8f1c7263, 156, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbOnDebugLeaveScope();
	return PickedNX_();
}
BBFLOAT openb3d_openb3dcore_TPick_PickedNY_f(){
	struct BBDebugScope __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"PickedNY",
		{
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x2ed5544e8f1c7263, 162, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbOnDebugLeaveScope();
	return PickedNY_();
}
BBFLOAT openb3d_openb3dcore_TPick_PickedNZ_f(){
	struct BBDebugScope __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"PickedNZ",
		{
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x2ed5544e8f1c7263, 168, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbOnDebugLeaveScope();
	return PickedNZ_();
}
BBFLOAT openb3d_openb3dcore_TPick_PickedTime_f(){
	struct BBDebugScope __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"PickedTime",
		{
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x2ed5544e8f1c7263, 174, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbOnDebugLeaveScope();
	return PickedTime_();
}
struct openb3d_openb3dcore_TEntity_obj* openb3d_openb3dcore_TPick_PickedEntity_TTEntity(){
	BBBYTE* bbt_inst=0;
	struct BBDebugScope_1 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"PickedEntity",
		{
			{
				BBDEBUGDECL_LOCAL,
				"inst",
				"*b",
				.var_address=&bbt_inst
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x2ed5544e8f1c7263, 180, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbt_inst=PickedEntity_();
	struct BBDebugStm __stmt_1 = {0x2ed5544e8f1c7263, 181, 0};
	bbOnDebugEnterStm(&__stmt_1);
	openb3d_openb3dcore_TPick_picked_ent=(struct openb3d_openb3dcore_TEntity_obj*)openb3d_openb3dcore_TEntity_GetObject_TTEntity_pb(StaticEntity_(35,9));
	struct BBDebugStm __stmt_2 = {0x2ed5544e8f1c7263, 182, 0};
	bbOnDebugEnterStm(&__stmt_2);
	bbOnDebugLeaveScope();
	return (struct openb3d_openb3dcore_TEntity_obj*)openb3d_openb3dcore_TEntity_GetObject_TTEntity_pb(bbt_inst);
}
struct openb3d_openb3dcore_TSurface_obj* openb3d_openb3dcore_TPick_PickedSurface_TTSurface(){
	BBBYTE* bbt_inst=0;
	struct BBDebugScope_1 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"PickedSurface",
		{
			{
				BBDEBUGDECL_LOCAL,
				"inst",
				"*b",
				.var_address=&bbt_inst
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x2ed5544e8f1c7263, 188, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbt_inst=PickedSurface_();
	struct BBDebugStm __stmt_1 = {0x2ed5544e8f1c7263, 189, 0};
	bbOnDebugEnterStm(&__stmt_1);
	openb3d_openb3dcore_TPick_picked_surface=(struct openb3d_openb3dcore_TSurface_obj*)openb3d_openb3dcore_TSurface_GetObject_TTSurface_pb(StaticSurface_(35,10));
	struct BBDebugStm __stmt_2 = {0x2ed5544e8f1c7263, 190, 0};
	bbOnDebugEnterStm(&__stmt_2);
	bbOnDebugLeaveScope();
	return (struct openb3d_openb3dcore_TSurface_obj*)openb3d_openb3dcore_TSurface_GetObject_TTSurface_pb(bbt_inst);
}
BBINT openb3d_openb3dcore_TPick_PickedTriangle_i(){
	struct BBDebugScope __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"PickedTriangle",
		{
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x2ed5544e8f1c7263, 196, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbOnDebugLeaveScope();
	return PickedTriangle_();
}
struct openb3d_openb3dcore_TEntity_obj* openb3d_openb3dcore_TPick_Pick_TTEntity_fffffff(BBFLOAT bbt_ax,BBFLOAT bbt_ay,BBFLOAT bbt_az,BBFLOAT bbt_bx,BBFLOAT bbt_by,BBFLOAT bbt_bz,BBFLOAT bbt_radius){
	BBBYTE* bbt_inst=0;
	struct BBDebugScope_8 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"Pick",
		{
			{
				BBDEBUGDECL_LOCAL,
				"ax",
				"f",
				.var_address=&bbt_ax
			},
			{
				BBDEBUGDECL_LOCAL,
				"ay",
				"f",
				.var_address=&bbt_ay
			},
			{
				BBDEBUGDECL_LOCAL,
				"az",
				"f",
				.var_address=&bbt_az
			},
			{
				BBDEBUGDECL_LOCAL,
				"bx",
				"f",
				.var_address=&bbt_bx
			},
			{
				BBDEBUGDECL_LOCAL,
				"by",
				"f",
				.var_address=&bbt_by
			},
			{
				BBDEBUGDECL_LOCAL,
				"bz",
				"f",
				.var_address=&bbt_bz
			},
			{
				BBDEBUGDECL_LOCAL,
				"radius",
				"f",
				.var_address=&bbt_radius
			},
			{
				BBDEBUGDECL_LOCAL,
				"inst",
				"*b",
				.var_address=&bbt_inst
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x2ed5544e8f1c7263, 205, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbt_inst=PickMain_(bbt_ax,bbt_ay,bbt_az,bbt_bx,bbt_by,bbt_bz,bbt_radius);
	struct BBDebugStm __stmt_1 = {0x2ed5544e8f1c7263, 206, 0};
	bbOnDebugEnterStm(&__stmt_1);
	bbOnDebugLeaveScope();
	return (struct openb3d_openb3dcore_TEntity_obj*)openb3d_openb3dcore_TEntity_GetObject_TTEntity_pb(bbt_inst);
}
struct brl_linkedlist_TList_obj* openb3d_openb3dcore_TPick_ent_list;
BBINT openb3d_openb3dcore_TPick_ent_list_id;
struct openb3d_openb3dcore_TEntity_obj* openb3d_openb3dcore_TPick_picked_ent;
struct openb3d_openb3dcore_TSurface_obj* openb3d_openb3dcore_TPick_picked_surface;
BBFLOAT* openb3d_openb3dcore_TPick_picked_x;
BBFLOAT* openb3d_openb3dcore_TPick_picked_y;
BBFLOAT* openb3d_openb3dcore_TPick_picked_z;
BBFLOAT* openb3d_openb3dcore_TPick_picked_nx;
BBFLOAT* openb3d_openb3dcore_TPick_picked_ny;
BBFLOAT* openb3d_openb3dcore_TPick_picked_nz;
BBFLOAT* openb3d_openb3dcore_TPick_picked_time;
BBINT* openb3d_openb3dcore_TPick_picked_triangle;
struct BBDebugScope_32 openb3d_openb3dcore_TPick_scope ={
	BBDEBUGSCOPE_USERTYPE,
	"TPick",
	{
		{
			BBDEBUGDECL_GLOBAL,
			"ent_list",
			":TList",
			.var_address=(void*)&openb3d_openb3dcore_TPick_ent_list
		},
		{
			BBDEBUGDECL_GLOBAL,
			"picked_x",
			"*f",
			.var_address=(void*)&openb3d_openb3dcore_TPick_picked_x
		},
		{
			BBDEBUGDECL_GLOBAL,
			"picked_y",
			"*f",
			.var_address=(void*)&openb3d_openb3dcore_TPick_picked_y
		},
		{
			BBDEBUGDECL_GLOBAL,
			"picked_z",
			"*f",
			.var_address=(void*)&openb3d_openb3dcore_TPick_picked_z
		},
		{
			BBDEBUGDECL_GLOBAL,
			"picked_nx",
			"*f",
			.var_address=(void*)&openb3d_openb3dcore_TPick_picked_nx
		},
		{
			BBDEBUGDECL_GLOBAL,
			"picked_ny",
			"*f",
			.var_address=(void*)&openb3d_openb3dcore_TPick_picked_ny
		},
		{
			BBDEBUGDECL_GLOBAL,
			"picked_nz",
			"*f",
			.var_address=(void*)&openb3d_openb3dcore_TPick_picked_nz
		},
		{
			BBDEBUGDECL_GLOBAL,
			"picked_time",
			"*f",
			.var_address=(void*)&openb3d_openb3dcore_TPick_picked_time
		},
		{
			BBDEBUGDECL_GLOBAL,
			"picked_ent",
			":TEntity",
			.var_address=(void*)&openb3d_openb3dcore_TPick_picked_ent
		},
		{
			BBDEBUGDECL_GLOBAL,
			"picked_surface",
			":TSurface",
			.var_address=(void*)&openb3d_openb3dcore_TPick_picked_surface
		},
		{
			BBDEBUGDECL_GLOBAL,
			"picked_triangle",
			"*i",
			.var_address=(void*)&openb3d_openb3dcore_TPick_picked_triangle
		},
		{
			BBDEBUGDECL_GLOBAL,
			"ent_list_id",
			"i",
			.var_address=(void*)&openb3d_openb3dcore_TPick_ent_list_id
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"New",
			"()i",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_TPick_New
		},
		{
			BBDEBUGDECL_TYPEFUNCTION,
			"InitGlobals",
			"()i",
			.func_ptr=(BBFuncPtr)&openb3d_openb3dcore_TPick_InitGlobals_i
		},
		{
			BBDEBUGDECL_TYPEFUNCTION,
			"DebugGlobals",
			"(i,i)i",
			.func_ptr=(BBFuncPtr)&openb3d_openb3dcore_TPick_DebugGlobals_i_ii
		},
		{
			BBDEBUGDECL_TYPEFUNCTION,
			"AddList_",
			"(:TList)i",
			.func_ptr=(BBFuncPtr)&openb3d_openb3dcore_TPick_AddList__i_TTList
		},
		{
			BBDEBUGDECL_TYPEFUNCTION,
			"CopyList_",
			"(:TList)i",
			.func_ptr=(BBFuncPtr)&openb3d_openb3dcore_TPick_CopyList__i_TTList
		},
		{
			BBDEBUGDECL_TYPEFUNCTION,
			"CameraPick",
			"(:TCamera,f,f):TEntity",
			.func_ptr=(BBFuncPtr)&openb3d_openb3dcore_TPick_CameraPick_TTEntity_TTCameraff
		},
		{
			BBDEBUGDECL_TYPEFUNCTION,
			"EntityPick",
			"(:TEntity,f):TEntity",
			.func_ptr=(BBFuncPtr)&openb3d_openb3dcore_TPick_EntityPick_TTEntity_TTEntityf
		},
		{
			BBDEBUGDECL_TYPEFUNCTION,
			"LinePick",
			"(f,f,f,f,f,f,f):TEntity",
			.func_ptr=(BBFuncPtr)&openb3d_openb3dcore_TPick_LinePick_TTEntity_fffffff
		},
		{
			BBDEBUGDECL_TYPEFUNCTION,
			"EntityVisible",
			"(:TEntity,:TEntity)i",
			.func_ptr=(BBFuncPtr)&openb3d_openb3dcore_TPick_EntityVisible_i_TTEntityTTEntity
		},
		{
			BBDEBUGDECL_TYPEFUNCTION,
			"PickedX",
			"()f",
			.func_ptr=(BBFuncPtr)&openb3d_openb3dcore_TPick_PickedX_f
		},
		{
			BBDEBUGDECL_TYPEFUNCTION,
			"PickedY",
			"()f",
			.func_ptr=(BBFuncPtr)&openb3d_openb3dcore_TPick_PickedY_f
		},
		{
			BBDEBUGDECL_TYPEFUNCTION,
			"PickedZ",
			"()f",
			.func_ptr=(BBFuncPtr)&openb3d_openb3dcore_TPick_PickedZ_f
		},
		{
			BBDEBUGDECL_TYPEFUNCTION,
			"PickedNX",
			"()f",
			.func_ptr=(BBFuncPtr)&openb3d_openb3dcore_TPick_PickedNX_f
		},
		{
			BBDEBUGDECL_TYPEFUNCTION,
			"PickedNY",
			"()f",
			.func_ptr=(BBFuncPtr)&openb3d_openb3dcore_TPick_PickedNY_f
		},
		{
			BBDEBUGDECL_TYPEFUNCTION,
			"PickedNZ",
			"()f",
			.func_ptr=(BBFuncPtr)&openb3d_openb3dcore_TPick_PickedNZ_f
		},
		{
			BBDEBUGDECL_TYPEFUNCTION,
			"PickedTime",
			"()f",
			.func_ptr=(BBFuncPtr)&openb3d_openb3dcore_TPick_PickedTime_f
		},
		{
			BBDEBUGDECL_TYPEFUNCTION,
			"PickedEntity",
			"():TEntity",
			.func_ptr=(BBFuncPtr)&openb3d_openb3dcore_TPick_PickedEntity_TTEntity
		},
		{
			BBDEBUGDECL_TYPEFUNCTION,
			"PickedSurface",
			"():TSurface",
			.func_ptr=(BBFuncPtr)&openb3d_openb3dcore_TPick_PickedSurface_TTSurface
		},
		{
			BBDEBUGDECL_TYPEFUNCTION,
			"PickedTriangle",
			"()i",
			.func_ptr=(BBFuncPtr)&openb3d_openb3dcore_TPick_PickedTriangle_i
		},
		{
			BBDEBUGDECL_TYPEFUNCTION,
			"Pick",
			"(f,f,f,f,f,f,f):TEntity",
			.func_ptr=(BBFuncPtr)&openb3d_openb3dcore_TPick_Pick_TTEntity_fffffff
		},
		{
			BBDEBUGDECL_END
		}
	}
};
struct BBClass_openb3d_openb3dcore_TPick openb3d_openb3dcore_TPick={
	&bbObjectClass,
	bbObjectFree,
	(BBDebugScope*)&openb3d_openb3dcore_TPick_scope,
	sizeof(struct openb3d_openb3dcore_TPick_obj),
	(void (*)(BBOBJECT))_openb3d_openb3dcore_TPick_New,
	bbObjectDtor,
	bbObjectToString,
	bbObjectCompare,
	bbObjectSendMessage,
	0,
	0,
	0
	,0
	,sizeof(void*)
	,openb3d_openb3dcore_TPick_InitGlobals_i
	,openb3d_openb3dcore_TPick_DebugGlobals_i_ii
	,openb3d_openb3dcore_TPick_AddList__i_TTList
	,openb3d_openb3dcore_TPick_CopyList__i_TTList
	,openb3d_openb3dcore_TPick_CameraPick_TTEntity_TTCameraff
	,openb3d_openb3dcore_TPick_EntityPick_TTEntity_TTEntityf
	,openb3d_openb3dcore_TPick_LinePick_TTEntity_fffffff
	,openb3d_openb3dcore_TPick_EntityVisible_i_TTEntityTTEntity
	,openb3d_openb3dcore_TPick_PickedX_f
	,openb3d_openb3dcore_TPick_PickedY_f
	,openb3d_openb3dcore_TPick_PickedZ_f
	,openb3d_openb3dcore_TPick_PickedNX_f
	,openb3d_openb3dcore_TPick_PickedNY_f
	,openb3d_openb3dcore_TPick_PickedNZ_f
	,openb3d_openb3dcore_TPick_PickedTime_f
	,openb3d_openb3dcore_TPick_PickedEntity_TTEntity
	,openb3d_openb3dcore_TPick_PickedSurface_TTSurface
	,openb3d_openb3dcore_TPick_PickedTriangle_i
	,openb3d_openb3dcore_TPick_Pick_TTEntity_fffffff
};

void _openb3d_openb3dcore_TVector_New(struct openb3d_openb3dcore_TVector_obj* o) {
	bbObjectCtor((BBOBJECT)o);
	o->clas = &openb3d_openb3dcore_TVector;
	((struct openb3d_openb3dcore_TVector_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tvector_x = .00000000f;
	((struct openb3d_openb3dcore_TVector_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tvector_y = .00000000f;
	((struct openb3d_openb3dcore_TVector_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tvector_z = .00000000f;
	struct BBDebugScope __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"New",
		{
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x220966022118f42, 43, 0};
	bbOnDebugEnterStm(&__stmt_0);
	if(openb3d_openb3dcore_TGlobal3D_Log_New!=0){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x220966022118f42, 44, 0};
		bbOnDebugEnterStm(&__stmt_0);
		brl_blitz_DebugLog((BBString*)&_s636);
		bbOnDebugLeaveScope();
	}
	bbOnDebugLeaveScope();
}
void _openb3d_openb3dcore_TVector_Delete(struct openb3d_openb3dcore_TVector_obj* o) {
	struct BBDebugScope_1 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"Delete",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TVector",
				.var_address=&o
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x220966022118f42, 51, 0};
	bbOnDebugEnterStm(&__stmt_0);
	if(openb3d_openb3dcore_TGlobal3D_Log_Del!=0){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x220966022118f42, 52, 0};
		bbOnDebugEnterStm(&__stmt_0);
		brl_blitz_DebugLog((BBString*)&_s637);
		bbOnDebugLeaveScope();
	}
	bbOnDebugLeaveScope();
	bbObjectDtor((BBOBJECT)o);
}
struct openb3d_openb3dcore_TVector_obj* openb3d_openb3dcore_TVector_Create_TTVector_fff(BBFLOAT bbt_x,BBFLOAT bbt_y,BBFLOAT bbt_z){
	struct openb3d_openb3dcore_TVector_obj* bbt_vec=(struct openb3d_openb3dcore_TVector_obj*)((struct openb3d_openb3dcore_TVector_obj*)&bbNullObject);
	struct BBDebugScope_4 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"Create",
		{
			{
				BBDEBUGDECL_LOCAL,
				"x",
				"f",
				.var_address=&bbt_x
			},
			{
				BBDEBUGDECL_LOCAL,
				"y",
				"f",
				.var_address=&bbt_y
			},
			{
				BBDEBUGDECL_LOCAL,
				"z",
				"f",
				.var_address=&bbt_z
			},
			{
				BBDEBUGDECL_LOCAL,
				"vec",
				":TVector",
				.var_address=&bbt_vec
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x220966022118f42, 17, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbt_vec=(struct openb3d_openb3dcore_TVector_obj*)(struct openb3d_openb3dcore_TVector_obj*)bbObjectAtomicNew((BBClass *)&openb3d_openb3dcore_TVector);
	struct BBDebugStm __stmt_1 = {0x220966022118f42, 18, 0};
	bbOnDebugEnterStm(&__stmt_1);
	((struct openb3d_openb3dcore_TVector_obj*)bbNullObjectTest((BBObject*)bbt_vec))->_openb3d_openb3dcore_tvector_x =bbt_x;
	struct BBDebugStm __stmt_2 = {0x220966022118f42, 19, 0};
	bbOnDebugEnterStm(&__stmt_2);
	((struct openb3d_openb3dcore_TVector_obj*)bbNullObjectTest((BBObject*)bbt_vec))->_openb3d_openb3dcore_tvector_y =bbt_y;
	struct BBDebugStm __stmt_3 = {0x220966022118f42, 20, 0};
	bbOnDebugEnterStm(&__stmt_3);
	((struct openb3d_openb3dcore_TVector_obj*)bbNullObjectTest((BBObject*)bbt_vec))->_openb3d_openb3dcore_tvector_z =bbt_z;
	struct BBDebugStm __stmt_4 = {0x220966022118f42, 21, 0};
	bbOnDebugEnterStm(&__stmt_4);
	bbOnDebugLeaveScope();
	return (struct openb3d_openb3dcore_TVector_obj*)bbt_vec;
}
struct openb3d_openb3dcore_TVector_obj* openb3d_openb3dcore_TVector_CopyVecPtr_TTVector_TTVecPtr(struct openb3d_openb3dcore_TVecPtr_obj* bbt_vec){
	struct openb3d_openb3dcore_TVector_obj* bbt_new_vec=(struct openb3d_openb3dcore_TVector_obj*)((struct openb3d_openb3dcore_TVector_obj*)&bbNullObject);
	struct BBDebugScope_2 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"CopyVecPtr",
		{
			{
				BBDEBUGDECL_LOCAL,
				"vec",
				":TVecPtr",
				.var_address=&bbt_vec
			},
			{
				BBDEBUGDECL_LOCAL,
				"new_vec",
				":TVector",
				.var_address=&bbt_new_vec
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x220966022118f42, 30, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbt_new_vec=(struct openb3d_openb3dcore_TVector_obj*)(struct openb3d_openb3dcore_TVector_obj*)bbObjectAtomicNew((BBClass *)&openb3d_openb3dcore_TVector);
	struct BBDebugStm __stmt_1 = {0x220966022118f42, 31, 0};
	bbOnDebugEnterStm(&__stmt_1);
	((struct openb3d_openb3dcore_TVector_obj*)bbNullObjectTest((BBObject*)bbt_new_vec))->_openb3d_openb3dcore_tvector_x =((struct openb3d_openb3dcore_TVecPtr_obj*)bbNullObjectTest((BBObject*)bbt_vec))->_openb3d_openb3dcore_tvecptr_x [0];
	struct BBDebugStm __stmt_2 = {0x220966022118f42, 32, 0};
	bbOnDebugEnterStm(&__stmt_2);
	((struct openb3d_openb3dcore_TVector_obj*)bbNullObjectTest((BBObject*)bbt_new_vec))->_openb3d_openb3dcore_tvector_y =((struct openb3d_openb3dcore_TVecPtr_obj*)bbNullObjectTest((BBObject*)bbt_vec))->_openb3d_openb3dcore_tvecptr_y [0];
	struct BBDebugStm __stmt_3 = {0x220966022118f42, 33, 0};
	bbOnDebugEnterStm(&__stmt_3);
	((struct openb3d_openb3dcore_TVector_obj*)bbNullObjectTest((BBObject*)bbt_new_vec))->_openb3d_openb3dcore_tvector_z =((struct openb3d_openb3dcore_TVecPtr_obj*)bbNullObjectTest((BBObject*)bbt_vec))->_openb3d_openb3dcore_tvecptr_z [0];
	struct BBDebugStm __stmt_4 = {0x220966022118f42, 34, 0};
	bbOnDebugEnterStm(&__stmt_4);
	bbOnDebugLeaveScope();
	return (struct openb3d_openb3dcore_TVector_obj*)bbt_new_vec;
}
struct openb3d_openb3dcore_TVector_obj* _openb3d_openb3dcore_TVector_GetVecPtr_TTVecPtr(struct openb3d_openb3dcore_TVector_obj* o,struct openb3d_openb3dcore_TVecPtr_obj* bbt_vec){
	((struct openb3d_openb3dcore_TVector_obj*)bbNullObjectTest((BBObject*)o));
	struct BBDebugScope_2 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"GetVecPtr",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TVector",
				.var_address=&o
			},
			{
				BBDEBUGDECL_LOCAL,
				"vec",
				":TVecPtr",
				.var_address=&bbt_vec
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x220966022118f42, 62, 0};
	bbOnDebugEnterStm(&__stmt_0);
	((struct openb3d_openb3dcore_TVector_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tvector_x =((struct openb3d_openb3dcore_TVecPtr_obj*)bbNullObjectTest((BBObject*)bbt_vec))->_openb3d_openb3dcore_tvecptr_x [0];
	struct BBDebugStm __stmt_1 = {0x220966022118f42, 63, 0};
	bbOnDebugEnterStm(&__stmt_1);
	((struct openb3d_openb3dcore_TVector_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tvector_y =((struct openb3d_openb3dcore_TVecPtr_obj*)bbNullObjectTest((BBObject*)bbt_vec))->_openb3d_openb3dcore_tvecptr_y [0];
	struct BBDebugStm __stmt_2 = {0x220966022118f42, 64, 0};
	bbOnDebugEnterStm(&__stmt_2);
	((struct openb3d_openb3dcore_TVector_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tvector_z =((struct openb3d_openb3dcore_TVecPtr_obj*)bbNullObjectTest((BBObject*)bbt_vec))->_openb3d_openb3dcore_tvecptr_z [0];
	bbOnDebugLeaveScope();
	return (struct openb3d_openb3dcore_TVector_obj*)((struct openb3d_openb3dcore_TVector_obj*)&bbNullObject);
}
struct openb3d_openb3dcore_TVector_obj* _openb3d_openb3dcore_TVector_Copy(struct openb3d_openb3dcore_TVector_obj* o){
	((struct openb3d_openb3dcore_TVector_obj*)bbNullObjectTest((BBObject*)o));
	struct openb3d_openb3dcore_TVector_obj* bbt_vec=(struct openb3d_openb3dcore_TVector_obj*)((struct openb3d_openb3dcore_TVector_obj*)&bbNullObject);
	struct BBDebugScope_2 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"Copy",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TVector",
				.var_address=&o
			},
			{
				BBDEBUGDECL_LOCAL,
				"vec",
				":TVector",
				.var_address=&bbt_vec
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x220966022118f42, 73, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbt_vec=(struct openb3d_openb3dcore_TVector_obj*)(struct openb3d_openb3dcore_TVector_obj*)bbObjectAtomicNew((BBClass *)&openb3d_openb3dcore_TVector);
	struct BBDebugStm __stmt_1 = {0x220966022118f42, 75, 0};
	bbOnDebugEnterStm(&__stmt_1);
	((struct openb3d_openb3dcore_TVector_obj*)bbNullObjectTest((BBObject*)bbt_vec))->_openb3d_openb3dcore_tvector_x =((struct openb3d_openb3dcore_TVector_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tvector_x ;
	struct BBDebugStm __stmt_2 = {0x220966022118f42, 76, 0};
	bbOnDebugEnterStm(&__stmt_2);
	((struct openb3d_openb3dcore_TVector_obj*)bbNullObjectTest((BBObject*)bbt_vec))->_openb3d_openb3dcore_tvector_y =((struct openb3d_openb3dcore_TVector_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tvector_y ;
	struct BBDebugStm __stmt_3 = {0x220966022118f42, 77, 0};
	bbOnDebugEnterStm(&__stmt_3);
	((struct openb3d_openb3dcore_TVector_obj*)bbNullObjectTest((BBObject*)bbt_vec))->_openb3d_openb3dcore_tvector_z =((struct openb3d_openb3dcore_TVector_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tvector_z ;
	struct BBDebugStm __stmt_4 = {0x220966022118f42, 79, 0};
	bbOnDebugEnterStm(&__stmt_4);
	bbOnDebugLeaveScope();
	return (struct openb3d_openb3dcore_TVector_obj*)bbt_vec;
}
struct openb3d_openb3dcore_TVector_obj* _openb3d_openb3dcore_TVector_Add_TTVector(struct openb3d_openb3dcore_TVector_obj* o,struct openb3d_openb3dcore_TVector_obj* bbt_vec){
	((struct openb3d_openb3dcore_TVector_obj*)bbNullObjectTest((BBObject*)o));
	struct openb3d_openb3dcore_TVector_obj* bbt_new_vec=(struct openb3d_openb3dcore_TVector_obj*)((struct openb3d_openb3dcore_TVector_obj*)&bbNullObject);
	struct BBDebugScope_3 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"Add",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TVector",
				.var_address=&o
			},
			{
				BBDEBUGDECL_LOCAL,
				"vec",
				":TVector",
				.var_address=&bbt_vec
			},
			{
				BBDEBUGDECL_LOCAL,
				"new_vec",
				":TVector",
				.var_address=&bbt_new_vec
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x220966022118f42, 88, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbt_new_vec=(struct openb3d_openb3dcore_TVector_obj*)(struct openb3d_openb3dcore_TVector_obj*)bbObjectAtomicNew((BBClass *)&openb3d_openb3dcore_TVector);
	struct BBDebugStm __stmt_1 = {0x220966022118f42, 89, 0};
	bbOnDebugEnterStm(&__stmt_1);
	((struct openb3d_openb3dcore_TVector_obj*)bbNullObjectTest((BBObject*)bbt_new_vec))->_openb3d_openb3dcore_tvector_x =(((struct openb3d_openb3dcore_TVector_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tvector_x +((struct openb3d_openb3dcore_TVector_obj*)bbNullObjectTest((BBObject*)bbt_vec))->_openb3d_openb3dcore_tvector_x );
	struct BBDebugStm __stmt_2 = {0x220966022118f42, 90, 0};
	bbOnDebugEnterStm(&__stmt_2);
	((struct openb3d_openb3dcore_TVector_obj*)bbNullObjectTest((BBObject*)bbt_new_vec))->_openb3d_openb3dcore_tvector_y =(((struct openb3d_openb3dcore_TVector_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tvector_y +((struct openb3d_openb3dcore_TVector_obj*)bbNullObjectTest((BBObject*)bbt_vec))->_openb3d_openb3dcore_tvector_y );
	struct BBDebugStm __stmt_3 = {0x220966022118f42, 91, 0};
	bbOnDebugEnterStm(&__stmt_3);
	((struct openb3d_openb3dcore_TVector_obj*)bbNullObjectTest((BBObject*)bbt_new_vec))->_openb3d_openb3dcore_tvector_z =(((struct openb3d_openb3dcore_TVector_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tvector_z +((struct openb3d_openb3dcore_TVector_obj*)bbNullObjectTest((BBObject*)bbt_vec))->_openb3d_openb3dcore_tvector_z );
	struct BBDebugStm __stmt_4 = {0x220966022118f42, 92, 0};
	bbOnDebugEnterStm(&__stmt_4);
	bbOnDebugLeaveScope();
	return (struct openb3d_openb3dcore_TVector_obj*)bbt_new_vec;
}
struct openb3d_openb3dcore_TVector_obj* _openb3d_openb3dcore_TVector_Subtract_TTVector(struct openb3d_openb3dcore_TVector_obj* o,struct openb3d_openb3dcore_TVector_obj* bbt_vec){
	((struct openb3d_openb3dcore_TVector_obj*)bbNullObjectTest((BBObject*)o));
	struct openb3d_openb3dcore_TVector_obj* bbt_new_vec=(struct openb3d_openb3dcore_TVector_obj*)((struct openb3d_openb3dcore_TVector_obj*)&bbNullObject);
	struct BBDebugScope_3 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"Subtract",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TVector",
				.var_address=&o
			},
			{
				BBDEBUGDECL_LOCAL,
				"vec",
				":TVector",
				.var_address=&bbt_vec
			},
			{
				BBDEBUGDECL_LOCAL,
				"new_vec",
				":TVector",
				.var_address=&bbt_new_vec
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x220966022118f42, 101, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbt_new_vec=(struct openb3d_openb3dcore_TVector_obj*)(struct openb3d_openb3dcore_TVector_obj*)bbObjectAtomicNew((BBClass *)&openb3d_openb3dcore_TVector);
	struct BBDebugStm __stmt_1 = {0x220966022118f42, 102, 0};
	bbOnDebugEnterStm(&__stmt_1);
	((struct openb3d_openb3dcore_TVector_obj*)bbNullObjectTest((BBObject*)bbt_new_vec))->_openb3d_openb3dcore_tvector_x =(((struct openb3d_openb3dcore_TVector_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tvector_x -((struct openb3d_openb3dcore_TVector_obj*)bbNullObjectTest((BBObject*)bbt_vec))->_openb3d_openb3dcore_tvector_x );
	struct BBDebugStm __stmt_2 = {0x220966022118f42, 103, 0};
	bbOnDebugEnterStm(&__stmt_2);
	((struct openb3d_openb3dcore_TVector_obj*)bbNullObjectTest((BBObject*)bbt_new_vec))->_openb3d_openb3dcore_tvector_y =(((struct openb3d_openb3dcore_TVector_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tvector_y -((struct openb3d_openb3dcore_TVector_obj*)bbNullObjectTest((BBObject*)bbt_vec))->_openb3d_openb3dcore_tvector_y );
	struct BBDebugStm __stmt_3 = {0x220966022118f42, 104, 0};
	bbOnDebugEnterStm(&__stmt_3);
	((struct openb3d_openb3dcore_TVector_obj*)bbNullObjectTest((BBObject*)bbt_new_vec))->_openb3d_openb3dcore_tvector_z =(((struct openb3d_openb3dcore_TVector_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tvector_z -((struct openb3d_openb3dcore_TVector_obj*)bbNullObjectTest((BBObject*)bbt_vec))->_openb3d_openb3dcore_tvector_z );
	struct BBDebugStm __stmt_4 = {0x220966022118f42, 105, 0};
	bbOnDebugEnterStm(&__stmt_4);
	bbOnDebugLeaveScope();
	return (struct openb3d_openb3dcore_TVector_obj*)bbt_new_vec;
}
struct openb3d_openb3dcore_TVector_obj* _openb3d_openb3dcore_TVector_Multiply_f(struct openb3d_openb3dcore_TVector_obj* o,BBFLOAT bbt_val){
	((struct openb3d_openb3dcore_TVector_obj*)bbNullObjectTest((BBObject*)o));
	struct openb3d_openb3dcore_TVector_obj* bbt_new_vec=(struct openb3d_openb3dcore_TVector_obj*)((struct openb3d_openb3dcore_TVector_obj*)&bbNullObject);
	struct BBDebugScope_3 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"Multiply",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TVector",
				.var_address=&o
			},
			{
				BBDEBUGDECL_LOCAL,
				"val",
				"f",
				.var_address=&bbt_val
			},
			{
				BBDEBUGDECL_LOCAL,
				"new_vec",
				":TVector",
				.var_address=&bbt_new_vec
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x220966022118f42, 114, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbt_new_vec=(struct openb3d_openb3dcore_TVector_obj*)(struct openb3d_openb3dcore_TVector_obj*)bbObjectAtomicNew((BBClass *)&openb3d_openb3dcore_TVector);
	struct BBDebugStm __stmt_1 = {0x220966022118f42, 115, 0};
	bbOnDebugEnterStm(&__stmt_1);
	((struct openb3d_openb3dcore_TVector_obj*)bbNullObjectTest((BBObject*)bbt_new_vec))->_openb3d_openb3dcore_tvector_x =(((struct openb3d_openb3dcore_TVector_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tvector_x *bbt_val);
	struct BBDebugStm __stmt_2 = {0x220966022118f42, 116, 0};
	bbOnDebugEnterStm(&__stmt_2);
	((struct openb3d_openb3dcore_TVector_obj*)bbNullObjectTest((BBObject*)bbt_new_vec))->_openb3d_openb3dcore_tvector_y =(((struct openb3d_openb3dcore_TVector_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tvector_y *bbt_val);
	struct BBDebugStm __stmt_3 = {0x220966022118f42, 117, 0};
	bbOnDebugEnterStm(&__stmt_3);
	((struct openb3d_openb3dcore_TVector_obj*)bbNullObjectTest((BBObject*)bbt_new_vec))->_openb3d_openb3dcore_tvector_z =(((struct openb3d_openb3dcore_TVector_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tvector_z *bbt_val);
	struct BBDebugStm __stmt_4 = {0x220966022118f42, 118, 0};
	bbOnDebugEnterStm(&__stmt_4);
	bbOnDebugLeaveScope();
	return (struct openb3d_openb3dcore_TVector_obj*)bbt_new_vec;
}
struct openb3d_openb3dcore_TVector_obj* _openb3d_openb3dcore_TVector_Multiply2_TTVector(struct openb3d_openb3dcore_TVector_obj* o,struct openb3d_openb3dcore_TVector_obj* bbt_vec){
	((struct openb3d_openb3dcore_TVector_obj*)bbNullObjectTest((BBObject*)o));
	struct openb3d_openb3dcore_TVector_obj* bbt_new_vec=(struct openb3d_openb3dcore_TVector_obj*)((struct openb3d_openb3dcore_TVector_obj*)&bbNullObject);
	struct BBDebugScope_3 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"Multiply2",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TVector",
				.var_address=&o
			},
			{
				BBDEBUGDECL_LOCAL,
				"vec",
				":TVector",
				.var_address=&bbt_vec
			},
			{
				BBDEBUGDECL_LOCAL,
				"new_vec",
				":TVector",
				.var_address=&bbt_new_vec
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x220966022118f42, 127, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbt_new_vec=(struct openb3d_openb3dcore_TVector_obj*)(struct openb3d_openb3dcore_TVector_obj*)bbObjectAtomicNew((BBClass *)&openb3d_openb3dcore_TVector);
	struct BBDebugStm __stmt_1 = {0x220966022118f42, 128, 0};
	bbOnDebugEnterStm(&__stmt_1);
	((struct openb3d_openb3dcore_TVector_obj*)bbNullObjectTest((BBObject*)bbt_new_vec))->_openb3d_openb3dcore_tvector_x =(((struct openb3d_openb3dcore_TVector_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tvector_x *((struct openb3d_openb3dcore_TVector_obj*)bbNullObjectTest((BBObject*)bbt_vec))->_openb3d_openb3dcore_tvector_x );
	struct BBDebugStm __stmt_2 = {0x220966022118f42, 129, 0};
	bbOnDebugEnterStm(&__stmt_2);
	((struct openb3d_openb3dcore_TVector_obj*)bbNullObjectTest((BBObject*)bbt_new_vec))->_openb3d_openb3dcore_tvector_y =(((struct openb3d_openb3dcore_TVector_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tvector_y *((struct openb3d_openb3dcore_TVector_obj*)bbNullObjectTest((BBObject*)bbt_vec))->_openb3d_openb3dcore_tvector_y );
	struct BBDebugStm __stmt_3 = {0x220966022118f42, 130, 0};
	bbOnDebugEnterStm(&__stmt_3);
	((struct openb3d_openb3dcore_TVector_obj*)bbNullObjectTest((BBObject*)bbt_new_vec))->_openb3d_openb3dcore_tvector_z =(((struct openb3d_openb3dcore_TVector_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tvector_z *((struct openb3d_openb3dcore_TVector_obj*)bbNullObjectTest((BBObject*)bbt_vec))->_openb3d_openb3dcore_tvector_z );
	struct BBDebugStm __stmt_4 = {0x220966022118f42, 131, 0};
	bbOnDebugEnterStm(&__stmt_4);
	bbOnDebugLeaveScope();
	return (struct openb3d_openb3dcore_TVector_obj*)bbt_new_vec;
}
struct openb3d_openb3dcore_TVector_obj* _openb3d_openb3dcore_TVector_Divide_f(struct openb3d_openb3dcore_TVector_obj* o,BBFLOAT bbt_val){
	((struct openb3d_openb3dcore_TVector_obj*)bbNullObjectTest((BBObject*)o));
	struct openb3d_openb3dcore_TVector_obj* bbt_new_vec=(struct openb3d_openb3dcore_TVector_obj*)((struct openb3d_openb3dcore_TVector_obj*)&bbNullObject);
	struct BBDebugScope_3 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"Divide",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TVector",
				.var_address=&o
			},
			{
				BBDEBUGDECL_LOCAL,
				"val",
				"f",
				.var_address=&bbt_val
			},
			{
				BBDEBUGDECL_LOCAL,
				"new_vec",
				":TVector",
				.var_address=&bbt_new_vec
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x220966022118f42, 140, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbt_new_vec=(struct openb3d_openb3dcore_TVector_obj*)(struct openb3d_openb3dcore_TVector_obj*)bbObjectAtomicNew((BBClass *)&openb3d_openb3dcore_TVector);
	struct BBDebugStm __stmt_1 = {0x220966022118f42, 141, 0};
	bbOnDebugEnterStm(&__stmt_1);
	((struct openb3d_openb3dcore_TVector_obj*)bbNullObjectTest((BBObject*)bbt_new_vec))->_openb3d_openb3dcore_tvector_x =(((struct openb3d_openb3dcore_TVector_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tvector_x /bbt_val);
	struct BBDebugStm __stmt_2 = {0x220966022118f42, 142, 0};
	bbOnDebugEnterStm(&__stmt_2);
	((struct openb3d_openb3dcore_TVector_obj*)bbNullObjectTest((BBObject*)bbt_new_vec))->_openb3d_openb3dcore_tvector_y =(((struct openb3d_openb3dcore_TVector_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tvector_y /bbt_val);
	struct BBDebugStm __stmt_3 = {0x220966022118f42, 143, 0};
	bbOnDebugEnterStm(&__stmt_3);
	((struct openb3d_openb3dcore_TVector_obj*)bbNullObjectTest((BBObject*)bbt_new_vec))->_openb3d_openb3dcore_tvector_z =(((struct openb3d_openb3dcore_TVector_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tvector_z /bbt_val);
	struct BBDebugStm __stmt_4 = {0x220966022118f42, 144, 0};
	bbOnDebugEnterStm(&__stmt_4);
	bbOnDebugLeaveScope();
	return (struct openb3d_openb3dcore_TVector_obj*)bbt_new_vec;
}
struct openb3d_openb3dcore_TVector_obj* _openb3d_openb3dcore_TVector_Divide2_TTVector(struct openb3d_openb3dcore_TVector_obj* o,struct openb3d_openb3dcore_TVector_obj* bbt_vec){
	((struct openb3d_openb3dcore_TVector_obj*)bbNullObjectTest((BBObject*)o));
	struct openb3d_openb3dcore_TVector_obj* bbt_new_vec=(struct openb3d_openb3dcore_TVector_obj*)((struct openb3d_openb3dcore_TVector_obj*)&bbNullObject);
	struct BBDebugScope_3 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"Divide2",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TVector",
				.var_address=&o
			},
			{
				BBDEBUGDECL_LOCAL,
				"vec",
				":TVector",
				.var_address=&bbt_vec
			},
			{
				BBDEBUGDECL_LOCAL,
				"new_vec",
				":TVector",
				.var_address=&bbt_new_vec
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x220966022118f42, 153, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbt_new_vec=(struct openb3d_openb3dcore_TVector_obj*)(struct openb3d_openb3dcore_TVector_obj*)bbObjectAtomicNew((BBClass *)&openb3d_openb3dcore_TVector);
	struct BBDebugStm __stmt_1 = {0x220966022118f42, 154, 0};
	bbOnDebugEnterStm(&__stmt_1);
	((struct openb3d_openb3dcore_TVector_obj*)bbNullObjectTest((BBObject*)bbt_new_vec))->_openb3d_openb3dcore_tvector_x =(((struct openb3d_openb3dcore_TVector_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tvector_x /((struct openb3d_openb3dcore_TVector_obj*)bbNullObjectTest((BBObject*)bbt_vec))->_openb3d_openb3dcore_tvector_x );
	struct BBDebugStm __stmt_2 = {0x220966022118f42, 155, 0};
	bbOnDebugEnterStm(&__stmt_2);
	((struct openb3d_openb3dcore_TVector_obj*)bbNullObjectTest((BBObject*)bbt_new_vec))->_openb3d_openb3dcore_tvector_y =(((struct openb3d_openb3dcore_TVector_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tvector_y /((struct openb3d_openb3dcore_TVector_obj*)bbNullObjectTest((BBObject*)bbt_vec))->_openb3d_openb3dcore_tvector_y );
	struct BBDebugStm __stmt_3 = {0x220966022118f42, 156, 0};
	bbOnDebugEnterStm(&__stmt_3);
	((struct openb3d_openb3dcore_TVector_obj*)bbNullObjectTest((BBObject*)bbt_new_vec))->_openb3d_openb3dcore_tvector_z =(((struct openb3d_openb3dcore_TVector_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tvector_z /((struct openb3d_openb3dcore_TVector_obj*)bbNullObjectTest((BBObject*)bbt_vec))->_openb3d_openb3dcore_tvector_z );
	struct BBDebugStm __stmt_4 = {0x220966022118f42, 157, 0};
	bbOnDebugEnterStm(&__stmt_4);
	bbOnDebugLeaveScope();
	return (struct openb3d_openb3dcore_TVector_obj*)bbt_new_vec;
}
BBFLOAT _openb3d_openb3dcore_TVector_Dot_TTVector(struct openb3d_openb3dcore_TVector_obj* o,struct openb3d_openb3dcore_TVector_obj* bbt_vec){
	((struct openb3d_openb3dcore_TVector_obj*)bbNullObjectTest((BBObject*)o));
	struct BBDebugScope_2 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"Dot",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TVector",
				.var_address=&o
			},
			{
				BBDEBUGDECL_LOCAL,
				"vec",
				":TVector",
				.var_address=&bbt_vec
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x220966022118f42, 166, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbOnDebugLeaveScope();
	return (((((struct openb3d_openb3dcore_TVector_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tvector_x *((struct openb3d_openb3dcore_TVector_obj*)bbNullObjectTest((BBObject*)bbt_vec))->_openb3d_openb3dcore_tvector_x )+(((struct openb3d_openb3dcore_TVector_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tvector_y *((struct openb3d_openb3dcore_TVector_obj*)bbNullObjectTest((BBObject*)bbt_vec))->_openb3d_openb3dcore_tvector_y ))+(((struct openb3d_openb3dcore_TVector_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tvector_z *((struct openb3d_openb3dcore_TVector_obj*)bbNullObjectTest((BBObject*)bbt_vec))->_openb3d_openb3dcore_tvector_z ));
}
struct openb3d_openb3dcore_TVector_obj* _openb3d_openb3dcore_TVector_Cross_TTVector(struct openb3d_openb3dcore_TVector_obj* o,struct openb3d_openb3dcore_TVector_obj* bbt_vec){
	((struct openb3d_openb3dcore_TVector_obj*)bbNullObjectTest((BBObject*)o));
	struct openb3d_openb3dcore_TVector_obj* bbt_new_vec=(struct openb3d_openb3dcore_TVector_obj*)((struct openb3d_openb3dcore_TVector_obj*)&bbNullObject);
	struct BBDebugScope_3 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"Cross",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TVector",
				.var_address=&o
			},
			{
				BBDEBUGDECL_LOCAL,
				"vec",
				":TVector",
				.var_address=&bbt_vec
			},
			{
				BBDEBUGDECL_LOCAL,
				"new_vec",
				":TVector",
				.var_address=&bbt_new_vec
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x220966022118f42, 175, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbt_new_vec=(struct openb3d_openb3dcore_TVector_obj*)(struct openb3d_openb3dcore_TVector_obj*)bbObjectAtomicNew((BBClass *)&openb3d_openb3dcore_TVector);
	struct BBDebugStm __stmt_1 = {0x220966022118f42, 176, 0};
	bbOnDebugEnterStm(&__stmt_1);
	((struct openb3d_openb3dcore_TVector_obj*)bbNullObjectTest((BBObject*)bbt_new_vec))->_openb3d_openb3dcore_tvector_x =((((struct openb3d_openb3dcore_TVector_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tvector_y *((struct openb3d_openb3dcore_TVector_obj*)bbNullObjectTest((BBObject*)bbt_vec))->_openb3d_openb3dcore_tvector_z )-(((struct openb3d_openb3dcore_TVector_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tvector_z *((struct openb3d_openb3dcore_TVector_obj*)bbNullObjectTest((BBObject*)bbt_vec))->_openb3d_openb3dcore_tvector_y ));
	struct BBDebugStm __stmt_2 = {0x220966022118f42, 177, 0};
	bbOnDebugEnterStm(&__stmt_2);
	((struct openb3d_openb3dcore_TVector_obj*)bbNullObjectTest((BBObject*)bbt_new_vec))->_openb3d_openb3dcore_tvector_y =((((struct openb3d_openb3dcore_TVector_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tvector_z *((struct openb3d_openb3dcore_TVector_obj*)bbNullObjectTest((BBObject*)bbt_vec))->_openb3d_openb3dcore_tvector_x )-(((struct openb3d_openb3dcore_TVector_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tvector_x *((struct openb3d_openb3dcore_TVector_obj*)bbNullObjectTest((BBObject*)bbt_vec))->_openb3d_openb3dcore_tvector_z ));
	struct BBDebugStm __stmt_3 = {0x220966022118f42, 178, 0};
	bbOnDebugEnterStm(&__stmt_3);
	((struct openb3d_openb3dcore_TVector_obj*)bbNullObjectTest((BBObject*)bbt_new_vec))->_openb3d_openb3dcore_tvector_z =((((struct openb3d_openb3dcore_TVector_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tvector_x *((struct openb3d_openb3dcore_TVector_obj*)bbNullObjectTest((BBObject*)bbt_vec))->_openb3d_openb3dcore_tvector_y )-(((struct openb3d_openb3dcore_TVector_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tvector_y *((struct openb3d_openb3dcore_TVector_obj*)bbNullObjectTest((BBObject*)bbt_vec))->_openb3d_openb3dcore_tvector_x ));
	struct BBDebugStm __stmt_4 = {0x220966022118f42, 179, 0};
	bbOnDebugEnterStm(&__stmt_4);
	bbOnDebugLeaveScope();
	return (struct openb3d_openb3dcore_TVector_obj*)bbt_new_vec;
}
BBINT _openb3d_openb3dcore_TVector_Normalize(struct openb3d_openb3dcore_TVector_obj* o){
	((struct openb3d_openb3dcore_TVector_obj*)bbNullObjectTest((BBObject*)o));
	BBFLOAT bbt_d=0;
	struct BBDebugScope_2 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"Normalize",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TVector",
				.var_address=&o
			},
			{
				BBDEBUGDECL_LOCAL,
				"d",
				"f",
				.var_address=&bbt_d
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x220966022118f42, 188, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbt_d=((BBFLOAT)(1.0000000000000000/bbSqr((double)((BBDOUBLE)(((((struct openb3d_openb3dcore_TVector_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tvector_x *((struct openb3d_openb3dcore_TVector_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tvector_x )+(((struct openb3d_openb3dcore_TVector_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tvector_y *((struct openb3d_openb3dcore_TVector_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tvector_y ))+(((struct openb3d_openb3dcore_TVector_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tvector_z *((struct openb3d_openb3dcore_TVector_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tvector_z ))))));
	struct BBDebugStm __stmt_1 = {0x220966022118f42, 189, 0};
	bbOnDebugEnterStm(&__stmt_1);
	((struct openb3d_openb3dcore_TVector_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tvector_x *=bbt_d;
	struct BBDebugStm __stmt_2 = {0x220966022118f42, 190, 0};
	bbOnDebugEnterStm(&__stmt_2);
	((struct openb3d_openb3dcore_TVector_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tvector_y *=bbt_d;
	struct BBDebugStm __stmt_3 = {0x220966022118f42, 191, 0};
	bbOnDebugEnterStm(&__stmt_3);
	((struct openb3d_openb3dcore_TVector_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tvector_z *=bbt_d;
	bbOnDebugLeaveScope();
	return 0;
}
BBFLOAT _openb3d_openb3dcore_TVector_Distance_TTVector(struct openb3d_openb3dcore_TVector_obj* o,struct openb3d_openb3dcore_TVector_obj* bbt_vec){
	((struct openb3d_openb3dcore_TVector_obj*)bbNullObjectTest((BBObject*)o));
	BBFLOAT bbt_dx=0;
	BBFLOAT bbt_dy=0;
	BBFLOAT bbt_dz=0;
	struct BBDebugScope_5 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"Distance",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TVector",
				.var_address=&o
			},
			{
				BBDEBUGDECL_LOCAL,
				"vec",
				":TVector",
				.var_address=&bbt_vec
			},
			{
				BBDEBUGDECL_LOCAL,
				"dx",
				"f",
				.var_address=&bbt_dx
			},
			{
				BBDEBUGDECL_LOCAL,
				"dy",
				"f",
				.var_address=&bbt_dy
			},
			{
				BBDEBUGDECL_LOCAL,
				"dz",
				"f",
				.var_address=&bbt_dz
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x220966022118f42, 200, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbt_dx=(((struct openb3d_openb3dcore_TVector_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tvector_x -((struct openb3d_openb3dcore_TVector_obj*)bbNullObjectTest((BBObject*)bbt_vec))->_openb3d_openb3dcore_tvector_x );
	struct BBDebugStm __stmt_1 = {0x220966022118f42, 200, 0};
	bbOnDebugEnterStm(&__stmt_1);
	bbt_dy=(((struct openb3d_openb3dcore_TVector_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tvector_y -((struct openb3d_openb3dcore_TVector_obj*)bbNullObjectTest((BBObject*)bbt_vec))->_openb3d_openb3dcore_tvector_y );
	struct BBDebugStm __stmt_2 = {0x220966022118f42, 200, 0};
	bbOnDebugEnterStm(&__stmt_2);
	bbt_dz=(((struct openb3d_openb3dcore_TVector_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tvector_z -((struct openb3d_openb3dcore_TVector_obj*)bbNullObjectTest((BBObject*)bbt_vec))->_openb3d_openb3dcore_tvector_z );
	struct BBDebugStm __stmt_3 = {0x220966022118f42, 201, 0};
	bbOnDebugEnterStm(&__stmt_3);
	bbOnDebugLeaveScope();
	return ((BBFLOAT)bbSqr((double)((BBDOUBLE)(((bbt_dx*bbt_dx)+(bbt_dy*bbt_dy))+(bbt_dz*bbt_dz)))));
}
BBFLOAT _openb3d_openb3dcore_TVector_Length(struct openb3d_openb3dcore_TVector_obj* o){
	((struct openb3d_openb3dcore_TVector_obj*)bbNullObjectTest((BBObject*)o));
	struct BBDebugScope_1 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"Length",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TVector",
				.var_address=&o
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x220966022118f42, 210, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbOnDebugLeaveScope();
	return ((BBFLOAT)bbSqr((double)((BBDOUBLE)(((((struct openb3d_openb3dcore_TVector_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tvector_x *((struct openb3d_openb3dcore_TVector_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tvector_x )+(((struct openb3d_openb3dcore_TVector_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tvector_y *((struct openb3d_openb3dcore_TVector_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tvector_y ))+(((struct openb3d_openb3dcore_TVector_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tvector_z *((struct openb3d_openb3dcore_TVector_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tvector_z )))));
}
BBFLOAT _openb3d_openb3dcore_TVector_SquaredLength(struct openb3d_openb3dcore_TVector_obj* o){
	((struct openb3d_openb3dcore_TVector_obj*)bbNullObjectTest((BBObject*)o));
	struct BBDebugScope_1 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"SquaredLength",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TVector",
				.var_address=&o
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x220966022118f42, 219, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbOnDebugLeaveScope();
	return (((((struct openb3d_openb3dcore_TVector_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tvector_x *((struct openb3d_openb3dcore_TVector_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tvector_x )+(((struct openb3d_openb3dcore_TVector_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tvector_y *((struct openb3d_openb3dcore_TVector_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tvector_y ))+(((struct openb3d_openb3dcore_TVector_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tvector_z *((struct openb3d_openb3dcore_TVector_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tvector_z ));
}
BBFLOAT _openb3d_openb3dcore_TVector_SetLength_f(struct openb3d_openb3dcore_TVector_obj* o,BBFLOAT bbt_val){
	((struct openb3d_openb3dcore_TVector_obj*)bbNullObjectTest((BBObject*)o));
	struct BBDebugScope_2 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"SetLength",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TVector",
				.var_address=&o
			},
			{
				BBDEBUGDECL_LOCAL,
				"val",
				"f",
				.var_address=&bbt_val
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x220966022118f42, 228, 0};
	bbOnDebugEnterStm(&__stmt_0);
	((struct openb3d_openb3dcore_TVector_obj*)bbNullObjectTest((BBObject*)o));
	((struct openb3d_openb3dcore_TVector_obj*)o)->clas->m_Normalize((struct openb3d_openb3dcore_TVector_obj*)o);
	struct BBDebugStm __stmt_1 = {0x220966022118f42, 229, 0};
	bbOnDebugEnterStm(&__stmt_1);
	((struct openb3d_openb3dcore_TVector_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tvector_x =(((struct openb3d_openb3dcore_TVector_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tvector_x *bbt_val);
	struct BBDebugStm __stmt_2 = {0x220966022118f42, 230, 0};
	bbOnDebugEnterStm(&__stmt_2);
	((struct openb3d_openb3dcore_TVector_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tvector_y =(((struct openb3d_openb3dcore_TVector_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tvector_y *bbt_val);
	struct BBDebugStm __stmt_3 = {0x220966022118f42, 231, 0};
	bbOnDebugEnterStm(&__stmt_3);
	((struct openb3d_openb3dcore_TVector_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tvector_z =(((struct openb3d_openb3dcore_TVector_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tvector_z *bbt_val);
	bbOnDebugLeaveScope();
	return .00000000f;
}
BBINT _openb3d_openb3dcore_TVector_Compare(struct openb3d_openb3dcore_TVector_obj* o,BBOBJECT bbt_with){
	((struct openb3d_openb3dcore_TVector_obj*)bbNullObjectTest((BBObject*)o));
	struct openb3d_openb3dcore_TVector_obj* bbt_q=(struct openb3d_openb3dcore_TVector_obj*)((struct openb3d_openb3dcore_TVector_obj*)&bbNullObject);
	struct BBDebugScope_3 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"Compare",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TVector",
				.var_address=&o
			},
			{
				BBDEBUGDECL_LOCAL,
				"with",
				":Object",
				.var_address=&bbt_with
			},
			{
				BBDEBUGDECL_LOCAL,
				"q",
				":TVector",
				.var_address=&bbt_q
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x220966022118f42, 240, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbt_q=(struct openb3d_openb3dcore_TVector_obj*)((struct openb3d_openb3dcore_TVector_obj*)bbObjectDowncast((BBOBJECT)bbt_with,(BBClass*)&openb3d_openb3dcore_TVector));
	struct BBDebugStm __stmt_1 = {0x220966022118f42, 241, 0};
	bbOnDebugEnterStm(&__stmt_1);
	if((((struct openb3d_openb3dcore_TVector_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tvector_x -((struct openb3d_openb3dcore_TVector_obj*)bbNullObjectTest((BBObject*)bbt_q))->_openb3d_openb3dcore_tvector_x )>.0001f){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x220966022118f42, 241, 0};
		bbOnDebugEnterStm(&__stmt_0);
		bbOnDebugLeaveScope();
		bbOnDebugLeaveScope();
		return 1;
	}
	struct BBDebugStm __stmt_2 = {0x220966022118f42, 242, 0};
	bbOnDebugEnterStm(&__stmt_2);
	if((((struct openb3d_openb3dcore_TVector_obj*)bbNullObjectTest((BBObject*)bbt_q))->_openb3d_openb3dcore_tvector_x -((struct openb3d_openb3dcore_TVector_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tvector_x )>.0001f){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x220966022118f42, 242, 0};
		bbOnDebugEnterStm(&__stmt_0);
		bbOnDebugLeaveScope();
		bbOnDebugLeaveScope();
		return -1;
	}
	struct BBDebugStm __stmt_3 = {0x220966022118f42, 243, 0};
	bbOnDebugEnterStm(&__stmt_3);
	if((((struct openb3d_openb3dcore_TVector_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tvector_y -((struct openb3d_openb3dcore_TVector_obj*)bbNullObjectTest((BBObject*)bbt_q))->_openb3d_openb3dcore_tvector_y )>.0001f){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x220966022118f42, 243, 0};
		bbOnDebugEnterStm(&__stmt_0);
		bbOnDebugLeaveScope();
		bbOnDebugLeaveScope();
		return 1;
	}
	struct BBDebugStm __stmt_4 = {0x220966022118f42, 244, 0};
	bbOnDebugEnterStm(&__stmt_4);
	if((((struct openb3d_openb3dcore_TVector_obj*)bbNullObjectTest((BBObject*)bbt_q))->_openb3d_openb3dcore_tvector_y -((struct openb3d_openb3dcore_TVector_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tvector_y )>.0001f){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x220966022118f42, 244, 0};
		bbOnDebugEnterStm(&__stmt_0);
		bbOnDebugLeaveScope();
		bbOnDebugLeaveScope();
		return -1;
	}
	struct BBDebugStm __stmt_5 = {0x220966022118f42, 245, 0};
	bbOnDebugEnterStm(&__stmt_5);
	if((((struct openb3d_openb3dcore_TVector_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tvector_z -((struct openb3d_openb3dcore_TVector_obj*)bbNullObjectTest((BBObject*)bbt_q))->_openb3d_openb3dcore_tvector_z )>.0001f){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x220966022118f42, 245, 0};
		bbOnDebugEnterStm(&__stmt_0);
		bbOnDebugLeaveScope();
		bbOnDebugLeaveScope();
		return 1;
	}
	struct BBDebugStm __stmt_6 = {0x220966022118f42, 246, 0};
	bbOnDebugEnterStm(&__stmt_6);
	if((((struct openb3d_openb3dcore_TVector_obj*)bbNullObjectTest((BBObject*)bbt_q))->_openb3d_openb3dcore_tvector_z -((struct openb3d_openb3dcore_TVector_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tvector_z )>.0001f){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x220966022118f42, 246, 0};
		bbOnDebugEnterStm(&__stmt_0);
		bbOnDebugLeaveScope();
		bbOnDebugLeaveScope();
		return -1;
	}
	struct BBDebugStm __stmt_7 = {0x220966022118f42, 247, 0};
	bbOnDebugEnterStm(&__stmt_7);
	bbOnDebugLeaveScope();
	return 0;
}
BBFLOAT openb3d_openb3dcore_TVector_VectorYaw_f_fff(BBFLOAT bbt_vx,BBFLOAT bbt_vy,BBFLOAT bbt_vz){
	struct BBDebugScope_3 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"VectorYaw",
		{
			{
				BBDEBUGDECL_LOCAL,
				"vx",
				"f",
				.var_address=&bbt_vx
			},
			{
				BBDEBUGDECL_LOCAL,
				"vy",
				"f",
				.var_address=&bbt_vy
			},
			{
				BBDEBUGDECL_LOCAL,
				"vz",
				"f",
				.var_address=&bbt_vz
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x220966022118f42, 254, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbOnDebugLeaveScope();
	return ((BBFLOAT)bbATan2((double)((BBDOUBLE)-bbt_vx),(double)((BBDOUBLE)bbt_vz)));
}
BBFLOAT openb3d_openb3dcore_TVector_VectorPitch_f_fff(BBFLOAT bbt_vx,BBFLOAT bbt_vy,BBFLOAT bbt_vz){
	BBFLOAT bbt_ang=0;
	struct BBDebugScope_4 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"VectorPitch",
		{
			{
				BBDEBUGDECL_LOCAL,
				"vx",
				"f",
				.var_address=&bbt_vx
			},
			{
				BBDEBUGDECL_LOCAL,
				"vy",
				"f",
				.var_address=&bbt_vy
			},
			{
				BBDEBUGDECL_LOCAL,
				"vz",
				"f",
				.var_address=&bbt_vz
			},
			{
				BBDEBUGDECL_LOCAL,
				"ang",
				"f",
				.var_address=&bbt_ang
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x220966022118f42, 261, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbt_ang=((BBFLOAT)(bbATan2((double)bbSqr((double)((BBDOUBLE)((bbt_vx*bbt_vx)+(bbt_vz*bbt_vz)))),(double)((BBDOUBLE)bbt_vy))-90.0));
	struct BBDebugStm __stmt_1 = {0x220966022118f42, 262, 0};
	bbOnDebugEnterStm(&__stmt_1);
	if((bbt_ang<=0.0001f) && (bbt_ang>=-0.0001f)){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x220966022118f42, 262, 0};
		bbOnDebugEnterStm(&__stmt_0);
		bbt_ang=0.00000000f;
		bbOnDebugLeaveScope();
	}
	struct BBDebugStm __stmt_2 = {0x220966022118f42, 263, 0};
	bbOnDebugEnterStm(&__stmt_2);
	bbOnDebugLeaveScope();
	return bbt_ang;
}
struct BBDebugScope_25 openb3d_openb3dcore_TVector_scope ={
	BBDEBUGSCOPE_USERTYPE,
	"TVector",
	{
		{
			BBDEBUGDECL_CONST,
			"EPSILON",
			"f",
			.const_value=(BBString*)&_s860
		},
		{
			BBDEBUGDECL_FIELD,
			"x",
			"f",
			.field_offset=offsetof(struct openb3d_openb3dcore_TVector_obj,_openb3d_openb3dcore_tvector_x)
		},
		{
			BBDEBUGDECL_FIELD,
			"y",
			"f",
			.field_offset=offsetof(struct openb3d_openb3dcore_TVector_obj,_openb3d_openb3dcore_tvector_y)
		},
		{
			BBDEBUGDECL_FIELD,
			"z",
			"f",
			.field_offset=offsetof(struct openb3d_openb3dcore_TVector_obj,_openb3d_openb3dcore_tvector_z)
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"New",
			"()i",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_TVector_New
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"Compare",
			"(:Object)i",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_TVector_Compare
		},
		{
			BBDEBUGDECL_TYPEFUNCTION,
			"Create",
			"(f,f,f):TVector",
			.func_ptr=(BBFuncPtr)&openb3d_openb3dcore_TVector_Create_TTVector_fff
		},
		{
			BBDEBUGDECL_TYPEFUNCTION,
			"CopyVecPtr",
			"(:TVecPtr):TVector",
			.func_ptr=(BBFuncPtr)&openb3d_openb3dcore_TVector_CopyVecPtr_TTVector_TTVecPtr
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"GetVecPtr",
			"(:TVecPtr):TVector",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_TVector_GetVecPtr_TTVecPtr
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"Copy",
			"():TVector",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_TVector_Copy
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"Add",
			"(:TVector):TVector",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_TVector_Add_TTVector
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"Subtract",
			"(:TVector):TVector",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_TVector_Subtract_TTVector
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"Multiply",
			"(f):TVector",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_TVector_Multiply_f
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"Multiply2",
			"(:TVector):TVector",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_TVector_Multiply2_TTVector
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"Divide",
			"(f):TVector",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_TVector_Divide_f
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"Divide2",
			"(:TVector):TVector",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_TVector_Divide2_TTVector
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"Dot",
			"(:TVector)f",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_TVector_Dot_TTVector
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"Cross",
			"(:TVector):TVector",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_TVector_Cross_TTVector
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"Normalize",
			"()i",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_TVector_Normalize
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"Distance",
			"(:TVector)f",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_TVector_Distance_TTVector
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"Length",
			"()f",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_TVector_Length
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"SquaredLength",
			"()f",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_TVector_SquaredLength
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"SetLength",
			"(f)f",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_TVector_SetLength_f
		},
		{
			BBDEBUGDECL_TYPEFUNCTION,
			"VectorYaw",
			"(f,f,f)f",
			.func_ptr=(BBFuncPtr)&openb3d_openb3dcore_TVector_VectorYaw_f_fff
		},
		{
			BBDEBUGDECL_TYPEFUNCTION,
			"VectorPitch",
			"(f,f,f)f",
			.func_ptr=(BBFuncPtr)&openb3d_openb3dcore_TVector_VectorPitch_f_fff
		},
		{
			BBDEBUGDECL_END
		}
	}
};
struct BBClass_openb3d_openb3dcore_TVector openb3d_openb3dcore_TVector={
	&bbObjectClass,
	bbObjectFree,
	(BBDebugScope*)&openb3d_openb3dcore_TVector_scope,
	sizeof(struct openb3d_openb3dcore_TVector_obj),
	(void (*)(BBOBJECT))_openb3d_openb3dcore_TVector_New,
	(void (*)(BBOBJECT))_openb3d_openb3dcore_TVector_Delete,
	bbObjectToString,
	_openb3d_openb3dcore_TVector_Compare,
	bbObjectSendMessage,
	0,
	0,
	offsetof(struct openb3d_openb3dcore_TVector_obj,_openb3d_openb3dcore_tvector_z) - offsetof(struct openb3d_openb3dcore_TVector_obj,_openb3d_openb3dcore_tvector_x) + sizeof(BBFLOAT)
	,0
	,offsetof(struct openb3d_openb3dcore_TVector_obj,_openb3d_openb3dcore_tvector_x)
	,openb3d_openb3dcore_TVector_Create_TTVector_fff
	,openb3d_openb3dcore_TVector_CopyVecPtr_TTVector_TTVecPtr
	,_openb3d_openb3dcore_TVector_GetVecPtr_TTVecPtr
	,_openb3d_openb3dcore_TVector_Copy
	,_openb3d_openb3dcore_TVector_Add_TTVector
	,_openb3d_openb3dcore_TVector_Subtract_TTVector
	,_openb3d_openb3dcore_TVector_Multiply_f
	,_openb3d_openb3dcore_TVector_Multiply2_TTVector
	,_openb3d_openb3dcore_TVector_Divide_f
	,_openb3d_openb3dcore_TVector_Divide2_TTVector
	,_openb3d_openb3dcore_TVector_Dot_TTVector
	,_openb3d_openb3dcore_TVector_Cross_TTVector
	,_openb3d_openb3dcore_TVector_Normalize
	,_openb3d_openb3dcore_TVector_Distance_TTVector
	,_openb3d_openb3dcore_TVector_Length
	,_openb3d_openb3dcore_TVector_SquaredLength
	,_openb3d_openb3dcore_TVector_SetLength_f
	,openb3d_openb3dcore_TVector_VectorYaw_f_fff
	,openb3d_openb3dcore_TVector_VectorPitch_f_fff
};

void _openb3d_openb3dcore_TVecPtr_New(struct openb3d_openb3dcore_TVecPtr_obj* o) {
	bbObjectCtor((BBOBJECT)o);
	o->clas = &openb3d_openb3dcore_TVecPtr;
	((struct openb3d_openb3dcore_TVecPtr_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tvecptr_x = 0;
	((struct openb3d_openb3dcore_TVecPtr_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tvecptr_y = 0;
	((struct openb3d_openb3dcore_TVecPtr_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tvecptr_z = 0;
	((struct openb3d_openb3dcore_TVecPtr_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tvecptr_instance = 0;
	struct BBDebugScope __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"New",
		{
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x220966022118f42, 378, 0};
	bbOnDebugEnterStm(&__stmt_0);
	if(openb3d_openb3dcore_TGlobal3D_Log_New!=0){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x220966022118f42, 379, 0};
		bbOnDebugEnterStm(&__stmt_0);
		brl_blitz_DebugLog((BBString*)&_s638);
		bbOnDebugLeaveScope();
	}
	bbOnDebugLeaveScope();
}
void _openb3d_openb3dcore_TVecPtr_Delete(struct openb3d_openb3dcore_TVecPtr_obj* o) {
	struct BBDebugScope_1 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"Delete",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TVecPtr",
				.var_address=&o
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x220966022118f42, 386, 0};
	bbOnDebugEnterStm(&__stmt_0);
	if(openb3d_openb3dcore_TGlobal3D_Log_Del!=0){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x220966022118f42, 387, 0};
		bbOnDebugEnterStm(&__stmt_0);
		brl_blitz_DebugLog((BBString*)&_s639);
		bbOnDebugLeaveScope();
	}
	bbOnDebugLeaveScope();
	bbObjectDtor((BBOBJECT)o);
}
struct openb3d_openb3dcore_TVecPtr_obj* openb3d_openb3dcore_TVecPtr_CreateObject_TTVecPtr_pb(BBBYTE* bbt_inst){
	struct openb3d_openb3dcore_TVecPtr_obj* bbt_obj=(struct openb3d_openb3dcore_TVecPtr_obj*)((struct openb3d_openb3dcore_TVecPtr_obj*)&bbNullObject);
	struct BBDebugScope_2 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"CreateObject",
		{
			{
				BBDEBUGDECL_LOCAL,
				"inst",
				"*b",
				.var_address=&bbt_inst
			},
			{
				BBDEBUGDECL_LOCAL,
				"obj",
				":TVecPtr",
				.var_address=&bbt_obj
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x220966022118f42, 288, 0};
	bbOnDebugEnterStm(&__stmt_0);
	if(bbt_inst==0){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x220966022118f42, 288, 0};
		bbOnDebugEnterStm(&__stmt_0);
		bbOnDebugLeaveScope();
		bbOnDebugLeaveScope();
		return (struct openb3d_openb3dcore_TVecPtr_obj*)&bbNullObject;
	}
	struct BBDebugStm __stmt_1 = {0x220966022118f42, 289, 0};
	bbOnDebugEnterStm(&__stmt_1);
	bbt_obj=(struct openb3d_openb3dcore_TVecPtr_obj*)(struct openb3d_openb3dcore_TVecPtr_obj*)bbObjectAtomicNew((BBClass *)&openb3d_openb3dcore_TVecPtr);
	struct BBDebugStm __stmt_2 = {0x220966022118f42, 291, 0};
	bbOnDebugEnterStm(&__stmt_2);
	((struct brl_map_ptrmap_TPtrMap_obj*)bbNullObjectTest((BBObject*)openb3d_openb3dcore_TVecPtr_vecptr_map))->clas->m_Insert_pbTObject((struct brl_map_ptrmap_TPtrMap_obj*)openb3d_openb3dcore_TVecPtr_vecptr_map,bbt_inst,(BBOBJECT)bbt_obj);
	struct BBDebugStm __stmt_3 = {0x220966022118f42, 295, 0};
	bbOnDebugEnterStm(&__stmt_3);
	((struct openb3d_openb3dcore_TVecPtr_obj*)bbNullObjectTest((BBObject*)bbt_obj))->_openb3d_openb3dcore_tvecptr_instance =bbt_inst;
	struct BBDebugStm __stmt_4 = {0x220966022118f42, 296, 0};
	bbOnDebugEnterStm(&__stmt_4);
	((struct openb3d_openb3dcore_TVecPtr_obj*)bbNullObjectTest((BBObject*)bbt_obj))->clas->m_InitFields((struct openb3d_openb3dcore_TVecPtr_obj*)bbt_obj);
	struct BBDebugStm __stmt_5 = {0x220966022118f42, 297, 0};
	bbOnDebugEnterStm(&__stmt_5);
	bbOnDebugLeaveScope();
	return (struct openb3d_openb3dcore_TVecPtr_obj*)bbt_obj;
}
BBINT openb3d_openb3dcore_TVecPtr_FreeObject_i_pb(BBBYTE* bbt_inst){
	struct BBDebugScope_1 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"FreeObject",
		{
			{
				BBDEBUGDECL_LOCAL,
				"inst",
				"*b",
				.var_address=&bbt_inst
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x220966022118f42, 304, 0};
	bbOnDebugEnterStm(&__stmt_0);
	((struct brl_map_ptrmap_TPtrMap_obj*)bbNullObjectTest((BBObject*)openb3d_openb3dcore_TVecPtr_vecptr_map))->clas->m_Remove_pb((struct brl_map_ptrmap_TPtrMap_obj*)openb3d_openb3dcore_TVecPtr_vecptr_map,bbt_inst);
	bbOnDebugLeaveScope();
	return 0;
}
struct openb3d_openb3dcore_TVecPtr_obj* openb3d_openb3dcore_TVecPtr_GetObject_TTVecPtr_pb(BBBYTE* bbt_inst){
	struct BBDebugScope_1 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"GetObject",
		{
			{
				BBDEBUGDECL_LOCAL,
				"inst",
				"*b",
				.var_address=&bbt_inst
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x220966022118f42, 314, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbOnDebugLeaveScope();
	return (struct openb3d_openb3dcore_TVecPtr_obj*)((struct openb3d_openb3dcore_TVecPtr_obj*)bbObjectDowncast((BBOBJECT)((struct brl_map_ptrmap_TPtrMap_obj*)bbNullObjectTest((BBObject*)openb3d_openb3dcore_TVecPtr_vecptr_map))->clas->m_ValueForKey_pb((struct brl_map_ptrmap_TPtrMap_obj*)openb3d_openb3dcore_TVecPtr_vecptr_map,bbt_inst),(BBClass*)&openb3d_openb3dcore_TVecPtr));
}
BBBYTE* openb3d_openb3dcore_TVecPtr_GetInstance_pb_TTVecPtr(struct openb3d_openb3dcore_TVecPtr_obj* bbt_obj){
	struct BBDebugScope_1 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"GetInstance",
		{
			{
				BBDEBUGDECL_LOCAL,
				"obj",
				":TVecPtr",
				.var_address=&bbt_obj
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x220966022118f42, 323, 0};
	bbOnDebugEnterStm(&__stmt_0);
	if(((BBOBJECT)bbt_obj)==&bbNullObject){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x220966022118f42, 323, 0};
		bbOnDebugEnterStm(&__stmt_0);
		bbOnDebugLeaveScope();
		bbOnDebugLeaveScope();
		return 0;
	}
	struct BBDebugStm __stmt_1 = {0x220966022118f42, 324, 0};
	bbOnDebugEnterStm(&__stmt_1);
	bbOnDebugLeaveScope();
	return ((struct openb3d_openb3dcore_TVecPtr_obj*)bbNullObjectTest((BBObject*)bbt_obj))->_openb3d_openb3dcore_tvecptr_instance ;
}
BBINT _openb3d_openb3dcore_TVecPtr_InitFields(struct openb3d_openb3dcore_TVecPtr_obj* o){
	((struct openb3d_openb3dcore_TVecPtr_obj*)bbNullObjectTest((BBObject*)o));
	struct BBDebugScope_1 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"InitFields",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TVecPtr",
				.var_address=&o
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x220966022118f42, 330, 0};
	bbOnDebugEnterStm(&__stmt_0);
	((struct openb3d_openb3dcore_TVecPtr_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tvecptr_x =VecPtrFloat_(o->clas->f_GetInstance_pb_TTVecPtr((struct openb3d_openb3dcore_TVecPtr_obj*)o),1);
	struct BBDebugStm __stmt_1 = {0x220966022118f42, 331, 0};
	bbOnDebugEnterStm(&__stmt_1);
	((struct openb3d_openb3dcore_TVecPtr_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tvecptr_y =VecPtrFloat_(o->clas->f_GetInstance_pb_TTVecPtr((struct openb3d_openb3dcore_TVecPtr_obj*)o),2);
	struct BBDebugStm __stmt_2 = {0x220966022118f42, 332, 0};
	bbOnDebugEnterStm(&__stmt_2);
	((struct openb3d_openb3dcore_TVecPtr_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tvecptr_z =VecPtrFloat_(o->clas->f_GetInstance_pb_TTVecPtr((struct openb3d_openb3dcore_TVecPtr_obj*)o),3);
	bbOnDebugLeaveScope();
	return 0;
}
struct openb3d_openb3dcore_TVecPtr_obj* openb3d_openb3dcore_TVecPtr_NewVecPtr_TTVecPtr(){
	BBBYTE* bbt_inst=0;
	struct BBDebugScope_1 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"NewVecPtr",
		{
			{
				BBDEBUGDECL_LOCAL,
				"inst",
				"*b",
				.var_address=&bbt_inst
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x220966022118f42, 341, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbt_inst=NewVecPtr_();
	struct BBDebugStm __stmt_1 = {0x220966022118f42, 342, 0};
	bbOnDebugEnterStm(&__stmt_1);
	bbOnDebugLeaveScope();
	return (struct openb3d_openb3dcore_TVecPtr_obj*)openb3d_openb3dcore_TVecPtr_CreateObject_TTVecPtr_pb(bbt_inst);
}
struct openb3d_openb3dcore_TVecPtr_obj* openb3d_openb3dcore_TVecPtr_Create_TTVecPtr_fff(BBFLOAT bbt_x,BBFLOAT bbt_y,BBFLOAT bbt_z){
	BBBYTE* bbt_inst=0;
	struct openb3d_openb3dcore_TVecPtr_obj* bbt_new_vec=(struct openb3d_openb3dcore_TVecPtr_obj*)((struct openb3d_openb3dcore_TVecPtr_obj*)&bbNullObject);
	struct BBDebugScope_5 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"Create",
		{
			{
				BBDEBUGDECL_LOCAL,
				"x",
				"f",
				.var_address=&bbt_x
			},
			{
				BBDEBUGDECL_LOCAL,
				"y",
				"f",
				.var_address=&bbt_y
			},
			{
				BBDEBUGDECL_LOCAL,
				"z",
				"f",
				.var_address=&bbt_z
			},
			{
				BBDEBUGDECL_LOCAL,
				"inst",
				"*b",
				.var_address=&bbt_inst
			},
			{
				BBDEBUGDECL_LOCAL,
				"new_vec",
				":TVecPtr",
				.var_address=&bbt_new_vec
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x220966022118f42, 351, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbt_inst=NewVecPtr_();
	struct BBDebugStm __stmt_1 = {0x220966022118f42, 352, 0};
	bbOnDebugEnterStm(&__stmt_1);
	bbt_new_vec=(struct openb3d_openb3dcore_TVecPtr_obj*)openb3d_openb3dcore_TVecPtr_CreateObject_TTVecPtr_pb(bbt_inst);
	struct BBDebugStm __stmt_2 = {0x220966022118f42, 353, 0};
	bbOnDebugEnterStm(&__stmt_2);
	((struct openb3d_openb3dcore_TVecPtr_obj*)bbNullObjectTest((BBObject*)bbt_new_vec))->_openb3d_openb3dcore_tvecptr_x [0]=bbt_x;
	struct BBDebugStm __stmt_3 = {0x220966022118f42, 354, 0};
	bbOnDebugEnterStm(&__stmt_3);
	((struct openb3d_openb3dcore_TVecPtr_obj*)bbNullObjectTest((BBObject*)bbt_new_vec))->_openb3d_openb3dcore_tvecptr_y [0]=bbt_y;
	struct BBDebugStm __stmt_4 = {0x220966022118f42, 355, 0};
	bbOnDebugEnterStm(&__stmt_4);
	((struct openb3d_openb3dcore_TVecPtr_obj*)bbNullObjectTest((BBObject*)bbt_new_vec))->_openb3d_openb3dcore_tvecptr_z [0]=bbt_z;
	struct BBDebugStm __stmt_5 = {0x220966022118f42, 356, 0};
	bbOnDebugEnterStm(&__stmt_5);
	bbOnDebugLeaveScope();
	return (struct openb3d_openb3dcore_TVecPtr_obj*)bbt_new_vec;
}
struct openb3d_openb3dcore_TVecPtr_obj* openb3d_openb3dcore_TVecPtr_CopyVector_TTVecPtr_TTVector(struct openb3d_openb3dcore_TVector_obj* bbt_vec){
	BBBYTE* bbt_inst=0;
	struct openb3d_openb3dcore_TVecPtr_obj* bbt_new_vec=(struct openb3d_openb3dcore_TVecPtr_obj*)((struct openb3d_openb3dcore_TVecPtr_obj*)&bbNullObject);
	struct BBDebugScope_3 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"CopyVector",
		{
			{
				BBDEBUGDECL_LOCAL,
				"vec",
				":TVector",
				.var_address=&bbt_vec
			},
			{
				BBDEBUGDECL_LOCAL,
				"inst",
				"*b",
				.var_address=&bbt_inst
			},
			{
				BBDEBUGDECL_LOCAL,
				"new_vec",
				":TVecPtr",
				.var_address=&bbt_new_vec
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x220966022118f42, 365, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbt_inst=NewVecPtr_();
	struct BBDebugStm __stmt_1 = {0x220966022118f42, 366, 0};
	bbOnDebugEnterStm(&__stmt_1);
	bbt_new_vec=(struct openb3d_openb3dcore_TVecPtr_obj*)openb3d_openb3dcore_TVecPtr_CreateObject_TTVecPtr_pb(bbt_inst);
	struct BBDebugStm __stmt_2 = {0x220966022118f42, 367, 0};
	bbOnDebugEnterStm(&__stmt_2);
	((struct openb3d_openb3dcore_TVecPtr_obj*)bbNullObjectTest((BBObject*)bbt_new_vec))->_openb3d_openb3dcore_tvecptr_x [0]=((struct openb3d_openb3dcore_TVector_obj*)bbNullObjectTest((BBObject*)bbt_vec))->_openb3d_openb3dcore_tvector_x ;
	struct BBDebugStm __stmt_3 = {0x220966022118f42, 368, 0};
	bbOnDebugEnterStm(&__stmt_3);
	((struct openb3d_openb3dcore_TVecPtr_obj*)bbNullObjectTest((BBObject*)bbt_new_vec))->_openb3d_openb3dcore_tvecptr_y [0]=((struct openb3d_openb3dcore_TVector_obj*)bbNullObjectTest((BBObject*)bbt_vec))->_openb3d_openb3dcore_tvector_y ;
	struct BBDebugStm __stmt_4 = {0x220966022118f42, 369, 0};
	bbOnDebugEnterStm(&__stmt_4);
	((struct openb3d_openb3dcore_TVecPtr_obj*)bbNullObjectTest((BBObject*)bbt_new_vec))->_openb3d_openb3dcore_tvecptr_z [0]=((struct openb3d_openb3dcore_TVector_obj*)bbNullObjectTest((BBObject*)bbt_vec))->_openb3d_openb3dcore_tvector_z ;
	struct BBDebugStm __stmt_5 = {0x220966022118f42, 370, 0};
	bbOnDebugEnterStm(&__stmt_5);
	bbOnDebugLeaveScope();
	return (struct openb3d_openb3dcore_TVecPtr_obj*)bbt_new_vec;
}
struct openb3d_openb3dcore_TVecPtr_obj* _openb3d_openb3dcore_TVecPtr_GetVector_TTVector(struct openb3d_openb3dcore_TVecPtr_obj* o,struct openb3d_openb3dcore_TVector_obj* bbt_vec){
	((struct openb3d_openb3dcore_TVecPtr_obj*)bbNullObjectTest((BBObject*)o));
	struct BBDebugScope_2 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"GetVector",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TVecPtr",
				.var_address=&o
			},
			{
				BBDEBUGDECL_LOCAL,
				"vec",
				":TVector",
				.var_address=&bbt_vec
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x220966022118f42, 397, 0};
	bbOnDebugEnterStm(&__stmt_0);
	((struct openb3d_openb3dcore_TVecPtr_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tvecptr_x [0]=((struct openb3d_openb3dcore_TVector_obj*)bbNullObjectTest((BBObject*)bbt_vec))->_openb3d_openb3dcore_tvector_x ;
	struct BBDebugStm __stmt_1 = {0x220966022118f42, 398, 0};
	bbOnDebugEnterStm(&__stmt_1);
	((struct openb3d_openb3dcore_TVecPtr_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tvecptr_y [0]=((struct openb3d_openb3dcore_TVector_obj*)bbNullObjectTest((BBObject*)bbt_vec))->_openb3d_openb3dcore_tvector_y ;
	struct BBDebugStm __stmt_2 = {0x220966022118f42, 399, 0};
	bbOnDebugEnterStm(&__stmt_2);
	((struct openb3d_openb3dcore_TVecPtr_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tvecptr_z [0]=((struct openb3d_openb3dcore_TVector_obj*)bbNullObjectTest((BBObject*)bbt_vec))->_openb3d_openb3dcore_tvector_z ;
	bbOnDebugLeaveScope();
	return (struct openb3d_openb3dcore_TVecPtr_obj*)((struct openb3d_openb3dcore_TVecPtr_obj*)&bbNullObject);
}
BBFLOAT openb3d_openb3dcore_TVecPtr_Magnitude_f_fff(BBFLOAT bbt_v0,BBFLOAT bbt_v1,BBFLOAT bbt_v2){
	struct BBDebugScope_3 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"Magnitude",
		{
			{
				BBDEBUGDECL_LOCAL,
				"v0",
				"f",
				.var_address=&bbt_v0
			},
			{
				BBDEBUGDECL_LOCAL,
				"v1",
				"f",
				.var_address=&bbt_v1
			},
			{
				BBDEBUGDECL_LOCAL,
				"v2",
				"f",
				.var_address=&bbt_v2
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x220966022118f42, 408, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbOnDebugLeaveScope();
	return ((BBFLOAT)bbSqr((double)((BBDOUBLE)(((bbt_v0*bbt_v0)+(bbt_v1*bbt_v1))+(bbt_v2*bbt_v2)))));
}
struct openb3d_openb3dcore_TVecPtr_obj* _openb3d_openb3dcore_TVecPtr_Copy(struct openb3d_openb3dcore_TVecPtr_obj* o){
	((struct openb3d_openb3dcore_TVecPtr_obj*)bbNullObjectTest((BBObject*)o));
	BBBYTE* bbt_inst=0;
	struct openb3d_openb3dcore_TVecPtr_obj* bbt_new_vec=(struct openb3d_openb3dcore_TVecPtr_obj*)((struct openb3d_openb3dcore_TVecPtr_obj*)&bbNullObject);
	struct BBDebugScope_3 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"Copy",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TVecPtr",
				.var_address=&o
			},
			{
				BBDEBUGDECL_LOCAL,
				"inst",
				"*b",
				.var_address=&bbt_inst
			},
			{
				BBDEBUGDECL_LOCAL,
				"new_vec",
				":TVecPtr",
				.var_address=&bbt_new_vec
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x220966022118f42, 419, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbt_inst=VecPtrCopy_(o->clas->f_GetInstance_pb_TTVecPtr((struct openb3d_openb3dcore_TVecPtr_obj*)o));
	struct BBDebugStm __stmt_1 = {0x220966022118f42, 420, 0};
	bbOnDebugEnterStm(&__stmt_1);
	bbt_new_vec=(struct openb3d_openb3dcore_TVecPtr_obj*)o->clas->f_GetObject_TTVecPtr_pb(bbt_inst);
	struct BBDebugStm __stmt_2 = {0x220966022118f42, 421, 0};
	bbOnDebugEnterStm(&__stmt_2);
	if((((BBOBJECT)bbt_new_vec)==&bbNullObject) && (bbt_inst!=0)){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x220966022118f42, 421, 0};
		bbOnDebugEnterStm(&__stmt_0);
		bbt_new_vec=(struct openb3d_openb3dcore_TVecPtr_obj*)o->clas->f_CreateObject_TTVecPtr_pb(bbt_inst);
		bbOnDebugLeaveScope();
	}
	struct BBDebugStm __stmt_3 = {0x220966022118f42, 422, 0};
	bbOnDebugEnterStm(&__stmt_3);
	bbOnDebugLeaveScope();
	return (struct openb3d_openb3dcore_TVecPtr_obj*)bbt_new_vec;
}
struct openb3d_openb3dcore_TVecPtr_obj* _openb3d_openb3dcore_TVecPtr_Negate(struct openb3d_openb3dcore_TVecPtr_obj* o){
	((struct openb3d_openb3dcore_TVecPtr_obj*)bbNullObjectTest((BBObject*)o));
	BBBYTE* bbt_inst=0;
	struct openb3d_openb3dcore_TVecPtr_obj* bbt_new_vec=(struct openb3d_openb3dcore_TVecPtr_obj*)((struct openb3d_openb3dcore_TVecPtr_obj*)&bbNullObject);
	struct BBDebugScope_3 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"Negate",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TVecPtr",
				.var_address=&o
			},
			{
				BBDEBUGDECL_LOCAL,
				"inst",
				"*b",
				.var_address=&bbt_inst
			},
			{
				BBDEBUGDECL_LOCAL,
				"new_vec",
				":TVecPtr",
				.var_address=&bbt_new_vec
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x220966022118f42, 431, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbt_inst=VecPtrNegate_(o->clas->f_GetInstance_pb_TTVecPtr((struct openb3d_openb3dcore_TVecPtr_obj*)o));
	struct BBDebugStm __stmt_1 = {0x220966022118f42, 432, 0};
	bbOnDebugEnterStm(&__stmt_1);
	bbt_new_vec=(struct openb3d_openb3dcore_TVecPtr_obj*)o->clas->f_GetObject_TTVecPtr_pb(bbt_inst);
	struct BBDebugStm __stmt_2 = {0x220966022118f42, 433, 0};
	bbOnDebugEnterStm(&__stmt_2);
	if((((BBOBJECT)bbt_new_vec)==&bbNullObject) && (bbt_inst!=0)){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x220966022118f42, 433, 0};
		bbOnDebugEnterStm(&__stmt_0);
		bbt_new_vec=(struct openb3d_openb3dcore_TVecPtr_obj*)o->clas->f_CreateObject_TTVecPtr_pb(bbt_inst);
		bbOnDebugLeaveScope();
	}
	struct BBDebugStm __stmt_3 = {0x220966022118f42, 434, 0};
	bbOnDebugEnterStm(&__stmt_3);
	bbOnDebugLeaveScope();
	return (struct openb3d_openb3dcore_TVecPtr_obj*)bbt_new_vec;
}
struct openb3d_openb3dcore_TVecPtr_obj* _openb3d_openb3dcore_TVecPtr_Add_TTVecPtr(struct openb3d_openb3dcore_TVecPtr_obj* o,struct openb3d_openb3dcore_TVecPtr_obj* bbt_vec){
	((struct openb3d_openb3dcore_TVecPtr_obj*)bbNullObjectTest((BBObject*)o));
	BBBYTE* bbt_inst=0;
	struct openb3d_openb3dcore_TVecPtr_obj* bbt_new_vec=(struct openb3d_openb3dcore_TVecPtr_obj*)((struct openb3d_openb3dcore_TVecPtr_obj*)&bbNullObject);
	struct BBDebugScope_4 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"Add",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TVecPtr",
				.var_address=&o
			},
			{
				BBDEBUGDECL_LOCAL,
				"vec",
				":TVecPtr",
				.var_address=&bbt_vec
			},
			{
				BBDEBUGDECL_LOCAL,
				"inst",
				"*b",
				.var_address=&bbt_inst
			},
			{
				BBDEBUGDECL_LOCAL,
				"new_vec",
				":TVecPtr",
				.var_address=&bbt_new_vec
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x220966022118f42, 443, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbt_inst=VecPtrAdd_(o->clas->f_GetInstance_pb_TTVecPtr((struct openb3d_openb3dcore_TVecPtr_obj*)o),o->clas->f_GetInstance_pb_TTVecPtr((struct openb3d_openb3dcore_TVecPtr_obj*)bbt_vec));
	struct BBDebugStm __stmt_1 = {0x220966022118f42, 444, 0};
	bbOnDebugEnterStm(&__stmt_1);
	bbt_new_vec=(struct openb3d_openb3dcore_TVecPtr_obj*)o->clas->f_GetObject_TTVecPtr_pb(bbt_inst);
	struct BBDebugStm __stmt_2 = {0x220966022118f42, 445, 0};
	bbOnDebugEnterStm(&__stmt_2);
	if((((BBOBJECT)bbt_new_vec)==&bbNullObject) && (bbt_inst!=0)){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x220966022118f42, 445, 0};
		bbOnDebugEnterStm(&__stmt_0);
		bbt_new_vec=(struct openb3d_openb3dcore_TVecPtr_obj*)o->clas->f_CreateObject_TTVecPtr_pb(bbt_inst);
		bbOnDebugLeaveScope();
	}
	struct BBDebugStm __stmt_3 = {0x220966022118f42, 446, 0};
	bbOnDebugEnterStm(&__stmt_3);
	bbOnDebugLeaveScope();
	return (struct openb3d_openb3dcore_TVecPtr_obj*)bbt_new_vec;
}
struct openb3d_openb3dcore_TVecPtr_obj* _openb3d_openb3dcore_TVecPtr_Subtract_TTVecPtr(struct openb3d_openb3dcore_TVecPtr_obj* o,struct openb3d_openb3dcore_TVecPtr_obj* bbt_vec){
	((struct openb3d_openb3dcore_TVecPtr_obj*)bbNullObjectTest((BBObject*)o));
	BBBYTE* bbt_inst=0;
	struct openb3d_openb3dcore_TVecPtr_obj* bbt_new_vec=(struct openb3d_openb3dcore_TVecPtr_obj*)((struct openb3d_openb3dcore_TVecPtr_obj*)&bbNullObject);
	struct BBDebugScope_4 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"Subtract",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TVecPtr",
				.var_address=&o
			},
			{
				BBDEBUGDECL_LOCAL,
				"vec",
				":TVecPtr",
				.var_address=&bbt_vec
			},
			{
				BBDEBUGDECL_LOCAL,
				"inst",
				"*b",
				.var_address=&bbt_inst
			},
			{
				BBDEBUGDECL_LOCAL,
				"new_vec",
				":TVecPtr",
				.var_address=&bbt_new_vec
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x220966022118f42, 455, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbt_inst=VecPtrSubtract_(o->clas->f_GetInstance_pb_TTVecPtr((struct openb3d_openb3dcore_TVecPtr_obj*)o),o->clas->f_GetInstance_pb_TTVecPtr((struct openb3d_openb3dcore_TVecPtr_obj*)bbt_vec));
	struct BBDebugStm __stmt_1 = {0x220966022118f42, 456, 0};
	bbOnDebugEnterStm(&__stmt_1);
	bbt_new_vec=(struct openb3d_openb3dcore_TVecPtr_obj*)o->clas->f_GetObject_TTVecPtr_pb(bbt_inst);
	struct BBDebugStm __stmt_2 = {0x220966022118f42, 457, 0};
	bbOnDebugEnterStm(&__stmt_2);
	if((((BBOBJECT)bbt_new_vec)==&bbNullObject) && (bbt_inst!=0)){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x220966022118f42, 457, 0};
		bbOnDebugEnterStm(&__stmt_0);
		bbt_new_vec=(struct openb3d_openb3dcore_TVecPtr_obj*)o->clas->f_CreateObject_TTVecPtr_pb(bbt_inst);
		bbOnDebugLeaveScope();
	}
	struct BBDebugStm __stmt_3 = {0x220966022118f42, 458, 0};
	bbOnDebugEnterStm(&__stmt_3);
	bbOnDebugLeaveScope();
	return (struct openb3d_openb3dcore_TVecPtr_obj*)bbt_new_vec;
}
struct openb3d_openb3dcore_TVecPtr_obj* _openb3d_openb3dcore_TVecPtr_Multiply_f(struct openb3d_openb3dcore_TVecPtr_obj* o,BBFLOAT bbt_scale){
	((struct openb3d_openb3dcore_TVecPtr_obj*)bbNullObjectTest((BBObject*)o));
	BBBYTE* bbt_inst=0;
	struct openb3d_openb3dcore_TVecPtr_obj* bbt_new_vec=(struct openb3d_openb3dcore_TVecPtr_obj*)((struct openb3d_openb3dcore_TVecPtr_obj*)&bbNullObject);
	struct BBDebugScope_4 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"Multiply",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TVecPtr",
				.var_address=&o
			},
			{
				BBDEBUGDECL_LOCAL,
				"scale",
				"f",
				.var_address=&bbt_scale
			},
			{
				BBDEBUGDECL_LOCAL,
				"inst",
				"*b",
				.var_address=&bbt_inst
			},
			{
				BBDEBUGDECL_LOCAL,
				"new_vec",
				":TVecPtr",
				.var_address=&bbt_new_vec
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x220966022118f42, 467, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbt_inst=VecPtrMultiply_(o->clas->f_GetInstance_pb_TTVecPtr((struct openb3d_openb3dcore_TVecPtr_obj*)o),bbt_scale);
	struct BBDebugStm __stmt_1 = {0x220966022118f42, 468, 0};
	bbOnDebugEnterStm(&__stmt_1);
	bbt_new_vec=(struct openb3d_openb3dcore_TVecPtr_obj*)o->clas->f_GetObject_TTVecPtr_pb(bbt_inst);
	struct BBDebugStm __stmt_2 = {0x220966022118f42, 469, 0};
	bbOnDebugEnterStm(&__stmt_2);
	if((((BBOBJECT)bbt_new_vec)==&bbNullObject) && (bbt_inst!=0)){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x220966022118f42, 469, 0};
		bbOnDebugEnterStm(&__stmt_0);
		bbt_new_vec=(struct openb3d_openb3dcore_TVecPtr_obj*)o->clas->f_CreateObject_TTVecPtr_pb(bbt_inst);
		bbOnDebugLeaveScope();
	}
	struct BBDebugStm __stmt_3 = {0x220966022118f42, 470, 0};
	bbOnDebugEnterStm(&__stmt_3);
	bbOnDebugLeaveScope();
	return (struct openb3d_openb3dcore_TVecPtr_obj*)bbt_new_vec;
}
struct openb3d_openb3dcore_TVecPtr_obj* _openb3d_openb3dcore_TVecPtr_Multiply2_TTVecPtr(struct openb3d_openb3dcore_TVecPtr_obj* o,struct openb3d_openb3dcore_TVecPtr_obj* bbt_vec){
	((struct openb3d_openb3dcore_TVecPtr_obj*)bbNullObjectTest((BBObject*)o));
	BBBYTE* bbt_inst=0;
	struct openb3d_openb3dcore_TVecPtr_obj* bbt_new_vec=(struct openb3d_openb3dcore_TVecPtr_obj*)((struct openb3d_openb3dcore_TVecPtr_obj*)&bbNullObject);
	struct BBDebugScope_4 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"Multiply2",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TVecPtr",
				.var_address=&o
			},
			{
				BBDEBUGDECL_LOCAL,
				"vec",
				":TVecPtr",
				.var_address=&bbt_vec
			},
			{
				BBDEBUGDECL_LOCAL,
				"inst",
				"*b",
				.var_address=&bbt_inst
			},
			{
				BBDEBUGDECL_LOCAL,
				"new_vec",
				":TVecPtr",
				.var_address=&bbt_new_vec
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x220966022118f42, 479, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbt_inst=VecPtrMultiply2_(o->clas->f_GetInstance_pb_TTVecPtr((struct openb3d_openb3dcore_TVecPtr_obj*)o),o->clas->f_GetInstance_pb_TTVecPtr((struct openb3d_openb3dcore_TVecPtr_obj*)bbt_vec));
	struct BBDebugStm __stmt_1 = {0x220966022118f42, 480, 0};
	bbOnDebugEnterStm(&__stmt_1);
	bbt_new_vec=(struct openb3d_openb3dcore_TVecPtr_obj*)o->clas->f_GetObject_TTVecPtr_pb(bbt_inst);
	struct BBDebugStm __stmt_2 = {0x220966022118f42, 481, 0};
	bbOnDebugEnterStm(&__stmt_2);
	if((((BBOBJECT)bbt_new_vec)==&bbNullObject) && (bbt_inst!=0)){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x220966022118f42, 481, 0};
		bbOnDebugEnterStm(&__stmt_0);
		bbt_new_vec=(struct openb3d_openb3dcore_TVecPtr_obj*)o->clas->f_CreateObject_TTVecPtr_pb(bbt_inst);
		bbOnDebugLeaveScope();
	}
	struct BBDebugStm __stmt_3 = {0x220966022118f42, 482, 0};
	bbOnDebugEnterStm(&__stmt_3);
	bbOnDebugLeaveScope();
	return (struct openb3d_openb3dcore_TVecPtr_obj*)bbt_new_vec;
}
struct openb3d_openb3dcore_TVecPtr_obj* _openb3d_openb3dcore_TVecPtr_Divide_f(struct openb3d_openb3dcore_TVecPtr_obj* o,BBFLOAT bbt_scale){
	((struct openb3d_openb3dcore_TVecPtr_obj*)bbNullObjectTest((BBObject*)o));
	BBBYTE* bbt_inst=0;
	struct openb3d_openb3dcore_TVecPtr_obj* bbt_new_vec=(struct openb3d_openb3dcore_TVecPtr_obj*)((struct openb3d_openb3dcore_TVecPtr_obj*)&bbNullObject);
	struct BBDebugScope_4 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"Divide",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TVecPtr",
				.var_address=&o
			},
			{
				BBDEBUGDECL_LOCAL,
				"scale",
				"f",
				.var_address=&bbt_scale
			},
			{
				BBDEBUGDECL_LOCAL,
				"inst",
				"*b",
				.var_address=&bbt_inst
			},
			{
				BBDEBUGDECL_LOCAL,
				"new_vec",
				":TVecPtr",
				.var_address=&bbt_new_vec
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x220966022118f42, 491, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbt_inst=VecPtrDivide_(o->clas->f_GetInstance_pb_TTVecPtr((struct openb3d_openb3dcore_TVecPtr_obj*)o),bbt_scale);
	struct BBDebugStm __stmt_1 = {0x220966022118f42, 492, 0};
	bbOnDebugEnterStm(&__stmt_1);
	bbt_new_vec=(struct openb3d_openb3dcore_TVecPtr_obj*)o->clas->f_GetObject_TTVecPtr_pb(bbt_inst);
	struct BBDebugStm __stmt_2 = {0x220966022118f42, 493, 0};
	bbOnDebugEnterStm(&__stmt_2);
	if((((BBOBJECT)bbt_new_vec)==&bbNullObject) && (bbt_inst!=0)){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x220966022118f42, 493, 0};
		bbOnDebugEnterStm(&__stmt_0);
		bbt_new_vec=(struct openb3d_openb3dcore_TVecPtr_obj*)o->clas->f_CreateObject_TTVecPtr_pb(bbt_inst);
		bbOnDebugLeaveScope();
	}
	struct BBDebugStm __stmt_3 = {0x220966022118f42, 494, 0};
	bbOnDebugEnterStm(&__stmt_3);
	bbOnDebugLeaveScope();
	return (struct openb3d_openb3dcore_TVecPtr_obj*)bbt_new_vec;
}
struct openb3d_openb3dcore_TVecPtr_obj* _openb3d_openb3dcore_TVecPtr_Divide2_TTVecPtr(struct openb3d_openb3dcore_TVecPtr_obj* o,struct openb3d_openb3dcore_TVecPtr_obj* bbt_vec){
	((struct openb3d_openb3dcore_TVecPtr_obj*)bbNullObjectTest((BBObject*)o));
	BBBYTE* bbt_inst=0;
	struct openb3d_openb3dcore_TVecPtr_obj* bbt_new_vec=(struct openb3d_openb3dcore_TVecPtr_obj*)((struct openb3d_openb3dcore_TVecPtr_obj*)&bbNullObject);
	struct BBDebugScope_4 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"Divide2",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TVecPtr",
				.var_address=&o
			},
			{
				BBDEBUGDECL_LOCAL,
				"vec",
				":TVecPtr",
				.var_address=&bbt_vec
			},
			{
				BBDEBUGDECL_LOCAL,
				"inst",
				"*b",
				.var_address=&bbt_inst
			},
			{
				BBDEBUGDECL_LOCAL,
				"new_vec",
				":TVecPtr",
				.var_address=&bbt_new_vec
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x220966022118f42, 503, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbt_inst=VecPtrDivide2_(o->clas->f_GetInstance_pb_TTVecPtr((struct openb3d_openb3dcore_TVecPtr_obj*)o),o->clas->f_GetInstance_pb_TTVecPtr((struct openb3d_openb3dcore_TVecPtr_obj*)bbt_vec));
	struct BBDebugStm __stmt_1 = {0x220966022118f42, 504, 0};
	bbOnDebugEnterStm(&__stmt_1);
	bbt_new_vec=(struct openb3d_openb3dcore_TVecPtr_obj*)o->clas->f_GetObject_TTVecPtr_pb(bbt_inst);
	struct BBDebugStm __stmt_2 = {0x220966022118f42, 505, 0};
	bbOnDebugEnterStm(&__stmt_2);
	if((((BBOBJECT)bbt_new_vec)==&bbNullObject) && (bbt_inst!=0)){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x220966022118f42, 505, 0};
		bbOnDebugEnterStm(&__stmt_0);
		bbt_new_vec=(struct openb3d_openb3dcore_TVecPtr_obj*)o->clas->f_CreateObject_TTVecPtr_pb(bbt_inst);
		bbOnDebugLeaveScope();
	}
	struct BBDebugStm __stmt_3 = {0x220966022118f42, 506, 0};
	bbOnDebugEnterStm(&__stmt_3);
	bbOnDebugLeaveScope();
	return (struct openb3d_openb3dcore_TVecPtr_obj*)bbt_new_vec;
}
BBFLOAT _openb3d_openb3dcore_TVecPtr_Dot_TTVecPtr(struct openb3d_openb3dcore_TVecPtr_obj* o,struct openb3d_openb3dcore_TVecPtr_obj* bbt_vec){
	((struct openb3d_openb3dcore_TVecPtr_obj*)bbNullObjectTest((BBObject*)o));
	struct BBDebugScope_2 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"Dot",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TVecPtr",
				.var_address=&o
			},
			{
				BBDEBUGDECL_LOCAL,
				"vec",
				":TVecPtr",
				.var_address=&bbt_vec
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x220966022118f42, 515, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbOnDebugLeaveScope();
	return VecPtrDot_(o->clas->f_GetInstance_pb_TTVecPtr((struct openb3d_openb3dcore_TVecPtr_obj*)o),o->clas->f_GetInstance_pb_TTVecPtr((struct openb3d_openb3dcore_TVecPtr_obj*)bbt_vec));
}
struct openb3d_openb3dcore_TVecPtr_obj* _openb3d_openb3dcore_TVecPtr_Cross_TTVecPtr(struct openb3d_openb3dcore_TVecPtr_obj* o,struct openb3d_openb3dcore_TVecPtr_obj* bbt_vec){
	((struct openb3d_openb3dcore_TVecPtr_obj*)bbNullObjectTest((BBObject*)o));
	BBBYTE* bbt_inst=0;
	struct openb3d_openb3dcore_TVecPtr_obj* bbt_new_vec=(struct openb3d_openb3dcore_TVecPtr_obj*)((struct openb3d_openb3dcore_TVecPtr_obj*)&bbNullObject);
	struct BBDebugScope_4 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"Cross",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TVecPtr",
				.var_address=&o
			},
			{
				BBDEBUGDECL_LOCAL,
				"vec",
				":TVecPtr",
				.var_address=&bbt_vec
			},
			{
				BBDEBUGDECL_LOCAL,
				"inst",
				"*b",
				.var_address=&bbt_inst
			},
			{
				BBDEBUGDECL_LOCAL,
				"new_vec",
				":TVecPtr",
				.var_address=&bbt_new_vec
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x220966022118f42, 524, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbt_inst=VecPtrCross_(o->clas->f_GetInstance_pb_TTVecPtr((struct openb3d_openb3dcore_TVecPtr_obj*)o),o->clas->f_GetInstance_pb_TTVecPtr((struct openb3d_openb3dcore_TVecPtr_obj*)bbt_vec));
	struct BBDebugStm __stmt_1 = {0x220966022118f42, 525, 0};
	bbOnDebugEnterStm(&__stmt_1);
	bbt_new_vec=(struct openb3d_openb3dcore_TVecPtr_obj*)o->clas->f_GetObject_TTVecPtr_pb(bbt_inst);
	struct BBDebugStm __stmt_2 = {0x220966022118f42, 526, 0};
	bbOnDebugEnterStm(&__stmt_2);
	if((((BBOBJECT)bbt_new_vec)==&bbNullObject) && (bbt_inst!=0)){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x220966022118f42, 526, 0};
		bbOnDebugEnterStm(&__stmt_0);
		bbt_new_vec=(struct openb3d_openb3dcore_TVecPtr_obj*)o->clas->f_CreateObject_TTVecPtr_pb(bbt_inst);
		bbOnDebugLeaveScope();
	}
	struct BBDebugStm __stmt_3 = {0x220966022118f42, 527, 0};
	bbOnDebugEnterStm(&__stmt_3);
	bbOnDebugLeaveScope();
	return (struct openb3d_openb3dcore_TVecPtr_obj*)bbt_new_vec;
}
BBFLOAT _openb3d_openb3dcore_TVecPtr_Length(struct openb3d_openb3dcore_TVecPtr_obj* o){
	((struct openb3d_openb3dcore_TVecPtr_obj*)bbNullObjectTest((BBObject*)o));
	struct BBDebugScope_1 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"Length",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TVecPtr",
				.var_address=&o
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x220966022118f42, 536, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbOnDebugLeaveScope();
	return VecPtrLength_(o->clas->f_GetInstance_pb_TTVecPtr((struct openb3d_openb3dcore_TVecPtr_obj*)o));
}
BBFLOAT _openb3d_openb3dcore_TVecPtr_Distance_TTVecPtr(struct openb3d_openb3dcore_TVecPtr_obj* o,struct openb3d_openb3dcore_TVecPtr_obj* bbt_vec){
	((struct openb3d_openb3dcore_TVecPtr_obj*)bbNullObjectTest((BBObject*)o));
	struct BBDebugScope_2 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"Distance",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TVecPtr",
				.var_address=&o
			},
			{
				BBDEBUGDECL_LOCAL,
				"vec",
				":TVecPtr",
				.var_address=&bbt_vec
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x220966022118f42, 545, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbOnDebugLeaveScope();
	return VecPtrDistance_(o->clas->f_GetInstance_pb_TTVecPtr((struct openb3d_openb3dcore_TVecPtr_obj*)o),o->clas->f_GetInstance_pb_TTVecPtr((struct openb3d_openb3dcore_TVecPtr_obj*)bbt_vec));
}
struct openb3d_openb3dcore_TVecPtr_obj* _openb3d_openb3dcore_TVecPtr_Normalized(struct openb3d_openb3dcore_TVecPtr_obj* o){
	((struct openb3d_openb3dcore_TVecPtr_obj*)bbNullObjectTest((BBObject*)o));
	BBBYTE* bbt_inst=0;
	struct openb3d_openb3dcore_TVecPtr_obj* bbt_new_vec=(struct openb3d_openb3dcore_TVecPtr_obj*)((struct openb3d_openb3dcore_TVecPtr_obj*)&bbNullObject);
	struct BBDebugScope_3 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"Normalized",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TVecPtr",
				.var_address=&o
			},
			{
				BBDEBUGDECL_LOCAL,
				"inst",
				"*b",
				.var_address=&bbt_inst
			},
			{
				BBDEBUGDECL_LOCAL,
				"new_vec",
				":TVecPtr",
				.var_address=&bbt_new_vec
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x220966022118f42, 554, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbt_inst=VecPtrNormalized_(o->clas->f_GetInstance_pb_TTVecPtr((struct openb3d_openb3dcore_TVecPtr_obj*)o));
	struct BBDebugStm __stmt_1 = {0x220966022118f42, 555, 0};
	bbOnDebugEnterStm(&__stmt_1);
	bbt_new_vec=(struct openb3d_openb3dcore_TVecPtr_obj*)o->clas->f_GetObject_TTVecPtr_pb(bbt_inst);
	struct BBDebugStm __stmt_2 = {0x220966022118f42, 556, 0};
	bbOnDebugEnterStm(&__stmt_2);
	if((((BBOBJECT)bbt_new_vec)==&bbNullObject) && (bbt_inst!=0)){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x220966022118f42, 556, 0};
		bbOnDebugEnterStm(&__stmt_0);
		bbt_new_vec=(struct openb3d_openb3dcore_TVecPtr_obj*)o->clas->f_CreateObject_TTVecPtr_pb(bbt_inst);
		bbOnDebugLeaveScope();
	}
	struct BBDebugStm __stmt_3 = {0x220966022118f42, 557, 0};
	bbOnDebugEnterStm(&__stmt_3);
	bbOnDebugLeaveScope();
	return (struct openb3d_openb3dcore_TVecPtr_obj*)bbt_new_vec;
}
BBINT _openb3d_openb3dcore_TVecPtr_Normalize(struct openb3d_openb3dcore_TVecPtr_obj* o){
	((struct openb3d_openb3dcore_TVecPtr_obj*)bbNullObjectTest((BBObject*)o));
	struct BBDebugScope_1 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"Normalize",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TVecPtr",
				.var_address=&o
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x220966022118f42, 566, 0};
	bbOnDebugEnterStm(&__stmt_0);
	VecPtrNormalize_(o->clas->f_GetInstance_pb_TTVecPtr((struct openb3d_openb3dcore_TVecPtr_obj*)o));
	bbOnDebugLeaveScope();
	return 0;
}
BBFLOAT openb3d_openb3dcore_TVecPtr_VectorYaw_f_fff(BBFLOAT bbt_vx,BBFLOAT bbt_vy,BBFLOAT bbt_vz){
	struct BBDebugScope_3 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"VectorYaw",
		{
			{
				BBDEBUGDECL_LOCAL,
				"vx",
				"f",
				.var_address=&bbt_vx
			},
			{
				BBDEBUGDECL_LOCAL,
				"vy",
				"f",
				.var_address=&bbt_vy
			},
			{
				BBDEBUGDECL_LOCAL,
				"vz",
				"f",
				.var_address=&bbt_vz
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x220966022118f42, 573, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbOnDebugLeaveScope();
	return ((BBFLOAT)bbATan2((double)((BBDOUBLE)-bbt_vx),(double)((BBDOUBLE)bbt_vz)));
}
BBFLOAT openb3d_openb3dcore_TVecPtr_VectorPitch_f_fff(BBFLOAT bbt_vx,BBFLOAT bbt_vy,BBFLOAT bbt_vz){
	BBFLOAT bbt_ang=0;
	struct BBDebugScope_4 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"VectorPitch",
		{
			{
				BBDEBUGDECL_LOCAL,
				"vx",
				"f",
				.var_address=&bbt_vx
			},
			{
				BBDEBUGDECL_LOCAL,
				"vy",
				"f",
				.var_address=&bbt_vy
			},
			{
				BBDEBUGDECL_LOCAL,
				"vz",
				"f",
				.var_address=&bbt_vz
			},
			{
				BBDEBUGDECL_LOCAL,
				"ang",
				"f",
				.var_address=&bbt_ang
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x220966022118f42, 580, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbt_ang=((BBFLOAT)(bbATan2((double)bbSqr((double)((BBDOUBLE)((bbt_vx*bbt_vx)+(bbt_vz*bbt_vz)))),(double)((BBDOUBLE)bbt_vy))-90.0));
	struct BBDebugStm __stmt_1 = {0x220966022118f42, 581, 0};
	bbOnDebugEnterStm(&__stmt_1);
	if((bbt_ang<=0.0001f) && (bbt_ang>=-0.0001f)){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x220966022118f42, 581, 0};
		bbOnDebugEnterStm(&__stmt_0);
		bbt_ang=0.00000000f;
		bbOnDebugLeaveScope();
	}
	struct BBDebugStm __stmt_2 = {0x220966022118f42, 582, 0};
	bbOnDebugEnterStm(&__stmt_2);
	bbOnDebugLeaveScope();
	return bbt_ang;
}
BBFLOAT _openb3d_openb3dcore_TVecPtr_Yaw(struct openb3d_openb3dcore_TVecPtr_obj* o){
	((struct openb3d_openb3dcore_TVecPtr_obj*)bbNullObjectTest((BBObject*)o));
	struct BBDebugScope_1 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"Yaw",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TVecPtr",
				.var_address=&o
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x220966022118f42, 591, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbOnDebugLeaveScope();
	return VectorYaw_(((struct openb3d_openb3dcore_TVecPtr_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tvecptr_x [0],((struct openb3d_openb3dcore_TVecPtr_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tvecptr_y [0],((struct openb3d_openb3dcore_TVecPtr_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tvecptr_z [0]);
}
BBFLOAT _openb3d_openb3dcore_TVecPtr_Pitch(struct openb3d_openb3dcore_TVecPtr_obj* o){
	((struct openb3d_openb3dcore_TVecPtr_obj*)bbNullObjectTest((BBObject*)o));
	struct BBDebugScope_1 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"Pitch",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TVecPtr",
				.var_address=&o
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x220966022118f42, 600, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbOnDebugLeaveScope();
	return -VectorPitch_(((struct openb3d_openb3dcore_TVecPtr_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tvecptr_x [0],((struct openb3d_openb3dcore_TVecPtr_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tvecptr_y [0],((struct openb3d_openb3dcore_TVecPtr_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tvecptr_z [0]);
}
BBINT _openb3d_openb3dcore_TVecPtr_Clear(struct openb3d_openb3dcore_TVecPtr_obj* o){
	((struct openb3d_openb3dcore_TVecPtr_obj*)bbNullObjectTest((BBObject*)o));
	struct BBDebugScope_1 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"Clear",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TVecPtr",
				.var_address=&o
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x220966022118f42, 609, 0};
	bbOnDebugEnterStm(&__stmt_0);
	VecPtrClear_(o->clas->f_GetInstance_pb_TTVecPtr((struct openb3d_openb3dcore_TVecPtr_obj*)o));
	bbOnDebugLeaveScope();
	return 0;
}
struct brl_map_ptrmap_TPtrMap_obj* openb3d_openb3dcore_TVecPtr_vecptr_map;
struct BBDebugScope_36 openb3d_openb3dcore_TVecPtr_scope ={
	BBDEBUGSCOPE_USERTYPE,
	"TVecPtr",
	{
		{
			BBDEBUGDECL_CONST,
			"EPSILON",
			"f",
			.const_value=(BBString*)&_s861
		},
		{
			BBDEBUGDECL_FIELD,
			"x",
			"*f",
			.field_offset=offsetof(struct openb3d_openb3dcore_TVecPtr_obj,_openb3d_openb3dcore_tvecptr_x)
		},
		{
			BBDEBUGDECL_FIELD,
			"y",
			"*f",
			.field_offset=offsetof(struct openb3d_openb3dcore_TVecPtr_obj,_openb3d_openb3dcore_tvecptr_y)
		},
		{
			BBDEBUGDECL_FIELD,
			"z",
			"*f",
			.field_offset=offsetof(struct openb3d_openb3dcore_TVecPtr_obj,_openb3d_openb3dcore_tvecptr_z)
		},
		{
			BBDEBUGDECL_FIELD,
			"instance",
			"*b",
			.field_offset=offsetof(struct openb3d_openb3dcore_TVecPtr_obj,_openb3d_openb3dcore_tvecptr_instance)
		},
		{
			BBDEBUGDECL_GLOBAL,
			"vecptr_map",
			":TPtrMap",
			.var_address=(void*)&openb3d_openb3dcore_TVecPtr_vecptr_map
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"New",
			"()i",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_TVecPtr_New
		},
		{
			BBDEBUGDECL_TYPEFUNCTION,
			"CreateObject",
			"(*b):TVecPtr",
			.func_ptr=(BBFuncPtr)&openb3d_openb3dcore_TVecPtr_CreateObject_TTVecPtr_pb
		},
		{
			BBDEBUGDECL_TYPEFUNCTION,
			"FreeObject",
			"(*b)i",
			.func_ptr=(BBFuncPtr)&openb3d_openb3dcore_TVecPtr_FreeObject_i_pb
		},
		{
			BBDEBUGDECL_TYPEFUNCTION,
			"GetObject",
			"(*b):TVecPtr",
			.func_ptr=(BBFuncPtr)&openb3d_openb3dcore_TVecPtr_GetObject_TTVecPtr_pb
		},
		{
			BBDEBUGDECL_TYPEFUNCTION,
			"GetInstance",
			"(:TVecPtr)*b",
			.func_ptr=(BBFuncPtr)&openb3d_openb3dcore_TVecPtr_GetInstance_pb_TTVecPtr
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"InitFields",
			"()i",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_TVecPtr_InitFields
		},
		{
			BBDEBUGDECL_TYPEFUNCTION,
			"NewVecPtr",
			"():TVecPtr",
			.func_ptr=(BBFuncPtr)&openb3d_openb3dcore_TVecPtr_NewVecPtr_TTVecPtr
		},
		{
			BBDEBUGDECL_TYPEFUNCTION,
			"Create",
			"(f,f,f):TVecPtr",
			.func_ptr=(BBFuncPtr)&openb3d_openb3dcore_TVecPtr_Create_TTVecPtr_fff
		},
		{
			BBDEBUGDECL_TYPEFUNCTION,
			"CopyVector",
			"(:TVector):TVecPtr",
			.func_ptr=(BBFuncPtr)&openb3d_openb3dcore_TVecPtr_CopyVector_TTVecPtr_TTVector
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"GetVector",
			"(:TVector):TVecPtr",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_TVecPtr_GetVector_TTVector
		},
		{
			BBDEBUGDECL_TYPEFUNCTION,
			"Magnitude",
			"(f,f,f)f",
			.func_ptr=(BBFuncPtr)&openb3d_openb3dcore_TVecPtr_Magnitude_f_fff
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"Copy",
			"():TVecPtr",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_TVecPtr_Copy
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"Negate",
			"():TVecPtr",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_TVecPtr_Negate
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"Add",
			"(:TVecPtr):TVecPtr",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_TVecPtr_Add_TTVecPtr
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"Subtract",
			"(:TVecPtr):TVecPtr",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_TVecPtr_Subtract_TTVecPtr
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"Multiply",
			"(f):TVecPtr",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_TVecPtr_Multiply_f
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"Multiply2",
			"(:TVecPtr):TVecPtr",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_TVecPtr_Multiply2_TTVecPtr
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"Divide",
			"(f):TVecPtr",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_TVecPtr_Divide_f
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"Divide2",
			"(:TVecPtr):TVecPtr",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_TVecPtr_Divide2_TTVecPtr
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"Dot",
			"(:TVecPtr)f",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_TVecPtr_Dot_TTVecPtr
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"Cross",
			"(:TVecPtr):TVecPtr",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_TVecPtr_Cross_TTVecPtr
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"Length",
			"()f",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_TVecPtr_Length
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"Distance",
			"(:TVecPtr)f",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_TVecPtr_Distance_TTVecPtr
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"Normalized",
			"():TVecPtr",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_TVecPtr_Normalized
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"Normalize",
			"()i",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_TVecPtr_Normalize
		},
		{
			BBDEBUGDECL_TYPEFUNCTION,
			"VectorYaw",
			"(f,f,f)f",
			.func_ptr=(BBFuncPtr)&openb3d_openb3dcore_TVecPtr_VectorYaw_f_fff
		},
		{
			BBDEBUGDECL_TYPEFUNCTION,
			"VectorPitch",
			"(f,f,f)f",
			.func_ptr=(BBFuncPtr)&openb3d_openb3dcore_TVecPtr_VectorPitch_f_fff
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"Yaw",
			"()f",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_TVecPtr_Yaw
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"Pitch",
			"()f",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_TVecPtr_Pitch
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"Clear",
			"()i",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_TVecPtr_Clear
		},
		{
			BBDEBUGDECL_END
		}
	}
};
struct BBClass_openb3d_openb3dcore_TVecPtr openb3d_openb3dcore_TVecPtr={
	&bbObjectClass,
	bbObjectFree,
	(BBDebugScope*)&openb3d_openb3dcore_TVecPtr_scope,
	sizeof(struct openb3d_openb3dcore_TVecPtr_obj),
	(void (*)(BBOBJECT))_openb3d_openb3dcore_TVecPtr_New,
	(void (*)(BBOBJECT))_openb3d_openb3dcore_TVecPtr_Delete,
	bbObjectToString,
	bbObjectCompare,
	bbObjectSendMessage,
	0,
	0,
	offsetof(struct openb3d_openb3dcore_TVecPtr_obj,_openb3d_openb3dcore_tvecptr_instance) - offsetof(struct openb3d_openb3dcore_TVecPtr_obj,_openb3d_openb3dcore_tvecptr_x) + sizeof(BBBYTE*)
	,0
	,offsetof(struct openb3d_openb3dcore_TVecPtr_obj,_openb3d_openb3dcore_tvecptr_x)
	,openb3d_openb3dcore_TVecPtr_CreateObject_TTVecPtr_pb
	,openb3d_openb3dcore_TVecPtr_FreeObject_i_pb
	,openb3d_openb3dcore_TVecPtr_GetObject_TTVecPtr_pb
	,openb3d_openb3dcore_TVecPtr_GetInstance_pb_TTVecPtr
	,_openb3d_openb3dcore_TVecPtr_InitFields
	,openb3d_openb3dcore_TVecPtr_NewVecPtr_TTVecPtr
	,openb3d_openb3dcore_TVecPtr_Create_TTVecPtr_fff
	,openb3d_openb3dcore_TVecPtr_CopyVector_TTVecPtr_TTVector
	,_openb3d_openb3dcore_TVecPtr_GetVector_TTVector
	,openb3d_openb3dcore_TVecPtr_Magnitude_f_fff
	,_openb3d_openb3dcore_TVecPtr_Copy
	,_openb3d_openb3dcore_TVecPtr_Negate
	,_openb3d_openb3dcore_TVecPtr_Add_TTVecPtr
	,_openb3d_openb3dcore_TVecPtr_Subtract_TTVecPtr
	,_openb3d_openb3dcore_TVecPtr_Multiply_f
	,_openb3d_openb3dcore_TVecPtr_Multiply2_TTVecPtr
	,_openb3d_openb3dcore_TVecPtr_Divide_f
	,_openb3d_openb3dcore_TVecPtr_Divide2_TTVecPtr
	,_openb3d_openb3dcore_TVecPtr_Dot_TTVecPtr
	,_openb3d_openb3dcore_TVecPtr_Cross_TTVecPtr
	,_openb3d_openb3dcore_TVecPtr_Length
	,_openb3d_openb3dcore_TVecPtr_Distance_TTVecPtr
	,_openb3d_openb3dcore_TVecPtr_Normalized
	,_openb3d_openb3dcore_TVecPtr_Normalize
	,openb3d_openb3dcore_TVecPtr_VectorYaw_f_fff
	,openb3d_openb3dcore_TVecPtr_VectorPitch_f_fff
	,_openb3d_openb3dcore_TVecPtr_Yaw
	,_openb3d_openb3dcore_TVecPtr_Pitch
	,_openb3d_openb3dcore_TVecPtr_Clear
};

void _openb3d_openb3dcore_TMatrix_New(struct openb3d_openb3dcore_TMatrix_obj* o) {
	bbObjectCtor((BBOBJECT)o);
	o->clas = &openb3d_openb3dcore_TMatrix;
	((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid = bbArrayNew("f", 2, 4, 4);
	struct BBDebugScope __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"New",
		{
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x2aba017925a91539, 15, 0};
	bbOnDebugEnterStm(&__stmt_0);
	if(openb3d_openb3dcore_TGlobal3D_Log_New!=0){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x2aba017925a91539, 16, 0};
		bbOnDebugEnterStm(&__stmt_0);
		brl_blitz_DebugLog((BBString*)&_s640);
		bbOnDebugLeaveScope();
	}
	bbOnDebugLeaveScope();
}
void _openb3d_openb3dcore_TMatrix_Delete(struct openb3d_openb3dcore_TMatrix_obj* o) {
	struct BBDebugScope_1 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"Delete",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TMatrix",
				.var_address=&o
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x2aba017925a91539, 23, 0};
	bbOnDebugEnterStm(&__stmt_0);
	if(openb3d_openb3dcore_TGlobal3D_Log_Del!=0){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x2aba017925a91539, 24, 0};
		bbOnDebugEnterStm(&__stmt_0);
		brl_blitz_DebugLog((BBString*)&_s641);
		bbOnDebugLeaveScope();
	}
	bbOnDebugLeaveScope();
	bbObjectDtor((BBOBJECT)o);
}
struct openb3d_openb3dcore_TMatrix_obj* openb3d_openb3dcore_TMatrix_CopyMatPtr_TTMatrix_TTMatPtr(struct openb3d_openb3dcore_TMatPtr_obj* bbt_mat){
	struct openb3d_openb3dcore_TMatrix_obj* bbt_new_mat=(struct openb3d_openb3dcore_TMatrix_obj*)((struct openb3d_openb3dcore_TMatrix_obj*)&bbNullObject);
	struct BBDebugScope_2 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"CopyMatPtr",
		{
			{
				BBDEBUGDECL_LOCAL,
				"mat",
				":TMatPtr",
				.var_address=&bbt_mat
			},
			{
				BBDEBUGDECL_LOCAL,
				"new_mat",
				":TMatrix",
				.var_address=&bbt_new_mat
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x2aba017925a91539, 34, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbt_new_mat=(struct openb3d_openb3dcore_TMatrix_obj*)(struct openb3d_openb3dcore_TMatrix_obj*)bbObjectNew((BBClass *)&openb3d_openb3dcore_TMatrix);
	struct BBDebugStm __stmt_1 = {0x2aba017925a91539, 35, 0};
	bbOnDebugEnterStm(&__stmt_1);
	BBUINT* bbt_=((BBARRAY)((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)bbt_new_mat))->_openb3d_openb3dcore_tmatrix_grid )->scales + 1;
	((BBFLOAT*)BBARRAYDATAINDEX((((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)bbt_new_mat))->_openb3d_openb3dcore_tmatrix_grid ),(((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)bbt_new_mat))->_openb3d_openb3dcore_tmatrix_grid )->dims,(*(bbt_)) * 0U + 0U))[(*(bbt_)) * 0U + 0U]=((struct openb3d_openb3dcore_TMatPtr_obj*)bbNullObjectTest((BBObject*)bbt_mat))->_openb3d_openb3dcore_tmatptr_grid [0];
	struct BBDebugStm __stmt_2 = {0x2aba017925a91539, 36, 0};
	bbOnDebugEnterStm(&__stmt_2);
	BBUINT* bbt_2=((BBARRAY)((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)bbt_new_mat))->_openb3d_openb3dcore_tmatrix_grid )->scales + 1;
	((BBFLOAT*)BBARRAYDATAINDEX((((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)bbt_new_mat))->_openb3d_openb3dcore_tmatrix_grid ),(((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)bbt_new_mat))->_openb3d_openb3dcore_tmatrix_grid )->dims,(*(bbt_2)) * 1U + 0U))[(*(bbt_2)) * 1U + 0U]=((struct openb3d_openb3dcore_TMatPtr_obj*)bbNullObjectTest((BBObject*)bbt_mat))->_openb3d_openb3dcore_tmatptr_grid [4];
	struct BBDebugStm __stmt_3 = {0x2aba017925a91539, 37, 0};
	bbOnDebugEnterStm(&__stmt_3);
	BBUINT* bbt_3=((BBARRAY)((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)bbt_new_mat))->_openb3d_openb3dcore_tmatrix_grid )->scales + 1;
	((BBFLOAT*)BBARRAYDATAINDEX((((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)bbt_new_mat))->_openb3d_openb3dcore_tmatrix_grid ),(((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)bbt_new_mat))->_openb3d_openb3dcore_tmatrix_grid )->dims,(*(bbt_3)) * 2U + 0U))[(*(bbt_3)) * 2U + 0U]=((struct openb3d_openb3dcore_TMatPtr_obj*)bbNullObjectTest((BBObject*)bbt_mat))->_openb3d_openb3dcore_tmatptr_grid [8];
	struct BBDebugStm __stmt_4 = {0x2aba017925a91539, 38, 0};
	bbOnDebugEnterStm(&__stmt_4);
	BBUINT* bbt_4=((BBARRAY)((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)bbt_new_mat))->_openb3d_openb3dcore_tmatrix_grid )->scales + 1;
	((BBFLOAT*)BBARRAYDATAINDEX((((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)bbt_new_mat))->_openb3d_openb3dcore_tmatrix_grid ),(((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)bbt_new_mat))->_openb3d_openb3dcore_tmatrix_grid )->dims,(*(bbt_4)) * 3U + 0U))[(*(bbt_4)) * 3U + 0U]=((struct openb3d_openb3dcore_TMatPtr_obj*)bbNullObjectTest((BBObject*)bbt_mat))->_openb3d_openb3dcore_tmatptr_grid [12];
	struct BBDebugStm __stmt_5 = {0x2aba017925a91539, 39, 0};
	bbOnDebugEnterStm(&__stmt_5);
	BBUINT* bbt_5=((BBARRAY)((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)bbt_new_mat))->_openb3d_openb3dcore_tmatrix_grid )->scales + 1;
	((BBFLOAT*)BBARRAYDATAINDEX((((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)bbt_new_mat))->_openb3d_openb3dcore_tmatrix_grid ),(((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)bbt_new_mat))->_openb3d_openb3dcore_tmatrix_grid )->dims,(*(bbt_5)) * 0U + 1U))[(*(bbt_5)) * 0U + 1U]=((struct openb3d_openb3dcore_TMatPtr_obj*)bbNullObjectTest((BBObject*)bbt_mat))->_openb3d_openb3dcore_tmatptr_grid [1];
	struct BBDebugStm __stmt_6 = {0x2aba017925a91539, 40, 0};
	bbOnDebugEnterStm(&__stmt_6);
	BBUINT* bbt_6=((BBARRAY)((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)bbt_new_mat))->_openb3d_openb3dcore_tmatrix_grid )->scales + 1;
	((BBFLOAT*)BBARRAYDATAINDEX((((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)bbt_new_mat))->_openb3d_openb3dcore_tmatrix_grid ),(((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)bbt_new_mat))->_openb3d_openb3dcore_tmatrix_grid )->dims,(*(bbt_6)) * 1U + 1U))[(*(bbt_6)) * 1U + 1U]=((struct openb3d_openb3dcore_TMatPtr_obj*)bbNullObjectTest((BBObject*)bbt_mat))->_openb3d_openb3dcore_tmatptr_grid [5];
	struct BBDebugStm __stmt_7 = {0x2aba017925a91539, 41, 0};
	bbOnDebugEnterStm(&__stmt_7);
	BBUINT* bbt_7=((BBARRAY)((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)bbt_new_mat))->_openb3d_openb3dcore_tmatrix_grid )->scales + 1;
	((BBFLOAT*)BBARRAYDATAINDEX((((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)bbt_new_mat))->_openb3d_openb3dcore_tmatrix_grid ),(((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)bbt_new_mat))->_openb3d_openb3dcore_tmatrix_grid )->dims,(*(bbt_7)) * 2U + 1U))[(*(bbt_7)) * 2U + 1U]=((struct openb3d_openb3dcore_TMatPtr_obj*)bbNullObjectTest((BBObject*)bbt_mat))->_openb3d_openb3dcore_tmatptr_grid [9];
	struct BBDebugStm __stmt_8 = {0x2aba017925a91539, 42, 0};
	bbOnDebugEnterStm(&__stmt_8);
	BBUINT* bbt_8=((BBARRAY)((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)bbt_new_mat))->_openb3d_openb3dcore_tmatrix_grid )->scales + 1;
	((BBFLOAT*)BBARRAYDATAINDEX((((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)bbt_new_mat))->_openb3d_openb3dcore_tmatrix_grid ),(((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)bbt_new_mat))->_openb3d_openb3dcore_tmatrix_grid )->dims,(*(bbt_8)) * 3U + 1U))[(*(bbt_8)) * 3U + 1U]=((struct openb3d_openb3dcore_TMatPtr_obj*)bbNullObjectTest((BBObject*)bbt_mat))->_openb3d_openb3dcore_tmatptr_grid [13];
	struct BBDebugStm __stmt_9 = {0x2aba017925a91539, 43, 0};
	bbOnDebugEnterStm(&__stmt_9);
	BBUINT* bbt_9=((BBARRAY)((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)bbt_new_mat))->_openb3d_openb3dcore_tmatrix_grid )->scales + 1;
	((BBFLOAT*)BBARRAYDATAINDEX((((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)bbt_new_mat))->_openb3d_openb3dcore_tmatrix_grid ),(((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)bbt_new_mat))->_openb3d_openb3dcore_tmatrix_grid )->dims,(*(bbt_9)) * 0U + 2U))[(*(bbt_9)) * 0U + 2U]=((struct openb3d_openb3dcore_TMatPtr_obj*)bbNullObjectTest((BBObject*)bbt_mat))->_openb3d_openb3dcore_tmatptr_grid [2];
	struct BBDebugStm __stmt_10 = {0x2aba017925a91539, 44, 0};
	bbOnDebugEnterStm(&__stmt_10);
	BBUINT* bbt_10=((BBARRAY)((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)bbt_new_mat))->_openb3d_openb3dcore_tmatrix_grid )->scales + 1;
	((BBFLOAT*)BBARRAYDATAINDEX((((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)bbt_new_mat))->_openb3d_openb3dcore_tmatrix_grid ),(((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)bbt_new_mat))->_openb3d_openb3dcore_tmatrix_grid )->dims,(*(bbt_10)) * 1U + 2U))[(*(bbt_10)) * 1U + 2U]=((struct openb3d_openb3dcore_TMatPtr_obj*)bbNullObjectTest((BBObject*)bbt_mat))->_openb3d_openb3dcore_tmatptr_grid [6];
	struct BBDebugStm __stmt_11 = {0x2aba017925a91539, 45, 0};
	bbOnDebugEnterStm(&__stmt_11);
	BBUINT* bbt_11=((BBARRAY)((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)bbt_new_mat))->_openb3d_openb3dcore_tmatrix_grid )->scales + 1;
	((BBFLOAT*)BBARRAYDATAINDEX((((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)bbt_new_mat))->_openb3d_openb3dcore_tmatrix_grid ),(((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)bbt_new_mat))->_openb3d_openb3dcore_tmatrix_grid )->dims,(*(bbt_11)) * 2U + 2U))[(*(bbt_11)) * 2U + 2U]=((struct openb3d_openb3dcore_TMatPtr_obj*)bbNullObjectTest((BBObject*)bbt_mat))->_openb3d_openb3dcore_tmatptr_grid [10];
	struct BBDebugStm __stmt_12 = {0x2aba017925a91539, 46, 0};
	bbOnDebugEnterStm(&__stmt_12);
	BBUINT* bbt_12=((BBARRAY)((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)bbt_new_mat))->_openb3d_openb3dcore_tmatrix_grid )->scales + 1;
	((BBFLOAT*)BBARRAYDATAINDEX((((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)bbt_new_mat))->_openb3d_openb3dcore_tmatrix_grid ),(((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)bbt_new_mat))->_openb3d_openb3dcore_tmatrix_grid )->dims,(*(bbt_12)) * 3U + 2U))[(*(bbt_12)) * 3U + 2U]=((struct openb3d_openb3dcore_TMatPtr_obj*)bbNullObjectTest((BBObject*)bbt_mat))->_openb3d_openb3dcore_tmatptr_grid [14];
	struct BBDebugStm __stmt_13 = {0x2aba017925a91539, 48, 0};
	bbOnDebugEnterStm(&__stmt_13);
	BBUINT* bbt_13=((BBARRAY)((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)bbt_new_mat))->_openb3d_openb3dcore_tmatrix_grid )->scales + 1;
	((BBFLOAT*)BBARRAYDATAINDEX((((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)bbt_new_mat))->_openb3d_openb3dcore_tmatrix_grid ),(((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)bbt_new_mat))->_openb3d_openb3dcore_tmatrix_grid )->dims,(*(bbt_13)) * 0U + 3U))[(*(bbt_13)) * 0U + 3U]=((struct openb3d_openb3dcore_TMatPtr_obj*)bbNullObjectTest((BBObject*)bbt_mat))->_openb3d_openb3dcore_tmatptr_grid [3];
	struct BBDebugStm __stmt_14 = {0x2aba017925a91539, 49, 0};
	bbOnDebugEnterStm(&__stmt_14);
	BBUINT* bbt_14=((BBARRAY)((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)bbt_new_mat))->_openb3d_openb3dcore_tmatrix_grid )->scales + 1;
	((BBFLOAT*)BBARRAYDATAINDEX((((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)bbt_new_mat))->_openb3d_openb3dcore_tmatrix_grid ),(((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)bbt_new_mat))->_openb3d_openb3dcore_tmatrix_grid )->dims,(*(bbt_14)) * 1U + 3U))[(*(bbt_14)) * 1U + 3U]=((struct openb3d_openb3dcore_TMatPtr_obj*)bbNullObjectTest((BBObject*)bbt_mat))->_openb3d_openb3dcore_tmatptr_grid [7];
	struct BBDebugStm __stmt_15 = {0x2aba017925a91539, 50, 0};
	bbOnDebugEnterStm(&__stmt_15);
	BBUINT* bbt_15=((BBARRAY)((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)bbt_new_mat))->_openb3d_openb3dcore_tmatrix_grid )->scales + 1;
	((BBFLOAT*)BBARRAYDATAINDEX((((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)bbt_new_mat))->_openb3d_openb3dcore_tmatrix_grid ),(((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)bbt_new_mat))->_openb3d_openb3dcore_tmatrix_grid )->dims,(*(bbt_15)) * 2U + 3U))[(*(bbt_15)) * 2U + 3U]=((struct openb3d_openb3dcore_TMatPtr_obj*)bbNullObjectTest((BBObject*)bbt_mat))->_openb3d_openb3dcore_tmatptr_grid [11];
	struct BBDebugStm __stmt_16 = {0x2aba017925a91539, 51, 0};
	bbOnDebugEnterStm(&__stmt_16);
	BBUINT* bbt_16=((BBARRAY)((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)bbt_new_mat))->_openb3d_openb3dcore_tmatrix_grid )->scales + 1;
	((BBFLOAT*)BBARRAYDATAINDEX((((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)bbt_new_mat))->_openb3d_openb3dcore_tmatrix_grid ),(((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)bbt_new_mat))->_openb3d_openb3dcore_tmatrix_grid )->dims,(*(bbt_16)) * 3U + 3U))[(*(bbt_16)) * 3U + 3U]=((struct openb3d_openb3dcore_TMatPtr_obj*)bbNullObjectTest((BBObject*)bbt_mat))->_openb3d_openb3dcore_tmatptr_grid [15];
	struct BBDebugStm __stmt_17 = {0x2aba017925a91539, 52, 0};
	bbOnDebugEnterStm(&__stmt_17);
	bbOnDebugLeaveScope();
	return (struct openb3d_openb3dcore_TMatrix_obj*)bbt_new_mat;
}
struct openb3d_openb3dcore_TMatrix_obj* _openb3d_openb3dcore_TMatrix_GetMatPtr_TTMatPtr(struct openb3d_openb3dcore_TMatrix_obj* o,struct openb3d_openb3dcore_TMatPtr_obj* bbt_mat){
	((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o));
	struct BBDebugScope_2 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"GetMatPtr",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TMatrix",
				.var_address=&o
			},
			{
				BBDEBUGDECL_LOCAL,
				"mat",
				":TMatPtr",
				.var_address=&bbt_mat
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x2aba017925a91539, 61, 0};
	bbOnDebugEnterStm(&__stmt_0);
	BBUINT* bbt_=((BBARRAY)((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->scales + 1;
	((BBFLOAT*)BBARRAYDATAINDEX((((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid ),(((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->dims,(*(bbt_)) * 0U + 0U))[(*(bbt_)) * 0U + 0U]=((struct openb3d_openb3dcore_TMatPtr_obj*)bbNullObjectTest((BBObject*)bbt_mat))->_openb3d_openb3dcore_tmatptr_grid [0];
	struct BBDebugStm __stmt_1 = {0x2aba017925a91539, 62, 0};
	bbOnDebugEnterStm(&__stmt_1);
	BBUINT* bbt_2=((BBARRAY)((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->scales + 1;
	((BBFLOAT*)BBARRAYDATAINDEX((((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid ),(((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->dims,(*(bbt_2)) * 1U + 0U))[(*(bbt_2)) * 1U + 0U]=((struct openb3d_openb3dcore_TMatPtr_obj*)bbNullObjectTest((BBObject*)bbt_mat))->_openb3d_openb3dcore_tmatptr_grid [4];
	struct BBDebugStm __stmt_2 = {0x2aba017925a91539, 63, 0};
	bbOnDebugEnterStm(&__stmt_2);
	BBUINT* bbt_3=((BBARRAY)((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->scales + 1;
	((BBFLOAT*)BBARRAYDATAINDEX((((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid ),(((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->dims,(*(bbt_3)) * 2U + 0U))[(*(bbt_3)) * 2U + 0U]=((struct openb3d_openb3dcore_TMatPtr_obj*)bbNullObjectTest((BBObject*)bbt_mat))->_openb3d_openb3dcore_tmatptr_grid [8];
	struct BBDebugStm __stmt_3 = {0x2aba017925a91539, 64, 0};
	bbOnDebugEnterStm(&__stmt_3);
	BBUINT* bbt_4=((BBARRAY)((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->scales + 1;
	((BBFLOAT*)BBARRAYDATAINDEX((((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid ),(((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->dims,(*(bbt_4)) * 3U + 0U))[(*(bbt_4)) * 3U + 0U]=((struct openb3d_openb3dcore_TMatPtr_obj*)bbNullObjectTest((BBObject*)bbt_mat))->_openb3d_openb3dcore_tmatptr_grid [12];
	struct BBDebugStm __stmt_4 = {0x2aba017925a91539, 65, 0};
	bbOnDebugEnterStm(&__stmt_4);
	BBUINT* bbt_5=((BBARRAY)((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->scales + 1;
	((BBFLOAT*)BBARRAYDATAINDEX((((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid ),(((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->dims,(*(bbt_5)) * 0U + 1U))[(*(bbt_5)) * 0U + 1U]=((struct openb3d_openb3dcore_TMatPtr_obj*)bbNullObjectTest((BBObject*)bbt_mat))->_openb3d_openb3dcore_tmatptr_grid [1];
	struct BBDebugStm __stmt_5 = {0x2aba017925a91539, 66, 0};
	bbOnDebugEnterStm(&__stmt_5);
	BBUINT* bbt_6=((BBARRAY)((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->scales + 1;
	((BBFLOAT*)BBARRAYDATAINDEX((((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid ),(((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->dims,(*(bbt_6)) * 1U + 1U))[(*(bbt_6)) * 1U + 1U]=((struct openb3d_openb3dcore_TMatPtr_obj*)bbNullObjectTest((BBObject*)bbt_mat))->_openb3d_openb3dcore_tmatptr_grid [5];
	struct BBDebugStm __stmt_6 = {0x2aba017925a91539, 67, 0};
	bbOnDebugEnterStm(&__stmt_6);
	BBUINT* bbt_7=((BBARRAY)((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->scales + 1;
	((BBFLOAT*)BBARRAYDATAINDEX((((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid ),(((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->dims,(*(bbt_7)) * 2U + 1U))[(*(bbt_7)) * 2U + 1U]=((struct openb3d_openb3dcore_TMatPtr_obj*)bbNullObjectTest((BBObject*)bbt_mat))->_openb3d_openb3dcore_tmatptr_grid [9];
	struct BBDebugStm __stmt_7 = {0x2aba017925a91539, 68, 0};
	bbOnDebugEnterStm(&__stmt_7);
	BBUINT* bbt_8=((BBARRAY)((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->scales + 1;
	((BBFLOAT*)BBARRAYDATAINDEX((((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid ),(((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->dims,(*(bbt_8)) * 3U + 1U))[(*(bbt_8)) * 3U + 1U]=((struct openb3d_openb3dcore_TMatPtr_obj*)bbNullObjectTest((BBObject*)bbt_mat))->_openb3d_openb3dcore_tmatptr_grid [13];
	struct BBDebugStm __stmt_8 = {0x2aba017925a91539, 69, 0};
	bbOnDebugEnterStm(&__stmt_8);
	BBUINT* bbt_9=((BBARRAY)((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->scales + 1;
	((BBFLOAT*)BBARRAYDATAINDEX((((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid ),(((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->dims,(*(bbt_9)) * 0U + 2U))[(*(bbt_9)) * 0U + 2U]=((struct openb3d_openb3dcore_TMatPtr_obj*)bbNullObjectTest((BBObject*)bbt_mat))->_openb3d_openb3dcore_tmatptr_grid [2];
	struct BBDebugStm __stmt_9 = {0x2aba017925a91539, 70, 0};
	bbOnDebugEnterStm(&__stmt_9);
	BBUINT* bbt_10=((BBARRAY)((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->scales + 1;
	((BBFLOAT*)BBARRAYDATAINDEX((((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid ),(((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->dims,(*(bbt_10)) * 1U + 2U))[(*(bbt_10)) * 1U + 2U]=((struct openb3d_openb3dcore_TMatPtr_obj*)bbNullObjectTest((BBObject*)bbt_mat))->_openb3d_openb3dcore_tmatptr_grid [6];
	struct BBDebugStm __stmt_10 = {0x2aba017925a91539, 71, 0};
	bbOnDebugEnterStm(&__stmt_10);
	BBUINT* bbt_11=((BBARRAY)((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->scales + 1;
	((BBFLOAT*)BBARRAYDATAINDEX((((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid ),(((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->dims,(*(bbt_11)) * 2U + 2U))[(*(bbt_11)) * 2U + 2U]=((struct openb3d_openb3dcore_TMatPtr_obj*)bbNullObjectTest((BBObject*)bbt_mat))->_openb3d_openb3dcore_tmatptr_grid [10];
	struct BBDebugStm __stmt_11 = {0x2aba017925a91539, 72, 0};
	bbOnDebugEnterStm(&__stmt_11);
	BBUINT* bbt_12=((BBARRAY)((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->scales + 1;
	((BBFLOAT*)BBARRAYDATAINDEX((((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid ),(((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->dims,(*(bbt_12)) * 3U + 2U))[(*(bbt_12)) * 3U + 2U]=((struct openb3d_openb3dcore_TMatPtr_obj*)bbNullObjectTest((BBObject*)bbt_mat))->_openb3d_openb3dcore_tmatptr_grid [14];
	struct BBDebugStm __stmt_12 = {0x2aba017925a91539, 74, 0};
	bbOnDebugEnterStm(&__stmt_12);
	BBUINT* bbt_13=((BBARRAY)((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->scales + 1;
	((BBFLOAT*)BBARRAYDATAINDEX((((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid ),(((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->dims,(*(bbt_13)) * 0U + 3U))[(*(bbt_13)) * 0U + 3U]=((struct openb3d_openb3dcore_TMatPtr_obj*)bbNullObjectTest((BBObject*)bbt_mat))->_openb3d_openb3dcore_tmatptr_grid [3];
	struct BBDebugStm __stmt_13 = {0x2aba017925a91539, 75, 0};
	bbOnDebugEnterStm(&__stmt_13);
	BBUINT* bbt_14=((BBARRAY)((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->scales + 1;
	((BBFLOAT*)BBARRAYDATAINDEX((((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid ),(((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->dims,(*(bbt_14)) * 1U + 3U))[(*(bbt_14)) * 1U + 3U]=((struct openb3d_openb3dcore_TMatPtr_obj*)bbNullObjectTest((BBObject*)bbt_mat))->_openb3d_openb3dcore_tmatptr_grid [7];
	struct BBDebugStm __stmt_14 = {0x2aba017925a91539, 76, 0};
	bbOnDebugEnterStm(&__stmt_14);
	BBUINT* bbt_15=((BBARRAY)((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->scales + 1;
	((BBFLOAT*)BBARRAYDATAINDEX((((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid ),(((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->dims,(*(bbt_15)) * 2U + 3U))[(*(bbt_15)) * 2U + 3U]=((struct openb3d_openb3dcore_TMatPtr_obj*)bbNullObjectTest((BBObject*)bbt_mat))->_openb3d_openb3dcore_tmatptr_grid [11];
	struct BBDebugStm __stmt_15 = {0x2aba017925a91539, 77, 0};
	bbOnDebugEnterStm(&__stmt_15);
	BBUINT* bbt_16=((BBARRAY)((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->scales + 1;
	((BBFLOAT*)BBARRAYDATAINDEX((((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid ),(((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->dims,(*(bbt_16)) * 3U + 3U))[(*(bbt_16)) * 3U + 3U]=((struct openb3d_openb3dcore_TMatPtr_obj*)bbNullObjectTest((BBObject*)bbt_mat))->_openb3d_openb3dcore_tmatptr_grid [15];
	bbOnDebugLeaveScope();
	return (struct openb3d_openb3dcore_TMatrix_obj*)((struct openb3d_openb3dcore_TMatrix_obj*)&bbNullObject);
}
BBINT _openb3d_openb3dcore_TMatrix_SetIdentity_fffffffff(struct openb3d_openb3dcore_TMatrix_obj* o,BBFLOAT bbt_xx,BBFLOAT bbt_xy,BBFLOAT bbt_xz,BBFLOAT bbt_yx,BBFLOAT bbt_yy,BBFLOAT bbt_yz,BBFLOAT bbt_zx,BBFLOAT bbt_zy,BBFLOAT bbt_zz){
	((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o));
	struct BBDebugScope_10 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"SetIdentity",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TMatrix",
				.var_address=&o
			},
			{
				BBDEBUGDECL_LOCAL,
				"xx",
				"f",
				.var_address=&bbt_xx
			},
			{
				BBDEBUGDECL_LOCAL,
				"xy",
				"f",
				.var_address=&bbt_xy
			},
			{
				BBDEBUGDECL_LOCAL,
				"xz",
				"f",
				.var_address=&bbt_xz
			},
			{
				BBDEBUGDECL_LOCAL,
				"yx",
				"f",
				.var_address=&bbt_yx
			},
			{
				BBDEBUGDECL_LOCAL,
				"yy",
				"f",
				.var_address=&bbt_yy
			},
			{
				BBDEBUGDECL_LOCAL,
				"yz",
				"f",
				.var_address=&bbt_yz
			},
			{
				BBDEBUGDECL_LOCAL,
				"zx",
				"f",
				.var_address=&bbt_zx
			},
			{
				BBDEBUGDECL_LOCAL,
				"zy",
				"f",
				.var_address=&bbt_zy
			},
			{
				BBDEBUGDECL_LOCAL,
				"zz",
				"f",
				.var_address=&bbt_zz
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x2aba017925a91539, 86, 0};
	bbOnDebugEnterStm(&__stmt_0);
	BBUINT* bbt_=((BBARRAY)((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->scales + 1;
	((BBFLOAT*)BBARRAYDATAINDEX((((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid ),(((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->dims,(*(bbt_)) * 0U + 0U))[(*(bbt_)) * 0U + 0U]=bbt_xx;
	struct BBDebugStm __stmt_1 = {0x2aba017925a91539, 87, 0};
	bbOnDebugEnterStm(&__stmt_1);
	BBUINT* bbt_2=((BBARRAY)((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->scales + 1;
	((BBFLOAT*)BBARRAYDATAINDEX((((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid ),(((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->dims,(*(bbt_2)) * 0U + 1U))[(*(bbt_2)) * 0U + 1U]=bbt_xy;
	struct BBDebugStm __stmt_2 = {0x2aba017925a91539, 88, 0};
	bbOnDebugEnterStm(&__stmt_2);
	BBUINT* bbt_3=((BBARRAY)((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->scales + 1;
	((BBFLOAT*)BBARRAYDATAINDEX((((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid ),(((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->dims,(*(bbt_3)) * 0U + 2U))[(*(bbt_3)) * 0U + 2U]=bbt_xz;
	struct BBDebugStm __stmt_3 = {0x2aba017925a91539, 89, 0};
	bbOnDebugEnterStm(&__stmt_3);
	BBUINT* bbt_4=((BBARRAY)((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->scales + 1;
	((BBFLOAT*)BBARRAYDATAINDEX((((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid ),(((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->dims,(*(bbt_4)) * 0U + 3U))[(*(bbt_4)) * 0U + 3U]=0.00000000f;
	struct BBDebugStm __stmt_4 = {0x2aba017925a91539, 91, 0};
	bbOnDebugEnterStm(&__stmt_4);
	BBUINT* bbt_5=((BBARRAY)((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->scales + 1;
	((BBFLOAT*)BBARRAYDATAINDEX((((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid ),(((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->dims,(*(bbt_5)) * 1U + 0U))[(*(bbt_5)) * 1U + 0U]=bbt_yx;
	struct BBDebugStm __stmt_5 = {0x2aba017925a91539, 92, 0};
	bbOnDebugEnterStm(&__stmt_5);
	BBUINT* bbt_6=((BBARRAY)((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->scales + 1;
	((BBFLOAT*)BBARRAYDATAINDEX((((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid ),(((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->dims,(*(bbt_6)) * 1U + 1U))[(*(bbt_6)) * 1U + 1U]=bbt_yy;
	struct BBDebugStm __stmt_6 = {0x2aba017925a91539, 93, 0};
	bbOnDebugEnterStm(&__stmt_6);
	BBUINT* bbt_7=((BBARRAY)((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->scales + 1;
	((BBFLOAT*)BBARRAYDATAINDEX((((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid ),(((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->dims,(*(bbt_7)) * 1U + 2U))[(*(bbt_7)) * 1U + 2U]=bbt_yz;
	struct BBDebugStm __stmt_7 = {0x2aba017925a91539, 94, 0};
	bbOnDebugEnterStm(&__stmt_7);
	BBUINT* bbt_8=((BBARRAY)((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->scales + 1;
	((BBFLOAT*)BBARRAYDATAINDEX((((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid ),(((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->dims,(*(bbt_8)) * 1U + 3U))[(*(bbt_8)) * 1U + 3U]=0.00000000f;
	struct BBDebugStm __stmt_8 = {0x2aba017925a91539, 96, 0};
	bbOnDebugEnterStm(&__stmt_8);
	BBUINT* bbt_9=((BBARRAY)((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->scales + 1;
	((BBFLOAT*)BBARRAYDATAINDEX((((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid ),(((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->dims,(*(bbt_9)) * 2U + 0U))[(*(bbt_9)) * 2U + 0U]=bbt_zx;
	struct BBDebugStm __stmt_9 = {0x2aba017925a91539, 97, 0};
	bbOnDebugEnterStm(&__stmt_9);
	BBUINT* bbt_10=((BBARRAY)((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->scales + 1;
	((BBFLOAT*)BBARRAYDATAINDEX((((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid ),(((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->dims,(*(bbt_10)) * 2U + 1U))[(*(bbt_10)) * 2U + 1U]=bbt_zy;
	struct BBDebugStm __stmt_10 = {0x2aba017925a91539, 98, 0};
	bbOnDebugEnterStm(&__stmt_10);
	BBUINT* bbt_11=((BBARRAY)((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->scales + 1;
	((BBFLOAT*)BBARRAYDATAINDEX((((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid ),(((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->dims,(*(bbt_11)) * 2U + 2U))[(*(bbt_11)) * 2U + 2U]=bbt_zz;
	struct BBDebugStm __stmt_11 = {0x2aba017925a91539, 99, 0};
	bbOnDebugEnterStm(&__stmt_11);
	BBUINT* bbt_12=((BBARRAY)((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->scales + 1;
	((BBFLOAT*)BBARRAYDATAINDEX((((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid ),(((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->dims,(*(bbt_12)) * 2U + 3U))[(*(bbt_12)) * 2U + 3U]=0.00000000f;
	struct BBDebugStm __stmt_12 = {0x2aba017925a91539, 101, 0};
	bbOnDebugEnterStm(&__stmt_12);
	BBUINT* bbt_13=((BBARRAY)((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->scales + 1;
	((BBFLOAT*)BBARRAYDATAINDEX((((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid ),(((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->dims,(*(bbt_13)) * 3U + 0U))[(*(bbt_13)) * 3U + 0U]=0.00000000f;
	struct BBDebugStm __stmt_13 = {0x2aba017925a91539, 102, 0};
	bbOnDebugEnterStm(&__stmt_13);
	BBUINT* bbt_14=((BBARRAY)((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->scales + 1;
	((BBFLOAT*)BBARRAYDATAINDEX((((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid ),(((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->dims,(*(bbt_14)) * 3U + 1U))[(*(bbt_14)) * 3U + 1U]=0.00000000f;
	struct BBDebugStm __stmt_14 = {0x2aba017925a91539, 103, 0};
	bbOnDebugEnterStm(&__stmt_14);
	BBUINT* bbt_15=((BBARRAY)((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->scales + 1;
	((BBFLOAT*)BBARRAYDATAINDEX((((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid ),(((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->dims,(*(bbt_15)) * 3U + 2U))[(*(bbt_15)) * 3U + 2U]=0.00000000f;
	struct BBDebugStm __stmt_15 = {0x2aba017925a91539, 104, 0};
	bbOnDebugEnterStm(&__stmt_15);
	BBUINT* bbt_16=((BBARRAY)((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->scales + 1;
	((BBFLOAT*)BBARRAYDATAINDEX((((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid ),(((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->dims,(*(bbt_16)) * 3U + 3U))[(*(bbt_16)) * 3U + 3U]=1.00000000f;
	bbOnDebugLeaveScope();
	return 0;
}
BBINT _openb3d_openb3dcore_TMatrix_LoadIdentity(struct openb3d_openb3dcore_TMatrix_obj* o){
	((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o));
	struct BBDebugScope_1 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"LoadIdentity",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TMatrix",
				.var_address=&o
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x2aba017925a91539, 113, 0};
	bbOnDebugEnterStm(&__stmt_0);
	BBUINT* bbt_=((BBARRAY)((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->scales + 1;
	((BBFLOAT*)BBARRAYDATAINDEX((((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid ),(((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->dims,(*(bbt_)) * 0U + 0U))[(*(bbt_)) * 0U + 0U]=1.0f;
	struct BBDebugStm __stmt_1 = {0x2aba017925a91539, 114, 0};
	bbOnDebugEnterStm(&__stmt_1);
	BBUINT* bbt_2=((BBARRAY)((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->scales + 1;
	((BBFLOAT*)BBARRAYDATAINDEX((((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid ),(((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->dims,(*(bbt_2)) * 1U + 0U))[(*(bbt_2)) * 1U + 0U]=0.0f;
	struct BBDebugStm __stmt_2 = {0x2aba017925a91539, 115, 0};
	bbOnDebugEnterStm(&__stmt_2);
	BBUINT* bbt_3=((BBARRAY)((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->scales + 1;
	((BBFLOAT*)BBARRAYDATAINDEX((((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid ),(((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->dims,(*(bbt_3)) * 2U + 0U))[(*(bbt_3)) * 2U + 0U]=0.0f;
	struct BBDebugStm __stmt_3 = {0x2aba017925a91539, 116, 0};
	bbOnDebugEnterStm(&__stmt_3);
	BBUINT* bbt_4=((BBARRAY)((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->scales + 1;
	((BBFLOAT*)BBARRAYDATAINDEX((((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid ),(((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->dims,(*(bbt_4)) * 3U + 0U))[(*(bbt_4)) * 3U + 0U]=0.0f;
	struct BBDebugStm __stmt_4 = {0x2aba017925a91539, 117, 0};
	bbOnDebugEnterStm(&__stmt_4);
	BBUINT* bbt_5=((BBARRAY)((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->scales + 1;
	((BBFLOAT*)BBARRAYDATAINDEX((((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid ),(((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->dims,(*(bbt_5)) * 0U + 1U))[(*(bbt_5)) * 0U + 1U]=0.0f;
	struct BBDebugStm __stmt_5 = {0x2aba017925a91539, 118, 0};
	bbOnDebugEnterStm(&__stmt_5);
	BBUINT* bbt_6=((BBARRAY)((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->scales + 1;
	((BBFLOAT*)BBARRAYDATAINDEX((((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid ),(((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->dims,(*(bbt_6)) * 1U + 1U))[(*(bbt_6)) * 1U + 1U]=1.0f;
	struct BBDebugStm __stmt_6 = {0x2aba017925a91539, 119, 0};
	bbOnDebugEnterStm(&__stmt_6);
	BBUINT* bbt_7=((BBARRAY)((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->scales + 1;
	((BBFLOAT*)BBARRAYDATAINDEX((((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid ),(((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->dims,(*(bbt_7)) * 2U + 1U))[(*(bbt_7)) * 2U + 1U]=0.0f;
	struct BBDebugStm __stmt_7 = {0x2aba017925a91539, 120, 0};
	bbOnDebugEnterStm(&__stmt_7);
	BBUINT* bbt_8=((BBARRAY)((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->scales + 1;
	((BBFLOAT*)BBARRAYDATAINDEX((((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid ),(((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->dims,(*(bbt_8)) * 3U + 1U))[(*(bbt_8)) * 3U + 1U]=0.0f;
	struct BBDebugStm __stmt_8 = {0x2aba017925a91539, 121, 0};
	bbOnDebugEnterStm(&__stmt_8);
	BBUINT* bbt_9=((BBARRAY)((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->scales + 1;
	((BBFLOAT*)BBARRAYDATAINDEX((((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid ),(((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->dims,(*(bbt_9)) * 0U + 2U))[(*(bbt_9)) * 0U + 2U]=0.0f;
	struct BBDebugStm __stmt_9 = {0x2aba017925a91539, 122, 0};
	bbOnDebugEnterStm(&__stmt_9);
	BBUINT* bbt_10=((BBARRAY)((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->scales + 1;
	((BBFLOAT*)BBARRAYDATAINDEX((((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid ),(((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->dims,(*(bbt_10)) * 1U + 2U))[(*(bbt_10)) * 1U + 2U]=0.0f;
	struct BBDebugStm __stmt_10 = {0x2aba017925a91539, 123, 0};
	bbOnDebugEnterStm(&__stmt_10);
	BBUINT* bbt_11=((BBARRAY)((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->scales + 1;
	((BBFLOAT*)BBARRAYDATAINDEX((((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid ),(((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->dims,(*(bbt_11)) * 2U + 2U))[(*(bbt_11)) * 2U + 2U]=1.0f;
	struct BBDebugStm __stmt_11 = {0x2aba017925a91539, 124, 0};
	bbOnDebugEnterStm(&__stmt_11);
	BBUINT* bbt_12=((BBARRAY)((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->scales + 1;
	((BBFLOAT*)BBARRAYDATAINDEX((((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid ),(((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->dims,(*(bbt_12)) * 3U + 2U))[(*(bbt_12)) * 3U + 2U]=0.0f;
	struct BBDebugStm __stmt_12 = {0x2aba017925a91539, 126, 0};
	bbOnDebugEnterStm(&__stmt_12);
	BBUINT* bbt_13=((BBARRAY)((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->scales + 1;
	((BBFLOAT*)BBARRAYDATAINDEX((((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid ),(((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->dims,(*(bbt_13)) * 0U + 3U))[(*(bbt_13)) * 0U + 3U]=0.0f;
	struct BBDebugStm __stmt_13 = {0x2aba017925a91539, 127, 0};
	bbOnDebugEnterStm(&__stmt_13);
	BBUINT* bbt_14=((BBARRAY)((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->scales + 1;
	((BBFLOAT*)BBARRAYDATAINDEX((((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid ),(((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->dims,(*(bbt_14)) * 1U + 3U))[(*(bbt_14)) * 1U + 3U]=0.0f;
	struct BBDebugStm __stmt_14 = {0x2aba017925a91539, 128, 0};
	bbOnDebugEnterStm(&__stmt_14);
	BBUINT* bbt_15=((BBARRAY)((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->scales + 1;
	((BBFLOAT*)BBARRAYDATAINDEX((((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid ),(((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->dims,(*(bbt_15)) * 2U + 3U))[(*(bbt_15)) * 2U + 3U]=0.0f;
	struct BBDebugStm __stmt_15 = {0x2aba017925a91539, 129, 0};
	bbOnDebugEnterStm(&__stmt_15);
	BBUINT* bbt_16=((BBARRAY)((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->scales + 1;
	((BBFLOAT*)BBARRAYDATAINDEX((((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid ),(((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->dims,(*(bbt_16)) * 3U + 3U))[(*(bbt_16)) * 3U + 3U]=1.0f;
	bbOnDebugLeaveScope();
	return 0;
}
struct openb3d_openb3dcore_TMatrix_obj* _openb3d_openb3dcore_TMatrix_Copy(struct openb3d_openb3dcore_TMatrix_obj* o){
	((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o));
	struct openb3d_openb3dcore_TMatrix_obj* bbt_mat=(struct openb3d_openb3dcore_TMatrix_obj*)((struct openb3d_openb3dcore_TMatrix_obj*)&bbNullObject);
	struct BBDebugScope_2 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"Copy",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TMatrix",
				.var_address=&o
			},
			{
				BBDEBUGDECL_LOCAL,
				"mat",
				":TMatrix",
				.var_address=&bbt_mat
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x2aba017925a91539, 138, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbt_mat=(struct openb3d_openb3dcore_TMatrix_obj*)(struct openb3d_openb3dcore_TMatrix_obj*)bbObjectNew((BBClass *)&openb3d_openb3dcore_TMatrix);
	struct BBDebugStm __stmt_1 = {0x2aba017925a91539, 139, 0};
	bbOnDebugEnterStm(&__stmt_1);
	BBUINT* bbt_=((BBARRAY)((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->scales + 1;
	BBUINT* bbt_2=((BBARRAY)((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)bbt_mat))->_openb3d_openb3dcore_tmatrix_grid )->scales + 1;
	((BBFLOAT*)BBARRAYDATAINDEX((((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)bbt_mat))->_openb3d_openb3dcore_tmatrix_grid ),(((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)bbt_mat))->_openb3d_openb3dcore_tmatrix_grid )->dims,(*(bbt_2)) * 0U + 0U))[(*(bbt_2)) * 0U + 0U]=((BBFLOAT*)BBARRAYDATAINDEX((((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid ),(((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->dims,(*(bbt_)) * 0U + 0U))[(*(bbt_)) * 0U + 0U];
	struct BBDebugStm __stmt_2 = {0x2aba017925a91539, 140, 0};
	bbOnDebugEnterStm(&__stmt_2);
	BBUINT* bbt_3=((BBARRAY)((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->scales + 1;
	BBUINT* bbt_4=((BBARRAY)((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)bbt_mat))->_openb3d_openb3dcore_tmatrix_grid )->scales + 1;
	((BBFLOAT*)BBARRAYDATAINDEX((((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)bbt_mat))->_openb3d_openb3dcore_tmatrix_grid ),(((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)bbt_mat))->_openb3d_openb3dcore_tmatrix_grid )->dims,(*(bbt_4)) * 1U + 0U))[(*(bbt_4)) * 1U + 0U]=((BBFLOAT*)BBARRAYDATAINDEX((((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid ),(((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->dims,(*(bbt_3)) * 1U + 0U))[(*(bbt_3)) * 1U + 0U];
	struct BBDebugStm __stmt_3 = {0x2aba017925a91539, 141, 0};
	bbOnDebugEnterStm(&__stmt_3);
	BBUINT* bbt_5=((BBARRAY)((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->scales + 1;
	BBUINT* bbt_6=((BBARRAY)((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)bbt_mat))->_openb3d_openb3dcore_tmatrix_grid )->scales + 1;
	((BBFLOAT*)BBARRAYDATAINDEX((((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)bbt_mat))->_openb3d_openb3dcore_tmatrix_grid ),(((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)bbt_mat))->_openb3d_openb3dcore_tmatrix_grid )->dims,(*(bbt_6)) * 2U + 0U))[(*(bbt_6)) * 2U + 0U]=((BBFLOAT*)BBARRAYDATAINDEX((((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid ),(((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->dims,(*(bbt_5)) * 2U + 0U))[(*(bbt_5)) * 2U + 0U];
	struct BBDebugStm __stmt_4 = {0x2aba017925a91539, 142, 0};
	bbOnDebugEnterStm(&__stmt_4);
	BBUINT* bbt_7=((BBARRAY)((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->scales + 1;
	BBUINT* bbt_8=((BBARRAY)((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)bbt_mat))->_openb3d_openb3dcore_tmatrix_grid )->scales + 1;
	((BBFLOAT*)BBARRAYDATAINDEX((((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)bbt_mat))->_openb3d_openb3dcore_tmatrix_grid ),(((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)bbt_mat))->_openb3d_openb3dcore_tmatrix_grid )->dims,(*(bbt_8)) * 3U + 0U))[(*(bbt_8)) * 3U + 0U]=((BBFLOAT*)BBARRAYDATAINDEX((((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid ),(((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->dims,(*(bbt_7)) * 3U + 0U))[(*(bbt_7)) * 3U + 0U];
	struct BBDebugStm __stmt_5 = {0x2aba017925a91539, 143, 0};
	bbOnDebugEnterStm(&__stmt_5);
	BBUINT* bbt_9=((BBARRAY)((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->scales + 1;
	BBUINT* bbt_10=((BBARRAY)((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)bbt_mat))->_openb3d_openb3dcore_tmatrix_grid )->scales + 1;
	((BBFLOAT*)BBARRAYDATAINDEX((((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)bbt_mat))->_openb3d_openb3dcore_tmatrix_grid ),(((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)bbt_mat))->_openb3d_openb3dcore_tmatrix_grid )->dims,(*(bbt_10)) * 0U + 1U))[(*(bbt_10)) * 0U + 1U]=((BBFLOAT*)BBARRAYDATAINDEX((((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid ),(((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->dims,(*(bbt_9)) * 0U + 1U))[(*(bbt_9)) * 0U + 1U];
	struct BBDebugStm __stmt_6 = {0x2aba017925a91539, 144, 0};
	bbOnDebugEnterStm(&__stmt_6);
	BBUINT* bbt_11=((BBARRAY)((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->scales + 1;
	BBUINT* bbt_12=((BBARRAY)((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)bbt_mat))->_openb3d_openb3dcore_tmatrix_grid )->scales + 1;
	((BBFLOAT*)BBARRAYDATAINDEX((((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)bbt_mat))->_openb3d_openb3dcore_tmatrix_grid ),(((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)bbt_mat))->_openb3d_openb3dcore_tmatrix_grid )->dims,(*(bbt_12)) * 1U + 1U))[(*(bbt_12)) * 1U + 1U]=((BBFLOAT*)BBARRAYDATAINDEX((((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid ),(((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->dims,(*(bbt_11)) * 1U + 1U))[(*(bbt_11)) * 1U + 1U];
	struct BBDebugStm __stmt_7 = {0x2aba017925a91539, 145, 0};
	bbOnDebugEnterStm(&__stmt_7);
	BBUINT* bbt_13=((BBARRAY)((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->scales + 1;
	BBUINT* bbt_14=((BBARRAY)((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)bbt_mat))->_openb3d_openb3dcore_tmatrix_grid )->scales + 1;
	((BBFLOAT*)BBARRAYDATAINDEX((((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)bbt_mat))->_openb3d_openb3dcore_tmatrix_grid ),(((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)bbt_mat))->_openb3d_openb3dcore_tmatrix_grid )->dims,(*(bbt_14)) * 2U + 1U))[(*(bbt_14)) * 2U + 1U]=((BBFLOAT*)BBARRAYDATAINDEX((((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid ),(((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->dims,(*(bbt_13)) * 2U + 1U))[(*(bbt_13)) * 2U + 1U];
	struct BBDebugStm __stmt_8 = {0x2aba017925a91539, 146, 0};
	bbOnDebugEnterStm(&__stmt_8);
	BBUINT* bbt_15=((BBARRAY)((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->scales + 1;
	BBUINT* bbt_16=((BBARRAY)((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)bbt_mat))->_openb3d_openb3dcore_tmatrix_grid )->scales + 1;
	((BBFLOAT*)BBARRAYDATAINDEX((((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)bbt_mat))->_openb3d_openb3dcore_tmatrix_grid ),(((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)bbt_mat))->_openb3d_openb3dcore_tmatrix_grid )->dims,(*(bbt_16)) * 3U + 1U))[(*(bbt_16)) * 3U + 1U]=((BBFLOAT*)BBARRAYDATAINDEX((((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid ),(((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->dims,(*(bbt_15)) * 3U + 1U))[(*(bbt_15)) * 3U + 1U];
	struct BBDebugStm __stmt_9 = {0x2aba017925a91539, 147, 0};
	bbOnDebugEnterStm(&__stmt_9);
	BBUINT* bbt_17=((BBARRAY)((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->scales + 1;
	BBUINT* bbt_18=((BBARRAY)((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)bbt_mat))->_openb3d_openb3dcore_tmatrix_grid )->scales + 1;
	((BBFLOAT*)BBARRAYDATAINDEX((((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)bbt_mat))->_openb3d_openb3dcore_tmatrix_grid ),(((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)bbt_mat))->_openb3d_openb3dcore_tmatrix_grid )->dims,(*(bbt_18)) * 0U + 2U))[(*(bbt_18)) * 0U + 2U]=((BBFLOAT*)BBARRAYDATAINDEX((((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid ),(((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->dims,(*(bbt_17)) * 0U + 2U))[(*(bbt_17)) * 0U + 2U];
	struct BBDebugStm __stmt_10 = {0x2aba017925a91539, 148, 0};
	bbOnDebugEnterStm(&__stmt_10);
	BBUINT* bbt_19=((BBARRAY)((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->scales + 1;
	BBUINT* bbt_20=((BBARRAY)((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)bbt_mat))->_openb3d_openb3dcore_tmatrix_grid )->scales + 1;
	((BBFLOAT*)BBARRAYDATAINDEX((((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)bbt_mat))->_openb3d_openb3dcore_tmatrix_grid ),(((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)bbt_mat))->_openb3d_openb3dcore_tmatrix_grid )->dims,(*(bbt_20)) * 1U + 2U))[(*(bbt_20)) * 1U + 2U]=((BBFLOAT*)BBARRAYDATAINDEX((((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid ),(((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->dims,(*(bbt_19)) * 1U + 2U))[(*(bbt_19)) * 1U + 2U];
	struct BBDebugStm __stmt_11 = {0x2aba017925a91539, 149, 0};
	bbOnDebugEnterStm(&__stmt_11);
	BBUINT* bbt_21=((BBARRAY)((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->scales + 1;
	BBUINT* bbt_22=((BBARRAY)((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)bbt_mat))->_openb3d_openb3dcore_tmatrix_grid )->scales + 1;
	((BBFLOAT*)BBARRAYDATAINDEX((((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)bbt_mat))->_openb3d_openb3dcore_tmatrix_grid ),(((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)bbt_mat))->_openb3d_openb3dcore_tmatrix_grid )->dims,(*(bbt_22)) * 2U + 2U))[(*(bbt_22)) * 2U + 2U]=((BBFLOAT*)BBARRAYDATAINDEX((((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid ),(((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->dims,(*(bbt_21)) * 2U + 2U))[(*(bbt_21)) * 2U + 2U];
	struct BBDebugStm __stmt_12 = {0x2aba017925a91539, 150, 0};
	bbOnDebugEnterStm(&__stmt_12);
	BBUINT* bbt_23=((BBARRAY)((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->scales + 1;
	BBUINT* bbt_24=((BBARRAY)((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)bbt_mat))->_openb3d_openb3dcore_tmatrix_grid )->scales + 1;
	((BBFLOAT*)BBARRAYDATAINDEX((((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)bbt_mat))->_openb3d_openb3dcore_tmatrix_grid ),(((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)bbt_mat))->_openb3d_openb3dcore_tmatrix_grid )->dims,(*(bbt_24)) * 3U + 2U))[(*(bbt_24)) * 3U + 2U]=((BBFLOAT*)BBARRAYDATAINDEX((((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid ),(((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->dims,(*(bbt_23)) * 3U + 2U))[(*(bbt_23)) * 3U + 2U];
	struct BBDebugStm __stmt_13 = {0x2aba017925a91539, 152, 0};
	bbOnDebugEnterStm(&__stmt_13);
	BBUINT* bbt_25=((BBARRAY)((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->scales + 1;
	BBUINT* bbt_26=((BBARRAY)((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)bbt_mat))->_openb3d_openb3dcore_tmatrix_grid )->scales + 1;
	((BBFLOAT*)BBARRAYDATAINDEX((((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)bbt_mat))->_openb3d_openb3dcore_tmatrix_grid ),(((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)bbt_mat))->_openb3d_openb3dcore_tmatrix_grid )->dims,(*(bbt_26)) * 0U + 3U))[(*(bbt_26)) * 0U + 3U]=((BBFLOAT*)BBARRAYDATAINDEX((((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid ),(((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->dims,(*(bbt_25)) * 0U + 3U))[(*(bbt_25)) * 0U + 3U];
	struct BBDebugStm __stmt_14 = {0x2aba017925a91539, 153, 0};
	bbOnDebugEnterStm(&__stmt_14);
	BBUINT* bbt_27=((BBARRAY)((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->scales + 1;
	BBUINT* bbt_28=((BBARRAY)((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)bbt_mat))->_openb3d_openb3dcore_tmatrix_grid )->scales + 1;
	((BBFLOAT*)BBARRAYDATAINDEX((((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)bbt_mat))->_openb3d_openb3dcore_tmatrix_grid ),(((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)bbt_mat))->_openb3d_openb3dcore_tmatrix_grid )->dims,(*(bbt_28)) * 1U + 3U))[(*(bbt_28)) * 1U + 3U]=((BBFLOAT*)BBARRAYDATAINDEX((((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid ),(((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->dims,(*(bbt_27)) * 1U + 3U))[(*(bbt_27)) * 1U + 3U];
	struct BBDebugStm __stmt_15 = {0x2aba017925a91539, 154, 0};
	bbOnDebugEnterStm(&__stmt_15);
	BBUINT* bbt_29=((BBARRAY)((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->scales + 1;
	BBUINT* bbt_30=((BBARRAY)((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)bbt_mat))->_openb3d_openb3dcore_tmatrix_grid )->scales + 1;
	((BBFLOAT*)BBARRAYDATAINDEX((((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)bbt_mat))->_openb3d_openb3dcore_tmatrix_grid ),(((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)bbt_mat))->_openb3d_openb3dcore_tmatrix_grid )->dims,(*(bbt_30)) * 2U + 3U))[(*(bbt_30)) * 2U + 3U]=((BBFLOAT*)BBARRAYDATAINDEX((((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid ),(((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->dims,(*(bbt_29)) * 2U + 3U))[(*(bbt_29)) * 2U + 3U];
	struct BBDebugStm __stmt_16 = {0x2aba017925a91539, 155, 0};
	bbOnDebugEnterStm(&__stmt_16);
	BBUINT* bbt_31=((BBARRAY)((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->scales + 1;
	BBUINT* bbt_32=((BBARRAY)((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)bbt_mat))->_openb3d_openb3dcore_tmatrix_grid )->scales + 1;
	((BBFLOAT*)BBARRAYDATAINDEX((((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)bbt_mat))->_openb3d_openb3dcore_tmatrix_grid ),(((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)bbt_mat))->_openb3d_openb3dcore_tmatrix_grid )->dims,(*(bbt_32)) * 3U + 3U))[(*(bbt_32)) * 3U + 3U]=((BBFLOAT*)BBARRAYDATAINDEX((((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid ),(((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->dims,(*(bbt_31)) * 3U + 3U))[(*(bbt_31)) * 3U + 3U];
	struct BBDebugStm __stmt_17 = {0x2aba017925a91539, 156, 0};
	bbOnDebugEnterStm(&__stmt_17);
	bbOnDebugLeaveScope();
	return (struct openb3d_openb3dcore_TMatrix_obj*)bbt_mat;
}
BBINT _openb3d_openb3dcore_TMatrix_Overwrite_TTMatrix(struct openb3d_openb3dcore_TMatrix_obj* o,struct openb3d_openb3dcore_TMatrix_obj* bbt_mat){
	((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o));
	struct BBDebugScope_2 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"Overwrite",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TMatrix",
				.var_address=&o
			},
			{
				BBDEBUGDECL_LOCAL,
				"mat",
				":TMatrix",
				.var_address=&bbt_mat
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x2aba017925a91539, 165, 0};
	bbOnDebugEnterStm(&__stmt_0);
	BBUINT* bbt_=((BBARRAY)((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)bbt_mat))->_openb3d_openb3dcore_tmatrix_grid )->scales + 1;
	BBUINT* bbt_2=((BBARRAY)((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->scales + 1;
	((BBFLOAT*)BBARRAYDATAINDEX((((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid ),(((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->dims,(*(bbt_2)) * 0U + 0U))[(*(bbt_2)) * 0U + 0U]=((BBFLOAT*)BBARRAYDATAINDEX((((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)bbt_mat))->_openb3d_openb3dcore_tmatrix_grid ),(((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)bbt_mat))->_openb3d_openb3dcore_tmatrix_grid )->dims,(*(bbt_)) * 0U + 0U))[(*(bbt_)) * 0U + 0U];
	struct BBDebugStm __stmt_1 = {0x2aba017925a91539, 166, 0};
	bbOnDebugEnterStm(&__stmt_1);
	BBUINT* bbt_3=((BBARRAY)((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)bbt_mat))->_openb3d_openb3dcore_tmatrix_grid )->scales + 1;
	BBUINT* bbt_4=((BBARRAY)((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->scales + 1;
	((BBFLOAT*)BBARRAYDATAINDEX((((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid ),(((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->dims,(*(bbt_4)) * 1U + 0U))[(*(bbt_4)) * 1U + 0U]=((BBFLOAT*)BBARRAYDATAINDEX((((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)bbt_mat))->_openb3d_openb3dcore_tmatrix_grid ),(((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)bbt_mat))->_openb3d_openb3dcore_tmatrix_grid )->dims,(*(bbt_3)) * 1U + 0U))[(*(bbt_3)) * 1U + 0U];
	struct BBDebugStm __stmt_2 = {0x2aba017925a91539, 167, 0};
	bbOnDebugEnterStm(&__stmt_2);
	BBUINT* bbt_5=((BBARRAY)((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)bbt_mat))->_openb3d_openb3dcore_tmatrix_grid )->scales + 1;
	BBUINT* bbt_6=((BBARRAY)((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->scales + 1;
	((BBFLOAT*)BBARRAYDATAINDEX((((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid ),(((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->dims,(*(bbt_6)) * 2U + 0U))[(*(bbt_6)) * 2U + 0U]=((BBFLOAT*)BBARRAYDATAINDEX((((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)bbt_mat))->_openb3d_openb3dcore_tmatrix_grid ),(((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)bbt_mat))->_openb3d_openb3dcore_tmatrix_grid )->dims,(*(bbt_5)) * 2U + 0U))[(*(bbt_5)) * 2U + 0U];
	struct BBDebugStm __stmt_3 = {0x2aba017925a91539, 168, 0};
	bbOnDebugEnterStm(&__stmt_3);
	BBUINT* bbt_7=((BBARRAY)((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)bbt_mat))->_openb3d_openb3dcore_tmatrix_grid )->scales + 1;
	BBUINT* bbt_8=((BBARRAY)((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->scales + 1;
	((BBFLOAT*)BBARRAYDATAINDEX((((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid ),(((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->dims,(*(bbt_8)) * 3U + 0U))[(*(bbt_8)) * 3U + 0U]=((BBFLOAT*)BBARRAYDATAINDEX((((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)bbt_mat))->_openb3d_openb3dcore_tmatrix_grid ),(((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)bbt_mat))->_openb3d_openb3dcore_tmatrix_grid )->dims,(*(bbt_7)) * 3U + 0U))[(*(bbt_7)) * 3U + 0U];
	struct BBDebugStm __stmt_4 = {0x2aba017925a91539, 169, 0};
	bbOnDebugEnterStm(&__stmt_4);
	BBUINT* bbt_9=((BBARRAY)((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)bbt_mat))->_openb3d_openb3dcore_tmatrix_grid )->scales + 1;
	BBUINT* bbt_10=((BBARRAY)((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->scales + 1;
	((BBFLOAT*)BBARRAYDATAINDEX((((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid ),(((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->dims,(*(bbt_10)) * 0U + 1U))[(*(bbt_10)) * 0U + 1U]=((BBFLOAT*)BBARRAYDATAINDEX((((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)bbt_mat))->_openb3d_openb3dcore_tmatrix_grid ),(((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)bbt_mat))->_openb3d_openb3dcore_tmatrix_grid )->dims,(*(bbt_9)) * 0U + 1U))[(*(bbt_9)) * 0U + 1U];
	struct BBDebugStm __stmt_5 = {0x2aba017925a91539, 170, 0};
	bbOnDebugEnterStm(&__stmt_5);
	BBUINT* bbt_11=((BBARRAY)((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)bbt_mat))->_openb3d_openb3dcore_tmatrix_grid )->scales + 1;
	BBUINT* bbt_12=((BBARRAY)((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->scales + 1;
	((BBFLOAT*)BBARRAYDATAINDEX((((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid ),(((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->dims,(*(bbt_12)) * 1U + 1U))[(*(bbt_12)) * 1U + 1U]=((BBFLOAT*)BBARRAYDATAINDEX((((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)bbt_mat))->_openb3d_openb3dcore_tmatrix_grid ),(((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)bbt_mat))->_openb3d_openb3dcore_tmatrix_grid )->dims,(*(bbt_11)) * 1U + 1U))[(*(bbt_11)) * 1U + 1U];
	struct BBDebugStm __stmt_6 = {0x2aba017925a91539, 171, 0};
	bbOnDebugEnterStm(&__stmt_6);
	BBUINT* bbt_13=((BBARRAY)((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)bbt_mat))->_openb3d_openb3dcore_tmatrix_grid )->scales + 1;
	BBUINT* bbt_14=((BBARRAY)((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->scales + 1;
	((BBFLOAT*)BBARRAYDATAINDEX((((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid ),(((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->dims,(*(bbt_14)) * 2U + 1U))[(*(bbt_14)) * 2U + 1U]=((BBFLOAT*)BBARRAYDATAINDEX((((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)bbt_mat))->_openb3d_openb3dcore_tmatrix_grid ),(((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)bbt_mat))->_openb3d_openb3dcore_tmatrix_grid )->dims,(*(bbt_13)) * 2U + 1U))[(*(bbt_13)) * 2U + 1U];
	struct BBDebugStm __stmt_7 = {0x2aba017925a91539, 172, 0};
	bbOnDebugEnterStm(&__stmt_7);
	BBUINT* bbt_15=((BBARRAY)((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)bbt_mat))->_openb3d_openb3dcore_tmatrix_grid )->scales + 1;
	BBUINT* bbt_16=((BBARRAY)((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->scales + 1;
	((BBFLOAT*)BBARRAYDATAINDEX((((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid ),(((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->dims,(*(bbt_16)) * 3U + 1U))[(*(bbt_16)) * 3U + 1U]=((BBFLOAT*)BBARRAYDATAINDEX((((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)bbt_mat))->_openb3d_openb3dcore_tmatrix_grid ),(((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)bbt_mat))->_openb3d_openb3dcore_tmatrix_grid )->dims,(*(bbt_15)) * 3U + 1U))[(*(bbt_15)) * 3U + 1U];
	struct BBDebugStm __stmt_8 = {0x2aba017925a91539, 173, 0};
	bbOnDebugEnterStm(&__stmt_8);
	BBUINT* bbt_17=((BBARRAY)((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)bbt_mat))->_openb3d_openb3dcore_tmatrix_grid )->scales + 1;
	BBUINT* bbt_18=((BBARRAY)((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->scales + 1;
	((BBFLOAT*)BBARRAYDATAINDEX((((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid ),(((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->dims,(*(bbt_18)) * 0U + 2U))[(*(bbt_18)) * 0U + 2U]=((BBFLOAT*)BBARRAYDATAINDEX((((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)bbt_mat))->_openb3d_openb3dcore_tmatrix_grid ),(((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)bbt_mat))->_openb3d_openb3dcore_tmatrix_grid )->dims,(*(bbt_17)) * 0U + 2U))[(*(bbt_17)) * 0U + 2U];
	struct BBDebugStm __stmt_9 = {0x2aba017925a91539, 174, 0};
	bbOnDebugEnterStm(&__stmt_9);
	BBUINT* bbt_19=((BBARRAY)((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)bbt_mat))->_openb3d_openb3dcore_tmatrix_grid )->scales + 1;
	BBUINT* bbt_20=((BBARRAY)((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->scales + 1;
	((BBFLOAT*)BBARRAYDATAINDEX((((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid ),(((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->dims,(*(bbt_20)) * 1U + 2U))[(*(bbt_20)) * 1U + 2U]=((BBFLOAT*)BBARRAYDATAINDEX((((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)bbt_mat))->_openb3d_openb3dcore_tmatrix_grid ),(((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)bbt_mat))->_openb3d_openb3dcore_tmatrix_grid )->dims,(*(bbt_19)) * 1U + 2U))[(*(bbt_19)) * 1U + 2U];
	struct BBDebugStm __stmt_10 = {0x2aba017925a91539, 175, 0};
	bbOnDebugEnterStm(&__stmt_10);
	BBUINT* bbt_21=((BBARRAY)((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)bbt_mat))->_openb3d_openb3dcore_tmatrix_grid )->scales + 1;
	BBUINT* bbt_22=((BBARRAY)((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->scales + 1;
	((BBFLOAT*)BBARRAYDATAINDEX((((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid ),(((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->dims,(*(bbt_22)) * 2U + 2U))[(*(bbt_22)) * 2U + 2U]=((BBFLOAT*)BBARRAYDATAINDEX((((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)bbt_mat))->_openb3d_openb3dcore_tmatrix_grid ),(((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)bbt_mat))->_openb3d_openb3dcore_tmatrix_grid )->dims,(*(bbt_21)) * 2U + 2U))[(*(bbt_21)) * 2U + 2U];
	struct BBDebugStm __stmt_11 = {0x2aba017925a91539, 176, 0};
	bbOnDebugEnterStm(&__stmt_11);
	BBUINT* bbt_23=((BBARRAY)((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)bbt_mat))->_openb3d_openb3dcore_tmatrix_grid )->scales + 1;
	BBUINT* bbt_24=((BBARRAY)((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->scales + 1;
	((BBFLOAT*)BBARRAYDATAINDEX((((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid ),(((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->dims,(*(bbt_24)) * 3U + 2U))[(*(bbt_24)) * 3U + 2U]=((BBFLOAT*)BBARRAYDATAINDEX((((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)bbt_mat))->_openb3d_openb3dcore_tmatrix_grid ),(((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)bbt_mat))->_openb3d_openb3dcore_tmatrix_grid )->dims,(*(bbt_23)) * 3U + 2U))[(*(bbt_23)) * 3U + 2U];
	struct BBDebugStm __stmt_12 = {0x2aba017925a91539, 178, 0};
	bbOnDebugEnterStm(&__stmt_12);
	BBUINT* bbt_25=((BBARRAY)((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)bbt_mat))->_openb3d_openb3dcore_tmatrix_grid )->scales + 1;
	BBUINT* bbt_26=((BBARRAY)((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->scales + 1;
	((BBFLOAT*)BBARRAYDATAINDEX((((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid ),(((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->dims,(*(bbt_26)) * 0U + 3U))[(*(bbt_26)) * 0U + 3U]=((BBFLOAT*)BBARRAYDATAINDEX((((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)bbt_mat))->_openb3d_openb3dcore_tmatrix_grid ),(((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)bbt_mat))->_openb3d_openb3dcore_tmatrix_grid )->dims,(*(bbt_25)) * 0U + 3U))[(*(bbt_25)) * 0U + 3U];
	struct BBDebugStm __stmt_13 = {0x2aba017925a91539, 179, 0};
	bbOnDebugEnterStm(&__stmt_13);
	BBUINT* bbt_27=((BBARRAY)((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)bbt_mat))->_openb3d_openb3dcore_tmatrix_grid )->scales + 1;
	BBUINT* bbt_28=((BBARRAY)((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->scales + 1;
	((BBFLOAT*)BBARRAYDATAINDEX((((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid ),(((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->dims,(*(bbt_28)) * 1U + 3U))[(*(bbt_28)) * 1U + 3U]=((BBFLOAT*)BBARRAYDATAINDEX((((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)bbt_mat))->_openb3d_openb3dcore_tmatrix_grid ),(((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)bbt_mat))->_openb3d_openb3dcore_tmatrix_grid )->dims,(*(bbt_27)) * 1U + 3U))[(*(bbt_27)) * 1U + 3U];
	struct BBDebugStm __stmt_14 = {0x2aba017925a91539, 180, 0};
	bbOnDebugEnterStm(&__stmt_14);
	BBUINT* bbt_29=((BBARRAY)((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)bbt_mat))->_openb3d_openb3dcore_tmatrix_grid )->scales + 1;
	BBUINT* bbt_30=((BBARRAY)((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->scales + 1;
	((BBFLOAT*)BBARRAYDATAINDEX((((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid ),(((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->dims,(*(bbt_30)) * 2U + 3U))[(*(bbt_30)) * 2U + 3U]=((BBFLOAT*)BBARRAYDATAINDEX((((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)bbt_mat))->_openb3d_openb3dcore_tmatrix_grid ),(((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)bbt_mat))->_openb3d_openb3dcore_tmatrix_grid )->dims,(*(bbt_29)) * 2U + 3U))[(*(bbt_29)) * 2U + 3U];
	struct BBDebugStm __stmt_15 = {0x2aba017925a91539, 181, 0};
	bbOnDebugEnterStm(&__stmt_15);
	BBUINT* bbt_31=((BBARRAY)((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)bbt_mat))->_openb3d_openb3dcore_tmatrix_grid )->scales + 1;
	BBUINT* bbt_32=((BBARRAY)((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->scales + 1;
	((BBFLOAT*)BBARRAYDATAINDEX((((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid ),(((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->dims,(*(bbt_32)) * 3U + 3U))[(*(bbt_32)) * 3U + 3U]=((BBFLOAT*)BBARRAYDATAINDEX((((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)bbt_mat))->_openb3d_openb3dcore_tmatrix_grid ),(((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)bbt_mat))->_openb3d_openb3dcore_tmatrix_grid )->dims,(*(bbt_31)) * 3U + 3U))[(*(bbt_31)) * 3U + 3U];
	bbOnDebugLeaveScope();
	return 0;
}
struct openb3d_openb3dcore_TMatrix_obj* _openb3d_openb3dcore_TMatrix_Inverse(struct openb3d_openb3dcore_TMatrix_obj* o){
	((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o));
	struct openb3d_openb3dcore_TMatrix_obj* bbt_mat=(struct openb3d_openb3dcore_TMatrix_obj*)((struct openb3d_openb3dcore_TMatrix_obj*)&bbNullObject);
	BBFLOAT bbt_tx=0;
	BBFLOAT bbt_ty=0;
	BBFLOAT bbt_tz=0;
	struct BBDebugScope_5 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"Inverse",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TMatrix",
				.var_address=&o
			},
			{
				BBDEBUGDECL_LOCAL,
				"mat",
				":TMatrix",
				.var_address=&bbt_mat
			},
			{
				BBDEBUGDECL_LOCAL,
				"tx",
				"f",
				.var_address=&bbt_tx
			},
			{
				BBDEBUGDECL_LOCAL,
				"ty",
				"f",
				.var_address=&bbt_ty
			},
			{
				BBDEBUGDECL_LOCAL,
				"tz",
				"f",
				.var_address=&bbt_tz
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x2aba017925a91539, 190, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbt_mat=(struct openb3d_openb3dcore_TMatrix_obj*)(struct openb3d_openb3dcore_TMatrix_obj*)bbObjectNew((BBClass *)&openb3d_openb3dcore_TMatrix);
	struct BBDebugStm __stmt_1 = {0x2aba017925a91539, 191, 0};
	bbOnDebugEnterStm(&__stmt_1);
	bbt_tx=0.00000000f;
	struct BBDebugStm __stmt_2 = {0x2aba017925a91539, 192, 0};
	bbOnDebugEnterStm(&__stmt_2);
	bbt_ty=0.00000000f;
	struct BBDebugStm __stmt_3 = {0x2aba017925a91539, 193, 0};
	bbOnDebugEnterStm(&__stmt_3);
	bbt_tz=0.00000000f;
	struct BBDebugStm __stmt_4 = {0x2aba017925a91539, 196, 0};
	bbOnDebugEnterStm(&__stmt_4);
	BBUINT* bbt_=((BBARRAY)((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->scales + 1;
	BBUINT* bbt_2=((BBARRAY)((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)bbt_mat))->_openb3d_openb3dcore_tmatrix_grid )->scales + 1;
	((BBFLOAT*)BBARRAYDATAINDEX((((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)bbt_mat))->_openb3d_openb3dcore_tmatrix_grid ),(((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)bbt_mat))->_openb3d_openb3dcore_tmatrix_grid )->dims,(*(bbt_2)) * 0U + 0U))[(*(bbt_2)) * 0U + 0U]=((BBFLOAT*)BBARRAYDATAINDEX((((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid ),(((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->dims,(*(bbt_)) * 0U + 0U))[(*(bbt_)) * 0U + 0U];
	struct BBDebugStm __stmt_5 = {0x2aba017925a91539, 197, 0};
	bbOnDebugEnterStm(&__stmt_5);
	BBUINT* bbt_3=((BBARRAY)((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->scales + 1;
	BBUINT* bbt_4=((BBARRAY)((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)bbt_mat))->_openb3d_openb3dcore_tmatrix_grid )->scales + 1;
	((BBFLOAT*)BBARRAYDATAINDEX((((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)bbt_mat))->_openb3d_openb3dcore_tmatrix_grid ),(((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)bbt_mat))->_openb3d_openb3dcore_tmatrix_grid )->dims,(*(bbt_4)) * 1U + 0U))[(*(bbt_4)) * 1U + 0U]=((BBFLOAT*)BBARRAYDATAINDEX((((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid ),(((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->dims,(*(bbt_3)) * 0U + 1U))[(*(bbt_3)) * 0U + 1U];
	struct BBDebugStm __stmt_6 = {0x2aba017925a91539, 198, 0};
	bbOnDebugEnterStm(&__stmt_6);
	BBUINT* bbt_5=((BBARRAY)((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->scales + 1;
	BBUINT* bbt_6=((BBARRAY)((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)bbt_mat))->_openb3d_openb3dcore_tmatrix_grid )->scales + 1;
	((BBFLOAT*)BBARRAYDATAINDEX((((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)bbt_mat))->_openb3d_openb3dcore_tmatrix_grid ),(((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)bbt_mat))->_openb3d_openb3dcore_tmatrix_grid )->dims,(*(bbt_6)) * 2U + 0U))[(*(bbt_6)) * 2U + 0U]=((BBFLOAT*)BBARRAYDATAINDEX((((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid ),(((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->dims,(*(bbt_5)) * 0U + 2U))[(*(bbt_5)) * 0U + 2U];
	struct BBDebugStm __stmt_7 = {0x2aba017925a91539, 200, 0};
	bbOnDebugEnterStm(&__stmt_7);
	BBUINT* bbt_7=((BBARRAY)((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->scales + 1;
	BBUINT* bbt_8=((BBARRAY)((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)bbt_mat))->_openb3d_openb3dcore_tmatrix_grid )->scales + 1;
	((BBFLOAT*)BBARRAYDATAINDEX((((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)bbt_mat))->_openb3d_openb3dcore_tmatrix_grid ),(((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)bbt_mat))->_openb3d_openb3dcore_tmatrix_grid )->dims,(*(bbt_8)) * 0U + 1U))[(*(bbt_8)) * 0U + 1U]=((BBFLOAT*)BBARRAYDATAINDEX((((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid ),(((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->dims,(*(bbt_7)) * 1U + 0U))[(*(bbt_7)) * 1U + 0U];
	struct BBDebugStm __stmt_8 = {0x2aba017925a91539, 201, 0};
	bbOnDebugEnterStm(&__stmt_8);
	BBUINT* bbt_9=((BBARRAY)((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->scales + 1;
	BBUINT* bbt_10=((BBARRAY)((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)bbt_mat))->_openb3d_openb3dcore_tmatrix_grid )->scales + 1;
	((BBFLOAT*)BBARRAYDATAINDEX((((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)bbt_mat))->_openb3d_openb3dcore_tmatrix_grid ),(((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)bbt_mat))->_openb3d_openb3dcore_tmatrix_grid )->dims,(*(bbt_10)) * 1U + 1U))[(*(bbt_10)) * 1U + 1U]=((BBFLOAT*)BBARRAYDATAINDEX((((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid ),(((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->dims,(*(bbt_9)) * 1U + 1U))[(*(bbt_9)) * 1U + 1U];
	struct BBDebugStm __stmt_9 = {0x2aba017925a91539, 202, 0};
	bbOnDebugEnterStm(&__stmt_9);
	BBUINT* bbt_11=((BBARRAY)((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->scales + 1;
	BBUINT* bbt_12=((BBARRAY)((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)bbt_mat))->_openb3d_openb3dcore_tmatrix_grid )->scales + 1;
	((BBFLOAT*)BBARRAYDATAINDEX((((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)bbt_mat))->_openb3d_openb3dcore_tmatrix_grid ),(((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)bbt_mat))->_openb3d_openb3dcore_tmatrix_grid )->dims,(*(bbt_12)) * 2U + 1U))[(*(bbt_12)) * 2U + 1U]=((BBFLOAT*)BBARRAYDATAINDEX((((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid ),(((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->dims,(*(bbt_11)) * 1U + 2U))[(*(bbt_11)) * 1U + 2U];
	struct BBDebugStm __stmt_10 = {0x2aba017925a91539, 204, 0};
	bbOnDebugEnterStm(&__stmt_10);
	BBUINT* bbt_13=((BBARRAY)((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->scales + 1;
	BBUINT* bbt_14=((BBARRAY)((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)bbt_mat))->_openb3d_openb3dcore_tmatrix_grid )->scales + 1;
	((BBFLOAT*)BBARRAYDATAINDEX((((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)bbt_mat))->_openb3d_openb3dcore_tmatrix_grid ),(((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)bbt_mat))->_openb3d_openb3dcore_tmatrix_grid )->dims,(*(bbt_14)) * 0U + 2U))[(*(bbt_14)) * 0U + 2U]=((BBFLOAT*)BBARRAYDATAINDEX((((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid ),(((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->dims,(*(bbt_13)) * 2U + 0U))[(*(bbt_13)) * 2U + 0U];
	struct BBDebugStm __stmt_11 = {0x2aba017925a91539, 205, 0};
	bbOnDebugEnterStm(&__stmt_11);
	BBUINT* bbt_15=((BBARRAY)((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->scales + 1;
	BBUINT* bbt_16=((BBARRAY)((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)bbt_mat))->_openb3d_openb3dcore_tmatrix_grid )->scales + 1;
	((BBFLOAT*)BBARRAYDATAINDEX((((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)bbt_mat))->_openb3d_openb3dcore_tmatrix_grid ),(((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)bbt_mat))->_openb3d_openb3dcore_tmatrix_grid )->dims,(*(bbt_16)) * 1U + 2U))[(*(bbt_16)) * 1U + 2U]=((BBFLOAT*)BBARRAYDATAINDEX((((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid ),(((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->dims,(*(bbt_15)) * 2U + 1U))[(*(bbt_15)) * 2U + 1U];
	struct BBDebugStm __stmt_12 = {0x2aba017925a91539, 206, 0};
	bbOnDebugEnterStm(&__stmt_12);
	BBUINT* bbt_17=((BBARRAY)((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->scales + 1;
	BBUINT* bbt_18=((BBARRAY)((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)bbt_mat))->_openb3d_openb3dcore_tmatrix_grid )->scales + 1;
	((BBFLOAT*)BBARRAYDATAINDEX((((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)bbt_mat))->_openb3d_openb3dcore_tmatrix_grid ),(((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)bbt_mat))->_openb3d_openb3dcore_tmatrix_grid )->dims,(*(bbt_18)) * 2U + 2U))[(*(bbt_18)) * 2U + 2U]=((BBFLOAT*)BBARRAYDATAINDEX((((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid ),(((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->dims,(*(bbt_17)) * 2U + 2U))[(*(bbt_17)) * 2U + 2U];
	struct BBDebugStm __stmt_13 = {0x2aba017925a91539, 212, 0};
	bbOnDebugEnterStm(&__stmt_13);
	BBUINT* bbt_19=((BBARRAY)((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)bbt_mat))->_openb3d_openb3dcore_tmatrix_grid )->scales + 1;
	((BBFLOAT*)BBARRAYDATAINDEX((((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)bbt_mat))->_openb3d_openb3dcore_tmatrix_grid ),(((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)bbt_mat))->_openb3d_openb3dcore_tmatrix_grid )->dims,(*(bbt_19)) * 0U + 3U))[(*(bbt_19)) * 0U + 3U]=0.00000000f;
	struct BBDebugStm __stmt_14 = {0x2aba017925a91539, 213, 0};
	bbOnDebugEnterStm(&__stmt_14);
	BBUINT* bbt_20=((BBARRAY)((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)bbt_mat))->_openb3d_openb3dcore_tmatrix_grid )->scales + 1;
	((BBFLOAT*)BBARRAYDATAINDEX((((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)bbt_mat))->_openb3d_openb3dcore_tmatrix_grid ),(((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)bbt_mat))->_openb3d_openb3dcore_tmatrix_grid )->dims,(*(bbt_20)) * 1U + 3U))[(*(bbt_20)) * 1U + 3U]=0.00000000f;
	struct BBDebugStm __stmt_15 = {0x2aba017925a91539, 214, 0};
	bbOnDebugEnterStm(&__stmt_15);
	BBUINT* bbt_21=((BBARRAY)((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)bbt_mat))->_openb3d_openb3dcore_tmatrix_grid )->scales + 1;
	((BBFLOAT*)BBARRAYDATAINDEX((((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)bbt_mat))->_openb3d_openb3dcore_tmatrix_grid ),(((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)bbt_mat))->_openb3d_openb3dcore_tmatrix_grid )->dims,(*(bbt_21)) * 2U + 3U))[(*(bbt_21)) * 2U + 3U]=0.00000000f;
	struct BBDebugStm __stmt_16 = {0x2aba017925a91539, 215, 0};
	bbOnDebugEnterStm(&__stmt_16);
	BBUINT* bbt_22=((BBARRAY)((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)bbt_mat))->_openb3d_openb3dcore_tmatrix_grid )->scales + 1;
	((BBFLOAT*)BBARRAYDATAINDEX((((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)bbt_mat))->_openb3d_openb3dcore_tmatrix_grid ),(((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)bbt_mat))->_openb3d_openb3dcore_tmatrix_grid )->dims,(*(bbt_22)) * 3U + 3U))[(*(bbt_22)) * 3U + 3U]=1.00000000f;
	struct BBDebugStm __stmt_17 = {0x2aba017925a91539, 218, 0};
	bbOnDebugEnterStm(&__stmt_17);
	BBUINT* bbt_23=((BBARRAY)((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->scales + 1;
	bbt_tx=((BBFLOAT*)BBARRAYDATAINDEX((((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid ),(((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->dims,(*(bbt_23)) * 3U + 0U))[(*(bbt_23)) * 3U + 0U];
	struct BBDebugStm __stmt_18 = {0x2aba017925a91539, 219, 0};
	bbOnDebugEnterStm(&__stmt_18);
	BBUINT* bbt_24=((BBARRAY)((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->scales + 1;
	bbt_ty=((BBFLOAT*)BBARRAYDATAINDEX((((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid ),(((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->dims,(*(bbt_24)) * 3U + 1U))[(*(bbt_24)) * 3U + 1U];
	struct BBDebugStm __stmt_19 = {0x2aba017925a91539, 220, 0};
	bbOnDebugEnterStm(&__stmt_19);
	BBUINT* bbt_25=((BBARRAY)((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->scales + 1;
	bbt_tz=((BBFLOAT*)BBARRAYDATAINDEX((((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid ),(((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->dims,(*(bbt_25)) * 3U + 2U))[(*(bbt_25)) * 3U + 2U];
	struct BBDebugStm __stmt_20 = {0x2aba017925a91539, 223, 0};
	bbOnDebugEnterStm(&__stmt_20);
	BBUINT* bbt_26=((BBARRAY)((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->scales + 1;
	BBUINT* bbt_27=((BBARRAY)((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->scales + 1;
	BBUINT* bbt_28=((BBARRAY)((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->scales + 1;
	BBUINT* bbt_29=((BBARRAY)((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)bbt_mat))->_openb3d_openb3dcore_tmatrix_grid )->scales + 1;
	((BBFLOAT*)BBARRAYDATAINDEX((((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)bbt_mat))->_openb3d_openb3dcore_tmatrix_grid ),(((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)bbt_mat))->_openb3d_openb3dcore_tmatrix_grid )->dims,(*(bbt_29)) * 3U + 0U))[(*(bbt_29)) * 3U + 0U]=-(((((BBFLOAT*)BBARRAYDATAINDEX((((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid ),(((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->dims,(*(bbt_26)) * 0U + 0U))[(*(bbt_26)) * 0U + 0U]*bbt_tx)+(((BBFLOAT*)BBARRAYDATAINDEX((((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid ),(((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->dims,(*(bbt_27)) * 0U + 1U))[(*(bbt_27)) * 0U + 1U]*bbt_ty))+(((BBFLOAT*)BBARRAYDATAINDEX((((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid ),(((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->dims,(*(bbt_28)) * 0U + 2U))[(*(bbt_28)) * 0U + 2U]*bbt_tz));
	struct BBDebugStm __stmt_21 = {0x2aba017925a91539, 224, 0};
	bbOnDebugEnterStm(&__stmt_21);
	BBUINT* bbt_30=((BBARRAY)((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->scales + 1;
	BBUINT* bbt_31=((BBARRAY)((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->scales + 1;
	BBUINT* bbt_32=((BBARRAY)((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->scales + 1;
	BBUINT* bbt_33=((BBARRAY)((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)bbt_mat))->_openb3d_openb3dcore_tmatrix_grid )->scales + 1;
	((BBFLOAT*)BBARRAYDATAINDEX((((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)bbt_mat))->_openb3d_openb3dcore_tmatrix_grid ),(((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)bbt_mat))->_openb3d_openb3dcore_tmatrix_grid )->dims,(*(bbt_33)) * 3U + 1U))[(*(bbt_33)) * 3U + 1U]=-(((((BBFLOAT*)BBARRAYDATAINDEX((((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid ),(((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->dims,(*(bbt_30)) * 1U + 0U))[(*(bbt_30)) * 1U + 0U]*bbt_tx)+(((BBFLOAT*)BBARRAYDATAINDEX((((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid ),(((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->dims,(*(bbt_31)) * 1U + 1U))[(*(bbt_31)) * 1U + 1U]*bbt_ty))+(((BBFLOAT*)BBARRAYDATAINDEX((((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid ),(((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->dims,(*(bbt_32)) * 1U + 2U))[(*(bbt_32)) * 1U + 2U]*bbt_tz));
	struct BBDebugStm __stmt_22 = {0x2aba017925a91539, 225, 0};
	bbOnDebugEnterStm(&__stmt_22);
	BBUINT* bbt_34=((BBARRAY)((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->scales + 1;
	BBUINT* bbt_35=((BBARRAY)((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->scales + 1;
	BBUINT* bbt_36=((BBARRAY)((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->scales + 1;
	BBUINT* bbt_37=((BBARRAY)((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)bbt_mat))->_openb3d_openb3dcore_tmatrix_grid )->scales + 1;
	((BBFLOAT*)BBARRAYDATAINDEX((((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)bbt_mat))->_openb3d_openb3dcore_tmatrix_grid ),(((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)bbt_mat))->_openb3d_openb3dcore_tmatrix_grid )->dims,(*(bbt_37)) * 3U + 2U))[(*(bbt_37)) * 3U + 2U]=-(((((BBFLOAT*)BBARRAYDATAINDEX((((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid ),(((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->dims,(*(bbt_34)) * 2U + 0U))[(*(bbt_34)) * 2U + 0U]*bbt_tx)+(((BBFLOAT*)BBARRAYDATAINDEX((((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid ),(((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->dims,(*(bbt_35)) * 2U + 1U))[(*(bbt_35)) * 2U + 1U]*bbt_ty))+(((BBFLOAT*)BBARRAYDATAINDEX((((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid ),(((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->dims,(*(bbt_36)) * 2U + 2U))[(*(bbt_36)) * 2U + 2U]*bbt_tz));
	struct BBDebugStm __stmt_23 = {0x2aba017925a91539, 227, 0};
	bbOnDebugEnterStm(&__stmt_23);
	bbOnDebugLeaveScope();
	return (struct openb3d_openb3dcore_TMatrix_obj*)bbt_mat;
}
BBINT _openb3d_openb3dcore_TMatrix_Multiply_TTMatrix(struct openb3d_openb3dcore_TMatrix_obj* o,struct openb3d_openb3dcore_TMatrix_obj* bbt_mat){
	((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o));
	BBFLOAT bbt_m00=0;
	BBFLOAT bbt_m01=0;
	BBFLOAT bbt_m02=0;
	BBFLOAT bbt_m10=0;
	BBFLOAT bbt_m11=0;
	BBFLOAT bbt_m12=0;
	BBFLOAT bbt_m20=0;
	BBFLOAT bbt_m21=0;
	BBFLOAT bbt_m22=0;
	BBFLOAT bbt_m30=0;
	BBFLOAT bbt_m31=0;
	BBFLOAT bbt_m32=0;
	struct BBDebugScope_14 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"Multiply",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TMatrix",
				.var_address=&o
			},
			{
				BBDEBUGDECL_LOCAL,
				"mat",
				":TMatrix",
				.var_address=&bbt_mat
			},
			{
				BBDEBUGDECL_LOCAL,
				"m00",
				"f",
				.var_address=&bbt_m00
			},
			{
				BBDEBUGDECL_LOCAL,
				"m01",
				"f",
				.var_address=&bbt_m01
			},
			{
				BBDEBUGDECL_LOCAL,
				"m02",
				"f",
				.var_address=&bbt_m02
			},
			{
				BBDEBUGDECL_LOCAL,
				"m10",
				"f",
				.var_address=&bbt_m10
			},
			{
				BBDEBUGDECL_LOCAL,
				"m11",
				"f",
				.var_address=&bbt_m11
			},
			{
				BBDEBUGDECL_LOCAL,
				"m12",
				"f",
				.var_address=&bbt_m12
			},
			{
				BBDEBUGDECL_LOCAL,
				"m20",
				"f",
				.var_address=&bbt_m20
			},
			{
				BBDEBUGDECL_LOCAL,
				"m21",
				"f",
				.var_address=&bbt_m21
			},
			{
				BBDEBUGDECL_LOCAL,
				"m22",
				"f",
				.var_address=&bbt_m22
			},
			{
				BBDEBUGDECL_LOCAL,
				"m30",
				"f",
				.var_address=&bbt_m30
			},
			{
				BBDEBUGDECL_LOCAL,
				"m31",
				"f",
				.var_address=&bbt_m31
			},
			{
				BBDEBUGDECL_LOCAL,
				"m32",
				"f",
				.var_address=&bbt_m32
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x2aba017925a91539, 236, 0};
	bbOnDebugEnterStm(&__stmt_0);
	BBUINT* bbt_=((BBARRAY)((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->scales + 1;
	BBUINT* bbt_2=((BBARRAY)((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)bbt_mat))->_openb3d_openb3dcore_tmatrix_grid )->scales + 1;
	BBUINT* bbt_3=((BBARRAY)((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->scales + 1;
	BBUINT* bbt_4=((BBARRAY)((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)bbt_mat))->_openb3d_openb3dcore_tmatrix_grid )->scales + 1;
	BBUINT* bbt_5=((BBARRAY)((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->scales + 1;
	BBUINT* bbt_6=((BBARRAY)((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)bbt_mat))->_openb3d_openb3dcore_tmatrix_grid )->scales + 1;
	BBUINT* bbt_7=((BBARRAY)((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->scales + 1;
	BBUINT* bbt_8=((BBARRAY)((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)bbt_mat))->_openb3d_openb3dcore_tmatrix_grid )->scales + 1;
	bbt_m00=((((((BBFLOAT*)BBARRAYDATAINDEX((((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid ),(((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->dims,(*(bbt_)) * 0U + 0U))[(*(bbt_)) * 0U + 0U]*((BBFLOAT*)BBARRAYDATAINDEX((((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)bbt_mat))->_openb3d_openb3dcore_tmatrix_grid ),(((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)bbt_mat))->_openb3d_openb3dcore_tmatrix_grid )->dims,(*(bbt_2)) * 0U + 0U))[(*(bbt_2)) * 0U + 0U])+(((BBFLOAT*)BBARRAYDATAINDEX((((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid ),(((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->dims,(*(bbt_3)) * 1U + 0U))[(*(bbt_3)) * 1U + 0U]*((BBFLOAT*)BBARRAYDATAINDEX((((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)bbt_mat))->_openb3d_openb3dcore_tmatrix_grid ),(((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)bbt_mat))->_openb3d_openb3dcore_tmatrix_grid )->dims,(*(bbt_4)) * 0U + 1U))[(*(bbt_4)) * 0U + 1U]))+(((BBFLOAT*)BBARRAYDATAINDEX((((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid ),(((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->dims,(*(bbt_5)) * 2U + 0U))[(*(bbt_5)) * 2U + 0U]*((BBFLOAT*)BBARRAYDATAINDEX((((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)bbt_mat))->_openb3d_openb3dcore_tmatrix_grid ),(((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)bbt_mat))->_openb3d_openb3dcore_tmatrix_grid )->dims,(*(bbt_6)) * 0U + 2U))[(*(bbt_6)) * 0U + 2U]))+(((BBFLOAT*)BBARRAYDATAINDEX((((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid ),(((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->dims,(*(bbt_7)) * 3U + 0U))[(*(bbt_7)) * 3U + 0U]*((BBFLOAT*)BBARRAYDATAINDEX((((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)bbt_mat))->_openb3d_openb3dcore_tmatrix_grid ),(((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)bbt_mat))->_openb3d_openb3dcore_tmatrix_grid )->dims,(*(bbt_8)) * 0U + 3U))[(*(bbt_8)) * 0U + 3U]));
	struct BBDebugStm __stmt_1 = {0x2aba017925a91539, 237, 0};
	bbOnDebugEnterStm(&__stmt_1);
	BBUINT* bbt_9=((BBARRAY)((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->scales + 1;
	BBUINT* bbt_10=((BBARRAY)((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)bbt_mat))->_openb3d_openb3dcore_tmatrix_grid )->scales + 1;
	BBUINT* bbt_11=((BBARRAY)((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->scales + 1;
	BBUINT* bbt_12=((BBARRAY)((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)bbt_mat))->_openb3d_openb3dcore_tmatrix_grid )->scales + 1;
	BBUINT* bbt_13=((BBARRAY)((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->scales + 1;
	BBUINT* bbt_14=((BBARRAY)((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)bbt_mat))->_openb3d_openb3dcore_tmatrix_grid )->scales + 1;
	BBUINT* bbt_15=((BBARRAY)((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->scales + 1;
	BBUINT* bbt_16=((BBARRAY)((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)bbt_mat))->_openb3d_openb3dcore_tmatrix_grid )->scales + 1;
	bbt_m01=((((((BBFLOAT*)BBARRAYDATAINDEX((((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid ),(((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->dims,(*(bbt_9)) * 0U + 1U))[(*(bbt_9)) * 0U + 1U]*((BBFLOAT*)BBARRAYDATAINDEX((((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)bbt_mat))->_openb3d_openb3dcore_tmatrix_grid ),(((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)bbt_mat))->_openb3d_openb3dcore_tmatrix_grid )->dims,(*(bbt_10)) * 0U + 0U))[(*(bbt_10)) * 0U + 0U])+(((BBFLOAT*)BBARRAYDATAINDEX((((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid ),(((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->dims,(*(bbt_11)) * 1U + 1U))[(*(bbt_11)) * 1U + 1U]*((BBFLOAT*)BBARRAYDATAINDEX((((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)bbt_mat))->_openb3d_openb3dcore_tmatrix_grid ),(((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)bbt_mat))->_openb3d_openb3dcore_tmatrix_grid )->dims,(*(bbt_12)) * 0U + 1U))[(*(bbt_12)) * 0U + 1U]))+(((BBFLOAT*)BBARRAYDATAINDEX((((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid ),(((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->dims,(*(bbt_13)) * 2U + 1U))[(*(bbt_13)) * 2U + 1U]*((BBFLOAT*)BBARRAYDATAINDEX((((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)bbt_mat))->_openb3d_openb3dcore_tmatrix_grid ),(((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)bbt_mat))->_openb3d_openb3dcore_tmatrix_grid )->dims,(*(bbt_14)) * 0U + 2U))[(*(bbt_14)) * 0U + 2U]))+(((BBFLOAT*)BBARRAYDATAINDEX((((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid ),(((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->dims,(*(bbt_15)) * 3U + 1U))[(*(bbt_15)) * 3U + 1U]*((BBFLOAT*)BBARRAYDATAINDEX((((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)bbt_mat))->_openb3d_openb3dcore_tmatrix_grid ),(((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)bbt_mat))->_openb3d_openb3dcore_tmatrix_grid )->dims,(*(bbt_16)) * 0U + 3U))[(*(bbt_16)) * 0U + 3U]));
	struct BBDebugStm __stmt_2 = {0x2aba017925a91539, 238, 0};
	bbOnDebugEnterStm(&__stmt_2);
	BBUINT* bbt_17=((BBARRAY)((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->scales + 1;
	BBUINT* bbt_18=((BBARRAY)((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)bbt_mat))->_openb3d_openb3dcore_tmatrix_grid )->scales + 1;
	BBUINT* bbt_19=((BBARRAY)((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->scales + 1;
	BBUINT* bbt_20=((BBARRAY)((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)bbt_mat))->_openb3d_openb3dcore_tmatrix_grid )->scales + 1;
	BBUINT* bbt_21=((BBARRAY)((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->scales + 1;
	BBUINT* bbt_22=((BBARRAY)((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)bbt_mat))->_openb3d_openb3dcore_tmatrix_grid )->scales + 1;
	BBUINT* bbt_23=((BBARRAY)((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->scales + 1;
	BBUINT* bbt_24=((BBARRAY)((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)bbt_mat))->_openb3d_openb3dcore_tmatrix_grid )->scales + 1;
	bbt_m02=((((((BBFLOAT*)BBARRAYDATAINDEX((((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid ),(((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->dims,(*(bbt_17)) * 0U + 2U))[(*(bbt_17)) * 0U + 2U]*((BBFLOAT*)BBARRAYDATAINDEX((((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)bbt_mat))->_openb3d_openb3dcore_tmatrix_grid ),(((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)bbt_mat))->_openb3d_openb3dcore_tmatrix_grid )->dims,(*(bbt_18)) * 0U + 0U))[(*(bbt_18)) * 0U + 0U])+(((BBFLOAT*)BBARRAYDATAINDEX((((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid ),(((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->dims,(*(bbt_19)) * 1U + 2U))[(*(bbt_19)) * 1U + 2U]*((BBFLOAT*)BBARRAYDATAINDEX((((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)bbt_mat))->_openb3d_openb3dcore_tmatrix_grid ),(((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)bbt_mat))->_openb3d_openb3dcore_tmatrix_grid )->dims,(*(bbt_20)) * 0U + 1U))[(*(bbt_20)) * 0U + 1U]))+(((BBFLOAT*)BBARRAYDATAINDEX((((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid ),(((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->dims,(*(bbt_21)) * 2U + 2U))[(*(bbt_21)) * 2U + 2U]*((BBFLOAT*)BBARRAYDATAINDEX((((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)bbt_mat))->_openb3d_openb3dcore_tmatrix_grid ),(((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)bbt_mat))->_openb3d_openb3dcore_tmatrix_grid )->dims,(*(bbt_22)) * 0U + 2U))[(*(bbt_22)) * 0U + 2U]))+(((BBFLOAT*)BBARRAYDATAINDEX((((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid ),(((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->dims,(*(bbt_23)) * 3U + 2U))[(*(bbt_23)) * 3U + 2U]*((BBFLOAT*)BBARRAYDATAINDEX((((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)bbt_mat))->_openb3d_openb3dcore_tmatrix_grid ),(((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)bbt_mat))->_openb3d_openb3dcore_tmatrix_grid )->dims,(*(bbt_24)) * 0U + 3U))[(*(bbt_24)) * 0U + 3U]));
	struct BBDebugStm __stmt_3 = {0x2aba017925a91539, 240, 0};
	bbOnDebugEnterStm(&__stmt_3);
	BBUINT* bbt_25=((BBARRAY)((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->scales + 1;
	BBUINT* bbt_26=((BBARRAY)((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)bbt_mat))->_openb3d_openb3dcore_tmatrix_grid )->scales + 1;
	BBUINT* bbt_27=((BBARRAY)((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->scales + 1;
	BBUINT* bbt_28=((BBARRAY)((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)bbt_mat))->_openb3d_openb3dcore_tmatrix_grid )->scales + 1;
	BBUINT* bbt_29=((BBARRAY)((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->scales + 1;
	BBUINT* bbt_30=((BBARRAY)((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)bbt_mat))->_openb3d_openb3dcore_tmatrix_grid )->scales + 1;
	BBUINT* bbt_31=((BBARRAY)((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->scales + 1;
	BBUINT* bbt_32=((BBARRAY)((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)bbt_mat))->_openb3d_openb3dcore_tmatrix_grid )->scales + 1;
	bbt_m10=((((((BBFLOAT*)BBARRAYDATAINDEX((((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid ),(((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->dims,(*(bbt_25)) * 0U + 0U))[(*(bbt_25)) * 0U + 0U]*((BBFLOAT*)BBARRAYDATAINDEX((((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)bbt_mat))->_openb3d_openb3dcore_tmatrix_grid ),(((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)bbt_mat))->_openb3d_openb3dcore_tmatrix_grid )->dims,(*(bbt_26)) * 1U + 0U))[(*(bbt_26)) * 1U + 0U])+(((BBFLOAT*)BBARRAYDATAINDEX((((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid ),(((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->dims,(*(bbt_27)) * 1U + 0U))[(*(bbt_27)) * 1U + 0U]*((BBFLOAT*)BBARRAYDATAINDEX((((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)bbt_mat))->_openb3d_openb3dcore_tmatrix_grid ),(((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)bbt_mat))->_openb3d_openb3dcore_tmatrix_grid )->dims,(*(bbt_28)) * 1U + 1U))[(*(bbt_28)) * 1U + 1U]))+(((BBFLOAT*)BBARRAYDATAINDEX((((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid ),(((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->dims,(*(bbt_29)) * 2U + 0U))[(*(bbt_29)) * 2U + 0U]*((BBFLOAT*)BBARRAYDATAINDEX((((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)bbt_mat))->_openb3d_openb3dcore_tmatrix_grid ),(((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)bbt_mat))->_openb3d_openb3dcore_tmatrix_grid )->dims,(*(bbt_30)) * 1U + 2U))[(*(bbt_30)) * 1U + 2U]))+(((BBFLOAT*)BBARRAYDATAINDEX((((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid ),(((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->dims,(*(bbt_31)) * 3U + 0U))[(*(bbt_31)) * 3U + 0U]*((BBFLOAT*)BBARRAYDATAINDEX((((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)bbt_mat))->_openb3d_openb3dcore_tmatrix_grid ),(((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)bbt_mat))->_openb3d_openb3dcore_tmatrix_grid )->dims,(*(bbt_32)) * 1U + 3U))[(*(bbt_32)) * 1U + 3U]));
	struct BBDebugStm __stmt_4 = {0x2aba017925a91539, 241, 0};
	bbOnDebugEnterStm(&__stmt_4);
	BBUINT* bbt_33=((BBARRAY)((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->scales + 1;
	BBUINT* bbt_34=((BBARRAY)((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)bbt_mat))->_openb3d_openb3dcore_tmatrix_grid )->scales + 1;
	BBUINT* bbt_35=((BBARRAY)((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->scales + 1;
	BBUINT* bbt_36=((BBARRAY)((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)bbt_mat))->_openb3d_openb3dcore_tmatrix_grid )->scales + 1;
	BBUINT* bbt_37=((BBARRAY)((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->scales + 1;
	BBUINT* bbt_38=((BBARRAY)((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)bbt_mat))->_openb3d_openb3dcore_tmatrix_grid )->scales + 1;
	BBUINT* bbt_39=((BBARRAY)((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->scales + 1;
	BBUINT* bbt_40=((BBARRAY)((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)bbt_mat))->_openb3d_openb3dcore_tmatrix_grid )->scales + 1;
	bbt_m11=((((((BBFLOAT*)BBARRAYDATAINDEX((((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid ),(((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->dims,(*(bbt_33)) * 0U + 1U))[(*(bbt_33)) * 0U + 1U]*((BBFLOAT*)BBARRAYDATAINDEX((((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)bbt_mat))->_openb3d_openb3dcore_tmatrix_grid ),(((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)bbt_mat))->_openb3d_openb3dcore_tmatrix_grid )->dims,(*(bbt_34)) * 1U + 0U))[(*(bbt_34)) * 1U + 0U])+(((BBFLOAT*)BBARRAYDATAINDEX((((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid ),(((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->dims,(*(bbt_35)) * 1U + 1U))[(*(bbt_35)) * 1U + 1U]*((BBFLOAT*)BBARRAYDATAINDEX((((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)bbt_mat))->_openb3d_openb3dcore_tmatrix_grid ),(((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)bbt_mat))->_openb3d_openb3dcore_tmatrix_grid )->dims,(*(bbt_36)) * 1U + 1U))[(*(bbt_36)) * 1U + 1U]))+(((BBFLOAT*)BBARRAYDATAINDEX((((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid ),(((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->dims,(*(bbt_37)) * 2U + 1U))[(*(bbt_37)) * 2U + 1U]*((BBFLOAT*)BBARRAYDATAINDEX((((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)bbt_mat))->_openb3d_openb3dcore_tmatrix_grid ),(((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)bbt_mat))->_openb3d_openb3dcore_tmatrix_grid )->dims,(*(bbt_38)) * 1U + 2U))[(*(bbt_38)) * 1U + 2U]))+(((BBFLOAT*)BBARRAYDATAINDEX((((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid ),(((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->dims,(*(bbt_39)) * 3U + 1U))[(*(bbt_39)) * 3U + 1U]*((BBFLOAT*)BBARRAYDATAINDEX((((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)bbt_mat))->_openb3d_openb3dcore_tmatrix_grid ),(((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)bbt_mat))->_openb3d_openb3dcore_tmatrix_grid )->dims,(*(bbt_40)) * 1U + 3U))[(*(bbt_40)) * 1U + 3U]));
	struct BBDebugStm __stmt_5 = {0x2aba017925a91539, 242, 0};
	bbOnDebugEnterStm(&__stmt_5);
	BBUINT* bbt_41=((BBARRAY)((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->scales + 1;
	BBUINT* bbt_42=((BBARRAY)((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)bbt_mat))->_openb3d_openb3dcore_tmatrix_grid )->scales + 1;
	BBUINT* bbt_43=((BBARRAY)((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->scales + 1;
	BBUINT* bbt_44=((BBARRAY)((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)bbt_mat))->_openb3d_openb3dcore_tmatrix_grid )->scales + 1;
	BBUINT* bbt_45=((BBARRAY)((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->scales + 1;
	BBUINT* bbt_46=((BBARRAY)((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)bbt_mat))->_openb3d_openb3dcore_tmatrix_grid )->scales + 1;
	BBUINT* bbt_47=((BBARRAY)((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->scales + 1;
	BBUINT* bbt_48=((BBARRAY)((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)bbt_mat))->_openb3d_openb3dcore_tmatrix_grid )->scales + 1;
	bbt_m12=((((((BBFLOAT*)BBARRAYDATAINDEX((((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid ),(((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->dims,(*(bbt_41)) * 0U + 2U))[(*(bbt_41)) * 0U + 2U]*((BBFLOAT*)BBARRAYDATAINDEX((((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)bbt_mat))->_openb3d_openb3dcore_tmatrix_grid ),(((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)bbt_mat))->_openb3d_openb3dcore_tmatrix_grid )->dims,(*(bbt_42)) * 1U + 0U))[(*(bbt_42)) * 1U + 0U])+(((BBFLOAT*)BBARRAYDATAINDEX((((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid ),(((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->dims,(*(bbt_43)) * 1U + 2U))[(*(bbt_43)) * 1U + 2U]*((BBFLOAT*)BBARRAYDATAINDEX((((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)bbt_mat))->_openb3d_openb3dcore_tmatrix_grid ),(((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)bbt_mat))->_openb3d_openb3dcore_tmatrix_grid )->dims,(*(bbt_44)) * 1U + 1U))[(*(bbt_44)) * 1U + 1U]))+(((BBFLOAT*)BBARRAYDATAINDEX((((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid ),(((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->dims,(*(bbt_45)) * 2U + 2U))[(*(bbt_45)) * 2U + 2U]*((BBFLOAT*)BBARRAYDATAINDEX((((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)bbt_mat))->_openb3d_openb3dcore_tmatrix_grid ),(((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)bbt_mat))->_openb3d_openb3dcore_tmatrix_grid )->dims,(*(bbt_46)) * 1U + 2U))[(*(bbt_46)) * 1U + 2U]))+(((BBFLOAT*)BBARRAYDATAINDEX((((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid ),(((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->dims,(*(bbt_47)) * 3U + 2U))[(*(bbt_47)) * 3U + 2U]*((BBFLOAT*)BBARRAYDATAINDEX((((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)bbt_mat))->_openb3d_openb3dcore_tmatrix_grid ),(((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)bbt_mat))->_openb3d_openb3dcore_tmatrix_grid )->dims,(*(bbt_48)) * 1U + 3U))[(*(bbt_48)) * 1U + 3U]));
	struct BBDebugStm __stmt_6 = {0x2aba017925a91539, 244, 0};
	bbOnDebugEnterStm(&__stmt_6);
	BBUINT* bbt_49=((BBARRAY)((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->scales + 1;
	BBUINT* bbt_50=((BBARRAY)((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)bbt_mat))->_openb3d_openb3dcore_tmatrix_grid )->scales + 1;
	BBUINT* bbt_51=((BBARRAY)((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->scales + 1;
	BBUINT* bbt_52=((BBARRAY)((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)bbt_mat))->_openb3d_openb3dcore_tmatrix_grid )->scales + 1;
	BBUINT* bbt_53=((BBARRAY)((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->scales + 1;
	BBUINT* bbt_54=((BBARRAY)((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)bbt_mat))->_openb3d_openb3dcore_tmatrix_grid )->scales + 1;
	BBUINT* bbt_55=((BBARRAY)((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->scales + 1;
	BBUINT* bbt_56=((BBARRAY)((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)bbt_mat))->_openb3d_openb3dcore_tmatrix_grid )->scales + 1;
	bbt_m20=((((((BBFLOAT*)BBARRAYDATAINDEX((((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid ),(((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->dims,(*(bbt_49)) * 0U + 0U))[(*(bbt_49)) * 0U + 0U]*((BBFLOAT*)BBARRAYDATAINDEX((((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)bbt_mat))->_openb3d_openb3dcore_tmatrix_grid ),(((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)bbt_mat))->_openb3d_openb3dcore_tmatrix_grid )->dims,(*(bbt_50)) * 2U + 0U))[(*(bbt_50)) * 2U + 0U])+(((BBFLOAT*)BBARRAYDATAINDEX((((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid ),(((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->dims,(*(bbt_51)) * 1U + 0U))[(*(bbt_51)) * 1U + 0U]*((BBFLOAT*)BBARRAYDATAINDEX((((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)bbt_mat))->_openb3d_openb3dcore_tmatrix_grid ),(((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)bbt_mat))->_openb3d_openb3dcore_tmatrix_grid )->dims,(*(bbt_52)) * 2U + 1U))[(*(bbt_52)) * 2U + 1U]))+(((BBFLOAT*)BBARRAYDATAINDEX((((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid ),(((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->dims,(*(bbt_53)) * 2U + 0U))[(*(bbt_53)) * 2U + 0U]*((BBFLOAT*)BBARRAYDATAINDEX((((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)bbt_mat))->_openb3d_openb3dcore_tmatrix_grid ),(((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)bbt_mat))->_openb3d_openb3dcore_tmatrix_grid )->dims,(*(bbt_54)) * 2U + 2U))[(*(bbt_54)) * 2U + 2U]))+(((BBFLOAT*)BBARRAYDATAINDEX((((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid ),(((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->dims,(*(bbt_55)) * 3U + 0U))[(*(bbt_55)) * 3U + 0U]*((BBFLOAT*)BBARRAYDATAINDEX((((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)bbt_mat))->_openb3d_openb3dcore_tmatrix_grid ),(((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)bbt_mat))->_openb3d_openb3dcore_tmatrix_grid )->dims,(*(bbt_56)) * 2U + 3U))[(*(bbt_56)) * 2U + 3U]));
	struct BBDebugStm __stmt_7 = {0x2aba017925a91539, 245, 0};
	bbOnDebugEnterStm(&__stmt_7);
	BBUINT* bbt_57=((BBARRAY)((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->scales + 1;
	BBUINT* bbt_58=((BBARRAY)((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)bbt_mat))->_openb3d_openb3dcore_tmatrix_grid )->scales + 1;
	BBUINT* bbt_59=((BBARRAY)((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->scales + 1;
	BBUINT* bbt_60=((BBARRAY)((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)bbt_mat))->_openb3d_openb3dcore_tmatrix_grid )->scales + 1;
	BBUINT* bbt_61=((BBARRAY)((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->scales + 1;
	BBUINT* bbt_62=((BBARRAY)((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)bbt_mat))->_openb3d_openb3dcore_tmatrix_grid )->scales + 1;
	BBUINT* bbt_63=((BBARRAY)((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->scales + 1;
	BBUINT* bbt_64=((BBARRAY)((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)bbt_mat))->_openb3d_openb3dcore_tmatrix_grid )->scales + 1;
	bbt_m21=((((((BBFLOAT*)BBARRAYDATAINDEX((((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid ),(((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->dims,(*(bbt_57)) * 0U + 1U))[(*(bbt_57)) * 0U + 1U]*((BBFLOAT*)BBARRAYDATAINDEX((((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)bbt_mat))->_openb3d_openb3dcore_tmatrix_grid ),(((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)bbt_mat))->_openb3d_openb3dcore_tmatrix_grid )->dims,(*(bbt_58)) * 2U + 0U))[(*(bbt_58)) * 2U + 0U])+(((BBFLOAT*)BBARRAYDATAINDEX((((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid ),(((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->dims,(*(bbt_59)) * 1U + 1U))[(*(bbt_59)) * 1U + 1U]*((BBFLOAT*)BBARRAYDATAINDEX((((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)bbt_mat))->_openb3d_openb3dcore_tmatrix_grid ),(((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)bbt_mat))->_openb3d_openb3dcore_tmatrix_grid )->dims,(*(bbt_60)) * 2U + 1U))[(*(bbt_60)) * 2U + 1U]))+(((BBFLOAT*)BBARRAYDATAINDEX((((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid ),(((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->dims,(*(bbt_61)) * 2U + 1U))[(*(bbt_61)) * 2U + 1U]*((BBFLOAT*)BBARRAYDATAINDEX((((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)bbt_mat))->_openb3d_openb3dcore_tmatrix_grid ),(((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)bbt_mat))->_openb3d_openb3dcore_tmatrix_grid )->dims,(*(bbt_62)) * 2U + 2U))[(*(bbt_62)) * 2U + 2U]))+(((BBFLOAT*)BBARRAYDATAINDEX((((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid ),(((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->dims,(*(bbt_63)) * 3U + 1U))[(*(bbt_63)) * 3U + 1U]*((BBFLOAT*)BBARRAYDATAINDEX((((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)bbt_mat))->_openb3d_openb3dcore_tmatrix_grid ),(((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)bbt_mat))->_openb3d_openb3dcore_tmatrix_grid )->dims,(*(bbt_64)) * 2U + 3U))[(*(bbt_64)) * 2U + 3U]));
	struct BBDebugStm __stmt_8 = {0x2aba017925a91539, 246, 0};
	bbOnDebugEnterStm(&__stmt_8);
	BBUINT* bbt_65=((BBARRAY)((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->scales + 1;
	BBUINT* bbt_66=((BBARRAY)((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)bbt_mat))->_openb3d_openb3dcore_tmatrix_grid )->scales + 1;
	BBUINT* bbt_67=((BBARRAY)((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->scales + 1;
	BBUINT* bbt_68=((BBARRAY)((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)bbt_mat))->_openb3d_openb3dcore_tmatrix_grid )->scales + 1;
	BBUINT* bbt_69=((BBARRAY)((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->scales + 1;
	BBUINT* bbt_70=((BBARRAY)((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)bbt_mat))->_openb3d_openb3dcore_tmatrix_grid )->scales + 1;
	BBUINT* bbt_71=((BBARRAY)((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->scales + 1;
	BBUINT* bbt_72=((BBARRAY)((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)bbt_mat))->_openb3d_openb3dcore_tmatrix_grid )->scales + 1;
	bbt_m22=((((((BBFLOAT*)BBARRAYDATAINDEX((((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid ),(((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->dims,(*(bbt_65)) * 0U + 2U))[(*(bbt_65)) * 0U + 2U]*((BBFLOAT*)BBARRAYDATAINDEX((((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)bbt_mat))->_openb3d_openb3dcore_tmatrix_grid ),(((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)bbt_mat))->_openb3d_openb3dcore_tmatrix_grid )->dims,(*(bbt_66)) * 2U + 0U))[(*(bbt_66)) * 2U + 0U])+(((BBFLOAT*)BBARRAYDATAINDEX((((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid ),(((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->dims,(*(bbt_67)) * 1U + 2U))[(*(bbt_67)) * 1U + 2U]*((BBFLOAT*)BBARRAYDATAINDEX((((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)bbt_mat))->_openb3d_openb3dcore_tmatrix_grid ),(((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)bbt_mat))->_openb3d_openb3dcore_tmatrix_grid )->dims,(*(bbt_68)) * 2U + 1U))[(*(bbt_68)) * 2U + 1U]))+(((BBFLOAT*)BBARRAYDATAINDEX((((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid ),(((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->dims,(*(bbt_69)) * 2U + 2U))[(*(bbt_69)) * 2U + 2U]*((BBFLOAT*)BBARRAYDATAINDEX((((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)bbt_mat))->_openb3d_openb3dcore_tmatrix_grid ),(((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)bbt_mat))->_openb3d_openb3dcore_tmatrix_grid )->dims,(*(bbt_70)) * 2U + 2U))[(*(bbt_70)) * 2U + 2U]))+(((BBFLOAT*)BBARRAYDATAINDEX((((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid ),(((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->dims,(*(bbt_71)) * 3U + 2U))[(*(bbt_71)) * 3U + 2U]*((BBFLOAT*)BBARRAYDATAINDEX((((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)bbt_mat))->_openb3d_openb3dcore_tmatrix_grid ),(((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)bbt_mat))->_openb3d_openb3dcore_tmatrix_grid )->dims,(*(bbt_72)) * 2U + 3U))[(*(bbt_72)) * 2U + 3U]));
	struct BBDebugStm __stmt_9 = {0x2aba017925a91539, 248, 0};
	bbOnDebugEnterStm(&__stmt_9);
	BBUINT* bbt_73=((BBARRAY)((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->scales + 1;
	BBUINT* bbt_74=((BBARRAY)((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)bbt_mat))->_openb3d_openb3dcore_tmatrix_grid )->scales + 1;
	BBUINT* bbt_75=((BBARRAY)((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->scales + 1;
	BBUINT* bbt_76=((BBARRAY)((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)bbt_mat))->_openb3d_openb3dcore_tmatrix_grid )->scales + 1;
	BBUINT* bbt_77=((BBARRAY)((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->scales + 1;
	BBUINT* bbt_78=((BBARRAY)((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)bbt_mat))->_openb3d_openb3dcore_tmatrix_grid )->scales + 1;
	BBUINT* bbt_79=((BBARRAY)((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->scales + 1;
	BBUINT* bbt_80=((BBARRAY)((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)bbt_mat))->_openb3d_openb3dcore_tmatrix_grid )->scales + 1;
	bbt_m30=((((((BBFLOAT*)BBARRAYDATAINDEX((((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid ),(((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->dims,(*(bbt_73)) * 0U + 0U))[(*(bbt_73)) * 0U + 0U]*((BBFLOAT*)BBARRAYDATAINDEX((((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)bbt_mat))->_openb3d_openb3dcore_tmatrix_grid ),(((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)bbt_mat))->_openb3d_openb3dcore_tmatrix_grid )->dims,(*(bbt_74)) * 3U + 0U))[(*(bbt_74)) * 3U + 0U])+(((BBFLOAT*)BBARRAYDATAINDEX((((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid ),(((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->dims,(*(bbt_75)) * 1U + 0U))[(*(bbt_75)) * 1U + 0U]*((BBFLOAT*)BBARRAYDATAINDEX((((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)bbt_mat))->_openb3d_openb3dcore_tmatrix_grid ),(((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)bbt_mat))->_openb3d_openb3dcore_tmatrix_grid )->dims,(*(bbt_76)) * 3U + 1U))[(*(bbt_76)) * 3U + 1U]))+(((BBFLOAT*)BBARRAYDATAINDEX((((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid ),(((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->dims,(*(bbt_77)) * 2U + 0U))[(*(bbt_77)) * 2U + 0U]*((BBFLOAT*)BBARRAYDATAINDEX((((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)bbt_mat))->_openb3d_openb3dcore_tmatrix_grid ),(((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)bbt_mat))->_openb3d_openb3dcore_tmatrix_grid )->dims,(*(bbt_78)) * 3U + 2U))[(*(bbt_78)) * 3U + 2U]))+(((BBFLOAT*)BBARRAYDATAINDEX((((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid ),(((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->dims,(*(bbt_79)) * 3U + 0U))[(*(bbt_79)) * 3U + 0U]*((BBFLOAT*)BBARRAYDATAINDEX((((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)bbt_mat))->_openb3d_openb3dcore_tmatrix_grid ),(((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)bbt_mat))->_openb3d_openb3dcore_tmatrix_grid )->dims,(*(bbt_80)) * 3U + 3U))[(*(bbt_80)) * 3U + 3U]));
	struct BBDebugStm __stmt_10 = {0x2aba017925a91539, 249, 0};
	bbOnDebugEnterStm(&__stmt_10);
	BBUINT* bbt_81=((BBARRAY)((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->scales + 1;
	BBUINT* bbt_82=((BBARRAY)((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)bbt_mat))->_openb3d_openb3dcore_tmatrix_grid )->scales + 1;
	BBUINT* bbt_83=((BBARRAY)((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->scales + 1;
	BBUINT* bbt_84=((BBARRAY)((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)bbt_mat))->_openb3d_openb3dcore_tmatrix_grid )->scales + 1;
	BBUINT* bbt_85=((BBARRAY)((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->scales + 1;
	BBUINT* bbt_86=((BBARRAY)((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)bbt_mat))->_openb3d_openb3dcore_tmatrix_grid )->scales + 1;
	BBUINT* bbt_87=((BBARRAY)((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->scales + 1;
	BBUINT* bbt_88=((BBARRAY)((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)bbt_mat))->_openb3d_openb3dcore_tmatrix_grid )->scales + 1;
	bbt_m31=((((((BBFLOAT*)BBARRAYDATAINDEX((((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid ),(((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->dims,(*(bbt_81)) * 0U + 1U))[(*(bbt_81)) * 0U + 1U]*((BBFLOAT*)BBARRAYDATAINDEX((((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)bbt_mat))->_openb3d_openb3dcore_tmatrix_grid ),(((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)bbt_mat))->_openb3d_openb3dcore_tmatrix_grid )->dims,(*(bbt_82)) * 3U + 0U))[(*(bbt_82)) * 3U + 0U])+(((BBFLOAT*)BBARRAYDATAINDEX((((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid ),(((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->dims,(*(bbt_83)) * 1U + 1U))[(*(bbt_83)) * 1U + 1U]*((BBFLOAT*)BBARRAYDATAINDEX((((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)bbt_mat))->_openb3d_openb3dcore_tmatrix_grid ),(((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)bbt_mat))->_openb3d_openb3dcore_tmatrix_grid )->dims,(*(bbt_84)) * 3U + 1U))[(*(bbt_84)) * 3U + 1U]))+(((BBFLOAT*)BBARRAYDATAINDEX((((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid ),(((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->dims,(*(bbt_85)) * 2U + 1U))[(*(bbt_85)) * 2U + 1U]*((BBFLOAT*)BBARRAYDATAINDEX((((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)bbt_mat))->_openb3d_openb3dcore_tmatrix_grid ),(((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)bbt_mat))->_openb3d_openb3dcore_tmatrix_grid )->dims,(*(bbt_86)) * 3U + 2U))[(*(bbt_86)) * 3U + 2U]))+(((BBFLOAT*)BBARRAYDATAINDEX((((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid ),(((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->dims,(*(bbt_87)) * 3U + 1U))[(*(bbt_87)) * 3U + 1U]*((BBFLOAT*)BBARRAYDATAINDEX((((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)bbt_mat))->_openb3d_openb3dcore_tmatrix_grid ),(((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)bbt_mat))->_openb3d_openb3dcore_tmatrix_grid )->dims,(*(bbt_88)) * 3U + 3U))[(*(bbt_88)) * 3U + 3U]));
	struct BBDebugStm __stmt_11 = {0x2aba017925a91539, 250, 0};
	bbOnDebugEnterStm(&__stmt_11);
	BBUINT* bbt_89=((BBARRAY)((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->scales + 1;
	BBUINT* bbt_90=((BBARRAY)((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)bbt_mat))->_openb3d_openb3dcore_tmatrix_grid )->scales + 1;
	BBUINT* bbt_91=((BBARRAY)((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->scales + 1;
	BBUINT* bbt_92=((BBARRAY)((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)bbt_mat))->_openb3d_openb3dcore_tmatrix_grid )->scales + 1;
	BBUINT* bbt_93=((BBARRAY)((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->scales + 1;
	BBUINT* bbt_94=((BBARRAY)((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)bbt_mat))->_openb3d_openb3dcore_tmatrix_grid )->scales + 1;
	BBUINT* bbt_95=((BBARRAY)((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->scales + 1;
	BBUINT* bbt_96=((BBARRAY)((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)bbt_mat))->_openb3d_openb3dcore_tmatrix_grid )->scales + 1;
	bbt_m32=((((((BBFLOAT*)BBARRAYDATAINDEX((((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid ),(((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->dims,(*(bbt_89)) * 0U + 2U))[(*(bbt_89)) * 0U + 2U]*((BBFLOAT*)BBARRAYDATAINDEX((((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)bbt_mat))->_openb3d_openb3dcore_tmatrix_grid ),(((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)bbt_mat))->_openb3d_openb3dcore_tmatrix_grid )->dims,(*(bbt_90)) * 3U + 0U))[(*(bbt_90)) * 3U + 0U])+(((BBFLOAT*)BBARRAYDATAINDEX((((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid ),(((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->dims,(*(bbt_91)) * 1U + 2U))[(*(bbt_91)) * 1U + 2U]*((BBFLOAT*)BBARRAYDATAINDEX((((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)bbt_mat))->_openb3d_openb3dcore_tmatrix_grid ),(((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)bbt_mat))->_openb3d_openb3dcore_tmatrix_grid )->dims,(*(bbt_92)) * 3U + 1U))[(*(bbt_92)) * 3U + 1U]))+(((BBFLOAT*)BBARRAYDATAINDEX((((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid ),(((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->dims,(*(bbt_93)) * 2U + 2U))[(*(bbt_93)) * 2U + 2U]*((BBFLOAT*)BBARRAYDATAINDEX((((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)bbt_mat))->_openb3d_openb3dcore_tmatrix_grid ),(((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)bbt_mat))->_openb3d_openb3dcore_tmatrix_grid )->dims,(*(bbt_94)) * 3U + 2U))[(*(bbt_94)) * 3U + 2U]))+(((BBFLOAT*)BBARRAYDATAINDEX((((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid ),(((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->dims,(*(bbt_95)) * 3U + 2U))[(*(bbt_95)) * 3U + 2U]*((BBFLOAT*)BBARRAYDATAINDEX((((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)bbt_mat))->_openb3d_openb3dcore_tmatrix_grid ),(((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)bbt_mat))->_openb3d_openb3dcore_tmatrix_grid )->dims,(*(bbt_96)) * 3U + 3U))[(*(bbt_96)) * 3U + 3U]));
	struct BBDebugStm __stmt_12 = {0x2aba017925a91539, 253, 0};
	bbOnDebugEnterStm(&__stmt_12);
	BBUINT* bbt_97=((BBARRAY)((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->scales + 1;
	((BBFLOAT*)BBARRAYDATAINDEX((((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid ),(((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->dims,(*(bbt_97)) * 0U + 0U))[(*(bbt_97)) * 0U + 0U]=bbt_m00;
	struct BBDebugStm __stmt_13 = {0x2aba017925a91539, 254, 0};
	bbOnDebugEnterStm(&__stmt_13);
	BBUINT* bbt_98=((BBARRAY)((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->scales + 1;
	((BBFLOAT*)BBARRAYDATAINDEX((((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid ),(((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->dims,(*(bbt_98)) * 0U + 1U))[(*(bbt_98)) * 0U + 1U]=bbt_m01;
	struct BBDebugStm __stmt_14 = {0x2aba017925a91539, 255, 0};
	bbOnDebugEnterStm(&__stmt_14);
	BBUINT* bbt_99=((BBARRAY)((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->scales + 1;
	((BBFLOAT*)BBARRAYDATAINDEX((((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid ),(((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->dims,(*(bbt_99)) * 0U + 2U))[(*(bbt_99)) * 0U + 2U]=bbt_m02;
	struct BBDebugStm __stmt_15 = {0x2aba017925a91539, 257, 0};
	bbOnDebugEnterStm(&__stmt_15);
	BBUINT* bbt_100=((BBARRAY)((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->scales + 1;
	((BBFLOAT*)BBARRAYDATAINDEX((((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid ),(((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->dims,(*(bbt_100)) * 1U + 0U))[(*(bbt_100)) * 1U + 0U]=bbt_m10;
	struct BBDebugStm __stmt_16 = {0x2aba017925a91539, 258, 0};
	bbOnDebugEnterStm(&__stmt_16);
	BBUINT* bbt_101=((BBARRAY)((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->scales + 1;
	((BBFLOAT*)BBARRAYDATAINDEX((((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid ),(((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->dims,(*(bbt_101)) * 1U + 1U))[(*(bbt_101)) * 1U + 1U]=bbt_m11;
	struct BBDebugStm __stmt_17 = {0x2aba017925a91539, 259, 0};
	bbOnDebugEnterStm(&__stmt_17);
	BBUINT* bbt_102=((BBARRAY)((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->scales + 1;
	((BBFLOAT*)BBARRAYDATAINDEX((((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid ),(((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->dims,(*(bbt_102)) * 1U + 2U))[(*(bbt_102)) * 1U + 2U]=bbt_m12;
	struct BBDebugStm __stmt_18 = {0x2aba017925a91539, 261, 0};
	bbOnDebugEnterStm(&__stmt_18);
	BBUINT* bbt_103=((BBARRAY)((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->scales + 1;
	((BBFLOAT*)BBARRAYDATAINDEX((((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid ),(((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->dims,(*(bbt_103)) * 2U + 0U))[(*(bbt_103)) * 2U + 0U]=bbt_m20;
	struct BBDebugStm __stmt_19 = {0x2aba017925a91539, 262, 0};
	bbOnDebugEnterStm(&__stmt_19);
	BBUINT* bbt_104=((BBARRAY)((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->scales + 1;
	((BBFLOAT*)BBARRAYDATAINDEX((((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid ),(((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->dims,(*(bbt_104)) * 2U + 1U))[(*(bbt_104)) * 2U + 1U]=bbt_m21;
	struct BBDebugStm __stmt_20 = {0x2aba017925a91539, 263, 0};
	bbOnDebugEnterStm(&__stmt_20);
	BBUINT* bbt_105=((BBARRAY)((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->scales + 1;
	((BBFLOAT*)BBARRAYDATAINDEX((((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid ),(((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->dims,(*(bbt_105)) * 2U + 2U))[(*(bbt_105)) * 2U + 2U]=bbt_m22;
	struct BBDebugStm __stmt_21 = {0x2aba017925a91539, 265, 0};
	bbOnDebugEnterStm(&__stmt_21);
	BBUINT* bbt_106=((BBARRAY)((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->scales + 1;
	((BBFLOAT*)BBARRAYDATAINDEX((((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid ),(((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->dims,(*(bbt_106)) * 3U + 0U))[(*(bbt_106)) * 3U + 0U]=bbt_m30;
	struct BBDebugStm __stmt_22 = {0x2aba017925a91539, 266, 0};
	bbOnDebugEnterStm(&__stmt_22);
	BBUINT* bbt_107=((BBARRAY)((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->scales + 1;
	((BBFLOAT*)BBARRAYDATAINDEX((((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid ),(((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->dims,(*(bbt_107)) * 3U + 1U))[(*(bbt_107)) * 3U + 1U]=bbt_m31;
	struct BBDebugStm __stmt_23 = {0x2aba017925a91539, 267, 0};
	bbOnDebugEnterStm(&__stmt_23);
	BBUINT* bbt_108=((BBARRAY)((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->scales + 1;
	((BBFLOAT*)BBARRAYDATAINDEX((((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid ),(((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->dims,(*(bbt_108)) * 3U + 2U))[(*(bbt_108)) * 3U + 2U]=bbt_m32;
	bbOnDebugLeaveScope();
	return 0;
}
BBINT _openb3d_openb3dcore_TMatrix_Translate_fff(struct openb3d_openb3dcore_TMatrix_obj* o,BBFLOAT bbt_x,BBFLOAT bbt_y,BBFLOAT bbt_z){
	((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o));
	struct BBDebugScope_4 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"Translate",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TMatrix",
				.var_address=&o
			},
			{
				BBDEBUGDECL_LOCAL,
				"x",
				"f",
				.var_address=&bbt_x
			},
			{
				BBDEBUGDECL_LOCAL,
				"y",
				"f",
				.var_address=&bbt_y
			},
			{
				BBDEBUGDECL_LOCAL,
				"z",
				"f",
				.var_address=&bbt_z
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x2aba017925a91539, 277, 0};
	bbOnDebugEnterStm(&__stmt_0);
	BBUINT* bbt_=((BBARRAY)((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->scales + 1;
	BBUINT* bbt_2=((BBARRAY)((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->scales + 1;
	BBUINT* bbt_3=((BBARRAY)((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->scales + 1;
	BBUINT* bbt_4=((BBARRAY)((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->scales + 1;
	BBUINT* bbt_5=((BBARRAY)((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->scales + 1;
	((BBFLOAT*)BBARRAYDATAINDEX((((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid ),(((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->dims,(*(bbt_5)) * 3U + 0U))[(*(bbt_5)) * 3U + 0U]=((((((BBFLOAT*)BBARRAYDATAINDEX((((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid ),(((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->dims,(*(bbt_)) * 0U + 0U))[(*(bbt_)) * 0U + 0U]*bbt_x)+(((BBFLOAT*)BBARRAYDATAINDEX((((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid ),(((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->dims,(*(bbt_2)) * 1U + 0U))[(*(bbt_2)) * 1U + 0U]*bbt_y))+(((BBFLOAT*)BBARRAYDATAINDEX((((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid ),(((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->dims,(*(bbt_3)) * 2U + 0U))[(*(bbt_3)) * 2U + 0U]*bbt_z))+((BBFLOAT*)BBARRAYDATAINDEX((((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid ),(((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->dims,(*(bbt_4)) * 3U + 0U))[(*(bbt_4)) * 3U + 0U]);
	struct BBDebugStm __stmt_1 = {0x2aba017925a91539, 278, 0};
	bbOnDebugEnterStm(&__stmt_1);
	BBUINT* bbt_6=((BBARRAY)((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->scales + 1;
	BBUINT* bbt_7=((BBARRAY)((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->scales + 1;
	BBUINT* bbt_8=((BBARRAY)((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->scales + 1;
	BBUINT* bbt_9=((BBARRAY)((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->scales + 1;
	BBUINT* bbt_10=((BBARRAY)((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->scales + 1;
	((BBFLOAT*)BBARRAYDATAINDEX((((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid ),(((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->dims,(*(bbt_10)) * 3U + 1U))[(*(bbt_10)) * 3U + 1U]=((((((BBFLOAT*)BBARRAYDATAINDEX((((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid ),(((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->dims,(*(bbt_6)) * 0U + 1U))[(*(bbt_6)) * 0U + 1U]*bbt_x)+(((BBFLOAT*)BBARRAYDATAINDEX((((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid ),(((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->dims,(*(bbt_7)) * 1U + 1U))[(*(bbt_7)) * 1U + 1U]*bbt_y))+(((BBFLOAT*)BBARRAYDATAINDEX((((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid ),(((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->dims,(*(bbt_8)) * 2U + 1U))[(*(bbt_8)) * 2U + 1U]*bbt_z))+((BBFLOAT*)BBARRAYDATAINDEX((((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid ),(((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->dims,(*(bbt_9)) * 3U + 1U))[(*(bbt_9)) * 3U + 1U]);
	struct BBDebugStm __stmt_2 = {0x2aba017925a91539, 279, 0};
	bbOnDebugEnterStm(&__stmt_2);
	BBUINT* bbt_11=((BBARRAY)((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->scales + 1;
	BBUINT* bbt_12=((BBARRAY)((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->scales + 1;
	BBUINT* bbt_13=((BBARRAY)((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->scales + 1;
	BBUINT* bbt_14=((BBARRAY)((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->scales + 1;
	BBUINT* bbt_15=((BBARRAY)((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->scales + 1;
	((BBFLOAT*)BBARRAYDATAINDEX((((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid ),(((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->dims,(*(bbt_15)) * 3U + 2U))[(*(bbt_15)) * 3U + 2U]=((((((BBFLOAT*)BBARRAYDATAINDEX((((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid ),(((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->dims,(*(bbt_11)) * 0U + 2U))[(*(bbt_11)) * 0U + 2U]*bbt_x)+(((BBFLOAT*)BBARRAYDATAINDEX((((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid ),(((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->dims,(*(bbt_12)) * 1U + 2U))[(*(bbt_12)) * 1U + 2U]*bbt_y))+(((BBFLOAT*)BBARRAYDATAINDEX((((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid ),(((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->dims,(*(bbt_13)) * 2U + 2U))[(*(bbt_13)) * 2U + 2U]*bbt_z))+((BBFLOAT*)BBARRAYDATAINDEX((((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid ),(((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->dims,(*(bbt_14)) * 3U + 2U))[(*(bbt_14)) * 3U + 2U]);
	bbOnDebugLeaveScope();
	return 0;
}
BBINT _openb3d_openb3dcore_TMatrix_Scale_fff(struct openb3d_openb3dcore_TMatrix_obj* o,BBFLOAT bbt_x,BBFLOAT bbt_y,BBFLOAT bbt_z){
	((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o));
	struct BBDebugScope_4 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"Scale",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TMatrix",
				.var_address=&o
			},
			{
				BBDEBUGDECL_LOCAL,
				"x",
				"f",
				.var_address=&bbt_x
			},
			{
				BBDEBUGDECL_LOCAL,
				"y",
				"f",
				.var_address=&bbt_y
			},
			{
				BBDEBUGDECL_LOCAL,
				"z",
				"f",
				.var_address=&bbt_z
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x2aba017925a91539, 288, 0};
	bbOnDebugEnterStm(&__stmt_0);
	BBUINT* bbt_=((BBARRAY)((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->scales + 1;
	BBUINT* bbt_2=((BBARRAY)((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->scales + 1;
	((BBFLOAT*)BBARRAYDATAINDEX((((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid ),(((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->dims,(*(bbt_2)) * 0U + 0U))[(*(bbt_2)) * 0U + 0U]=(((BBFLOAT*)BBARRAYDATAINDEX((((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid ),(((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->dims,(*(bbt_)) * 0U + 0U))[(*(bbt_)) * 0U + 0U]*bbt_x);
	struct BBDebugStm __stmt_1 = {0x2aba017925a91539, 289, 0};
	bbOnDebugEnterStm(&__stmt_1);
	BBUINT* bbt_3=((BBARRAY)((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->scales + 1;
	BBUINT* bbt_4=((BBARRAY)((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->scales + 1;
	((BBFLOAT*)BBARRAYDATAINDEX((((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid ),(((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->dims,(*(bbt_4)) * 0U + 1U))[(*(bbt_4)) * 0U + 1U]=(((BBFLOAT*)BBARRAYDATAINDEX((((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid ),(((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->dims,(*(bbt_3)) * 0U + 1U))[(*(bbt_3)) * 0U + 1U]*bbt_x);
	struct BBDebugStm __stmt_2 = {0x2aba017925a91539, 290, 0};
	bbOnDebugEnterStm(&__stmt_2);
	BBUINT* bbt_5=((BBARRAY)((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->scales + 1;
	BBUINT* bbt_6=((BBARRAY)((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->scales + 1;
	((BBFLOAT*)BBARRAYDATAINDEX((((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid ),(((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->dims,(*(bbt_6)) * 0U + 2U))[(*(bbt_6)) * 0U + 2U]=(((BBFLOAT*)BBARRAYDATAINDEX((((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid ),(((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->dims,(*(bbt_5)) * 0U + 2U))[(*(bbt_5)) * 0U + 2U]*bbt_x);
	struct BBDebugStm __stmt_3 = {0x2aba017925a91539, 292, 0};
	bbOnDebugEnterStm(&__stmt_3);
	BBUINT* bbt_7=((BBARRAY)((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->scales + 1;
	BBUINT* bbt_8=((BBARRAY)((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->scales + 1;
	((BBFLOAT*)BBARRAYDATAINDEX((((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid ),(((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->dims,(*(bbt_8)) * 1U + 0U))[(*(bbt_8)) * 1U + 0U]=(((BBFLOAT*)BBARRAYDATAINDEX((((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid ),(((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->dims,(*(bbt_7)) * 1U + 0U))[(*(bbt_7)) * 1U + 0U]*bbt_y);
	struct BBDebugStm __stmt_4 = {0x2aba017925a91539, 293, 0};
	bbOnDebugEnterStm(&__stmt_4);
	BBUINT* bbt_9=((BBARRAY)((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->scales + 1;
	BBUINT* bbt_10=((BBARRAY)((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->scales + 1;
	((BBFLOAT*)BBARRAYDATAINDEX((((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid ),(((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->dims,(*(bbt_10)) * 1U + 1U))[(*(bbt_10)) * 1U + 1U]=(((BBFLOAT*)BBARRAYDATAINDEX((((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid ),(((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->dims,(*(bbt_9)) * 1U + 1U))[(*(bbt_9)) * 1U + 1U]*bbt_y);
	struct BBDebugStm __stmt_5 = {0x2aba017925a91539, 294, 0};
	bbOnDebugEnterStm(&__stmt_5);
	BBUINT* bbt_11=((BBARRAY)((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->scales + 1;
	BBUINT* bbt_12=((BBARRAY)((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->scales + 1;
	((BBFLOAT*)BBARRAYDATAINDEX((((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid ),(((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->dims,(*(bbt_12)) * 1U + 2U))[(*(bbt_12)) * 1U + 2U]=(((BBFLOAT*)BBARRAYDATAINDEX((((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid ),(((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->dims,(*(bbt_11)) * 1U + 2U))[(*(bbt_11)) * 1U + 2U]*bbt_y);
	struct BBDebugStm __stmt_6 = {0x2aba017925a91539, 296, 0};
	bbOnDebugEnterStm(&__stmt_6);
	BBUINT* bbt_13=((BBARRAY)((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->scales + 1;
	BBUINT* bbt_14=((BBARRAY)((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->scales + 1;
	((BBFLOAT*)BBARRAYDATAINDEX((((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid ),(((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->dims,(*(bbt_14)) * 2U + 0U))[(*(bbt_14)) * 2U + 0U]=(((BBFLOAT*)BBARRAYDATAINDEX((((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid ),(((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->dims,(*(bbt_13)) * 2U + 0U))[(*(bbt_13)) * 2U + 0U]*bbt_z);
	struct BBDebugStm __stmt_7 = {0x2aba017925a91539, 297, 0};
	bbOnDebugEnterStm(&__stmt_7);
	BBUINT* bbt_15=((BBARRAY)((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->scales + 1;
	BBUINT* bbt_16=((BBARRAY)((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->scales + 1;
	((BBFLOAT*)BBARRAYDATAINDEX((((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid ),(((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->dims,(*(bbt_16)) * 2U + 1U))[(*(bbt_16)) * 2U + 1U]=(((BBFLOAT*)BBARRAYDATAINDEX((((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid ),(((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->dims,(*(bbt_15)) * 2U + 1U))[(*(bbt_15)) * 2U + 1U]*bbt_z);
	struct BBDebugStm __stmt_8 = {0x2aba017925a91539, 298, 0};
	bbOnDebugEnterStm(&__stmt_8);
	BBUINT* bbt_17=((BBARRAY)((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->scales + 1;
	BBUINT* bbt_18=((BBARRAY)((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->scales + 1;
	((BBFLOAT*)BBARRAYDATAINDEX((((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid ),(((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->dims,(*(bbt_18)) * 2U + 2U))[(*(bbt_18)) * 2U + 2U]=(((BBFLOAT*)BBARRAYDATAINDEX((((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid ),(((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->dims,(*(bbt_17)) * 2U + 2U))[(*(bbt_17)) * 2U + 2U]*bbt_z);
	bbOnDebugLeaveScope();
	return 0;
}
BBINT _openb3d_openb3dcore_TMatrix_Rotate_fff(struct openb3d_openb3dcore_TMatrix_obj* o,BBFLOAT bbt_rx,BBFLOAT bbt_ry,BBFLOAT bbt_rz){
	((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o));
	BBFLOAT bbt_cos_ang=0;
	BBFLOAT bbt_sin_ang=0;
	BBFLOAT bbt_m00=0;
	BBFLOAT bbt_m01=0;
	BBFLOAT bbt_m02=0;
	BBFLOAT bbt_m10=0;
	BBFLOAT bbt_m11=0;
	BBFLOAT bbt_m12=0;
	struct BBDebugScope_12 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"Rotate",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TMatrix",
				.var_address=&o
			},
			{
				BBDEBUGDECL_LOCAL,
				"rx",
				"f",
				.var_address=&bbt_rx
			},
			{
				BBDEBUGDECL_LOCAL,
				"ry",
				"f",
				.var_address=&bbt_ry
			},
			{
				BBDEBUGDECL_LOCAL,
				"rz",
				"f",
				.var_address=&bbt_rz
			},
			{
				BBDEBUGDECL_LOCAL,
				"cos_ang",
				"f",
				.var_address=&bbt_cos_ang
			},
			{
				BBDEBUGDECL_LOCAL,
				"sin_ang",
				"f",
				.var_address=&bbt_sin_ang
			},
			{
				BBDEBUGDECL_LOCAL,
				"m00",
				"f",
				.var_address=&bbt_m00
			},
			{
				BBDEBUGDECL_LOCAL,
				"m01",
				"f",
				.var_address=&bbt_m01
			},
			{
				BBDEBUGDECL_LOCAL,
				"m02",
				"f",
				.var_address=&bbt_m02
			},
			{
				BBDEBUGDECL_LOCAL,
				"m10",
				"f",
				.var_address=&bbt_m10
			},
			{
				BBDEBUGDECL_LOCAL,
				"m11",
				"f",
				.var_address=&bbt_m11
			},
			{
				BBDEBUGDECL_LOCAL,
				"m12",
				"f",
				.var_address=&bbt_m12
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x2aba017925a91539, 307, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbt_cos_ang=.00000000f;
	struct BBDebugStm __stmt_1 = {0x2aba017925a91539, 307, 0};
	bbOnDebugEnterStm(&__stmt_1);
	bbt_sin_ang=.00000000f;
	struct BBDebugStm __stmt_2 = {0x2aba017925a91539, 310, 0};
	bbOnDebugEnterStm(&__stmt_2);
	bbt_cos_ang=((BBFLOAT)bbCos((double)((BBDOUBLE)bbt_ry)));
	struct BBDebugStm __stmt_3 = {0x2aba017925a91539, 311, 0};
	bbOnDebugEnterStm(&__stmt_3);
	bbt_sin_ang=((BBFLOAT)bbSin((double)((BBDOUBLE)bbt_ry)));
	struct BBDebugStm __stmt_4 = {0x2aba017925a91539, 313, 0};
	bbOnDebugEnterStm(&__stmt_4);
	BBUINT* bbt_=((BBARRAY)((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->scales + 1;
	BBUINT* bbt_2=((BBARRAY)((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->scales + 1;
	bbt_m00=((((BBFLOAT*)BBARRAYDATAINDEX((((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid ),(((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->dims,(*(bbt_)) * 0U + 0U))[(*(bbt_)) * 0U + 0U]*bbt_cos_ang)+(((BBFLOAT*)BBARRAYDATAINDEX((((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid ),(((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->dims,(*(bbt_2)) * 2U + 0U))[(*(bbt_2)) * 2U + 0U]*-bbt_sin_ang));
	struct BBDebugStm __stmt_5 = {0x2aba017925a91539, 314, 0};
	bbOnDebugEnterStm(&__stmt_5);
	BBUINT* bbt_3=((BBARRAY)((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->scales + 1;
	BBUINT* bbt_4=((BBARRAY)((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->scales + 1;
	bbt_m01=((((BBFLOAT*)BBARRAYDATAINDEX((((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid ),(((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->dims,(*(bbt_3)) * 0U + 1U))[(*(bbt_3)) * 0U + 1U]*bbt_cos_ang)+(((BBFLOAT*)BBARRAYDATAINDEX((((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid ),(((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->dims,(*(bbt_4)) * 2U + 1U))[(*(bbt_4)) * 2U + 1U]*-bbt_sin_ang));
	struct BBDebugStm __stmt_6 = {0x2aba017925a91539, 315, 0};
	bbOnDebugEnterStm(&__stmt_6);
	BBUINT* bbt_5=((BBARRAY)((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->scales + 1;
	BBUINT* bbt_6=((BBARRAY)((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->scales + 1;
	bbt_m02=((((BBFLOAT*)BBARRAYDATAINDEX((((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid ),(((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->dims,(*(bbt_5)) * 0U + 2U))[(*(bbt_5)) * 0U + 2U]*bbt_cos_ang)+(((BBFLOAT*)BBARRAYDATAINDEX((((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid ),(((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->dims,(*(bbt_6)) * 2U + 2U))[(*(bbt_6)) * 2U + 2U]*-bbt_sin_ang));
	struct BBDebugStm __stmt_7 = {0x2aba017925a91539, 317, 0};
	bbOnDebugEnterStm(&__stmt_7);
	BBUINT* bbt_7=((BBARRAY)((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->scales + 1;
	BBUINT* bbt_8=((BBARRAY)((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->scales + 1;
	BBUINT* bbt_9=((BBARRAY)((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->scales + 1;
	((BBFLOAT*)BBARRAYDATAINDEX((((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid ),(((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->dims,(*(bbt_9)) * 2U + 0U))[(*(bbt_9)) * 2U + 0U]=((((BBFLOAT*)BBARRAYDATAINDEX((((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid ),(((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->dims,(*(bbt_7)) * 0U + 0U))[(*(bbt_7)) * 0U + 0U]*bbt_sin_ang)+(((BBFLOAT*)BBARRAYDATAINDEX((((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid ),(((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->dims,(*(bbt_8)) * 2U + 0U))[(*(bbt_8)) * 2U + 0U]*bbt_cos_ang));
	struct BBDebugStm __stmt_8 = {0x2aba017925a91539, 318, 0};
	bbOnDebugEnterStm(&__stmt_8);
	BBUINT* bbt_10=((BBARRAY)((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->scales + 1;
	BBUINT* bbt_11=((BBARRAY)((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->scales + 1;
	BBUINT* bbt_12=((BBARRAY)((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->scales + 1;
	((BBFLOAT*)BBARRAYDATAINDEX((((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid ),(((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->dims,(*(bbt_12)) * 2U + 1U))[(*(bbt_12)) * 2U + 1U]=((((BBFLOAT*)BBARRAYDATAINDEX((((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid ),(((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->dims,(*(bbt_10)) * 0U + 1U))[(*(bbt_10)) * 0U + 1U]*bbt_sin_ang)+(((BBFLOAT*)BBARRAYDATAINDEX((((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid ),(((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->dims,(*(bbt_11)) * 2U + 1U))[(*(bbt_11)) * 2U + 1U]*bbt_cos_ang));
	struct BBDebugStm __stmt_9 = {0x2aba017925a91539, 319, 0};
	bbOnDebugEnterStm(&__stmt_9);
	BBUINT* bbt_13=((BBARRAY)((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->scales + 1;
	BBUINT* bbt_14=((BBARRAY)((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->scales + 1;
	BBUINT* bbt_15=((BBARRAY)((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->scales + 1;
	((BBFLOAT*)BBARRAYDATAINDEX((((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid ),(((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->dims,(*(bbt_15)) * 2U + 2U))[(*(bbt_15)) * 2U + 2U]=((((BBFLOAT*)BBARRAYDATAINDEX((((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid ),(((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->dims,(*(bbt_13)) * 0U + 2U))[(*(bbt_13)) * 0U + 2U]*bbt_sin_ang)+(((BBFLOAT*)BBARRAYDATAINDEX((((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid ),(((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->dims,(*(bbt_14)) * 2U + 2U))[(*(bbt_14)) * 2U + 2U]*bbt_cos_ang));
	struct BBDebugStm __stmt_10 = {0x2aba017925a91539, 321, 0};
	bbOnDebugEnterStm(&__stmt_10);
	BBUINT* bbt_16=((BBARRAY)((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->scales + 1;
	((BBFLOAT*)BBARRAYDATAINDEX((((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid ),(((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->dims,(*(bbt_16)) * 0U + 0U))[(*(bbt_16)) * 0U + 0U]=bbt_m00;
	struct BBDebugStm __stmt_11 = {0x2aba017925a91539, 322, 0};
	bbOnDebugEnterStm(&__stmt_11);
	BBUINT* bbt_17=((BBARRAY)((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->scales + 1;
	((BBFLOAT*)BBARRAYDATAINDEX((((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid ),(((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->dims,(*(bbt_17)) * 0U + 1U))[(*(bbt_17)) * 0U + 1U]=bbt_m01;
	struct BBDebugStm __stmt_12 = {0x2aba017925a91539, 323, 0};
	bbOnDebugEnterStm(&__stmt_12);
	BBUINT* bbt_18=((BBARRAY)((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->scales + 1;
	((BBFLOAT*)BBARRAYDATAINDEX((((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid ),(((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->dims,(*(bbt_18)) * 0U + 2U))[(*(bbt_18)) * 0U + 2U]=bbt_m02;
	struct BBDebugStm __stmt_13 = {0x2aba017925a91539, 326, 0};
	bbOnDebugEnterStm(&__stmt_13);
	bbt_cos_ang=((BBFLOAT)bbCos((double)((BBDOUBLE)bbt_rx)));
	struct BBDebugStm __stmt_14 = {0x2aba017925a91539, 327, 0};
	bbOnDebugEnterStm(&__stmt_14);
	bbt_sin_ang=((BBFLOAT)bbSin((double)((BBDOUBLE)bbt_rx)));
	struct BBDebugStm __stmt_15 = {0x2aba017925a91539, 329, 0};
	bbOnDebugEnterStm(&__stmt_15);
	BBUINT* bbt_19=((BBARRAY)((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->scales + 1;
	BBUINT* bbt_20=((BBARRAY)((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->scales + 1;
	bbt_m10=((((BBFLOAT*)BBARRAYDATAINDEX((((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid ),(((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->dims,(*(bbt_19)) * 1U + 0U))[(*(bbt_19)) * 1U + 0U]*bbt_cos_ang)+(((BBFLOAT*)BBARRAYDATAINDEX((((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid ),(((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->dims,(*(bbt_20)) * 2U + 0U))[(*(bbt_20)) * 2U + 0U]*bbt_sin_ang));
	struct BBDebugStm __stmt_16 = {0x2aba017925a91539, 330, 0};
	bbOnDebugEnterStm(&__stmt_16);
	BBUINT* bbt_21=((BBARRAY)((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->scales + 1;
	BBUINT* bbt_22=((BBARRAY)((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->scales + 1;
	bbt_m11=((((BBFLOAT*)BBARRAYDATAINDEX((((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid ),(((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->dims,(*(bbt_21)) * 1U + 1U))[(*(bbt_21)) * 1U + 1U]*bbt_cos_ang)+(((BBFLOAT*)BBARRAYDATAINDEX((((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid ),(((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->dims,(*(bbt_22)) * 2U + 1U))[(*(bbt_22)) * 2U + 1U]*bbt_sin_ang));
	struct BBDebugStm __stmt_17 = {0x2aba017925a91539, 331, 0};
	bbOnDebugEnterStm(&__stmt_17);
	BBUINT* bbt_23=((BBARRAY)((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->scales + 1;
	BBUINT* bbt_24=((BBARRAY)((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->scales + 1;
	bbt_m12=((((BBFLOAT*)BBARRAYDATAINDEX((((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid ),(((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->dims,(*(bbt_23)) * 1U + 2U))[(*(bbt_23)) * 1U + 2U]*bbt_cos_ang)+(((BBFLOAT*)BBARRAYDATAINDEX((((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid ),(((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->dims,(*(bbt_24)) * 2U + 2U))[(*(bbt_24)) * 2U + 2U]*bbt_sin_ang));
	struct BBDebugStm __stmt_18 = {0x2aba017925a91539, 333, 0};
	bbOnDebugEnterStm(&__stmt_18);
	BBUINT* bbt_25=((BBARRAY)((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->scales + 1;
	BBUINT* bbt_26=((BBARRAY)((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->scales + 1;
	BBUINT* bbt_27=((BBARRAY)((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->scales + 1;
	((BBFLOAT*)BBARRAYDATAINDEX((((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid ),(((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->dims,(*(bbt_27)) * 2U + 0U))[(*(bbt_27)) * 2U + 0U]=((((BBFLOAT*)BBARRAYDATAINDEX((((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid ),(((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->dims,(*(bbt_25)) * 1U + 0U))[(*(bbt_25)) * 1U + 0U]*-bbt_sin_ang)+(((BBFLOAT*)BBARRAYDATAINDEX((((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid ),(((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->dims,(*(bbt_26)) * 2U + 0U))[(*(bbt_26)) * 2U + 0U]*bbt_cos_ang));
	struct BBDebugStm __stmt_19 = {0x2aba017925a91539, 334, 0};
	bbOnDebugEnterStm(&__stmt_19);
	BBUINT* bbt_28=((BBARRAY)((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->scales + 1;
	BBUINT* bbt_29=((BBARRAY)((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->scales + 1;
	BBUINT* bbt_30=((BBARRAY)((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->scales + 1;
	((BBFLOAT*)BBARRAYDATAINDEX((((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid ),(((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->dims,(*(bbt_30)) * 2U + 1U))[(*(bbt_30)) * 2U + 1U]=((((BBFLOAT*)BBARRAYDATAINDEX((((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid ),(((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->dims,(*(bbt_28)) * 1U + 1U))[(*(bbt_28)) * 1U + 1U]*-bbt_sin_ang)+(((BBFLOAT*)BBARRAYDATAINDEX((((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid ),(((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->dims,(*(bbt_29)) * 2U + 1U))[(*(bbt_29)) * 2U + 1U]*bbt_cos_ang));
	struct BBDebugStm __stmt_20 = {0x2aba017925a91539, 335, 0};
	bbOnDebugEnterStm(&__stmt_20);
	BBUINT* bbt_31=((BBARRAY)((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->scales + 1;
	BBUINT* bbt_32=((BBARRAY)((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->scales + 1;
	BBUINT* bbt_33=((BBARRAY)((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->scales + 1;
	((BBFLOAT*)BBARRAYDATAINDEX((((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid ),(((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->dims,(*(bbt_33)) * 2U + 2U))[(*(bbt_33)) * 2U + 2U]=((((BBFLOAT*)BBARRAYDATAINDEX((((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid ),(((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->dims,(*(bbt_31)) * 1U + 2U))[(*(bbt_31)) * 1U + 2U]*-bbt_sin_ang)+(((BBFLOAT*)BBARRAYDATAINDEX((((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid ),(((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->dims,(*(bbt_32)) * 2U + 2U))[(*(bbt_32)) * 2U + 2U]*bbt_cos_ang));
	struct BBDebugStm __stmt_21 = {0x2aba017925a91539, 337, 0};
	bbOnDebugEnterStm(&__stmt_21);
	BBUINT* bbt_34=((BBARRAY)((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->scales + 1;
	((BBFLOAT*)BBARRAYDATAINDEX((((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid ),(((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->dims,(*(bbt_34)) * 1U + 0U))[(*(bbt_34)) * 1U + 0U]=bbt_m10;
	struct BBDebugStm __stmt_22 = {0x2aba017925a91539, 338, 0};
	bbOnDebugEnterStm(&__stmt_22);
	BBUINT* bbt_35=((BBARRAY)((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->scales + 1;
	((BBFLOAT*)BBARRAYDATAINDEX((((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid ),(((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->dims,(*(bbt_35)) * 1U + 1U))[(*(bbt_35)) * 1U + 1U]=bbt_m11;
	struct BBDebugStm __stmt_23 = {0x2aba017925a91539, 339, 0};
	bbOnDebugEnterStm(&__stmt_23);
	BBUINT* bbt_36=((BBARRAY)((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->scales + 1;
	((BBFLOAT*)BBARRAYDATAINDEX((((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid ),(((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->dims,(*(bbt_36)) * 1U + 2U))[(*(bbt_36)) * 1U + 2U]=bbt_m12;
	struct BBDebugStm __stmt_24 = {0x2aba017925a91539, 342, 0};
	bbOnDebugEnterStm(&__stmt_24);
	bbt_cos_ang=((BBFLOAT)bbCos((double)((BBDOUBLE)bbt_rz)));
	struct BBDebugStm __stmt_25 = {0x2aba017925a91539, 343, 0};
	bbOnDebugEnterStm(&__stmt_25);
	bbt_sin_ang=((BBFLOAT)bbSin((double)((BBDOUBLE)bbt_rz)));
	struct BBDebugStm __stmt_26 = {0x2aba017925a91539, 345, 0};
	bbOnDebugEnterStm(&__stmt_26);
	BBUINT* bbt_37=((BBARRAY)((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->scales + 1;
	BBUINT* bbt_38=((BBARRAY)((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->scales + 1;
	bbt_m00=((((BBFLOAT*)BBARRAYDATAINDEX((((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid ),(((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->dims,(*(bbt_37)) * 0U + 0U))[(*(bbt_37)) * 0U + 0U]*bbt_cos_ang)+(((BBFLOAT*)BBARRAYDATAINDEX((((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid ),(((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->dims,(*(bbt_38)) * 1U + 0U))[(*(bbt_38)) * 1U + 0U]*bbt_sin_ang));
	struct BBDebugStm __stmt_27 = {0x2aba017925a91539, 346, 0};
	bbOnDebugEnterStm(&__stmt_27);
	BBUINT* bbt_39=((BBARRAY)((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->scales + 1;
	BBUINT* bbt_40=((BBARRAY)((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->scales + 1;
	bbt_m01=((((BBFLOAT*)BBARRAYDATAINDEX((((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid ),(((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->dims,(*(bbt_39)) * 0U + 1U))[(*(bbt_39)) * 0U + 1U]*bbt_cos_ang)+(((BBFLOAT*)BBARRAYDATAINDEX((((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid ),(((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->dims,(*(bbt_40)) * 1U + 1U))[(*(bbt_40)) * 1U + 1U]*bbt_sin_ang));
	struct BBDebugStm __stmt_28 = {0x2aba017925a91539, 347, 0};
	bbOnDebugEnterStm(&__stmt_28);
	BBUINT* bbt_41=((BBARRAY)((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->scales + 1;
	BBUINT* bbt_42=((BBARRAY)((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->scales + 1;
	bbt_m02=((((BBFLOAT*)BBARRAYDATAINDEX((((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid ),(((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->dims,(*(bbt_41)) * 0U + 2U))[(*(bbt_41)) * 0U + 2U]*bbt_cos_ang)+(((BBFLOAT*)BBARRAYDATAINDEX((((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid ),(((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->dims,(*(bbt_42)) * 1U + 2U))[(*(bbt_42)) * 1U + 2U]*bbt_sin_ang));
	struct BBDebugStm __stmt_29 = {0x2aba017925a91539, 349, 0};
	bbOnDebugEnterStm(&__stmt_29);
	BBUINT* bbt_43=((BBARRAY)((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->scales + 1;
	BBUINT* bbt_44=((BBARRAY)((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->scales + 1;
	BBUINT* bbt_45=((BBARRAY)((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->scales + 1;
	((BBFLOAT*)BBARRAYDATAINDEX((((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid ),(((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->dims,(*(bbt_45)) * 1U + 0U))[(*(bbt_45)) * 1U + 0U]=((((BBFLOAT*)BBARRAYDATAINDEX((((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid ),(((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->dims,(*(bbt_43)) * 0U + 0U))[(*(bbt_43)) * 0U + 0U]*-bbt_sin_ang)+(((BBFLOAT*)BBARRAYDATAINDEX((((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid ),(((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->dims,(*(bbt_44)) * 1U + 0U))[(*(bbt_44)) * 1U + 0U]*bbt_cos_ang));
	struct BBDebugStm __stmt_30 = {0x2aba017925a91539, 350, 0};
	bbOnDebugEnterStm(&__stmt_30);
	BBUINT* bbt_46=((BBARRAY)((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->scales + 1;
	BBUINT* bbt_47=((BBARRAY)((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->scales + 1;
	BBUINT* bbt_48=((BBARRAY)((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->scales + 1;
	((BBFLOAT*)BBARRAYDATAINDEX((((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid ),(((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->dims,(*(bbt_48)) * 1U + 1U))[(*(bbt_48)) * 1U + 1U]=((((BBFLOAT*)BBARRAYDATAINDEX((((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid ),(((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->dims,(*(bbt_46)) * 0U + 1U))[(*(bbt_46)) * 0U + 1U]*-bbt_sin_ang)+(((BBFLOAT*)BBARRAYDATAINDEX((((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid ),(((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->dims,(*(bbt_47)) * 1U + 1U))[(*(bbt_47)) * 1U + 1U]*bbt_cos_ang));
	struct BBDebugStm __stmt_31 = {0x2aba017925a91539, 351, 0};
	bbOnDebugEnterStm(&__stmt_31);
	BBUINT* bbt_49=((BBARRAY)((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->scales + 1;
	BBUINT* bbt_50=((BBARRAY)((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->scales + 1;
	BBUINT* bbt_51=((BBARRAY)((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->scales + 1;
	((BBFLOAT*)BBARRAYDATAINDEX((((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid ),(((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->dims,(*(bbt_51)) * 1U + 2U))[(*(bbt_51)) * 1U + 2U]=((((BBFLOAT*)BBARRAYDATAINDEX((((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid ),(((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->dims,(*(bbt_49)) * 0U + 2U))[(*(bbt_49)) * 0U + 2U]*-bbt_sin_ang)+(((BBFLOAT*)BBARRAYDATAINDEX((((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid ),(((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->dims,(*(bbt_50)) * 1U + 2U))[(*(bbt_50)) * 1U + 2U]*bbt_cos_ang));
	struct BBDebugStm __stmt_32 = {0x2aba017925a91539, 353, 0};
	bbOnDebugEnterStm(&__stmt_32);
	BBUINT* bbt_52=((BBARRAY)((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->scales + 1;
	((BBFLOAT*)BBARRAYDATAINDEX((((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid ),(((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->dims,(*(bbt_52)) * 0U + 0U))[(*(bbt_52)) * 0U + 0U]=bbt_m00;
	struct BBDebugStm __stmt_33 = {0x2aba017925a91539, 354, 0};
	bbOnDebugEnterStm(&__stmt_33);
	BBUINT* bbt_53=((BBARRAY)((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->scales + 1;
	((BBFLOAT*)BBARRAYDATAINDEX((((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid ),(((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->dims,(*(bbt_53)) * 0U + 1U))[(*(bbt_53)) * 0U + 1U]=bbt_m01;
	struct BBDebugStm __stmt_34 = {0x2aba017925a91539, 355, 0};
	bbOnDebugEnterStm(&__stmt_34);
	BBUINT* bbt_54=((BBARRAY)((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->scales + 1;
	((BBFLOAT*)BBARRAYDATAINDEX((((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid ),(((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->dims,(*(bbt_54)) * 0U + 2U))[(*(bbt_54)) * 0U + 2U]=bbt_m02;
	bbOnDebugLeaveScope();
	return 0;
}
BBINT _openb3d_openb3dcore_TMatrix_RotatePitch_f(struct openb3d_openb3dcore_TMatrix_obj* o,BBFLOAT bbt_ang){
	((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o));
	BBFLOAT bbt_cos_ang=0;
	BBFLOAT bbt_sin_ang=0;
	BBFLOAT bbt_m10=0;
	BBFLOAT bbt_m11=0;
	BBFLOAT bbt_m12=0;
	struct BBDebugScope_7 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"RotatePitch",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TMatrix",
				.var_address=&o
			},
			{
				BBDEBUGDECL_LOCAL,
				"ang",
				"f",
				.var_address=&bbt_ang
			},
			{
				BBDEBUGDECL_LOCAL,
				"cos_ang",
				"f",
				.var_address=&bbt_cos_ang
			},
			{
				BBDEBUGDECL_LOCAL,
				"sin_ang",
				"f",
				.var_address=&bbt_sin_ang
			},
			{
				BBDEBUGDECL_LOCAL,
				"m10",
				"f",
				.var_address=&bbt_m10
			},
			{
				BBDEBUGDECL_LOCAL,
				"m11",
				"f",
				.var_address=&bbt_m11
			},
			{
				BBDEBUGDECL_LOCAL,
				"m12",
				"f",
				.var_address=&bbt_m12
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x2aba017925a91539, 364, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbt_cos_ang=((BBFLOAT)bbCos((double)((BBDOUBLE)bbt_ang)));
	struct BBDebugStm __stmt_1 = {0x2aba017925a91539, 365, 0};
	bbOnDebugEnterStm(&__stmt_1);
	bbt_sin_ang=((BBFLOAT)bbSin((double)((BBDOUBLE)bbt_ang)));
	struct BBDebugStm __stmt_2 = {0x2aba017925a91539, 367, 0};
	bbOnDebugEnterStm(&__stmt_2);
	BBUINT* bbt_=((BBARRAY)((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->scales + 1;
	BBUINT* bbt_2=((BBARRAY)((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->scales + 1;
	bbt_m10=((((BBFLOAT*)BBARRAYDATAINDEX((((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid ),(((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->dims,(*(bbt_)) * 1U + 0U))[(*(bbt_)) * 1U + 0U]*bbt_cos_ang)+(((BBFLOAT*)BBARRAYDATAINDEX((((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid ),(((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->dims,(*(bbt_2)) * 2U + 0U))[(*(bbt_2)) * 2U + 0U]*bbt_sin_ang));
	struct BBDebugStm __stmt_3 = {0x2aba017925a91539, 368, 0};
	bbOnDebugEnterStm(&__stmt_3);
	BBUINT* bbt_3=((BBARRAY)((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->scales + 1;
	BBUINT* bbt_4=((BBARRAY)((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->scales + 1;
	bbt_m11=((((BBFLOAT*)BBARRAYDATAINDEX((((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid ),(((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->dims,(*(bbt_3)) * 1U + 1U))[(*(bbt_3)) * 1U + 1U]*bbt_cos_ang)+(((BBFLOAT*)BBARRAYDATAINDEX((((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid ),(((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->dims,(*(bbt_4)) * 2U + 1U))[(*(bbt_4)) * 2U + 1U]*bbt_sin_ang));
	struct BBDebugStm __stmt_4 = {0x2aba017925a91539, 369, 0};
	bbOnDebugEnterStm(&__stmt_4);
	BBUINT* bbt_5=((BBARRAY)((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->scales + 1;
	BBUINT* bbt_6=((BBARRAY)((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->scales + 1;
	bbt_m12=((((BBFLOAT*)BBARRAYDATAINDEX((((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid ),(((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->dims,(*(bbt_5)) * 1U + 2U))[(*(bbt_5)) * 1U + 2U]*bbt_cos_ang)+(((BBFLOAT*)BBARRAYDATAINDEX((((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid ),(((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->dims,(*(bbt_6)) * 2U + 2U))[(*(bbt_6)) * 2U + 2U]*bbt_sin_ang));
	struct BBDebugStm __stmt_5 = {0x2aba017925a91539, 371, 0};
	bbOnDebugEnterStm(&__stmt_5);
	BBUINT* bbt_7=((BBARRAY)((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->scales + 1;
	BBUINT* bbt_8=((BBARRAY)((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->scales + 1;
	BBUINT* bbt_9=((BBARRAY)((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->scales + 1;
	((BBFLOAT*)BBARRAYDATAINDEX((((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid ),(((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->dims,(*(bbt_9)) * 2U + 0U))[(*(bbt_9)) * 2U + 0U]=((((BBFLOAT*)BBARRAYDATAINDEX((((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid ),(((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->dims,(*(bbt_7)) * 1U + 0U))[(*(bbt_7)) * 1U + 0U]*-bbt_sin_ang)+(((BBFLOAT*)BBARRAYDATAINDEX((((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid ),(((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->dims,(*(bbt_8)) * 2U + 0U))[(*(bbt_8)) * 2U + 0U]*bbt_cos_ang));
	struct BBDebugStm __stmt_6 = {0x2aba017925a91539, 372, 0};
	bbOnDebugEnterStm(&__stmt_6);
	BBUINT* bbt_10=((BBARRAY)((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->scales + 1;
	BBUINT* bbt_11=((BBARRAY)((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->scales + 1;
	BBUINT* bbt_12=((BBARRAY)((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->scales + 1;
	((BBFLOAT*)BBARRAYDATAINDEX((((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid ),(((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->dims,(*(bbt_12)) * 2U + 1U))[(*(bbt_12)) * 2U + 1U]=((((BBFLOAT*)BBARRAYDATAINDEX((((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid ),(((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->dims,(*(bbt_10)) * 1U + 1U))[(*(bbt_10)) * 1U + 1U]*-bbt_sin_ang)+(((BBFLOAT*)BBARRAYDATAINDEX((((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid ),(((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->dims,(*(bbt_11)) * 2U + 1U))[(*(bbt_11)) * 2U + 1U]*bbt_cos_ang));
	struct BBDebugStm __stmt_7 = {0x2aba017925a91539, 373, 0};
	bbOnDebugEnterStm(&__stmt_7);
	BBUINT* bbt_13=((BBARRAY)((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->scales + 1;
	BBUINT* bbt_14=((BBARRAY)((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->scales + 1;
	BBUINT* bbt_15=((BBARRAY)((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->scales + 1;
	((BBFLOAT*)BBARRAYDATAINDEX((((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid ),(((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->dims,(*(bbt_15)) * 2U + 2U))[(*(bbt_15)) * 2U + 2U]=((((BBFLOAT*)BBARRAYDATAINDEX((((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid ),(((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->dims,(*(bbt_13)) * 1U + 2U))[(*(bbt_13)) * 1U + 2U]*-bbt_sin_ang)+(((BBFLOAT*)BBARRAYDATAINDEX((((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid ),(((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->dims,(*(bbt_14)) * 2U + 2U))[(*(bbt_14)) * 2U + 2U]*bbt_cos_ang));
	struct BBDebugStm __stmt_8 = {0x2aba017925a91539, 375, 0};
	bbOnDebugEnterStm(&__stmt_8);
	BBUINT* bbt_16=((BBARRAY)((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->scales + 1;
	((BBFLOAT*)BBARRAYDATAINDEX((((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid ),(((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->dims,(*(bbt_16)) * 1U + 0U))[(*(bbt_16)) * 1U + 0U]=bbt_m10;
	struct BBDebugStm __stmt_9 = {0x2aba017925a91539, 376, 0};
	bbOnDebugEnterStm(&__stmt_9);
	BBUINT* bbt_17=((BBARRAY)((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->scales + 1;
	((BBFLOAT*)BBARRAYDATAINDEX((((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid ),(((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->dims,(*(bbt_17)) * 1U + 1U))[(*(bbt_17)) * 1U + 1U]=bbt_m11;
	struct BBDebugStm __stmt_10 = {0x2aba017925a91539, 377, 0};
	bbOnDebugEnterStm(&__stmt_10);
	BBUINT* bbt_18=((BBARRAY)((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->scales + 1;
	((BBFLOAT*)BBARRAYDATAINDEX((((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid ),(((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->dims,(*(bbt_18)) * 1U + 2U))[(*(bbt_18)) * 1U + 2U]=bbt_m12;
	bbOnDebugLeaveScope();
	return 0;
}
BBINT _openb3d_openb3dcore_TMatrix_RotateYaw_f(struct openb3d_openb3dcore_TMatrix_obj* o,BBFLOAT bbt_ang){
	((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o));
	BBFLOAT bbt_cos_ang=0;
	BBFLOAT bbt_sin_ang=0;
	BBFLOAT bbt_m00=0;
	BBFLOAT bbt_m01=0;
	BBFLOAT bbt_m02=0;
	struct BBDebugScope_7 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"RotateYaw",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TMatrix",
				.var_address=&o
			},
			{
				BBDEBUGDECL_LOCAL,
				"ang",
				"f",
				.var_address=&bbt_ang
			},
			{
				BBDEBUGDECL_LOCAL,
				"cos_ang",
				"f",
				.var_address=&bbt_cos_ang
			},
			{
				BBDEBUGDECL_LOCAL,
				"sin_ang",
				"f",
				.var_address=&bbt_sin_ang
			},
			{
				BBDEBUGDECL_LOCAL,
				"m00",
				"f",
				.var_address=&bbt_m00
			},
			{
				BBDEBUGDECL_LOCAL,
				"m01",
				"f",
				.var_address=&bbt_m01
			},
			{
				BBDEBUGDECL_LOCAL,
				"m02",
				"f",
				.var_address=&bbt_m02
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x2aba017925a91539, 386, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbt_cos_ang=((BBFLOAT)bbCos((double)((BBDOUBLE)bbt_ang)));
	struct BBDebugStm __stmt_1 = {0x2aba017925a91539, 387, 0};
	bbOnDebugEnterStm(&__stmt_1);
	bbt_sin_ang=((BBFLOAT)bbSin((double)((BBDOUBLE)bbt_ang)));
	struct BBDebugStm __stmt_2 = {0x2aba017925a91539, 389, 0};
	bbOnDebugEnterStm(&__stmt_2);
	BBUINT* bbt_=((BBARRAY)((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->scales + 1;
	BBUINT* bbt_2=((BBARRAY)((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->scales + 1;
	bbt_m00=((((BBFLOAT*)BBARRAYDATAINDEX((((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid ),(((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->dims,(*(bbt_)) * 0U + 0U))[(*(bbt_)) * 0U + 0U]*bbt_cos_ang)+(((BBFLOAT*)BBARRAYDATAINDEX((((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid ),(((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->dims,(*(bbt_2)) * 2U + 0U))[(*(bbt_2)) * 2U + 0U]*-bbt_sin_ang));
	struct BBDebugStm __stmt_3 = {0x2aba017925a91539, 390, 0};
	bbOnDebugEnterStm(&__stmt_3);
	BBUINT* bbt_3=((BBARRAY)((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->scales + 1;
	BBUINT* bbt_4=((BBARRAY)((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->scales + 1;
	bbt_m01=((((BBFLOAT*)BBARRAYDATAINDEX((((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid ),(((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->dims,(*(bbt_3)) * 0U + 1U))[(*(bbt_3)) * 0U + 1U]*bbt_cos_ang)+(((BBFLOAT*)BBARRAYDATAINDEX((((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid ),(((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->dims,(*(bbt_4)) * 2U + 1U))[(*(bbt_4)) * 2U + 1U]*-bbt_sin_ang));
	struct BBDebugStm __stmt_4 = {0x2aba017925a91539, 391, 0};
	bbOnDebugEnterStm(&__stmt_4);
	BBUINT* bbt_5=((BBARRAY)((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->scales + 1;
	BBUINT* bbt_6=((BBARRAY)((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->scales + 1;
	bbt_m02=((((BBFLOAT*)BBARRAYDATAINDEX((((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid ),(((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->dims,(*(bbt_5)) * 0U + 2U))[(*(bbt_5)) * 0U + 2U]*bbt_cos_ang)+(((BBFLOAT*)BBARRAYDATAINDEX((((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid ),(((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->dims,(*(bbt_6)) * 2U + 2U))[(*(bbt_6)) * 2U + 2U]*-bbt_sin_ang));
	struct BBDebugStm __stmt_5 = {0x2aba017925a91539, 393, 0};
	bbOnDebugEnterStm(&__stmt_5);
	BBUINT* bbt_7=((BBARRAY)((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->scales + 1;
	BBUINT* bbt_8=((BBARRAY)((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->scales + 1;
	BBUINT* bbt_9=((BBARRAY)((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->scales + 1;
	((BBFLOAT*)BBARRAYDATAINDEX((((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid ),(((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->dims,(*(bbt_9)) * 2U + 0U))[(*(bbt_9)) * 2U + 0U]=((((BBFLOAT*)BBARRAYDATAINDEX((((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid ),(((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->dims,(*(bbt_7)) * 0U + 0U))[(*(bbt_7)) * 0U + 0U]*bbt_sin_ang)+(((BBFLOAT*)BBARRAYDATAINDEX((((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid ),(((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->dims,(*(bbt_8)) * 2U + 0U))[(*(bbt_8)) * 2U + 0U]*bbt_cos_ang));
	struct BBDebugStm __stmt_6 = {0x2aba017925a91539, 394, 0};
	bbOnDebugEnterStm(&__stmt_6);
	BBUINT* bbt_10=((BBARRAY)((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->scales + 1;
	BBUINT* bbt_11=((BBARRAY)((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->scales + 1;
	BBUINT* bbt_12=((BBARRAY)((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->scales + 1;
	((BBFLOAT*)BBARRAYDATAINDEX((((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid ),(((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->dims,(*(bbt_12)) * 2U + 1U))[(*(bbt_12)) * 2U + 1U]=((((BBFLOAT*)BBARRAYDATAINDEX((((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid ),(((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->dims,(*(bbt_10)) * 0U + 1U))[(*(bbt_10)) * 0U + 1U]*bbt_sin_ang)+(((BBFLOAT*)BBARRAYDATAINDEX((((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid ),(((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->dims,(*(bbt_11)) * 2U + 1U))[(*(bbt_11)) * 2U + 1U]*bbt_cos_ang));
	struct BBDebugStm __stmt_7 = {0x2aba017925a91539, 395, 0};
	bbOnDebugEnterStm(&__stmt_7);
	BBUINT* bbt_13=((BBARRAY)((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->scales + 1;
	BBUINT* bbt_14=((BBARRAY)((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->scales + 1;
	BBUINT* bbt_15=((BBARRAY)((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->scales + 1;
	((BBFLOAT*)BBARRAYDATAINDEX((((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid ),(((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->dims,(*(bbt_15)) * 2U + 2U))[(*(bbt_15)) * 2U + 2U]=((((BBFLOAT*)BBARRAYDATAINDEX((((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid ),(((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->dims,(*(bbt_13)) * 0U + 2U))[(*(bbt_13)) * 0U + 2U]*bbt_sin_ang)+(((BBFLOAT*)BBARRAYDATAINDEX((((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid ),(((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->dims,(*(bbt_14)) * 2U + 2U))[(*(bbt_14)) * 2U + 2U]*bbt_cos_ang));
	struct BBDebugStm __stmt_8 = {0x2aba017925a91539, 397, 0};
	bbOnDebugEnterStm(&__stmt_8);
	BBUINT* bbt_16=((BBARRAY)((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->scales + 1;
	((BBFLOAT*)BBARRAYDATAINDEX((((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid ),(((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->dims,(*(bbt_16)) * 0U + 0U))[(*(bbt_16)) * 0U + 0U]=bbt_m00;
	struct BBDebugStm __stmt_9 = {0x2aba017925a91539, 398, 0};
	bbOnDebugEnterStm(&__stmt_9);
	BBUINT* bbt_17=((BBARRAY)((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->scales + 1;
	((BBFLOAT*)BBARRAYDATAINDEX((((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid ),(((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->dims,(*(bbt_17)) * 0U + 1U))[(*(bbt_17)) * 0U + 1U]=bbt_m01;
	struct BBDebugStm __stmt_10 = {0x2aba017925a91539, 399, 0};
	bbOnDebugEnterStm(&__stmt_10);
	BBUINT* bbt_18=((BBARRAY)((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->scales + 1;
	((BBFLOAT*)BBARRAYDATAINDEX((((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid ),(((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->dims,(*(bbt_18)) * 0U + 2U))[(*(bbt_18)) * 0U + 2U]=bbt_m02;
	bbOnDebugLeaveScope();
	return 0;
}
BBINT _openb3d_openb3dcore_TMatrix_RotateRoll_f(struct openb3d_openb3dcore_TMatrix_obj* o,BBFLOAT bbt_ang){
	((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o));
	BBFLOAT bbt_cos_ang=0;
	BBFLOAT bbt_sin_ang=0;
	BBFLOAT bbt_m00=0;
	BBFLOAT bbt_m01=0;
	BBFLOAT bbt_m02=0;
	struct BBDebugScope_7 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"RotateRoll",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TMatrix",
				.var_address=&o
			},
			{
				BBDEBUGDECL_LOCAL,
				"ang",
				"f",
				.var_address=&bbt_ang
			},
			{
				BBDEBUGDECL_LOCAL,
				"cos_ang",
				"f",
				.var_address=&bbt_cos_ang
			},
			{
				BBDEBUGDECL_LOCAL,
				"sin_ang",
				"f",
				.var_address=&bbt_sin_ang
			},
			{
				BBDEBUGDECL_LOCAL,
				"m00",
				"f",
				.var_address=&bbt_m00
			},
			{
				BBDEBUGDECL_LOCAL,
				"m01",
				"f",
				.var_address=&bbt_m01
			},
			{
				BBDEBUGDECL_LOCAL,
				"m02",
				"f",
				.var_address=&bbt_m02
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x2aba017925a91539, 408, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbt_cos_ang=((BBFLOAT)bbCos((double)((BBDOUBLE)bbt_ang)));
	struct BBDebugStm __stmt_1 = {0x2aba017925a91539, 409, 0};
	bbOnDebugEnterStm(&__stmt_1);
	bbt_sin_ang=((BBFLOAT)bbSin((double)((BBDOUBLE)bbt_ang)));
	struct BBDebugStm __stmt_2 = {0x2aba017925a91539, 411, 0};
	bbOnDebugEnterStm(&__stmt_2);
	BBUINT* bbt_=((BBARRAY)((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->scales + 1;
	BBUINT* bbt_2=((BBARRAY)((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->scales + 1;
	bbt_m00=((((BBFLOAT*)BBARRAYDATAINDEX((((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid ),(((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->dims,(*(bbt_)) * 0U + 0U))[(*(bbt_)) * 0U + 0U]*bbt_cos_ang)+(((BBFLOAT*)BBARRAYDATAINDEX((((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid ),(((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->dims,(*(bbt_2)) * 1U + 0U))[(*(bbt_2)) * 1U + 0U]*bbt_sin_ang));
	struct BBDebugStm __stmt_3 = {0x2aba017925a91539, 412, 0};
	bbOnDebugEnterStm(&__stmt_3);
	BBUINT* bbt_3=((BBARRAY)((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->scales + 1;
	BBUINT* bbt_4=((BBARRAY)((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->scales + 1;
	bbt_m01=((((BBFLOAT*)BBARRAYDATAINDEX((((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid ),(((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->dims,(*(bbt_3)) * 0U + 1U))[(*(bbt_3)) * 0U + 1U]*bbt_cos_ang)+(((BBFLOAT*)BBARRAYDATAINDEX((((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid ),(((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->dims,(*(bbt_4)) * 1U + 1U))[(*(bbt_4)) * 1U + 1U]*bbt_sin_ang));
	struct BBDebugStm __stmt_4 = {0x2aba017925a91539, 413, 0};
	bbOnDebugEnterStm(&__stmt_4);
	BBUINT* bbt_5=((BBARRAY)((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->scales + 1;
	BBUINT* bbt_6=((BBARRAY)((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->scales + 1;
	bbt_m02=((((BBFLOAT*)BBARRAYDATAINDEX((((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid ),(((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->dims,(*(bbt_5)) * 0U + 2U))[(*(bbt_5)) * 0U + 2U]*bbt_cos_ang)+(((BBFLOAT*)BBARRAYDATAINDEX((((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid ),(((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->dims,(*(bbt_6)) * 1U + 2U))[(*(bbt_6)) * 1U + 2U]*bbt_sin_ang));
	struct BBDebugStm __stmt_5 = {0x2aba017925a91539, 415, 0};
	bbOnDebugEnterStm(&__stmt_5);
	BBUINT* bbt_7=((BBARRAY)((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->scales + 1;
	BBUINT* bbt_8=((BBARRAY)((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->scales + 1;
	BBUINT* bbt_9=((BBARRAY)((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->scales + 1;
	((BBFLOAT*)BBARRAYDATAINDEX((((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid ),(((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->dims,(*(bbt_9)) * 1U + 0U))[(*(bbt_9)) * 1U + 0U]=((((BBFLOAT*)BBARRAYDATAINDEX((((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid ),(((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->dims,(*(bbt_7)) * 0U + 0U))[(*(bbt_7)) * 0U + 0U]*-bbt_sin_ang)+(((BBFLOAT*)BBARRAYDATAINDEX((((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid ),(((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->dims,(*(bbt_8)) * 1U + 0U))[(*(bbt_8)) * 1U + 0U]*bbt_cos_ang));
	struct BBDebugStm __stmt_6 = {0x2aba017925a91539, 416, 0};
	bbOnDebugEnterStm(&__stmt_6);
	BBUINT* bbt_10=((BBARRAY)((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->scales + 1;
	BBUINT* bbt_11=((BBARRAY)((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->scales + 1;
	BBUINT* bbt_12=((BBARRAY)((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->scales + 1;
	((BBFLOAT*)BBARRAYDATAINDEX((((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid ),(((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->dims,(*(bbt_12)) * 1U + 1U))[(*(bbt_12)) * 1U + 1U]=((((BBFLOAT*)BBARRAYDATAINDEX((((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid ),(((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->dims,(*(bbt_10)) * 0U + 1U))[(*(bbt_10)) * 0U + 1U]*-bbt_sin_ang)+(((BBFLOAT*)BBARRAYDATAINDEX((((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid ),(((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->dims,(*(bbt_11)) * 1U + 1U))[(*(bbt_11)) * 1U + 1U]*bbt_cos_ang));
	struct BBDebugStm __stmt_7 = {0x2aba017925a91539, 417, 0};
	bbOnDebugEnterStm(&__stmt_7);
	BBUINT* bbt_13=((BBARRAY)((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->scales + 1;
	BBUINT* bbt_14=((BBARRAY)((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->scales + 1;
	BBUINT* bbt_15=((BBARRAY)((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->scales + 1;
	((BBFLOAT*)BBARRAYDATAINDEX((((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid ),(((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->dims,(*(bbt_15)) * 1U + 2U))[(*(bbt_15)) * 1U + 2U]=((((BBFLOAT*)BBARRAYDATAINDEX((((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid ),(((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->dims,(*(bbt_13)) * 0U + 2U))[(*(bbt_13)) * 0U + 2U]*-bbt_sin_ang)+(((BBFLOAT*)BBARRAYDATAINDEX((((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid ),(((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->dims,(*(bbt_14)) * 1U + 2U))[(*(bbt_14)) * 1U + 2U]*bbt_cos_ang));
	struct BBDebugStm __stmt_8 = {0x2aba017925a91539, 419, 0};
	bbOnDebugEnterStm(&__stmt_8);
	BBUINT* bbt_16=((BBARRAY)((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->scales + 1;
	((BBFLOAT*)BBARRAYDATAINDEX((((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid ),(((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->dims,(*(bbt_16)) * 0U + 0U))[(*(bbt_16)) * 0U + 0U]=bbt_m00;
	struct BBDebugStm __stmt_9 = {0x2aba017925a91539, 420, 0};
	bbOnDebugEnterStm(&__stmt_9);
	BBUINT* bbt_17=((BBARRAY)((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->scales + 1;
	((BBFLOAT*)BBARRAYDATAINDEX((((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid ),(((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->dims,(*(bbt_17)) * 0U + 1U))[(*(bbt_17)) * 0U + 1U]=bbt_m01;
	struct BBDebugStm __stmt_10 = {0x2aba017925a91539, 421, 0};
	bbOnDebugEnterStm(&__stmt_10);
	BBUINT* bbt_18=((BBARRAY)((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->scales + 1;
	((BBFLOAT*)BBARRAYDATAINDEX((((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid ),(((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatrix_grid )->dims,(*(bbt_18)) * 0U + 2U))[(*(bbt_18)) * 0U + 2U]=bbt_m02;
	bbOnDebugLeaveScope();
	return 0;
}
struct BBDebugScope_16 openb3d_openb3dcore_TMatrix_scope ={
	BBDEBUGSCOPE_USERTYPE,
	"TMatrix",
	{
		{
			BBDEBUGDECL_FIELD,
			"grid",
			"[,]f",
			.field_offset=offsetof(struct openb3d_openb3dcore_TMatrix_obj,_openb3d_openb3dcore_tmatrix_grid)
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"New",
			"()i",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_TMatrix_New
		},
		{
			BBDEBUGDECL_TYPEFUNCTION,
			"CopyMatPtr",
			"(:TMatPtr):TMatrix",
			.func_ptr=(BBFuncPtr)&openb3d_openb3dcore_TMatrix_CopyMatPtr_TTMatrix_TTMatPtr
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"GetMatPtr",
			"(:TMatPtr):TMatrix",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_TMatrix_GetMatPtr_TTMatPtr
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"SetIdentity",
			"(f,f,f,f,f,f,f,f,f)i",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_TMatrix_SetIdentity_fffffffff
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"LoadIdentity",
			"()i",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_TMatrix_LoadIdentity
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"Copy",
			"():TMatrix",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_TMatrix_Copy
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"Overwrite",
			"(:TMatrix)i",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_TMatrix_Overwrite_TTMatrix
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"Inverse",
			"():TMatrix",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_TMatrix_Inverse
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"Multiply",
			"(:TMatrix)i",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_TMatrix_Multiply_TTMatrix
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"Translate",
			"(f,f,f)i",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_TMatrix_Translate_fff
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"Scale",
			"(f,f,f)i",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_TMatrix_Scale_fff
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"Rotate",
			"(f,f,f)i",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_TMatrix_Rotate_fff
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"RotatePitch",
			"(f)i",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_TMatrix_RotatePitch_f
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"RotateYaw",
			"(f)i",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_TMatrix_RotateYaw_f
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"RotateRoll",
			"(f)i",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_TMatrix_RotateRoll_f
		},
		{
			BBDEBUGDECL_END
		}
	}
};
struct BBClass_openb3d_openb3dcore_TMatrix openb3d_openb3dcore_TMatrix={
	&bbObjectClass,
	bbObjectFree,
	(BBDebugScope*)&openb3d_openb3dcore_TMatrix_scope,
	sizeof(struct openb3d_openb3dcore_TMatrix_obj),
	(void (*)(BBOBJECT))_openb3d_openb3dcore_TMatrix_New,
	(void (*)(BBOBJECT))_openb3d_openb3dcore_TMatrix_Delete,
	bbObjectToString,
	bbObjectCompare,
	bbObjectSendMessage,
	0,
	0,
	sizeof(BBARRAY)
	,0
	,offsetof(struct openb3d_openb3dcore_TMatrix_obj,_openb3d_openb3dcore_tmatrix_grid)
	,openb3d_openb3dcore_TMatrix_CopyMatPtr_TTMatrix_TTMatPtr
	,_openb3d_openb3dcore_TMatrix_GetMatPtr_TTMatPtr
	,_openb3d_openb3dcore_TMatrix_SetIdentity_fffffffff
	,_openb3d_openb3dcore_TMatrix_LoadIdentity
	,_openb3d_openb3dcore_TMatrix_Copy
	,_openb3d_openb3dcore_TMatrix_Overwrite_TTMatrix
	,_openb3d_openb3dcore_TMatrix_Inverse
	,_openb3d_openb3dcore_TMatrix_Multiply_TTMatrix
	,_openb3d_openb3dcore_TMatrix_Translate_fff
	,_openb3d_openb3dcore_TMatrix_Scale_fff
	,_openb3d_openb3dcore_TMatrix_Rotate_fff
	,_openb3d_openb3dcore_TMatrix_RotatePitch_f
	,_openb3d_openb3dcore_TMatrix_RotateYaw_f
	,_openb3d_openb3dcore_TMatrix_RotateRoll_f
};

void _openb3d_openb3dcore_TMatPtr_New(struct openb3d_openb3dcore_TMatPtr_obj* o) {
	bbObjectCtor((BBOBJECT)o);
	o->clas = &openb3d_openb3dcore_TMatPtr;
	((struct openb3d_openb3dcore_TMatPtr_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatptr_grid = 0;
	((struct openb3d_openb3dcore_TMatPtr_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatptr_instance = 0;
	struct BBDebugScope __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"New",
		{
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x2aba017925a91539, 565, 0};
	bbOnDebugEnterStm(&__stmt_0);
	if(openb3d_openb3dcore_TGlobal3D_Log_New!=0){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x2aba017925a91539, 566, 0};
		bbOnDebugEnterStm(&__stmt_0);
		brl_blitz_DebugLog((BBString*)&_s659);
		bbOnDebugLeaveScope();
	}
	bbOnDebugLeaveScope();
}
void _openb3d_openb3dcore_TMatPtr_Delete(struct openb3d_openb3dcore_TMatPtr_obj* o) {
	struct BBDebugScope_1 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"Delete",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TMatPtr",
				.var_address=&o
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x2aba017925a91539, 573, 0};
	bbOnDebugEnterStm(&__stmt_0);
	if(openb3d_openb3dcore_TGlobal3D_Log_Del!=0){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x2aba017925a91539, 574, 0};
		bbOnDebugEnterStm(&__stmt_0);
		brl_blitz_DebugLog((BBString*)&_s660);
		bbOnDebugLeaveScope();
	}
	bbOnDebugLeaveScope();
	bbObjectDtor((BBOBJECT)o);
}
struct openb3d_openb3dcore_TMatPtr_obj* openb3d_openb3dcore_TMatPtr_CreateObject_TTMatPtr_pb(BBBYTE* bbt_inst){
	struct openb3d_openb3dcore_TMatPtr_obj* bbt_obj=(struct openb3d_openb3dcore_TMatPtr_obj*)((struct openb3d_openb3dcore_TMatPtr_obj*)&bbNullObject);
	struct BBDebugScope_2 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"CreateObject",
		{
			{
				BBDEBUGDECL_LOCAL,
				"inst",
				"*b",
				.var_address=&bbt_inst
			},
			{
				BBDEBUGDECL_LOCAL,
				"obj",
				":TMatPtr",
				.var_address=&bbt_obj
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x2aba017925a91539, 444, 0};
	bbOnDebugEnterStm(&__stmt_0);
	if(bbt_inst==0){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x2aba017925a91539, 444, 0};
		bbOnDebugEnterStm(&__stmt_0);
		bbOnDebugLeaveScope();
		bbOnDebugLeaveScope();
		return (struct openb3d_openb3dcore_TMatPtr_obj*)&bbNullObject;
	}
	struct BBDebugStm __stmt_1 = {0x2aba017925a91539, 445, 0};
	bbOnDebugEnterStm(&__stmt_1);
	bbt_obj=(struct openb3d_openb3dcore_TMatPtr_obj*)(struct openb3d_openb3dcore_TMatPtr_obj*)bbObjectAtomicNew((BBClass *)&openb3d_openb3dcore_TMatPtr);
	struct BBDebugStm __stmt_2 = {0x2aba017925a91539, 447, 0};
	bbOnDebugEnterStm(&__stmt_2);
	((struct brl_map_ptrmap_TPtrMap_obj*)bbNullObjectTest((BBObject*)openb3d_openb3dcore_TMatPtr_matptr_map))->clas->m_Insert_pbTObject((struct brl_map_ptrmap_TPtrMap_obj*)openb3d_openb3dcore_TMatPtr_matptr_map,bbt_inst,(BBOBJECT)bbt_obj);
	struct BBDebugStm __stmt_3 = {0x2aba017925a91539, 451, 0};
	bbOnDebugEnterStm(&__stmt_3);
	((struct openb3d_openb3dcore_TMatPtr_obj*)bbNullObjectTest((BBObject*)bbt_obj))->_openb3d_openb3dcore_tmatptr_instance =bbt_inst;
	struct BBDebugStm __stmt_4 = {0x2aba017925a91539, 452, 0};
	bbOnDebugEnterStm(&__stmt_4);
	((struct openb3d_openb3dcore_TMatPtr_obj*)bbNullObjectTest((BBObject*)bbt_obj))->clas->m_InitFields((struct openb3d_openb3dcore_TMatPtr_obj*)bbt_obj);
	struct BBDebugStm __stmt_5 = {0x2aba017925a91539, 453, 0};
	bbOnDebugEnterStm(&__stmt_5);
	bbOnDebugLeaveScope();
	return (struct openb3d_openb3dcore_TMatPtr_obj*)bbt_obj;
}
BBINT openb3d_openb3dcore_TMatPtr_FreeObject_i_pb(BBBYTE* bbt_inst){
	struct BBDebugScope_1 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"FreeObject",
		{
			{
				BBDEBUGDECL_LOCAL,
				"inst",
				"*b",
				.var_address=&bbt_inst
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x2aba017925a91539, 460, 0};
	bbOnDebugEnterStm(&__stmt_0);
	((struct brl_map_ptrmap_TPtrMap_obj*)bbNullObjectTest((BBObject*)openb3d_openb3dcore_TMatPtr_matptr_map))->clas->m_Remove_pb((struct brl_map_ptrmap_TPtrMap_obj*)openb3d_openb3dcore_TMatPtr_matptr_map,bbt_inst);
	bbOnDebugLeaveScope();
	return 0;
}
struct openb3d_openb3dcore_TMatPtr_obj* openb3d_openb3dcore_TMatPtr_GetObject_TTMatPtr_pb(BBBYTE* bbt_inst){
	struct BBDebugScope_1 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"GetObject",
		{
			{
				BBDEBUGDECL_LOCAL,
				"inst",
				"*b",
				.var_address=&bbt_inst
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x2aba017925a91539, 470, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbOnDebugLeaveScope();
	return (struct openb3d_openb3dcore_TMatPtr_obj*)((struct openb3d_openb3dcore_TMatPtr_obj*)bbObjectDowncast((BBOBJECT)((struct brl_map_ptrmap_TPtrMap_obj*)bbNullObjectTest((BBObject*)openb3d_openb3dcore_TMatPtr_matptr_map))->clas->m_ValueForKey_pb((struct brl_map_ptrmap_TPtrMap_obj*)openb3d_openb3dcore_TMatPtr_matptr_map,bbt_inst),(BBClass*)&openb3d_openb3dcore_TMatPtr));
}
BBBYTE* openb3d_openb3dcore_TMatPtr_GetInstance_pb_TTMatPtr(struct openb3d_openb3dcore_TMatPtr_obj* bbt_obj){
	struct BBDebugScope_1 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"GetInstance",
		{
			{
				BBDEBUGDECL_LOCAL,
				"obj",
				":TMatPtr",
				.var_address=&bbt_obj
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x2aba017925a91539, 479, 0};
	bbOnDebugEnterStm(&__stmt_0);
	if(((BBOBJECT)bbt_obj)==&bbNullObject){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x2aba017925a91539, 479, 0};
		bbOnDebugEnterStm(&__stmt_0);
		bbOnDebugLeaveScope();
		bbOnDebugLeaveScope();
		return 0;
	}
	struct BBDebugStm __stmt_1 = {0x2aba017925a91539, 480, 0};
	bbOnDebugEnterStm(&__stmt_1);
	bbOnDebugLeaveScope();
	return ((struct openb3d_openb3dcore_TMatPtr_obj*)bbNullObjectTest((BBObject*)bbt_obj))->_openb3d_openb3dcore_tmatptr_instance ;
}
BBINT _openb3d_openb3dcore_TMatPtr_InitFields(struct openb3d_openb3dcore_TMatPtr_obj* o){
	((struct openb3d_openb3dcore_TMatPtr_obj*)bbNullObjectTest((BBObject*)o));
	struct BBDebugScope_1 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"InitFields",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TMatPtr",
				.var_address=&o
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x2aba017925a91539, 487, 0};
	bbOnDebugEnterStm(&__stmt_0);
	((struct openb3d_openb3dcore_TMatPtr_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatptr_grid =MatPtrFloat_(o->clas->f_GetInstance_pb_TTMatPtr((struct openb3d_openb3dcore_TMatPtr_obj*)o),1);
	bbOnDebugLeaveScope();
	return 0;
}
BBINT _openb3d_openb3dcore_TMatPtr_DebugFields_ii(struct openb3d_openb3dcore_TMatPtr_obj* o,BBINT bbt_debug_subobjects,BBINT bbt_debug_base_types){
	((struct openb3d_openb3dcore_TMatPtr_obj*)bbNullObjectTest((BBObject*)o));
	BBSTRING bbt_pad=(&bbEmptyString);
	BBINT bbt_loop=0;
	struct BBDebugScope_5 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"DebugFields",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TMatPtr",
				.var_address=&o
			},
			{
				BBDEBUGDECL_LOCAL,
				"debug_subobjects",
				"i",
				.var_address=&bbt_debug_subobjects
			},
			{
				BBDEBUGDECL_LOCAL,
				"debug_base_types",
				"i",
				.var_address=&bbt_debug_base_types
			},
			{
				BBDEBUGDECL_LOCAL,
				"pad",
				"$",
				.var_address=&bbt_pad
			},
			{
				BBDEBUGDECL_LOCAL,
				"loop",
				"i",
				.var_address=&bbt_loop
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x2aba017925a91539, 493, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbt_pad=((BBString*)&bbEmptyString);
	struct BBDebugStm __stmt_1 = {0x2aba017925a91539, 494, 0};
	bbOnDebugEnterStm(&__stmt_1);
	bbt_loop=bbt_debug_subobjects;
	struct BBDebugStm __stmt_2 = {0x2aba017925a91539, 495, 0};
	bbOnDebugEnterStm(&__stmt_2);
	if(bbt_debug_base_types>bbt_debug_subobjects){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x2aba017925a91539, 495, 0};
		bbOnDebugEnterStm(&__stmt_0);
		bbt_loop=bbt_debug_base_types;
		bbOnDebugLeaveScope();
	}
	struct BBDebugStm __stmt_3 = {0x2aba017925a91539, 496, 0};
	bbOnDebugEnterStm(&__stmt_3);
	{
		BBINT bbt_i=1;
		BBINT bbt_=bbt_loop;
		for(;(bbt_i<bbt_);bbt_i=(bbt_i+1)){
			struct BBDebugScope_1 __scope = {
				BBDEBUGSCOPE_LOCALBLOCK,
				0,
				{
					{
						BBDEBUGDECL_LOCAL,
						"i",
						"i",
						.var_address=&bbt_i
					},
					{
						BBDEBUGDECL_END
					}
				}
			};
			bbOnDebugEnterScope((BBDebugScope *)&__scope);
			struct BBDebugStm __stmt_0 = {0x2aba017925a91539, 497, 0};
			bbOnDebugEnterStm(&__stmt_0);
			bbt_pad=bbStringConcat(bbt_pad,((BBString*)&_s0));
			bbOnDebugLeaveScope();
		}
	}
	struct BBDebugStm __stmt_4 = {0x2aba017925a91539, 499, 0};
	bbOnDebugEnterStm(&__stmt_4);
	if(bbt_debug_subobjects!=0){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x2aba017925a91539, 499, 0};
		bbOnDebugEnterStm(&__stmt_0);
		bbt_debug_subobjects+=1;
		bbOnDebugLeaveScope();
	}
	struct BBDebugStm __stmt_5 = {0x2aba017925a91539, 500, 0};
	bbOnDebugEnterStm(&__stmt_5);
	if(bbt_debug_base_types!=0){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x2aba017925a91539, 500, 0};
		bbOnDebugEnterStm(&__stmt_0);
		bbt_debug_base_types+=1;
		bbOnDebugLeaveScope();
	}
	struct BBDebugStm __stmt_6 = {0x2aba017925a91539, 501, 0};
	bbOnDebugEnterStm(&__stmt_6);
	brl_blitz_DebugLog(bbStringConcat(bbStringConcat(bbt_pad,((BBString*)&_s642)),openb3d_openb3dcore_StringPtr(o->clas->f_GetInstance_pb_TTMatPtr((struct openb3d_openb3dcore_TMatPtr_obj*)o))));
	struct BBDebugStm __stmt_7 = {0x2aba017925a91539, 504, 0};
	bbOnDebugEnterStm(&__stmt_7);
	brl_blitz_DebugLog(bbStringConcat(bbStringConcat(bbStringConcat(bbStringConcat(bbStringConcat(bbStringConcat(bbStringConcat(bbStringConcat(bbt_pad,((BBString*)&_s643)),bbStringFromFloat(((struct openb3d_openb3dcore_TMatPtr_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatptr_grid [0])),((BBString*)&_s644)),bbStringFromFloat(((struct openb3d_openb3dcore_TMatPtr_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatptr_grid [1])),((BBString*)&_s645)),bbStringFromFloat(((struct openb3d_openb3dcore_TMatPtr_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatptr_grid [2])),((BBString*)&_s646)),bbStringFromFloat(((struct openb3d_openb3dcore_TMatPtr_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatptr_grid [3])));
	struct BBDebugStm __stmt_8 = {0x2aba017925a91539, 505, 0};
	bbOnDebugEnterStm(&__stmt_8);
	brl_blitz_DebugLog(bbStringConcat(bbStringConcat(bbStringConcat(bbStringConcat(bbStringConcat(bbStringConcat(bbStringConcat(bbStringConcat(bbt_pad,((BBString*)&_s647)),bbStringFromFloat(((struct openb3d_openb3dcore_TMatPtr_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatptr_grid [4])),((BBString*)&_s648)),bbStringFromFloat(((struct openb3d_openb3dcore_TMatPtr_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatptr_grid [5])),((BBString*)&_s649)),bbStringFromFloat(((struct openb3d_openb3dcore_TMatPtr_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatptr_grid [6])),((BBString*)&_s650)),bbStringFromFloat(((struct openb3d_openb3dcore_TMatPtr_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatptr_grid [7])));
	struct BBDebugStm __stmt_9 = {0x2aba017925a91539, 506, 0};
	bbOnDebugEnterStm(&__stmt_9);
	brl_blitz_DebugLog(bbStringConcat(bbStringConcat(bbStringConcat(bbStringConcat(bbStringConcat(bbStringConcat(bbStringConcat(bbStringConcat(bbt_pad,((BBString*)&_s651)),bbStringFromFloat(((struct openb3d_openb3dcore_TMatPtr_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatptr_grid [8])),((BBString*)&_s652)),bbStringFromFloat(((struct openb3d_openb3dcore_TMatPtr_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatptr_grid [9])),((BBString*)&_s653)),bbStringFromFloat(((struct openb3d_openb3dcore_TMatPtr_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatptr_grid [10])),((BBString*)&_s654)),bbStringFromFloat(((struct openb3d_openb3dcore_TMatPtr_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatptr_grid [11])));
	struct BBDebugStm __stmt_10 = {0x2aba017925a91539, 507, 0};
	bbOnDebugEnterStm(&__stmt_10);
	brl_blitz_DebugLog(bbStringConcat(bbStringConcat(bbStringConcat(bbStringConcat(bbStringConcat(bbStringConcat(bbStringConcat(bbStringConcat(bbt_pad,((BBString*)&_s655)),bbStringFromFloat(((struct openb3d_openb3dcore_TMatPtr_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatptr_grid [12])),((BBString*)&_s656)),bbStringFromFloat(((struct openb3d_openb3dcore_TMatPtr_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatptr_grid [13])),((BBString*)&_s657)),bbStringFromFloat(((struct openb3d_openb3dcore_TMatPtr_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatptr_grid [14])),((BBString*)&_s658)),bbStringFromFloat(((struct openb3d_openb3dcore_TMatPtr_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatptr_grid [15])));
	struct BBDebugStm __stmt_11 = {0x2aba017925a91539, 509, 0};
	bbOnDebugEnterStm(&__stmt_11);
	brl_blitz_DebugLog((BBString*)&bbEmptyString);
	bbOnDebugLeaveScope();
	return 0;
}
struct openb3d_openb3dcore_TMatPtr_obj* openb3d_openb3dcore_TMatPtr_NewMatPtr_TTMatPtr(){
	BBBYTE* bbt_inst=0;
	struct BBDebugScope_1 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"NewMatPtr",
		{
			{
				BBDEBUGDECL_LOCAL,
				"inst",
				"*b",
				.var_address=&bbt_inst
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x2aba017925a91539, 518, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbt_inst=NewMatPtr_();
	struct BBDebugStm __stmt_1 = {0x2aba017925a91539, 519, 0};
	bbOnDebugEnterStm(&__stmt_1);
	bbOnDebugLeaveScope();
	return (struct openb3d_openb3dcore_TMatPtr_obj*)openb3d_openb3dcore_TMatPtr_CreateObject_TTMatPtr_pb(bbt_inst);
}
struct openb3d_openb3dcore_TMatPtr_obj* openb3d_openb3dcore_TMatPtr_Create_TTMatPtr(){
	BBBYTE* bbt_inst=0;
	struct BBDebugScope_1 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"Create",
		{
			{
				BBDEBUGDECL_LOCAL,
				"inst",
				"*b",
				.var_address=&bbt_inst
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x2aba017925a91539, 528, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbt_inst=NewMatPtr_();
	struct BBDebugStm __stmt_1 = {0x2aba017925a91539, 529, 0};
	bbOnDebugEnterStm(&__stmt_1);
	bbOnDebugLeaveScope();
	return (struct openb3d_openb3dcore_TMatPtr_obj*)openb3d_openb3dcore_TMatPtr_CreateObject_TTMatPtr_pb(bbt_inst);
}
struct openb3d_openb3dcore_TMatPtr_obj* openb3d_openb3dcore_TMatPtr_CopyMatrix_TTMatPtr_TTMatrix(struct openb3d_openb3dcore_TMatrix_obj* bbt_mat){
	BBBYTE* bbt_inst=0;
	struct openb3d_openb3dcore_TMatPtr_obj* bbt_new_mat=(struct openb3d_openb3dcore_TMatPtr_obj*)((struct openb3d_openb3dcore_TMatPtr_obj*)&bbNullObject);
	struct BBDebugScope_3 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"CopyMatrix",
		{
			{
				BBDEBUGDECL_LOCAL,
				"mat",
				":TMatrix",
				.var_address=&bbt_mat
			},
			{
				BBDEBUGDECL_LOCAL,
				"inst",
				"*b",
				.var_address=&bbt_inst
			},
			{
				BBDEBUGDECL_LOCAL,
				"new_mat",
				":TMatPtr",
				.var_address=&bbt_new_mat
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x2aba017925a91539, 538, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbt_inst=NewMatPtr_();
	struct BBDebugStm __stmt_1 = {0x2aba017925a91539, 539, 0};
	bbOnDebugEnterStm(&__stmt_1);
	bbt_new_mat=(struct openb3d_openb3dcore_TMatPtr_obj*)openb3d_openb3dcore_TMatPtr_CreateObject_TTMatPtr_pb(bbt_inst);
	struct BBDebugStm __stmt_2 = {0x2aba017925a91539, 540, 0};
	bbOnDebugEnterStm(&__stmt_2);
	BBUINT* bbt_=((BBARRAY)((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)bbt_mat))->_openb3d_openb3dcore_tmatrix_grid )->scales + 1;
	((struct openb3d_openb3dcore_TMatPtr_obj*)bbNullObjectTest((BBObject*)bbt_new_mat))->_openb3d_openb3dcore_tmatptr_grid [0]=((BBFLOAT*)BBARRAYDATAINDEX((((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)bbt_mat))->_openb3d_openb3dcore_tmatrix_grid ),(((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)bbt_mat))->_openb3d_openb3dcore_tmatrix_grid )->dims,(*(bbt_)) * 0U + 0U))[(*(bbt_)) * 0U + 0U];
	struct BBDebugStm __stmt_3 = {0x2aba017925a91539, 541, 0};
	bbOnDebugEnterStm(&__stmt_3);
	BBUINT* bbt_2=((BBARRAY)((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)bbt_mat))->_openb3d_openb3dcore_tmatrix_grid )->scales + 1;
	((struct openb3d_openb3dcore_TMatPtr_obj*)bbNullObjectTest((BBObject*)bbt_new_mat))->_openb3d_openb3dcore_tmatptr_grid [4]=((BBFLOAT*)BBARRAYDATAINDEX((((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)bbt_mat))->_openb3d_openb3dcore_tmatrix_grid ),(((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)bbt_mat))->_openb3d_openb3dcore_tmatrix_grid )->dims,(*(bbt_2)) * 1U + 0U))[(*(bbt_2)) * 1U + 0U];
	struct BBDebugStm __stmt_4 = {0x2aba017925a91539, 542, 0};
	bbOnDebugEnterStm(&__stmt_4);
	BBUINT* bbt_3=((BBARRAY)((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)bbt_mat))->_openb3d_openb3dcore_tmatrix_grid )->scales + 1;
	((struct openb3d_openb3dcore_TMatPtr_obj*)bbNullObjectTest((BBObject*)bbt_new_mat))->_openb3d_openb3dcore_tmatptr_grid [8]=((BBFLOAT*)BBARRAYDATAINDEX((((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)bbt_mat))->_openb3d_openb3dcore_tmatrix_grid ),(((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)bbt_mat))->_openb3d_openb3dcore_tmatrix_grid )->dims,(*(bbt_3)) * 2U + 0U))[(*(bbt_3)) * 2U + 0U];
	struct BBDebugStm __stmt_5 = {0x2aba017925a91539, 543, 0};
	bbOnDebugEnterStm(&__stmt_5);
	BBUINT* bbt_4=((BBARRAY)((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)bbt_mat))->_openb3d_openb3dcore_tmatrix_grid )->scales + 1;
	((struct openb3d_openb3dcore_TMatPtr_obj*)bbNullObjectTest((BBObject*)bbt_new_mat))->_openb3d_openb3dcore_tmatptr_grid [12]=((BBFLOAT*)BBARRAYDATAINDEX((((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)bbt_mat))->_openb3d_openb3dcore_tmatrix_grid ),(((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)bbt_mat))->_openb3d_openb3dcore_tmatrix_grid )->dims,(*(bbt_4)) * 3U + 0U))[(*(bbt_4)) * 3U + 0U];
	struct BBDebugStm __stmt_6 = {0x2aba017925a91539, 544, 0};
	bbOnDebugEnterStm(&__stmt_6);
	BBUINT* bbt_5=((BBARRAY)((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)bbt_mat))->_openb3d_openb3dcore_tmatrix_grid )->scales + 1;
	((struct openb3d_openb3dcore_TMatPtr_obj*)bbNullObjectTest((BBObject*)bbt_new_mat))->_openb3d_openb3dcore_tmatptr_grid [1]=((BBFLOAT*)BBARRAYDATAINDEX((((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)bbt_mat))->_openb3d_openb3dcore_tmatrix_grid ),(((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)bbt_mat))->_openb3d_openb3dcore_tmatrix_grid )->dims,(*(bbt_5)) * 0U + 1U))[(*(bbt_5)) * 0U + 1U];
	struct BBDebugStm __stmt_7 = {0x2aba017925a91539, 545, 0};
	bbOnDebugEnterStm(&__stmt_7);
	BBUINT* bbt_6=((BBARRAY)((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)bbt_mat))->_openb3d_openb3dcore_tmatrix_grid )->scales + 1;
	((struct openb3d_openb3dcore_TMatPtr_obj*)bbNullObjectTest((BBObject*)bbt_new_mat))->_openb3d_openb3dcore_tmatptr_grid [5]=((BBFLOAT*)BBARRAYDATAINDEX((((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)bbt_mat))->_openb3d_openb3dcore_tmatrix_grid ),(((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)bbt_mat))->_openb3d_openb3dcore_tmatrix_grid )->dims,(*(bbt_6)) * 1U + 1U))[(*(bbt_6)) * 1U + 1U];
	struct BBDebugStm __stmt_8 = {0x2aba017925a91539, 546, 0};
	bbOnDebugEnterStm(&__stmt_8);
	BBUINT* bbt_7=((BBARRAY)((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)bbt_mat))->_openb3d_openb3dcore_tmatrix_grid )->scales + 1;
	((struct openb3d_openb3dcore_TMatPtr_obj*)bbNullObjectTest((BBObject*)bbt_new_mat))->_openb3d_openb3dcore_tmatptr_grid [9]=((BBFLOAT*)BBARRAYDATAINDEX((((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)bbt_mat))->_openb3d_openb3dcore_tmatrix_grid ),(((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)bbt_mat))->_openb3d_openb3dcore_tmatrix_grid )->dims,(*(bbt_7)) * 2U + 1U))[(*(bbt_7)) * 2U + 1U];
	struct BBDebugStm __stmt_9 = {0x2aba017925a91539, 547, 0};
	bbOnDebugEnterStm(&__stmt_9);
	BBUINT* bbt_8=((BBARRAY)((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)bbt_mat))->_openb3d_openb3dcore_tmatrix_grid )->scales + 1;
	((struct openb3d_openb3dcore_TMatPtr_obj*)bbNullObjectTest((BBObject*)bbt_new_mat))->_openb3d_openb3dcore_tmatptr_grid [13]=((BBFLOAT*)BBARRAYDATAINDEX((((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)bbt_mat))->_openb3d_openb3dcore_tmatrix_grid ),(((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)bbt_mat))->_openb3d_openb3dcore_tmatrix_grid )->dims,(*(bbt_8)) * 3U + 1U))[(*(bbt_8)) * 3U + 1U];
	struct BBDebugStm __stmt_10 = {0x2aba017925a91539, 548, 0};
	bbOnDebugEnterStm(&__stmt_10);
	BBUINT* bbt_9=((BBARRAY)((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)bbt_mat))->_openb3d_openb3dcore_tmatrix_grid )->scales + 1;
	((struct openb3d_openb3dcore_TMatPtr_obj*)bbNullObjectTest((BBObject*)bbt_new_mat))->_openb3d_openb3dcore_tmatptr_grid [2]=((BBFLOAT*)BBARRAYDATAINDEX((((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)bbt_mat))->_openb3d_openb3dcore_tmatrix_grid ),(((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)bbt_mat))->_openb3d_openb3dcore_tmatrix_grid )->dims,(*(bbt_9)) * 0U + 2U))[(*(bbt_9)) * 0U + 2U];
	struct BBDebugStm __stmt_11 = {0x2aba017925a91539, 549, 0};
	bbOnDebugEnterStm(&__stmt_11);
	BBUINT* bbt_10=((BBARRAY)((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)bbt_mat))->_openb3d_openb3dcore_tmatrix_grid )->scales + 1;
	((struct openb3d_openb3dcore_TMatPtr_obj*)bbNullObjectTest((BBObject*)bbt_new_mat))->_openb3d_openb3dcore_tmatptr_grid [6]=((BBFLOAT*)BBARRAYDATAINDEX((((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)bbt_mat))->_openb3d_openb3dcore_tmatrix_grid ),(((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)bbt_mat))->_openb3d_openb3dcore_tmatrix_grid )->dims,(*(bbt_10)) * 1U + 2U))[(*(bbt_10)) * 1U + 2U];
	struct BBDebugStm __stmt_12 = {0x2aba017925a91539, 550, 0};
	bbOnDebugEnterStm(&__stmt_12);
	BBUINT* bbt_11=((BBARRAY)((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)bbt_mat))->_openb3d_openb3dcore_tmatrix_grid )->scales + 1;
	((struct openb3d_openb3dcore_TMatPtr_obj*)bbNullObjectTest((BBObject*)bbt_new_mat))->_openb3d_openb3dcore_tmatptr_grid [10]=((BBFLOAT*)BBARRAYDATAINDEX((((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)bbt_mat))->_openb3d_openb3dcore_tmatrix_grid ),(((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)bbt_mat))->_openb3d_openb3dcore_tmatrix_grid )->dims,(*(bbt_11)) * 2U + 2U))[(*(bbt_11)) * 2U + 2U];
	struct BBDebugStm __stmt_13 = {0x2aba017925a91539, 551, 0};
	bbOnDebugEnterStm(&__stmt_13);
	BBUINT* bbt_12=((BBARRAY)((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)bbt_mat))->_openb3d_openb3dcore_tmatrix_grid )->scales + 1;
	((struct openb3d_openb3dcore_TMatPtr_obj*)bbNullObjectTest((BBObject*)bbt_new_mat))->_openb3d_openb3dcore_tmatptr_grid [14]=((BBFLOAT*)BBARRAYDATAINDEX((((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)bbt_mat))->_openb3d_openb3dcore_tmatrix_grid ),(((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)bbt_mat))->_openb3d_openb3dcore_tmatrix_grid )->dims,(*(bbt_12)) * 3U + 2U))[(*(bbt_12)) * 3U + 2U];
	struct BBDebugStm __stmt_14 = {0x2aba017925a91539, 553, 0};
	bbOnDebugEnterStm(&__stmt_14);
	BBUINT* bbt_13=((BBARRAY)((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)bbt_mat))->_openb3d_openb3dcore_tmatrix_grid )->scales + 1;
	((struct openb3d_openb3dcore_TMatPtr_obj*)bbNullObjectTest((BBObject*)bbt_new_mat))->_openb3d_openb3dcore_tmatptr_grid [3]=((BBFLOAT*)BBARRAYDATAINDEX((((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)bbt_mat))->_openb3d_openb3dcore_tmatrix_grid ),(((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)bbt_mat))->_openb3d_openb3dcore_tmatrix_grid )->dims,(*(bbt_13)) * 0U + 3U))[(*(bbt_13)) * 0U + 3U];
	struct BBDebugStm __stmt_15 = {0x2aba017925a91539, 554, 0};
	bbOnDebugEnterStm(&__stmt_15);
	BBUINT* bbt_14=((BBARRAY)((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)bbt_mat))->_openb3d_openb3dcore_tmatrix_grid )->scales + 1;
	((struct openb3d_openb3dcore_TMatPtr_obj*)bbNullObjectTest((BBObject*)bbt_new_mat))->_openb3d_openb3dcore_tmatptr_grid [7]=((BBFLOAT*)BBARRAYDATAINDEX((((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)bbt_mat))->_openb3d_openb3dcore_tmatrix_grid ),(((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)bbt_mat))->_openb3d_openb3dcore_tmatrix_grid )->dims,(*(bbt_14)) * 1U + 3U))[(*(bbt_14)) * 1U + 3U];
	struct BBDebugStm __stmt_16 = {0x2aba017925a91539, 555, 0};
	bbOnDebugEnterStm(&__stmt_16);
	BBUINT* bbt_15=((BBARRAY)((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)bbt_mat))->_openb3d_openb3dcore_tmatrix_grid )->scales + 1;
	((struct openb3d_openb3dcore_TMatPtr_obj*)bbNullObjectTest((BBObject*)bbt_new_mat))->_openb3d_openb3dcore_tmatptr_grid [11]=((BBFLOAT*)BBARRAYDATAINDEX((((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)bbt_mat))->_openb3d_openb3dcore_tmatrix_grid ),(((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)bbt_mat))->_openb3d_openb3dcore_tmatrix_grid )->dims,(*(bbt_15)) * 2U + 3U))[(*(bbt_15)) * 2U + 3U];
	struct BBDebugStm __stmt_17 = {0x2aba017925a91539, 556, 0};
	bbOnDebugEnterStm(&__stmt_17);
	BBUINT* bbt_16=((BBARRAY)((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)bbt_mat))->_openb3d_openb3dcore_tmatrix_grid )->scales + 1;
	((struct openb3d_openb3dcore_TMatPtr_obj*)bbNullObjectTest((BBObject*)bbt_new_mat))->_openb3d_openb3dcore_tmatptr_grid [15]=((BBFLOAT*)BBARRAYDATAINDEX((((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)bbt_mat))->_openb3d_openb3dcore_tmatrix_grid ),(((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)bbt_mat))->_openb3d_openb3dcore_tmatrix_grid )->dims,(*(bbt_16)) * 3U + 3U))[(*(bbt_16)) * 3U + 3U];
	struct BBDebugStm __stmt_18 = {0x2aba017925a91539, 557, 0};
	bbOnDebugEnterStm(&__stmt_18);
	bbOnDebugLeaveScope();
	return (struct openb3d_openb3dcore_TMatPtr_obj*)bbt_new_mat;
}
struct openb3d_openb3dcore_TMatPtr_obj* _openb3d_openb3dcore_TMatPtr_GetMatrix_TTMatrix(struct openb3d_openb3dcore_TMatPtr_obj* o,struct openb3d_openb3dcore_TMatrix_obj* bbt_mat){
	((struct openb3d_openb3dcore_TMatPtr_obj*)bbNullObjectTest((BBObject*)o));
	struct BBDebugScope_2 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"GetMatrix",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TMatPtr",
				.var_address=&o
			},
			{
				BBDEBUGDECL_LOCAL,
				"mat",
				":TMatrix",
				.var_address=&bbt_mat
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x2aba017925a91539, 584, 0};
	bbOnDebugEnterStm(&__stmt_0);
	BBUINT* bbt_=((BBARRAY)((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)bbt_mat))->_openb3d_openb3dcore_tmatrix_grid )->scales + 1;
	((struct openb3d_openb3dcore_TMatPtr_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatptr_grid [0]=((BBFLOAT*)BBARRAYDATAINDEX((((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)bbt_mat))->_openb3d_openb3dcore_tmatrix_grid ),(((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)bbt_mat))->_openb3d_openb3dcore_tmatrix_grid )->dims,(*(bbt_)) * 0U + 0U))[(*(bbt_)) * 0U + 0U];
	struct BBDebugStm __stmt_1 = {0x2aba017925a91539, 585, 0};
	bbOnDebugEnterStm(&__stmt_1);
	BBUINT* bbt_2=((BBARRAY)((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)bbt_mat))->_openb3d_openb3dcore_tmatrix_grid )->scales + 1;
	((struct openb3d_openb3dcore_TMatPtr_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatptr_grid [4]=((BBFLOAT*)BBARRAYDATAINDEX((((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)bbt_mat))->_openb3d_openb3dcore_tmatrix_grid ),(((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)bbt_mat))->_openb3d_openb3dcore_tmatrix_grid )->dims,(*(bbt_2)) * 1U + 0U))[(*(bbt_2)) * 1U + 0U];
	struct BBDebugStm __stmt_2 = {0x2aba017925a91539, 586, 0};
	bbOnDebugEnterStm(&__stmt_2);
	BBUINT* bbt_3=((BBARRAY)((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)bbt_mat))->_openb3d_openb3dcore_tmatrix_grid )->scales + 1;
	((struct openb3d_openb3dcore_TMatPtr_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatptr_grid [8]=((BBFLOAT*)BBARRAYDATAINDEX((((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)bbt_mat))->_openb3d_openb3dcore_tmatrix_grid ),(((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)bbt_mat))->_openb3d_openb3dcore_tmatrix_grid )->dims,(*(bbt_3)) * 2U + 0U))[(*(bbt_3)) * 2U + 0U];
	struct BBDebugStm __stmt_3 = {0x2aba017925a91539, 587, 0};
	bbOnDebugEnterStm(&__stmt_3);
	BBUINT* bbt_4=((BBARRAY)((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)bbt_mat))->_openb3d_openb3dcore_tmatrix_grid )->scales + 1;
	((struct openb3d_openb3dcore_TMatPtr_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatptr_grid [12]=((BBFLOAT*)BBARRAYDATAINDEX((((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)bbt_mat))->_openb3d_openb3dcore_tmatrix_grid ),(((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)bbt_mat))->_openb3d_openb3dcore_tmatrix_grid )->dims,(*(bbt_4)) * 3U + 0U))[(*(bbt_4)) * 3U + 0U];
	struct BBDebugStm __stmt_4 = {0x2aba017925a91539, 588, 0};
	bbOnDebugEnterStm(&__stmt_4);
	BBUINT* bbt_5=((BBARRAY)((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)bbt_mat))->_openb3d_openb3dcore_tmatrix_grid )->scales + 1;
	((struct openb3d_openb3dcore_TMatPtr_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatptr_grid [1]=((BBFLOAT*)BBARRAYDATAINDEX((((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)bbt_mat))->_openb3d_openb3dcore_tmatrix_grid ),(((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)bbt_mat))->_openb3d_openb3dcore_tmatrix_grid )->dims,(*(bbt_5)) * 0U + 1U))[(*(bbt_5)) * 0U + 1U];
	struct BBDebugStm __stmt_5 = {0x2aba017925a91539, 589, 0};
	bbOnDebugEnterStm(&__stmt_5);
	BBUINT* bbt_6=((BBARRAY)((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)bbt_mat))->_openb3d_openb3dcore_tmatrix_grid )->scales + 1;
	((struct openb3d_openb3dcore_TMatPtr_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatptr_grid [5]=((BBFLOAT*)BBARRAYDATAINDEX((((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)bbt_mat))->_openb3d_openb3dcore_tmatrix_grid ),(((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)bbt_mat))->_openb3d_openb3dcore_tmatrix_grid )->dims,(*(bbt_6)) * 1U + 1U))[(*(bbt_6)) * 1U + 1U];
	struct BBDebugStm __stmt_6 = {0x2aba017925a91539, 590, 0};
	bbOnDebugEnterStm(&__stmt_6);
	BBUINT* bbt_7=((BBARRAY)((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)bbt_mat))->_openb3d_openb3dcore_tmatrix_grid )->scales + 1;
	((struct openb3d_openb3dcore_TMatPtr_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatptr_grid [9]=((BBFLOAT*)BBARRAYDATAINDEX((((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)bbt_mat))->_openb3d_openb3dcore_tmatrix_grid ),(((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)bbt_mat))->_openb3d_openb3dcore_tmatrix_grid )->dims,(*(bbt_7)) * 2U + 1U))[(*(bbt_7)) * 2U + 1U];
	struct BBDebugStm __stmt_7 = {0x2aba017925a91539, 591, 0};
	bbOnDebugEnterStm(&__stmt_7);
	BBUINT* bbt_8=((BBARRAY)((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)bbt_mat))->_openb3d_openb3dcore_tmatrix_grid )->scales + 1;
	((struct openb3d_openb3dcore_TMatPtr_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatptr_grid [13]=((BBFLOAT*)BBARRAYDATAINDEX((((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)bbt_mat))->_openb3d_openb3dcore_tmatrix_grid ),(((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)bbt_mat))->_openb3d_openb3dcore_tmatrix_grid )->dims,(*(bbt_8)) * 3U + 1U))[(*(bbt_8)) * 3U + 1U];
	struct BBDebugStm __stmt_8 = {0x2aba017925a91539, 592, 0};
	bbOnDebugEnterStm(&__stmt_8);
	BBUINT* bbt_9=((BBARRAY)((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)bbt_mat))->_openb3d_openb3dcore_tmatrix_grid )->scales + 1;
	((struct openb3d_openb3dcore_TMatPtr_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatptr_grid [2]=((BBFLOAT*)BBARRAYDATAINDEX((((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)bbt_mat))->_openb3d_openb3dcore_tmatrix_grid ),(((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)bbt_mat))->_openb3d_openb3dcore_tmatrix_grid )->dims,(*(bbt_9)) * 0U + 2U))[(*(bbt_9)) * 0U + 2U];
	struct BBDebugStm __stmt_9 = {0x2aba017925a91539, 593, 0};
	bbOnDebugEnterStm(&__stmt_9);
	BBUINT* bbt_10=((BBARRAY)((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)bbt_mat))->_openb3d_openb3dcore_tmatrix_grid )->scales + 1;
	((struct openb3d_openb3dcore_TMatPtr_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatptr_grid [6]=((BBFLOAT*)BBARRAYDATAINDEX((((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)bbt_mat))->_openb3d_openb3dcore_tmatrix_grid ),(((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)bbt_mat))->_openb3d_openb3dcore_tmatrix_grid )->dims,(*(bbt_10)) * 1U + 2U))[(*(bbt_10)) * 1U + 2U];
	struct BBDebugStm __stmt_10 = {0x2aba017925a91539, 594, 0};
	bbOnDebugEnterStm(&__stmt_10);
	BBUINT* bbt_11=((BBARRAY)((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)bbt_mat))->_openb3d_openb3dcore_tmatrix_grid )->scales + 1;
	((struct openb3d_openb3dcore_TMatPtr_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatptr_grid [10]=((BBFLOAT*)BBARRAYDATAINDEX((((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)bbt_mat))->_openb3d_openb3dcore_tmatrix_grid ),(((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)bbt_mat))->_openb3d_openb3dcore_tmatrix_grid )->dims,(*(bbt_11)) * 2U + 2U))[(*(bbt_11)) * 2U + 2U];
	struct BBDebugStm __stmt_11 = {0x2aba017925a91539, 595, 0};
	bbOnDebugEnterStm(&__stmt_11);
	BBUINT* bbt_12=((BBARRAY)((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)bbt_mat))->_openb3d_openb3dcore_tmatrix_grid )->scales + 1;
	((struct openb3d_openb3dcore_TMatPtr_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatptr_grid [14]=((BBFLOAT*)BBARRAYDATAINDEX((((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)bbt_mat))->_openb3d_openb3dcore_tmatrix_grid ),(((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)bbt_mat))->_openb3d_openb3dcore_tmatrix_grid )->dims,(*(bbt_12)) * 3U + 2U))[(*(bbt_12)) * 3U + 2U];
	struct BBDebugStm __stmt_12 = {0x2aba017925a91539, 597, 0};
	bbOnDebugEnterStm(&__stmt_12);
	BBUINT* bbt_13=((BBARRAY)((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)bbt_mat))->_openb3d_openb3dcore_tmatrix_grid )->scales + 1;
	((struct openb3d_openb3dcore_TMatPtr_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatptr_grid [3]=((BBFLOAT*)BBARRAYDATAINDEX((((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)bbt_mat))->_openb3d_openb3dcore_tmatrix_grid ),(((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)bbt_mat))->_openb3d_openb3dcore_tmatrix_grid )->dims,(*(bbt_13)) * 0U + 3U))[(*(bbt_13)) * 0U + 3U];
	struct BBDebugStm __stmt_13 = {0x2aba017925a91539, 598, 0};
	bbOnDebugEnterStm(&__stmt_13);
	BBUINT* bbt_14=((BBARRAY)((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)bbt_mat))->_openb3d_openb3dcore_tmatrix_grid )->scales + 1;
	((struct openb3d_openb3dcore_TMatPtr_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatptr_grid [7]=((BBFLOAT*)BBARRAYDATAINDEX((((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)bbt_mat))->_openb3d_openb3dcore_tmatrix_grid ),(((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)bbt_mat))->_openb3d_openb3dcore_tmatrix_grid )->dims,(*(bbt_14)) * 1U + 3U))[(*(bbt_14)) * 1U + 3U];
	struct BBDebugStm __stmt_14 = {0x2aba017925a91539, 599, 0};
	bbOnDebugEnterStm(&__stmt_14);
	BBUINT* bbt_15=((BBARRAY)((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)bbt_mat))->_openb3d_openb3dcore_tmatrix_grid )->scales + 1;
	((struct openb3d_openb3dcore_TMatPtr_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatptr_grid [11]=((BBFLOAT*)BBARRAYDATAINDEX((((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)bbt_mat))->_openb3d_openb3dcore_tmatrix_grid ),(((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)bbt_mat))->_openb3d_openb3dcore_tmatrix_grid )->dims,(*(bbt_15)) * 2U + 3U))[(*(bbt_15)) * 2U + 3U];
	struct BBDebugStm __stmt_15 = {0x2aba017925a91539, 600, 0};
	bbOnDebugEnterStm(&__stmt_15);
	BBUINT* bbt_16=((BBARRAY)((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)bbt_mat))->_openb3d_openb3dcore_tmatrix_grid )->scales + 1;
	((struct openb3d_openb3dcore_TMatPtr_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatptr_grid [15]=((BBFLOAT*)BBARRAYDATAINDEX((((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)bbt_mat))->_openb3d_openb3dcore_tmatrix_grid ),(((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)bbt_mat))->_openb3d_openb3dcore_tmatrix_grid )->dims,(*(bbt_16)) * 3U + 3U))[(*(bbt_16)) * 3U + 3U];
	bbOnDebugLeaveScope();
	return (struct openb3d_openb3dcore_TMatPtr_obj*)((struct openb3d_openb3dcore_TMatPtr_obj*)&bbNullObject);
}
struct openb3d_openb3dcore_TMatPtr_obj* _openb3d_openb3dcore_TMatPtr_Copy(struct openb3d_openb3dcore_TMatPtr_obj* o){
	((struct openb3d_openb3dcore_TMatPtr_obj*)bbNullObjectTest((BBObject*)o));
	BBBYTE* bbt_inst=0;
	struct BBDebugScope_2 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"Copy",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TMatPtr",
				.var_address=&o
			},
			{
				BBDEBUGDECL_LOCAL,
				"inst",
				"*b",
				.var_address=&bbt_inst
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x2aba017925a91539, 609, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbt_inst=MatrixCopy_(o->clas->f_GetInstance_pb_TTMatPtr((struct openb3d_openb3dcore_TMatPtr_obj*)o));
	struct BBDebugStm __stmt_1 = {0x2aba017925a91539, 610, 0};
	bbOnDebugEnterStm(&__stmt_1);
	bbOnDebugLeaveScope();
	return (struct openb3d_openb3dcore_TMatPtr_obj*)o->clas->f_CreateObject_TTMatPtr_pb(bbt_inst);
}
BBINT _openb3d_openb3dcore_TMatPtr_Overwrite_TTMatPtr(struct openb3d_openb3dcore_TMatPtr_obj* o,struct openb3d_openb3dcore_TMatPtr_obj* bbt_mat){
	((struct openb3d_openb3dcore_TMatPtr_obj*)bbNullObjectTest((BBObject*)o));
	struct BBDebugScope_2 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"Overwrite",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TMatPtr",
				.var_address=&o
			},
			{
				BBDEBUGDECL_LOCAL,
				"mat",
				":TMatPtr",
				.var_address=&bbt_mat
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x2aba017925a91539, 619, 0};
	bbOnDebugEnterStm(&__stmt_0);
	MatrixOverwrite_(o->clas->f_GetInstance_pb_TTMatPtr((struct openb3d_openb3dcore_TMatPtr_obj*)o),o->clas->f_GetInstance_pb_TTMatPtr((struct openb3d_openb3dcore_TMatPtr_obj*)bbt_mat));
	bbOnDebugLeaveScope();
	return 0;
}
BBINT _openb3d_openb3dcore_TMatPtr_GetInverse_TTMatPtr(struct openb3d_openb3dcore_TMatPtr_obj* o,struct openb3d_openb3dcore_TMatPtr_obj* bbt_mat){
	((struct openb3d_openb3dcore_TMatPtr_obj*)bbNullObjectTest((BBObject*)o));
	struct BBDebugScope_2 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"GetInverse",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TMatPtr",
				.var_address=&o
			},
			{
				BBDEBUGDECL_LOCAL,
				"mat",
				":TMatPtr",
				.var_address=&bbt_mat
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x2aba017925a91539, 628, 0};
	bbOnDebugEnterStm(&__stmt_0);
	MatrixGetInverse_(o->clas->f_GetInstance_pb_TTMatPtr((struct openb3d_openb3dcore_TMatPtr_obj*)o),o->clas->f_GetInstance_pb_TTMatPtr((struct openb3d_openb3dcore_TMatPtr_obj*)bbt_mat));
	bbOnDebugLeaveScope();
	return 0;
}
BBINT _openb3d_openb3dcore_TMatPtr_GetInverse2_TTMatPtr(struct openb3d_openb3dcore_TMatPtr_obj* o,struct openb3d_openb3dcore_TMatPtr_obj* bbt_mat){
	((struct openb3d_openb3dcore_TMatPtr_obj*)bbNullObjectTest((BBObject*)o));
	struct BBDebugScope_2 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"GetInverse2",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TMatPtr",
				.var_address=&o
			},
			{
				BBDEBUGDECL_LOCAL,
				"mat",
				":TMatPtr",
				.var_address=&bbt_mat
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x2aba017925a91539, 637, 0};
	bbOnDebugEnterStm(&__stmt_0);
	MatrixGetInverse2_(o->clas->f_GetInstance_pb_TTMatPtr((struct openb3d_openb3dcore_TMatPtr_obj*)o),o->clas->f_GetInstance_pb_TTMatPtr((struct openb3d_openb3dcore_TMatPtr_obj*)bbt_mat));
	bbOnDebugLeaveScope();
	return 0;
}
BBINT _openb3d_openb3dcore_TMatPtr_LoadIdentity(struct openb3d_openb3dcore_TMatPtr_obj* o){
	((struct openb3d_openb3dcore_TMatPtr_obj*)bbNullObjectTest((BBObject*)o));
	struct BBDebugScope_1 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"LoadIdentity",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TMatPtr",
				.var_address=&o
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x2aba017925a91539, 646, 0};
	bbOnDebugEnterStm(&__stmt_0);
	MatrixLoadIdentity_(o->clas->f_GetInstance_pb_TTMatPtr((struct openb3d_openb3dcore_TMatPtr_obj*)o));
	bbOnDebugLeaveScope();
	return 0;
}
BBINT _openb3d_openb3dcore_TMatPtr_SetIdentity_fffffffff(struct openb3d_openb3dcore_TMatPtr_obj* o,BBFLOAT bbt_xx,BBFLOAT bbt_xy,BBFLOAT bbt_xz,BBFLOAT bbt_yx,BBFLOAT bbt_yy,BBFLOAT bbt_yz,BBFLOAT bbt_zx,BBFLOAT bbt_zy,BBFLOAT bbt_zz){
	((struct openb3d_openb3dcore_TMatPtr_obj*)bbNullObjectTest((BBObject*)o));
	struct BBDebugScope_10 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"SetIdentity",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TMatPtr",
				.var_address=&o
			},
			{
				BBDEBUGDECL_LOCAL,
				"xx",
				"f",
				.var_address=&bbt_xx
			},
			{
				BBDEBUGDECL_LOCAL,
				"xy",
				"f",
				.var_address=&bbt_xy
			},
			{
				BBDEBUGDECL_LOCAL,
				"xz",
				"f",
				.var_address=&bbt_xz
			},
			{
				BBDEBUGDECL_LOCAL,
				"yx",
				"f",
				.var_address=&bbt_yx
			},
			{
				BBDEBUGDECL_LOCAL,
				"yy",
				"f",
				.var_address=&bbt_yy
			},
			{
				BBDEBUGDECL_LOCAL,
				"yz",
				"f",
				.var_address=&bbt_yz
			},
			{
				BBDEBUGDECL_LOCAL,
				"zx",
				"f",
				.var_address=&bbt_zx
			},
			{
				BBDEBUGDECL_LOCAL,
				"zy",
				"f",
				.var_address=&bbt_zy
			},
			{
				BBDEBUGDECL_LOCAL,
				"zz",
				"f",
				.var_address=&bbt_zz
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x2aba017925a91539, 657, 0};
	bbOnDebugEnterStm(&__stmt_0);
	((struct openb3d_openb3dcore_TMatPtr_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatptr_grid [0]=bbt_xx;
	struct BBDebugStm __stmt_1 = {0x2aba017925a91539, 658, 0};
	bbOnDebugEnterStm(&__stmt_1);
	((struct openb3d_openb3dcore_TMatPtr_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatptr_grid [1]=bbt_xy;
	struct BBDebugStm __stmt_2 = {0x2aba017925a91539, 659, 0};
	bbOnDebugEnterStm(&__stmt_2);
	((struct openb3d_openb3dcore_TMatPtr_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatptr_grid [2]=bbt_xz;
	struct BBDebugStm __stmt_3 = {0x2aba017925a91539, 660, 0};
	bbOnDebugEnterStm(&__stmt_3);
	((struct openb3d_openb3dcore_TMatPtr_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatptr_grid [3]=0.00000000f;
	struct BBDebugStm __stmt_4 = {0x2aba017925a91539, 662, 0};
	bbOnDebugEnterStm(&__stmt_4);
	((struct openb3d_openb3dcore_TMatPtr_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatptr_grid [4]=bbt_yx;
	struct BBDebugStm __stmt_5 = {0x2aba017925a91539, 663, 0};
	bbOnDebugEnterStm(&__stmt_5);
	((struct openb3d_openb3dcore_TMatPtr_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatptr_grid [5]=bbt_yy;
	struct BBDebugStm __stmt_6 = {0x2aba017925a91539, 664, 0};
	bbOnDebugEnterStm(&__stmt_6);
	((struct openb3d_openb3dcore_TMatPtr_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatptr_grid [6]=bbt_yz;
	struct BBDebugStm __stmt_7 = {0x2aba017925a91539, 665, 0};
	bbOnDebugEnterStm(&__stmt_7);
	((struct openb3d_openb3dcore_TMatPtr_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatptr_grid [7]=0.00000000f;
	struct BBDebugStm __stmt_8 = {0x2aba017925a91539, 667, 0};
	bbOnDebugEnterStm(&__stmt_8);
	((struct openb3d_openb3dcore_TMatPtr_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatptr_grid [8]=bbt_zx;
	struct BBDebugStm __stmt_9 = {0x2aba017925a91539, 668, 0};
	bbOnDebugEnterStm(&__stmt_9);
	((struct openb3d_openb3dcore_TMatPtr_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatptr_grid [9]=bbt_zy;
	struct BBDebugStm __stmt_10 = {0x2aba017925a91539, 669, 0};
	bbOnDebugEnterStm(&__stmt_10);
	((struct openb3d_openb3dcore_TMatPtr_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatptr_grid [10]=bbt_zz;
	struct BBDebugStm __stmt_11 = {0x2aba017925a91539, 670, 0};
	bbOnDebugEnterStm(&__stmt_11);
	((struct openb3d_openb3dcore_TMatPtr_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatptr_grid [11]=0.00000000f;
	struct BBDebugStm __stmt_12 = {0x2aba017925a91539, 672, 0};
	bbOnDebugEnterStm(&__stmt_12);
	((struct openb3d_openb3dcore_TMatPtr_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatptr_grid [12]=0.00000000f;
	struct BBDebugStm __stmt_13 = {0x2aba017925a91539, 673, 0};
	bbOnDebugEnterStm(&__stmt_13);
	((struct openb3d_openb3dcore_TMatPtr_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatptr_grid [13]=0.00000000f;
	struct BBDebugStm __stmt_14 = {0x2aba017925a91539, 674, 0};
	bbOnDebugEnterStm(&__stmt_14);
	((struct openb3d_openb3dcore_TMatPtr_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatptr_grid [14]=0.00000000f;
	struct BBDebugStm __stmt_15 = {0x2aba017925a91539, 675, 0};
	bbOnDebugEnterStm(&__stmt_15);
	((struct openb3d_openb3dcore_TMatPtr_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatptr_grid [15]=1.00000000f;
	bbOnDebugLeaveScope();
	return 0;
}
struct openb3d_openb3dcore_TVecPtr_obj* _openb3d_openb3dcore_TMatPtr_GetMatrixScale(struct openb3d_openb3dcore_TMatPtr_obj* o){
	((struct openb3d_openb3dcore_TMatPtr_obj*)bbNullObjectTest((BBObject*)o));
	struct openb3d_openb3dcore_TVecPtr_obj* bbt_s=(struct openb3d_openb3dcore_TVecPtr_obj*)((struct openb3d_openb3dcore_TVecPtr_obj*)&bbNullObject);
	struct BBDebugScope_2 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"GetMatrixScale",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TMatPtr",
				.var_address=&o
			},
			{
				BBDEBUGDECL_LOCAL,
				"s",
				":TVecPtr",
				.var_address=&bbt_s
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x2aba017925a91539, 686, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbt_s=(struct openb3d_openb3dcore_TVecPtr_obj*)openb3d_openb3dcore_TVecPtr_Create_TTVecPtr_fff(0.00000000f,0.00000000f,0.00000000f);
	struct BBDebugStm __stmt_1 = {0x2aba017925a91539, 687, 0};
	bbOnDebugEnterStm(&__stmt_1);
	((struct openb3d_openb3dcore_TVecPtr_obj*)bbNullObjectTest((BBObject*)bbt_s))->_openb3d_openb3dcore_tvecptr_x [0]=openb3d_openb3dcore_TVecPtr_Magnitude_f_fff(((struct openb3d_openb3dcore_TMatPtr_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatptr_grid [0],((struct openb3d_openb3dcore_TMatPtr_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatptr_grid [1],((struct openb3d_openb3dcore_TMatPtr_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatptr_grid [2]);
	struct BBDebugStm __stmt_2 = {0x2aba017925a91539, 688, 0};
	bbOnDebugEnterStm(&__stmt_2);
	((struct openb3d_openb3dcore_TVecPtr_obj*)bbNullObjectTest((BBObject*)bbt_s))->_openb3d_openb3dcore_tvecptr_y [0]=openb3d_openb3dcore_TVecPtr_Magnitude_f_fff(((struct openb3d_openb3dcore_TMatPtr_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatptr_grid [4],((struct openb3d_openb3dcore_TMatPtr_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatptr_grid [5],((struct openb3d_openb3dcore_TMatPtr_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatptr_grid [6]);
	struct BBDebugStm __stmt_3 = {0x2aba017925a91539, 689, 0};
	bbOnDebugEnterStm(&__stmt_3);
	((struct openb3d_openb3dcore_TVecPtr_obj*)bbNullObjectTest((BBObject*)bbt_s))->_openb3d_openb3dcore_tvecptr_z [0]=openb3d_openb3dcore_TVecPtr_Magnitude_f_fff(((struct openb3d_openb3dcore_TMatPtr_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatptr_grid [8],((struct openb3d_openb3dcore_TMatPtr_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatptr_grid [9],((struct openb3d_openb3dcore_TMatPtr_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tmatptr_grid [10]);
	struct BBDebugStm __stmt_4 = {0x2aba017925a91539, 690, 0};
	bbOnDebugEnterStm(&__stmt_4);
	bbOnDebugLeaveScope();
	return (struct openb3d_openb3dcore_TVecPtr_obj*)bbt_s;
}
BBINT _openb3d_openb3dcore_TMatPtr_Multiply_TTMatPtr(struct openb3d_openb3dcore_TMatPtr_obj* o,struct openb3d_openb3dcore_TMatPtr_obj* bbt_mat){
	((struct openb3d_openb3dcore_TMatPtr_obj*)bbNullObjectTest((BBObject*)o));
	struct BBDebugScope_2 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"Multiply",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TMatPtr",
				.var_address=&o
			},
			{
				BBDEBUGDECL_LOCAL,
				"mat",
				":TMatPtr",
				.var_address=&bbt_mat
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x2aba017925a91539, 701, 0};
	bbOnDebugEnterStm(&__stmt_0);
	MatrixMultiply_(o->clas->f_GetInstance_pb_TTMatPtr((struct openb3d_openb3dcore_TMatPtr_obj*)o),o->clas->f_GetInstance_pb_TTMatPtr((struct openb3d_openb3dcore_TMatPtr_obj*)bbt_mat));
	bbOnDebugLeaveScope();
	return 0;
}
BBINT _openb3d_openb3dcore_TMatPtr_Translate_fff(struct openb3d_openb3dcore_TMatPtr_obj* o,BBFLOAT bbt_x,BBFLOAT bbt_y,BBFLOAT bbt_z){
	((struct openb3d_openb3dcore_TMatPtr_obj*)bbNullObjectTest((BBObject*)o));
	struct BBDebugScope_4 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"Translate",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TMatPtr",
				.var_address=&o
			},
			{
				BBDEBUGDECL_LOCAL,
				"x",
				"f",
				.var_address=&bbt_x
			},
			{
				BBDEBUGDECL_LOCAL,
				"y",
				"f",
				.var_address=&bbt_y
			},
			{
				BBDEBUGDECL_LOCAL,
				"z",
				"f",
				.var_address=&bbt_z
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x2aba017925a91539, 710, 0};
	bbOnDebugEnterStm(&__stmt_0);
	MatrixTranslate_(o->clas->f_GetInstance_pb_TTMatPtr((struct openb3d_openb3dcore_TMatPtr_obj*)o),bbt_x,bbt_y,bbt_z);
	bbOnDebugLeaveScope();
	return 0;
}
BBINT _openb3d_openb3dcore_TMatPtr_Scale_fff(struct openb3d_openb3dcore_TMatPtr_obj* o,BBFLOAT bbt_x,BBFLOAT bbt_y,BBFLOAT bbt_z){
	((struct openb3d_openb3dcore_TMatPtr_obj*)bbNullObjectTest((BBObject*)o));
	struct BBDebugScope_4 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"Scale",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TMatPtr",
				.var_address=&o
			},
			{
				BBDEBUGDECL_LOCAL,
				"x",
				"f",
				.var_address=&bbt_x
			},
			{
				BBDEBUGDECL_LOCAL,
				"y",
				"f",
				.var_address=&bbt_y
			},
			{
				BBDEBUGDECL_LOCAL,
				"z",
				"f",
				.var_address=&bbt_z
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x2aba017925a91539, 719, 0};
	bbOnDebugEnterStm(&__stmt_0);
	MatrixScale_(o->clas->f_GetInstance_pb_TTMatPtr((struct openb3d_openb3dcore_TMatPtr_obj*)o),bbt_x,bbt_y,bbt_z);
	bbOnDebugLeaveScope();
	return 0;
}
BBINT _openb3d_openb3dcore_TMatPtr_Rotate_fff(struct openb3d_openb3dcore_TMatPtr_obj* o,BBFLOAT bbt_rx,BBFLOAT bbt_ry,BBFLOAT bbt_rz){
	((struct openb3d_openb3dcore_TMatPtr_obj*)bbNullObjectTest((BBObject*)o));
	struct BBDebugScope_4 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"Rotate",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TMatPtr",
				.var_address=&o
			},
			{
				BBDEBUGDECL_LOCAL,
				"rx",
				"f",
				.var_address=&bbt_rx
			},
			{
				BBDEBUGDECL_LOCAL,
				"ry",
				"f",
				.var_address=&bbt_ry
			},
			{
				BBDEBUGDECL_LOCAL,
				"rz",
				"f",
				.var_address=&bbt_rz
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x2aba017925a91539, 728, 0};
	bbOnDebugEnterStm(&__stmt_0);
	MatrixRotate_(o->clas->f_GetInstance_pb_TTMatPtr((struct openb3d_openb3dcore_TMatPtr_obj*)o),bbt_rx,bbt_ry,bbt_rz);
	bbOnDebugLeaveScope();
	return 0;
}
BBINT _openb3d_openb3dcore_TMatPtr_RotatePitch_f(struct openb3d_openb3dcore_TMatPtr_obj* o,BBFLOAT bbt_ang){
	((struct openb3d_openb3dcore_TMatPtr_obj*)bbNullObjectTest((BBObject*)o));
	struct BBDebugScope_2 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"RotatePitch",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TMatPtr",
				.var_address=&o
			},
			{
				BBDEBUGDECL_LOCAL,
				"ang",
				"f",
				.var_address=&bbt_ang
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x2aba017925a91539, 737, 0};
	bbOnDebugEnterStm(&__stmt_0);
	MatrixRotatePitch_(o->clas->f_GetInstance_pb_TTMatPtr((struct openb3d_openb3dcore_TMatPtr_obj*)o),bbt_ang);
	bbOnDebugLeaveScope();
	return 0;
}
BBINT _openb3d_openb3dcore_TMatPtr_RotateYaw_f(struct openb3d_openb3dcore_TMatPtr_obj* o,BBFLOAT bbt_ang){
	((struct openb3d_openb3dcore_TMatPtr_obj*)bbNullObjectTest((BBObject*)o));
	struct BBDebugScope_2 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"RotateYaw",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TMatPtr",
				.var_address=&o
			},
			{
				BBDEBUGDECL_LOCAL,
				"ang",
				"f",
				.var_address=&bbt_ang
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x2aba017925a91539, 746, 0};
	bbOnDebugEnterStm(&__stmt_0);
	MatrixRotateYaw_(o->clas->f_GetInstance_pb_TTMatPtr((struct openb3d_openb3dcore_TMatPtr_obj*)o),bbt_ang);
	bbOnDebugLeaveScope();
	return 0;
}
BBINT _openb3d_openb3dcore_TMatPtr_RotateRoll_f(struct openb3d_openb3dcore_TMatPtr_obj* o,BBFLOAT bbt_ang){
	((struct openb3d_openb3dcore_TMatPtr_obj*)bbNullObjectTest((BBObject*)o));
	struct BBDebugScope_2 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"RotateRoll",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TMatPtr",
				.var_address=&o
			},
			{
				BBDEBUGDECL_LOCAL,
				"ang",
				"f",
				.var_address=&bbt_ang
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x2aba017925a91539, 755, 0};
	bbOnDebugEnterStm(&__stmt_0);
	MatrixRotateRoll_(o->clas->f_GetInstance_pb_TTMatPtr((struct openb3d_openb3dcore_TMatPtr_obj*)o),bbt_ang);
	bbOnDebugLeaveScope();
	return 0;
}
BBINT _openb3d_openb3dcore_TMatPtr_FromQuaternion_ffff(struct openb3d_openb3dcore_TMatPtr_obj* o,BBFLOAT bbt_x,BBFLOAT bbt_y,BBFLOAT bbt_z,BBFLOAT bbt_w){
	((struct openb3d_openb3dcore_TMatPtr_obj*)bbNullObjectTest((BBObject*)o));
	struct BBDebugScope_5 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"FromQuaternion",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TMatPtr",
				.var_address=&o
			},
			{
				BBDEBUGDECL_LOCAL,
				"x",
				"f",
				.var_address=&bbt_x
			},
			{
				BBDEBUGDECL_LOCAL,
				"y",
				"f",
				.var_address=&bbt_y
			},
			{
				BBDEBUGDECL_LOCAL,
				"z",
				"f",
				.var_address=&bbt_z
			},
			{
				BBDEBUGDECL_LOCAL,
				"w",
				"f",
				.var_address=&bbt_w
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x2aba017925a91539, 766, 0};
	bbOnDebugEnterStm(&__stmt_0);
	MatrixFromQuaternion_(o->clas->f_GetInstance_pb_TTMatPtr((struct openb3d_openb3dcore_TMatPtr_obj*)o),bbt_x,bbt_y,bbt_z,bbt_w);
	bbOnDebugLeaveScope();
	return 0;
}
BBINT _openb3d_openb3dcore_TMatPtr_TransformVec_vfvfvfi(struct openb3d_openb3dcore_TMatPtr_obj* o,BBFLOAT* bbt_rx,BBFLOAT* bbt_ry,BBFLOAT* bbt_rz,BBINT bbt_addTranslation){
	((struct openb3d_openb3dcore_TMatPtr_obj*)bbNullObjectTest((BBObject*)o));
	struct BBDebugScope_5 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"TransformVec",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TMatPtr",
				.var_address=&o
			},
			{
				BBDEBUGDECL_VARPARAM,
				"rx",
				"f",
				.var_address=&bbt_rx
			},
			{
				BBDEBUGDECL_VARPARAM,
				"ry",
				"f",
				.var_address=&bbt_ry
			},
			{
				BBDEBUGDECL_VARPARAM,
				"rz",
				"f",
				.var_address=&bbt_rz
			},
			{
				BBDEBUGDECL_LOCAL,
				"addTranslation",
				"i",
				.var_address=&bbt_addTranslation
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x2aba017925a91539, 775, 0};
	bbOnDebugEnterStm(&__stmt_0);
	MatrixTransformVec_(o->clas->f_GetInstance_pb_TTMatPtr((struct openb3d_openb3dcore_TMatPtr_obj*)o),&(*bbt_rx),&(*bbt_ry),&(*bbt_rz),bbt_addTranslation);
	bbOnDebugLeaveScope();
	return 0;
}
BBINT _openb3d_openb3dcore_TMatPtr_Transpose(struct openb3d_openb3dcore_TMatPtr_obj* o){
	((struct openb3d_openb3dcore_TMatPtr_obj*)bbNullObjectTest((BBObject*)o));
	struct BBDebugScope_1 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"Transpose",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TMatPtr",
				.var_address=&o
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x2aba017925a91539, 784, 0};
	bbOnDebugEnterStm(&__stmt_0);
	MatrixTranspose_(o->clas->f_GetInstance_pb_TTMatPtr((struct openb3d_openb3dcore_TMatPtr_obj*)o));
	bbOnDebugLeaveScope();
	return 0;
}
BBINT _openb3d_openb3dcore_TMatPtr_SetTranslate_fff(struct openb3d_openb3dcore_TMatPtr_obj* o,BBFLOAT bbt_x,BBFLOAT bbt_y,BBFLOAT bbt_z){
	((struct openb3d_openb3dcore_TMatPtr_obj*)bbNullObjectTest((BBObject*)o));
	struct BBDebugScope_4 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"SetTranslate",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TMatPtr",
				.var_address=&o
			},
			{
				BBDEBUGDECL_LOCAL,
				"x",
				"f",
				.var_address=&bbt_x
			},
			{
				BBDEBUGDECL_LOCAL,
				"y",
				"f",
				.var_address=&bbt_y
			},
			{
				BBDEBUGDECL_LOCAL,
				"z",
				"f",
				.var_address=&bbt_z
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x2aba017925a91539, 793, 0};
	bbOnDebugEnterStm(&__stmt_0);
	MatrixSetTranslate_(o->clas->f_GetInstance_pb_TTMatPtr((struct openb3d_openb3dcore_TMatPtr_obj*)o),bbt_x,bbt_y,bbt_z);
	bbOnDebugLeaveScope();
	return 0;
}
BBINT _openb3d_openb3dcore_TMatPtr_Multiply2_TTMatPtr(struct openb3d_openb3dcore_TMatPtr_obj* o,struct openb3d_openb3dcore_TMatPtr_obj* bbt_mat){
	((struct openb3d_openb3dcore_TMatPtr_obj*)bbNullObjectTest((BBObject*)o));
	struct BBDebugScope_2 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"Multiply2",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TMatPtr",
				.var_address=&o
			},
			{
				BBDEBUGDECL_LOCAL,
				"mat",
				":TMatPtr",
				.var_address=&bbt_mat
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x2aba017925a91539, 802, 0};
	bbOnDebugEnterStm(&__stmt_0);
	MatrixMultiply2_(o->clas->f_GetInstance_pb_TTMatPtr((struct openb3d_openb3dcore_TMatPtr_obj*)o),o->clas->f_GetInstance_pb_TTMatPtr((struct openb3d_openb3dcore_TMatPtr_obj*)bbt_mat));
	bbOnDebugLeaveScope();
	return 0;
}
BBFLOAT _openb3d_openb3dcore_TMatPtr_GetPitch(struct openb3d_openb3dcore_TMatPtr_obj* o){
	((struct openb3d_openb3dcore_TMatPtr_obj*)bbNullObjectTest((BBObject*)o));
	struct BBDebugScope_1 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"GetPitch",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TMatPtr",
				.var_address=&o
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x2aba017925a91539, 811, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbOnDebugLeaveScope();
	return MatrixGetPitch_(o->clas->f_GetInstance_pb_TTMatPtr((struct openb3d_openb3dcore_TMatPtr_obj*)o));
}
BBFLOAT _openb3d_openb3dcore_TMatPtr_GetYaw(struct openb3d_openb3dcore_TMatPtr_obj* o){
	((struct openb3d_openb3dcore_TMatPtr_obj*)bbNullObjectTest((BBObject*)o));
	struct BBDebugScope_1 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"GetYaw",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TMatPtr",
				.var_address=&o
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x2aba017925a91539, 820, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbOnDebugLeaveScope();
	return MatrixGetYaw_(o->clas->f_GetInstance_pb_TTMatPtr((struct openb3d_openb3dcore_TMatPtr_obj*)o));
}
BBFLOAT _openb3d_openb3dcore_TMatPtr_GetRoll(struct openb3d_openb3dcore_TMatPtr_obj* o){
	((struct openb3d_openb3dcore_TMatPtr_obj*)bbNullObjectTest((BBObject*)o));
	struct BBDebugScope_1 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"GetRoll",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TMatPtr",
				.var_address=&o
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x2aba017925a91539, 829, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbOnDebugLeaveScope();
	return MatrixGetRoll_(o->clas->f_GetInstance_pb_TTMatPtr((struct openb3d_openb3dcore_TMatPtr_obj*)o));
}
BBINT _openb3d_openb3dcore_TMatPtr_FromToRotation_ffffff(struct openb3d_openb3dcore_TMatPtr_obj* o,BBFLOAT bbt_ix,BBFLOAT bbt_iy,BBFLOAT bbt_iz,BBFLOAT bbt_jx,BBFLOAT bbt_jy,BBFLOAT bbt_jz){
	((struct openb3d_openb3dcore_TMatPtr_obj*)bbNullObjectTest((BBObject*)o));
	struct BBDebugScope_7 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"FromToRotation",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TMatPtr",
				.var_address=&o
			},
			{
				BBDEBUGDECL_LOCAL,
				"ix",
				"f",
				.var_address=&bbt_ix
			},
			{
				BBDEBUGDECL_LOCAL,
				"iy",
				"f",
				.var_address=&bbt_iy
			},
			{
				BBDEBUGDECL_LOCAL,
				"iz",
				"f",
				.var_address=&bbt_iz
			},
			{
				BBDEBUGDECL_LOCAL,
				"jx",
				"f",
				.var_address=&bbt_jx
			},
			{
				BBDEBUGDECL_LOCAL,
				"jy",
				"f",
				.var_address=&bbt_jy
			},
			{
				BBDEBUGDECL_LOCAL,
				"jz",
				"f",
				.var_address=&bbt_jz
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x2aba017925a91539, 838, 0};
	bbOnDebugEnterStm(&__stmt_0);
	MatrixFromToRotation_(o->clas->f_GetInstance_pb_TTMatPtr((struct openb3d_openb3dcore_TMatPtr_obj*)o),bbt_ix,bbt_iy,bbt_iz,bbt_jx,bbt_jy,bbt_jz);
	bbOnDebugLeaveScope();
	return 0;
}
BBINT _openb3d_openb3dcore_TMatPtr_ToQuat_vfvfvfvf(struct openb3d_openb3dcore_TMatPtr_obj* o,BBFLOAT* bbt_qx,BBFLOAT* bbt_qy,BBFLOAT* bbt_qz,BBFLOAT* bbt_qw){
	((struct openb3d_openb3dcore_TMatPtr_obj*)bbNullObjectTest((BBObject*)o));
	struct BBDebugScope_5 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"ToQuat",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TMatPtr",
				.var_address=&o
			},
			{
				BBDEBUGDECL_VARPARAM,
				"qx",
				"f",
				.var_address=&bbt_qx
			},
			{
				BBDEBUGDECL_VARPARAM,
				"qy",
				"f",
				.var_address=&bbt_qy
			},
			{
				BBDEBUGDECL_VARPARAM,
				"qz",
				"f",
				.var_address=&bbt_qz
			},
			{
				BBDEBUGDECL_VARPARAM,
				"qw",
				"f",
				.var_address=&bbt_qw
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x2aba017925a91539, 847, 0};
	bbOnDebugEnterStm(&__stmt_0);
	MatrixToQuat_(o->clas->f_GetInstance_pb_TTMatPtr((struct openb3d_openb3dcore_TMatPtr_obj*)o),&(*bbt_qx),&(*bbt_qy),&(*bbt_qz),&(*bbt_qw));
	bbOnDebugLeaveScope();
	return 0;
}
BBFLOAT openb3d_openb3dcore_TMatPtr_Magnitude_f_fff(BBFLOAT bbt_x,BBFLOAT bbt_y,BBFLOAT bbt_z){
	struct BBDebugScope_3 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"Magnitude",
		{
			{
				BBDEBUGDECL_LOCAL,
				"x",
				"f",
				.var_address=&bbt_x
			},
			{
				BBDEBUGDECL_LOCAL,
				"y",
				"f",
				.var_address=&bbt_y
			},
			{
				BBDEBUGDECL_LOCAL,
				"z",
				"f",
				.var_address=&bbt_z
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x2aba017925a91539, 857, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbOnDebugLeaveScope();
	return ((BBFLOAT)bbSqr((double)((BBDOUBLE)(((bbt_x*bbt_x)+(bbt_y*bbt_y))+(bbt_z*bbt_z)))));
}
BBINT openb3d_openb3dcore_TMatPtr_Quaternion_FromAngleAxis_i_ffffvfvfvfvf(BBFLOAT bbt_angle,BBFLOAT bbt_ax,BBFLOAT bbt_ay,BBFLOAT bbt_az,BBFLOAT* bbt_rx,BBFLOAT* bbt_ry,BBFLOAT* bbt_rz,BBFLOAT* bbt_rw){
	struct BBDebugScope_8 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"Quaternion_FromAngleAxis",
		{
			{
				BBDEBUGDECL_LOCAL,
				"angle",
				"f",
				.var_address=&bbt_angle
			},
			{
				BBDEBUGDECL_LOCAL,
				"ax",
				"f",
				.var_address=&bbt_ax
			},
			{
				BBDEBUGDECL_LOCAL,
				"ay",
				"f",
				.var_address=&bbt_ay
			},
			{
				BBDEBUGDECL_LOCAL,
				"az",
				"f",
				.var_address=&bbt_az
			},
			{
				BBDEBUGDECL_VARPARAM,
				"rx",
				"f",
				.var_address=&bbt_rx
			},
			{
				BBDEBUGDECL_VARPARAM,
				"ry",
				"f",
				.var_address=&bbt_ry
			},
			{
				BBDEBUGDECL_VARPARAM,
				"rz",
				"f",
				.var_address=&bbt_rz
			},
			{
				BBDEBUGDECL_VARPARAM,
				"rw",
				"f",
				.var_address=&bbt_rw
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x2aba017925a91539, 866, 0};
	bbOnDebugEnterStm(&__stmt_0);
	MatrixQuaternion_FromAngleAxis_(bbt_angle,bbt_ax,bbt_ay,bbt_az,&(*bbt_rx),&(*bbt_ry),&(*bbt_rz),&(*bbt_rw));
	bbOnDebugLeaveScope();
	return 0;
}
BBINT openb3d_openb3dcore_TMatPtr_Quaternion_MultiplyQuat_i_ffffffffvfvfvfvf(BBFLOAT bbt_x1,BBFLOAT bbt_y1,BBFLOAT bbt_z1,BBFLOAT bbt_w1,BBFLOAT bbt_x2,BBFLOAT bbt_y2,BBFLOAT bbt_z2,BBFLOAT bbt_w2,BBFLOAT* bbt_rx,BBFLOAT* bbt_ry,BBFLOAT* bbt_rz,BBFLOAT* bbt_rw){
	struct BBDebugScope_12 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"Quaternion_MultiplyQuat",
		{
			{
				BBDEBUGDECL_LOCAL,
				"x1",
				"f",
				.var_address=&bbt_x1
			},
			{
				BBDEBUGDECL_LOCAL,
				"y1",
				"f",
				.var_address=&bbt_y1
			},
			{
				BBDEBUGDECL_LOCAL,
				"z1",
				"f",
				.var_address=&bbt_z1
			},
			{
				BBDEBUGDECL_LOCAL,
				"w1",
				"f",
				.var_address=&bbt_w1
			},
			{
				BBDEBUGDECL_LOCAL,
				"x2",
				"f",
				.var_address=&bbt_x2
			},
			{
				BBDEBUGDECL_LOCAL,
				"y2",
				"f",
				.var_address=&bbt_y2
			},
			{
				BBDEBUGDECL_LOCAL,
				"z2",
				"f",
				.var_address=&bbt_z2
			},
			{
				BBDEBUGDECL_LOCAL,
				"w2",
				"f",
				.var_address=&bbt_w2
			},
			{
				BBDEBUGDECL_VARPARAM,
				"rx",
				"f",
				.var_address=&bbt_rx
			},
			{
				BBDEBUGDECL_VARPARAM,
				"ry",
				"f",
				.var_address=&bbt_ry
			},
			{
				BBDEBUGDECL_VARPARAM,
				"rz",
				"f",
				.var_address=&bbt_rz
			},
			{
				BBDEBUGDECL_VARPARAM,
				"rw",
				"f",
				.var_address=&bbt_rw
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x2aba017925a91539, 875, 0};
	bbOnDebugEnterStm(&__stmt_0);
	MatrixQuaternion_MultiplyQuat_(bbt_x1,bbt_y1,bbt_z1,bbt_w1,bbt_x2,bbt_y2,bbt_z2,bbt_w2,&(*bbt_rx),&(*bbt_ry),&(*bbt_rz),&(*bbt_rw));
	bbOnDebugLeaveScope();
	return 0;
}
BBINT openb3d_openb3dcore_TMatPtr_InterpolateMatrix_i_TTMatPtrTTMatPtrf(struct openb3d_openb3dcore_TMatPtr_obj* bbt_m,struct openb3d_openb3dcore_TMatPtr_obj* bbt_a,BBFLOAT bbt_alpha){
	struct BBDebugScope_3 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"InterpolateMatrix",
		{
			{
				BBDEBUGDECL_LOCAL,
				"m",
				":TMatPtr",
				.var_address=&bbt_m
			},
			{
				BBDEBUGDECL_LOCAL,
				"a",
				":TMatPtr",
				.var_address=&bbt_a
			},
			{
				BBDEBUGDECL_LOCAL,
				"alpha",
				"f",
				.var_address=&bbt_alpha
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x2aba017925a91539, 884, 0};
	bbOnDebugEnterStm(&__stmt_0);
	MatrixInterpolateMatrix_(openb3d_openb3dcore_TMatPtr_GetInstance_pb_TTMatPtr((struct openb3d_openb3dcore_TMatPtr_obj*)bbt_m),openb3d_openb3dcore_TMatPtr_GetInstance_pb_TTMatPtr((struct openb3d_openb3dcore_TMatPtr_obj*)bbt_a),bbt_alpha);
	bbOnDebugLeaveScope();
	return 0;
}
struct brl_map_ptrmap_TPtrMap_obj* openb3d_openb3dcore_TMatPtr_matptr_map;
struct BBDebugScope_42 openb3d_openb3dcore_TMatPtr_scope ={
	BBDEBUGSCOPE_USERTYPE,
	"TMatPtr",
	{
		{
			BBDEBUGDECL_FIELD,
			"grid",
			"*f",
			.field_offset=offsetof(struct openb3d_openb3dcore_TMatPtr_obj,_openb3d_openb3dcore_tmatptr_grid)
		},
		{
			BBDEBUGDECL_FIELD,
			"instance",
			"*b",
			.field_offset=offsetof(struct openb3d_openb3dcore_TMatPtr_obj,_openb3d_openb3dcore_tmatptr_instance)
		},
		{
			BBDEBUGDECL_GLOBAL,
			"matptr_map",
			":TPtrMap",
			.var_address=(void*)&openb3d_openb3dcore_TMatPtr_matptr_map
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"New",
			"()i",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_TMatPtr_New
		},
		{
			BBDEBUGDECL_TYPEFUNCTION,
			"CreateObject",
			"(*b):TMatPtr",
			.func_ptr=(BBFuncPtr)&openb3d_openb3dcore_TMatPtr_CreateObject_TTMatPtr_pb
		},
		{
			BBDEBUGDECL_TYPEFUNCTION,
			"FreeObject",
			"(*b)i",
			.func_ptr=(BBFuncPtr)&openb3d_openb3dcore_TMatPtr_FreeObject_i_pb
		},
		{
			BBDEBUGDECL_TYPEFUNCTION,
			"GetObject",
			"(*b):TMatPtr",
			.func_ptr=(BBFuncPtr)&openb3d_openb3dcore_TMatPtr_GetObject_TTMatPtr_pb
		},
		{
			BBDEBUGDECL_TYPEFUNCTION,
			"GetInstance",
			"(:TMatPtr)*b",
			.func_ptr=(BBFuncPtr)&openb3d_openb3dcore_TMatPtr_GetInstance_pb_TTMatPtr
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"InitFields",
			"()i",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_TMatPtr_InitFields
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"DebugFields",
			"(i,i)i",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_TMatPtr_DebugFields_ii
		},
		{
			BBDEBUGDECL_TYPEFUNCTION,
			"NewMatPtr",
			"():TMatPtr",
			.func_ptr=(BBFuncPtr)&openb3d_openb3dcore_TMatPtr_NewMatPtr_TTMatPtr
		},
		{
			BBDEBUGDECL_TYPEFUNCTION,
			"Create",
			"():TMatPtr",
			.func_ptr=(BBFuncPtr)&openb3d_openb3dcore_TMatPtr_Create_TTMatPtr
		},
		{
			BBDEBUGDECL_TYPEFUNCTION,
			"CopyMatrix",
			"(:TMatrix):TMatPtr",
			.func_ptr=(BBFuncPtr)&openb3d_openb3dcore_TMatPtr_CopyMatrix_TTMatPtr_TTMatrix
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"GetMatrix",
			"(:TMatrix):TMatPtr",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_TMatPtr_GetMatrix_TTMatrix
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"Copy",
			"():TMatPtr",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_TMatPtr_Copy
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"Overwrite",
			"(:TMatPtr)i",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_TMatPtr_Overwrite_TTMatPtr
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"GetInverse",
			"(:TMatPtr)i",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_TMatPtr_GetInverse_TTMatPtr
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"GetInverse2",
			"(:TMatPtr)i",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_TMatPtr_GetInverse2_TTMatPtr
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"LoadIdentity",
			"()i",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_TMatPtr_LoadIdentity
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"SetIdentity",
			"(f,f,f,f,f,f,f,f,f)i",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_TMatPtr_SetIdentity_fffffffff
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"GetMatrixScale",
			"():TVecPtr",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_TMatPtr_GetMatrixScale
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"Multiply",
			"(:TMatPtr)i",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_TMatPtr_Multiply_TTMatPtr
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"Translate",
			"(f,f,f)i",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_TMatPtr_Translate_fff
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"Scale",
			"(f,f,f)i",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_TMatPtr_Scale_fff
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"Rotate",
			"(f,f,f)i",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_TMatPtr_Rotate_fff
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"RotatePitch",
			"(f)i",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_TMatPtr_RotatePitch_f
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"RotateYaw",
			"(f)i",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_TMatPtr_RotateYaw_f
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"RotateRoll",
			"(f)i",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_TMatPtr_RotateRoll_f
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"FromQuaternion",
			"(f,f,f,f)i",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_TMatPtr_FromQuaternion_ffff
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"TransformVec",
			"(f,f,f,i)i",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_TMatPtr_TransformVec_vfvfvfi
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"Transpose",
			"()i",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_TMatPtr_Transpose
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"SetTranslate",
			"(f,f,f)i",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_TMatPtr_SetTranslate_fff
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"Multiply2",
			"(:TMatPtr)i",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_TMatPtr_Multiply2_TTMatPtr
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"GetPitch",
			"()f",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_TMatPtr_GetPitch
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"GetYaw",
			"()f",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_TMatPtr_GetYaw
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"GetRoll",
			"()f",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_TMatPtr_GetRoll
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"FromToRotation",
			"(f,f,f,f,f,f)i",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_TMatPtr_FromToRotation_ffffff
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"ToQuat",
			"(f,f,f,f)i",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_TMatPtr_ToQuat_vfvfvfvf
		},
		{
			BBDEBUGDECL_TYPEFUNCTION,
			"Magnitude",
			"(f,f,f)f",
			.func_ptr=(BBFuncPtr)&openb3d_openb3dcore_TMatPtr_Magnitude_f_fff
		},
		{
			BBDEBUGDECL_TYPEFUNCTION,
			"Quaternion_FromAngleAxis",
			"(f,f,f,f,f,f,f,f)i",
			.func_ptr=(BBFuncPtr)&openb3d_openb3dcore_TMatPtr_Quaternion_FromAngleAxis_i_ffffvfvfvfvf
		},
		{
			BBDEBUGDECL_TYPEFUNCTION,
			"Quaternion_MultiplyQuat",
			"(f,f,f,f,f,f,f,f,f,f,f,f)i",
			.func_ptr=(BBFuncPtr)&openb3d_openb3dcore_TMatPtr_Quaternion_MultiplyQuat_i_ffffffffvfvfvfvf
		},
		{
			BBDEBUGDECL_TYPEFUNCTION,
			"InterpolateMatrix",
			"(:TMatPtr,:TMatPtr,f)i",
			.func_ptr=(BBFuncPtr)&openb3d_openb3dcore_TMatPtr_InterpolateMatrix_i_TTMatPtrTTMatPtrf
		},
		{
			BBDEBUGDECL_END
		}
	}
};
struct BBClass_openb3d_openb3dcore_TMatPtr openb3d_openb3dcore_TMatPtr={
	&bbObjectClass,
	bbObjectFree,
	(BBDebugScope*)&openb3d_openb3dcore_TMatPtr_scope,
	sizeof(struct openb3d_openb3dcore_TMatPtr_obj),
	(void (*)(BBOBJECT))_openb3d_openb3dcore_TMatPtr_New,
	(void (*)(BBOBJECT))_openb3d_openb3dcore_TMatPtr_Delete,
	bbObjectToString,
	bbObjectCompare,
	bbObjectSendMessage,
	0,
	0,
	offsetof(struct openb3d_openb3dcore_TMatPtr_obj,_openb3d_openb3dcore_tmatptr_instance) - offsetof(struct openb3d_openb3dcore_TMatPtr_obj,_openb3d_openb3dcore_tmatptr_grid) + sizeof(BBBYTE*)
	,0
	,offsetof(struct openb3d_openb3dcore_TMatPtr_obj,_openb3d_openb3dcore_tmatptr_grid)
	,openb3d_openb3dcore_TMatPtr_CreateObject_TTMatPtr_pb
	,openb3d_openb3dcore_TMatPtr_FreeObject_i_pb
	,openb3d_openb3dcore_TMatPtr_GetObject_TTMatPtr_pb
	,openb3d_openb3dcore_TMatPtr_GetInstance_pb_TTMatPtr
	,_openb3d_openb3dcore_TMatPtr_InitFields
	,_openb3d_openb3dcore_TMatPtr_DebugFields_ii
	,openb3d_openb3dcore_TMatPtr_NewMatPtr_TTMatPtr
	,openb3d_openb3dcore_TMatPtr_Create_TTMatPtr
	,openb3d_openb3dcore_TMatPtr_CopyMatrix_TTMatPtr_TTMatrix
	,_openb3d_openb3dcore_TMatPtr_GetMatrix_TTMatrix
	,_openb3d_openb3dcore_TMatPtr_Copy
	,_openb3d_openb3dcore_TMatPtr_Overwrite_TTMatPtr
	,_openb3d_openb3dcore_TMatPtr_GetInverse_TTMatPtr
	,_openb3d_openb3dcore_TMatPtr_GetInverse2_TTMatPtr
	,_openb3d_openb3dcore_TMatPtr_LoadIdentity
	,_openb3d_openb3dcore_TMatPtr_SetIdentity_fffffffff
	,_openb3d_openb3dcore_TMatPtr_GetMatrixScale
	,_openb3d_openb3dcore_TMatPtr_Multiply_TTMatPtr
	,_openb3d_openb3dcore_TMatPtr_Translate_fff
	,_openb3d_openb3dcore_TMatPtr_Scale_fff
	,_openb3d_openb3dcore_TMatPtr_Rotate_fff
	,_openb3d_openb3dcore_TMatPtr_RotatePitch_f
	,_openb3d_openb3dcore_TMatPtr_RotateYaw_f
	,_openb3d_openb3dcore_TMatPtr_RotateRoll_f
	,_openb3d_openb3dcore_TMatPtr_FromQuaternion_ffff
	,_openb3d_openb3dcore_TMatPtr_TransformVec_vfvfvfi
	,_openb3d_openb3dcore_TMatPtr_Transpose
	,_openb3d_openb3dcore_TMatPtr_SetTranslate_fff
	,_openb3d_openb3dcore_TMatPtr_Multiply2_TTMatPtr
	,_openb3d_openb3dcore_TMatPtr_GetPitch
	,_openb3d_openb3dcore_TMatPtr_GetYaw
	,_openb3d_openb3dcore_TMatPtr_GetRoll
	,_openb3d_openb3dcore_TMatPtr_FromToRotation_ffffff
	,_openb3d_openb3dcore_TMatPtr_ToQuat_vfvfvfvf
	,openb3d_openb3dcore_TMatPtr_Magnitude_f_fff
	,openb3d_openb3dcore_TMatPtr_Quaternion_FromAngleAxis_i_ffffvfvfvfvf
	,openb3d_openb3dcore_TMatPtr_Quaternion_MultiplyQuat_i_ffffffffvfvfvfvf
	,openb3d_openb3dcore_TMatPtr_InterpolateMatrix_i_TTMatPtrTTMatPtrf
};

void _openb3d_openb3dcore_TQuaternion_New(struct openb3d_openb3dcore_TQuaternion_obj* o) {
	bbObjectCtor((BBOBJECT)o);
	o->clas = &openb3d_openb3dcore_TQuaternion;
	((struct openb3d_openb3dcore_TQuaternion_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tquaternion_w = .00000000f;
	((struct openb3d_openb3dcore_TQuaternion_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tquaternion_x = .00000000f;
	((struct openb3d_openb3dcore_TQuaternion_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tquaternion_y = .00000000f;
	((struct openb3d_openb3dcore_TQuaternion_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tquaternion_z = .00000000f;
	struct BBDebugScope __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"New",
		{
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x52d896bd406bc7a6, 43, 0};
	bbOnDebugEnterStm(&__stmt_0);
	if(openb3d_openb3dcore_TGlobal3D_Log_New!=0){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x52d896bd406bc7a6, 44, 0};
		bbOnDebugEnterStm(&__stmt_0);
		brl_blitz_DebugLog((BBString*)&_s661);
		bbOnDebugLeaveScope();
	}
	bbOnDebugLeaveScope();
}
void _openb3d_openb3dcore_TQuaternion_Delete(struct openb3d_openb3dcore_TQuaternion_obj* o) {
	struct BBDebugScope_1 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"Delete",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TQuaternion",
				.var_address=&o
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x52d896bd406bc7a6, 51, 0};
	bbOnDebugEnterStm(&__stmt_0);
	if(openb3d_openb3dcore_TGlobal3D_Log_Del!=0){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x52d896bd406bc7a6, 52, 0};
		bbOnDebugEnterStm(&__stmt_0);
		brl_blitz_DebugLog((BBString*)&_s662);
		bbOnDebugLeaveScope();
	}
	bbOnDebugLeaveScope();
	bbObjectDtor((BBOBJECT)o);
}
struct openb3d_openb3dcore_TQuaternion_obj* openb3d_openb3dcore_TQuaternion_Create_TTQuaternion_ffff(BBFLOAT bbt_w,BBFLOAT bbt_x,BBFLOAT bbt_y,BBFLOAT bbt_z){
	struct openb3d_openb3dcore_TQuaternion_obj* bbt_new_quat=(struct openb3d_openb3dcore_TQuaternion_obj*)((struct openb3d_openb3dcore_TQuaternion_obj*)&bbNullObject);
	struct BBDebugScope_5 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"Create",
		{
			{
				BBDEBUGDECL_LOCAL,
				"w",
				"f",
				.var_address=&bbt_w
			},
			{
				BBDEBUGDECL_LOCAL,
				"x",
				"f",
				.var_address=&bbt_x
			},
			{
				BBDEBUGDECL_LOCAL,
				"y",
				"f",
				.var_address=&bbt_y
			},
			{
				BBDEBUGDECL_LOCAL,
				"z",
				"f",
				.var_address=&bbt_z
			},
			{
				BBDEBUGDECL_LOCAL,
				"new_quat",
				":TQuaternion",
				.var_address=&bbt_new_quat
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x52d896bd406bc7a6, 15, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbt_new_quat=(struct openb3d_openb3dcore_TQuaternion_obj*)(struct openb3d_openb3dcore_TQuaternion_obj*)bbObjectAtomicNew((BBClass *)&openb3d_openb3dcore_TQuaternion);
	struct BBDebugStm __stmt_1 = {0x52d896bd406bc7a6, 16, 0};
	bbOnDebugEnterStm(&__stmt_1);
	((struct openb3d_openb3dcore_TQuaternion_obj*)bbNullObjectTest((BBObject*)bbt_new_quat))->_openb3d_openb3dcore_tquaternion_w =bbt_w;
	struct BBDebugStm __stmt_2 = {0x52d896bd406bc7a6, 17, 0};
	bbOnDebugEnterStm(&__stmt_2);
	((struct openb3d_openb3dcore_TQuaternion_obj*)bbNullObjectTest((BBObject*)bbt_new_quat))->_openb3d_openb3dcore_tquaternion_x =bbt_x;
	struct BBDebugStm __stmt_3 = {0x52d896bd406bc7a6, 18, 0};
	bbOnDebugEnterStm(&__stmt_3);
	((struct openb3d_openb3dcore_TQuaternion_obj*)bbNullObjectTest((BBObject*)bbt_new_quat))->_openb3d_openb3dcore_tquaternion_y =bbt_y;
	struct BBDebugStm __stmt_4 = {0x52d896bd406bc7a6, 19, 0};
	bbOnDebugEnterStm(&__stmt_4);
	((struct openb3d_openb3dcore_TQuaternion_obj*)bbNullObjectTest((BBObject*)bbt_new_quat))->_openb3d_openb3dcore_tquaternion_z =bbt_z;
	struct BBDebugStm __stmt_5 = {0x52d896bd406bc7a6, 20, 0};
	bbOnDebugEnterStm(&__stmt_5);
	bbOnDebugLeaveScope();
	return (struct openb3d_openb3dcore_TQuaternion_obj*)bbt_new_quat;
}
struct openb3d_openb3dcore_TQuaternion_obj* openb3d_openb3dcore_TQuaternion_CopyQuatPtr_TTQuaternion_TTQuatPtr(struct openb3d_openb3dcore_TQuatPtr_obj* bbt_quat){
	struct openb3d_openb3dcore_TQuaternion_obj* bbt_new_quat=(struct openb3d_openb3dcore_TQuaternion_obj*)((struct openb3d_openb3dcore_TQuaternion_obj*)&bbNullObject);
	struct BBDebugScope_2 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"CopyQuatPtr",
		{
			{
				BBDEBUGDECL_LOCAL,
				"quat",
				":TQuatPtr",
				.var_address=&bbt_quat
			},
			{
				BBDEBUGDECL_LOCAL,
				"new_quat",
				":TQuaternion",
				.var_address=&bbt_new_quat
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x52d896bd406bc7a6, 29, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbt_new_quat=(struct openb3d_openb3dcore_TQuaternion_obj*)(struct openb3d_openb3dcore_TQuaternion_obj*)bbObjectAtomicNew((BBClass *)&openb3d_openb3dcore_TQuaternion);
	struct BBDebugStm __stmt_1 = {0x52d896bd406bc7a6, 30, 0};
	bbOnDebugEnterStm(&__stmt_1);
	((struct openb3d_openb3dcore_TQuaternion_obj*)bbNullObjectTest((BBObject*)bbt_new_quat))->_openb3d_openb3dcore_tquaternion_w =((struct openb3d_openb3dcore_TQuatPtr_obj*)bbNullObjectTest((BBObject*)bbt_quat))->_openb3d_openb3dcore_tquatptr_w [0];
	struct BBDebugStm __stmt_2 = {0x52d896bd406bc7a6, 31, 0};
	bbOnDebugEnterStm(&__stmt_2);
	((struct openb3d_openb3dcore_TQuaternion_obj*)bbNullObjectTest((BBObject*)bbt_new_quat))->_openb3d_openb3dcore_tquaternion_x =((struct openb3d_openb3dcore_TQuatPtr_obj*)bbNullObjectTest((BBObject*)bbt_quat))->_openb3d_openb3dcore_tquatptr_x [0];
	struct BBDebugStm __stmt_3 = {0x52d896bd406bc7a6, 32, 0};
	bbOnDebugEnterStm(&__stmt_3);
	((struct openb3d_openb3dcore_TQuaternion_obj*)bbNullObjectTest((BBObject*)bbt_new_quat))->_openb3d_openb3dcore_tquaternion_y =((struct openb3d_openb3dcore_TQuatPtr_obj*)bbNullObjectTest((BBObject*)bbt_quat))->_openb3d_openb3dcore_tquatptr_y [0];
	struct BBDebugStm __stmt_4 = {0x52d896bd406bc7a6, 33, 0};
	bbOnDebugEnterStm(&__stmt_4);
	((struct openb3d_openb3dcore_TQuaternion_obj*)bbNullObjectTest((BBObject*)bbt_new_quat))->_openb3d_openb3dcore_tquaternion_z =((struct openb3d_openb3dcore_TQuatPtr_obj*)bbNullObjectTest((BBObject*)bbt_quat))->_openb3d_openb3dcore_tquatptr_z [0];
	struct BBDebugStm __stmt_5 = {0x52d896bd406bc7a6, 34, 0};
	bbOnDebugEnterStm(&__stmt_5);
	bbOnDebugLeaveScope();
	return (struct openb3d_openb3dcore_TQuaternion_obj*)bbt_new_quat;
}
struct openb3d_openb3dcore_TQuaternion_obj* _openb3d_openb3dcore_TQuaternion_GetQuatPtr_TTQuatPtr(struct openb3d_openb3dcore_TQuaternion_obj* o,struct openb3d_openb3dcore_TQuatPtr_obj* bbt_quat){
	((struct openb3d_openb3dcore_TQuaternion_obj*)bbNullObjectTest((BBObject*)o));
	struct BBDebugScope_2 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"GetQuatPtr",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TQuaternion",
				.var_address=&o
			},
			{
				BBDEBUGDECL_LOCAL,
				"quat",
				":TQuatPtr",
				.var_address=&bbt_quat
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x52d896bd406bc7a6, 62, 0};
	bbOnDebugEnterStm(&__stmt_0);
	((struct openb3d_openb3dcore_TQuaternion_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tquaternion_w =((struct openb3d_openb3dcore_TQuatPtr_obj*)bbNullObjectTest((BBObject*)bbt_quat))->_openb3d_openb3dcore_tquatptr_w [0];
	struct BBDebugStm __stmt_1 = {0x52d896bd406bc7a6, 63, 0};
	bbOnDebugEnterStm(&__stmt_1);
	((struct openb3d_openb3dcore_TQuaternion_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tquaternion_x =((struct openb3d_openb3dcore_TQuatPtr_obj*)bbNullObjectTest((BBObject*)bbt_quat))->_openb3d_openb3dcore_tquatptr_x [0];
	struct BBDebugStm __stmt_2 = {0x52d896bd406bc7a6, 64, 0};
	bbOnDebugEnterStm(&__stmt_2);
	((struct openb3d_openb3dcore_TQuaternion_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tquaternion_y =((struct openb3d_openb3dcore_TQuatPtr_obj*)bbNullObjectTest((BBObject*)bbt_quat))->_openb3d_openb3dcore_tquatptr_y [0];
	struct BBDebugStm __stmt_3 = {0x52d896bd406bc7a6, 65, 0};
	bbOnDebugEnterStm(&__stmt_3);
	((struct openb3d_openb3dcore_TQuaternion_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tquaternion_z =((struct openb3d_openb3dcore_TQuatPtr_obj*)bbNullObjectTest((BBObject*)bbt_quat))->_openb3d_openb3dcore_tquatptr_z [0];
	bbOnDebugLeaveScope();
	return (struct openb3d_openb3dcore_TQuaternion_obj*)((struct openb3d_openb3dcore_TQuaternion_obj*)&bbNullObject);
}
BBINT openb3d_openb3dcore_TQuaternion_QuatToMat_i_ffffvTTMatrix(BBFLOAT bbt_w,BBFLOAT bbt_x,BBFLOAT bbt_y,BBFLOAT bbt_z,struct openb3d_openb3dcore_TMatrix_obj** bbt_mat){
	BBARRAY bbt_q=(&bbEmptyArray);
	BBFLOAT bbt_xx=0;
	BBFLOAT bbt_yy=0;
	BBFLOAT bbt_zz=0;
	BBFLOAT bbt_xy=0;
	BBFLOAT bbt_xz=0;
	BBFLOAT bbt_yz=0;
	BBFLOAT bbt_wx=0;
	BBFLOAT bbt_wy=0;
	BBFLOAT bbt_wz=0;
	struct BBDebugScope_15 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"QuatToMat",
		{
			{
				BBDEBUGDECL_LOCAL,
				"w",
				"f",
				.var_address=&bbt_w
			},
			{
				BBDEBUGDECL_LOCAL,
				"x",
				"f",
				.var_address=&bbt_x
			},
			{
				BBDEBUGDECL_LOCAL,
				"y",
				"f",
				.var_address=&bbt_y
			},
			{
				BBDEBUGDECL_LOCAL,
				"z",
				"f",
				.var_address=&bbt_z
			},
			{
				BBDEBUGDECL_VARPARAM,
				"mat",
				":TMatrix",
				.var_address=&bbt_mat
			},
			{
				BBDEBUGDECL_LOCAL,
				"q",
				"[]f",
				.var_address=&bbt_q
			},
			{
				BBDEBUGDECL_LOCAL,
				"xx",
				"f",
				.var_address=&bbt_xx
			},
			{
				BBDEBUGDECL_LOCAL,
				"yy",
				"f",
				.var_address=&bbt_yy
			},
			{
				BBDEBUGDECL_LOCAL,
				"zz",
				"f",
				.var_address=&bbt_zz
			},
			{
				BBDEBUGDECL_LOCAL,
				"xy",
				"f",
				.var_address=&bbt_xy
			},
			{
				BBDEBUGDECL_LOCAL,
				"xz",
				"f",
				.var_address=&bbt_xz
			},
			{
				BBDEBUGDECL_LOCAL,
				"yz",
				"f",
				.var_address=&bbt_yz
			},
			{
				BBDEBUGDECL_LOCAL,
				"wx",
				"f",
				.var_address=&bbt_wx
			},
			{
				BBDEBUGDECL_LOCAL,
				"wy",
				"f",
				.var_address=&bbt_wy
			},
			{
				BBDEBUGDECL_LOCAL,
				"wz",
				"f",
				.var_address=&bbt_wz
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x52d896bd406bc7a6, 74, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbt_q=bbArrayNew1D("f", 4);
	struct BBDebugStm __stmt_1 = {0x52d896bd406bc7a6, 75, 0};
	bbOnDebugEnterStm(&__stmt_1);
	((BBFLOAT*)BBARRAYDATAINDEX((bbt_q),(bbt_q)->dims,0U))[0U]=bbt_w;
	struct BBDebugStm __stmt_2 = {0x52d896bd406bc7a6, 76, 0};
	bbOnDebugEnterStm(&__stmt_2);
	((BBFLOAT*)BBARRAYDATAINDEX((bbt_q),(bbt_q)->dims,1U))[1U]=bbt_x;
	struct BBDebugStm __stmt_3 = {0x52d896bd406bc7a6, 77, 0};
	bbOnDebugEnterStm(&__stmt_3);
	((BBFLOAT*)BBARRAYDATAINDEX((bbt_q),(bbt_q)->dims,2U))[2U]=bbt_y;
	struct BBDebugStm __stmt_4 = {0x52d896bd406bc7a6, 78, 0};
	bbOnDebugEnterStm(&__stmt_4);
	((BBFLOAT*)BBARRAYDATAINDEX((bbt_q),(bbt_q)->dims,3U))[3U]=bbt_z;
	struct BBDebugStm __stmt_5 = {0x52d896bd406bc7a6, 80, 0};
	bbOnDebugEnterStm(&__stmt_5);
	bbt_xx=(((BBFLOAT*)BBARRAYDATAINDEX((bbt_q),(bbt_q)->dims,1U))[1U]*((BBFLOAT*)BBARRAYDATAINDEX((bbt_q),(bbt_q)->dims,1U))[1U]);
	struct BBDebugStm __stmt_6 = {0x52d896bd406bc7a6, 81, 0};
	bbOnDebugEnterStm(&__stmt_6);
	bbt_yy=(((BBFLOAT*)BBARRAYDATAINDEX((bbt_q),(bbt_q)->dims,2U))[2U]*((BBFLOAT*)BBARRAYDATAINDEX((bbt_q),(bbt_q)->dims,2U))[2U]);
	struct BBDebugStm __stmt_7 = {0x52d896bd406bc7a6, 82, 0};
	bbOnDebugEnterStm(&__stmt_7);
	bbt_zz=(((BBFLOAT*)BBARRAYDATAINDEX((bbt_q),(bbt_q)->dims,3U))[3U]*((BBFLOAT*)BBARRAYDATAINDEX((bbt_q),(bbt_q)->dims,3U))[3U]);
	struct BBDebugStm __stmt_8 = {0x52d896bd406bc7a6, 83, 0};
	bbOnDebugEnterStm(&__stmt_8);
	bbt_xy=(((BBFLOAT*)BBARRAYDATAINDEX((bbt_q),(bbt_q)->dims,1U))[1U]*((BBFLOAT*)BBARRAYDATAINDEX((bbt_q),(bbt_q)->dims,2U))[2U]);
	struct BBDebugStm __stmt_9 = {0x52d896bd406bc7a6, 84, 0};
	bbOnDebugEnterStm(&__stmt_9);
	bbt_xz=(((BBFLOAT*)BBARRAYDATAINDEX((bbt_q),(bbt_q)->dims,1U))[1U]*((BBFLOAT*)BBARRAYDATAINDEX((bbt_q),(bbt_q)->dims,3U))[3U]);
	struct BBDebugStm __stmt_10 = {0x52d896bd406bc7a6, 85, 0};
	bbOnDebugEnterStm(&__stmt_10);
	bbt_yz=(((BBFLOAT*)BBARRAYDATAINDEX((bbt_q),(bbt_q)->dims,2U))[2U]*((BBFLOAT*)BBARRAYDATAINDEX((bbt_q),(bbt_q)->dims,3U))[3U]);
	struct BBDebugStm __stmt_11 = {0x52d896bd406bc7a6, 86, 0};
	bbOnDebugEnterStm(&__stmt_11);
	bbt_wx=(((BBFLOAT*)BBARRAYDATAINDEX((bbt_q),(bbt_q)->dims,0U))[0U]*((BBFLOAT*)BBARRAYDATAINDEX((bbt_q),(bbt_q)->dims,1U))[1U]);
	struct BBDebugStm __stmt_12 = {0x52d896bd406bc7a6, 87, 0};
	bbOnDebugEnterStm(&__stmt_12);
	bbt_wy=(((BBFLOAT*)BBARRAYDATAINDEX((bbt_q),(bbt_q)->dims,0U))[0U]*((BBFLOAT*)BBARRAYDATAINDEX((bbt_q),(bbt_q)->dims,2U))[2U]);
	struct BBDebugStm __stmt_13 = {0x52d896bd406bc7a6, 88, 0};
	bbOnDebugEnterStm(&__stmt_13);
	bbt_wz=(((BBFLOAT*)BBARRAYDATAINDEX((bbt_q),(bbt_q)->dims,0U))[0U]*((BBFLOAT*)BBARRAYDATAINDEX((bbt_q),(bbt_q)->dims,3U))[3U]);
	struct BBDebugStm __stmt_14 = {0x52d896bd406bc7a6, 90, 0};
	bbOnDebugEnterStm(&__stmt_14);
	BBUINT* bbt_=((BBARRAY)((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)(*bbt_mat)))->_openb3d_openb3dcore_tmatrix_grid )->scales + 1;
	((BBFLOAT*)BBARRAYDATAINDEX((((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)(*bbt_mat)))->_openb3d_openb3dcore_tmatrix_grid ),(((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)(*bbt_mat)))->_openb3d_openb3dcore_tmatrix_grid )->dims,(*(bbt_)) * 0U + 0U))[(*(bbt_)) * 0U + 0U]=(1.00000000f-(2.00000000f*(bbt_yy+bbt_zz)));
	struct BBDebugStm __stmt_15 = {0x52d896bd406bc7a6, 91, 0};
	bbOnDebugEnterStm(&__stmt_15);
	BBUINT* bbt_2=((BBARRAY)((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)(*bbt_mat)))->_openb3d_openb3dcore_tmatrix_grid )->scales + 1;
	((BBFLOAT*)BBARRAYDATAINDEX((((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)(*bbt_mat)))->_openb3d_openb3dcore_tmatrix_grid ),(((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)(*bbt_mat)))->_openb3d_openb3dcore_tmatrix_grid )->dims,(*(bbt_2)) * 0U + 1U))[(*(bbt_2)) * 0U + 1U]=(2.00000000f*(bbt_xy-bbt_wz));
	struct BBDebugStm __stmt_16 = {0x52d896bd406bc7a6, 92, 0};
	bbOnDebugEnterStm(&__stmt_16);
	BBUINT* bbt_3=((BBARRAY)((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)(*bbt_mat)))->_openb3d_openb3dcore_tmatrix_grid )->scales + 1;
	((BBFLOAT*)BBARRAYDATAINDEX((((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)(*bbt_mat)))->_openb3d_openb3dcore_tmatrix_grid ),(((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)(*bbt_mat)))->_openb3d_openb3dcore_tmatrix_grid )->dims,(*(bbt_3)) * 0U + 2U))[(*(bbt_3)) * 0U + 2U]=(2.00000000f*(bbt_xz+bbt_wy));
	struct BBDebugStm __stmt_17 = {0x52d896bd406bc7a6, 93, 0};
	bbOnDebugEnterStm(&__stmt_17);
	BBUINT* bbt_4=((BBARRAY)((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)(*bbt_mat)))->_openb3d_openb3dcore_tmatrix_grid )->scales + 1;
	((BBFLOAT*)BBARRAYDATAINDEX((((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)(*bbt_mat)))->_openb3d_openb3dcore_tmatrix_grid ),(((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)(*bbt_mat)))->_openb3d_openb3dcore_tmatrix_grid )->dims,(*(bbt_4)) * 1U + 0U))[(*(bbt_4)) * 1U + 0U]=(2.00000000f*(bbt_xy+bbt_wz));
	struct BBDebugStm __stmt_18 = {0x52d896bd406bc7a6, 94, 0};
	bbOnDebugEnterStm(&__stmt_18);
	BBUINT* bbt_5=((BBARRAY)((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)(*bbt_mat)))->_openb3d_openb3dcore_tmatrix_grid )->scales + 1;
	((BBFLOAT*)BBARRAYDATAINDEX((((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)(*bbt_mat)))->_openb3d_openb3dcore_tmatrix_grid ),(((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)(*bbt_mat)))->_openb3d_openb3dcore_tmatrix_grid )->dims,(*(bbt_5)) * 1U + 1U))[(*(bbt_5)) * 1U + 1U]=(1.00000000f-(2.00000000f*(bbt_xx+bbt_zz)));
	struct BBDebugStm __stmt_19 = {0x52d896bd406bc7a6, 95, 0};
	bbOnDebugEnterStm(&__stmt_19);
	BBUINT* bbt_6=((BBARRAY)((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)(*bbt_mat)))->_openb3d_openb3dcore_tmatrix_grid )->scales + 1;
	((BBFLOAT*)BBARRAYDATAINDEX((((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)(*bbt_mat)))->_openb3d_openb3dcore_tmatrix_grid ),(((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)(*bbt_mat)))->_openb3d_openb3dcore_tmatrix_grid )->dims,(*(bbt_6)) * 1U + 2U))[(*(bbt_6)) * 1U + 2U]=(2.00000000f*(bbt_yz-bbt_wx));
	struct BBDebugStm __stmt_20 = {0x52d896bd406bc7a6, 96, 0};
	bbOnDebugEnterStm(&__stmt_20);
	BBUINT* bbt_7=((BBARRAY)((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)(*bbt_mat)))->_openb3d_openb3dcore_tmatrix_grid )->scales + 1;
	((BBFLOAT*)BBARRAYDATAINDEX((((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)(*bbt_mat)))->_openb3d_openb3dcore_tmatrix_grid ),(((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)(*bbt_mat)))->_openb3d_openb3dcore_tmatrix_grid )->dims,(*(bbt_7)) * 2U + 0U))[(*(bbt_7)) * 2U + 0U]=(2.00000000f*(bbt_xz-bbt_wy));
	struct BBDebugStm __stmt_21 = {0x52d896bd406bc7a6, 97, 0};
	bbOnDebugEnterStm(&__stmt_21);
	BBUINT* bbt_8=((BBARRAY)((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)(*bbt_mat)))->_openb3d_openb3dcore_tmatrix_grid )->scales + 1;
	((BBFLOAT*)BBARRAYDATAINDEX((((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)(*bbt_mat)))->_openb3d_openb3dcore_tmatrix_grid ),(((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)(*bbt_mat)))->_openb3d_openb3dcore_tmatrix_grid )->dims,(*(bbt_8)) * 2U + 1U))[(*(bbt_8)) * 2U + 1U]=(2.00000000f*(bbt_yz+bbt_wx));
	struct BBDebugStm __stmt_22 = {0x52d896bd406bc7a6, 98, 0};
	bbOnDebugEnterStm(&__stmt_22);
	BBUINT* bbt_9=((BBARRAY)((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)(*bbt_mat)))->_openb3d_openb3dcore_tmatrix_grid )->scales + 1;
	((BBFLOAT*)BBARRAYDATAINDEX((((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)(*bbt_mat)))->_openb3d_openb3dcore_tmatrix_grid ),(((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)(*bbt_mat)))->_openb3d_openb3dcore_tmatrix_grid )->dims,(*(bbt_9)) * 2U + 2U))[(*(bbt_9)) * 2U + 2U]=(1.00000000f-(2.00000000f*(bbt_xx+bbt_yy)));
	struct BBDebugStm __stmt_23 = {0x52d896bd406bc7a6, 99, 0};
	bbOnDebugEnterStm(&__stmt_23);
	BBUINT* bbt_10=((BBARRAY)((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)(*bbt_mat)))->_openb3d_openb3dcore_tmatrix_grid )->scales + 1;
	((BBFLOAT*)BBARRAYDATAINDEX((((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)(*bbt_mat)))->_openb3d_openb3dcore_tmatrix_grid ),(((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)(*bbt_mat)))->_openb3d_openb3dcore_tmatrix_grid )->dims,(*(bbt_10)) * 3U + 3U))[(*(bbt_10)) * 3U + 3U]=1.00000000f;
	struct BBDebugStm __stmt_24 = {0x52d896bd406bc7a6, 101, 0};
	bbOnDebugEnterStm(&__stmt_24);
	{
		BBINT bbt_iy=0;
		for(;(bbt_iy<=3);bbt_iy=(bbt_iy+1)){
			struct BBDebugScope_1 __scope = {
				BBDEBUGSCOPE_LOCALBLOCK,
				0,
				{
					{
						BBDEBUGDECL_LOCAL,
						"iy",
						"i",
						.var_address=&bbt_iy
					},
					{
						BBDEBUGDECL_END
					}
				}
			};
			bbOnDebugEnterScope((BBDebugScope *)&__scope);
			struct BBDebugStm __stmt_0 = {0x52d896bd406bc7a6, 102, 0};
			bbOnDebugEnterStm(&__stmt_0);
			{
				BBINT bbt_ix=0;
				for(;(bbt_ix<=3);bbt_ix=(bbt_ix+1)){
					struct BBDebugScope_1 __scope = {
						BBDEBUGSCOPE_LOCALBLOCK,
						0,
						{
							{
								BBDEBUGDECL_LOCAL,
								"ix",
								"i",
								.var_address=&bbt_ix
							},
							{
								BBDEBUGDECL_END
							}
						}
					};
					bbOnDebugEnterScope((BBDebugScope *)&__scope);
					struct BBDebugStm __stmt_0 = {0x52d896bd406bc7a6, 103, 0};
					bbOnDebugEnterStm(&__stmt_0);
					BBUINT* bbt_11=((BBARRAY)((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)(*bbt_mat)))->_openb3d_openb3dcore_tmatrix_grid )->scales + 1;
					bbt_xx=((BBFLOAT*)BBARRAYDATAINDEX((((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)(*bbt_mat)))->_openb3d_openb3dcore_tmatrix_grid ),(((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)(*bbt_mat)))->_openb3d_openb3dcore_tmatrix_grid )->dims,(*(bbt_11)) * ((BBUINT)bbt_ix) + ((BBUINT)bbt_iy)))[(*(bbt_11)) * ((BBUINT)bbt_ix) + ((BBUINT)bbt_iy)];
					struct BBDebugStm __stmt_1 = {0x52d896bd406bc7a6, 104, 0};
					bbOnDebugEnterStm(&__stmt_1);
					if((bbt_xx<0.0001f) && (bbt_xx>-0.0001f)){
						struct BBDebugScope __scope = {
							BBDEBUGSCOPE_LOCALBLOCK,
							0,
							{
								{
									BBDEBUGDECL_END
								}
							}
						};
						bbOnDebugEnterScope((BBDebugScope *)&__scope);
						struct BBDebugStm __stmt_0 = {0x52d896bd406bc7a6, 104, 0};
						bbOnDebugEnterStm(&__stmt_0);
						bbt_xx=0.00000000f;
						bbOnDebugLeaveScope();
					}
					struct BBDebugStm __stmt_2 = {0x52d896bd406bc7a6, 105, 0};
					bbOnDebugEnterStm(&__stmt_2);
					BBUINT* bbt_12=((BBARRAY)((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)(*bbt_mat)))->_openb3d_openb3dcore_tmatrix_grid )->scales + 1;
					((BBFLOAT*)BBARRAYDATAINDEX((((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)(*bbt_mat)))->_openb3d_openb3dcore_tmatrix_grid ),(((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)(*bbt_mat)))->_openb3d_openb3dcore_tmatrix_grid )->dims,(*(bbt_12)) * ((BBUINT)bbt_ix) + ((BBUINT)bbt_iy)))[(*(bbt_12)) * ((BBUINT)bbt_ix) + ((BBUINT)bbt_iy)]=bbt_xx;
					bbOnDebugLeaveScope();
				}
			}
			bbOnDebugLeaveScope();
		}
	}
	bbOnDebugLeaveScope();
	return 0;
}
BBINT openb3d_openb3dcore_TQuaternion_QuatToEuler_i_ffffvfvfvf(BBFLOAT bbt_w,BBFLOAT bbt_x,BBFLOAT bbt_y,BBFLOAT bbt_z,BBFLOAT* bbt_pitch,BBFLOAT* bbt_yaw,BBFLOAT* bbt_roll){
	BBARRAY bbt_q=(&bbEmptyArray);
	BBFLOAT bbt_xx=0;
	BBFLOAT bbt_yy=0;
	BBFLOAT bbt_zz=0;
	BBFLOAT bbt_xy=0;
	BBFLOAT bbt_xz=0;
	BBFLOAT bbt_yz=0;
	BBFLOAT bbt_wx=0;
	BBFLOAT bbt_wy=0;
	BBFLOAT bbt_wz=0;
	struct openb3d_openb3dcore_TMatrix_obj* bbt_mat=(struct openb3d_openb3dcore_TMatrix_obj*)((struct openb3d_openb3dcore_TMatrix_obj*)&bbNullObject);
	struct BBDebugScope_18 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"QuatToEuler",
		{
			{
				BBDEBUGDECL_LOCAL,
				"w",
				"f",
				.var_address=&bbt_w
			},
			{
				BBDEBUGDECL_LOCAL,
				"x",
				"f",
				.var_address=&bbt_x
			},
			{
				BBDEBUGDECL_LOCAL,
				"y",
				"f",
				.var_address=&bbt_y
			},
			{
				BBDEBUGDECL_LOCAL,
				"z",
				"f",
				.var_address=&bbt_z
			},
			{
				BBDEBUGDECL_VARPARAM,
				"pitch",
				"f",
				.var_address=&bbt_pitch
			},
			{
				BBDEBUGDECL_VARPARAM,
				"yaw",
				"f",
				.var_address=&bbt_yaw
			},
			{
				BBDEBUGDECL_VARPARAM,
				"roll",
				"f",
				.var_address=&bbt_roll
			},
			{
				BBDEBUGDECL_LOCAL,
				"q",
				"[]f",
				.var_address=&bbt_q
			},
			{
				BBDEBUGDECL_LOCAL,
				"xx",
				"f",
				.var_address=&bbt_xx
			},
			{
				BBDEBUGDECL_LOCAL,
				"yy",
				"f",
				.var_address=&bbt_yy
			},
			{
				BBDEBUGDECL_LOCAL,
				"zz",
				"f",
				.var_address=&bbt_zz
			},
			{
				BBDEBUGDECL_LOCAL,
				"xy",
				"f",
				.var_address=&bbt_xy
			},
			{
				BBDEBUGDECL_LOCAL,
				"xz",
				"f",
				.var_address=&bbt_xz
			},
			{
				BBDEBUGDECL_LOCAL,
				"yz",
				"f",
				.var_address=&bbt_yz
			},
			{
				BBDEBUGDECL_LOCAL,
				"wx",
				"f",
				.var_address=&bbt_wx
			},
			{
				BBDEBUGDECL_LOCAL,
				"wy",
				"f",
				.var_address=&bbt_wy
			},
			{
				BBDEBUGDECL_LOCAL,
				"wz",
				"f",
				.var_address=&bbt_wz
			},
			{
				BBDEBUGDECL_LOCAL,
				"mat",
				":TMatrix",
				.var_address=&bbt_mat
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x52d896bd406bc7a6, 116, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbt_q=bbArrayNew1D("f", 4);
	struct BBDebugStm __stmt_1 = {0x52d896bd406bc7a6, 117, 0};
	bbOnDebugEnterStm(&__stmt_1);
	((BBFLOAT*)BBARRAYDATAINDEX((bbt_q),(bbt_q)->dims,0U))[0U]=bbt_w;
	struct BBDebugStm __stmt_2 = {0x52d896bd406bc7a6, 118, 0};
	bbOnDebugEnterStm(&__stmt_2);
	((BBFLOAT*)BBARRAYDATAINDEX((bbt_q),(bbt_q)->dims,1U))[1U]=bbt_x;
	struct BBDebugStm __stmt_3 = {0x52d896bd406bc7a6, 119, 0};
	bbOnDebugEnterStm(&__stmt_3);
	((BBFLOAT*)BBARRAYDATAINDEX((bbt_q),(bbt_q)->dims,2U))[2U]=bbt_y;
	struct BBDebugStm __stmt_4 = {0x52d896bd406bc7a6, 120, 0};
	bbOnDebugEnterStm(&__stmt_4);
	((BBFLOAT*)BBARRAYDATAINDEX((bbt_q),(bbt_q)->dims,3U))[3U]=bbt_z;
	struct BBDebugStm __stmt_5 = {0x52d896bd406bc7a6, 122, 0};
	bbOnDebugEnterStm(&__stmt_5);
	bbt_xx=(((BBFLOAT*)BBARRAYDATAINDEX((bbt_q),(bbt_q)->dims,1U))[1U]*((BBFLOAT*)BBARRAYDATAINDEX((bbt_q),(bbt_q)->dims,1U))[1U]);
	struct BBDebugStm __stmt_6 = {0x52d896bd406bc7a6, 123, 0};
	bbOnDebugEnterStm(&__stmt_6);
	bbt_yy=(((BBFLOAT*)BBARRAYDATAINDEX((bbt_q),(bbt_q)->dims,2U))[2U]*((BBFLOAT*)BBARRAYDATAINDEX((bbt_q),(bbt_q)->dims,2U))[2U]);
	struct BBDebugStm __stmt_7 = {0x52d896bd406bc7a6, 124, 0};
	bbOnDebugEnterStm(&__stmt_7);
	bbt_zz=(((BBFLOAT*)BBARRAYDATAINDEX((bbt_q),(bbt_q)->dims,3U))[3U]*((BBFLOAT*)BBARRAYDATAINDEX((bbt_q),(bbt_q)->dims,3U))[3U]);
	struct BBDebugStm __stmt_8 = {0x52d896bd406bc7a6, 125, 0};
	bbOnDebugEnterStm(&__stmt_8);
	bbt_xy=(((BBFLOAT*)BBARRAYDATAINDEX((bbt_q),(bbt_q)->dims,1U))[1U]*((BBFLOAT*)BBARRAYDATAINDEX((bbt_q),(bbt_q)->dims,2U))[2U]);
	struct BBDebugStm __stmt_9 = {0x52d896bd406bc7a6, 126, 0};
	bbOnDebugEnterStm(&__stmt_9);
	bbt_xz=(((BBFLOAT*)BBARRAYDATAINDEX((bbt_q),(bbt_q)->dims,1U))[1U]*((BBFLOAT*)BBARRAYDATAINDEX((bbt_q),(bbt_q)->dims,3U))[3U]);
	struct BBDebugStm __stmt_10 = {0x52d896bd406bc7a6, 127, 0};
	bbOnDebugEnterStm(&__stmt_10);
	bbt_yz=(((BBFLOAT*)BBARRAYDATAINDEX((bbt_q),(bbt_q)->dims,2U))[2U]*((BBFLOAT*)BBARRAYDATAINDEX((bbt_q),(bbt_q)->dims,3U))[3U]);
	struct BBDebugStm __stmt_11 = {0x52d896bd406bc7a6, 128, 0};
	bbOnDebugEnterStm(&__stmt_11);
	bbt_wx=(((BBFLOAT*)BBARRAYDATAINDEX((bbt_q),(bbt_q)->dims,0U))[0U]*((BBFLOAT*)BBARRAYDATAINDEX((bbt_q),(bbt_q)->dims,1U))[1U]);
	struct BBDebugStm __stmt_12 = {0x52d896bd406bc7a6, 129, 0};
	bbOnDebugEnterStm(&__stmt_12);
	bbt_wy=(((BBFLOAT*)BBARRAYDATAINDEX((bbt_q),(bbt_q)->dims,0U))[0U]*((BBFLOAT*)BBARRAYDATAINDEX((bbt_q),(bbt_q)->dims,2U))[2U]);
	struct BBDebugStm __stmt_13 = {0x52d896bd406bc7a6, 130, 0};
	bbOnDebugEnterStm(&__stmt_13);
	bbt_wz=(((BBFLOAT*)BBARRAYDATAINDEX((bbt_q),(bbt_q)->dims,0U))[0U]*((BBFLOAT*)BBARRAYDATAINDEX((bbt_q),(bbt_q)->dims,3U))[3U]);
	struct BBDebugStm __stmt_14 = {0x52d896bd406bc7a6, 132, 0};
	bbOnDebugEnterStm(&__stmt_14);
	bbt_mat=(struct openb3d_openb3dcore_TMatrix_obj*)(struct openb3d_openb3dcore_TMatrix_obj*)bbObjectNew((BBClass *)&openb3d_openb3dcore_TMatrix);
	struct BBDebugStm __stmt_15 = {0x52d896bd406bc7a6, 134, 0};
	bbOnDebugEnterStm(&__stmt_15);
	BBUINT* bbt_=((BBARRAY)((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)bbt_mat))->_openb3d_openb3dcore_tmatrix_grid )->scales + 1;
	((BBFLOAT*)BBARRAYDATAINDEX((((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)bbt_mat))->_openb3d_openb3dcore_tmatrix_grid ),(((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)bbt_mat))->_openb3d_openb3dcore_tmatrix_grid )->dims,(*(bbt_)) * 0U + 0U))[(*(bbt_)) * 0U + 0U]=(1.00000000f-(2.00000000f*(bbt_yy+bbt_zz)));
	struct BBDebugStm __stmt_16 = {0x52d896bd406bc7a6, 135, 0};
	bbOnDebugEnterStm(&__stmt_16);
	BBUINT* bbt_2=((BBARRAY)((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)bbt_mat))->_openb3d_openb3dcore_tmatrix_grid )->scales + 1;
	((BBFLOAT*)BBARRAYDATAINDEX((((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)bbt_mat))->_openb3d_openb3dcore_tmatrix_grid ),(((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)bbt_mat))->_openb3d_openb3dcore_tmatrix_grid )->dims,(*(bbt_2)) * 0U + 1U))[(*(bbt_2)) * 0U + 1U]=(2.00000000f*(bbt_xy-bbt_wz));
	struct BBDebugStm __stmt_17 = {0x52d896bd406bc7a6, 136, 0};
	bbOnDebugEnterStm(&__stmt_17);
	BBUINT* bbt_3=((BBARRAY)((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)bbt_mat))->_openb3d_openb3dcore_tmatrix_grid )->scales + 1;
	((BBFLOAT*)BBARRAYDATAINDEX((((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)bbt_mat))->_openb3d_openb3dcore_tmatrix_grid ),(((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)bbt_mat))->_openb3d_openb3dcore_tmatrix_grid )->dims,(*(bbt_3)) * 0U + 2U))[(*(bbt_3)) * 0U + 2U]=(2.00000000f*(bbt_xz+bbt_wy));
	struct BBDebugStm __stmt_18 = {0x52d896bd406bc7a6, 137, 0};
	bbOnDebugEnterStm(&__stmt_18);
	BBUINT* bbt_4=((BBARRAY)((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)bbt_mat))->_openb3d_openb3dcore_tmatrix_grid )->scales + 1;
	((BBFLOAT*)BBARRAYDATAINDEX((((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)bbt_mat))->_openb3d_openb3dcore_tmatrix_grid ),(((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)bbt_mat))->_openb3d_openb3dcore_tmatrix_grid )->dims,(*(bbt_4)) * 1U + 0U))[(*(bbt_4)) * 1U + 0U]=(2.00000000f*(bbt_xy+bbt_wz));
	struct BBDebugStm __stmt_19 = {0x52d896bd406bc7a6, 138, 0};
	bbOnDebugEnterStm(&__stmt_19);
	BBUINT* bbt_5=((BBARRAY)((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)bbt_mat))->_openb3d_openb3dcore_tmatrix_grid )->scales + 1;
	((BBFLOAT*)BBARRAYDATAINDEX((((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)bbt_mat))->_openb3d_openb3dcore_tmatrix_grid ),(((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)bbt_mat))->_openb3d_openb3dcore_tmatrix_grid )->dims,(*(bbt_5)) * 1U + 1U))[(*(bbt_5)) * 1U + 1U]=(1.00000000f-(2.00000000f*(bbt_xx+bbt_zz)));
	struct BBDebugStm __stmt_20 = {0x52d896bd406bc7a6, 139, 0};
	bbOnDebugEnterStm(&__stmt_20);
	BBUINT* bbt_6=((BBARRAY)((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)bbt_mat))->_openb3d_openb3dcore_tmatrix_grid )->scales + 1;
	((BBFLOAT*)BBARRAYDATAINDEX((((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)bbt_mat))->_openb3d_openb3dcore_tmatrix_grid ),(((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)bbt_mat))->_openb3d_openb3dcore_tmatrix_grid )->dims,(*(bbt_6)) * 1U + 2U))[(*(bbt_6)) * 1U + 2U]=(2.00000000f*(bbt_yz-bbt_wx));
	struct BBDebugStm __stmt_21 = {0x52d896bd406bc7a6, 140, 0};
	bbOnDebugEnterStm(&__stmt_21);
	BBUINT* bbt_7=((BBARRAY)((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)bbt_mat))->_openb3d_openb3dcore_tmatrix_grid )->scales + 1;
	((BBFLOAT*)BBARRAYDATAINDEX((((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)bbt_mat))->_openb3d_openb3dcore_tmatrix_grid ),(((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)bbt_mat))->_openb3d_openb3dcore_tmatrix_grid )->dims,(*(bbt_7)) * 2U + 0U))[(*(bbt_7)) * 2U + 0U]=(2.00000000f*(bbt_xz-bbt_wy));
	struct BBDebugStm __stmt_22 = {0x52d896bd406bc7a6, 141, 0};
	bbOnDebugEnterStm(&__stmt_22);
	BBUINT* bbt_8=((BBARRAY)((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)bbt_mat))->_openb3d_openb3dcore_tmatrix_grid )->scales + 1;
	((BBFLOAT*)BBARRAYDATAINDEX((((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)bbt_mat))->_openb3d_openb3dcore_tmatrix_grid ),(((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)bbt_mat))->_openb3d_openb3dcore_tmatrix_grid )->dims,(*(bbt_8)) * 2U + 1U))[(*(bbt_8)) * 2U + 1U]=(2.00000000f*(bbt_yz+bbt_wx));
	struct BBDebugStm __stmt_23 = {0x52d896bd406bc7a6, 142, 0};
	bbOnDebugEnterStm(&__stmt_23);
	BBUINT* bbt_9=((BBARRAY)((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)bbt_mat))->_openb3d_openb3dcore_tmatrix_grid )->scales + 1;
	((BBFLOAT*)BBARRAYDATAINDEX((((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)bbt_mat))->_openb3d_openb3dcore_tmatrix_grid ),(((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)bbt_mat))->_openb3d_openb3dcore_tmatrix_grid )->dims,(*(bbt_9)) * 2U + 2U))[(*(bbt_9)) * 2U + 2U]=(1.00000000f-(2.00000000f*(bbt_xx+bbt_yy)));
	struct BBDebugStm __stmt_24 = {0x52d896bd406bc7a6, 143, 0};
	bbOnDebugEnterStm(&__stmt_24);
	BBUINT* bbt_10=((BBARRAY)((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)bbt_mat))->_openb3d_openb3dcore_tmatrix_grid )->scales + 1;
	((BBFLOAT*)BBARRAYDATAINDEX((((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)bbt_mat))->_openb3d_openb3dcore_tmatrix_grid ),(((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)bbt_mat))->_openb3d_openb3dcore_tmatrix_grid )->dims,(*(bbt_10)) * 3U + 3U))[(*(bbt_10)) * 3U + 3U]=1.00000000f;
	struct BBDebugStm __stmt_25 = {0x52d896bd406bc7a6, 145, 0};
	bbOnDebugEnterStm(&__stmt_25);
	{
		BBINT bbt_iy=0;
		for(;(bbt_iy<=3);bbt_iy=(bbt_iy+1)){
			struct BBDebugScope_1 __scope = {
				BBDEBUGSCOPE_LOCALBLOCK,
				0,
				{
					{
						BBDEBUGDECL_LOCAL,
						"iy",
						"i",
						.var_address=&bbt_iy
					},
					{
						BBDEBUGDECL_END
					}
				}
			};
			bbOnDebugEnterScope((BBDebugScope *)&__scope);
			struct BBDebugStm __stmt_0 = {0x52d896bd406bc7a6, 146, 0};
			bbOnDebugEnterStm(&__stmt_0);
			{
				BBINT bbt_ix=0;
				for(;(bbt_ix<=3);bbt_ix=(bbt_ix+1)){
					struct BBDebugScope_1 __scope = {
						BBDEBUGSCOPE_LOCALBLOCK,
						0,
						{
							{
								BBDEBUGDECL_LOCAL,
								"ix",
								"i",
								.var_address=&bbt_ix
							},
							{
								BBDEBUGDECL_END
							}
						}
					};
					bbOnDebugEnterScope((BBDebugScope *)&__scope);
					struct BBDebugStm __stmt_0 = {0x52d896bd406bc7a6, 147, 0};
					bbOnDebugEnterStm(&__stmt_0);
					BBUINT* bbt_11=((BBARRAY)((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)bbt_mat))->_openb3d_openb3dcore_tmatrix_grid )->scales + 1;
					bbt_xx=((BBFLOAT*)BBARRAYDATAINDEX((((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)bbt_mat))->_openb3d_openb3dcore_tmatrix_grid ),(((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)bbt_mat))->_openb3d_openb3dcore_tmatrix_grid )->dims,(*(bbt_11)) * ((BBUINT)bbt_ix) + ((BBUINT)bbt_iy)))[(*(bbt_11)) * ((BBUINT)bbt_ix) + ((BBUINT)bbt_iy)];
					struct BBDebugStm __stmt_1 = {0x52d896bd406bc7a6, 148, 0};
					bbOnDebugEnterStm(&__stmt_1);
					if((bbt_xx<0.0001f) && (bbt_xx>-0.0001f)){
						struct BBDebugScope __scope = {
							BBDEBUGSCOPE_LOCALBLOCK,
							0,
							{
								{
									BBDEBUGDECL_END
								}
							}
						};
						bbOnDebugEnterScope((BBDebugScope *)&__scope);
						struct BBDebugStm __stmt_0 = {0x52d896bd406bc7a6, 148, 0};
						bbOnDebugEnterStm(&__stmt_0);
						bbt_xx=0.00000000f;
						bbOnDebugLeaveScope();
					}
					struct BBDebugStm __stmt_2 = {0x52d896bd406bc7a6, 149, 0};
					bbOnDebugEnterStm(&__stmt_2);
					BBUINT* bbt_12=((BBARRAY)((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)bbt_mat))->_openb3d_openb3dcore_tmatrix_grid )->scales + 1;
					((BBFLOAT*)BBARRAYDATAINDEX((((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)bbt_mat))->_openb3d_openb3dcore_tmatrix_grid ),(((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)bbt_mat))->_openb3d_openb3dcore_tmatrix_grid )->dims,(*(bbt_12)) * ((BBUINT)bbt_ix) + ((BBUINT)bbt_iy)))[(*(bbt_12)) * ((BBUINT)bbt_ix) + ((BBUINT)bbt_iy)]=bbt_xx;
					bbOnDebugLeaveScope();
				}
			}
			bbOnDebugLeaveScope();
		}
	}
	struct BBDebugStm __stmt_26 = {0x52d896bd406bc7a6, 153, 0};
	bbOnDebugEnterStm(&__stmt_26);
	BBUINT* bbt_13=((BBARRAY)((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)bbt_mat))->_openb3d_openb3dcore_tmatrix_grid )->scales + 1;
	BBUINT* bbt_14=((BBARRAY)((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)bbt_mat))->_openb3d_openb3dcore_tmatrix_grid )->scales + 1;
	BBUINT* bbt_15=((BBARRAY)((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)bbt_mat))->_openb3d_openb3dcore_tmatrix_grid )->scales + 1;
	BBUINT* bbt_16=((BBARRAY)((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)bbt_mat))->_openb3d_openb3dcore_tmatrix_grid )->scales + 1;
	BBUINT* bbt_17=((BBARRAY)((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)bbt_mat))->_openb3d_openb3dcore_tmatrix_grid )->scales + 1;
	*bbt_pitch=((BBFLOAT)bbATan2((double)((BBDOUBLE)((BBFLOAT*)BBARRAYDATAINDEX((((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)bbt_mat))->_openb3d_openb3dcore_tmatrix_grid ),(((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)bbt_mat))->_openb3d_openb3dcore_tmatrix_grid )->dims,(*(bbt_13)) * 2U + 1U))[(*(bbt_13)) * 2U + 1U]),(double)bbSqr((double)((BBDOUBLE)((((BBFLOAT*)BBARRAYDATAINDEX((((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)bbt_mat))->_openb3d_openb3dcore_tmatrix_grid ),(((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)bbt_mat))->_openb3d_openb3dcore_tmatrix_grid )->dims,(*(bbt_14)) * 2U + 0U))[(*(bbt_14)) * 2U + 0U]*((BBFLOAT*)BBARRAYDATAINDEX((((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)bbt_mat))->_openb3d_openb3dcore_tmatrix_grid ),(((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)bbt_mat))->_openb3d_openb3dcore_tmatrix_grid )->dims,(*(bbt_15)) * 2U + 0U))[(*(bbt_15)) * 2U + 0U])+(((BBFLOAT*)BBARRAYDATAINDEX((((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)bbt_mat))->_openb3d_openb3dcore_tmatrix_grid ),(((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)bbt_mat))->_openb3d_openb3dcore_tmatrix_grid )->dims,(*(bbt_16)) * 2U + 2U))[(*(bbt_16)) * 2U + 2U]*((BBFLOAT*)BBARRAYDATAINDEX((((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)bbt_mat))->_openb3d_openb3dcore_tmatrix_grid ),(((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)bbt_mat))->_openb3d_openb3dcore_tmatrix_grid )->dims,(*(bbt_17)) * 2U + 2U))[(*(bbt_17)) * 2U + 2U]))))));
	struct BBDebugStm __stmt_27 = {0x52d896bd406bc7a6, 154, 0};
	bbOnDebugEnterStm(&__stmt_27);
	BBUINT* bbt_18=((BBARRAY)((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)bbt_mat))->_openb3d_openb3dcore_tmatrix_grid )->scales + 1;
	BBUINT* bbt_19=((BBARRAY)((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)bbt_mat))->_openb3d_openb3dcore_tmatrix_grid )->scales + 1;
	*bbt_yaw=((BBFLOAT)bbATan2((double)((BBDOUBLE)((BBFLOAT*)BBARRAYDATAINDEX((((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)bbt_mat))->_openb3d_openb3dcore_tmatrix_grid ),(((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)bbt_mat))->_openb3d_openb3dcore_tmatrix_grid )->dims,(*(bbt_18)) * 2U + 0U))[(*(bbt_18)) * 2U + 0U]),(double)((BBDOUBLE)((BBFLOAT*)BBARRAYDATAINDEX((((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)bbt_mat))->_openb3d_openb3dcore_tmatrix_grid ),(((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)bbt_mat))->_openb3d_openb3dcore_tmatrix_grid )->dims,(*(bbt_19)) * 2U + 2U))[(*(bbt_19)) * 2U + 2U])));
	struct BBDebugStm __stmt_28 = {0x52d896bd406bc7a6, 155, 0};
	bbOnDebugEnterStm(&__stmt_28);
	BBUINT* bbt_20=((BBARRAY)((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)bbt_mat))->_openb3d_openb3dcore_tmatrix_grid )->scales + 1;
	BBUINT* bbt_21=((BBARRAY)((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)bbt_mat))->_openb3d_openb3dcore_tmatrix_grid )->scales + 1;
	*bbt_roll=((BBFLOAT)bbATan2((double)((BBDOUBLE)((BBFLOAT*)BBARRAYDATAINDEX((((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)bbt_mat))->_openb3d_openb3dcore_tmatrix_grid ),(((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)bbt_mat))->_openb3d_openb3dcore_tmatrix_grid )->dims,(*(bbt_20)) * 0U + 1U))[(*(bbt_20)) * 0U + 1U]),(double)((BBDOUBLE)((BBFLOAT*)BBARRAYDATAINDEX((((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)bbt_mat))->_openb3d_openb3dcore_tmatrix_grid ),(((struct openb3d_openb3dcore_TMatrix_obj*)bbNullObjectTest((BBObject*)bbt_mat))->_openb3d_openb3dcore_tmatrix_grid )->dims,(*(bbt_21)) * 1U + 1U))[(*(bbt_21)) * 1U + 1U])));
	bbOnDebugLeaveScope();
	return 0;
}
BBINT openb3d_openb3dcore_TQuaternion_Slerp_i_ffffffffvfvfvfvff(BBFLOAT bbt_Ax,BBFLOAT bbt_Ay,BBFLOAT bbt_Az,BBFLOAT bbt_Aw,BBFLOAT bbt_Bx,BBFLOAT bbt_By,BBFLOAT bbt_Bz,BBFLOAT bbt_Bw,BBFLOAT* bbt_Cx,BBFLOAT* bbt_Cy,BBFLOAT* bbt_Cz,BBFLOAT* bbt_Cw,BBFLOAT bbt_t){
	BBFLOAT bbt_cosineom=0;
	BBFLOAT bbt_scaler_w=0;
	BBFLOAT bbt_scaler_x=0;
	BBFLOAT bbt_scaler_y=0;
	BBFLOAT bbt_scaler_z=0;
	BBFLOAT bbt_scale0=0;
	BBFLOAT bbt_scale1=0;
	struct BBDebugScope_20 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"Slerp",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Ax",
				"f",
				.var_address=&bbt_Ax
			},
			{
				BBDEBUGDECL_LOCAL,
				"Ay",
				"f",
				.var_address=&bbt_Ay
			},
			{
				BBDEBUGDECL_LOCAL,
				"Az",
				"f",
				.var_address=&bbt_Az
			},
			{
				BBDEBUGDECL_LOCAL,
				"Aw",
				"f",
				.var_address=&bbt_Aw
			},
			{
				BBDEBUGDECL_LOCAL,
				"Bx",
				"f",
				.var_address=&bbt_Bx
			},
			{
				BBDEBUGDECL_LOCAL,
				"By",
				"f",
				.var_address=&bbt_By
			},
			{
				BBDEBUGDECL_LOCAL,
				"Bz",
				"f",
				.var_address=&bbt_Bz
			},
			{
				BBDEBUGDECL_LOCAL,
				"Bw",
				"f",
				.var_address=&bbt_Bw
			},
			{
				BBDEBUGDECL_VARPARAM,
				"Cx",
				"f",
				.var_address=&bbt_Cx
			},
			{
				BBDEBUGDECL_VARPARAM,
				"Cy",
				"f",
				.var_address=&bbt_Cy
			},
			{
				BBDEBUGDECL_VARPARAM,
				"Cz",
				"f",
				.var_address=&bbt_Cz
			},
			{
				BBDEBUGDECL_VARPARAM,
				"Cw",
				"f",
				.var_address=&bbt_Cw
			},
			{
				BBDEBUGDECL_LOCAL,
				"t",
				"f",
				.var_address=&bbt_t
			},
			{
				BBDEBUGDECL_LOCAL,
				"cosineom",
				"f",
				.var_address=&bbt_cosineom
			},
			{
				BBDEBUGDECL_LOCAL,
				"scaler_w",
				"f",
				.var_address=&bbt_scaler_w
			},
			{
				BBDEBUGDECL_LOCAL,
				"scaler_x",
				"f",
				.var_address=&bbt_scaler_x
			},
			{
				BBDEBUGDECL_LOCAL,
				"scaler_y",
				"f",
				.var_address=&bbt_scaler_y
			},
			{
				BBDEBUGDECL_LOCAL,
				"scaler_z",
				"f",
				.var_address=&bbt_scaler_z
			},
			{
				BBDEBUGDECL_LOCAL,
				"scale0",
				"f",
				.var_address=&bbt_scale0
			},
			{
				BBDEBUGDECL_LOCAL,
				"scale1",
				"f",
				.var_address=&bbt_scale1
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x52d896bd406bc7a6, 168, 0};
	bbOnDebugEnterStm(&__stmt_0);
	if((((brl_blitz_Abs2(bbt_Ax-bbt_Bx)<0.001f) && (brl_blitz_Abs2(bbt_Ay-bbt_By)<0.001f)) && (brl_blitz_Abs2(bbt_Az-bbt_Bz)<0.001f)) && (brl_blitz_Abs2(bbt_Aw-bbt_Bw)<0.001f)){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x52d896bd406bc7a6, 169, 0};
		bbOnDebugEnterStm(&__stmt_0);
		*bbt_Cx=bbt_Ax;
		struct BBDebugStm __stmt_1 = {0x52d896bd406bc7a6, 170, 0};
		bbOnDebugEnterStm(&__stmt_1);
		*bbt_Cy=bbt_Ay;
		struct BBDebugStm __stmt_2 = {0x52d896bd406bc7a6, 171, 0};
		bbOnDebugEnterStm(&__stmt_2);
		*bbt_Cz=bbt_Az;
		struct BBDebugStm __stmt_3 = {0x52d896bd406bc7a6, 172, 0};
		bbOnDebugEnterStm(&__stmt_3);
		*bbt_Cw=bbt_Aw;
		struct BBDebugStm __stmt_4 = {0x52d896bd406bc7a6, 173, 0};
		bbOnDebugEnterStm(&__stmt_4);
		bbOnDebugLeaveScope();
		bbOnDebugLeaveScope();
		return 1;
	}
	struct BBDebugStm __stmt_1 = {0x52d896bd406bc7a6, 176, 0};
	bbOnDebugEnterStm(&__stmt_1);
	bbt_cosineom=((((bbt_Ax*bbt_Bx)+(bbt_Ay*bbt_By))+(bbt_Az*bbt_Bz))+(bbt_Aw*bbt_Bw));
	struct BBDebugStm __stmt_2 = {0x52d896bd406bc7a6, 177, 0};
	bbOnDebugEnterStm(&__stmt_2);
	bbt_scaler_w=.00000000f;
	struct BBDebugStm __stmt_3 = {0x52d896bd406bc7a6, 178, 0};
	bbOnDebugEnterStm(&__stmt_3);
	bbt_scaler_x=.00000000f;
	struct BBDebugStm __stmt_4 = {0x52d896bd406bc7a6, 179, 0};
	bbOnDebugEnterStm(&__stmt_4);
	bbt_scaler_y=.00000000f;
	struct BBDebugStm __stmt_5 = {0x52d896bd406bc7a6, 180, 0};
	bbOnDebugEnterStm(&__stmt_5);
	bbt_scaler_z=.00000000f;
	struct BBDebugStm __stmt_6 = {0x52d896bd406bc7a6, 182, 0};
	bbOnDebugEnterStm(&__stmt_6);
	if(bbt_cosineom<=0.0f){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x52d896bd406bc7a6, 183, 0};
		bbOnDebugEnterStm(&__stmt_0);
		bbt_cosineom=-bbt_cosineom;
		struct BBDebugStm __stmt_1 = {0x52d896bd406bc7a6, 184, 0};
		bbOnDebugEnterStm(&__stmt_1);
		bbt_scaler_w=-bbt_Bw;
		struct BBDebugStm __stmt_2 = {0x52d896bd406bc7a6, 185, 0};
		bbOnDebugEnterStm(&__stmt_2);
		bbt_scaler_x=-bbt_Bx;
		struct BBDebugStm __stmt_3 = {0x52d896bd406bc7a6, 186, 0};
		bbOnDebugEnterStm(&__stmt_3);
		bbt_scaler_y=-bbt_By;
		struct BBDebugStm __stmt_4 = {0x52d896bd406bc7a6, 187, 0};
		bbOnDebugEnterStm(&__stmt_4);
		bbt_scaler_z=-bbt_Bz;
		bbOnDebugLeaveScope();
	}else{
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x52d896bd406bc7a6, 189, 0};
		bbOnDebugEnterStm(&__stmt_0);
		bbt_scaler_w=bbt_Bw;
		struct BBDebugStm __stmt_1 = {0x52d896bd406bc7a6, 190, 0};
		bbOnDebugEnterStm(&__stmt_1);
		bbt_scaler_x=bbt_Bx;
		struct BBDebugStm __stmt_2 = {0x52d896bd406bc7a6, 191, 0};
		bbOnDebugEnterStm(&__stmt_2);
		bbt_scaler_y=bbt_By;
		struct BBDebugStm __stmt_3 = {0x52d896bd406bc7a6, 192, 0};
		bbOnDebugEnterStm(&__stmt_3);
		bbt_scaler_z=bbt_Bz;
		bbOnDebugLeaveScope();
	}
	struct BBDebugStm __stmt_7 = {0x52d896bd406bc7a6, 195, 0};
	bbOnDebugEnterStm(&__stmt_7);
	bbt_scale0=.00000000f;
	struct BBDebugStm __stmt_8 = {0x52d896bd406bc7a6, 196, 0};
	bbOnDebugEnterStm(&__stmt_8);
	bbt_scale1=.00000000f;
	struct BBDebugStm __stmt_9 = {0x52d896bd406bc7a6, 198, 0};
	bbOnDebugEnterStm(&__stmt_9);
	if((1.0f-bbt_cosineom)>0.0001f){
		BBFLOAT bbt_omega=0;
		BBFLOAT bbt_sineom=0;
		struct BBDebugScope_2 __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_LOCAL,
					"omega",
					"f",
					.var_address=&bbt_omega
				},
				{
					BBDEBUGDECL_LOCAL,
					"sineom",
					"f",
					.var_address=&bbt_sineom
				},
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x52d896bd406bc7a6, 199, 0};
		bbOnDebugEnterStm(&__stmt_0);
		bbt_omega=((BBFLOAT)bbACos((double)((BBDOUBLE)bbt_cosineom)));
		struct BBDebugStm __stmt_1 = {0x52d896bd406bc7a6, 200, 0};
		bbOnDebugEnterStm(&__stmt_1);
		bbt_sineom=((BBFLOAT)bbSin((double)((BBDOUBLE)bbt_omega)));
		struct BBDebugStm __stmt_2 = {0x52d896bd406bc7a6, 201, 0};
		bbOnDebugEnterStm(&__stmt_2);
		bbt_scale0=((BBFLOAT)(bbSin((double)((BBDOUBLE)((1.0f-bbt_t)*bbt_omega)))/((BBDOUBLE)bbt_sineom)));
		struct BBDebugStm __stmt_3 = {0x52d896bd406bc7a6, 202, 0};
		bbOnDebugEnterStm(&__stmt_3);
		bbt_scale1=((BBFLOAT)(bbSin((double)((BBDOUBLE)(bbt_t*bbt_omega)))/((BBDOUBLE)bbt_sineom)));
		bbOnDebugLeaveScope();
	}else{
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x52d896bd406bc7a6, 204, 0};
		bbOnDebugEnterStm(&__stmt_0);
		bbt_scale0=(1.0f-bbt_t);
		struct BBDebugStm __stmt_1 = {0x52d896bd406bc7a6, 205, 0};
		bbOnDebugEnterStm(&__stmt_1);
		bbt_scale1=bbt_t;
		bbOnDebugLeaveScope();
	}
	struct BBDebugStm __stmt_10 = {0x52d896bd406bc7a6, 208, 0};
	bbOnDebugEnterStm(&__stmt_10);
	*bbt_Cw=((bbt_scale0*bbt_Aw)+(bbt_scale1*bbt_scaler_w));
	struct BBDebugStm __stmt_11 = {0x52d896bd406bc7a6, 209, 0};
	bbOnDebugEnterStm(&__stmt_11);
	*bbt_Cx=((bbt_scale0*bbt_Ax)+(bbt_scale1*bbt_scaler_x));
	struct BBDebugStm __stmt_12 = {0x52d896bd406bc7a6, 210, 0};
	bbOnDebugEnterStm(&__stmt_12);
	*bbt_Cy=((bbt_scale0*bbt_Ay)+(bbt_scale1*bbt_scaler_y));
	struct BBDebugStm __stmt_13 = {0x52d896bd406bc7a6, 211, 0};
	bbOnDebugEnterStm(&__stmt_13);
	*bbt_Cz=((bbt_scale0*bbt_Az)+(bbt_scale1*bbt_scaler_z));
	bbOnDebugLeaveScope();
	return 0;
}
struct BBDebugScope_11 openb3d_openb3dcore_TQuaternion_scope ={
	BBDEBUGSCOPE_USERTYPE,
	"TQuaternion",
	{
		{
			BBDEBUGDECL_FIELD,
			"w",
			"f",
			.field_offset=offsetof(struct openb3d_openb3dcore_TQuaternion_obj,_openb3d_openb3dcore_tquaternion_w)
		},
		{
			BBDEBUGDECL_FIELD,
			"x",
			"f",
			.field_offset=offsetof(struct openb3d_openb3dcore_TQuaternion_obj,_openb3d_openb3dcore_tquaternion_x)
		},
		{
			BBDEBUGDECL_FIELD,
			"y",
			"f",
			.field_offset=offsetof(struct openb3d_openb3dcore_TQuaternion_obj,_openb3d_openb3dcore_tquaternion_y)
		},
		{
			BBDEBUGDECL_FIELD,
			"z",
			"f",
			.field_offset=offsetof(struct openb3d_openb3dcore_TQuaternion_obj,_openb3d_openb3dcore_tquaternion_z)
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"New",
			"()i",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_TQuaternion_New
		},
		{
			BBDEBUGDECL_TYPEFUNCTION,
			"Create",
			"(f,f,f,f):TQuaternion",
			.func_ptr=(BBFuncPtr)&openb3d_openb3dcore_TQuaternion_Create_TTQuaternion_ffff
		},
		{
			BBDEBUGDECL_TYPEFUNCTION,
			"CopyQuatPtr",
			"(:TQuatPtr):TQuaternion",
			.func_ptr=(BBFuncPtr)&openb3d_openb3dcore_TQuaternion_CopyQuatPtr_TTQuaternion_TTQuatPtr
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"GetQuatPtr",
			"(:TQuatPtr):TQuaternion",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_TQuaternion_GetQuatPtr_TTQuatPtr
		},
		{
			BBDEBUGDECL_TYPEFUNCTION,
			"QuatToMat",
			"(f,f,f,f,:TMatrix)i",
			.func_ptr=(BBFuncPtr)&openb3d_openb3dcore_TQuaternion_QuatToMat_i_ffffvTTMatrix
		},
		{
			BBDEBUGDECL_TYPEFUNCTION,
			"QuatToEuler",
			"(f,f,f,f,f,f,f)i",
			.func_ptr=(BBFuncPtr)&openb3d_openb3dcore_TQuaternion_QuatToEuler_i_ffffvfvfvf
		},
		{
			BBDEBUGDECL_TYPEFUNCTION,
			"Slerp",
			"(f,f,f,f,f,f,f,f,f,f,f,f,f)i",
			.func_ptr=(BBFuncPtr)&openb3d_openb3dcore_TQuaternion_Slerp_i_ffffffffvfvfvfvff
		},
		{
			BBDEBUGDECL_END
		}
	}
};
struct BBClass_openb3d_openb3dcore_TQuaternion openb3d_openb3dcore_TQuaternion={
	&bbObjectClass,
	bbObjectFree,
	(BBDebugScope*)&openb3d_openb3dcore_TQuaternion_scope,
	sizeof(struct openb3d_openb3dcore_TQuaternion_obj),
	(void (*)(BBOBJECT))_openb3d_openb3dcore_TQuaternion_New,
	(void (*)(BBOBJECT))_openb3d_openb3dcore_TQuaternion_Delete,
	bbObjectToString,
	bbObjectCompare,
	bbObjectSendMessage,
	0,
	0,
	offsetof(struct openb3d_openb3dcore_TQuaternion_obj,_openb3d_openb3dcore_tquaternion_z) - offsetof(struct openb3d_openb3dcore_TQuaternion_obj,_openb3d_openb3dcore_tquaternion_w) + sizeof(BBFLOAT)
	,0
	,offsetof(struct openb3d_openb3dcore_TQuaternion_obj,_openb3d_openb3dcore_tquaternion_w)
	,openb3d_openb3dcore_TQuaternion_Create_TTQuaternion_ffff
	,openb3d_openb3dcore_TQuaternion_CopyQuatPtr_TTQuaternion_TTQuatPtr
	,_openb3d_openb3dcore_TQuaternion_GetQuatPtr_TTQuatPtr
	,openb3d_openb3dcore_TQuaternion_QuatToMat_i_ffffvTTMatrix
	,openb3d_openb3dcore_TQuaternion_QuatToEuler_i_ffffvfvfvf
	,openb3d_openb3dcore_TQuaternion_Slerp_i_ffffffffvfvfvfvff
};

void _openb3d_openb3dcore_TQuatPtr_New(struct openb3d_openb3dcore_TQuatPtr_obj* o) {
	bbObjectCtor((BBOBJECT)o);
	o->clas = &openb3d_openb3dcore_TQuatPtr;
	((struct openb3d_openb3dcore_TQuatPtr_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tquatptr_w = 0;
	((struct openb3d_openb3dcore_TQuatPtr_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tquatptr_x = 0;
	((struct openb3d_openb3dcore_TQuatPtr_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tquatptr_y = 0;
	((struct openb3d_openb3dcore_TQuatPtr_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tquatptr_z = 0;
	((struct openb3d_openb3dcore_TQuatPtr_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tquatptr_instance = 0;
	struct BBDebugScope __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"New",
		{
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x52d896bd406bc7a6, 327, 0};
	bbOnDebugEnterStm(&__stmt_0);
	if(openb3d_openb3dcore_TGlobal3D_Log_New!=0){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x52d896bd406bc7a6, 328, 0};
		bbOnDebugEnterStm(&__stmt_0);
		brl_blitz_DebugLog((BBString*)&_s663);
		bbOnDebugLeaveScope();
	}
	bbOnDebugLeaveScope();
}
void _openb3d_openb3dcore_TQuatPtr_Delete(struct openb3d_openb3dcore_TQuatPtr_obj* o) {
	struct BBDebugScope_1 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"Delete",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TQuatPtr",
				.var_address=&o
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x52d896bd406bc7a6, 335, 0};
	bbOnDebugEnterStm(&__stmt_0);
	if(openb3d_openb3dcore_TGlobal3D_Log_Del!=0){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x52d896bd406bc7a6, 336, 0};
		bbOnDebugEnterStm(&__stmt_0);
		brl_blitz_DebugLog((BBString*)&_s664);
		bbOnDebugLeaveScope();
	}
	bbOnDebugLeaveScope();
	bbObjectDtor((BBOBJECT)o);
}
struct openb3d_openb3dcore_TQuatPtr_obj* openb3d_openb3dcore_TQuatPtr_CreateObject_TTQuatPtr_pb(BBBYTE* bbt_inst){
	struct openb3d_openb3dcore_TQuatPtr_obj* bbt_obj=(struct openb3d_openb3dcore_TQuatPtr_obj*)((struct openb3d_openb3dcore_TQuatPtr_obj*)&bbNullObject);
	struct BBDebugScope_2 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"CreateObject",
		{
			{
				BBDEBUGDECL_LOCAL,
				"inst",
				"*b",
				.var_address=&bbt_inst
			},
			{
				BBDEBUGDECL_LOCAL,
				"obj",
				":TQuatPtr",
				.var_address=&bbt_obj
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x52d896bd406bc7a6, 234, 0};
	bbOnDebugEnterStm(&__stmt_0);
	if(bbt_inst==0){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x52d896bd406bc7a6, 234, 0};
		bbOnDebugEnterStm(&__stmt_0);
		bbOnDebugLeaveScope();
		bbOnDebugLeaveScope();
		return (struct openb3d_openb3dcore_TQuatPtr_obj*)&bbNullObject;
	}
	struct BBDebugStm __stmt_1 = {0x52d896bd406bc7a6, 235, 0};
	bbOnDebugEnterStm(&__stmt_1);
	bbt_obj=(struct openb3d_openb3dcore_TQuatPtr_obj*)(struct openb3d_openb3dcore_TQuatPtr_obj*)bbObjectAtomicNew((BBClass *)&openb3d_openb3dcore_TQuatPtr);
	struct BBDebugStm __stmt_2 = {0x52d896bd406bc7a6, 237, 0};
	bbOnDebugEnterStm(&__stmt_2);
	((struct brl_map_ptrmap_TPtrMap_obj*)bbNullObjectTest((BBObject*)openb3d_openb3dcore_TQuatPtr_quatptr_map))->clas->m_Insert_pbTObject((struct brl_map_ptrmap_TPtrMap_obj*)openb3d_openb3dcore_TQuatPtr_quatptr_map,bbt_inst,(BBOBJECT)bbt_obj);
	struct BBDebugStm __stmt_3 = {0x52d896bd406bc7a6, 241, 0};
	bbOnDebugEnterStm(&__stmt_3);
	((struct openb3d_openb3dcore_TQuatPtr_obj*)bbNullObjectTest((BBObject*)bbt_obj))->_openb3d_openb3dcore_tquatptr_instance =bbt_inst;
	struct BBDebugStm __stmt_4 = {0x52d896bd406bc7a6, 242, 0};
	bbOnDebugEnterStm(&__stmt_4);
	((struct openb3d_openb3dcore_TQuatPtr_obj*)bbNullObjectTest((BBObject*)bbt_obj))->clas->m_InitFields((struct openb3d_openb3dcore_TQuatPtr_obj*)bbt_obj);
	struct BBDebugStm __stmt_5 = {0x52d896bd406bc7a6, 243, 0};
	bbOnDebugEnterStm(&__stmt_5);
	bbOnDebugLeaveScope();
	return (struct openb3d_openb3dcore_TQuatPtr_obj*)bbt_obj;
}
BBINT openb3d_openb3dcore_TQuatPtr_FreeObject_i_pb(BBBYTE* bbt_inst){
	struct BBDebugScope_1 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"FreeObject",
		{
			{
				BBDEBUGDECL_LOCAL,
				"inst",
				"*b",
				.var_address=&bbt_inst
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x52d896bd406bc7a6, 250, 0};
	bbOnDebugEnterStm(&__stmt_0);
	((struct brl_map_ptrmap_TPtrMap_obj*)bbNullObjectTest((BBObject*)openb3d_openb3dcore_TQuatPtr_quatptr_map))->clas->m_Remove_pb((struct brl_map_ptrmap_TPtrMap_obj*)openb3d_openb3dcore_TQuatPtr_quatptr_map,bbt_inst);
	bbOnDebugLeaveScope();
	return 0;
}
struct openb3d_openb3dcore_TQuatPtr_obj* openb3d_openb3dcore_TQuatPtr_GetObject_TTQuatPtr_pb(BBBYTE* bbt_inst){
	struct BBDebugScope_1 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"GetObject",
		{
			{
				BBDEBUGDECL_LOCAL,
				"inst",
				"*b",
				.var_address=&bbt_inst
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x52d896bd406bc7a6, 260, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbOnDebugLeaveScope();
	return (struct openb3d_openb3dcore_TQuatPtr_obj*)((struct openb3d_openb3dcore_TQuatPtr_obj*)bbObjectDowncast((BBOBJECT)((struct brl_map_ptrmap_TPtrMap_obj*)bbNullObjectTest((BBObject*)openb3d_openb3dcore_TQuatPtr_quatptr_map))->clas->m_ValueForKey_pb((struct brl_map_ptrmap_TPtrMap_obj*)openb3d_openb3dcore_TQuatPtr_quatptr_map,bbt_inst),(BBClass*)&openb3d_openb3dcore_TQuatPtr));
}
BBBYTE* openb3d_openb3dcore_TQuatPtr_GetInstance_pb_TTQuatPtr(struct openb3d_openb3dcore_TQuatPtr_obj* bbt_obj){
	struct BBDebugScope_1 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"GetInstance",
		{
			{
				BBDEBUGDECL_LOCAL,
				"obj",
				":TQuatPtr",
				.var_address=&bbt_obj
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x52d896bd406bc7a6, 269, 0};
	bbOnDebugEnterStm(&__stmt_0);
	if(((BBOBJECT)bbt_obj)==&bbNullObject){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x52d896bd406bc7a6, 269, 0};
		bbOnDebugEnterStm(&__stmt_0);
		bbOnDebugLeaveScope();
		bbOnDebugLeaveScope();
		return 0;
	}
	struct BBDebugStm __stmt_1 = {0x52d896bd406bc7a6, 270, 0};
	bbOnDebugEnterStm(&__stmt_1);
	bbOnDebugLeaveScope();
	return ((struct openb3d_openb3dcore_TQuatPtr_obj*)bbNullObjectTest((BBObject*)bbt_obj))->_openb3d_openb3dcore_tquatptr_instance ;
}
BBINT _openb3d_openb3dcore_TQuatPtr_InitFields(struct openb3d_openb3dcore_TQuatPtr_obj* o){
	((struct openb3d_openb3dcore_TQuatPtr_obj*)bbNullObjectTest((BBObject*)o));
	struct BBDebugScope_1 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"InitFields",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TQuatPtr",
				.var_address=&o
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x52d896bd406bc7a6, 276, 0};
	bbOnDebugEnterStm(&__stmt_0);
	((struct openb3d_openb3dcore_TQuatPtr_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tquatptr_w =QuatPtrFloat_(o->clas->f_GetInstance_pb_TTQuatPtr((struct openb3d_openb3dcore_TQuatPtr_obj*)o),4);
	struct BBDebugStm __stmt_1 = {0x52d896bd406bc7a6, 277, 0};
	bbOnDebugEnterStm(&__stmt_1);
	((struct openb3d_openb3dcore_TQuatPtr_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tquatptr_x =QuatPtrFloat_(o->clas->f_GetInstance_pb_TTQuatPtr((struct openb3d_openb3dcore_TQuatPtr_obj*)o),1);
	struct BBDebugStm __stmt_2 = {0x52d896bd406bc7a6, 278, 0};
	bbOnDebugEnterStm(&__stmt_2);
	((struct openb3d_openb3dcore_TQuatPtr_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tquatptr_y =QuatPtrFloat_(o->clas->f_GetInstance_pb_TTQuatPtr((struct openb3d_openb3dcore_TQuatPtr_obj*)o),2);
	struct BBDebugStm __stmt_3 = {0x52d896bd406bc7a6, 279, 0};
	bbOnDebugEnterStm(&__stmt_3);
	((struct openb3d_openb3dcore_TQuatPtr_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tquatptr_z =QuatPtrFloat_(o->clas->f_GetInstance_pb_TTQuatPtr((struct openb3d_openb3dcore_TQuatPtr_obj*)o),3);
	bbOnDebugLeaveScope();
	return 0;
}
struct openb3d_openb3dcore_TQuatPtr_obj* openb3d_openb3dcore_TQuatPtr_Create_TTQuatPtr_ffff(BBFLOAT bbt_w,BBFLOAT bbt_x,BBFLOAT bbt_y,BBFLOAT bbt_z){
	BBBYTE* bbt_inst=0;
	struct openb3d_openb3dcore_TQuatPtr_obj* bbt_new_quat=(struct openb3d_openb3dcore_TQuatPtr_obj*)((struct openb3d_openb3dcore_TQuatPtr_obj*)&bbNullObject);
	struct BBDebugScope_6 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"Create",
		{
			{
				BBDEBUGDECL_LOCAL,
				"w",
				"f",
				.var_address=&bbt_w
			},
			{
				BBDEBUGDECL_LOCAL,
				"x",
				"f",
				.var_address=&bbt_x
			},
			{
				BBDEBUGDECL_LOCAL,
				"y",
				"f",
				.var_address=&bbt_y
			},
			{
				BBDEBUGDECL_LOCAL,
				"z",
				"f",
				.var_address=&bbt_z
			},
			{
				BBDEBUGDECL_LOCAL,
				"inst",
				"*b",
				.var_address=&bbt_inst
			},
			{
				BBDEBUGDECL_LOCAL,
				"new_quat",
				":TQuatPtr",
				.var_address=&bbt_new_quat
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x52d896bd406bc7a6, 288, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbt_inst=NewQuatPtr_();
	struct BBDebugStm __stmt_1 = {0x52d896bd406bc7a6, 289, 0};
	bbOnDebugEnterStm(&__stmt_1);
	bbt_new_quat=(struct openb3d_openb3dcore_TQuatPtr_obj*)openb3d_openb3dcore_TQuatPtr_CreateObject_TTQuatPtr_pb(bbt_inst);
	struct BBDebugStm __stmt_2 = {0x52d896bd406bc7a6, 290, 0};
	bbOnDebugEnterStm(&__stmt_2);
	((struct openb3d_openb3dcore_TQuatPtr_obj*)bbNullObjectTest((BBObject*)bbt_new_quat))->_openb3d_openb3dcore_tquatptr_w [0]=bbt_w;
	struct BBDebugStm __stmt_3 = {0x52d896bd406bc7a6, 291, 0};
	bbOnDebugEnterStm(&__stmt_3);
	((struct openb3d_openb3dcore_TQuatPtr_obj*)bbNullObjectTest((BBObject*)bbt_new_quat))->_openb3d_openb3dcore_tquatptr_x [0]=bbt_x;
	struct BBDebugStm __stmt_4 = {0x52d896bd406bc7a6, 292, 0};
	bbOnDebugEnterStm(&__stmt_4);
	((struct openb3d_openb3dcore_TQuatPtr_obj*)bbNullObjectTest((BBObject*)bbt_new_quat))->_openb3d_openb3dcore_tquatptr_y [0]=bbt_y;
	struct BBDebugStm __stmt_5 = {0x52d896bd406bc7a6, 293, 0};
	bbOnDebugEnterStm(&__stmt_5);
	((struct openb3d_openb3dcore_TQuatPtr_obj*)bbNullObjectTest((BBObject*)bbt_new_quat))->_openb3d_openb3dcore_tquatptr_z [0]=bbt_z;
	struct BBDebugStm __stmt_6 = {0x52d896bd406bc7a6, 294, 0};
	bbOnDebugEnterStm(&__stmt_6);
	bbOnDebugLeaveScope();
	return (struct openb3d_openb3dcore_TQuatPtr_obj*)bbt_new_quat;
}
struct openb3d_openb3dcore_TQuatPtr_obj* openb3d_openb3dcore_TQuatPtr_CopyQuaternion_TTQuatPtr_TTQuaternion(struct openb3d_openb3dcore_TQuaternion_obj* bbt_quat){
	BBBYTE* bbt_inst=0;
	struct openb3d_openb3dcore_TQuatPtr_obj* bbt_new_quat=(struct openb3d_openb3dcore_TQuatPtr_obj*)((struct openb3d_openb3dcore_TQuatPtr_obj*)&bbNullObject);
	struct BBDebugScope_3 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"CopyQuaternion",
		{
			{
				BBDEBUGDECL_LOCAL,
				"quat",
				":TQuaternion",
				.var_address=&bbt_quat
			},
			{
				BBDEBUGDECL_LOCAL,
				"inst",
				"*b",
				.var_address=&bbt_inst
			},
			{
				BBDEBUGDECL_LOCAL,
				"new_quat",
				":TQuatPtr",
				.var_address=&bbt_new_quat
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x52d896bd406bc7a6, 303, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbt_inst=NewQuatPtr_();
	struct BBDebugStm __stmt_1 = {0x52d896bd406bc7a6, 304, 0};
	bbOnDebugEnterStm(&__stmt_1);
	bbt_new_quat=(struct openb3d_openb3dcore_TQuatPtr_obj*)openb3d_openb3dcore_TQuatPtr_CreateObject_TTQuatPtr_pb(bbt_inst);
	struct BBDebugStm __stmt_2 = {0x52d896bd406bc7a6, 305, 0};
	bbOnDebugEnterStm(&__stmt_2);
	((struct openb3d_openb3dcore_TQuatPtr_obj*)bbNullObjectTest((BBObject*)bbt_new_quat))->_openb3d_openb3dcore_tquatptr_w [0]=((struct openb3d_openb3dcore_TQuaternion_obj*)bbNullObjectTest((BBObject*)bbt_quat))->_openb3d_openb3dcore_tquaternion_w ;
	struct BBDebugStm __stmt_3 = {0x52d896bd406bc7a6, 306, 0};
	bbOnDebugEnterStm(&__stmt_3);
	((struct openb3d_openb3dcore_TQuatPtr_obj*)bbNullObjectTest((BBObject*)bbt_new_quat))->_openb3d_openb3dcore_tquatptr_x [0]=((struct openb3d_openb3dcore_TQuaternion_obj*)bbNullObjectTest((BBObject*)bbt_quat))->_openb3d_openb3dcore_tquaternion_x ;
	struct BBDebugStm __stmt_4 = {0x52d896bd406bc7a6, 307, 0};
	bbOnDebugEnterStm(&__stmt_4);
	((struct openb3d_openb3dcore_TQuatPtr_obj*)bbNullObjectTest((BBObject*)bbt_new_quat))->_openb3d_openb3dcore_tquatptr_y [0]=((struct openb3d_openb3dcore_TQuaternion_obj*)bbNullObjectTest((BBObject*)bbt_quat))->_openb3d_openb3dcore_tquaternion_y ;
	struct BBDebugStm __stmt_5 = {0x52d896bd406bc7a6, 308, 0};
	bbOnDebugEnterStm(&__stmt_5);
	((struct openb3d_openb3dcore_TQuatPtr_obj*)bbNullObjectTest((BBObject*)bbt_new_quat))->_openb3d_openb3dcore_tquatptr_z [0]=((struct openb3d_openb3dcore_TQuaternion_obj*)bbNullObjectTest((BBObject*)bbt_quat))->_openb3d_openb3dcore_tquaternion_z ;
	struct BBDebugStm __stmt_6 = {0x52d896bd406bc7a6, 309, 0};
	bbOnDebugEnterStm(&__stmt_6);
	bbOnDebugLeaveScope();
	return (struct openb3d_openb3dcore_TQuatPtr_obj*)bbt_new_quat;
}
struct openb3d_openb3dcore_TQuatPtr_obj* openb3d_openb3dcore_TQuatPtr_NewQuatPtr_TTQuatPtr(){
	BBBYTE* bbt_inst=0;
	struct BBDebugScope_1 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"NewQuatPtr",
		{
			{
				BBDEBUGDECL_LOCAL,
				"inst",
				"*b",
				.var_address=&bbt_inst
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x52d896bd406bc7a6, 318, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbt_inst=NewQuatPtr_();
	struct BBDebugStm __stmt_1 = {0x52d896bd406bc7a6, 319, 0};
	bbOnDebugEnterStm(&__stmt_1);
	bbOnDebugLeaveScope();
	return (struct openb3d_openb3dcore_TQuatPtr_obj*)openb3d_openb3dcore_TQuatPtr_CreateObject_TTQuatPtr_pb(bbt_inst);
}
struct openb3d_openb3dcore_TQuatPtr_obj* _openb3d_openb3dcore_TQuatPtr_GetQuaternion_TTQuaternion(struct openb3d_openb3dcore_TQuatPtr_obj* o,struct openb3d_openb3dcore_TQuaternion_obj* bbt_quat){
	((struct openb3d_openb3dcore_TQuatPtr_obj*)bbNullObjectTest((BBObject*)o));
	struct BBDebugScope_2 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"GetQuaternion",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TQuatPtr",
				.var_address=&o
			},
			{
				BBDEBUGDECL_LOCAL,
				"quat",
				":TQuaternion",
				.var_address=&bbt_quat
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x52d896bd406bc7a6, 346, 0};
	bbOnDebugEnterStm(&__stmt_0);
	((struct openb3d_openb3dcore_TQuatPtr_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tquatptr_w [0]=((struct openb3d_openb3dcore_TQuaternion_obj*)bbNullObjectTest((BBObject*)bbt_quat))->_openb3d_openb3dcore_tquaternion_w ;
	struct BBDebugStm __stmt_1 = {0x52d896bd406bc7a6, 347, 0};
	bbOnDebugEnterStm(&__stmt_1);
	((struct openb3d_openb3dcore_TQuatPtr_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tquatptr_x [0]=((struct openb3d_openb3dcore_TQuaternion_obj*)bbNullObjectTest((BBObject*)bbt_quat))->_openb3d_openb3dcore_tquaternion_x ;
	struct BBDebugStm __stmt_2 = {0x52d896bd406bc7a6, 348, 0};
	bbOnDebugEnterStm(&__stmt_2);
	((struct openb3d_openb3dcore_TQuatPtr_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tquatptr_y [0]=((struct openb3d_openb3dcore_TQuaternion_obj*)bbNullObjectTest((BBObject*)bbt_quat))->_openb3d_openb3dcore_tquaternion_y ;
	struct BBDebugStm __stmt_3 = {0x52d896bd406bc7a6, 349, 0};
	bbOnDebugEnterStm(&__stmt_3);
	((struct openb3d_openb3dcore_TQuatPtr_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tquatptr_z [0]=((struct openb3d_openb3dcore_TQuaternion_obj*)bbNullObjectTest((BBObject*)bbt_quat))->_openb3d_openb3dcore_tquaternion_z ;
	bbOnDebugLeaveScope();
	return (struct openb3d_openb3dcore_TQuatPtr_obj*)((struct openb3d_openb3dcore_TQuatPtr_obj*)&bbNullObject);
}
BBINT openb3d_openb3dcore_TQuatPtr_QuatToMat_i_ffffTTMatPtr(BBFLOAT bbt_w,BBFLOAT bbt_x,BBFLOAT bbt_y,BBFLOAT bbt_z,struct openb3d_openb3dcore_TMatPtr_obj* bbt_mat){
	struct BBDebugScope_5 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"QuatToMat",
		{
			{
				BBDEBUGDECL_LOCAL,
				"w",
				"f",
				.var_address=&bbt_w
			},
			{
				BBDEBUGDECL_LOCAL,
				"x",
				"f",
				.var_address=&bbt_x
			},
			{
				BBDEBUGDECL_LOCAL,
				"y",
				"f",
				.var_address=&bbt_y
			},
			{
				BBDEBUGDECL_LOCAL,
				"z",
				"f",
				.var_address=&bbt_z
			},
			{
				BBDEBUGDECL_LOCAL,
				"mat",
				":TMatPtr",
				.var_address=&bbt_mat
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x52d896bd406bc7a6, 360, 0};
	bbOnDebugEnterStm(&__stmt_0);
	QuaternionToMat_(bbt_w,bbt_x,bbt_y,bbt_z,openb3d_openb3dcore_TMatPtr_GetInstance_pb_TTMatPtr((struct openb3d_openb3dcore_TMatPtr_obj*)bbt_mat));
	bbOnDebugLeaveScope();
	return 0;
}
BBINT openb3d_openb3dcore_TQuatPtr_QuatToEuler_i_ffffvfvfvf(BBFLOAT bbt_w,BBFLOAT bbt_x,BBFLOAT bbt_y,BBFLOAT bbt_z,BBFLOAT* bbt_pitch,BBFLOAT* bbt_yaw,BBFLOAT* bbt_roll){
	struct BBDebugScope_7 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"QuatToEuler",
		{
			{
				BBDEBUGDECL_LOCAL,
				"w",
				"f",
				.var_address=&bbt_w
			},
			{
				BBDEBUGDECL_LOCAL,
				"x",
				"f",
				.var_address=&bbt_x
			},
			{
				BBDEBUGDECL_LOCAL,
				"y",
				"f",
				.var_address=&bbt_y
			},
			{
				BBDEBUGDECL_LOCAL,
				"z",
				"f",
				.var_address=&bbt_z
			},
			{
				BBDEBUGDECL_VARPARAM,
				"pitch",
				"f",
				.var_address=&bbt_pitch
			},
			{
				BBDEBUGDECL_VARPARAM,
				"yaw",
				"f",
				.var_address=&bbt_yaw
			},
			{
				BBDEBUGDECL_VARPARAM,
				"roll",
				"f",
				.var_address=&bbt_roll
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x52d896bd406bc7a6, 369, 0};
	bbOnDebugEnterStm(&__stmt_0);
	QuaternionToEuler_(bbt_w,bbt_x,bbt_y,bbt_z,&(*bbt_pitch),&(*bbt_yaw),&(*bbt_roll));
	bbOnDebugLeaveScope();
	return 0;
}
BBINT openb3d_openb3dcore_TQuatPtr_Slerp_i_ffffffffvfvfvfvff(BBFLOAT bbt_Ax,BBFLOAT bbt_Ay,BBFLOAT bbt_Az,BBFLOAT bbt_Aw,BBFLOAT bbt_Bx,BBFLOAT bbt_By,BBFLOAT bbt_Bz,BBFLOAT bbt_Bw,BBFLOAT* bbt_Cx,BBFLOAT* bbt_Cy,BBFLOAT* bbt_Cz,BBFLOAT* bbt_Cw,BBFLOAT bbt_t){
	struct BBDebugScope_13 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"Slerp",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Ax",
				"f",
				.var_address=&bbt_Ax
			},
			{
				BBDEBUGDECL_LOCAL,
				"Ay",
				"f",
				.var_address=&bbt_Ay
			},
			{
				BBDEBUGDECL_LOCAL,
				"Az",
				"f",
				.var_address=&bbt_Az
			},
			{
				BBDEBUGDECL_LOCAL,
				"Aw",
				"f",
				.var_address=&bbt_Aw
			},
			{
				BBDEBUGDECL_LOCAL,
				"Bx",
				"f",
				.var_address=&bbt_Bx
			},
			{
				BBDEBUGDECL_LOCAL,
				"By",
				"f",
				.var_address=&bbt_By
			},
			{
				BBDEBUGDECL_LOCAL,
				"Bz",
				"f",
				.var_address=&bbt_Bz
			},
			{
				BBDEBUGDECL_LOCAL,
				"Bw",
				"f",
				.var_address=&bbt_Bw
			},
			{
				BBDEBUGDECL_VARPARAM,
				"Cx",
				"f",
				.var_address=&bbt_Cx
			},
			{
				BBDEBUGDECL_VARPARAM,
				"Cy",
				"f",
				.var_address=&bbt_Cy
			},
			{
				BBDEBUGDECL_VARPARAM,
				"Cz",
				"f",
				.var_address=&bbt_Cz
			},
			{
				BBDEBUGDECL_VARPARAM,
				"Cw",
				"f",
				.var_address=&bbt_Cw
			},
			{
				BBDEBUGDECL_LOCAL,
				"t",
				"f",
				.var_address=&bbt_t
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x52d896bd406bc7a6, 378, 0};
	bbOnDebugEnterStm(&__stmt_0);
	QuaternionSlerp_(bbt_Ax,bbt_Ay,bbt_Az,bbt_Aw,bbt_Bx,bbt_By,bbt_Bz,bbt_Bw,&(*bbt_Cx),&(*bbt_Cy),&(*bbt_Cz),&(*bbt_Cw),bbt_t);
	bbOnDebugLeaveScope();
	return 0;
}
struct brl_map_ptrmap_TPtrMap_obj* openb3d_openb3dcore_TQuatPtr_quatptr_map;
struct BBDebugScope_19 openb3d_openb3dcore_TQuatPtr_scope ={
	BBDEBUGSCOPE_USERTYPE,
	"TQuatPtr",
	{
		{
			BBDEBUGDECL_FIELD,
			"w",
			"*f",
			.field_offset=offsetof(struct openb3d_openb3dcore_TQuatPtr_obj,_openb3d_openb3dcore_tquatptr_w)
		},
		{
			BBDEBUGDECL_FIELD,
			"x",
			"*f",
			.field_offset=offsetof(struct openb3d_openb3dcore_TQuatPtr_obj,_openb3d_openb3dcore_tquatptr_x)
		},
		{
			BBDEBUGDECL_FIELD,
			"y",
			"*f",
			.field_offset=offsetof(struct openb3d_openb3dcore_TQuatPtr_obj,_openb3d_openb3dcore_tquatptr_y)
		},
		{
			BBDEBUGDECL_FIELD,
			"z",
			"*f",
			.field_offset=offsetof(struct openb3d_openb3dcore_TQuatPtr_obj,_openb3d_openb3dcore_tquatptr_z)
		},
		{
			BBDEBUGDECL_FIELD,
			"instance",
			"*b",
			.field_offset=offsetof(struct openb3d_openb3dcore_TQuatPtr_obj,_openb3d_openb3dcore_tquatptr_instance)
		},
		{
			BBDEBUGDECL_GLOBAL,
			"quatptr_map",
			":TPtrMap",
			.var_address=(void*)&openb3d_openb3dcore_TQuatPtr_quatptr_map
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"New",
			"()i",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_TQuatPtr_New
		},
		{
			BBDEBUGDECL_TYPEFUNCTION,
			"CreateObject",
			"(*b):TQuatPtr",
			.func_ptr=(BBFuncPtr)&openb3d_openb3dcore_TQuatPtr_CreateObject_TTQuatPtr_pb
		},
		{
			BBDEBUGDECL_TYPEFUNCTION,
			"FreeObject",
			"(*b)i",
			.func_ptr=(BBFuncPtr)&openb3d_openb3dcore_TQuatPtr_FreeObject_i_pb
		},
		{
			BBDEBUGDECL_TYPEFUNCTION,
			"GetObject",
			"(*b):TQuatPtr",
			.func_ptr=(BBFuncPtr)&openb3d_openb3dcore_TQuatPtr_GetObject_TTQuatPtr_pb
		},
		{
			BBDEBUGDECL_TYPEFUNCTION,
			"GetInstance",
			"(:TQuatPtr)*b",
			.func_ptr=(BBFuncPtr)&openb3d_openb3dcore_TQuatPtr_GetInstance_pb_TTQuatPtr
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"InitFields",
			"()i",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_TQuatPtr_InitFields
		},
		{
			BBDEBUGDECL_TYPEFUNCTION,
			"Create",
			"(f,f,f,f):TQuatPtr",
			.func_ptr=(BBFuncPtr)&openb3d_openb3dcore_TQuatPtr_Create_TTQuatPtr_ffff
		},
		{
			BBDEBUGDECL_TYPEFUNCTION,
			"CopyQuaternion",
			"(:TQuaternion):TQuatPtr",
			.func_ptr=(BBFuncPtr)&openb3d_openb3dcore_TQuatPtr_CopyQuaternion_TTQuatPtr_TTQuaternion
		},
		{
			BBDEBUGDECL_TYPEFUNCTION,
			"NewQuatPtr",
			"():TQuatPtr",
			.func_ptr=(BBFuncPtr)&openb3d_openb3dcore_TQuatPtr_NewQuatPtr_TTQuatPtr
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"GetQuaternion",
			"(:TQuaternion):TQuatPtr",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_TQuatPtr_GetQuaternion_TTQuaternion
		},
		{
			BBDEBUGDECL_TYPEFUNCTION,
			"QuatToMat",
			"(f,f,f,f,:TMatPtr)i",
			.func_ptr=(BBFuncPtr)&openb3d_openb3dcore_TQuatPtr_QuatToMat_i_ffffTTMatPtr
		},
		{
			BBDEBUGDECL_TYPEFUNCTION,
			"QuatToEuler",
			"(f,f,f,f,f,f,f)i",
			.func_ptr=(BBFuncPtr)&openb3d_openb3dcore_TQuatPtr_QuatToEuler_i_ffffvfvfvf
		},
		{
			BBDEBUGDECL_TYPEFUNCTION,
			"Slerp",
			"(f,f,f,f,f,f,f,f,f,f,f,f,f)i",
			.func_ptr=(BBFuncPtr)&openb3d_openb3dcore_TQuatPtr_Slerp_i_ffffffffvfvfvfvff
		},
		{
			BBDEBUGDECL_END
		}
	}
};
struct BBClass_openb3d_openb3dcore_TQuatPtr openb3d_openb3dcore_TQuatPtr={
	&bbObjectClass,
	bbObjectFree,
	(BBDebugScope*)&openb3d_openb3dcore_TQuatPtr_scope,
	sizeof(struct openb3d_openb3dcore_TQuatPtr_obj),
	(void (*)(BBOBJECT))_openb3d_openb3dcore_TQuatPtr_New,
	(void (*)(BBOBJECT))_openb3d_openb3dcore_TQuatPtr_Delete,
	bbObjectToString,
	bbObjectCompare,
	bbObjectSendMessage,
	0,
	0,
	offsetof(struct openb3d_openb3dcore_TQuatPtr_obj,_openb3d_openb3dcore_tquatptr_instance) - offsetof(struct openb3d_openb3dcore_TQuatPtr_obj,_openb3d_openb3dcore_tquatptr_w) + sizeof(BBBYTE*)
	,0
	,offsetof(struct openb3d_openb3dcore_TQuatPtr_obj,_openb3d_openb3dcore_tquatptr_w)
	,openb3d_openb3dcore_TQuatPtr_CreateObject_TTQuatPtr_pb
	,openb3d_openb3dcore_TQuatPtr_FreeObject_i_pb
	,openb3d_openb3dcore_TQuatPtr_GetObject_TTQuatPtr_pb
	,openb3d_openb3dcore_TQuatPtr_GetInstance_pb_TTQuatPtr
	,_openb3d_openb3dcore_TQuatPtr_InitFields
	,openb3d_openb3dcore_TQuatPtr_Create_TTQuatPtr_ffff
	,openb3d_openb3dcore_TQuatPtr_CopyQuaternion_TTQuatPtr_TTQuaternion
	,openb3d_openb3dcore_TQuatPtr_NewQuatPtr_TTQuatPtr
	,_openb3d_openb3dcore_TQuatPtr_GetQuaternion_TTQuaternion
	,openb3d_openb3dcore_TQuatPtr_QuatToMat_i_ffffTTMatPtr
	,openb3d_openb3dcore_TQuatPtr_QuatToEuler_i_ffffvfvfvf
	,openb3d_openb3dcore_TQuatPtr_Slerp_i_ffffffffvfvfvfvff
};

void _openb3d_openb3dcore_TBlitz2D_New(struct openb3d_openb3dcore_TBlitz2D_obj* o) {
	bbObjectCtor((BBOBJECT)o);
	o->clas = &openb3d_openb3dcore_TBlitz2D;
}
BBINT openb3d_openb3dcore_TBlitz2D_BeginMax2D_i_i(BBINT bbt_version){
	struct BBDebugScope_1 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"BeginMax2D",
		{
			{
				BBDEBUGDECL_LOCAL,
				"version",
				"i",
				.var_address=&bbt_version
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0xbf60976b30babfc9, 9, 0};
	bbOnDebugEnterStm(&__stmt_0);
	BBINT bbt_=bbt_version;
	struct BBDebugStm __stmt_1 = {0xbf60976b30babfc9, 11, 0};
	bbOnDebugEnterStm(&__stmt_1);
	if(bbt_==0){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0xbf60976b30babfc9, 14, 0};
		bbOnDebugEnterStm(&__stmt_0);
		glPopClientAttrib();
		struct BBDebugStm __stmt_1 = {0xbf60976b30babfc9, 15, 0};
		bbOnDebugEnterStm(&__stmt_1);
		glPopAttrib();
		struct BBDebugStm __stmt_2 = {0xbf60976b30babfc9, 16, 0};
		bbOnDebugEnterStm(&__stmt_2);
		glMatrixMode((GLenum)5888);
		struct BBDebugStm __stmt_3 = {0xbf60976b30babfc9, 17, 0};
		bbOnDebugEnterStm(&__stmt_3);
		glPopMatrix();
		struct BBDebugStm __stmt_4 = {0xbf60976b30babfc9, 18, 0};
		bbOnDebugEnterStm(&__stmt_4);
		glMatrixMode((GLenum)5889);
		struct BBDebugStm __stmt_5 = {0xbf60976b30babfc9, 19, 0};
		bbOnDebugEnterStm(&__stmt_5);
		glPopMatrix();
		struct BBDebugStm __stmt_6 = {0xbf60976b30babfc9, 20, 0};
		bbOnDebugEnterStm(&__stmt_6);
		glMatrixMode((GLenum)5890);
		struct BBDebugStm __stmt_7 = {0xbf60976b30babfc9, 21, 0};
		bbOnDebugEnterStm(&__stmt_7);
		glPopMatrix();
		struct BBDebugStm __stmt_8 = {0xbf60976b30babfc9, 22, 0};
		bbOnDebugEnterStm(&__stmt_8);
		glMatrixMode((GLenum)6144);
		struct BBDebugStm __stmt_9 = {0xbf60976b30babfc9, 23, 0};
		bbOnDebugEnterStm(&__stmt_9);
		glPopMatrix();
		bbOnDebugLeaveScope();
	}else{
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0xbf60976b30babfc9, 25, 0};
		bbOnDebugEnterStm(&__stmt_0);
		if(bbt_==1){
			BBINT bbt_x=0;
			BBINT bbt_y=0;
			BBINT bbt_w=0;
			BBINT bbt_h=0;
			BBINT bbt_MaxTex=0;
			struct BBDebugScope_5 __scope = {
				BBDEBUGSCOPE_LOCALBLOCK,
				0,
				{
					{
						BBDEBUGDECL_LOCAL,
						"x",
						"i",
						.var_address=&bbt_x
					},
					{
						BBDEBUGDECL_LOCAL,
						"y",
						"i",
						.var_address=&bbt_y
					},
					{
						BBDEBUGDECL_LOCAL,
						"w",
						"i",
						.var_address=&bbt_w
					},
					{
						BBDEBUGDECL_LOCAL,
						"h",
						"i",
						.var_address=&bbt_h
					},
					{
						BBDEBUGDECL_LOCAL,
						"MaxTex",
						"i",
						.var_address=&bbt_MaxTex
					},
					{
						BBDEBUGDECL_END
					}
				}
			};
			bbOnDebugEnterScope((BBDebugScope *)&__scope);
			struct BBDebugStm __stmt_0 = {0xbf60976b30babfc9, 28, 0};
			bbOnDebugEnterStm(&__stmt_0);
			glPopClientAttrib();
			struct BBDebugStm __stmt_1 = {0xbf60976b30babfc9, 29, 0};
			bbOnDebugEnterStm(&__stmt_1);
			glPopAttrib();
			struct BBDebugStm __stmt_2 = {0xbf60976b30babfc9, 30, 0};
			bbOnDebugEnterStm(&__stmt_2);
			glMatrixMode((GLenum)5888);
			struct BBDebugStm __stmt_3 = {0xbf60976b30babfc9, 31, 0};
			bbOnDebugEnterStm(&__stmt_3);
			glPopMatrix();
			struct BBDebugStm __stmt_4 = {0xbf60976b30babfc9, 32, 0};
			bbOnDebugEnterStm(&__stmt_4);
			glMatrixMode((GLenum)5889);
			struct BBDebugStm __stmt_5 = {0xbf60976b30babfc9, 33, 0};
			bbOnDebugEnterStm(&__stmt_5);
			glPopMatrix();
			struct BBDebugStm __stmt_6 = {0xbf60976b30babfc9, 34, 0};
			bbOnDebugEnterStm(&__stmt_6);
			glMatrixMode((GLenum)5890);
			struct BBDebugStm __stmt_7 = {0xbf60976b30babfc9, 35, 0};
			bbOnDebugEnterStm(&__stmt_7);
			glPopMatrix();
			struct BBDebugStm __stmt_8 = {0xbf60976b30babfc9, 36, 0};
			bbOnDebugEnterStm(&__stmt_8);
			glMatrixMode((GLenum)6144);
			struct BBDebugStm __stmt_9 = {0xbf60976b30babfc9, 37, 0};
			bbOnDebugEnterStm(&__stmt_9);
			glPopMatrix();
			struct BBDebugStm __stmt_10 = {0xbf60976b30babfc9, 39, 0};
			bbOnDebugEnterStm(&__stmt_10);
			bbt_x=0;
			struct BBDebugStm __stmt_11 = {0xbf60976b30babfc9, 39, 0};
			bbOnDebugEnterStm(&__stmt_11);
			bbt_y=0;
			struct BBDebugStm __stmt_12 = {0xbf60976b30babfc9, 39, 0};
			bbOnDebugEnterStm(&__stmt_12);
			bbt_w=0;
			struct BBDebugStm __stmt_13 = {0xbf60976b30babfc9, 39, 0};
			bbOnDebugEnterStm(&__stmt_13);
			bbt_h=0;
			struct BBDebugStm __stmt_14 = {0xbf60976b30babfc9, 40, 0};
			bbOnDebugEnterStm(&__stmt_14);
			brl_max2d_GetViewport((&bbt_x),(&bbt_y),(&bbt_w),(&bbt_h));
			struct BBDebugStm __stmt_15 = {0xbf60976b30babfc9, 42, 0};
			bbOnDebugEnterStm(&__stmt_15);
			glDisable((GLenum)2896);
			struct BBDebugStm __stmt_16 = {0xbf60976b30babfc9, 43, 0};
			bbOnDebugEnterStm(&__stmt_16);
			glDisable((GLenum)2929);
			struct BBDebugStm __stmt_17 = {0xbf60976b30babfc9, 44, 0};
			bbOnDebugEnterStm(&__stmt_17);
			glDisable((GLenum)3089);
			struct BBDebugStm __stmt_18 = {0xbf60976b30babfc9, 45, 0};
			bbOnDebugEnterStm(&__stmt_18);
			glDisable((GLenum)2912);
			struct BBDebugStm __stmt_19 = {0xbf60976b30babfc9, 46, 0};
			bbOnDebugEnterStm(&__stmt_19);
			glDisable((GLenum)2884);
			struct BBDebugStm __stmt_20 = {0xbf60976b30babfc9, 48, 0};
			bbOnDebugEnterStm(&__stmt_20);
			glMatrixMode((GLenum)5890);
			struct BBDebugStm __stmt_21 = {0xbf60976b30babfc9, 49, 0};
			bbOnDebugEnterStm(&__stmt_21);
			glLoadIdentity();
			struct BBDebugStm __stmt_22 = {0xbf60976b30babfc9, 51, 0};
			bbOnDebugEnterStm(&__stmt_22);
			glMatrixMode((GLenum)5889);
			struct BBDebugStm __stmt_23 = {0xbf60976b30babfc9, 52, 0};
			bbOnDebugEnterStm(&__stmt_23);
			glLoadIdentity();
			struct BBDebugStm __stmt_24 = {0xbf60976b30babfc9, 53, 0};
			bbOnDebugEnterStm(&__stmt_24);
			glOrtho((GLdouble)0.0000000000000000,(GLdouble)((BBDOUBLE)openb3d_openb3dcore_TGlobal3D_width[0]),(GLdouble)((BBDOUBLE)openb3d_openb3dcore_TGlobal3D_height[0]),(GLdouble)0.0000000000000000,(GLdouble)-1.0000000000000000,(GLdouble)1.0000000000000000);
			struct BBDebugStm __stmt_25 = {0xbf60976b30babfc9, 55, 0};
			bbOnDebugEnterStm(&__stmt_25);
			glMatrixMode((GLenum)5888);
			struct BBDebugStm __stmt_26 = {0xbf60976b30babfc9, 56, 0};
			bbOnDebugEnterStm(&__stmt_26);
			glLoadIdentity();
			struct BBDebugStm __stmt_27 = {0xbf60976b30babfc9, 58, 0};
			bbOnDebugEnterStm(&__stmt_27);
			brl_max2d_SetViewport(bbt_x,bbt_y,bbt_w,bbt_h);
			struct BBDebugStm __stmt_28 = {0xbf60976b30babfc9, 60, 0};
			bbOnDebugEnterStm(&__stmt_28);
			bbt_MaxTex=0;
			struct BBDebugStm __stmt_29 = {0xbf60976b30babfc9, 61, 0};
			bbOnDebugEnterStm(&__stmt_29);
			glGetIntegerv((GLenum)34018,(GLint*)(&bbt_MaxTex));
			struct BBDebugStm __stmt_30 = {0xbf60976b30babfc9, 64, 0};
			bbOnDebugEnterStm(&__stmt_30);
			{
				BBINT bbt_Layer=0;
				BBINT bbt_2=bbt_MaxTex;
				for(;(bbt_Layer<bbt_2);bbt_Layer=(bbt_Layer+1)){
					struct BBDebugScope_1 __scope = {
						BBDEBUGSCOPE_LOCALBLOCK,
						0,
						{
							{
								BBDEBUGDECL_LOCAL,
								"Layer",
								"i",
								.var_address=&bbt_Layer
							},
							{
								BBDEBUGDECL_END
							}
						}
					};
					bbOnDebugEnterScope((BBDebugScope *)&__scope);
					struct BBDebugStm __stmt_0 = {0xbf60976b30babfc9, 65, 0};
					bbOnDebugEnterStm(&__stmt_0);
					__glewActiveTexture(33984+bbt_Layer);
					struct BBDebugStm __stmt_1 = {0xbf60976b30babfc9, 67, 0};
					bbOnDebugEnterStm(&__stmt_1);
					glDisable((GLenum)3553);
					struct BBDebugStm __stmt_2 = {0xbf60976b30babfc9, 69, 0};
					bbOnDebugEnterStm(&__stmt_2);
					glDisable((GLenum)34067);
					struct BBDebugStm __stmt_3 = {0xbf60976b30babfc9, 70, 0};
					bbOnDebugEnterStm(&__stmt_3);
					glDisable((GLenum)3168);
					struct BBDebugStm __stmt_4 = {0xbf60976b30babfc9, 71, 0};
					bbOnDebugEnterStm(&__stmt_4);
					glDisable((GLenum)3169);
					struct BBDebugStm __stmt_5 = {0xbf60976b30babfc9, 72, 0};
					bbOnDebugEnterStm(&__stmt_5);
					glDisable((GLenum)3170);
					bbOnDebugLeaveScope();
				}
			}
			struct BBDebugStm __stmt_31 = {0xbf60976b30babfc9, 75, 0};
			bbOnDebugEnterStm(&__stmt_31);
			__glewActiveTexture(33984);
			struct BBDebugStm __stmt_32 = {0xbf60976b30babfc9, 77, 0};
			bbOnDebugEnterStm(&__stmt_32);
			glViewport((GLint)0,(GLint)0,(GLsizei)openb3d_openb3dcore_TGlobal3D_width[0],(GLsizei)openb3d_openb3dcore_TGlobal3D_height[0]);
			struct BBDebugStm __stmt_33 = {0xbf60976b30babfc9, 78, 0};
			bbOnDebugEnterStm(&__stmt_33);
			glScissor((GLint)0,(GLint)0,(GLsizei)openb3d_openb3dcore_TGlobal3D_width[0],(GLsizei)openb3d_openb3dcore_TGlobal3D_height[0]);
			struct BBDebugStm __stmt_34 = {0xbf60976b30babfc9, 84, 0};
			bbOnDebugEnterStm(&__stmt_34);
			glEnable((GLenum)3553);
			bbOnDebugLeaveScope();
		}
		bbOnDebugLeaveScope();
	}
	bbOnDebugLeaveScope();
	return 0;
}
BBINT openb3d_openb3dcore_TBlitz2D_EndMax2D_i_i(BBINT bbt_version){
	struct BBDebugScope_1 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"EndMax2D",
		{
			{
				BBDEBUGDECL_LOCAL,
				"version",
				"i",
				.var_address=&bbt_version
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0xbf60976b30babfc9, 92, 0};
	bbOnDebugEnterStm(&__stmt_0);
	BBINT bbt_=bbt_version;
	struct BBDebugStm __stmt_1 = {0xbf60976b30babfc9, 94, 0};
	bbOnDebugEnterStm(&__stmt_1);
	if(bbt_==0){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0xbf60976b30babfc9, 97, 0};
		bbOnDebugEnterStm(&__stmt_0);
		glPushAttrib((GLbitfield)1048575);
		struct BBDebugStm __stmt_1 = {0xbf60976b30babfc9, 98, 0};
		bbOnDebugEnterStm(&__stmt_1);
		glPushClientAttrib((GLbitfield)-1);
		struct BBDebugStm __stmt_2 = {0xbf60976b30babfc9, 99, 0};
		bbOnDebugEnterStm(&__stmt_2);
		glMatrixMode((GLenum)5888);
		struct BBDebugStm __stmt_3 = {0xbf60976b30babfc9, 100, 0};
		bbOnDebugEnterStm(&__stmt_3);
		glPushMatrix();
		struct BBDebugStm __stmt_4 = {0xbf60976b30babfc9, 101, 0};
		bbOnDebugEnterStm(&__stmt_4);
		glMatrixMode((GLenum)5889);
		struct BBDebugStm __stmt_5 = {0xbf60976b30babfc9, 102, 0};
		bbOnDebugEnterStm(&__stmt_5);
		glPushMatrix();
		struct BBDebugStm __stmt_6 = {0xbf60976b30babfc9, 103, 0};
		bbOnDebugEnterStm(&__stmt_6);
		glMatrixMode((GLenum)5890);
		struct BBDebugStm __stmt_7 = {0xbf60976b30babfc9, 104, 0};
		bbOnDebugEnterStm(&__stmt_7);
		glPushMatrix();
		struct BBDebugStm __stmt_8 = {0xbf60976b30babfc9, 105, 0};
		bbOnDebugEnterStm(&__stmt_8);
		glMatrixMode((GLenum)6144);
		struct BBDebugStm __stmt_9 = {0xbf60976b30babfc9, 106, 0};
		bbOnDebugEnterStm(&__stmt_9);
		glPushMatrix();
		struct BBDebugStm __stmt_10 = {0xbf60976b30babfc9, 108, 0};
		bbOnDebugEnterStm(&__stmt_10);
		openb3d_openb3dcore_TGlobal3D_EnableStates_i();
		struct BBDebugStm __stmt_11 = {0xbf60976b30babfc9, 110, 0};
		bbOnDebugEnterStm(&__stmt_11);
		glDisable((GLenum)3553);
		struct BBDebugStm __stmt_12 = {0xbf60976b30babfc9, 113, 0};
		bbOnDebugEnterStm(&__stmt_12);
		openb3d_openb3dcore_TGlobal3D_alpha_enable[0]=0;
		struct BBDebugStm __stmt_13 = {0xbf60976b30babfc9, 114, 0};
		bbOnDebugEnterStm(&__stmt_13);
		openb3d_openb3dcore_TGlobal3D_blend_mode[0]=1;
		struct BBDebugStm __stmt_14 = {0xbf60976b30babfc9, 118, 0};
		bbOnDebugEnterStm(&__stmt_14);
		glLightModeli((GLenum)33272,(GLint)33274);
		struct BBDebugStm __stmt_15 = {0xbf60976b30babfc9, 119, 0};
		bbOnDebugEnterStm(&__stmt_15);
		glLightModeli((GLenum)2897,(GLint)1);
		struct BBDebugStm __stmt_16 = {0xbf60976b30babfc9, 121, 0};
		bbOnDebugEnterStm(&__stmt_16);
		glClearDepth((GLclampd)1.0);
		struct BBDebugStm __stmt_17 = {0xbf60976b30babfc9, 122, 0};
		bbOnDebugEnterStm(&__stmt_17);
		glDepthFunc((GLenum)515);
		struct BBDebugStm __stmt_18 = {0xbf60976b30babfc9, 123, 0};
		bbOnDebugEnterStm(&__stmt_18);
		glHint((GLenum)3152,(GLenum)4354);
		struct BBDebugStm __stmt_19 = {0xbf60976b30babfc9, 125, 0};
		bbOnDebugEnterStm(&__stmt_19);
		glAlphaFunc((GLenum)518,(GLclampf)0.5f);
		struct BBDebugStm __stmt_20 = {0xbf60976b30babfc9, 127, 0};
		bbOnDebugEnterStm(&__stmt_20);
		struct brl_linkedlist_TListEnum_obj* bbt_2=(struct brl_linkedlist_TListEnum_obj*)((struct brl_linkedlist_TList_obj*)bbNullObjectTest((BBObject*)openb3d_openb3dcore_TCamera_cam_list))->clas->m_ObjectEnumerator((struct brl_linkedlist_TList_obj*)openb3d_openb3dcore_TCamera_cam_list);
		while(((struct brl_linkedlist_TListEnum_obj*)bbNullObjectTest((BBObject*)bbt_2))->clas->m_HasNext((struct brl_linkedlist_TListEnum_obj*)bbt_2)!=0){
			struct openb3d_openb3dcore_TCamera_obj* bbt_cam=(struct openb3d_openb3dcore_TCamera_obj*)((struct openb3d_openb3dcore_TCamera_obj*)&bbNullObject);
			struct BBDebugScope_1 __scope = {
				BBDEBUGSCOPE_LOCALBLOCK,
				0,
				{
					{
						BBDEBUGDECL_LOCAL,
						"cam",
						":TCamera",
						.var_address=&bbt_cam
					},
					{
						BBDEBUGDECL_END
					}
				}
			};
			bbOnDebugEnterScope((BBDebugScope *)&__scope);
			bbt_cam=(struct openb3d_openb3dcore_TCamera_obj*)((struct openb3d_openb3dcore_TCamera_obj*)bbObjectDowncast((BBOBJECT)((struct brl_linkedlist_TListEnum_obj*)bbNullObjectTest((BBObject*)bbt_2))->clas->m_NextObject((struct brl_linkedlist_TListEnum_obj*)bbt_2),(BBClass*)&openb3d_openb3dcore_TCamera));
			if(((BBOBJECT)bbt_cam)==&bbNullObject){
				bbOnDebugLeaveScope();
				continue;
			}
			struct BBDebugStm __stmt_0 = {0xbf60976b30babfc9, 128, 0};
			bbOnDebugEnterStm(&__stmt_0);
			if(((struct openb3d_openb3dcore_TCamera_obj*)bbt_cam)==openb3d_openb3dcore_TGlobal3D_camera_in_use){
				struct BBDebugScope __scope = {
					BBDEBUGSCOPE_LOCALBLOCK,
					0,
					{
						{
							BBDEBUGDECL_END
						}
					}
				};
				bbOnDebugEnterScope((BBDebugScope *)&__scope);
				struct BBDebugStm __stmt_0 = {0xbf60976b30babfc9, 129, 0};
				bbOnDebugEnterStm(&__stmt_0);
				((struct openb3d_openb3dcore_TCamera_obj*)bbNullObjectTest((BBObject*)bbt_cam))->clas->m_UpdateFog((struct openb3d_openb3dcore_TCamera_obj*)bbt_cam);
				struct BBDebugStm __stmt_1 = {0xbf60976b30babfc9, 130, 0};
				bbOnDebugEnterStm(&__stmt_1);
				bbOnDebugLeaveScope();
				bbOnDebugLeaveScope();
				break;
			}
			bbOnDebugLeaveScope();
		}
		bbOnDebugLeaveScope();
	}else{
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0xbf60976b30babfc9, 134, 0};
		bbOnDebugEnterStm(&__stmt_0);
		if(bbt_==1){
			struct BBDebugScope __scope = {
				BBDEBUGSCOPE_LOCALBLOCK,
				0,
				{
					{
						BBDEBUGDECL_END
					}
				}
			};
			bbOnDebugEnterScope((BBDebugScope *)&__scope);
			struct BBDebugStm __stmt_0 = {0xbf60976b30babfc9, 137, 0};
			bbOnDebugEnterStm(&__stmt_0);
			glPushAttrib((GLbitfield)1048575);
			struct BBDebugStm __stmt_1 = {0xbf60976b30babfc9, 138, 0};
			bbOnDebugEnterStm(&__stmt_1);
			glPushClientAttrib((GLbitfield)-1);
			struct BBDebugStm __stmt_2 = {0xbf60976b30babfc9, 139, 0};
			bbOnDebugEnterStm(&__stmt_2);
			glMatrixMode((GLenum)5888);
			struct BBDebugStm __stmt_3 = {0xbf60976b30babfc9, 140, 0};
			bbOnDebugEnterStm(&__stmt_3);
			glPushMatrix();
			struct BBDebugStm __stmt_4 = {0xbf60976b30babfc9, 141, 0};
			bbOnDebugEnterStm(&__stmt_4);
			glMatrixMode((GLenum)5889);
			struct BBDebugStm __stmt_5 = {0xbf60976b30babfc9, 142, 0};
			bbOnDebugEnterStm(&__stmt_5);
			glPushMatrix();
			struct BBDebugStm __stmt_6 = {0xbf60976b30babfc9, 143, 0};
			bbOnDebugEnterStm(&__stmt_6);
			glMatrixMode((GLenum)5890);
			struct BBDebugStm __stmt_7 = {0xbf60976b30babfc9, 144, 0};
			bbOnDebugEnterStm(&__stmt_7);
			glPushMatrix();
			struct BBDebugStm __stmt_8 = {0xbf60976b30babfc9, 145, 0};
			bbOnDebugEnterStm(&__stmt_8);
			glMatrixMode((GLenum)6144);
			struct BBDebugStm __stmt_9 = {0xbf60976b30babfc9, 146, 0};
			bbOnDebugEnterStm(&__stmt_9);
			glPushMatrix();
			struct BBDebugStm __stmt_10 = {0xbf60976b30babfc9, 155, 0};
			bbOnDebugEnterStm(&__stmt_10);
			openb3d_openb3dcore_TGlobal3D_EnableStates_i();
			struct BBDebugStm __stmt_11 = {0xbf60976b30babfc9, 157, 0};
			bbOnDebugEnterStm(&__stmt_11);
			glDisable((GLenum)3553);
			struct BBDebugStm __stmt_12 = {0xbf60976b30babfc9, 160, 0};
			bbOnDebugEnterStm(&__stmt_12);
			openb3d_openb3dcore_TGlobal3D_alpha_enable[0]=0;
			struct BBDebugStm __stmt_13 = {0xbf60976b30babfc9, 161, 0};
			bbOnDebugEnterStm(&__stmt_13);
			openb3d_openb3dcore_TGlobal3D_blend_mode[0]=1;
			struct BBDebugStm __stmt_14 = {0xbf60976b30babfc9, 165, 0};
			bbOnDebugEnterStm(&__stmt_14);
			glLightModeli((GLenum)33272,(GLint)33274);
			struct BBDebugStm __stmt_15 = {0xbf60976b30babfc9, 166, 0};
			bbOnDebugEnterStm(&__stmt_15);
			glLightModeli((GLenum)2897,(GLint)1);
			struct BBDebugStm __stmt_16 = {0xbf60976b30babfc9, 168, 0};
			bbOnDebugEnterStm(&__stmt_16);
			glClearDepth((GLclampd)1.0);
			struct BBDebugStm __stmt_17 = {0xbf60976b30babfc9, 169, 0};
			bbOnDebugEnterStm(&__stmt_17);
			glDepthFunc((GLenum)515);
			struct BBDebugStm __stmt_18 = {0xbf60976b30babfc9, 170, 0};
			bbOnDebugEnterStm(&__stmt_18);
			glHint((GLenum)3152,(GLenum)4354);
			struct BBDebugStm __stmt_19 = {0xbf60976b30babfc9, 172, 0};
			bbOnDebugEnterStm(&__stmt_19);
			glAlphaFunc((GLenum)518,(GLclampf)0.5f);
			struct BBDebugStm __stmt_20 = {0xbf60976b30babfc9, 174, 0};
			bbOnDebugEnterStm(&__stmt_20);
			struct brl_linkedlist_TListEnum_obj* bbt_3=(struct brl_linkedlist_TListEnum_obj*)((struct brl_linkedlist_TList_obj*)bbNullObjectTest((BBObject*)openb3d_openb3dcore_TCamera_cam_list))->clas->m_ObjectEnumerator((struct brl_linkedlist_TList_obj*)openb3d_openb3dcore_TCamera_cam_list);
			while(((struct brl_linkedlist_TListEnum_obj*)bbNullObjectTest((BBObject*)bbt_3))->clas->m_HasNext((struct brl_linkedlist_TListEnum_obj*)bbt_3)!=0){
				struct openb3d_openb3dcore_TCamera_obj* bbt_cam2=(struct openb3d_openb3dcore_TCamera_obj*)((struct openb3d_openb3dcore_TCamera_obj*)&bbNullObject);
				struct BBDebugScope_1 __scope = {
					BBDEBUGSCOPE_LOCALBLOCK,
					0,
					{
						{
							BBDEBUGDECL_LOCAL,
							"cam",
							":TCamera",
							.var_address=&bbt_cam2
						},
						{
							BBDEBUGDECL_END
						}
					}
				};
				bbOnDebugEnterScope((BBDebugScope *)&__scope);
				bbt_cam2=(struct openb3d_openb3dcore_TCamera_obj*)((struct openb3d_openb3dcore_TCamera_obj*)bbObjectDowncast((BBOBJECT)((struct brl_linkedlist_TListEnum_obj*)bbNullObjectTest((BBObject*)bbt_3))->clas->m_NextObject((struct brl_linkedlist_TListEnum_obj*)bbt_3),(BBClass*)&openb3d_openb3dcore_TCamera));
				if(((BBOBJECT)bbt_cam2)==&bbNullObject){
					bbOnDebugLeaveScope();
					continue;
				}
				struct BBDebugStm __stmt_0 = {0xbf60976b30babfc9, 175, 0};
				bbOnDebugEnterStm(&__stmt_0);
				if(((struct openb3d_openb3dcore_TCamera_obj*)bbt_cam2)==openb3d_openb3dcore_TGlobal3D_camera_in_use){
					struct BBDebugScope __scope = {
						BBDEBUGSCOPE_LOCALBLOCK,
						0,
						{
							{
								BBDEBUGDECL_END
							}
						}
					};
					bbOnDebugEnterScope((BBDebugScope *)&__scope);
					struct BBDebugStm __stmt_0 = {0xbf60976b30babfc9, 176, 0};
					bbOnDebugEnterStm(&__stmt_0);
					((struct openb3d_openb3dcore_TCamera_obj*)bbNullObjectTest((BBObject*)bbt_cam2))->clas->m_UpdateFog((struct openb3d_openb3dcore_TCamera_obj*)bbt_cam2);
					struct BBDebugStm __stmt_1 = {0xbf60976b30babfc9, 177, 0};
					bbOnDebugEnterStm(&__stmt_1);
					bbOnDebugLeaveScope();
					bbOnDebugLeaveScope();
					break;
				}
				bbOnDebugLeaveScope();
			}
			bbOnDebugLeaveScope();
		}
		bbOnDebugLeaveScope();
	}
	bbOnDebugLeaveScope();
	return 0;
}
struct BBDebugScope_3 openb3d_openb3dcore_TBlitz2D_scope ={
	BBDEBUGSCOPE_USERTYPE,
	"TBlitz2D",
	{
		{
			BBDEBUGDECL_TYPEMETHOD,
			"New",
			"()i",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_TBlitz2D_New
		},
		{
			BBDEBUGDECL_TYPEFUNCTION,
			"BeginMax2D",
			"(i)i",
			.func_ptr=(BBFuncPtr)&openb3d_openb3dcore_TBlitz2D_BeginMax2D_i_i
		},
		{
			BBDEBUGDECL_TYPEFUNCTION,
			"EndMax2D",
			"(i)i",
			.func_ptr=(BBFuncPtr)&openb3d_openb3dcore_TBlitz2D_EndMax2D_i_i
		},
		{
			BBDEBUGDECL_END
		}
	}
};
struct BBClass_openb3d_openb3dcore_TBlitz2D openb3d_openb3dcore_TBlitz2D={
	&bbObjectClass,
	bbObjectFree,
	(BBDebugScope*)&openb3d_openb3dcore_TBlitz2D_scope,
	sizeof(struct openb3d_openb3dcore_TBlitz2D_obj),
	(void (*)(BBOBJECT))_openb3d_openb3dcore_TBlitz2D_New,
	bbObjectDtor,
	bbObjectToString,
	bbObjectCompare,
	bbObjectSendMessage,
	0,
	0,
	0
	,0
	,sizeof(void*)
	,openb3d_openb3dcore_TBlitz2D_BeginMax2D_i_i
	,openb3d_openb3dcore_TBlitz2D_EndMax2D_i_i
};

void _openb3d_openb3dcore_TUtility_New(struct openb3d_openb3dcore_TUtility_obj* o) {
	bbObjectCtor((BBOBJECT)o);
	o->clas = &openb3d_openb3dcore_TUtility;
}
BBFLOAT openb3d_openb3dcore_TUtility_UpdateValue_f_fff(BBFLOAT bbt_Current,BBFLOAT bbt_destination,BBFLOAT bbt_rate){
	struct BBDebugScope_3 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"UpdateValue",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Current",
				"f",
				.var_address=&bbt_Current
			},
			{
				BBDEBUGDECL_LOCAL,
				"destination",
				"f",
				.var_address=&bbt_destination
			},
			{
				BBDEBUGDECL_LOCAL,
				"rate",
				"f",
				.var_address=&bbt_rate
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x785bac1a99379bcb, 8, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbt_Current=(bbt_Current+((bbt_destination-bbt_Current)*bbt_rate));
	struct BBDebugStm __stmt_1 = {0x785bac1a99379bcb, 9, 0};
	bbOnDebugEnterStm(&__stmt_1);
	bbOnDebugLeaveScope();
	return bbt_Current;
}
struct BBDebugScope_2 openb3d_openb3dcore_TUtility_scope ={
	BBDEBUGSCOPE_USERTYPE,
	"TUtility",
	{
		{
			BBDEBUGDECL_TYPEMETHOD,
			"New",
			"()i",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_TUtility_New
		},
		{
			BBDEBUGDECL_TYPEFUNCTION,
			"UpdateValue",
			"(f,f,f)f",
			.func_ptr=(BBFuncPtr)&openb3d_openb3dcore_TUtility_UpdateValue_f_fff
		},
		{
			BBDEBUGDECL_END
		}
	}
};
struct BBClass_openb3d_openb3dcore_TUtility openb3d_openb3dcore_TUtility={
	&bbObjectClass,
	bbObjectFree,
	(BBDebugScope*)&openb3d_openb3dcore_TUtility_scope,
	sizeof(struct openb3d_openb3dcore_TUtility_obj),
	(void (*)(BBOBJECT))_openb3d_openb3dcore_TUtility_New,
	bbObjectDtor,
	bbObjectToString,
	bbObjectCompare,
	bbObjectSendMessage,
	0,
	0,
	0
	,0
	,sizeof(void*)
	,openb3d_openb3dcore_TUtility_UpdateValue_f_fff
};

void _openb3d_openb3dcore_TTerrain_New(struct openb3d_openb3dcore_TTerrain_obj* o) {
	_openb3d_openb3dcore_TEntity_New((struct openb3d_openb3dcore_TEntity_obj*)o);
	o->clas = &openb3d_openb3dcore_TTerrain;
	((struct openb3d_openb3dcore_TTerrain_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tterrain_triangleindex = 0;
	((struct openb3d_openb3dcore_TTerrain_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tterrain_size = 0;
	((struct openb3d_openb3dcore_TTerrain_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tterrain_vsize = 0;
	((struct openb3d_openb3dcore_TTerrain_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tterrain_level2dzsize = 0;
	((struct openb3d_openb3dcore_TTerrain_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tterrain_heightmap = 0;
	((struct openb3d_openb3dcore_TTerrain_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tterrain_eyepoint = (struct openb3d_openb3dcore_TCamera_obj*)((struct openb3d_openb3dcore_TCamera_obj*)&bbNullObject);
	((struct openb3d_openb3dcore_TTerrain_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tterrain_shadermat = (struct openb3d_openb3dcore_TShader_obj*)((struct openb3d_openb3dcore_TShader_obj*)&bbNullObject);
	((struct openb3d_openb3dcore_TTerrain_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tterrain_normalsmap = 0;
	((struct openb3d_openb3dcore_TTerrain_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tterrain_vertexindex = 0;
}
void _openb3d_openb3dcore_TTerrain_Delete(struct openb3d_openb3dcore_TTerrain_obj* o) {
	_openb3d_openb3dcore_TEntity_Delete((struct openb3d_openb3dcore_TEntity_obj*)o);
}
struct openb3d_openb3dcore_TTerrain_obj* openb3d_openb3dcore_TTerrain_CreateObject_TTTerrain_pb(BBBYTE* bbt_inst){
	struct openb3d_openb3dcore_TTerrain_obj* bbt_obj=(struct openb3d_openb3dcore_TTerrain_obj*)((struct openb3d_openb3dcore_TTerrain_obj*)&bbNullObject);
	struct BBDebugScope_2 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"CreateObject",
		{
			{
				BBDEBUGDECL_LOCAL,
				"inst",
				"*b",
				.var_address=&bbt_inst
			},
			{
				BBDEBUGDECL_LOCAL,
				"obj",
				":TTerrain",
				.var_address=&bbt_obj
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x2fecc01ccff76d98, 30, 0};
	bbOnDebugEnterStm(&__stmt_0);
	if(bbt_inst==0){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x2fecc01ccff76d98, 30, 0};
		bbOnDebugEnterStm(&__stmt_0);
		bbOnDebugLeaveScope();
		bbOnDebugLeaveScope();
		return (struct openb3d_openb3dcore_TTerrain_obj*)&bbNullObject;
	}
	struct BBDebugStm __stmt_1 = {0x2fecc01ccff76d98, 31, 0};
	bbOnDebugEnterStm(&__stmt_1);
	bbt_obj=(struct openb3d_openb3dcore_TTerrain_obj*)(struct openb3d_openb3dcore_TTerrain_obj*)bbObjectNew((BBClass *)&openb3d_openb3dcore_TTerrain);
	struct BBDebugStm __stmt_2 = {0x2fecc01ccff76d98, 33, 0};
	bbOnDebugEnterStm(&__stmt_2);
	((struct brl_map_ptrmap_TPtrMap_obj*)bbNullObjectTest((BBObject*)openb3d_openb3dcore_TEntity_ent_map))->clas->m_Insert_pbTObject((struct brl_map_ptrmap_TPtrMap_obj*)openb3d_openb3dcore_TEntity_ent_map,bbt_inst,(BBOBJECT)bbt_obj);
	struct BBDebugStm __stmt_3 = {0x2fecc01ccff76d98, 37, 0};
	bbOnDebugEnterStm(&__stmt_3);
	((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)bbt_obj))->_openb3d_openb3dcore_tentity_instance =bbt_inst;
	struct BBDebugStm __stmt_4 = {0x2fecc01ccff76d98, 38, 0};
	bbOnDebugEnterStm(&__stmt_4);
	((struct openb3d_openb3dcore_TTerrain_obj*)bbNullObjectTest((BBObject*)bbt_obj))->clas->m_InitFields((struct openb3d_openb3dcore_TTerrain_obj*)bbt_obj);
	struct BBDebugStm __stmt_5 = {0x2fecc01ccff76d98, 39, 0};
	bbOnDebugEnterStm(&__stmt_5);
	bbOnDebugLeaveScope();
	return (struct openb3d_openb3dcore_TTerrain_obj*)bbt_obj;
}
BBINT openb3d_openb3dcore_TTerrain_InitGlobals_i(){
	struct BBDebugScope __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"InitGlobals",
		{
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x2fecc01ccff76d98, 46, 0};
	bbOnDebugEnterStm(&__stmt_0);
	openb3d_openb3dcore_TTerrain_Roam_Detail=StaticFloat_(51,12);
	bbOnDebugLeaveScope();
	return 0;
}
BBINT _openb3d_openb3dcore_TTerrain_InitFields(struct openb3d_openb3dcore_TTerrain_obj* o){
	((struct openb3d_openb3dcore_TTerrain_obj*)bbNullObjectTest((BBObject*)o));
	BBBYTE* bbt_inst=0;
	struct BBDebugScope_2 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"InitFields",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TTerrain",
				.var_address=&o
			},
			{
				BBDEBUGDECL_LOCAL,
				"inst",
				"*b",
				.var_address=&bbt_inst
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x2fecc01ccff76d98, 52, 0};
	bbOnDebugEnterStm(&__stmt_0);
	(&openb3d_openb3dcore_TTerrain)->super->m_InitFields((struct openb3d_openb3dcore_TEntity_obj*)o);
	struct BBDebugStm __stmt_1 = {0x2fecc01ccff76d98, 55, 0};
	bbOnDebugEnterStm(&__stmt_1);
	((struct openb3d_openb3dcore_TTerrain_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tterrain_triangleindex =TerrainInt_(openb3d_openb3dcore_TEntity_GetInstance_pb_TTEntity((struct openb3d_openb3dcore_TEntity_obj*)((struct openb3d_openb3dcore_TEntity_obj*)bbObjectDowncast((BBOBJECT)o,(BBClass*)&openb3d_openb3dcore_TEntity))),2);
	struct BBDebugStm __stmt_2 = {0x2fecc01ccff76d98, 56, 0};
	bbOnDebugEnterStm(&__stmt_2);
	((struct openb3d_openb3dcore_TTerrain_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tterrain_vertexindex =TerrainInt_(openb3d_openb3dcore_TEntity_GetInstance_pb_TTEntity((struct openb3d_openb3dcore_TEntity_obj*)((struct openb3d_openb3dcore_TEntity_obj*)bbObjectDowncast((BBOBJECT)o,(BBClass*)&openb3d_openb3dcore_TEntity))),14);
	struct BBDebugStm __stmt_3 = {0x2fecc01ccff76d98, 59, 0};
	bbOnDebugEnterStm(&__stmt_3);
	((struct openb3d_openb3dcore_TTerrain_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tterrain_size =TerrainFloat_(openb3d_openb3dcore_TEntity_GetInstance_pb_TTEntity((struct openb3d_openb3dcore_TEntity_obj*)((struct openb3d_openb3dcore_TEntity_obj*)bbObjectDowncast((BBOBJECT)o,(BBClass*)&openb3d_openb3dcore_TEntity))),5);
	struct BBDebugStm __stmt_4 = {0x2fecc01ccff76d98, 60, 0};
	bbOnDebugEnterStm(&__stmt_4);
	((struct openb3d_openb3dcore_TTerrain_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tterrain_vsize =TerrainFloat_(openb3d_openb3dcore_TEntity_GetInstance_pb_TTEntity((struct openb3d_openb3dcore_TEntity_obj*)((struct openb3d_openb3dcore_TEntity_obj*)bbObjectDowncast((BBOBJECT)o,(BBClass*)&openb3d_openb3dcore_TEntity))),6);
	struct BBDebugStm __stmt_5 = {0x2fecc01ccff76d98, 61, 0};
	bbOnDebugEnterStm(&__stmt_5);
	((struct openb3d_openb3dcore_TTerrain_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tterrain_level2dzsize =TerrainFloat_(openb3d_openb3dcore_TEntity_GetInstance_pb_TTEntity((struct openb3d_openb3dcore_TEntity_obj*)((struct openb3d_openb3dcore_TEntity_obj*)bbObjectDowncast((BBOBJECT)o,(BBClass*)&openb3d_openb3dcore_TEntity))),7);
	struct BBDebugStm __stmt_6 = {0x2fecc01ccff76d98, 62, 0};
	bbOnDebugEnterStm(&__stmt_6);
	((struct openb3d_openb3dcore_TTerrain_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tterrain_heightmap =TerrainFloat_(openb3d_openb3dcore_TEntity_GetInstance_pb_TTEntity((struct openb3d_openb3dcore_TEntity_obj*)((struct openb3d_openb3dcore_TEntity_obj*)bbObjectDowncast((BBOBJECT)o,(BBClass*)&openb3d_openb3dcore_TEntity))),8);
	struct BBDebugStm __stmt_7 = {0x2fecc01ccff76d98, 63, 0};
	bbOnDebugEnterStm(&__stmt_7);
	((struct openb3d_openb3dcore_TTerrain_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tterrain_normalsmap =TerrainFloat_(openb3d_openb3dcore_TEntity_GetInstance_pb_TTEntity((struct openb3d_openb3dcore_TEntity_obj*)((struct openb3d_openb3dcore_TEntity_obj*)bbObjectDowncast((BBOBJECT)o,(BBClass*)&openb3d_openb3dcore_TEntity))),13);
	struct BBDebugStm __stmt_8 = {0x2fecc01ccff76d98, 66, 0};
	bbOnDebugEnterStm(&__stmt_8);
	bbt_inst=TerrainCamera_(openb3d_openb3dcore_TEntity_GetInstance_pb_TTEntity((struct openb3d_openb3dcore_TEntity_obj*)((struct openb3d_openb3dcore_TEntity_obj*)bbObjectDowncast((BBOBJECT)o,(BBClass*)&openb3d_openb3dcore_TEntity))),10);
	struct BBDebugStm __stmt_9 = {0x2fecc01ccff76d98, 67, 0};
	bbOnDebugEnterStm(&__stmt_9);
	((struct openb3d_openb3dcore_TTerrain_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tterrain_eyepoint =(struct openb3d_openb3dcore_TCamera_obj*)((struct openb3d_openb3dcore_TCamera_obj*)bbObjectDowncast((BBOBJECT)openb3d_openb3dcore_TEntity_GetObject_TTEntity_pb(bbt_inst),(BBClass*)&openb3d_openb3dcore_TCamera));
	struct BBDebugStm __stmt_10 = {0x2fecc01ccff76d98, 70, 0};
	bbOnDebugEnterStm(&__stmt_10);
	bbt_inst=TerrainShader_(openb3d_openb3dcore_TEntity_GetInstance_pb_TTEntity((struct openb3d_openb3dcore_TEntity_obj*)((struct openb3d_openb3dcore_TEntity_obj*)bbObjectDowncast((BBOBJECT)o,(BBClass*)&openb3d_openb3dcore_TEntity))),11);
	struct BBDebugStm __stmt_11 = {0x2fecc01ccff76d98, 71, 0};
	bbOnDebugEnterStm(&__stmt_11);
	((struct openb3d_openb3dcore_TTerrain_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tterrain_shadermat =(struct openb3d_openb3dcore_TShader_obj*)openb3d_openb3dcore_TShader_GetObject_TTShader_pb(bbt_inst);
	struct BBDebugStm __stmt_12 = {0x2fecc01ccff76d98, 73, 0};
	bbOnDebugEnterStm(&__stmt_12);
	o->clas->f_CopyList__i_TTList((struct brl_linkedlist_TList_obj*)openb3d_openb3dcore_TTerrain_terrain_list);
	bbOnDebugLeaveScope();
	return 0;
}
BBINT openb3d_openb3dcore_TTerrain_DebugGlobals_i_ii(BBINT bbt_debug_subobjects,BBINT bbt_debug_base_types){
	BBSTRING bbt_pad=(&bbEmptyString);
	BBINT bbt_loop=0;
	struct BBDebugScope_4 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"DebugGlobals",
		{
			{
				BBDEBUGDECL_LOCAL,
				"debug_subobjects",
				"i",
				.var_address=&bbt_debug_subobjects
			},
			{
				BBDEBUGDECL_LOCAL,
				"debug_base_types",
				"i",
				.var_address=&bbt_debug_base_types
			},
			{
				BBDEBUGDECL_LOCAL,
				"pad",
				"$",
				.var_address=&bbt_pad
			},
			{
				BBDEBUGDECL_LOCAL,
				"loop",
				"i",
				.var_address=&bbt_loop
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x2fecc01ccff76d98, 79, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbt_pad=((BBString*)&bbEmptyString);
	struct BBDebugStm __stmt_1 = {0x2fecc01ccff76d98, 80, 0};
	bbOnDebugEnterStm(&__stmt_1);
	bbt_loop=bbt_debug_subobjects;
	struct BBDebugStm __stmt_2 = {0x2fecc01ccff76d98, 81, 0};
	bbOnDebugEnterStm(&__stmt_2);
	if(bbt_debug_base_types>bbt_debug_subobjects){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x2fecc01ccff76d98, 81, 0};
		bbOnDebugEnterStm(&__stmt_0);
		bbt_loop=bbt_debug_base_types;
		bbOnDebugLeaveScope();
	}
	struct BBDebugStm __stmt_3 = {0x2fecc01ccff76d98, 82, 0};
	bbOnDebugEnterStm(&__stmt_3);
	{
		BBINT bbt_i=1;
		BBINT bbt_=bbt_loop;
		for(;(bbt_i<bbt_);bbt_i=(bbt_i+1)){
			struct BBDebugScope_1 __scope = {
				BBDEBUGSCOPE_LOCALBLOCK,
				0,
				{
					{
						BBDEBUGDECL_LOCAL,
						"i",
						"i",
						.var_address=&bbt_i
					},
					{
						BBDEBUGDECL_END
					}
				}
			};
			bbOnDebugEnterScope((BBDebugScope *)&__scope);
			struct BBDebugStm __stmt_0 = {0x2fecc01ccff76d98, 83, 0};
			bbOnDebugEnterStm(&__stmt_0);
			bbt_pad=bbStringConcat(bbt_pad,((BBString*)&_s0));
			bbOnDebugLeaveScope();
		}
	}
	struct BBDebugStm __stmt_4 = {0x2fecc01ccff76d98, 85, 0};
	bbOnDebugEnterStm(&__stmt_4);
	if(bbt_debug_subobjects!=0){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x2fecc01ccff76d98, 85, 0};
		bbOnDebugEnterStm(&__stmt_0);
		bbt_debug_subobjects+=1;
		bbOnDebugLeaveScope();
	}
	struct BBDebugStm __stmt_5 = {0x2fecc01ccff76d98, 86, 0};
	bbOnDebugEnterStm(&__stmt_5);
	if(bbt_debug_base_types!=0){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x2fecc01ccff76d98, 86, 0};
		bbOnDebugEnterStm(&__stmt_0);
		bbt_debug_base_types+=1;
		bbOnDebugLeaveScope();
	}
	struct BBDebugStm __stmt_6 = {0x2fecc01ccff76d98, 87, 0};
	bbOnDebugEnterStm(&__stmt_6);
	brl_blitz_DebugLog(bbStringConcat(bbt_pad,((BBString*)&_s671)));
	struct BBDebugStm __stmt_7 = {0x2fecc01ccff76d98, 93, 0};
	bbOnDebugEnterStm(&__stmt_7);
	if(openb3d_openb3dcore_TTerrain_Roam_Detail!=0){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x2fecc01ccff76d98, 93, 0};
		bbOnDebugEnterStm(&__stmt_0);
		brl_blitz_DebugLog(bbStringConcat(bbStringConcat(bbt_pad,((BBString*)&_s672)),bbStringFromFloat(openb3d_openb3dcore_TTerrain_Roam_Detail[0])));
		bbOnDebugLeaveScope();
	}else{
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x2fecc01ccff76d98, 93, 0};
		bbOnDebugEnterStm(&__stmt_0);
		brl_blitz_DebugLog(bbStringConcat(bbt_pad,((BBString*)&_s673)));
		bbOnDebugLeaveScope();
	}
	struct BBDebugStm __stmt_8 = {0x2fecc01ccff76d98, 95, 0};
	bbOnDebugEnterStm(&__stmt_8);
	brl_blitz_DebugLog((BBString*)&bbEmptyString);
	bbOnDebugLeaveScope();
	return 0;
}
BBINT _openb3d_openb3dcore_TTerrain_DebugFields_ii(struct openb3d_openb3dcore_TTerrain_obj* o,BBINT bbt_debug_subobjects,BBINT bbt_debug_base_types){
	((struct openb3d_openb3dcore_TTerrain_obj*)bbNullObjectTest((BBObject*)o));
	BBSTRING bbt_pad=(&bbEmptyString);
	BBINT bbt_loop=0;
	struct BBDebugScope_5 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"DebugFields",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TTerrain",
				.var_address=&o
			},
			{
				BBDEBUGDECL_LOCAL,
				"debug_subobjects",
				"i",
				.var_address=&bbt_debug_subobjects
			},
			{
				BBDEBUGDECL_LOCAL,
				"debug_base_types",
				"i",
				.var_address=&bbt_debug_base_types
			},
			{
				BBDEBUGDECL_LOCAL,
				"pad",
				"$",
				.var_address=&bbt_pad
			},
			{
				BBDEBUGDECL_LOCAL,
				"loop",
				"i",
				.var_address=&bbt_loop
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x2fecc01ccff76d98, 101, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbt_pad=((BBString*)&bbEmptyString);
	struct BBDebugStm __stmt_1 = {0x2fecc01ccff76d98, 102, 0};
	bbOnDebugEnterStm(&__stmt_1);
	bbt_loop=bbt_debug_subobjects;
	struct BBDebugStm __stmt_2 = {0x2fecc01ccff76d98, 103, 0};
	bbOnDebugEnterStm(&__stmt_2);
	if(bbt_debug_base_types>bbt_debug_subobjects){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x2fecc01ccff76d98, 103, 0};
		bbOnDebugEnterStm(&__stmt_0);
		bbt_loop=bbt_debug_base_types;
		bbOnDebugLeaveScope();
	}
	struct BBDebugStm __stmt_3 = {0x2fecc01ccff76d98, 104, 0};
	bbOnDebugEnterStm(&__stmt_3);
	{
		BBINT bbt_i=1;
		BBINT bbt_=bbt_loop;
		for(;(bbt_i<bbt_);bbt_i=(bbt_i+1)){
			struct BBDebugScope_1 __scope = {
				BBDEBUGSCOPE_LOCALBLOCK,
				0,
				{
					{
						BBDEBUGDECL_LOCAL,
						"i",
						"i",
						.var_address=&bbt_i
					},
					{
						BBDEBUGDECL_END
					}
				}
			};
			bbOnDebugEnterScope((BBDebugScope *)&__scope);
			struct BBDebugStm __stmt_0 = {0x2fecc01ccff76d98, 105, 0};
			bbOnDebugEnterStm(&__stmt_0);
			bbt_pad=bbStringConcat(bbt_pad,((BBString*)&_s0));
			bbOnDebugLeaveScope();
		}
	}
	struct BBDebugStm __stmt_4 = {0x2fecc01ccff76d98, 107, 0};
	bbOnDebugEnterStm(&__stmt_4);
	if(bbt_debug_subobjects!=0){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x2fecc01ccff76d98, 107, 0};
		bbOnDebugEnterStm(&__stmt_0);
		bbt_debug_subobjects+=1;
		bbOnDebugLeaveScope();
	}
	struct BBDebugStm __stmt_5 = {0x2fecc01ccff76d98, 108, 0};
	bbOnDebugEnterStm(&__stmt_5);
	if(bbt_debug_base_types!=0){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x2fecc01ccff76d98, 108, 0};
		bbOnDebugEnterStm(&__stmt_0);
		bbt_debug_base_types+=1;
		bbOnDebugLeaveScope();
	}
	struct BBDebugStm __stmt_6 = {0x2fecc01ccff76d98, 109, 0};
	bbOnDebugEnterStm(&__stmt_6);
	brl_blitz_DebugLog(bbStringConcat(bbStringConcat(bbt_pad,((BBString*)&_s674)),openb3d_openb3dcore_StringPtr(openb3d_openb3dcore_TEntity_GetInstance_pb_TTEntity((struct openb3d_openb3dcore_TEntity_obj*)((struct openb3d_openb3dcore_TEntity_obj*)bbObjectDowncast((BBOBJECT)o,(BBClass*)&openb3d_openb3dcore_TEntity))))));
	struct BBDebugStm __stmt_7 = {0x2fecc01ccff76d98, 112, 0};
	bbOnDebugEnterStm(&__stmt_7);
	if(((struct openb3d_openb3dcore_TTerrain_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tterrain_size !=0){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x2fecc01ccff76d98, 112, 0};
		bbOnDebugEnterStm(&__stmt_0);
		brl_blitz_DebugLog(bbStringConcat(bbStringConcat(bbt_pad,((BBString*)&_s675)),bbStringFromFloat(((struct openb3d_openb3dcore_TTerrain_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tterrain_size [0])));
		bbOnDebugLeaveScope();
	}else{
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x2fecc01ccff76d98, 112, 0};
		bbOnDebugEnterStm(&__stmt_0);
		brl_blitz_DebugLog(bbStringConcat(bbt_pad,((BBString*)&_s676)));
		bbOnDebugLeaveScope();
	}
	struct BBDebugStm __stmt_8 = {0x2fecc01ccff76d98, 113, 0};
	bbOnDebugEnterStm(&__stmt_8);
	if(((struct openb3d_openb3dcore_TTerrain_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tterrain_vsize !=0){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x2fecc01ccff76d98, 113, 0};
		bbOnDebugEnterStm(&__stmt_0);
		brl_blitz_DebugLog(bbStringConcat(bbStringConcat(bbt_pad,((BBString*)&_s677)),bbStringFromFloat(((struct openb3d_openb3dcore_TTerrain_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tterrain_vsize [0])));
		bbOnDebugLeaveScope();
	}else{
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x2fecc01ccff76d98, 113, 0};
		bbOnDebugEnterStm(&__stmt_0);
		brl_blitz_DebugLog(bbStringConcat(bbt_pad,((BBString*)&_s678)));
		bbOnDebugLeaveScope();
	}
	struct BBDebugStm __stmt_9 = {0x2fecc01ccff76d98, 114, 0};
	bbOnDebugEnterStm(&__stmt_9);
	if(((struct openb3d_openb3dcore_TTerrain_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tterrain_level2dzsize !=0){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x2fecc01ccff76d98, 114, 0};
		bbOnDebugEnterStm(&__stmt_0);
		brl_blitz_DebugLog(bbStringConcat(bbStringConcat(bbt_pad,((BBString*)&_s679)),bbStringFromFloat(((struct openb3d_openb3dcore_TTerrain_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tterrain_level2dzsize [0])));
		bbOnDebugLeaveScope();
	}else{
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x2fecc01ccff76d98, 114, 0};
		bbOnDebugEnterStm(&__stmt_0);
		brl_blitz_DebugLog(bbStringConcat(bbt_pad,((BBString*)&_s680)));
		bbOnDebugLeaveScope();
	}
	struct BBDebugStm __stmt_10 = {0x2fecc01ccff76d98, 115, 0};
	bbOnDebugEnterStm(&__stmt_10);
	if(((struct openb3d_openb3dcore_TTerrain_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tterrain_heightmap !=0){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x2fecc01ccff76d98, 115, 0};
		bbOnDebugEnterStm(&__stmt_0);
		brl_blitz_DebugLog(bbStringConcat(bbStringConcat(bbt_pad,((BBString*)&_s681)),bbStringFromFloat(((struct openb3d_openb3dcore_TTerrain_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tterrain_heightmap [0])));
		bbOnDebugLeaveScope();
	}else{
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x2fecc01ccff76d98, 115, 0};
		bbOnDebugEnterStm(&__stmt_0);
		brl_blitz_DebugLog(bbStringConcat(bbt_pad,((BBString*)&_s682)));
		bbOnDebugLeaveScope();
	}
	struct BBDebugStm __stmt_11 = {0x2fecc01ccff76d98, 116, 0};
	bbOnDebugEnterStm(&__stmt_11);
	if(((struct openb3d_openb3dcore_TTerrain_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tterrain_normalsmap !=0){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x2fecc01ccff76d98, 116, 0};
		bbOnDebugEnterStm(&__stmt_0);
		brl_blitz_DebugLog(bbStringConcat(bbStringConcat(bbStringConcat(bbStringConcat(bbStringConcat(bbStringConcat(bbt_pad,((BBString*)&_s683)),bbStringFromFloat(((struct openb3d_openb3dcore_TTerrain_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tterrain_normalsmap [0])),((BBString*)&_s684)),bbStringFromFloat(((struct openb3d_openb3dcore_TTerrain_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tterrain_normalsmap [1])),((BBString*)&_s685)),bbStringFromFloat(((struct openb3d_openb3dcore_TTerrain_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tterrain_normalsmap [2])));
		bbOnDebugLeaveScope();
	}else{
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x2fecc01ccff76d98, 116, 0};
		bbOnDebugEnterStm(&__stmt_0);
		brl_blitz_DebugLog(bbStringConcat(bbt_pad,((BBString*)&_s686)));
		bbOnDebugLeaveScope();
	}
	struct BBDebugStm __stmt_12 = {0x2fecc01ccff76d98, 119, 0};
	bbOnDebugEnterStm(&__stmt_12);
	brl_blitz_DebugLog(bbStringConcat(bbStringConcat(bbt_pad,((BBString*)&_s687)),openb3d_openb3dcore_StringPtr(openb3d_openb3dcore_TEntity_GetInstance_pb_TTEntity((struct openb3d_openb3dcore_TEntity_obj*)((struct openb3d_openb3dcore_TEntity_obj*)bbObjectDowncast((BBOBJECT)((struct openb3d_openb3dcore_TTerrain_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tterrain_eyepoint ,(BBClass*)&openb3d_openb3dcore_TEntity))))));
	struct BBDebugStm __stmt_13 = {0x2fecc01ccff76d98, 120, 0};
	bbOnDebugEnterStm(&__stmt_13);
	if((bbt_debug_subobjects!=0) && (((BBOBJECT)((struct openb3d_openb3dcore_TTerrain_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tterrain_eyepoint )!=&bbNullObject)){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x2fecc01ccff76d98, 120, 0};
		bbOnDebugEnterStm(&__stmt_0);
		((struct openb3d_openb3dcore_TCamera_obj*)bbNullObjectTest((BBObject*)((struct openb3d_openb3dcore_TTerrain_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tterrain_eyepoint ))->clas->m_DebugFields_ii((struct openb3d_openb3dcore_TCamera_obj*)((struct openb3d_openb3dcore_TTerrain_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tterrain_eyepoint ,bbt_debug_subobjects,bbt_debug_base_types);
		bbOnDebugLeaveScope();
	}
	struct BBDebugStm __stmt_14 = {0x2fecc01ccff76d98, 123, 0};
	bbOnDebugEnterStm(&__stmt_14);
	brl_blitz_DebugLog(bbStringConcat(bbStringConcat(bbt_pad,((BBString*)&_s358)),openb3d_openb3dcore_StringPtr(openb3d_openb3dcore_TShader_GetInstance_pb_TTShader((struct openb3d_openb3dcore_TShader_obj*)((struct openb3d_openb3dcore_TTerrain_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tterrain_shadermat ))));
	struct BBDebugStm __stmt_15 = {0x2fecc01ccff76d98, 126, 0};
	bbOnDebugEnterStm(&__stmt_15);
	brl_blitz_DebugLog((BBString*)&bbEmptyString);
	struct BBDebugStm __stmt_16 = {0x2fecc01ccff76d98, 128, 0};
	bbOnDebugEnterStm(&__stmt_16);
	if(bbt_debug_base_types!=0){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x2fecc01ccff76d98, 128, 0};
		bbOnDebugEnterStm(&__stmt_0);
		(&openb3d_openb3dcore_TTerrain)->super->m_DebugFields_ii((struct openb3d_openb3dcore_TEntity_obj*)o,bbt_debug_subobjects,bbt_debug_base_types);
		bbOnDebugLeaveScope();
	}
	bbOnDebugLeaveScope();
	return 0;
}
BBINT openb3d_openb3dcore_TTerrain_AddList__i_TTList(struct brl_linkedlist_TList_obj* bbt_list){
	struct BBDebugScope_1 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"AddList_",
		{
			{
				BBDEBUGDECL_LOCAL,
				"list",
				":TList",
				.var_address=&bbt_list
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x2fecc01ccff76d98, 134, 0};
	bbOnDebugEnterStm(&__stmt_0);
	openb3d_openb3dcore_TEntity_AddList__i_TTList((struct brl_linkedlist_TList_obj*)bbt_list);
	struct BBDebugStm __stmt_1 = {0x2fecc01ccff76d98, 136, 0};
	bbOnDebugEnterStm(&__stmt_1);
	struct brl_linkedlist_TList_obj* bbt_=(struct brl_linkedlist_TList_obj*)bbt_list;
	struct BBDebugStm __stmt_2 = {0x2fecc01ccff76d98, 137, 0};
	bbOnDebugEnterStm(&__stmt_2);
	if(((struct brl_linkedlist_TList_obj*)bbt_)==openb3d_openb3dcore_TTerrain_terrain_list){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x2fecc01ccff76d98, 138, 0};
		bbOnDebugEnterStm(&__stmt_0);
		if(StaticListSize_(51,1)!=0){
			BBBYTE* bbt_inst=0;
			struct openb3d_openb3dcore_TTerrain_obj* bbt_obj=(struct openb3d_openb3dcore_TTerrain_obj*)((struct openb3d_openb3dcore_TTerrain_obj*)&bbNullObject);
			struct BBDebugScope_2 __scope = {
				BBDEBUGSCOPE_LOCALBLOCK,
				0,
				{
					{
						BBDEBUGDECL_LOCAL,
						"inst",
						"*b",
						.var_address=&bbt_inst
					},
					{
						BBDEBUGDECL_LOCAL,
						"obj",
						":TTerrain",
						.var_address=&bbt_obj
					},
					{
						BBDEBUGDECL_END
					}
				}
			};
			bbOnDebugEnterScope((BBDebugScope *)&__scope);
			struct BBDebugStm __stmt_0 = {0x2fecc01ccff76d98, 139, 0};
			bbOnDebugEnterStm(&__stmt_0);
			bbt_inst=StaticIterListTerrain_(51,1,(&openb3d_openb3dcore_TTerrain_terrain_list_id));
			struct BBDebugStm __stmt_1 = {0x2fecc01ccff76d98, 140, 0};
			bbOnDebugEnterStm(&__stmt_1);
			bbt_obj=(struct openb3d_openb3dcore_TTerrain_obj*)((struct openb3d_openb3dcore_TTerrain_obj*)bbObjectDowncast((BBOBJECT)openb3d_openb3dcore_TEntity_GetObject_TTEntity_pb(bbt_inst),(BBClass*)&openb3d_openb3dcore_TTerrain));
			struct BBDebugStm __stmt_2 = {0x2fecc01ccff76d98, 141, 0};
			bbOnDebugEnterStm(&__stmt_2);
			if(((BBObject*)bbt_obj)!= &bbNullObject){
				struct BBDebugScope __scope = {
					BBDEBUGSCOPE_LOCALBLOCK,
					0,
					{
						{
							BBDEBUGDECL_END
						}
					}
				};
				bbOnDebugEnterScope((BBDebugScope *)&__scope);
				struct BBDebugStm __stmt_0 = {0x2fecc01ccff76d98, 141, 0};
				bbOnDebugEnterStm(&__stmt_0);
				brl_linkedlist_ListAddLast((struct brl_linkedlist_TList_obj*)bbt_list,(BBOBJECT)bbt_obj);
				bbOnDebugLeaveScope();
			}
			bbOnDebugLeaveScope();
		}
		bbOnDebugLeaveScope();
	}
	bbOnDebugLeaveScope();
	return 0;
}
BBINT openb3d_openb3dcore_TTerrain_CopyList__i_TTList(struct brl_linkedlist_TList_obj* bbt_list){
	struct BBDebugScope_1 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"CopyList_",
		{
			{
				BBDEBUGDECL_LOCAL,
				"list",
				":TList",
				.var_address=&bbt_list
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x2fecc01ccff76d98, 149, 0};
	bbOnDebugEnterStm(&__stmt_0);
	openb3d_openb3dcore_TEntity_CopyList__i_TTList((struct brl_linkedlist_TList_obj*)bbt_list);
	struct BBDebugStm __stmt_1 = {0x2fecc01ccff76d98, 151, 0};
	bbOnDebugEnterStm(&__stmt_1);
	struct brl_linkedlist_TList_obj* bbt_=(struct brl_linkedlist_TList_obj*)bbt_list;
	struct BBDebugStm __stmt_2 = {0x2fecc01ccff76d98, 152, 0};
	bbOnDebugEnterStm(&__stmt_2);
	if(((struct brl_linkedlist_TList_obj*)bbt_)==openb3d_openb3dcore_TTerrain_terrain_list){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x2fecc01ccff76d98, 153, 0};
		bbOnDebugEnterStm(&__stmt_0);
		openb3d_openb3dcore_TTerrain_terrain_list_id=0;
		struct BBDebugStm __stmt_1 = {0x2fecc01ccff76d98, 154, 0};
		bbOnDebugEnterStm(&__stmt_1);
		{
			BBINT bbt_id=0;
			BBINT bbt_2=(StaticListSize_(51,1)-1);
			for(;(bbt_id<=bbt_2);bbt_id=(bbt_id+1)){
				BBBYTE* bbt_inst=0;
				struct openb3d_openb3dcore_TTerrain_obj* bbt_obj=(struct openb3d_openb3dcore_TTerrain_obj*)((struct openb3d_openb3dcore_TTerrain_obj*)&bbNullObject);
				struct BBDebugScope_3 __scope = {
					BBDEBUGSCOPE_LOCALBLOCK,
					0,
					{
						{
							BBDEBUGDECL_LOCAL,
							"id",
							"i",
							.var_address=&bbt_id
						},
						{
							BBDEBUGDECL_LOCAL,
							"inst",
							"*b",
							.var_address=&bbt_inst
						},
						{
							BBDEBUGDECL_LOCAL,
							"obj",
							":TTerrain",
							.var_address=&bbt_obj
						},
						{
							BBDEBUGDECL_END
						}
					}
				};
				bbOnDebugEnterScope((BBDebugScope *)&__scope);
				struct BBDebugStm __stmt_0 = {0x2fecc01ccff76d98, 155, 0};
				bbOnDebugEnterStm(&__stmt_0);
				bbt_inst=StaticIterListTerrain_(51,1,(&openb3d_openb3dcore_TTerrain_terrain_list_id));
				struct BBDebugStm __stmt_1 = {0x2fecc01ccff76d98, 156, 0};
				bbOnDebugEnterStm(&__stmt_1);
				bbt_obj=(struct openb3d_openb3dcore_TTerrain_obj*)((struct openb3d_openb3dcore_TTerrain_obj*)bbObjectDowncast((BBOBJECT)openb3d_openb3dcore_TEntity_GetObject_TTEntity_pb(bbt_inst),(BBClass*)&openb3d_openb3dcore_TTerrain));
				struct BBDebugStm __stmt_2 = {0x2fecc01ccff76d98, 157, 0};
				bbOnDebugEnterStm(&__stmt_2);
				if(((BBObject*)bbt_obj)!= &bbNullObject){
					struct BBDebugScope __scope = {
						BBDEBUGSCOPE_LOCALBLOCK,
						0,
						{
							{
								BBDEBUGDECL_END
							}
						}
					};
					bbOnDebugEnterScope((BBDebugScope *)&__scope);
					struct BBDebugStm __stmt_0 = {0x2fecc01ccff76d98, 157, 0};
					bbOnDebugEnterStm(&__stmt_0);
					brl_linkedlist_ListAddLast((struct brl_linkedlist_TList_obj*)bbt_list,(BBOBJECT)bbt_obj);
					bbOnDebugLeaveScope();
				}
				bbOnDebugLeaveScope();
			}
		}
		bbOnDebugLeaveScope();
	}
	bbOnDebugLeaveScope();
	return 0;
}
BBINT _openb3d_openb3dcore_TTerrain_FreeEntity(struct openb3d_openb3dcore_TTerrain_obj* o){
	((struct openb3d_openb3dcore_TTerrain_obj*)bbNullObjectTest((BBObject*)o));
	struct BBDebugScope_1 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"FreeEntity",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TTerrain",
				.var_address=&o
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x2fecc01ccff76d98, 167, 0};
	bbOnDebugEnterStm(&__stmt_0);
	if(((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tentity_exists !=0){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x2fecc01ccff76d98, 168, 0};
		bbOnDebugEnterStm(&__stmt_0);
		brl_linkedlist_ListRemove((struct brl_linkedlist_TList_obj*)openb3d_openb3dcore_TTerrain_terrain_list,(BBOBJECT)o);
		struct BBDebugStm __stmt_1 = {0x2fecc01ccff76d98, 168, 0};
		bbOnDebugEnterStm(&__stmt_1);
		openb3d_openb3dcore_TTerrain_terrain_list_id-=1;
		struct BBDebugStm __stmt_2 = {0x2fecc01ccff76d98, 169, 0};
		bbOnDebugEnterStm(&__stmt_2);
		(&openb3d_openb3dcore_TTerrain)->super->m_FreeEntity((struct openb3d_openb3dcore_TEntity_obj*)o);
		bbOnDebugLeaveScope();
	}
	bbOnDebugLeaveScope();
	return 0;
}
struct openb3d_openb3dcore_TTerrain_obj* openb3d_openb3dcore_TTerrain_CreateTerrain_TTTerrain_iTTEntity(BBINT bbt_size,struct openb3d_openb3dcore_TEntity_obj* bbt_parent){
	BBBYTE* bbt_inst=0;
	struct BBDebugScope_3 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"CreateTerrain",
		{
			{
				BBDEBUGDECL_LOCAL,
				"size",
				"i",
				.var_address=&bbt_size
			},
			{
				BBDEBUGDECL_LOCAL,
				"parent",
				":TEntity",
				.var_address=&bbt_parent
			},
			{
				BBDEBUGDECL_LOCAL,
				"inst",
				"*b",
				.var_address=&bbt_inst
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x2fecc01ccff76d98, 176, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbt_inst=CreateTerrain_(bbt_size,openb3d_openb3dcore_TEntity_GetInstance_pb_TTEntity((struct openb3d_openb3dcore_TEntity_obj*)bbt_parent));
	struct BBDebugStm __stmt_1 = {0x2fecc01ccff76d98, 177, 0};
	bbOnDebugEnterStm(&__stmt_1);
	bbOnDebugLeaveScope();
	return (struct openb3d_openb3dcore_TTerrain_obj*)openb3d_openb3dcore_TTerrain_CreateObject_TTTerrain_pb(bbt_inst);
}
struct openb3d_openb3dcore_TTerrain_obj* openb3d_openb3dcore_TTerrain_LoadTerrain_TTTerrain_STTEntity(BBSTRING bbt_file,struct openb3d_openb3dcore_TEntity_obj* bbt_parent){
	BBBYTE* bbt_cString=0;
	BBBYTE* bbt_inst=0;
	struct openb3d_openb3dcore_TTerrain_obj* bbt_terr=(struct openb3d_openb3dcore_TTerrain_obj*)((struct openb3d_openb3dcore_TTerrain_obj*)&bbNullObject);
	struct BBDebugScope_5 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"LoadTerrain",
		{
			{
				BBDEBUGDECL_LOCAL,
				"file",
				"$",
				.var_address=&bbt_file
			},
			{
				BBDEBUGDECL_LOCAL,
				"parent",
				":TEntity",
				.var_address=&bbt_parent
			},
			{
				BBDEBUGDECL_LOCAL,
				"cString",
				"*b",
				.var_address=&bbt_cString
			},
			{
				BBDEBUGDECL_LOCAL,
				"inst",
				"*b",
				.var_address=&bbt_inst
			},
			{
				BBDEBUGDECL_LOCAL,
				"terr",
				":TTerrain",
				.var_address=&bbt_terr
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x2fecc01ccff76d98, 183, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbt_cString=bbStringToCString((BBSTRING)bbt_file);
	struct BBDebugStm __stmt_1 = {0x2fecc01ccff76d98, 184, 0};
	bbOnDebugEnterStm(&__stmt_1);
	bbt_inst=LoadTerrain_(bbt_cString,openb3d_openb3dcore_TEntity_GetInstance_pb_TTEntity((struct openb3d_openb3dcore_TEntity_obj*)bbt_parent));
	struct BBDebugStm __stmt_2 = {0x2fecc01ccff76d98, 185, 0};
	bbOnDebugEnterStm(&__stmt_2);
	bbt_terr=(struct openb3d_openb3dcore_TTerrain_obj*)openb3d_openb3dcore_TTerrain_CreateObject_TTTerrain_pb(bbt_inst);
	struct BBDebugStm __stmt_3 = {0x2fecc01ccff76d98, 186, 0};
	bbOnDebugEnterStm(&__stmt_3);
	bbMemFree((void*)bbt_cString);
	struct BBDebugStm __stmt_4 = {0x2fecc01ccff76d98, 187, 0};
	bbOnDebugEnterStm(&__stmt_4);
	bbOnDebugLeaveScope();
	return (struct openb3d_openb3dcore_TTerrain_obj*)bbt_terr;
}
BBINT _openb3d_openb3dcore_TTerrain_ModifyTerrain_iif(struct openb3d_openb3dcore_TTerrain_obj* o,BBINT bbt_x,BBINT bbt_z,BBFLOAT bbt_new_height){
	((struct openb3d_openb3dcore_TTerrain_obj*)bbNullObjectTest((BBObject*)o));
	struct BBDebugScope_4 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"ModifyTerrain",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TTerrain",
				.var_address=&o
			},
			{
				BBDEBUGDECL_LOCAL,
				"x",
				"i",
				.var_address=&bbt_x
			},
			{
				BBDEBUGDECL_LOCAL,
				"z",
				"i",
				.var_address=&bbt_z
			},
			{
				BBDEBUGDECL_LOCAL,
				"new_height",
				"f",
				.var_address=&bbt_new_height
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x2fecc01ccff76d98, 193, 0};
	bbOnDebugEnterStm(&__stmt_0);
	ModifyTerrain_(openb3d_openb3dcore_TEntity_GetInstance_pb_TTEntity((struct openb3d_openb3dcore_TEntity_obj*)((struct openb3d_openb3dcore_TEntity_obj*)bbObjectDowncast((BBOBJECT)o,(BBClass*)&openb3d_openb3dcore_TEntity))),bbt_x,bbt_z,bbt_new_height);
	bbOnDebugLeaveScope();
	return 0;
}
BBFLOAT _openb3d_openb3dcore_TTerrain_TerrainHeight_ii(struct openb3d_openb3dcore_TTerrain_obj* o,BBINT bbt_x,BBINT bbt_z){
	((struct openb3d_openb3dcore_TTerrain_obj*)bbNullObjectTest((BBObject*)o));
	struct BBDebugScope_3 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"TerrainHeight",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TTerrain",
				.var_address=&o
			},
			{
				BBDEBUGDECL_LOCAL,
				"x",
				"i",
				.var_address=&bbt_x
			},
			{
				BBDEBUGDECL_LOCAL,
				"z",
				"i",
				.var_address=&bbt_z
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x2fecc01ccff76d98, 199, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbOnDebugLeaveScope();
	return TerrainHeight_(openb3d_openb3dcore_TEntity_GetInstance_pb_TTEntity((struct openb3d_openb3dcore_TEntity_obj*)((struct openb3d_openb3dcore_TEntity_obj*)bbObjectDowncast((BBOBJECT)o,(BBClass*)&openb3d_openb3dcore_TEntity))),bbt_x,bbt_z);
}
BBFLOAT _openb3d_openb3dcore_TTerrain_TerrainX_fff(struct openb3d_openb3dcore_TTerrain_obj* o,BBFLOAT bbt_x,BBFLOAT bbt_y,BBFLOAT bbt_z){
	((struct openb3d_openb3dcore_TTerrain_obj*)bbNullObjectTest((BBObject*)o));
	struct BBDebugScope_4 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"TerrainX",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TTerrain",
				.var_address=&o
			},
			{
				BBDEBUGDECL_LOCAL,
				"x",
				"f",
				.var_address=&bbt_x
			},
			{
				BBDEBUGDECL_LOCAL,
				"y",
				"f",
				.var_address=&bbt_y
			},
			{
				BBDEBUGDECL_LOCAL,
				"z",
				"f",
				.var_address=&bbt_z
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x2fecc01ccff76d98, 205, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbOnDebugLeaveScope();
	return TerrainX_(openb3d_openb3dcore_TEntity_GetInstance_pb_TTEntity((struct openb3d_openb3dcore_TEntity_obj*)((struct openb3d_openb3dcore_TEntity_obj*)bbObjectDowncast((BBOBJECT)o,(BBClass*)&openb3d_openb3dcore_TEntity))),bbt_x,bbt_y,bbt_z);
}
BBFLOAT _openb3d_openb3dcore_TTerrain_TerrainY_fff(struct openb3d_openb3dcore_TTerrain_obj* o,BBFLOAT bbt_x,BBFLOAT bbt_y,BBFLOAT bbt_z){
	((struct openb3d_openb3dcore_TTerrain_obj*)bbNullObjectTest((BBObject*)o));
	struct BBDebugScope_4 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"TerrainY",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TTerrain",
				.var_address=&o
			},
			{
				BBDEBUGDECL_LOCAL,
				"x",
				"f",
				.var_address=&bbt_x
			},
			{
				BBDEBUGDECL_LOCAL,
				"y",
				"f",
				.var_address=&bbt_y
			},
			{
				BBDEBUGDECL_LOCAL,
				"z",
				"f",
				.var_address=&bbt_z
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x2fecc01ccff76d98, 211, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbOnDebugLeaveScope();
	return TerrainY_(openb3d_openb3dcore_TEntity_GetInstance_pb_TTEntity((struct openb3d_openb3dcore_TEntity_obj*)((struct openb3d_openb3dcore_TEntity_obj*)bbObjectDowncast((BBOBJECT)o,(BBClass*)&openb3d_openb3dcore_TEntity))),bbt_x,bbt_y,bbt_z);
}
BBFLOAT _openb3d_openb3dcore_TTerrain_TerrainZ_fff(struct openb3d_openb3dcore_TTerrain_obj* o,BBFLOAT bbt_x,BBFLOAT bbt_y,BBFLOAT bbt_z){
	((struct openb3d_openb3dcore_TTerrain_obj*)bbNullObjectTest((BBObject*)o));
	struct BBDebugScope_4 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"TerrainZ",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TTerrain",
				.var_address=&o
			},
			{
				BBDEBUGDECL_LOCAL,
				"x",
				"f",
				.var_address=&bbt_x
			},
			{
				BBDEBUGDECL_LOCAL,
				"y",
				"f",
				.var_address=&bbt_y
			},
			{
				BBDEBUGDECL_LOCAL,
				"z",
				"f",
				.var_address=&bbt_z
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x2fecc01ccff76d98, 217, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbOnDebugLeaveScope();
	return TerrainZ_(openb3d_openb3dcore_TEntity_GetInstance_pb_TTEntity((struct openb3d_openb3dcore_TEntity_obj*)((struct openb3d_openb3dcore_TEntity_obj*)bbObjectDowncast((BBOBJECT)o,(BBClass*)&openb3d_openb3dcore_TEntity))),bbt_x,bbt_y,bbt_z);
}
BBINT _openb3d_openb3dcore_TTerrain_UpdateNormals(struct openb3d_openb3dcore_TTerrain_obj* o){
	((struct openb3d_openb3dcore_TTerrain_obj*)bbNullObjectTest((BBObject*)o));
	struct BBDebugScope_1 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"UpdateNormals",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TTerrain",
				.var_address=&o
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x2fecc01ccff76d98, 224, 0};
	bbOnDebugEnterStm(&__stmt_0);
	TerrainUpdateNormals_(openb3d_openb3dcore_TEntity_GetInstance_pb_TTEntity((struct openb3d_openb3dcore_TEntity_obj*)((struct openb3d_openb3dcore_TEntity_obj*)bbObjectDowncast((BBOBJECT)o,(BBClass*)&openb3d_openb3dcore_TEntity))));
	bbOnDebugLeaveScope();
	return 0;
}
struct openb3d_openb3dcore_TTerrain_obj* _openb3d_openb3dcore_TTerrain_CopyEntity_TTEntity(struct openb3d_openb3dcore_TTerrain_obj* o,struct openb3d_openb3dcore_TEntity_obj* bbt_parent){
	((struct openb3d_openb3dcore_TTerrain_obj*)bbNullObjectTest((BBObject*)o));
	BBBYTE* bbt_inst=0;
	struct openb3d_openb3dcore_TTerrain_obj* bbt_terr=(struct openb3d_openb3dcore_TTerrain_obj*)((struct openb3d_openb3dcore_TTerrain_obj*)&bbNullObject);
	struct BBDebugScope_4 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"CopyEntity",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TTerrain",
				.var_address=&o
			},
			{
				BBDEBUGDECL_LOCAL,
				"parent",
				":TEntity",
				.var_address=&bbt_parent
			},
			{
				BBDEBUGDECL_LOCAL,
				"inst",
				"*b",
				.var_address=&bbt_inst
			},
			{
				BBDEBUGDECL_LOCAL,
				"terr",
				":TTerrain",
				.var_address=&bbt_terr
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x2fecc01ccff76d98, 230, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbt_inst=CopyEntity_(openb3d_openb3dcore_TEntity_GetInstance_pb_TTEntity((struct openb3d_openb3dcore_TEntity_obj*)((struct openb3d_openb3dcore_TEntity_obj*)bbObjectDowncast((BBOBJECT)o,(BBClass*)&openb3d_openb3dcore_TEntity))),openb3d_openb3dcore_TEntity_GetInstance_pb_TTEntity((struct openb3d_openb3dcore_TEntity_obj*)bbt_parent));
	struct BBDebugStm __stmt_1 = {0x2fecc01ccff76d98, 231, 0};
	bbOnDebugEnterStm(&__stmt_1);
	bbt_terr=(struct openb3d_openb3dcore_TTerrain_obj*)o->clas->f_CreateObject_TTTerrain_pb(bbt_inst);
	struct BBDebugStm __stmt_2 = {0x2fecc01ccff76d98, 232, 0};
	bbOnDebugEnterStm(&__stmt_2);
	if(((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tentity_pick_mode [0]!=0){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x2fecc01ccff76d98, 232, 0};
		bbOnDebugEnterStm(&__stmt_0);
		openb3d_openb3dcore_TPick_AddList__i_TTList((struct brl_linkedlist_TList_obj*)openb3d_openb3dcore_TPick_ent_list);
		bbOnDebugLeaveScope();
	}
	struct BBDebugStm __stmt_3 = {0x2fecc01ccff76d98, 233, 0};
	bbOnDebugEnterStm(&__stmt_3);
	bbOnDebugLeaveScope();
	return (struct openb3d_openb3dcore_TTerrain_obj*)bbt_terr;
}
BBINT _openb3d_openb3dcore_TTerrain_TerrainDetail_f(struct openb3d_openb3dcore_TTerrain_obj* o,BBFLOAT bbt_detail_level){
	((struct openb3d_openb3dcore_TTerrain_obj*)bbNullObjectTest((BBObject*)o));
	struct BBDebugScope_2 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"TerrainDetail",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TTerrain",
				.var_address=&o
			},
			{
				BBDEBUGDECL_LOCAL,
				"detail_level",
				"f",
				.var_address=&bbt_detail_level
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x2fecc01ccff76d98, 239, 0};
	bbOnDebugEnterStm(&__stmt_0);
	TerrainDetail_(openb3d_openb3dcore_TEntity_GetInstance_pb_TTEntity((struct openb3d_openb3dcore_TEntity_obj*)((struct openb3d_openb3dcore_TEntity_obj*)bbObjectDowncast((BBOBJECT)o,(BBClass*)&openb3d_openb3dcore_TEntity))),bbt_detail_level);
	bbOnDebugLeaveScope();
	return 0;
}
BBINT _openb3d_openb3dcore_TTerrain_TerrainCountVertices(struct openb3d_openb3dcore_TTerrain_obj* o){
	((struct openb3d_openb3dcore_TTerrain_obj*)bbNullObjectTest((BBObject*)o));
	struct BBDebugScope_1 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"TerrainCountVertices",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TTerrain",
				.var_address=&o
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x2fecc01ccff76d98, 245, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbOnDebugLeaveScope();
	return TerrainCountVertices_(openb3d_openb3dcore_TEntity_GetInstance_pb_TTEntity((struct openb3d_openb3dcore_TEntity_obj*)((struct openb3d_openb3dcore_TEntity_obj*)bbObjectDowncast((BBOBJECT)o,(BBClass*)&openb3d_openb3dcore_TEntity))));
}
BBINT _openb3d_openb3dcore_TTerrain_TerrainCountTriangles(struct openb3d_openb3dcore_TTerrain_obj* o){
	((struct openb3d_openb3dcore_TTerrain_obj*)bbNullObjectTest((BBObject*)o));
	struct BBDebugScope_1 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"TerrainCountTriangles",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TTerrain",
				.var_address=&o
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x2fecc01ccff76d98, 251, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbOnDebugLeaveScope();
	return TerrainCountTriangles_(openb3d_openb3dcore_TEntity_GetInstance_pb_TTEntity((struct openb3d_openb3dcore_TEntity_obj*)((struct openb3d_openb3dcore_TEntity_obj*)bbObjectDowncast((BBOBJECT)o,(BBClass*)&openb3d_openb3dcore_TEntity))));
}
BBINT _openb3d_openb3dcore_TTerrain_TerrainScaleTexCoords_ffi(struct openb3d_openb3dcore_TTerrain_obj* o,BBFLOAT bbt_u_scale,BBFLOAT bbt_v_scale,BBINT bbt_coords_set){
	((struct openb3d_openb3dcore_TTerrain_obj*)bbNullObjectTest((BBObject*)o));
	struct BBDebugScope_4 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"TerrainScaleTexCoords",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TTerrain",
				.var_address=&o
			},
			{
				BBDEBUGDECL_LOCAL,
				"u_scale",
				"f",
				.var_address=&bbt_u_scale
			},
			{
				BBDEBUGDECL_LOCAL,
				"v_scale",
				"f",
				.var_address=&bbt_v_scale
			},
			{
				BBDEBUGDECL_LOCAL,
				"coords_set",
				"i",
				.var_address=&bbt_coords_set
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x2fecc01ccff76d98, 257, 0};
	bbOnDebugEnterStm(&__stmt_0);
	TerrainScaleTexCoords_(openb3d_openb3dcore_TEntity_GetInstance_pb_TTEntity((struct openb3d_openb3dcore_TEntity_obj*)((struct openb3d_openb3dcore_TEntity_obj*)bbObjectDowncast((BBOBJECT)o,(BBClass*)&openb3d_openb3dcore_TEntity))),bbt_u_scale,bbt_v_scale,bbt_coords_set);
	bbOnDebugLeaveScope();
	return 0;
}
BBINT _openb3d_openb3dcore_TTerrain_Update(struct openb3d_openb3dcore_TTerrain_obj* o){
	((struct openb3d_openb3dcore_TTerrain_obj*)bbNullObjectTest((BBObject*)o));
	struct BBDebugScope_1 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"Update",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TTerrain",
				.var_address=&o
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	bbOnDebugLeaveScope();
	return 0;
}
BBINT _openb3d_openb3dcore_TTerrain_UpdateTerrain(struct openb3d_openb3dcore_TTerrain_obj* o){
	((struct openb3d_openb3dcore_TTerrain_obj*)bbNullObjectTest((BBObject*)o));
	struct BBDebugScope_1 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"UpdateTerrain",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TTerrain",
				.var_address=&o
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x2fecc01ccff76d98, 272, 0};
	bbOnDebugEnterStm(&__stmt_0);
	UpdateTerrain_(openb3d_openb3dcore_TEntity_GetInstance_pb_TTEntity((struct openb3d_openb3dcore_TEntity_obj*)((struct openb3d_openb3dcore_TEntity_obj*)bbObjectDowncast((BBOBJECT)o,(BBClass*)&openb3d_openb3dcore_TEntity))));
	bbOnDebugLeaveScope();
	return 0;
}
struct brl_linkedlist_TList_obj* openb3d_openb3dcore_TTerrain_terrain_list;
BBINT openb3d_openb3dcore_TTerrain_terrain_list_id;
BBFLOAT* openb3d_openb3dcore_TTerrain_Roam_Detail;
struct BBDebugScope_36 openb3d_openb3dcore_TTerrain_scope ={
	BBDEBUGSCOPE_USERTYPE,
	"TTerrain",
	{
		{
			BBDEBUGDECL_FIELD,
			"triangleindex",
			"*i",
			.field_offset=offsetof(struct openb3d_openb3dcore_TTerrain_obj,_openb3d_openb3dcore_tterrain_triangleindex)
		},
		{
			BBDEBUGDECL_FIELD,
			"size",
			"*f",
			.field_offset=offsetof(struct openb3d_openb3dcore_TTerrain_obj,_openb3d_openb3dcore_tterrain_size)
		},
		{
			BBDEBUGDECL_FIELD,
			"vsize",
			"*f",
			.field_offset=offsetof(struct openb3d_openb3dcore_TTerrain_obj,_openb3d_openb3dcore_tterrain_vsize)
		},
		{
			BBDEBUGDECL_FIELD,
			"level2dzsize",
			"*f",
			.field_offset=offsetof(struct openb3d_openb3dcore_TTerrain_obj,_openb3d_openb3dcore_tterrain_level2dzsize)
		},
		{
			BBDEBUGDECL_FIELD,
			"HeightMap",
			"*f",
			.field_offset=offsetof(struct openb3d_openb3dcore_TTerrain_obj,_openb3d_openb3dcore_tterrain_heightmap)
		},
		{
			BBDEBUGDECL_FIELD,
			"eyepoint",
			":TCamera",
			.field_offset=offsetof(struct openb3d_openb3dcore_TTerrain_obj,_openb3d_openb3dcore_tterrain_eyepoint)
		},
		{
			BBDEBUGDECL_FIELD,
			"ShaderMat",
			":TShader",
			.field_offset=offsetof(struct openb3d_openb3dcore_TTerrain_obj,_openb3d_openb3dcore_tterrain_shadermat)
		},
		{
			BBDEBUGDECL_FIELD,
			"NormalsMap",
			"*f",
			.field_offset=offsetof(struct openb3d_openb3dcore_TTerrain_obj,_openb3d_openb3dcore_tterrain_normalsmap)
		},
		{
			BBDEBUGDECL_FIELD,
			"vertexindex",
			"*i",
			.field_offset=offsetof(struct openb3d_openb3dcore_TTerrain_obj,_openb3d_openb3dcore_tterrain_vertexindex)
		},
		{
			BBDEBUGDECL_GLOBAL,
			"terrain_list",
			":TList",
			.var_address=(void*)&openb3d_openb3dcore_TTerrain_terrain_list
		},
		{
			BBDEBUGDECL_GLOBAL,
			"Roam_Detail",
			"*f",
			.var_address=(void*)&openb3d_openb3dcore_TTerrain_Roam_Detail
		},
		{
			BBDEBUGDECL_GLOBAL,
			"terrain_list_id",
			"i",
			.var_address=(void*)&openb3d_openb3dcore_TTerrain_terrain_list_id
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"New",
			"()i",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_TTerrain_New
		},
		{
			BBDEBUGDECL_TYPEFUNCTION,
			"CreateObject",
			"(*b):TTerrain",
			.func_ptr=(BBFuncPtr)&openb3d_openb3dcore_TTerrain_CreateObject_TTTerrain_pb
		},
		{
			BBDEBUGDECL_TYPEFUNCTION,
			"InitGlobals",
			"()i",
			.func_ptr=(BBFuncPtr)&openb3d_openb3dcore_TTerrain_InitGlobals_i
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"InitFields",
			"()i",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_TTerrain_InitFields
		},
		{
			BBDEBUGDECL_TYPEFUNCTION,
			"DebugGlobals",
			"(i,i)i",
			.func_ptr=(BBFuncPtr)&openb3d_openb3dcore_TTerrain_DebugGlobals_i_ii
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"DebugFields",
			"(i,i)i",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_TTerrain_DebugFields_ii
		},
		{
			BBDEBUGDECL_TYPEFUNCTION,
			"AddList_",
			"(:TList)i",
			.func_ptr=(BBFuncPtr)&openb3d_openb3dcore_TTerrain_AddList__i_TTList
		},
		{
			BBDEBUGDECL_TYPEFUNCTION,
			"CopyList_",
			"(:TList)i",
			.func_ptr=(BBFuncPtr)&openb3d_openb3dcore_TTerrain_CopyList__i_TTList
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"FreeEntity",
			"()i",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_TTerrain_FreeEntity
		},
		{
			BBDEBUGDECL_TYPEFUNCTION,
			"CreateTerrain",
			"(i,:TEntity):TTerrain",
			.func_ptr=(BBFuncPtr)&openb3d_openb3dcore_TTerrain_CreateTerrain_TTTerrain_iTTEntity
		},
		{
			BBDEBUGDECL_TYPEFUNCTION,
			"LoadTerrain",
			"($,:TEntity):TTerrain",
			.func_ptr=(BBFuncPtr)&openb3d_openb3dcore_TTerrain_LoadTerrain_TTTerrain_STTEntity
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"ModifyTerrain",
			"(i,i,f)i",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_TTerrain_ModifyTerrain_iif
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"TerrainHeight",
			"(i,i)f",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_TTerrain_TerrainHeight_ii
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"TerrainX",
			"(f,f,f)f",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_TTerrain_TerrainX_fff
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"TerrainY",
			"(f,f,f)f",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_TTerrain_TerrainY_fff
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"TerrainZ",
			"(f,f,f)f",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_TTerrain_TerrainZ_fff
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"UpdateNormals",
			"()i",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_TTerrain_UpdateNormals
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"CopyEntity",
			"(:TEntity):TTerrain",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_TTerrain_CopyEntity_TTEntity
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"TerrainDetail",
			"(f)i",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_TTerrain_TerrainDetail_f
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"TerrainCountVertices",
			"()i",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_TTerrain_TerrainCountVertices
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"TerrainCountTriangles",
			"()i",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_TTerrain_TerrainCountTriangles
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"TerrainScaleTexCoords",
			"(f,f,i)i",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_TTerrain_TerrainScaleTexCoords_ffi
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"Update",
			"()i",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_TTerrain_Update
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"UpdateTerrain",
			"()i",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_TTerrain_UpdateTerrain
		},
		{
			BBDEBUGDECL_END
		}
	}
};
struct BBClass_openb3d_openb3dcore_TTerrain openb3d_openb3dcore_TTerrain={
	&openb3d_openb3dcore_TEntity,
	bbObjectFree,
	(BBDebugScope*)&openb3d_openb3dcore_TTerrain_scope,
	sizeof(struct openb3d_openb3dcore_TTerrain_obj),
	(void (*)(BBOBJECT))_openb3d_openb3dcore_TTerrain_New,
	(void (*)(BBOBJECT))_openb3d_openb3dcore_TTerrain_Delete,
	bbObjectToString,
	bbObjectCompare,
	bbObjectSendMessage,
	0,
	0,
	offsetof(struct openb3d_openb3dcore_TTerrain_obj,_openb3d_openb3dcore_tterrain_vertexindex) - offsetof(struct openb3d_openb3dcore_TTerrain_obj,_openb3d_openb3dcore_tterrain_triangleindex) + sizeof(BBINT*)
	,0
	,offsetof(struct openb3d_openb3dcore_TTerrain_obj,_openb3d_openb3dcore_tterrain_triangleindex)
	,_openb3d_openb3dcore_TTerrain_CopyEntity_TTEntity
	,_openb3d_openb3dcore_TTerrain_Update
	,openb3d_openb3dcore_TEntity_FreeObject_i_pb
	,openb3d_openb3dcore_TEntity_GetObject_TTEntity_pb
	,openb3d_openb3dcore_TEntity_GetInstance_pb_TTEntity
	,openb3d_openb3dcore_TTerrain_InitGlobals_i
	,_openb3d_openb3dcore_TTerrain_InitFields
	,_openb3d_openb3dcore_TTerrain_DebugFields_ii
	,_openb3d_openb3dcore_TEntity_AddList_TTList
	,openb3d_openb3dcore_TTerrain_AddList__i_TTList
	,_openb3d_openb3dcore_TEntity_CopyList_TTList
	,openb3d_openb3dcore_TTerrain_CopyList__i_TTList
	,_openb3d_openb3dcore_TEntity_EntityListAdd_TTListTObject
	,_openb3d_openb3dcore_TEntity_EntityListRemove_TTListTObject
	,_openb3d_openb3dcore_TEntity_AddAnimSeq_i
	,_openb3d_openb3dcore_TEntity_SetAnimKey_fiii
	,_openb3d_openb3dcore_TEntity_AlignToVector_fffif
	,_openb3d_openb3dcore_TEntity_GetString_pb
	,_openb3d_openb3dcore_TEntity_SetString_pbS
	,_openb3d_openb3dcore_TTerrain_FreeEntity
	,_openb3d_openb3dcore_TEntity_FreeEntityList
	,_openb3d_openb3dcore_TEntity_SetParent_TTEntity
	,_openb3d_openb3dcore_TEntity_PositionEntity_fffi
	,_openb3d_openb3dcore_TEntity_MoveEntity_fff
	,_openb3d_openb3dcore_TEntity_TranslateEntity_fffi
	,_openb3d_openb3dcore_TEntity_ScaleEntity_fffi
	,_openb3d_openb3dcore_TEntity_RotateEntity_fffi
	,_openb3d_openb3dcore_TEntity_TurnEntity_fffi
	,_openb3d_openb3dcore_TEntity_PointEntity_TTEntityf
	,_openb3d_openb3dcore_TEntity_LoadAnimSeq_S
	,_openb3d_openb3dcore_TEntity_ExtractAnimSeq_iii
	,_openb3d_openb3dcore_TEntity_Animate_ifii
	,_openb3d_openb3dcore_TEntity_SetAnimTime_fi
	,_openb3d_openb3dcore_TEntity_AnimSeq
	,_openb3d_openb3dcore_TEntity_AnimLength
	,_openb3d_openb3dcore_TEntity_AnimTime
	,_openb3d_openb3dcore_TEntity_Animating
	,_openb3d_openb3dcore_TEntity_EntityColor_fffi
	,_openb3d_openb3dcore_TEntity_EntityAlpha_f
	,_openb3d_openb3dcore_TEntity_EntityShininess_f
	,_openb3d_openb3dcore_TEntity_EntityTexture_TTTextureii
	,_openb3d_openb3dcore_TEntity_EntityBlend_i
	,_openb3d_openb3dcore_TEntity_EntityFX_i
	,_openb3d_openb3dcore_TEntity_PaintEntity_TTBrush
	,_openb3d_openb3dcore_TEntity_GetEntityBrush
	,_openb3d_openb3dcore_TEntity_EntityOrder_i
	,_openb3d_openb3dcore_TEntity_ShowEntity
	,_openb3d_openb3dcore_TEntity_HideEntity
	,_openb3d_openb3dcore_TEntity_NameEntity_S
	,_openb3d_openb3dcore_TEntity_EntityParent_TTEntityi
	,_openb3d_openb3dcore_TEntity_GetParent
	,_openb3d_openb3dcore_TEntity_EntityX_i
	,_openb3d_openb3dcore_TEntity_EntityY_i
	,_openb3d_openb3dcore_TEntity_EntityZ_i
	,_openb3d_openb3dcore_TEntity_EntityPitch_i
	,_openb3d_openb3dcore_TEntity_EntityYaw_i
	,_openb3d_openb3dcore_TEntity_EntityRoll_i
	,_openb3d_openb3dcore_TEntity_EntityClass
	,_openb3d_openb3dcore_TEntity_EntityName
	,_openb3d_openb3dcore_TEntity_CountChildren
	,_openb3d_openb3dcore_TEntity_GetChild_i
	,_openb3d_openb3dcore_TEntity_FindChild_S
	,_openb3d_openb3dcore_TEntity_EntityPick_f
	,_openb3d_openb3dcore_TEntity_LinePick_fffffff
	,_openb3d_openb3dcore_TEntity_EntityVisible_TTEntityTTEntity
	,_openb3d_openb3dcore_TEntity_EntityDistance_TTEntity
	,_openb3d_openb3dcore_TEntity_DeltaYaw_TTEntity
	,_openb3d_openb3dcore_TEntity_DeltaPitch_TTEntity
	,openb3d_openb3dcore_TEntity_TFormPoint_i_fffTTEntityTTEntity
	,openb3d_openb3dcore_TEntity_TFormVector_i_fffTTEntityTTEntity
	,openb3d_openb3dcore_TEntity_TFormNormal_i_fffTTEntityTTEntity
	,openb3d_openb3dcore_TEntity_TFormedX_f
	,openb3d_openb3dcore_TEntity_TFormedY_f
	,openb3d_openb3dcore_TEntity_TFormedZ_f
	,_openb3d_openb3dcore_TEntity_GetMatElement_ii
	,_openb3d_openb3dcore_TEntity_ResetEntity
	,_openb3d_openb3dcore_TEntity_EntityRadius_ff
	,_openb3d_openb3dcore_TEntity_EntityBox_ffffff
	,_openb3d_openb3dcore_TEntity_EntityType_ii
	,_openb3d_openb3dcore_TEntity_EntityPickMode_ii
	,_openb3d_openb3dcore_TEntity_EntityCollided_i
	,_openb3d_openb3dcore_TEntity_CountCollisions
	,_openb3d_openb3dcore_TEntity_CollisionX_i
	,_openb3d_openb3dcore_TEntity_CollisionY_i
	,_openb3d_openb3dcore_TEntity_CollisionZ_i
	,_openb3d_openb3dcore_TEntity_CollisionNX_i
	,_openb3d_openb3dcore_TEntity_CollisionNY_i
	,_openb3d_openb3dcore_TEntity_CollisionNZ_i
	,_openb3d_openb3dcore_TEntity_CollisionTime_i
	,_openb3d_openb3dcore_TEntity_CollisionEntity_i
	,_openb3d_openb3dcore_TEntity_CollisionSurface_i
	,_openb3d_openb3dcore_TEntity_CollisionTriangle_i
	,_openb3d_openb3dcore_TEntity_GetEntityType
	,_openb3d_openb3dcore_TEntity_MeshCullRadius_f
	,_openb3d_openb3dcore_TEntity_EntityScaleX_i
	,_openb3d_openb3dcore_TEntity_EntityScaleY_i
	,_openb3d_openb3dcore_TEntity_EntityScaleZ_i
	,_openb3d_openb3dcore_TEntity_Hidden
	,openb3d_openb3dcore_TEntity_CountAllChildren_i_TTEntityi
	,_openb3d_openb3dcore_TEntity_GetChildFromAll_iviTTEntity
	,_openb3d_openb3dcore_TEntity_ListParents_TTList
	,_openb3d_openb3dcore_TEntity_UpdateMat_b
	,_openb3d_openb3dcore_TEntity_AddParent_TTEntity
	,openb3d_openb3dcore_TEntity_UpdateChildren_i_TTEntity
	,_openb3d_openb3dcore_TEntity_EntityDistanceSquared_TTEntity
	,_openb3d_openb3dcore_TEntity_MQ_Update
	,_openb3d_openb3dcore_TEntity_MQ_GetInvMatrix_TTMatPtr
	,_openb3d_openb3dcore_TEntity_MQ_GetMatrix_TTMatPtr
	,_openb3d_openb3dcore_TEntity_MQ_GetScaleXYZ_vfvfvf
	,_openb3d_openb3dcore_TEntity_MQ_Turn_ffffi
	,openb3d_openb3dcore_TTerrain_CreateObject_TTTerrain_pb
	,openb3d_openb3dcore_TTerrain_DebugGlobals_i_ii
	,openb3d_openb3dcore_TTerrain_CreateTerrain_TTTerrain_iTTEntity
	,openb3d_openb3dcore_TTerrain_LoadTerrain_TTTerrain_STTEntity
	,_openb3d_openb3dcore_TTerrain_ModifyTerrain_iif
	,_openb3d_openb3dcore_TTerrain_TerrainHeight_ii
	,_openb3d_openb3dcore_TTerrain_TerrainX_fff
	,_openb3d_openb3dcore_TTerrain_TerrainY_fff
	,_openb3d_openb3dcore_TTerrain_TerrainZ_fff
	,_openb3d_openb3dcore_TTerrain_UpdateNormals
	,_openb3d_openb3dcore_TTerrain_TerrainDetail_f
	,_openb3d_openb3dcore_TTerrain_TerrainCountVertices
	,_openb3d_openb3dcore_TTerrain_TerrainCountTriangles
	,_openb3d_openb3dcore_TTerrain_TerrainScaleTexCoords_ffi
	,_openb3d_openb3dcore_TTerrain_UpdateTerrain
};

void _openb3d_openb3dcore_TShaderObject_New(struct openb3d_openb3dcore_TShaderObject_obj* o) {
	bbObjectCtor((BBOBJECT)o);
	o->clas = &openb3d_openb3dcore_TShaderObject;
	((struct openb3d_openb3dcore_TShaderObject_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tshaderobject_instance = 0;
}
struct openb3d_openb3dcore_TShaderObject_obj* openb3d_openb3dcore_TShaderObject_CreateObject_TTShaderObject_pb(BBBYTE* bbt_inst){
	struct openb3d_openb3dcore_TShaderObject_obj* bbt_obj=(struct openb3d_openb3dcore_TShaderObject_obj*)((struct openb3d_openb3dcore_TShaderObject_obj*)&bbNullObject);
	struct BBDebugScope_2 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"CreateObject",
		{
			{
				BBDEBUGDECL_LOCAL,
				"inst",
				"*b",
				.var_address=&bbt_inst
			},
			{
				BBDEBUGDECL_LOCAL,
				"obj",
				":TShaderObject",
				.var_address=&bbt_obj
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x44a35bd9cb25cae8, 18, 0};
	bbOnDebugEnterStm(&__stmt_0);
	if(bbt_inst==0){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x44a35bd9cb25cae8, 18, 0};
		bbOnDebugEnterStm(&__stmt_0);
		bbOnDebugLeaveScope();
		bbOnDebugLeaveScope();
		return (struct openb3d_openb3dcore_TShaderObject_obj*)&bbNullObject;
	}
	struct BBDebugStm __stmt_1 = {0x44a35bd9cb25cae8, 19, 0};
	bbOnDebugEnterStm(&__stmt_1);
	bbt_obj=(struct openb3d_openb3dcore_TShaderObject_obj*)(struct openb3d_openb3dcore_TShaderObject_obj*)bbObjectAtomicNew((BBClass *)&openb3d_openb3dcore_TShaderObject);
	struct BBDebugStm __stmt_2 = {0x44a35bd9cb25cae8, 21, 0};
	bbOnDebugEnterStm(&__stmt_2);
	((struct brl_map_ptrmap_TPtrMap_obj*)bbNullObjectTest((BBObject*)openb3d_openb3dcore_TShaderObject_shaderobject_map))->clas->m_Insert_pbTObject((struct brl_map_ptrmap_TPtrMap_obj*)openb3d_openb3dcore_TShaderObject_shaderobject_map,bbt_inst,(BBOBJECT)bbt_obj);
	struct BBDebugStm __stmt_3 = {0x44a35bd9cb25cae8, 25, 0};
	bbOnDebugEnterStm(&__stmt_3);
	((struct openb3d_openb3dcore_TShaderObject_obj*)bbNullObjectTest((BBObject*)bbt_obj))->_openb3d_openb3dcore_tshaderobject_instance =bbt_inst;
	struct BBDebugStm __stmt_4 = {0x44a35bd9cb25cae8, 26, 0};
	bbOnDebugEnterStm(&__stmt_4);
	bbOnDebugLeaveScope();
	return (struct openb3d_openb3dcore_TShaderObject_obj*)bbt_obj;
}
BBINT openb3d_openb3dcore_TShaderObject_FreeObject_i_pb(BBBYTE* bbt_inst){
	struct BBDebugScope_1 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"FreeObject",
		{
			{
				BBDEBUGDECL_LOCAL,
				"inst",
				"*b",
				.var_address=&bbt_inst
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x44a35bd9cb25cae8, 33, 0};
	bbOnDebugEnterStm(&__stmt_0);
	((struct brl_map_ptrmap_TPtrMap_obj*)bbNullObjectTest((BBObject*)openb3d_openb3dcore_TShaderObject_shaderobject_map))->clas->m_Remove_pb((struct brl_map_ptrmap_TPtrMap_obj*)openb3d_openb3dcore_TShaderObject_shaderobject_map,bbt_inst);
	bbOnDebugLeaveScope();
	return 0;
}
struct openb3d_openb3dcore_TShaderObject_obj* openb3d_openb3dcore_TShaderObject_GetObject_TTShaderObject_pb(BBBYTE* bbt_inst){
	struct BBDebugScope_1 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"GetObject",
		{
			{
				BBDEBUGDECL_LOCAL,
				"inst",
				"*b",
				.var_address=&bbt_inst
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x44a35bd9cb25cae8, 43, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbOnDebugLeaveScope();
	return (struct openb3d_openb3dcore_TShaderObject_obj*)((struct openb3d_openb3dcore_TShaderObject_obj*)bbObjectDowncast((BBOBJECT)((struct brl_map_ptrmap_TPtrMap_obj*)bbNullObjectTest((BBObject*)openb3d_openb3dcore_TShaderObject_shaderobject_map))->clas->m_ValueForKey_pb((struct brl_map_ptrmap_TPtrMap_obj*)openb3d_openb3dcore_TShaderObject_shaderobject_map,bbt_inst),(BBClass*)&openb3d_openb3dcore_TShaderObject));
}
BBBYTE* openb3d_openb3dcore_TShaderObject_GetInstance_pb_TTShaderObject(struct openb3d_openb3dcore_TShaderObject_obj* bbt_obj){
	struct BBDebugScope_1 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"GetInstance",
		{
			{
				BBDEBUGDECL_LOCAL,
				"obj",
				":TShaderObject",
				.var_address=&bbt_obj
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x44a35bd9cb25cae8, 52, 0};
	bbOnDebugEnterStm(&__stmt_0);
	if(((BBOBJECT)bbt_obj)==&bbNullObject){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x44a35bd9cb25cae8, 52, 0};
		bbOnDebugEnterStm(&__stmt_0);
		bbOnDebugLeaveScope();
		bbOnDebugLeaveScope();
		return 0;
	}
	struct BBDebugStm __stmt_1 = {0x44a35bd9cb25cae8, 53, 0};
	bbOnDebugEnterStm(&__stmt_1);
	bbOnDebugLeaveScope();
	return ((struct openb3d_openb3dcore_TShaderObject_obj*)bbNullObjectTest((BBObject*)bbt_obj))->_openb3d_openb3dcore_tshaderobject_instance ;
}
struct openb3d_openb3dcore_TShaderObject_obj* openb3d_openb3dcore_TShaderObject_CreateFragShader_TTShaderObject_TTShaderS(struct openb3d_openb3dcore_TShader_obj* bbt_shader,BBSTRING bbt_shaderFileName){
	BBBYTE* bbt_cString=0;
	BBBYTE* bbt_inst=0;
	struct openb3d_openb3dcore_TShaderObject_obj* bbt_obj=(struct openb3d_openb3dcore_TShaderObject_obj*)((struct openb3d_openb3dcore_TShaderObject_obj*)&bbNullObject);
	struct BBDebugScope_5 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"CreateFragShader",
		{
			{
				BBDEBUGDECL_LOCAL,
				"shader",
				":TShader",
				.var_address=&bbt_shader
			},
			{
				BBDEBUGDECL_LOCAL,
				"shaderFileName",
				"$",
				.var_address=&bbt_shaderFileName
			},
			{
				BBDEBUGDECL_LOCAL,
				"cString",
				"*b",
				.var_address=&bbt_cString
			},
			{
				BBDEBUGDECL_LOCAL,
				"inst",
				"*b",
				.var_address=&bbt_inst
			},
			{
				BBDEBUGDECL_LOCAL,
				"obj",
				":TShaderObject",
				.var_address=&bbt_obj
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x44a35bd9cb25cae8, 61, 0};
	bbOnDebugEnterStm(&__stmt_0);
	if(brl_filesystem_FileType(bbt_shaderFileName)==0){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x44a35bd9cb25cae8, 61, 0};
		bbOnDebugEnterStm(&__stmt_0);
		brl_blitz_DebugLog(bbStringConcat(((BBString*)&_s688),bbt_shaderFileName));
		bbOnDebugLeaveScope();
	}
	struct BBDebugStm __stmt_1 = {0x44a35bd9cb25cae8, 63, 0};
	bbOnDebugEnterStm(&__stmt_1);
	bbt_cString=bbStringToCString((BBSTRING)bbt_shaderFileName);
	struct BBDebugStm __stmt_2 = {0x44a35bd9cb25cae8, 64, 0};
	bbOnDebugEnterStm(&__stmt_2);
	bbt_inst=CreateFragShader_(openb3d_openb3dcore_TShader_GetInstance_pb_TTShader((struct openb3d_openb3dcore_TShader_obj*)bbt_shader),bbt_cString);
	struct BBDebugStm __stmt_3 = {0x44a35bd9cb25cae8, 65, 0};
	bbOnDebugEnterStm(&__stmt_3);
	bbt_obj=(struct openb3d_openb3dcore_TShaderObject_obj*)openb3d_openb3dcore_TShaderObject_CreateObject_TTShaderObject_pb(bbt_inst);
	struct BBDebugStm __stmt_4 = {0x44a35bd9cb25cae8, 66, 0};
	bbOnDebugEnterStm(&__stmt_4);
	bbMemFree((void*)bbt_cString);
	struct BBDebugStm __stmt_5 = {0x44a35bd9cb25cae8, 67, 0};
	bbOnDebugEnterStm(&__stmt_5);
	bbOnDebugLeaveScope();
	return (struct openb3d_openb3dcore_TShaderObject_obj*)bbt_obj;
}
struct openb3d_openb3dcore_TShaderObject_obj* openb3d_openb3dcore_TShaderObject_CreateFragShaderString_TTShaderObject_TTShaderS(struct openb3d_openb3dcore_TShader_obj* bbt_shader,BBSTRING bbt_shadercode){
	BBBYTE* bbt_cString=0;
	BBBYTE* bbt_inst=0;
	struct openb3d_openb3dcore_TShaderObject_obj* bbt_obj=(struct openb3d_openb3dcore_TShaderObject_obj*)((struct openb3d_openb3dcore_TShaderObject_obj*)&bbNullObject);
	struct BBDebugScope_5 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"CreateFragShaderString",
		{
			{
				BBDEBUGDECL_LOCAL,
				"shader",
				":TShader",
				.var_address=&bbt_shader
			},
			{
				BBDEBUGDECL_LOCAL,
				"shadercode",
				"$",
				.var_address=&bbt_shadercode
			},
			{
				BBDEBUGDECL_LOCAL,
				"cString",
				"*b",
				.var_address=&bbt_cString
			},
			{
				BBDEBUGDECL_LOCAL,
				"inst",
				"*b",
				.var_address=&bbt_inst
			},
			{
				BBDEBUGDECL_LOCAL,
				"obj",
				":TShaderObject",
				.var_address=&bbt_obj
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x44a35bd9cb25cae8, 73, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbt_cString=bbStringToCString((BBSTRING)bbt_shadercode);
	struct BBDebugStm __stmt_1 = {0x44a35bd9cb25cae8, 74, 0};
	bbOnDebugEnterStm(&__stmt_1);
	bbt_inst=CreateFragShaderFromString_(openb3d_openb3dcore_TShader_GetInstance_pb_TTShader((struct openb3d_openb3dcore_TShader_obj*)bbt_shader),bbt_cString);
	struct BBDebugStm __stmt_2 = {0x44a35bd9cb25cae8, 75, 0};
	bbOnDebugEnterStm(&__stmt_2);
	bbt_obj=(struct openb3d_openb3dcore_TShaderObject_obj*)openb3d_openb3dcore_TShaderObject_CreateObject_TTShaderObject_pb(bbt_inst);
	struct BBDebugStm __stmt_3 = {0x44a35bd9cb25cae8, 76, 0};
	bbOnDebugEnterStm(&__stmt_3);
	bbMemFree((void*)bbt_cString);
	struct BBDebugStm __stmt_4 = {0x44a35bd9cb25cae8, 77, 0};
	bbOnDebugEnterStm(&__stmt_4);
	bbOnDebugLeaveScope();
	return (struct openb3d_openb3dcore_TShaderObject_obj*)bbt_obj;
}
struct openb3d_openb3dcore_TShaderObject_obj* openb3d_openb3dcore_TShaderObject_CreateVertShader_TTShaderObject_TTShaderS(struct openb3d_openb3dcore_TShader_obj* bbt_shader,BBSTRING bbt_shaderFileName){
	BBBYTE* bbt_cString=0;
	BBBYTE* bbt_inst=0;
	struct openb3d_openb3dcore_TShaderObject_obj* bbt_obj=(struct openb3d_openb3dcore_TShaderObject_obj*)((struct openb3d_openb3dcore_TShaderObject_obj*)&bbNullObject);
	struct BBDebugScope_5 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"CreateVertShader",
		{
			{
				BBDEBUGDECL_LOCAL,
				"shader",
				":TShader",
				.var_address=&bbt_shader
			},
			{
				BBDEBUGDECL_LOCAL,
				"shaderFileName",
				"$",
				.var_address=&bbt_shaderFileName
			},
			{
				BBDEBUGDECL_LOCAL,
				"cString",
				"*b",
				.var_address=&bbt_cString
			},
			{
				BBDEBUGDECL_LOCAL,
				"inst",
				"*b",
				.var_address=&bbt_inst
			},
			{
				BBDEBUGDECL_LOCAL,
				"obj",
				":TShaderObject",
				.var_address=&bbt_obj
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x44a35bd9cb25cae8, 83, 0};
	bbOnDebugEnterStm(&__stmt_0);
	if(brl_filesystem_FileType(bbt_shaderFileName)==0){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x44a35bd9cb25cae8, 83, 0};
		bbOnDebugEnterStm(&__stmt_0);
		brl_blitz_DebugLog(bbStringConcat(((BBString*)&_s688),bbt_shaderFileName));
		bbOnDebugLeaveScope();
	}
	struct BBDebugStm __stmt_1 = {0x44a35bd9cb25cae8, 85, 0};
	bbOnDebugEnterStm(&__stmt_1);
	bbt_cString=bbStringToCString((BBSTRING)bbt_shaderFileName);
	struct BBDebugStm __stmt_2 = {0x44a35bd9cb25cae8, 86, 0};
	bbOnDebugEnterStm(&__stmt_2);
	bbt_inst=CreateVertShader_(openb3d_openb3dcore_TShader_GetInstance_pb_TTShader((struct openb3d_openb3dcore_TShader_obj*)bbt_shader),bbt_cString);
	struct BBDebugStm __stmt_3 = {0x44a35bd9cb25cae8, 87, 0};
	bbOnDebugEnterStm(&__stmt_3);
	bbt_obj=(struct openb3d_openb3dcore_TShaderObject_obj*)openb3d_openb3dcore_TShaderObject_CreateObject_TTShaderObject_pb(bbt_inst);
	struct BBDebugStm __stmt_4 = {0x44a35bd9cb25cae8, 88, 0};
	bbOnDebugEnterStm(&__stmt_4);
	bbMemFree((void*)bbt_cString);
	struct BBDebugStm __stmt_5 = {0x44a35bd9cb25cae8, 89, 0};
	bbOnDebugEnterStm(&__stmt_5);
	bbOnDebugLeaveScope();
	return (struct openb3d_openb3dcore_TShaderObject_obj*)bbt_obj;
}
struct openb3d_openb3dcore_TShaderObject_obj* openb3d_openb3dcore_TShaderObject_CreateVertShaderString_TTShaderObject_TTShaderS(struct openb3d_openb3dcore_TShader_obj* bbt_shader,BBSTRING bbt_shadercode){
	BBBYTE* bbt_cString=0;
	BBBYTE* bbt_inst=0;
	struct openb3d_openb3dcore_TShaderObject_obj* bbt_obj=(struct openb3d_openb3dcore_TShaderObject_obj*)((struct openb3d_openb3dcore_TShaderObject_obj*)&bbNullObject);
	struct BBDebugScope_5 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"CreateVertShaderString",
		{
			{
				BBDEBUGDECL_LOCAL,
				"shader",
				":TShader",
				.var_address=&bbt_shader
			},
			{
				BBDEBUGDECL_LOCAL,
				"shadercode",
				"$",
				.var_address=&bbt_shadercode
			},
			{
				BBDEBUGDECL_LOCAL,
				"cString",
				"*b",
				.var_address=&bbt_cString
			},
			{
				BBDEBUGDECL_LOCAL,
				"inst",
				"*b",
				.var_address=&bbt_inst
			},
			{
				BBDEBUGDECL_LOCAL,
				"obj",
				":TShaderObject",
				.var_address=&bbt_obj
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x44a35bd9cb25cae8, 95, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbt_cString=bbStringToCString((BBSTRING)bbt_shadercode);
	struct BBDebugStm __stmt_1 = {0x44a35bd9cb25cae8, 96, 0};
	bbOnDebugEnterStm(&__stmt_1);
	bbt_inst=CreateVertShaderFromString_(openb3d_openb3dcore_TShader_GetInstance_pb_TTShader((struct openb3d_openb3dcore_TShader_obj*)bbt_shader),bbt_cString);
	struct BBDebugStm __stmt_2 = {0x44a35bd9cb25cae8, 97, 0};
	bbOnDebugEnterStm(&__stmt_2);
	bbt_obj=(struct openb3d_openb3dcore_TShaderObject_obj*)openb3d_openb3dcore_TShaderObject_CreateObject_TTShaderObject_pb(bbt_inst);
	struct BBDebugStm __stmt_3 = {0x44a35bd9cb25cae8, 98, 0};
	bbOnDebugEnterStm(&__stmt_3);
	bbMemFree((void*)bbt_cString);
	struct BBDebugStm __stmt_4 = {0x44a35bd9cb25cae8, 99, 0};
	bbOnDebugEnterStm(&__stmt_4);
	bbOnDebugLeaveScope();
	return (struct openb3d_openb3dcore_TShaderObject_obj*)bbt_obj;
}
BBINT _openb3d_openb3dcore_TShaderObject_AttachFragShader_TTShader(struct openb3d_openb3dcore_TShaderObject_obj* o,struct openb3d_openb3dcore_TShader_obj* bbt_shader){
	((struct openb3d_openb3dcore_TShaderObject_obj*)bbNullObjectTest((BBObject*)o));
	struct BBDebugScope_2 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"AttachFragShader",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TShaderObject",
				.var_address=&o
			},
			{
				BBDEBUGDECL_LOCAL,
				"shader",
				":TShader",
				.var_address=&bbt_shader
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x44a35bd9cb25cae8, 105, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbOnDebugLeaveScope();
	return AttachFragShader_(openb3d_openb3dcore_TShader_GetInstance_pb_TTShader((struct openb3d_openb3dcore_TShader_obj*)bbt_shader),o->clas->f_GetInstance_pb_TTShaderObject((struct openb3d_openb3dcore_TShaderObject_obj*)o));
}
BBINT _openb3d_openb3dcore_TShaderObject_AttachVertShader_TTShader(struct openb3d_openb3dcore_TShaderObject_obj* o,struct openb3d_openb3dcore_TShader_obj* bbt_shader){
	((struct openb3d_openb3dcore_TShaderObject_obj*)bbNullObjectTest((BBObject*)o));
	struct BBDebugScope_2 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"AttachVertShader",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TShaderObject",
				.var_address=&o
			},
			{
				BBDEBUGDECL_LOCAL,
				"shader",
				":TShader",
				.var_address=&bbt_shader
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x44a35bd9cb25cae8, 111, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbOnDebugLeaveScope();
	return AttachVertShader_(openb3d_openb3dcore_TShader_GetInstance_pb_TTShader((struct openb3d_openb3dcore_TShader_obj*)bbt_shader),o->clas->f_GetInstance_pb_TTShaderObject((struct openb3d_openb3dcore_TShaderObject_obj*)o));
}
BBINT _openb3d_openb3dcore_TShaderObject_DeleteFragShader(struct openb3d_openb3dcore_TShaderObject_obj* o){
	((struct openb3d_openb3dcore_TShaderObject_obj*)bbNullObjectTest((BBObject*)o));
	struct BBDebugScope_1 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"DeleteFragShader",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TShaderObject",
				.var_address=&o
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x44a35bd9cb25cae8, 117, 0};
	bbOnDebugEnterStm(&__stmt_0);
	DeleteFragShader_(o->clas->f_GetInstance_pb_TTShaderObject((struct openb3d_openb3dcore_TShaderObject_obj*)o));
	bbOnDebugLeaveScope();
	return 0;
}
BBINT _openb3d_openb3dcore_TShaderObject_DeleteVertShader(struct openb3d_openb3dcore_TShaderObject_obj* o){
	((struct openb3d_openb3dcore_TShaderObject_obj*)bbNullObjectTest((BBObject*)o));
	struct BBDebugScope_1 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"DeleteVertShader",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TShaderObject",
				.var_address=&o
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x44a35bd9cb25cae8, 123, 0};
	bbOnDebugEnterStm(&__stmt_0);
	DeleteVertShader_(o->clas->f_GetInstance_pb_TTShaderObject((struct openb3d_openb3dcore_TShaderObject_obj*)o));
	bbOnDebugLeaveScope();
	return 0;
}
struct brl_map_ptrmap_TPtrMap_obj* openb3d_openb3dcore_TShaderObject_shaderobject_map;
struct BBDebugScope_15 openb3d_openb3dcore_TShaderObject_scope ={
	BBDEBUGSCOPE_USERTYPE,
	"TShaderObject",
	{
		{
			BBDEBUGDECL_FIELD,
			"instance",
			"*b",
			.field_offset=offsetof(struct openb3d_openb3dcore_TShaderObject_obj,_openb3d_openb3dcore_tshaderobject_instance)
		},
		{
			BBDEBUGDECL_GLOBAL,
			"shaderobject_map",
			":TPtrMap",
			.var_address=(void*)&openb3d_openb3dcore_TShaderObject_shaderobject_map
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"New",
			"()i",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_TShaderObject_New
		},
		{
			BBDEBUGDECL_TYPEFUNCTION,
			"CreateObject",
			"(*b):TShaderObject",
			.func_ptr=(BBFuncPtr)&openb3d_openb3dcore_TShaderObject_CreateObject_TTShaderObject_pb
		},
		{
			BBDEBUGDECL_TYPEFUNCTION,
			"FreeObject",
			"(*b)i",
			.func_ptr=(BBFuncPtr)&openb3d_openb3dcore_TShaderObject_FreeObject_i_pb
		},
		{
			BBDEBUGDECL_TYPEFUNCTION,
			"GetObject",
			"(*b):TShaderObject",
			.func_ptr=(BBFuncPtr)&openb3d_openb3dcore_TShaderObject_GetObject_TTShaderObject_pb
		},
		{
			BBDEBUGDECL_TYPEFUNCTION,
			"GetInstance",
			"(:TShaderObject)*b",
			.func_ptr=(BBFuncPtr)&openb3d_openb3dcore_TShaderObject_GetInstance_pb_TTShaderObject
		},
		{
			BBDEBUGDECL_TYPEFUNCTION,
			"CreateFragShader",
			"(:TShader,$):TShaderObject",
			.func_ptr=(BBFuncPtr)&openb3d_openb3dcore_TShaderObject_CreateFragShader_TTShaderObject_TTShaderS
		},
		{
			BBDEBUGDECL_TYPEFUNCTION,
			"CreateFragShaderString",
			"(:TShader,$):TShaderObject",
			.func_ptr=(BBFuncPtr)&openb3d_openb3dcore_TShaderObject_CreateFragShaderString_TTShaderObject_TTShaderS
		},
		{
			BBDEBUGDECL_TYPEFUNCTION,
			"CreateVertShader",
			"(:TShader,$):TShaderObject",
			.func_ptr=(BBFuncPtr)&openb3d_openb3dcore_TShaderObject_CreateVertShader_TTShaderObject_TTShaderS
		},
		{
			BBDEBUGDECL_TYPEFUNCTION,
			"CreateVertShaderString",
			"(:TShader,$):TShaderObject",
			.func_ptr=(BBFuncPtr)&openb3d_openb3dcore_TShaderObject_CreateVertShaderString_TTShaderObject_TTShaderS
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"AttachFragShader",
			"(:TShader)i",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_TShaderObject_AttachFragShader_TTShader
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"AttachVertShader",
			"(:TShader)i",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_TShaderObject_AttachVertShader_TTShader
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"DeleteFragShader",
			"()i",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_TShaderObject_DeleteFragShader
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"DeleteVertShader",
			"()i",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_TShaderObject_DeleteVertShader
		},
		{
			BBDEBUGDECL_END
		}
	}
};
struct BBClass_openb3d_openb3dcore_TShaderObject openb3d_openb3dcore_TShaderObject={
	&bbObjectClass,
	bbObjectFree,
	(BBDebugScope*)&openb3d_openb3dcore_TShaderObject_scope,
	sizeof(struct openb3d_openb3dcore_TShaderObject_obj),
	(void (*)(BBOBJECT))_openb3d_openb3dcore_TShaderObject_New,
	bbObjectDtor,
	bbObjectToString,
	bbObjectCompare,
	bbObjectSendMessage,
	0,
	0,
	sizeof(BBBYTE*)
	,0
	,offsetof(struct openb3d_openb3dcore_TShaderObject_obj,_openb3d_openb3dcore_tshaderobject_instance)
	,openb3d_openb3dcore_TShaderObject_CreateObject_TTShaderObject_pb
	,openb3d_openb3dcore_TShaderObject_FreeObject_i_pb
	,openb3d_openb3dcore_TShaderObject_GetObject_TTShaderObject_pb
	,openb3d_openb3dcore_TShaderObject_GetInstance_pb_TTShaderObject
	,openb3d_openb3dcore_TShaderObject_CreateFragShader_TTShaderObject_TTShaderS
	,openb3d_openb3dcore_TShaderObject_CreateFragShaderString_TTShaderObject_TTShaderS
	,openb3d_openb3dcore_TShaderObject_CreateVertShader_TTShaderObject_TTShaderS
	,openb3d_openb3dcore_TShaderObject_CreateVertShaderString_TTShaderObject_TTShaderS
	,_openb3d_openb3dcore_TShaderObject_AttachFragShader_TTShader
	,_openb3d_openb3dcore_TShaderObject_AttachVertShader_TTShader
	,_openb3d_openb3dcore_TShaderObject_DeleteFragShader
	,_openb3d_openb3dcore_TShaderObject_DeleteVertShader
};

void _openb3d_openb3dcore_TMaterial_New(struct openb3d_openb3dcore_TMaterial_obj* o) {
	_openb3d_openb3dcore_TTexture_New((struct openb3d_openb3dcore_TTexture_obj*)o);
	o->clas = &openb3d_openb3dcore_TMaterial;
}
void _openb3d_openb3dcore_TMaterial_Delete(struct openb3d_openb3dcore_TMaterial_obj* o) {
	_openb3d_openb3dcore_TTexture_Delete((struct openb3d_openb3dcore_TTexture_obj*)o);
}
struct openb3d_openb3dcore_TMaterial_obj* openb3d_openb3dcore_TMaterial_CreateObject_TTMaterial_pb(BBBYTE* bbt_inst){
	struct openb3d_openb3dcore_TMaterial_obj* bbt_obj=(struct openb3d_openb3dcore_TMaterial_obj*)((struct openb3d_openb3dcore_TMaterial_obj*)&bbNullObject);
	struct BBDebugScope_2 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"CreateObject",
		{
			{
				BBDEBUGDECL_LOCAL,
				"inst",
				"*b",
				.var_address=&bbt_inst
			},
			{
				BBDEBUGDECL_LOCAL,
				"obj",
				":TMaterial",
				.var_address=&bbt_obj
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x44a35bd9cb25cae8, 140, 0};
	bbOnDebugEnterStm(&__stmt_0);
	if(bbt_inst==0){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x44a35bd9cb25cae8, 140, 0};
		bbOnDebugEnterStm(&__stmt_0);
		bbOnDebugLeaveScope();
		bbOnDebugLeaveScope();
		return (struct openb3d_openb3dcore_TMaterial_obj*)&bbNullObject;
	}
	struct BBDebugStm __stmt_1 = {0x44a35bd9cb25cae8, 141, 0};
	bbOnDebugEnterStm(&__stmt_1);
	bbt_obj=(struct openb3d_openb3dcore_TMaterial_obj*)(struct openb3d_openb3dcore_TMaterial_obj*)bbObjectNew((BBClass *)&openb3d_openb3dcore_TMaterial);
	struct BBDebugStm __stmt_2 = {0x44a35bd9cb25cae8, 143, 0};
	bbOnDebugEnterStm(&__stmt_2);
	((struct brl_map_ptrmap_TPtrMap_obj*)bbNullObjectTest((BBObject*)openb3d_openb3dcore_TTexture_tex_map))->clas->m_Insert_pbTObject((struct brl_map_ptrmap_TPtrMap_obj*)openb3d_openb3dcore_TTexture_tex_map,bbt_inst,(BBOBJECT)bbt_obj);
	struct BBDebugStm __stmt_3 = {0x44a35bd9cb25cae8, 147, 0};
	bbOnDebugEnterStm(&__stmt_3);
	((struct openb3d_openb3dcore_TTexture_obj*)bbNullObjectTest((BBObject*)bbt_obj))->_openb3d_openb3dcore_ttexture_instance =bbt_inst;
	struct BBDebugStm __stmt_4 = {0x44a35bd9cb25cae8, 148, 0};
	bbOnDebugEnterStm(&__stmt_4);
	bbOnDebugLeaveScope();
	return (struct openb3d_openb3dcore_TMaterial_obj*)bbt_obj;
}
struct openb3d_openb3dcore_TMaterial_obj* openb3d_openb3dcore_TMaterial_LoadMaterial_TTMaterial_Siiiii(BBSTRING bbt_filename,BBINT bbt_flags,BBINT bbt_frame_width,BBINT bbt_frame_height,BBINT bbt_first_frame,BBINT bbt_frame_count){
	BBBYTE* bbt_cString=0;
	BBBYTE* bbt_inst=0;
	struct openb3d_openb3dcore_TMaterial_obj* bbt_mat=(struct openb3d_openb3dcore_TMaterial_obj*)((struct openb3d_openb3dcore_TMaterial_obj*)&bbNullObject);
	struct BBDebugScope_9 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"LoadMaterial",
		{
			{
				BBDEBUGDECL_LOCAL,
				"filename",
				"$",
				.var_address=&bbt_filename
			},
			{
				BBDEBUGDECL_LOCAL,
				"flags",
				"i",
				.var_address=&bbt_flags
			},
			{
				BBDEBUGDECL_LOCAL,
				"frame_width",
				"i",
				.var_address=&bbt_frame_width
			},
			{
				BBDEBUGDECL_LOCAL,
				"frame_height",
				"i",
				.var_address=&bbt_frame_height
			},
			{
				BBDEBUGDECL_LOCAL,
				"first_frame",
				"i",
				.var_address=&bbt_first_frame
			},
			{
				BBDEBUGDECL_LOCAL,
				"frame_count",
				"i",
				.var_address=&bbt_frame_count
			},
			{
				BBDEBUGDECL_LOCAL,
				"cString",
				"*b",
				.var_address=&bbt_cString
			},
			{
				BBDEBUGDECL_LOCAL,
				"inst",
				"*b",
				.var_address=&bbt_inst
			},
			{
				BBDEBUGDECL_LOCAL,
				"mat",
				":TMaterial",
				.var_address=&bbt_mat
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x44a35bd9cb25cae8, 156, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbt_cString=bbStringToCString((BBSTRING)bbt_filename);
	struct BBDebugStm __stmt_1 = {0x44a35bd9cb25cae8, 157, 0};
	bbOnDebugEnterStm(&__stmt_1);
	bbt_inst=LoadMaterial_(bbt_cString,bbt_flags,bbt_frame_width,bbt_frame_height,bbt_first_frame,bbt_frame_count);
	struct BBDebugStm __stmt_2 = {0x44a35bd9cb25cae8, 158, 0};
	bbOnDebugEnterStm(&__stmt_2);
	bbt_mat=(struct openb3d_openb3dcore_TMaterial_obj*)openb3d_openb3dcore_TMaterial_CreateObject_TTMaterial_pb(bbt_inst);
	struct BBDebugStm __stmt_3 = {0x44a35bd9cb25cae8, 159, 0};
	bbOnDebugEnterStm(&__stmt_3);
	bbMemFree((void*)bbt_cString);
	struct BBDebugStm __stmt_4 = {0x44a35bd9cb25cae8, 160, 0};
	bbOnDebugEnterStm(&__stmt_4);
	bbOnDebugLeaveScope();
	return (struct openb3d_openb3dcore_TMaterial_obj*)bbt_mat;
}
struct BBDebugScope_3 openb3d_openb3dcore_TMaterial_scope ={
	BBDEBUGSCOPE_USERTYPE,
	"TMaterial",
	{
		{
			BBDEBUGDECL_TYPEMETHOD,
			"New",
			"()i",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_TMaterial_New
		},
		{
			BBDEBUGDECL_TYPEFUNCTION,
			"CreateObject",
			"(*b):TMaterial",
			.func_ptr=(BBFuncPtr)&openb3d_openb3dcore_TMaterial_CreateObject_TTMaterial_pb
		},
		{
			BBDEBUGDECL_TYPEFUNCTION,
			"LoadMaterial",
			"($,i,i,i,i,i):TMaterial",
			.func_ptr=(BBFuncPtr)&openb3d_openb3dcore_TMaterial_LoadMaterial_TTMaterial_Siiiii
		},
		{
			BBDEBUGDECL_END
		}
	}
};
struct BBClass_openb3d_openb3dcore_TMaterial openb3d_openb3dcore_TMaterial={
	&openb3d_openb3dcore_TTexture,
	bbObjectFree,
	(BBDebugScope*)&openb3d_openb3dcore_TMaterial_scope,
	sizeof(struct openb3d_openb3dcore_TMaterial_obj),
	(void (*)(BBOBJECT))_openb3d_openb3dcore_TMaterial_New,
	(void (*)(BBOBJECT))_openb3d_openb3dcore_TMaterial_Delete,
	bbObjectToString,
	bbObjectCompare,
	bbObjectSendMessage,
	0,
	0,
	0
	,0
	,sizeof(void*)
	,openb3d_openb3dcore_TMaterial_CreateObject_TTMaterial_pb
	,openb3d_openb3dcore_TTexture_FreeObject_i_pb
	,openb3d_openb3dcore_TTexture_GetObject_TTTexture_pb
	,openb3d_openb3dcore_TTexture_GetInstance_pb_TTTexture
	,openb3d_openb3dcore_TTexture_InitGlobals_i
	,_openb3d_openb3dcore_TTexture_InitFields
	,_openb3d_openb3dcore_TTexture_DebugFields_ii
	,openb3d_openb3dcore_TTexture_AddList__i_TTList
	,openb3d_openb3dcore_TTexture_CopyList__i_TTList
	,_openb3d_openb3dcore_TTexture_TextureListAdd_TTList
	,_openb3d_openb3dcore_TTexture_TextureListRemove_TTList
	,openb3d_openb3dcore_TTexture_NewTexture_TTTexture
	,openb3d_openb3dcore_TTexture_Create_TTTexture
	,_openb3d_openb3dcore_TTexture_CountMipmaps
	,_openb3d_openb3dcore_TTexture_BufferToTex_pbi
	,_openb3d_openb3dcore_TTexture_TexToBuffer_pbi
	,_openb3d_openb3dcore_TTexture_CameraToTex_TTCamerai
	,_openb3d_openb3dcore_TTexture_DepthBufferToTex_TTCamera
	,_openb3d_openb3dcore_TTexture_AlphaDiscard_f
	,_openb3d_openb3dcore_TTexture_TextureFlags_i
	,_openb3d_openb3dcore_TTexture_TextureGLTexEnvi_iii
	,_openb3d_openb3dcore_TTexture_TextureGLTexEnvf_iif
	,_openb3d_openb3dcore_TTexture_GlobalAnIsotropic_f
	,_openb3d_openb3dcore_TTexture_TextureAnIsotropic_f
	,_openb3d_openb3dcore_TTexture_TextureMultitex_f
	,_openb3d_openb3dcore_TTexture_GetString_pb
	,_openb3d_openb3dcore_TTexture_SetString_pbS
	,_openb3d_openb3dcore_TTexture_CameraToTexEXT_TTCamerai
	,_openb3d_openb3dcore_TTexture_DepthBufferToTexEXT_TTCamerai
	,_openb3d_openb3dcore_TTexture_FreeTexture
	,openb3d_openb3dcore_TTexture_CreateTexture_TTTexture_iiii
	,openb3d_openb3dcore_TTexture_LoadTexture_TTTexture_SiTTTexture
	,openb3d_openb3dcore_TTexture_LoadAnimTexture_TTTexture_SiiiiiTTTexture
	,openb3d_openb3dcore_TTexture_LoadAnimTextureStream_TTTexture_TObjectiiiiiTTTexture
	,openb3d_openb3dcore_TTexture_LoadCubeMapTextureStream_TTTexture_TObjectiiiiiTTTexture
	,openb3d_openb3dcore_TTexture_FileFind_i_vS
	,openb3d_openb3dcore_TTexture_FileAbs_S_S
	,openb3d_openb3dcore_TTexture_AdjustPixmap_TTPixmap_TTPixmap
	,openb3d_openb3dcore_TTexture_CheckAlpha_i_TTPixmap
	,openb3d_openb3dcore_TTexture_ApplyAlpha_TTPixmap_vTTPixmapf
	,openb3d_openb3dcore_TTexture_ApplyMask_TTPixmap_vTTPixmapiii
	,openb3d_openb3dcore_TTexture_Pow2Size_i_i
	,_openb3d_openb3dcore_TTexture_TextureBlend_i
	,_openb3d_openb3dcore_TTexture_TextureCoords_i
	,_openb3d_openb3dcore_TTexture_ScaleTexture_ff
	,_openb3d_openb3dcore_TTexture_PositionTexture_ff
	,_openb3d_openb3dcore_TTexture_RotateTexture_f
	,_openb3d_openb3dcore_TTexture_TextureWidth
	,_openb3d_openb3dcore_TTexture_TextureHeight
	,_openb3d_openb3dcore_TTexture_TextureName
	,openb3d_openb3dcore_TTexture_GetBrushTexture_TTTexture_TTBrushi
	,openb3d_openb3dcore_TTexture_ClearTextureFilters_i
	,openb3d_openb3dcore_TTexture_TextureFilter_i_Si
	,_openb3d_openb3dcore_TTexture_SetCubeFace_i
	,_openb3d_openb3dcore_TTexture_SetCubeMode_i
	,_openb3d_openb3dcore_TTexture_BackBufferToTex_iii
	,_openb3d_openb3dcore_TTexture_Copy_i
	,_openb3d_openb3dcore_TTexture_TexInList
	,_openb3d_openb3dcore_TTexture_FilterFlags
	,openb3d_openb3dcore_TMaterial_LoadMaterial_TTMaterial_Siiiii
};

void _openb3d_openb3dcore_TShader_New(struct openb3d_openb3dcore_TShader_obj* o) {
	bbObjectCtor((BBOBJECT)o);
	o->clas = &openb3d_openb3dcore_TShader;
	((struct openb3d_openb3dcore_TShader_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tshader_instance = 0;
	((struct openb3d_openb3dcore_TShader_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tshader_exists = 0;
}
struct openb3d_openb3dcore_TShader_obj* openb3d_openb3dcore_TShader_CreateObject_TTShader_pb(BBBYTE* bbt_inst){
	struct openb3d_openb3dcore_TShader_obj* bbt_obj=(struct openb3d_openb3dcore_TShader_obj*)((struct openb3d_openb3dcore_TShader_obj*)&bbNullObject);
	struct BBDebugScope_2 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"CreateObject",
		{
			{
				BBDEBUGDECL_LOCAL,
				"inst",
				"*b",
				.var_address=&bbt_inst
			},
			{
				BBDEBUGDECL_LOCAL,
				"obj",
				":TShader",
				.var_address=&bbt_obj
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x44a35bd9cb25cae8, 185, 0};
	bbOnDebugEnterStm(&__stmt_0);
	if(bbt_inst==0){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x44a35bd9cb25cae8, 185, 0};
		bbOnDebugEnterStm(&__stmt_0);
		bbOnDebugLeaveScope();
		bbOnDebugLeaveScope();
		return (struct openb3d_openb3dcore_TShader_obj*)&bbNullObject;
	}
	struct BBDebugStm __stmt_1 = {0x44a35bd9cb25cae8, 186, 0};
	bbOnDebugEnterStm(&__stmt_1);
	bbt_obj=(struct openb3d_openb3dcore_TShader_obj*)(struct openb3d_openb3dcore_TShader_obj*)bbObjectAtomicNew((BBClass *)&openb3d_openb3dcore_TShader);
	struct BBDebugStm __stmt_2 = {0x44a35bd9cb25cae8, 188, 0};
	bbOnDebugEnterStm(&__stmt_2);
	((struct brl_map_ptrmap_TPtrMap_obj*)bbNullObjectTest((BBObject*)openb3d_openb3dcore_TShader_shader_map))->clas->m_Insert_pbTObject((struct brl_map_ptrmap_TPtrMap_obj*)openb3d_openb3dcore_TShader_shader_map,bbt_inst,(BBOBJECT)bbt_obj);
	struct BBDebugStm __stmt_3 = {0x44a35bd9cb25cae8, 192, 0};
	bbOnDebugEnterStm(&__stmt_3);
	((struct openb3d_openb3dcore_TShader_obj*)bbNullObjectTest((BBObject*)bbt_obj))->_openb3d_openb3dcore_tshader_instance =bbt_inst;
	struct BBDebugStm __stmt_4 = {0x44a35bd9cb25cae8, 193, 0};
	bbOnDebugEnterStm(&__stmt_4);
	((struct openb3d_openb3dcore_TShader_obj*)bbNullObjectTest((BBObject*)bbt_obj))->clas->m_InitFields((struct openb3d_openb3dcore_TShader_obj*)bbt_obj);
	struct BBDebugStm __stmt_5 = {0x44a35bd9cb25cae8, 194, 0};
	bbOnDebugEnterStm(&__stmt_5);
	bbOnDebugLeaveScope();
	return (struct openb3d_openb3dcore_TShader_obj*)bbt_obj;
}
BBINT openb3d_openb3dcore_TShader_FreeObject_i_pb(BBBYTE* bbt_inst){
	struct BBDebugScope_1 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"FreeObject",
		{
			{
				BBDEBUGDECL_LOCAL,
				"inst",
				"*b",
				.var_address=&bbt_inst
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x44a35bd9cb25cae8, 201, 0};
	bbOnDebugEnterStm(&__stmt_0);
	((struct brl_map_ptrmap_TPtrMap_obj*)bbNullObjectTest((BBObject*)openb3d_openb3dcore_TShader_shader_map))->clas->m_Remove_pb((struct brl_map_ptrmap_TPtrMap_obj*)openb3d_openb3dcore_TShader_shader_map,bbt_inst);
	bbOnDebugLeaveScope();
	return 0;
}
struct openb3d_openb3dcore_TShader_obj* openb3d_openb3dcore_TShader_GetObject_TTShader_pb(BBBYTE* bbt_inst){
	struct BBDebugScope_1 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"GetObject",
		{
			{
				BBDEBUGDECL_LOCAL,
				"inst",
				"*b",
				.var_address=&bbt_inst
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x44a35bd9cb25cae8, 211, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbOnDebugLeaveScope();
	return (struct openb3d_openb3dcore_TShader_obj*)((struct openb3d_openb3dcore_TShader_obj*)bbObjectDowncast((BBOBJECT)((struct brl_map_ptrmap_TPtrMap_obj*)bbNullObjectTest((BBObject*)openb3d_openb3dcore_TShader_shader_map))->clas->m_ValueForKey_pb((struct brl_map_ptrmap_TPtrMap_obj*)openb3d_openb3dcore_TShader_shader_map,bbt_inst),(BBClass*)&openb3d_openb3dcore_TShader));
}
BBBYTE* openb3d_openb3dcore_TShader_GetInstance_pb_TTShader(struct openb3d_openb3dcore_TShader_obj* bbt_obj){
	struct BBDebugScope_1 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"GetInstance",
		{
			{
				BBDEBUGDECL_LOCAL,
				"obj",
				":TShader",
				.var_address=&bbt_obj
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x44a35bd9cb25cae8, 220, 0};
	bbOnDebugEnterStm(&__stmt_0);
	if(((BBOBJECT)bbt_obj)==&bbNullObject){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x44a35bd9cb25cae8, 220, 0};
		bbOnDebugEnterStm(&__stmt_0);
		bbOnDebugLeaveScope();
		bbOnDebugLeaveScope();
		return 0;
	}
	struct BBDebugStm __stmt_1 = {0x44a35bd9cb25cae8, 221, 0};
	bbOnDebugEnterStm(&__stmt_1);
	bbOnDebugLeaveScope();
	return ((struct openb3d_openb3dcore_TShader_obj*)bbNullObjectTest((BBObject*)bbt_obj))->_openb3d_openb3dcore_tshader_instance ;
}
BBINT _openb3d_openb3dcore_TShader_InitFields(struct openb3d_openb3dcore_TShader_obj* o){
	((struct openb3d_openb3dcore_TShader_obj*)bbNullObjectTest((BBObject*)o));
	struct BBDebugScope_1 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"InitFields",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TShader",
				.var_address=&o
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x44a35bd9cb25cae8, 227, 0};
	bbOnDebugEnterStm(&__stmt_0);
	((struct openb3d_openb3dcore_TShader_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tshader_exists =1;
	bbOnDebugLeaveScope();
	return 0;
}
BBINT _openb3d_openb3dcore_TShader_FreeShader(struct openb3d_openb3dcore_TShader_obj* o){
	((struct openb3d_openb3dcore_TShader_obj*)bbNullObjectTest((BBObject*)o));
	struct BBDebugScope_1 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"FreeShader",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TShader",
				.var_address=&o
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x44a35bd9cb25cae8, 235, 0};
	bbOnDebugEnterStm(&__stmt_0);
	if(((struct openb3d_openb3dcore_TShader_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tshader_exists !=0){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x44a35bd9cb25cae8, 236, 0};
		bbOnDebugEnterStm(&__stmt_0);
		((struct openb3d_openb3dcore_TShader_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tshader_exists =0;
		struct BBDebugStm __stmt_1 = {0x44a35bd9cb25cae8, 237, 0};
		bbOnDebugEnterStm(&__stmt_1);
		FreeShader_(o->clas->f_GetInstance_pb_TTShader((struct openb3d_openb3dcore_TShader_obj*)o));
		struct BBDebugStm __stmt_2 = {0x44a35bd9cb25cae8, 238, 0};
		bbOnDebugEnterStm(&__stmt_2);
		o->clas->f_FreeObject_i_pb(o->clas->f_GetInstance_pb_TTShader((struct openb3d_openb3dcore_TShader_obj*)o));
		bbOnDebugLeaveScope();
	}
	bbOnDebugLeaveScope();
	return 0;
}
struct openb3d_openb3dcore_TShader_obj* openb3d_openb3dcore_TShader_CreateShaderMaterial_TTShader_S(BBSTRING bbt_ShaderName){
	BBBYTE* bbt_cString=0;
	BBBYTE* bbt_inst=0;
	struct openb3d_openb3dcore_TShader_obj* bbt_material=(struct openb3d_openb3dcore_TShader_obj*)((struct openb3d_openb3dcore_TShader_obj*)&bbNullObject);
	struct BBDebugScope_4 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"CreateShaderMaterial",
		{
			{
				BBDEBUGDECL_LOCAL,
				"ShaderName",
				"$",
				.var_address=&bbt_ShaderName
			},
			{
				BBDEBUGDECL_LOCAL,
				"cString",
				"*b",
				.var_address=&bbt_cString
			},
			{
				BBDEBUGDECL_LOCAL,
				"inst",
				"*b",
				.var_address=&bbt_inst
			},
			{
				BBDEBUGDECL_LOCAL,
				"material",
				":TShader",
				.var_address=&bbt_material
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x44a35bd9cb25cae8, 247, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbt_cString=bbStringToCString((BBSTRING)bbt_ShaderName);
	struct BBDebugStm __stmt_1 = {0x44a35bd9cb25cae8, 248, 0};
	bbOnDebugEnterStm(&__stmt_1);
	bbt_inst=CreateShaderMaterial_(bbt_cString);
	struct BBDebugStm __stmt_2 = {0x44a35bd9cb25cae8, 249, 0};
	bbOnDebugEnterStm(&__stmt_2);
	bbt_material=(struct openb3d_openb3dcore_TShader_obj*)openb3d_openb3dcore_TShader_CreateObject_TTShader_pb(bbt_inst);
	struct BBDebugStm __stmt_3 = {0x44a35bd9cb25cae8, 250, 0};
	bbOnDebugEnterStm(&__stmt_3);
	bbMemFree((void*)bbt_cString);
	struct BBDebugStm __stmt_4 = {0x44a35bd9cb25cae8, 251, 0};
	bbOnDebugEnterStm(&__stmt_4);
	bbOnDebugLeaveScope();
	return (struct openb3d_openb3dcore_TShader_obj*)bbt_material;
}
struct openb3d_openb3dcore_TShader_obj* openb3d_openb3dcore_TShader_LoadShader_TTShader_SSS(BBSTRING bbt_ShaderName,BBSTRING bbt_VshaderFileName,BBSTRING bbt_FshaderFileName){
	BBBYTE* bbt_cString=0;
	BBBYTE* bbt_vcString=0;
	BBBYTE* bbt_fcString=0;
	BBBYTE* bbt_inst=0;
	struct openb3d_openb3dcore_TShader_obj* bbt_material=(struct openb3d_openb3dcore_TShader_obj*)((struct openb3d_openb3dcore_TShader_obj*)&bbNullObject);
	struct BBDebugScope_8 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"LoadShader",
		{
			{
				BBDEBUGDECL_LOCAL,
				"ShaderName",
				"$",
				.var_address=&bbt_ShaderName
			},
			{
				BBDEBUGDECL_LOCAL,
				"VshaderFileName",
				"$",
				.var_address=&bbt_VshaderFileName
			},
			{
				BBDEBUGDECL_LOCAL,
				"FshaderFileName",
				"$",
				.var_address=&bbt_FshaderFileName
			},
			{
				BBDEBUGDECL_LOCAL,
				"cString",
				"*b",
				.var_address=&bbt_cString
			},
			{
				BBDEBUGDECL_LOCAL,
				"vcString",
				"*b",
				.var_address=&bbt_vcString
			},
			{
				BBDEBUGDECL_LOCAL,
				"fcString",
				"*b",
				.var_address=&bbt_fcString
			},
			{
				BBDEBUGDECL_LOCAL,
				"inst",
				"*b",
				.var_address=&bbt_inst
			},
			{
				BBDEBUGDECL_LOCAL,
				"material",
				":TShader",
				.var_address=&bbt_material
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x44a35bd9cb25cae8, 257, 0};
	bbOnDebugEnterStm(&__stmt_0);
	if(brl_filesystem_FileType(bbt_VshaderFileName)==0){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x44a35bd9cb25cae8, 257, 0};
		bbOnDebugEnterStm(&__stmt_0);
		brl_blitz_DebugLog(bbStringConcat(((BBString*)&_s688),bbt_VshaderFileName));
		bbOnDebugLeaveScope();
	}
	struct BBDebugStm __stmt_1 = {0x44a35bd9cb25cae8, 258, 0};
	bbOnDebugEnterStm(&__stmt_1);
	if(brl_filesystem_FileType(bbt_FshaderFileName)==0){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x44a35bd9cb25cae8, 258, 0};
		bbOnDebugEnterStm(&__stmt_0);
		brl_blitz_DebugLog(bbStringConcat(((BBString*)&_s688),bbt_FshaderFileName));
		bbOnDebugLeaveScope();
	}
	struct BBDebugStm __stmt_2 = {0x44a35bd9cb25cae8, 260, 0};
	bbOnDebugEnterStm(&__stmt_2);
	bbt_cString=bbStringToCString((BBSTRING)bbt_ShaderName);
	struct BBDebugStm __stmt_3 = {0x44a35bd9cb25cae8, 261, 0};
	bbOnDebugEnterStm(&__stmt_3);
	bbt_vcString=bbStringToCString((BBSTRING)bbt_VshaderFileName);
	struct BBDebugStm __stmt_4 = {0x44a35bd9cb25cae8, 262, 0};
	bbOnDebugEnterStm(&__stmt_4);
	bbt_fcString=bbStringToCString((BBSTRING)bbt_FshaderFileName);
	struct BBDebugStm __stmt_5 = {0x44a35bd9cb25cae8, 263, 0};
	bbOnDebugEnterStm(&__stmt_5);
	bbt_inst=LoadShader_(bbt_cString,bbt_vcString,bbt_fcString);
	struct BBDebugStm __stmt_6 = {0x44a35bd9cb25cae8, 264, 0};
	bbOnDebugEnterStm(&__stmt_6);
	bbt_material=(struct openb3d_openb3dcore_TShader_obj*)openb3d_openb3dcore_TShader_CreateObject_TTShader_pb(bbt_inst);
	struct BBDebugStm __stmt_7 = {0x44a35bd9cb25cae8, 265, 0};
	bbOnDebugEnterStm(&__stmt_7);
	bbMemFree((void*)bbt_cString);
	struct BBDebugStm __stmt_8 = {0x44a35bd9cb25cae8, 266, 0};
	bbOnDebugEnterStm(&__stmt_8);
	bbMemFree((void*)bbt_vcString);
	struct BBDebugStm __stmt_9 = {0x44a35bd9cb25cae8, 267, 0};
	bbOnDebugEnterStm(&__stmt_9);
	bbMemFree((void*)bbt_fcString);
	struct BBDebugStm __stmt_10 = {0x44a35bd9cb25cae8, 268, 0};
	bbOnDebugEnterStm(&__stmt_10);
	bbOnDebugLeaveScope();
	return (struct openb3d_openb3dcore_TShader_obj*)bbt_material;
}
struct openb3d_openb3dcore_TShader_obj* openb3d_openb3dcore_TShader_CreateShader_TTShader_SSS(BBSTRING bbt_ShaderName,BBSTRING bbt_VshaderString,BBSTRING bbt_FshaderString){
	BBBYTE* bbt_cString=0;
	BBBYTE* bbt_vcString=0;
	BBBYTE* bbt_fcString=0;
	BBBYTE* bbt_inst=0;
	struct openb3d_openb3dcore_TShader_obj* bbt_material=(struct openb3d_openb3dcore_TShader_obj*)((struct openb3d_openb3dcore_TShader_obj*)&bbNullObject);
	struct BBDebugScope_8 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"CreateShader",
		{
			{
				BBDEBUGDECL_LOCAL,
				"ShaderName",
				"$",
				.var_address=&bbt_ShaderName
			},
			{
				BBDEBUGDECL_LOCAL,
				"VshaderString",
				"$",
				.var_address=&bbt_VshaderString
			},
			{
				BBDEBUGDECL_LOCAL,
				"FshaderString",
				"$",
				.var_address=&bbt_FshaderString
			},
			{
				BBDEBUGDECL_LOCAL,
				"cString",
				"*b",
				.var_address=&bbt_cString
			},
			{
				BBDEBUGDECL_LOCAL,
				"vcString",
				"*b",
				.var_address=&bbt_vcString
			},
			{
				BBDEBUGDECL_LOCAL,
				"fcString",
				"*b",
				.var_address=&bbt_fcString
			},
			{
				BBDEBUGDECL_LOCAL,
				"inst",
				"*b",
				.var_address=&bbt_inst
			},
			{
				BBDEBUGDECL_LOCAL,
				"material",
				":TShader",
				.var_address=&bbt_material
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x44a35bd9cb25cae8, 274, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbt_cString=bbStringToCString((BBSTRING)bbt_ShaderName);
	struct BBDebugStm __stmt_1 = {0x44a35bd9cb25cae8, 275, 0};
	bbOnDebugEnterStm(&__stmt_1);
	bbt_vcString=bbStringToCString((BBSTRING)bbt_VshaderString);
	struct BBDebugStm __stmt_2 = {0x44a35bd9cb25cae8, 276, 0};
	bbOnDebugEnterStm(&__stmt_2);
	bbt_fcString=bbStringToCString((BBSTRING)bbt_FshaderString);
	struct BBDebugStm __stmt_3 = {0x44a35bd9cb25cae8, 277, 0};
	bbOnDebugEnterStm(&__stmt_3);
	bbt_inst=CreateShader_(bbt_cString,bbt_vcString,bbt_fcString);
	struct BBDebugStm __stmt_4 = {0x44a35bd9cb25cae8, 278, 0};
	bbOnDebugEnterStm(&__stmt_4);
	bbt_material=(struct openb3d_openb3dcore_TShader_obj*)openb3d_openb3dcore_TShader_CreateObject_TTShader_pb(bbt_inst);
	struct BBDebugStm __stmt_5 = {0x44a35bd9cb25cae8, 279, 0};
	bbOnDebugEnterStm(&__stmt_5);
	bbMemFree((void*)bbt_cString);
	struct BBDebugStm __stmt_6 = {0x44a35bd9cb25cae8, 280, 0};
	bbOnDebugEnterStm(&__stmt_6);
	bbMemFree((void*)bbt_vcString);
	struct BBDebugStm __stmt_7 = {0x44a35bd9cb25cae8, 281, 0};
	bbOnDebugEnterStm(&__stmt_7);
	bbMemFree((void*)bbt_fcString);
	struct BBDebugStm __stmt_8 = {0x44a35bd9cb25cae8, 282, 0};
	bbOnDebugEnterStm(&__stmt_8);
	bbOnDebugLeaveScope();
	return (struct openb3d_openb3dcore_TShader_obj*)bbt_material;
}
struct openb3d_openb3dcore_TShader_obj* openb3d_openb3dcore_TShader_LoadShaderVGF_TTShader_SSSS(BBSTRING bbt_ShaderName,BBSTRING bbt_VshaderFileName,BBSTRING bbt_GshaderFileName,BBSTRING bbt_FshaderFileName){
	BBBYTE* bbt_cString=0;
	BBBYTE* bbt_vcString=0;
	BBBYTE* bbt_gcString=0;
	BBBYTE* bbt_fcString=0;
	BBBYTE* bbt_inst=0;
	struct openb3d_openb3dcore_TShader_obj* bbt_material=(struct openb3d_openb3dcore_TShader_obj*)((struct openb3d_openb3dcore_TShader_obj*)&bbNullObject);
	struct BBDebugScope_10 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"LoadShaderVGF",
		{
			{
				BBDEBUGDECL_LOCAL,
				"ShaderName",
				"$",
				.var_address=&bbt_ShaderName
			},
			{
				BBDEBUGDECL_LOCAL,
				"VshaderFileName",
				"$",
				.var_address=&bbt_VshaderFileName
			},
			{
				BBDEBUGDECL_LOCAL,
				"GshaderFileName",
				"$",
				.var_address=&bbt_GshaderFileName
			},
			{
				BBDEBUGDECL_LOCAL,
				"FshaderFileName",
				"$",
				.var_address=&bbt_FshaderFileName
			},
			{
				BBDEBUGDECL_LOCAL,
				"cString",
				"*b",
				.var_address=&bbt_cString
			},
			{
				BBDEBUGDECL_LOCAL,
				"vcString",
				"*b",
				.var_address=&bbt_vcString
			},
			{
				BBDEBUGDECL_LOCAL,
				"gcString",
				"*b",
				.var_address=&bbt_gcString
			},
			{
				BBDEBUGDECL_LOCAL,
				"fcString",
				"*b",
				.var_address=&bbt_fcString
			},
			{
				BBDEBUGDECL_LOCAL,
				"inst",
				"*b",
				.var_address=&bbt_inst
			},
			{
				BBDEBUGDECL_LOCAL,
				"material",
				":TShader",
				.var_address=&bbt_material
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x44a35bd9cb25cae8, 288, 0};
	bbOnDebugEnterStm(&__stmt_0);
	if(brl_filesystem_FileType(bbt_VshaderFileName)==0){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x44a35bd9cb25cae8, 288, 0};
		bbOnDebugEnterStm(&__stmt_0);
		brl_blitz_DebugLog(bbStringConcat(((BBString*)&_s688),bbt_VshaderFileName));
		bbOnDebugLeaveScope();
	}
	struct BBDebugStm __stmt_1 = {0x44a35bd9cb25cae8, 289, 0};
	bbOnDebugEnterStm(&__stmt_1);
	if(brl_filesystem_FileType(bbt_GshaderFileName)==0){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x44a35bd9cb25cae8, 289, 0};
		bbOnDebugEnterStm(&__stmt_0);
		brl_blitz_DebugLog(bbStringConcat(((BBString*)&_s688),bbt_GshaderFileName));
		bbOnDebugLeaveScope();
	}
	struct BBDebugStm __stmt_2 = {0x44a35bd9cb25cae8, 290, 0};
	bbOnDebugEnterStm(&__stmt_2);
	if(brl_filesystem_FileType(bbt_FshaderFileName)==0){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x44a35bd9cb25cae8, 290, 0};
		bbOnDebugEnterStm(&__stmt_0);
		brl_blitz_DebugLog(bbStringConcat(((BBString*)&_s688),bbt_FshaderFileName));
		bbOnDebugLeaveScope();
	}
	struct BBDebugStm __stmt_3 = {0x44a35bd9cb25cae8, 292, 0};
	bbOnDebugEnterStm(&__stmt_3);
	bbt_cString=bbStringToCString((BBSTRING)bbt_ShaderName);
	struct BBDebugStm __stmt_4 = {0x44a35bd9cb25cae8, 293, 0};
	bbOnDebugEnterStm(&__stmt_4);
	bbt_vcString=bbStringToCString((BBSTRING)bbt_VshaderFileName);
	struct BBDebugStm __stmt_5 = {0x44a35bd9cb25cae8, 294, 0};
	bbOnDebugEnterStm(&__stmt_5);
	bbt_gcString=bbStringToCString((BBSTRING)bbt_GshaderFileName);
	struct BBDebugStm __stmt_6 = {0x44a35bd9cb25cae8, 295, 0};
	bbOnDebugEnterStm(&__stmt_6);
	bbt_fcString=bbStringToCString((BBSTRING)bbt_FshaderFileName);
	struct BBDebugStm __stmt_7 = {0x44a35bd9cb25cae8, 296, 0};
	bbOnDebugEnterStm(&__stmt_7);
	bbt_inst=LoadShaderVGF_(bbt_cString,bbt_vcString,bbt_gcString,bbt_fcString);
	struct BBDebugStm __stmt_8 = {0x44a35bd9cb25cae8, 297, 0};
	bbOnDebugEnterStm(&__stmt_8);
	bbt_material=(struct openb3d_openb3dcore_TShader_obj*)openb3d_openb3dcore_TShader_CreateObject_TTShader_pb(bbt_inst);
	struct BBDebugStm __stmt_9 = {0x44a35bd9cb25cae8, 298, 0};
	bbOnDebugEnterStm(&__stmt_9);
	bbMemFree((void*)bbt_cString);
	struct BBDebugStm __stmt_10 = {0x44a35bd9cb25cae8, 299, 0};
	bbOnDebugEnterStm(&__stmt_10);
	bbMemFree((void*)bbt_vcString);
	struct BBDebugStm __stmt_11 = {0x44a35bd9cb25cae8, 300, 0};
	bbOnDebugEnterStm(&__stmt_11);
	bbMemFree((void*)bbt_gcString);
	struct BBDebugStm __stmt_12 = {0x44a35bd9cb25cae8, 301, 0};
	bbOnDebugEnterStm(&__stmt_12);
	bbMemFree((void*)bbt_fcString);
	struct BBDebugStm __stmt_13 = {0x44a35bd9cb25cae8, 302, 0};
	bbOnDebugEnterStm(&__stmt_13);
	bbOnDebugLeaveScope();
	return (struct openb3d_openb3dcore_TShader_obj*)bbt_material;
}
struct openb3d_openb3dcore_TShader_obj* openb3d_openb3dcore_TShader_CreateShaderVGF_TTShader_SSSS(BBSTRING bbt_ShaderName,BBSTRING bbt_VshaderString,BBSTRING bbt_GshaderString,BBSTRING bbt_FshaderString){
	BBBYTE* bbt_cString=0;
	BBBYTE* bbt_vcString=0;
	BBBYTE* bbt_gcString=0;
	BBBYTE* bbt_fcString=0;
	BBBYTE* bbt_inst=0;
	struct openb3d_openb3dcore_TShader_obj* bbt_material=(struct openb3d_openb3dcore_TShader_obj*)((struct openb3d_openb3dcore_TShader_obj*)&bbNullObject);
	struct BBDebugScope_10 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"CreateShaderVGF",
		{
			{
				BBDEBUGDECL_LOCAL,
				"ShaderName",
				"$",
				.var_address=&bbt_ShaderName
			},
			{
				BBDEBUGDECL_LOCAL,
				"VshaderString",
				"$",
				.var_address=&bbt_VshaderString
			},
			{
				BBDEBUGDECL_LOCAL,
				"GshaderString",
				"$",
				.var_address=&bbt_GshaderString
			},
			{
				BBDEBUGDECL_LOCAL,
				"FshaderString",
				"$",
				.var_address=&bbt_FshaderString
			},
			{
				BBDEBUGDECL_LOCAL,
				"cString",
				"*b",
				.var_address=&bbt_cString
			},
			{
				BBDEBUGDECL_LOCAL,
				"vcString",
				"*b",
				.var_address=&bbt_vcString
			},
			{
				BBDEBUGDECL_LOCAL,
				"gcString",
				"*b",
				.var_address=&bbt_gcString
			},
			{
				BBDEBUGDECL_LOCAL,
				"fcString",
				"*b",
				.var_address=&bbt_fcString
			},
			{
				BBDEBUGDECL_LOCAL,
				"inst",
				"*b",
				.var_address=&bbt_inst
			},
			{
				BBDEBUGDECL_LOCAL,
				"material",
				":TShader",
				.var_address=&bbt_material
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x44a35bd9cb25cae8, 308, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbt_cString=bbStringToCString((BBSTRING)bbt_ShaderName);
	struct BBDebugStm __stmt_1 = {0x44a35bd9cb25cae8, 309, 0};
	bbOnDebugEnterStm(&__stmt_1);
	bbt_vcString=bbStringToCString((BBSTRING)bbt_VshaderString);
	struct BBDebugStm __stmt_2 = {0x44a35bd9cb25cae8, 310, 0};
	bbOnDebugEnterStm(&__stmt_2);
	bbt_gcString=bbStringToCString((BBSTRING)bbt_GshaderString);
	struct BBDebugStm __stmt_3 = {0x44a35bd9cb25cae8, 311, 0};
	bbOnDebugEnterStm(&__stmt_3);
	bbt_fcString=bbStringToCString((BBSTRING)bbt_FshaderString);
	struct BBDebugStm __stmt_4 = {0x44a35bd9cb25cae8, 312, 0};
	bbOnDebugEnterStm(&__stmt_4);
	bbt_inst=CreateShaderVGF_(bbt_cString,bbt_vcString,bbt_gcString,bbt_fcString);
	struct BBDebugStm __stmt_5 = {0x44a35bd9cb25cae8, 313, 0};
	bbOnDebugEnterStm(&__stmt_5);
	bbt_material=(struct openb3d_openb3dcore_TShader_obj*)openb3d_openb3dcore_TShader_CreateObject_TTShader_pb(bbt_inst);
	struct BBDebugStm __stmt_6 = {0x44a35bd9cb25cae8, 314, 0};
	bbOnDebugEnterStm(&__stmt_6);
	bbMemFree((void*)bbt_cString);
	struct BBDebugStm __stmt_7 = {0x44a35bd9cb25cae8, 315, 0};
	bbOnDebugEnterStm(&__stmt_7);
	bbMemFree((void*)bbt_vcString);
	struct BBDebugStm __stmt_8 = {0x44a35bd9cb25cae8, 316, 0};
	bbOnDebugEnterStm(&__stmt_8);
	bbMemFree((void*)bbt_gcString);
	struct BBDebugStm __stmt_9 = {0x44a35bd9cb25cae8, 317, 0};
	bbOnDebugEnterStm(&__stmt_9);
	bbMemFree((void*)bbt_fcString);
	struct BBDebugStm __stmt_10 = {0x44a35bd9cb25cae8, 318, 0};
	bbOnDebugEnterStm(&__stmt_10);
	bbOnDebugLeaveScope();
	return (struct openb3d_openb3dcore_TShader_obj*)bbt_material;
}
BBINT _openb3d_openb3dcore_TShader_LinkShader(struct openb3d_openb3dcore_TShader_obj* o){
	((struct openb3d_openb3dcore_TShader_obj*)bbNullObjectTest((BBObject*)o));
	struct BBDebugScope_1 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"LinkShader",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TShader",
				.var_address=&o
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x44a35bd9cb25cae8, 324, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbOnDebugLeaveScope();
	return LinkShader_(o->clas->f_GetInstance_pb_TTShader((struct openb3d_openb3dcore_TShader_obj*)o));
}
BBINT _openb3d_openb3dcore_TShader_ShadeSurface_TTSurface(struct openb3d_openb3dcore_TShader_obj* o,struct openb3d_openb3dcore_TSurface_obj* bbt_surf){
	((struct openb3d_openb3dcore_TShader_obj*)bbNullObjectTest((BBObject*)o));
	struct BBDebugScope_2 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"ShadeSurface",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TShader",
				.var_address=&o
			},
			{
				BBDEBUGDECL_LOCAL,
				"surf",
				":TSurface",
				.var_address=&bbt_surf
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x44a35bd9cb25cae8, 330, 0};
	bbOnDebugEnterStm(&__stmt_0);
	ShadeSurface_(openb3d_openb3dcore_TSurface_GetInstance_pb_TTSurface((struct openb3d_openb3dcore_TSurface_obj*)bbt_surf),o->clas->f_GetInstance_pb_TTShader((struct openb3d_openb3dcore_TShader_obj*)o));
	bbOnDebugLeaveScope();
	return 0;
}
BBINT _openb3d_openb3dcore_TShader_ShadeMesh_TTMesh(struct openb3d_openb3dcore_TShader_obj* o,struct openb3d_openb3dcore_TMesh_obj* bbt_mesh){
	((struct openb3d_openb3dcore_TShader_obj*)bbNullObjectTest((BBObject*)o));
	struct BBDebugScope_2 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"ShadeMesh",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TShader",
				.var_address=&o
			},
			{
				BBDEBUGDECL_LOCAL,
				"mesh",
				":TMesh",
				.var_address=&bbt_mesh
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x44a35bd9cb25cae8, 336, 0};
	bbOnDebugEnterStm(&__stmt_0);
	ShadeMesh_(openb3d_openb3dcore_TEntity_GetInstance_pb_TTEntity((struct openb3d_openb3dcore_TEntity_obj*)((struct openb3d_openb3dcore_TEntity_obj*)bbObjectDowncast((BBOBJECT)bbt_mesh,(BBClass*)&openb3d_openb3dcore_TEntity))),o->clas->f_GetInstance_pb_TTShader((struct openb3d_openb3dcore_TShader_obj*)o));
	bbOnDebugLeaveScope();
	return 0;
}
BBINT _openb3d_openb3dcore_TShader_ShadeEntity_TTEntity(struct openb3d_openb3dcore_TShader_obj* o,struct openb3d_openb3dcore_TEntity_obj* bbt_ent){
	((struct openb3d_openb3dcore_TShader_obj*)bbNullObjectTest((BBObject*)o));
	struct BBDebugScope_2 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"ShadeEntity",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TShader",
				.var_address=&o
			},
			{
				BBDEBUGDECL_LOCAL,
				"ent",
				":TEntity",
				.var_address=&bbt_ent
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x44a35bd9cb25cae8, 342, 0};
	bbOnDebugEnterStm(&__stmt_0);
	ShadeEntity_(openb3d_openb3dcore_TEntity_GetInstance_pb_TTEntity((struct openb3d_openb3dcore_TEntity_obj*)bbt_ent),o->clas->f_GetInstance_pb_TTShader((struct openb3d_openb3dcore_TShader_obj*)o));
	bbOnDebugLeaveScope();
	return 0;
}
struct openb3d_openb3dcore_TTexture_obj* _openb3d_openb3dcore_TShader_ShaderTexture_TTTextureSi(struct openb3d_openb3dcore_TShader_obj* o,struct openb3d_openb3dcore_TTexture_obj* bbt_tex,BBSTRING bbt_name,BBINT bbt_index){
	((struct openb3d_openb3dcore_TShader_obj*)bbNullObjectTest((BBObject*)o));
	BBBYTE* bbt_cString=0;
	BBBYTE* bbt_inst=0;
	struct openb3d_openb3dcore_TTexture_obj* bbt_tex2=(struct openb3d_openb3dcore_TTexture_obj*)((struct openb3d_openb3dcore_TTexture_obj*)&bbNullObject);
	struct BBDebugScope_7 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"ShaderTexture",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TShader",
				.var_address=&o
			},
			{
				BBDEBUGDECL_LOCAL,
				"tex",
				":TTexture",
				.var_address=&bbt_tex
			},
			{
				BBDEBUGDECL_LOCAL,
				"name",
				"$",
				.var_address=&bbt_name
			},
			{
				BBDEBUGDECL_LOCAL,
				"index",
				"i",
				.var_address=&bbt_index
			},
			{
				BBDEBUGDECL_LOCAL,
				"cString",
				"*b",
				.var_address=&bbt_cString
			},
			{
				BBDEBUGDECL_LOCAL,
				"inst",
				"*b",
				.var_address=&bbt_inst
			},
			{
				BBDEBUGDECL_LOCAL,
				"tex2",
				":TTexture",
				.var_address=&bbt_tex2
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x44a35bd9cb25cae8, 348, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbt_cString=bbStringToCString((BBSTRING)bbt_name);
	struct BBDebugStm __stmt_1 = {0x44a35bd9cb25cae8, 349, 0};
	bbOnDebugEnterStm(&__stmt_1);
	bbt_inst=ShaderTexture_(o->clas->f_GetInstance_pb_TTShader((struct openb3d_openb3dcore_TShader_obj*)o),openb3d_openb3dcore_TTexture_GetInstance_pb_TTTexture((struct openb3d_openb3dcore_TTexture_obj*)bbt_tex),bbt_cString,bbt_index);
	struct BBDebugStm __stmt_2 = {0x44a35bd9cb25cae8, 350, 0};
	bbOnDebugEnterStm(&__stmt_2);
	bbMemFree((void*)bbt_cString);
	struct BBDebugStm __stmt_3 = {0x44a35bd9cb25cae8, 351, 0};
	bbOnDebugEnterStm(&__stmt_3);
	bbt_tex2=(struct openb3d_openb3dcore_TTexture_obj*)openb3d_openb3dcore_TTexture_GetObject_TTTexture_pb(bbt_inst);
	struct BBDebugStm __stmt_4 = {0x44a35bd9cb25cae8, 352, 0};
	bbOnDebugEnterStm(&__stmt_4);
	if((((BBOBJECT)bbt_tex2)==&bbNullObject) && (bbt_inst!=0)){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x44a35bd9cb25cae8, 352, 0};
		bbOnDebugEnterStm(&__stmt_0);
		bbt_tex2=(struct openb3d_openb3dcore_TTexture_obj*)openb3d_openb3dcore_TTexture_CreateObject_TTTexture_pb(bbt_inst);
		bbOnDebugLeaveScope();
	}
	struct BBDebugStm __stmt_5 = {0x44a35bd9cb25cae8, 353, 0};
	bbOnDebugEnterStm(&__stmt_5);
	bbOnDebugLeaveScope();
	return (struct openb3d_openb3dcore_TTexture_obj*)bbt_tex2;
}
BBINT _openb3d_openb3dcore_TShader_SetFloat_Sf(struct openb3d_openb3dcore_TShader_obj* o,BBSTRING bbt_name,BBFLOAT bbt_v1){
	((struct openb3d_openb3dcore_TShader_obj*)bbNullObjectTest((BBObject*)o));
	BBBYTE* bbt_cString=0;
	struct BBDebugScope_4 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"SetFloat",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TShader",
				.var_address=&o
			},
			{
				BBDEBUGDECL_LOCAL,
				"name",
				"$",
				.var_address=&bbt_name
			},
			{
				BBDEBUGDECL_LOCAL,
				"v1",
				"f",
				.var_address=&bbt_v1
			},
			{
				BBDEBUGDECL_LOCAL,
				"cString",
				"*b",
				.var_address=&bbt_cString
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x44a35bd9cb25cae8, 359, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbt_cString=bbStringToCString((BBSTRING)bbt_name);
	struct BBDebugStm __stmt_1 = {0x44a35bd9cb25cae8, 360, 0};
	bbOnDebugEnterStm(&__stmt_1);
	SetFloat_(o->clas->f_GetInstance_pb_TTShader((struct openb3d_openb3dcore_TShader_obj*)o),bbt_cString,bbt_v1);
	struct BBDebugStm __stmt_2 = {0x44a35bd9cb25cae8, 361, 0};
	bbOnDebugEnterStm(&__stmt_2);
	bbMemFree((void*)bbt_cString);
	bbOnDebugLeaveScope();
	return 0;
}
BBINT _openb3d_openb3dcore_TShader_SetFloat2_Sff(struct openb3d_openb3dcore_TShader_obj* o,BBSTRING bbt_name,BBFLOAT bbt_v1,BBFLOAT bbt_v2){
	((struct openb3d_openb3dcore_TShader_obj*)bbNullObjectTest((BBObject*)o));
	BBBYTE* bbt_cString=0;
	struct BBDebugScope_5 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"SetFloat2",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TShader",
				.var_address=&o
			},
			{
				BBDEBUGDECL_LOCAL,
				"name",
				"$",
				.var_address=&bbt_name
			},
			{
				BBDEBUGDECL_LOCAL,
				"v1",
				"f",
				.var_address=&bbt_v1
			},
			{
				BBDEBUGDECL_LOCAL,
				"v2",
				"f",
				.var_address=&bbt_v2
			},
			{
				BBDEBUGDECL_LOCAL,
				"cString",
				"*b",
				.var_address=&bbt_cString
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x44a35bd9cb25cae8, 367, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbt_cString=bbStringToCString((BBSTRING)bbt_name);
	struct BBDebugStm __stmt_1 = {0x44a35bd9cb25cae8, 368, 0};
	bbOnDebugEnterStm(&__stmt_1);
	SetFloat2_(o->clas->f_GetInstance_pb_TTShader((struct openb3d_openb3dcore_TShader_obj*)o),bbt_cString,bbt_v1,bbt_v2);
	struct BBDebugStm __stmt_2 = {0x44a35bd9cb25cae8, 369, 0};
	bbOnDebugEnterStm(&__stmt_2);
	bbMemFree((void*)bbt_cString);
	bbOnDebugLeaveScope();
	return 0;
}
BBINT _openb3d_openb3dcore_TShader_SetFloat3_Sfff(struct openb3d_openb3dcore_TShader_obj* o,BBSTRING bbt_name,BBFLOAT bbt_v1,BBFLOAT bbt_v2,BBFLOAT bbt_v3){
	((struct openb3d_openb3dcore_TShader_obj*)bbNullObjectTest((BBObject*)o));
	BBBYTE* bbt_cString=0;
	struct BBDebugScope_6 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"SetFloat3",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TShader",
				.var_address=&o
			},
			{
				BBDEBUGDECL_LOCAL,
				"name",
				"$",
				.var_address=&bbt_name
			},
			{
				BBDEBUGDECL_LOCAL,
				"v1",
				"f",
				.var_address=&bbt_v1
			},
			{
				BBDEBUGDECL_LOCAL,
				"v2",
				"f",
				.var_address=&bbt_v2
			},
			{
				BBDEBUGDECL_LOCAL,
				"v3",
				"f",
				.var_address=&bbt_v3
			},
			{
				BBDEBUGDECL_LOCAL,
				"cString",
				"*b",
				.var_address=&bbt_cString
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x44a35bd9cb25cae8, 375, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbt_cString=bbStringToCString((BBSTRING)bbt_name);
	struct BBDebugStm __stmt_1 = {0x44a35bd9cb25cae8, 376, 0};
	bbOnDebugEnterStm(&__stmt_1);
	SetFloat3_(o->clas->f_GetInstance_pb_TTShader((struct openb3d_openb3dcore_TShader_obj*)o),bbt_cString,bbt_v1,bbt_v2,bbt_v3);
	struct BBDebugStm __stmt_2 = {0x44a35bd9cb25cae8, 377, 0};
	bbOnDebugEnterStm(&__stmt_2);
	bbMemFree((void*)bbt_cString);
	bbOnDebugLeaveScope();
	return 0;
}
BBINT _openb3d_openb3dcore_TShader_SetFloat4_Sffff(struct openb3d_openb3dcore_TShader_obj* o,BBSTRING bbt_name,BBFLOAT bbt_v1,BBFLOAT bbt_v2,BBFLOAT bbt_v3,BBFLOAT bbt_v4){
	((struct openb3d_openb3dcore_TShader_obj*)bbNullObjectTest((BBObject*)o));
	BBBYTE* bbt_cString=0;
	struct BBDebugScope_7 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"SetFloat4",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TShader",
				.var_address=&o
			},
			{
				BBDEBUGDECL_LOCAL,
				"name",
				"$",
				.var_address=&bbt_name
			},
			{
				BBDEBUGDECL_LOCAL,
				"v1",
				"f",
				.var_address=&bbt_v1
			},
			{
				BBDEBUGDECL_LOCAL,
				"v2",
				"f",
				.var_address=&bbt_v2
			},
			{
				BBDEBUGDECL_LOCAL,
				"v3",
				"f",
				.var_address=&bbt_v3
			},
			{
				BBDEBUGDECL_LOCAL,
				"v4",
				"f",
				.var_address=&bbt_v4
			},
			{
				BBDEBUGDECL_LOCAL,
				"cString",
				"*b",
				.var_address=&bbt_cString
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x44a35bd9cb25cae8, 383, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbt_cString=bbStringToCString((BBSTRING)bbt_name);
	struct BBDebugStm __stmt_1 = {0x44a35bd9cb25cae8, 384, 0};
	bbOnDebugEnterStm(&__stmt_1);
	SetFloat4_(o->clas->f_GetInstance_pb_TTShader((struct openb3d_openb3dcore_TShader_obj*)o),bbt_cString,bbt_v1,bbt_v2,bbt_v3,bbt_v4);
	struct BBDebugStm __stmt_2 = {0x44a35bd9cb25cae8, 385, 0};
	bbOnDebugEnterStm(&__stmt_2);
	bbMemFree((void*)bbt_cString);
	bbOnDebugLeaveScope();
	return 0;
}
BBINT _openb3d_openb3dcore_TShader_UseFloat_Svf(struct openb3d_openb3dcore_TShader_obj* o,BBSTRING bbt_name,BBFLOAT* bbt_v1){
	((struct openb3d_openb3dcore_TShader_obj*)bbNullObjectTest((BBObject*)o));
	BBBYTE* bbt_cString=0;
	struct BBDebugScope_4 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"UseFloat",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TShader",
				.var_address=&o
			},
			{
				BBDEBUGDECL_LOCAL,
				"name",
				"$",
				.var_address=&bbt_name
			},
			{
				BBDEBUGDECL_VARPARAM,
				"v1",
				"f",
				.var_address=&bbt_v1
			},
			{
				BBDEBUGDECL_LOCAL,
				"cString",
				"*b",
				.var_address=&bbt_cString
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x44a35bd9cb25cae8, 391, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbt_cString=bbStringToCString((BBSTRING)bbt_name);
	struct BBDebugStm __stmt_1 = {0x44a35bd9cb25cae8, 392, 0};
	bbOnDebugEnterStm(&__stmt_1);
	UseFloat_(o->clas->f_GetInstance_pb_TTShader((struct openb3d_openb3dcore_TShader_obj*)o),bbt_cString,&(*bbt_v1));
	struct BBDebugStm __stmt_2 = {0x44a35bd9cb25cae8, 393, 0};
	bbOnDebugEnterStm(&__stmt_2);
	bbMemFree((void*)bbt_cString);
	bbOnDebugLeaveScope();
	return 0;
}
BBINT _openb3d_openb3dcore_TShader_UseFloat2_Svfvf(struct openb3d_openb3dcore_TShader_obj* o,BBSTRING bbt_name,BBFLOAT* bbt_v1,BBFLOAT* bbt_v2){
	((struct openb3d_openb3dcore_TShader_obj*)bbNullObjectTest((BBObject*)o));
	BBBYTE* bbt_cString=0;
	struct BBDebugScope_5 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"UseFloat2",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TShader",
				.var_address=&o
			},
			{
				BBDEBUGDECL_LOCAL,
				"name",
				"$",
				.var_address=&bbt_name
			},
			{
				BBDEBUGDECL_VARPARAM,
				"v1",
				"f",
				.var_address=&bbt_v1
			},
			{
				BBDEBUGDECL_VARPARAM,
				"v2",
				"f",
				.var_address=&bbt_v2
			},
			{
				BBDEBUGDECL_LOCAL,
				"cString",
				"*b",
				.var_address=&bbt_cString
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x44a35bd9cb25cae8, 399, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbt_cString=bbStringToCString((BBSTRING)bbt_name);
	struct BBDebugStm __stmt_1 = {0x44a35bd9cb25cae8, 400, 0};
	bbOnDebugEnterStm(&__stmt_1);
	UseFloat2_(o->clas->f_GetInstance_pb_TTShader((struct openb3d_openb3dcore_TShader_obj*)o),bbt_cString,&(*bbt_v1),&(*bbt_v2));
	struct BBDebugStm __stmt_2 = {0x44a35bd9cb25cae8, 401, 0};
	bbOnDebugEnterStm(&__stmt_2);
	bbMemFree((void*)bbt_cString);
	bbOnDebugLeaveScope();
	return 0;
}
BBINT _openb3d_openb3dcore_TShader_UseFloat3_Svfvfvf(struct openb3d_openb3dcore_TShader_obj* o,BBSTRING bbt_name,BBFLOAT* bbt_v1,BBFLOAT* bbt_v2,BBFLOAT* bbt_v3){
	((struct openb3d_openb3dcore_TShader_obj*)bbNullObjectTest((BBObject*)o));
	BBBYTE* bbt_cString=0;
	struct BBDebugScope_6 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"UseFloat3",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TShader",
				.var_address=&o
			},
			{
				BBDEBUGDECL_LOCAL,
				"name",
				"$",
				.var_address=&bbt_name
			},
			{
				BBDEBUGDECL_VARPARAM,
				"v1",
				"f",
				.var_address=&bbt_v1
			},
			{
				BBDEBUGDECL_VARPARAM,
				"v2",
				"f",
				.var_address=&bbt_v2
			},
			{
				BBDEBUGDECL_VARPARAM,
				"v3",
				"f",
				.var_address=&bbt_v3
			},
			{
				BBDEBUGDECL_LOCAL,
				"cString",
				"*b",
				.var_address=&bbt_cString
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x44a35bd9cb25cae8, 407, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbt_cString=bbStringToCString((BBSTRING)bbt_name);
	struct BBDebugStm __stmt_1 = {0x44a35bd9cb25cae8, 408, 0};
	bbOnDebugEnterStm(&__stmt_1);
	UseFloat3_(o->clas->f_GetInstance_pb_TTShader((struct openb3d_openb3dcore_TShader_obj*)o),bbt_cString,&(*bbt_v1),&(*bbt_v2),&(*bbt_v3));
	struct BBDebugStm __stmt_2 = {0x44a35bd9cb25cae8, 409, 0};
	bbOnDebugEnterStm(&__stmt_2);
	bbMemFree((void*)bbt_cString);
	bbOnDebugLeaveScope();
	return 0;
}
BBINT _openb3d_openb3dcore_TShader_UseFloat4_Svfvfvfvf(struct openb3d_openb3dcore_TShader_obj* o,BBSTRING bbt_name,BBFLOAT* bbt_v1,BBFLOAT* bbt_v2,BBFLOAT* bbt_v3,BBFLOAT* bbt_v4){
	((struct openb3d_openb3dcore_TShader_obj*)bbNullObjectTest((BBObject*)o));
	BBBYTE* bbt_cString=0;
	struct BBDebugScope_7 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"UseFloat4",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TShader",
				.var_address=&o
			},
			{
				BBDEBUGDECL_LOCAL,
				"name",
				"$",
				.var_address=&bbt_name
			},
			{
				BBDEBUGDECL_VARPARAM,
				"v1",
				"f",
				.var_address=&bbt_v1
			},
			{
				BBDEBUGDECL_VARPARAM,
				"v2",
				"f",
				.var_address=&bbt_v2
			},
			{
				BBDEBUGDECL_VARPARAM,
				"v3",
				"f",
				.var_address=&bbt_v3
			},
			{
				BBDEBUGDECL_VARPARAM,
				"v4",
				"f",
				.var_address=&bbt_v4
			},
			{
				BBDEBUGDECL_LOCAL,
				"cString",
				"*b",
				.var_address=&bbt_cString
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x44a35bd9cb25cae8, 415, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbt_cString=bbStringToCString((BBSTRING)bbt_name);
	struct BBDebugStm __stmt_1 = {0x44a35bd9cb25cae8, 416, 0};
	bbOnDebugEnterStm(&__stmt_1);
	UseFloat4_(o->clas->f_GetInstance_pb_TTShader((struct openb3d_openb3dcore_TShader_obj*)o),bbt_cString,&(*bbt_v1),&(*bbt_v2),&(*bbt_v3),&(*bbt_v4));
	struct BBDebugStm __stmt_2 = {0x44a35bd9cb25cae8, 417, 0};
	bbOnDebugEnterStm(&__stmt_2);
	bbMemFree((void*)bbt_cString);
	bbOnDebugLeaveScope();
	return 0;
}
BBINT _openb3d_openb3dcore_TShader_SetInteger_Si(struct openb3d_openb3dcore_TShader_obj* o,BBSTRING bbt_name,BBINT bbt_v1){
	((struct openb3d_openb3dcore_TShader_obj*)bbNullObjectTest((BBObject*)o));
	BBBYTE* bbt_cString=0;
	struct BBDebugScope_4 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"SetInteger",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TShader",
				.var_address=&o
			},
			{
				BBDEBUGDECL_LOCAL,
				"name",
				"$",
				.var_address=&bbt_name
			},
			{
				BBDEBUGDECL_LOCAL,
				"v1",
				"i",
				.var_address=&bbt_v1
			},
			{
				BBDEBUGDECL_LOCAL,
				"cString",
				"*b",
				.var_address=&bbt_cString
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x44a35bd9cb25cae8, 423, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbt_cString=bbStringToCString((BBSTRING)bbt_name);
	struct BBDebugStm __stmt_1 = {0x44a35bd9cb25cae8, 424, 0};
	bbOnDebugEnterStm(&__stmt_1);
	SetInteger_(o->clas->f_GetInstance_pb_TTShader((struct openb3d_openb3dcore_TShader_obj*)o),bbt_cString,bbt_v1);
	struct BBDebugStm __stmt_2 = {0x44a35bd9cb25cae8, 425, 0};
	bbOnDebugEnterStm(&__stmt_2);
	bbMemFree((void*)bbt_cString);
	bbOnDebugLeaveScope();
	return 0;
}
BBINT _openb3d_openb3dcore_TShader_SetInteger2_Sii(struct openb3d_openb3dcore_TShader_obj* o,BBSTRING bbt_name,BBINT bbt_v1,BBINT bbt_v2){
	((struct openb3d_openb3dcore_TShader_obj*)bbNullObjectTest((BBObject*)o));
	BBBYTE* bbt_cString=0;
	struct BBDebugScope_5 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"SetInteger2",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TShader",
				.var_address=&o
			},
			{
				BBDEBUGDECL_LOCAL,
				"name",
				"$",
				.var_address=&bbt_name
			},
			{
				BBDEBUGDECL_LOCAL,
				"v1",
				"i",
				.var_address=&bbt_v1
			},
			{
				BBDEBUGDECL_LOCAL,
				"v2",
				"i",
				.var_address=&bbt_v2
			},
			{
				BBDEBUGDECL_LOCAL,
				"cString",
				"*b",
				.var_address=&bbt_cString
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x44a35bd9cb25cae8, 431, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbt_cString=bbStringToCString((BBSTRING)bbt_name);
	struct BBDebugStm __stmt_1 = {0x44a35bd9cb25cae8, 432, 0};
	bbOnDebugEnterStm(&__stmt_1);
	SetInteger2_(o->clas->f_GetInstance_pb_TTShader((struct openb3d_openb3dcore_TShader_obj*)o),bbt_cString,bbt_v1,bbt_v2);
	struct BBDebugStm __stmt_2 = {0x44a35bd9cb25cae8, 433, 0};
	bbOnDebugEnterStm(&__stmt_2);
	bbMemFree((void*)bbt_cString);
	bbOnDebugLeaveScope();
	return 0;
}
BBINT _openb3d_openb3dcore_TShader_SetInteger3_Siii(struct openb3d_openb3dcore_TShader_obj* o,BBSTRING bbt_name,BBINT bbt_v1,BBINT bbt_v2,BBINT bbt_v3){
	((struct openb3d_openb3dcore_TShader_obj*)bbNullObjectTest((BBObject*)o));
	BBBYTE* bbt_cString=0;
	struct BBDebugScope_6 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"SetInteger3",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TShader",
				.var_address=&o
			},
			{
				BBDEBUGDECL_LOCAL,
				"name",
				"$",
				.var_address=&bbt_name
			},
			{
				BBDEBUGDECL_LOCAL,
				"v1",
				"i",
				.var_address=&bbt_v1
			},
			{
				BBDEBUGDECL_LOCAL,
				"v2",
				"i",
				.var_address=&bbt_v2
			},
			{
				BBDEBUGDECL_LOCAL,
				"v3",
				"i",
				.var_address=&bbt_v3
			},
			{
				BBDEBUGDECL_LOCAL,
				"cString",
				"*b",
				.var_address=&bbt_cString
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x44a35bd9cb25cae8, 439, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbt_cString=bbStringToCString((BBSTRING)bbt_name);
	struct BBDebugStm __stmt_1 = {0x44a35bd9cb25cae8, 440, 0};
	bbOnDebugEnterStm(&__stmt_1);
	SetInteger3_(o->clas->f_GetInstance_pb_TTShader((struct openb3d_openb3dcore_TShader_obj*)o),bbt_cString,bbt_v1,bbt_v2,bbt_v3);
	struct BBDebugStm __stmt_2 = {0x44a35bd9cb25cae8, 441, 0};
	bbOnDebugEnterStm(&__stmt_2);
	bbMemFree((void*)bbt_cString);
	bbOnDebugLeaveScope();
	return 0;
}
BBINT _openb3d_openb3dcore_TShader_SetInteger4_Siiii(struct openb3d_openb3dcore_TShader_obj* o,BBSTRING bbt_name,BBINT bbt_v1,BBINT bbt_v2,BBINT bbt_v3,BBINT bbt_v4){
	((struct openb3d_openb3dcore_TShader_obj*)bbNullObjectTest((BBObject*)o));
	BBBYTE* bbt_cString=0;
	struct BBDebugScope_7 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"SetInteger4",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TShader",
				.var_address=&o
			},
			{
				BBDEBUGDECL_LOCAL,
				"name",
				"$",
				.var_address=&bbt_name
			},
			{
				BBDEBUGDECL_LOCAL,
				"v1",
				"i",
				.var_address=&bbt_v1
			},
			{
				BBDEBUGDECL_LOCAL,
				"v2",
				"i",
				.var_address=&bbt_v2
			},
			{
				BBDEBUGDECL_LOCAL,
				"v3",
				"i",
				.var_address=&bbt_v3
			},
			{
				BBDEBUGDECL_LOCAL,
				"v4",
				"i",
				.var_address=&bbt_v4
			},
			{
				BBDEBUGDECL_LOCAL,
				"cString",
				"*b",
				.var_address=&bbt_cString
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x44a35bd9cb25cae8, 447, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbt_cString=bbStringToCString((BBSTRING)bbt_name);
	struct BBDebugStm __stmt_1 = {0x44a35bd9cb25cae8, 448, 0};
	bbOnDebugEnterStm(&__stmt_1);
	SetInteger4_(o->clas->f_GetInstance_pb_TTShader((struct openb3d_openb3dcore_TShader_obj*)o),bbt_cString,bbt_v1,bbt_v2,bbt_v3,bbt_v4);
	struct BBDebugStm __stmt_2 = {0x44a35bd9cb25cae8, 449, 0};
	bbOnDebugEnterStm(&__stmt_2);
	bbMemFree((void*)bbt_cString);
	bbOnDebugLeaveScope();
	return 0;
}
BBINT _openb3d_openb3dcore_TShader_UseInteger_Svi(struct openb3d_openb3dcore_TShader_obj* o,BBSTRING bbt_name,BBINT* bbt_v1){
	((struct openb3d_openb3dcore_TShader_obj*)bbNullObjectTest((BBObject*)o));
	BBBYTE* bbt_cString=0;
	struct BBDebugScope_4 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"UseInteger",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TShader",
				.var_address=&o
			},
			{
				BBDEBUGDECL_LOCAL,
				"name",
				"$",
				.var_address=&bbt_name
			},
			{
				BBDEBUGDECL_VARPARAM,
				"v1",
				"i",
				.var_address=&bbt_v1
			},
			{
				BBDEBUGDECL_LOCAL,
				"cString",
				"*b",
				.var_address=&bbt_cString
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x44a35bd9cb25cae8, 455, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbt_cString=bbStringToCString((BBSTRING)bbt_name);
	struct BBDebugStm __stmt_1 = {0x44a35bd9cb25cae8, 456, 0};
	bbOnDebugEnterStm(&__stmt_1);
	UseInteger_(o->clas->f_GetInstance_pb_TTShader((struct openb3d_openb3dcore_TShader_obj*)o),bbt_cString,&(*bbt_v1));
	struct BBDebugStm __stmt_2 = {0x44a35bd9cb25cae8, 457, 0};
	bbOnDebugEnterStm(&__stmt_2);
	bbMemFree((void*)bbt_cString);
	bbOnDebugLeaveScope();
	return 0;
}
BBINT _openb3d_openb3dcore_TShader_UseInteger2_Svivi(struct openb3d_openb3dcore_TShader_obj* o,BBSTRING bbt_name,BBINT* bbt_v1,BBINT* bbt_v2){
	((struct openb3d_openb3dcore_TShader_obj*)bbNullObjectTest((BBObject*)o));
	BBBYTE* bbt_cString=0;
	struct BBDebugScope_5 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"UseInteger2",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TShader",
				.var_address=&o
			},
			{
				BBDEBUGDECL_LOCAL,
				"name",
				"$",
				.var_address=&bbt_name
			},
			{
				BBDEBUGDECL_VARPARAM,
				"v1",
				"i",
				.var_address=&bbt_v1
			},
			{
				BBDEBUGDECL_VARPARAM,
				"v2",
				"i",
				.var_address=&bbt_v2
			},
			{
				BBDEBUGDECL_LOCAL,
				"cString",
				"*b",
				.var_address=&bbt_cString
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x44a35bd9cb25cae8, 463, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbt_cString=bbStringToCString((BBSTRING)bbt_name);
	struct BBDebugStm __stmt_1 = {0x44a35bd9cb25cae8, 464, 0};
	bbOnDebugEnterStm(&__stmt_1);
	UseInteger2_(o->clas->f_GetInstance_pb_TTShader((struct openb3d_openb3dcore_TShader_obj*)o),bbt_cString,&(*bbt_v1),&(*bbt_v2));
	struct BBDebugStm __stmt_2 = {0x44a35bd9cb25cae8, 465, 0};
	bbOnDebugEnterStm(&__stmt_2);
	bbMemFree((void*)bbt_cString);
	bbOnDebugLeaveScope();
	return 0;
}
BBINT _openb3d_openb3dcore_TShader_UseInteger3_Svivivi(struct openb3d_openb3dcore_TShader_obj* o,BBSTRING bbt_name,BBINT* bbt_v1,BBINT* bbt_v2,BBINT* bbt_v3){
	((struct openb3d_openb3dcore_TShader_obj*)bbNullObjectTest((BBObject*)o));
	BBBYTE* bbt_cString=0;
	struct BBDebugScope_6 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"UseInteger3",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TShader",
				.var_address=&o
			},
			{
				BBDEBUGDECL_LOCAL,
				"name",
				"$",
				.var_address=&bbt_name
			},
			{
				BBDEBUGDECL_VARPARAM,
				"v1",
				"i",
				.var_address=&bbt_v1
			},
			{
				BBDEBUGDECL_VARPARAM,
				"v2",
				"i",
				.var_address=&bbt_v2
			},
			{
				BBDEBUGDECL_VARPARAM,
				"v3",
				"i",
				.var_address=&bbt_v3
			},
			{
				BBDEBUGDECL_LOCAL,
				"cString",
				"*b",
				.var_address=&bbt_cString
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x44a35bd9cb25cae8, 471, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbt_cString=bbStringToCString((BBSTRING)bbt_name);
	struct BBDebugStm __stmt_1 = {0x44a35bd9cb25cae8, 472, 0};
	bbOnDebugEnterStm(&__stmt_1);
	UseInteger3_(o->clas->f_GetInstance_pb_TTShader((struct openb3d_openb3dcore_TShader_obj*)o),bbt_cString,&(*bbt_v1),&(*bbt_v2),&(*bbt_v3));
	struct BBDebugStm __stmt_2 = {0x44a35bd9cb25cae8, 473, 0};
	bbOnDebugEnterStm(&__stmt_2);
	bbMemFree((void*)bbt_cString);
	bbOnDebugLeaveScope();
	return 0;
}
BBINT _openb3d_openb3dcore_TShader_UseInteger4_Svivivivi(struct openb3d_openb3dcore_TShader_obj* o,BBSTRING bbt_name,BBINT* bbt_v1,BBINT* bbt_v2,BBINT* bbt_v3,BBINT* bbt_v4){
	((struct openb3d_openb3dcore_TShader_obj*)bbNullObjectTest((BBObject*)o));
	BBBYTE* bbt_cString=0;
	struct BBDebugScope_7 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"UseInteger4",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TShader",
				.var_address=&o
			},
			{
				BBDEBUGDECL_LOCAL,
				"name",
				"$",
				.var_address=&bbt_name
			},
			{
				BBDEBUGDECL_VARPARAM,
				"v1",
				"i",
				.var_address=&bbt_v1
			},
			{
				BBDEBUGDECL_VARPARAM,
				"v2",
				"i",
				.var_address=&bbt_v2
			},
			{
				BBDEBUGDECL_VARPARAM,
				"v3",
				"i",
				.var_address=&bbt_v3
			},
			{
				BBDEBUGDECL_VARPARAM,
				"v4",
				"i",
				.var_address=&bbt_v4
			},
			{
				BBDEBUGDECL_LOCAL,
				"cString",
				"*b",
				.var_address=&bbt_cString
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x44a35bd9cb25cae8, 479, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbt_cString=bbStringToCString((BBSTRING)bbt_name);
	struct BBDebugStm __stmt_1 = {0x44a35bd9cb25cae8, 480, 0};
	bbOnDebugEnterStm(&__stmt_1);
	UseInteger4_(o->clas->f_GetInstance_pb_TTShader((struct openb3d_openb3dcore_TShader_obj*)o),bbt_cString,&(*bbt_v1),&(*bbt_v2),&(*bbt_v3),&(*bbt_v4));
	struct BBDebugStm __stmt_2 = {0x44a35bd9cb25cae8, 481, 0};
	bbOnDebugEnterStm(&__stmt_2);
	bbMemFree((void*)bbt_cString);
	bbOnDebugLeaveScope();
	return 0;
}
BBINT _openb3d_openb3dcore_TShader_UseSurface_STTSurfacei(struct openb3d_openb3dcore_TShader_obj* o,BBSTRING bbt_name,struct openb3d_openb3dcore_TSurface_obj* bbt_surf,BBINT bbt_vbo){
	((struct openb3d_openb3dcore_TShader_obj*)bbNullObjectTest((BBObject*)o));
	BBBYTE* bbt_cString=0;
	struct BBDebugScope_5 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"UseSurface",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TShader",
				.var_address=&o
			},
			{
				BBDEBUGDECL_LOCAL,
				"name",
				"$",
				.var_address=&bbt_name
			},
			{
				BBDEBUGDECL_LOCAL,
				"surf",
				":TSurface",
				.var_address=&bbt_surf
			},
			{
				BBDEBUGDECL_LOCAL,
				"vbo",
				"i",
				.var_address=&bbt_vbo
			},
			{
				BBDEBUGDECL_LOCAL,
				"cString",
				"*b",
				.var_address=&bbt_cString
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x44a35bd9cb25cae8, 487, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbt_cString=bbStringToCString((BBSTRING)bbt_name);
	struct BBDebugStm __stmt_1 = {0x44a35bd9cb25cae8, 488, 0};
	bbOnDebugEnterStm(&__stmt_1);
	UseSurface_(o->clas->f_GetInstance_pb_TTShader((struct openb3d_openb3dcore_TShader_obj*)o),bbt_cString,openb3d_openb3dcore_TSurface_GetInstance_pb_TTSurface((struct openb3d_openb3dcore_TSurface_obj*)bbt_surf),bbt_vbo);
	struct BBDebugStm __stmt_2 = {0x44a35bd9cb25cae8, 489, 0};
	bbOnDebugEnterStm(&__stmt_2);
	bbMemFree((void*)bbt_cString);
	bbOnDebugLeaveScope();
	return 0;
}
BBINT _openb3d_openb3dcore_TShader_UseMatrix_Si(struct openb3d_openb3dcore_TShader_obj* o,BBSTRING bbt_name,BBINT bbt_Mode){
	((struct openb3d_openb3dcore_TShader_obj*)bbNullObjectTest((BBObject*)o));
	BBBYTE* bbt_cString=0;
	struct BBDebugScope_4 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"UseMatrix",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TShader",
				.var_address=&o
			},
			{
				BBDEBUGDECL_LOCAL,
				"name",
				"$",
				.var_address=&bbt_name
			},
			{
				BBDEBUGDECL_LOCAL,
				"Mode",
				"i",
				.var_address=&bbt_Mode
			},
			{
				BBDEBUGDECL_LOCAL,
				"cString",
				"*b",
				.var_address=&bbt_cString
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x44a35bd9cb25cae8, 495, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbt_cString=bbStringToCString((BBSTRING)bbt_name);
	struct BBDebugStm __stmt_1 = {0x44a35bd9cb25cae8, 496, 0};
	bbOnDebugEnterStm(&__stmt_1);
	UseMatrix_(o->clas->f_GetInstance_pb_TTShader((struct openb3d_openb3dcore_TShader_obj*)o),bbt_cString,bbt_Mode);
	struct BBDebugStm __stmt_2 = {0x44a35bd9cb25cae8, 497, 0};
	bbOnDebugEnterStm(&__stmt_2);
	bbMemFree((void*)bbt_cString);
	bbOnDebugLeaveScope();
	return 0;
}
BBINT _openb3d_openb3dcore_TShader_ShaderMaterial_TTMaterialSi(struct openb3d_openb3dcore_TShader_obj* o,struct openb3d_openb3dcore_TMaterial_obj* bbt_tex,BBSTRING bbt_name,BBINT bbt_index){
	((struct openb3d_openb3dcore_TShader_obj*)bbNullObjectTest((BBObject*)o));
	BBBYTE* bbt_cString=0;
	struct BBDebugScope_5 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"ShaderMaterial",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TShader",
				.var_address=&o
			},
			{
				BBDEBUGDECL_LOCAL,
				"tex",
				":TMaterial",
				.var_address=&bbt_tex
			},
			{
				BBDEBUGDECL_LOCAL,
				"name",
				"$",
				.var_address=&bbt_name
			},
			{
				BBDEBUGDECL_LOCAL,
				"index",
				"i",
				.var_address=&bbt_index
			},
			{
				BBDEBUGDECL_LOCAL,
				"cString",
				"*b",
				.var_address=&bbt_cString
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x44a35bd9cb25cae8, 503, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbt_cString=bbStringToCString((BBSTRING)bbt_name);
	struct BBDebugStm __stmt_1 = {0x44a35bd9cb25cae8, 504, 0};
	bbOnDebugEnterStm(&__stmt_1);
	ShaderMaterial_(o->clas->f_GetInstance_pb_TTShader((struct openb3d_openb3dcore_TShader_obj*)o),openb3d_openb3dcore_TTexture_GetInstance_pb_TTTexture((struct openb3d_openb3dcore_TTexture_obj*)((struct openb3d_openb3dcore_TTexture_obj*)bbObjectDowncast((BBOBJECT)bbt_tex,(BBClass*)&openb3d_openb3dcore_TTexture))),bbt_cString,bbt_index);
	struct BBDebugStm __stmt_2 = {0x44a35bd9cb25cae8, 505, 0};
	bbOnDebugEnterStm(&__stmt_2);
	bbMemFree((void*)bbt_cString);
	bbOnDebugLeaveScope();
	return 0;
}
BBINT _openb3d_openb3dcore_TShader_AmbientShader(struct openb3d_openb3dcore_TShader_obj* o){
	((struct openb3d_openb3dcore_TShader_obj*)bbNullObjectTest((BBObject*)o));
	BBBYTE* bbt_inst=0;
	struct BBDebugScope_2 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"AmbientShader",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TShader",
				.var_address=&o
			},
			{
				BBDEBUGDECL_LOCAL,
				"inst",
				"*b",
				.var_address=&bbt_inst
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x44a35bd9cb25cae8, 511, 0};
	bbOnDebugEnterStm(&__stmt_0);
	AmbientShader_(o->clas->f_GetInstance_pb_TTShader((struct openb3d_openb3dcore_TShader_obj*)o));
	struct BBDebugStm __stmt_1 = {0x44a35bd9cb25cae8, 512, 0};
	bbOnDebugEnterStm(&__stmt_1);
	bbt_inst=StaticShader_(21,9);
	struct BBDebugStm __stmt_2 = {0x44a35bd9cb25cae8, 513, 0};
	bbOnDebugEnterStm(&__stmt_2);
	openb3d_openb3dcore_TGlobal3D_ambient_shader=(struct openb3d_openb3dcore_TShader_obj*)o->clas->f_GetObject_TTShader_pb(bbt_inst);
	struct BBDebugStm __stmt_3 = {0x44a35bd9cb25cae8, 514, 0};
	bbOnDebugEnterStm(&__stmt_3);
	if((((BBOBJECT)openb3d_openb3dcore_TGlobal3D_ambient_shader)==&bbNullObject) && (bbt_inst!=0)){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x44a35bd9cb25cae8, 514, 0};
		bbOnDebugEnterStm(&__stmt_0);
		openb3d_openb3dcore_TGlobal3D_ambient_shader=(struct openb3d_openb3dcore_TShader_obj*)o->clas->f_CreateObject_TTShader_pb(bbt_inst);
		bbOnDebugLeaveScope();
	}
	bbOnDebugLeaveScope();
	return 0;
}
BBINT _openb3d_openb3dcore_TShader_UseEntity_STTEntityi(struct openb3d_openb3dcore_TShader_obj* o,BBSTRING bbt_name,struct openb3d_openb3dcore_TEntity_obj* bbt_ent,BBINT bbt_mode){
	((struct openb3d_openb3dcore_TShader_obj*)bbNullObjectTest((BBObject*)o));
	BBBYTE* bbt_cString=0;
	struct BBDebugScope_5 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"UseEntity",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TShader",
				.var_address=&o
			},
			{
				BBDEBUGDECL_LOCAL,
				"name",
				"$",
				.var_address=&bbt_name
			},
			{
				BBDEBUGDECL_LOCAL,
				"ent",
				":TEntity",
				.var_address=&bbt_ent
			},
			{
				BBDEBUGDECL_LOCAL,
				"mode",
				"i",
				.var_address=&bbt_mode
			},
			{
				BBDEBUGDECL_LOCAL,
				"cString",
				"*b",
				.var_address=&bbt_cString
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x44a35bd9cb25cae8, 520, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbt_cString=bbStringToCString((BBSTRING)bbt_name);
	struct BBDebugStm __stmt_1 = {0x44a35bd9cb25cae8, 521, 0};
	bbOnDebugEnterStm(&__stmt_1);
	UseEntity_(o->clas->f_GetInstance_pb_TTShader((struct openb3d_openb3dcore_TShader_obj*)o),bbt_cString,openb3d_openb3dcore_TEntity_GetInstance_pb_TTEntity((struct openb3d_openb3dcore_TEntity_obj*)bbt_ent),bbt_mode);
	struct BBDebugStm __stmt_2 = {0x44a35bd9cb25cae8, 522, 0};
	bbOnDebugEnterStm(&__stmt_2);
	bbMemFree((void*)bbt_cString);
	bbOnDebugLeaveScope();
	return 0;
}
BBINT _openb3d_openb3dcore_TShader_ShaderFunction_F_i_F_i_(struct openb3d_openb3dcore_TShader_obj* o,BBINT(* bbt_EnableFunction)(),BBINT(* bbt_DisableFunction)()){
	((struct openb3d_openb3dcore_TShader_obj*)bbNullObjectTest((BBObject*)o));
	struct BBDebugScope_3 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"ShaderFunction",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TShader",
				.var_address=&o
			},
			{
				BBDEBUGDECL_LOCAL,
				"EnableFunction",
				"()i",
				.var_address=&bbt_EnableFunction
			},
			{
				BBDEBUGDECL_LOCAL,
				"DisableFunction",
				"()i",
				.var_address=&bbt_DisableFunction
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x44a35bd9cb25cae8, 528, 0};
	bbOnDebugEnterStm(&__stmt_0);
	ShaderFunction_(o->clas->f_GetInstance_pb_TTShader((struct openb3d_openb3dcore_TShader_obj*)o),bbt_EnableFunction,bbt_DisableFunction);
	bbOnDebugLeaveScope();
	return 0;
}
BBINT _openb3d_openb3dcore_TShader_GetShaderProgram(struct openb3d_openb3dcore_TShader_obj* o){
	((struct openb3d_openb3dcore_TShader_obj*)bbNullObjectTest((BBObject*)o));
	struct BBDebugScope_1 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"GetShaderProgram",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TShader",
				.var_address=&o
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x44a35bd9cb25cae8, 534, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbOnDebugLeaveScope();
	return GetShaderProgram_(o->clas->f_GetInstance_pb_TTShader((struct openb3d_openb3dcore_TShader_obj*)o));
}
struct brl_map_ptrmap_TPtrMap_obj* openb3d_openb3dcore_TShader_shader_map;
struct BBDebugScope_43 openb3d_openb3dcore_TShader_scope ={
	BBDEBUGSCOPE_USERTYPE,
	"TShader",
	{
		{
			BBDEBUGDECL_FIELD,
			"instance",
			"*b",
			.field_offset=offsetof(struct openb3d_openb3dcore_TShader_obj,_openb3d_openb3dcore_tshader_instance)
		},
		{
			BBDEBUGDECL_FIELD,
			"exists",
			"i",
			.field_offset=offsetof(struct openb3d_openb3dcore_TShader_obj,_openb3d_openb3dcore_tshader_exists)
		},
		{
			BBDEBUGDECL_GLOBAL,
			"shader_map",
			":TPtrMap",
			.var_address=(void*)&openb3d_openb3dcore_TShader_shader_map
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"New",
			"()i",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_TShader_New
		},
		{
			BBDEBUGDECL_TYPEFUNCTION,
			"CreateObject",
			"(*b):TShader",
			.func_ptr=(BBFuncPtr)&openb3d_openb3dcore_TShader_CreateObject_TTShader_pb
		},
		{
			BBDEBUGDECL_TYPEFUNCTION,
			"FreeObject",
			"(*b)i",
			.func_ptr=(BBFuncPtr)&openb3d_openb3dcore_TShader_FreeObject_i_pb
		},
		{
			BBDEBUGDECL_TYPEFUNCTION,
			"GetObject",
			"(*b):TShader",
			.func_ptr=(BBFuncPtr)&openb3d_openb3dcore_TShader_GetObject_TTShader_pb
		},
		{
			BBDEBUGDECL_TYPEFUNCTION,
			"GetInstance",
			"(:TShader)*b",
			.func_ptr=(BBFuncPtr)&openb3d_openb3dcore_TShader_GetInstance_pb_TTShader
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"InitFields",
			"()i",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_TShader_InitFields
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"FreeShader",
			"()i",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_TShader_FreeShader
		},
		{
			BBDEBUGDECL_TYPEFUNCTION,
			"CreateShaderMaterial",
			"($):TShader",
			.func_ptr=(BBFuncPtr)&openb3d_openb3dcore_TShader_CreateShaderMaterial_TTShader_S
		},
		{
			BBDEBUGDECL_TYPEFUNCTION,
			"LoadShader",
			"($,$,$):TShader",
			.func_ptr=(BBFuncPtr)&openb3d_openb3dcore_TShader_LoadShader_TTShader_SSS
		},
		{
			BBDEBUGDECL_TYPEFUNCTION,
			"CreateShader",
			"($,$,$):TShader",
			.func_ptr=(BBFuncPtr)&openb3d_openb3dcore_TShader_CreateShader_TTShader_SSS
		},
		{
			BBDEBUGDECL_TYPEFUNCTION,
			"LoadShaderVGF",
			"($,$,$,$):TShader",
			.func_ptr=(BBFuncPtr)&openb3d_openb3dcore_TShader_LoadShaderVGF_TTShader_SSSS
		},
		{
			BBDEBUGDECL_TYPEFUNCTION,
			"CreateShaderVGF",
			"($,$,$,$):TShader",
			.func_ptr=(BBFuncPtr)&openb3d_openb3dcore_TShader_CreateShaderVGF_TTShader_SSSS
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"LinkShader",
			"()i",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_TShader_LinkShader
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"ShadeSurface",
			"(:TSurface)i",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_TShader_ShadeSurface_TTSurface
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"ShadeMesh",
			"(:TMesh)i",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_TShader_ShadeMesh_TTMesh
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"ShadeEntity",
			"(:TEntity)i",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_TShader_ShadeEntity_TTEntity
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"ShaderTexture",
			"(:TTexture,$,i):TTexture",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_TShader_ShaderTexture_TTTextureSi
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"SetFloat",
			"($,f)i",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_TShader_SetFloat_Sf
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"SetFloat2",
			"($,f,f)i",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_TShader_SetFloat2_Sff
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"SetFloat3",
			"($,f,f,f)i",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_TShader_SetFloat3_Sfff
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"SetFloat4",
			"($,f,f,f,f)i",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_TShader_SetFloat4_Sffff
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"UseFloat",
			"($,f)i",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_TShader_UseFloat_Svf
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"UseFloat2",
			"($,f,f)i",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_TShader_UseFloat2_Svfvf
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"UseFloat3",
			"($,f,f,f)i",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_TShader_UseFloat3_Svfvfvf
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"UseFloat4",
			"($,f,f,f,f)i",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_TShader_UseFloat4_Svfvfvfvf
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"SetInteger",
			"($,i)i",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_TShader_SetInteger_Si
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"SetInteger2",
			"($,i,i)i",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_TShader_SetInteger2_Sii
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"SetInteger3",
			"($,i,i,i)i",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_TShader_SetInteger3_Siii
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"SetInteger4",
			"($,i,i,i,i)i",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_TShader_SetInteger4_Siiii
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"UseInteger",
			"($,i)i",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_TShader_UseInteger_Svi
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"UseInteger2",
			"($,i,i)i",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_TShader_UseInteger2_Svivi
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"UseInteger3",
			"($,i,i,i)i",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_TShader_UseInteger3_Svivivi
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"UseInteger4",
			"($,i,i,i,i)i",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_TShader_UseInteger4_Svivivivi
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"UseSurface",
			"($,:TSurface,i)i",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_TShader_UseSurface_STTSurfacei
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"UseMatrix",
			"($,i)i",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_TShader_UseMatrix_Si
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"ShaderMaterial",
			"(:TMaterial,$,i)i",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_TShader_ShaderMaterial_TTMaterialSi
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"AmbientShader",
			"()i",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_TShader_AmbientShader
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"UseEntity",
			"($,:TEntity,i)i",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_TShader_UseEntity_STTEntityi
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"ShaderFunction",
			"(()i,()i)i",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_TShader_ShaderFunction_F_i_F_i_
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"GetShaderProgram",
			"()i",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_TShader_GetShaderProgram
		},
		{
			BBDEBUGDECL_END
		}
	}
};
struct BBClass_openb3d_openb3dcore_TShader openb3d_openb3dcore_TShader={
	&bbObjectClass,
	bbObjectFree,
	(BBDebugScope*)&openb3d_openb3dcore_TShader_scope,
	sizeof(struct openb3d_openb3dcore_TShader_obj),
	(void (*)(BBOBJECT))_openb3d_openb3dcore_TShader_New,
	bbObjectDtor,
	bbObjectToString,
	bbObjectCompare,
	bbObjectSendMessage,
	0,
	0,
	offsetof(struct openb3d_openb3dcore_TShader_obj,_openb3d_openb3dcore_tshader_exists) - offsetof(struct openb3d_openb3dcore_TShader_obj,_openb3d_openb3dcore_tshader_instance) + sizeof(BBINT)
	,0
	,offsetof(struct openb3d_openb3dcore_TShader_obj,_openb3d_openb3dcore_tshader_instance)
	,openb3d_openb3dcore_TShader_CreateObject_TTShader_pb
	,openb3d_openb3dcore_TShader_FreeObject_i_pb
	,openb3d_openb3dcore_TShader_GetObject_TTShader_pb
	,openb3d_openb3dcore_TShader_GetInstance_pb_TTShader
	,_openb3d_openb3dcore_TShader_InitFields
	,_openb3d_openb3dcore_TShader_FreeShader
	,openb3d_openb3dcore_TShader_CreateShaderMaterial_TTShader_S
	,openb3d_openb3dcore_TShader_LoadShader_TTShader_SSS
	,openb3d_openb3dcore_TShader_CreateShader_TTShader_SSS
	,openb3d_openb3dcore_TShader_LoadShaderVGF_TTShader_SSSS
	,openb3d_openb3dcore_TShader_CreateShaderVGF_TTShader_SSSS
	,_openb3d_openb3dcore_TShader_LinkShader
	,_openb3d_openb3dcore_TShader_ShadeSurface_TTSurface
	,_openb3d_openb3dcore_TShader_ShadeMesh_TTMesh
	,_openb3d_openb3dcore_TShader_ShadeEntity_TTEntity
	,_openb3d_openb3dcore_TShader_ShaderTexture_TTTextureSi
	,_openb3d_openb3dcore_TShader_SetFloat_Sf
	,_openb3d_openb3dcore_TShader_SetFloat2_Sff
	,_openb3d_openb3dcore_TShader_SetFloat3_Sfff
	,_openb3d_openb3dcore_TShader_SetFloat4_Sffff
	,_openb3d_openb3dcore_TShader_UseFloat_Svf
	,_openb3d_openb3dcore_TShader_UseFloat2_Svfvf
	,_openb3d_openb3dcore_TShader_UseFloat3_Svfvfvf
	,_openb3d_openb3dcore_TShader_UseFloat4_Svfvfvfvf
	,_openb3d_openb3dcore_TShader_SetInteger_Si
	,_openb3d_openb3dcore_TShader_SetInteger2_Sii
	,_openb3d_openb3dcore_TShader_SetInteger3_Siii
	,_openb3d_openb3dcore_TShader_SetInteger4_Siiii
	,_openb3d_openb3dcore_TShader_UseInteger_Svi
	,_openb3d_openb3dcore_TShader_UseInteger2_Svivi
	,_openb3d_openb3dcore_TShader_UseInteger3_Svivivi
	,_openb3d_openb3dcore_TShader_UseInteger4_Svivivivi
	,_openb3d_openb3dcore_TShader_UseSurface_STTSurfacei
	,_openb3d_openb3dcore_TShader_UseMatrix_Si
	,_openb3d_openb3dcore_TShader_ShaderMaterial_TTMaterialSi
	,_openb3d_openb3dcore_TShader_AmbientShader
	,_openb3d_openb3dcore_TShader_UseEntity_STTEntityi
	,_openb3d_openb3dcore_TShader_ShaderFunction_F_i_F_i_
	,_openb3d_openb3dcore_TShader_GetShaderProgram
};

void _openb3d_openb3dcore_TShadowObject_New(struct openb3d_openb3dcore_TShadowObject_obj* o) {
	bbObjectCtor((BBOBJECT)o);
	o->clas = &openb3d_openb3dcore_TShadowObject;
	((struct openb3d_openb3dcore_TShadowObject_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tshadowobject_parent = (struct openb3d_openb3dcore_TMesh_obj*)((struct openb3d_openb3dcore_TMesh_obj*)&bbNullObject);
	((struct openb3d_openb3dcore_TShadowObject_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tshadowobject_cnt_tris = 0;
	((struct openb3d_openb3dcore_TShadowObject_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tshadowobject_shadowmesh = (struct openb3d_openb3dcore_TMesh_obj*)((struct openb3d_openb3dcore_TMesh_obj*)&bbNullObject);
	((struct openb3d_openb3dcore_TShadowObject_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tshadowobject_shadowvolume = (struct openb3d_openb3dcore_TSurface_obj*)((struct openb3d_openb3dcore_TSurface_obj*)&bbNullObject);
	((struct openb3d_openb3dcore_TShadowObject_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tshadowobject_render = 0;
	((struct openb3d_openb3dcore_TShadowObject_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tshadowobject_static = 0;
	((struct openb3d_openb3dcore_TShadowObject_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tshadowobject_vcreated = 0;
	((struct openb3d_openb3dcore_TShadowObject_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tshadowobject_instance = 0;
	((struct openb3d_openb3dcore_TShadowObject_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tshadowobject_exists = 0;
}
struct openb3d_openb3dcore_TShadowObject_obj* openb3d_openb3dcore_TShadowObject_CreateObject_TTShadowObject_pb(BBBYTE* bbt_inst){
	struct openb3d_openb3dcore_TShadowObject_obj* bbt_obj=(struct openb3d_openb3dcore_TShadowObject_obj*)((struct openb3d_openb3dcore_TShadowObject_obj*)&bbNullObject);
	struct BBDebugScope_2 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"CreateObject",
		{
			{
				BBDEBUGDECL_LOCAL,
				"inst",
				"*b",
				.var_address=&bbt_inst
			},
			{
				BBDEBUGDECL_LOCAL,
				"obj",
				":TShadowObject",
				.var_address=&bbt_obj
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x74c8b03f76ff8894, 50, 0};
	bbOnDebugEnterStm(&__stmt_0);
	if(bbt_inst==0){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x74c8b03f76ff8894, 50, 0};
		bbOnDebugEnterStm(&__stmt_0);
		bbOnDebugLeaveScope();
		bbOnDebugLeaveScope();
		return (struct openb3d_openb3dcore_TShadowObject_obj*)&bbNullObject;
	}
	struct BBDebugStm __stmt_1 = {0x74c8b03f76ff8894, 51, 0};
	bbOnDebugEnterStm(&__stmt_1);
	bbt_obj=(struct openb3d_openb3dcore_TShadowObject_obj*)(struct openb3d_openb3dcore_TShadowObject_obj*)bbObjectNew((BBClass *)&openb3d_openb3dcore_TShadowObject);
	struct BBDebugStm __stmt_2 = {0x74c8b03f76ff8894, 53, 0};
	bbOnDebugEnterStm(&__stmt_2);
	((struct brl_map_ptrmap_TPtrMap_obj*)bbNullObjectTest((BBObject*)openb3d_openb3dcore_TShadowObject_shad_map))->clas->m_Insert_pbTObject((struct brl_map_ptrmap_TPtrMap_obj*)openb3d_openb3dcore_TShadowObject_shad_map,bbt_inst,(BBOBJECT)bbt_obj);
	struct BBDebugStm __stmt_3 = {0x74c8b03f76ff8894, 57, 0};
	bbOnDebugEnterStm(&__stmt_3);
	((struct openb3d_openb3dcore_TShadowObject_obj*)bbNullObjectTest((BBObject*)bbt_obj))->_openb3d_openb3dcore_tshadowobject_instance =bbt_inst;
	struct BBDebugStm __stmt_4 = {0x74c8b03f76ff8894, 58, 0};
	bbOnDebugEnterStm(&__stmt_4);
	((struct openb3d_openb3dcore_TShadowObject_obj*)bbNullObjectTest((BBObject*)bbt_obj))->clas->m_InitFields((struct openb3d_openb3dcore_TShadowObject_obj*)bbt_obj);
	struct BBDebugStm __stmt_5 = {0x74c8b03f76ff8894, 59, 0};
	bbOnDebugEnterStm(&__stmt_5);
	bbOnDebugLeaveScope();
	return (struct openb3d_openb3dcore_TShadowObject_obj*)bbt_obj;
}
BBINT openb3d_openb3dcore_TShadowObject_FreeObject_i_pb(BBBYTE* bbt_inst){
	struct BBDebugScope_1 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"FreeObject",
		{
			{
				BBDEBUGDECL_LOCAL,
				"inst",
				"*b",
				.var_address=&bbt_inst
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x74c8b03f76ff8894, 66, 0};
	bbOnDebugEnterStm(&__stmt_0);
	((struct brl_map_ptrmap_TPtrMap_obj*)bbNullObjectTest((BBObject*)openb3d_openb3dcore_TShadowObject_shad_map))->clas->m_Remove_pb((struct brl_map_ptrmap_TPtrMap_obj*)openb3d_openb3dcore_TShadowObject_shad_map,bbt_inst);
	bbOnDebugLeaveScope();
	return 0;
}
struct openb3d_openb3dcore_TShadowObject_obj* openb3d_openb3dcore_TShadowObject_GetObject_TTShadowObject_pb(BBBYTE* bbt_inst){
	struct BBDebugScope_1 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"GetObject",
		{
			{
				BBDEBUGDECL_LOCAL,
				"inst",
				"*b",
				.var_address=&bbt_inst
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x74c8b03f76ff8894, 76, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbOnDebugLeaveScope();
	return (struct openb3d_openb3dcore_TShadowObject_obj*)((struct openb3d_openb3dcore_TShadowObject_obj*)bbObjectDowncast((BBOBJECT)((struct brl_map_ptrmap_TPtrMap_obj*)bbNullObjectTest((BBObject*)openb3d_openb3dcore_TShadowObject_shad_map))->clas->m_ValueForKey_pb((struct brl_map_ptrmap_TPtrMap_obj*)openb3d_openb3dcore_TShadowObject_shad_map,bbt_inst),(BBClass*)&openb3d_openb3dcore_TShadowObject));
}
BBBYTE* openb3d_openb3dcore_TShadowObject_GetInstance_pb_TTShadowObject(struct openb3d_openb3dcore_TShadowObject_obj* bbt_obj){
	struct BBDebugScope_1 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"GetInstance",
		{
			{
				BBDEBUGDECL_LOCAL,
				"obj",
				":TShadowObject",
				.var_address=&bbt_obj
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x74c8b03f76ff8894, 85, 0};
	bbOnDebugEnterStm(&__stmt_0);
	if(((BBOBJECT)bbt_obj)==&bbNullObject){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x74c8b03f76ff8894, 85, 0};
		bbOnDebugEnterStm(&__stmt_0);
		bbOnDebugLeaveScope();
		bbOnDebugLeaveScope();
		return 0;
	}
	struct BBDebugStm __stmt_1 = {0x74c8b03f76ff8894, 86, 0};
	bbOnDebugEnterStm(&__stmt_1);
	bbOnDebugLeaveScope();
	return ((struct openb3d_openb3dcore_TShadowObject_obj*)bbNullObjectTest((BBObject*)bbt_obj))->_openb3d_openb3dcore_tshadowobject_instance ;
}
BBINT openb3d_openb3dcore_TShadowObject_InitGlobals_i(){
	struct BBDebugScope __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"InitGlobals",
		{
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x74c8b03f76ff8894, 93, 0};
	bbOnDebugEnterStm(&__stmt_0);
	openb3d_openb3dcore_TShadowObject_top_caps=StaticChar_(46,10);
	struct BBDebugStm __stmt_1 = {0x74c8b03f76ff8894, 96, 0};
	bbOnDebugEnterStm(&__stmt_1);
	openb3d_openb3dcore_TShadowObject_parallel=StaticInt_(46,11);
	struct BBDebugStm __stmt_2 = {0x74c8b03f76ff8894, 97, 0};
	bbOnDebugEnterStm(&__stmt_2);
	openb3d_openb3dcore_TShadowObject_midStencilVal=StaticInt_(46,15);
	struct BBDebugStm __stmt_3 = {0x74c8b03f76ff8894, 100, 0};
	bbOnDebugEnterStm(&__stmt_3);
	openb3d_openb3dcore_TShadowObject_VolumeLength=StaticFloat_(46,9);
	struct BBDebugStm __stmt_4 = {0x74c8b03f76ff8894, 101, 0};
	bbOnDebugEnterStm(&__stmt_4);
	openb3d_openb3dcore_TShadowObject_light_x=StaticFloat_(46,12);
	struct BBDebugStm __stmt_5 = {0x74c8b03f76ff8894, 102, 0};
	bbOnDebugEnterStm(&__stmt_5);
	openb3d_openb3dcore_TShadowObject_light_y=StaticFloat_(46,13);
	struct BBDebugStm __stmt_6 = {0x74c8b03f76ff8894, 103, 0};
	bbOnDebugEnterStm(&__stmt_6);
	openb3d_openb3dcore_TShadowObject_light_z=StaticFloat_(46,14);
	struct BBDebugStm __stmt_7 = {0x74c8b03f76ff8894, 104, 0};
	bbOnDebugEnterStm(&__stmt_7);
	openb3d_openb3dcore_TShadowObject_ShadowRed=StaticFloat_(46,16);
	struct BBDebugStm __stmt_8 = {0x74c8b03f76ff8894, 105, 0};
	bbOnDebugEnterStm(&__stmt_8);
	openb3d_openb3dcore_TShadowObject_ShadowGreen=StaticFloat_(46,17);
	struct BBDebugStm __stmt_9 = {0x74c8b03f76ff8894, 106, 0};
	bbOnDebugEnterStm(&__stmt_9);
	openb3d_openb3dcore_TShadowObject_ShadowBlue=StaticFloat_(46,18);
	struct BBDebugStm __stmt_10 = {0x74c8b03f76ff8894, 107, 0};
	bbOnDebugEnterStm(&__stmt_10);
	openb3d_openb3dcore_TShadowObject_ShadowAlpha=StaticFloat_(46,19);
	bbOnDebugLeaveScope();
	return 0;
}
BBINT _openb3d_openb3dcore_TShadowObject_InitFields(struct openb3d_openb3dcore_TShadowObject_obj* o){
	((struct openb3d_openb3dcore_TShadowObject_obj*)bbNullObjectTest((BBObject*)o));
	BBBYTE* bbt_inst=0;
	struct BBDebugScope_2 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"InitFields",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TShadowObject",
				.var_address=&o
			},
			{
				BBDEBUGDECL_LOCAL,
				"inst",
				"*b",
				.var_address=&bbt_inst
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x74c8b03f76ff8894, 114, 0};
	bbOnDebugEnterStm(&__stmt_0);
	((struct openb3d_openb3dcore_TShadowObject_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tshadowobject_render =ShadowObjectChar_(o->clas->f_GetInstance_pb_TTShadowObject((struct openb3d_openb3dcore_TShadowObject_obj*)o),6);
	struct BBDebugStm __stmt_1 = {0x74c8b03f76ff8894, 115, 0};
	bbOnDebugEnterStm(&__stmt_1);
	((struct openb3d_openb3dcore_TShadowObject_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tshadowobject_static =ShadowObjectChar_(o->clas->f_GetInstance_pb_TTShadowObject((struct openb3d_openb3dcore_TShadowObject_obj*)o),7);
	struct BBDebugStm __stmt_2 = {0x74c8b03f76ff8894, 116, 0};
	bbOnDebugEnterStm(&__stmt_2);
	((struct openb3d_openb3dcore_TShadowObject_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tshadowobject_vcreated =ShadowObjectChar_(o->clas->f_GetInstance_pb_TTShadowObject((struct openb3d_openb3dcore_TShadowObject_obj*)o),8);
	struct BBDebugStm __stmt_3 = {0x74c8b03f76ff8894, 119, 0};
	bbOnDebugEnterStm(&__stmt_3);
	((struct openb3d_openb3dcore_TShadowObject_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tshadowobject_cnt_tris =ShadowObjectInt_(o->clas->f_GetInstance_pb_TTShadowObject((struct openb3d_openb3dcore_TShadowObject_obj*)o),3);
	struct BBDebugStm __stmt_4 = {0x74c8b03f76ff8894, 122, 0};
	bbOnDebugEnterStm(&__stmt_4);
	bbt_inst=ShadowObjectMesh_(o->clas->f_GetInstance_pb_TTShadowObject((struct openb3d_openb3dcore_TShadowObject_obj*)o),2);
	struct BBDebugStm __stmt_5 = {0x74c8b03f76ff8894, 123, 0};
	bbOnDebugEnterStm(&__stmt_5);
	((struct openb3d_openb3dcore_TShadowObject_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tshadowobject_parent =(struct openb3d_openb3dcore_TMesh_obj*)((struct openb3d_openb3dcore_TMesh_obj*)bbObjectDowncast((BBOBJECT)openb3d_openb3dcore_TEntity_GetObject_TTEntity_pb(bbt_inst),(BBClass*)&openb3d_openb3dcore_TMesh));
	struct BBDebugStm __stmt_6 = {0x74c8b03f76ff8894, 124, 0};
	bbOnDebugEnterStm(&__stmt_6);
	bbt_inst=ShadowObjectMesh_(o->clas->f_GetInstance_pb_TTShadowObject((struct openb3d_openb3dcore_TShadowObject_obj*)o),4);
	struct BBDebugStm __stmt_7 = {0x74c8b03f76ff8894, 125, 0};
	bbOnDebugEnterStm(&__stmt_7);
	((struct openb3d_openb3dcore_TShadowObject_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tshadowobject_shadowmesh =(struct openb3d_openb3dcore_TMesh_obj*)((struct openb3d_openb3dcore_TMesh_obj*)bbObjectDowncast((BBOBJECT)openb3d_openb3dcore_TEntity_GetObject_TTEntity_pb(bbt_inst),(BBClass*)&openb3d_openb3dcore_TMesh));
	struct BBDebugStm __stmt_8 = {0x74c8b03f76ff8894, 126, 0};
	bbOnDebugEnterStm(&__stmt_8);
	if((((BBOBJECT)((struct openb3d_openb3dcore_TShadowObject_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tshadowobject_shadowmesh )==&bbNullObject) && (bbt_inst!=0)){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x74c8b03f76ff8894, 126, 0};
		bbOnDebugEnterStm(&__stmt_0);
		((struct openb3d_openb3dcore_TShadowObject_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tshadowobject_shadowmesh =(struct openb3d_openb3dcore_TMesh_obj*)openb3d_openb3dcore_TMesh_CreateObject_TTMesh_pb(bbt_inst);
		bbOnDebugLeaveScope();
	}
	struct BBDebugStm __stmt_9 = {0x74c8b03f76ff8894, 133, 0};
	bbOnDebugEnterStm(&__stmt_9);
	o->clas->f_CopyList__i_TTList((struct brl_linkedlist_TList_obj*)openb3d_openb3dcore_TShadowObject_shadow_list);
	struct BBDebugStm __stmt_10 = {0x74c8b03f76ff8894, 134, 0};
	bbOnDebugEnterStm(&__stmt_10);
	((struct openb3d_openb3dcore_TShadowObject_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tshadowobject_exists =1;
	bbOnDebugLeaveScope();
	return 0;
}
BBINT openb3d_openb3dcore_TShadowObject_DebugGlobals_i_ii(BBINT bbt_debug_subobjects,BBINT bbt_debug_base_types){
	BBSTRING bbt_pad=(&bbEmptyString);
	BBINT bbt_loop=0;
	struct BBDebugScope_4 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"DebugGlobals",
		{
			{
				BBDEBUGDECL_LOCAL,
				"debug_subobjects",
				"i",
				.var_address=&bbt_debug_subobjects
			},
			{
				BBDEBUGDECL_LOCAL,
				"debug_base_types",
				"i",
				.var_address=&bbt_debug_base_types
			},
			{
				BBDEBUGDECL_LOCAL,
				"pad",
				"$",
				.var_address=&bbt_pad
			},
			{
				BBDEBUGDECL_LOCAL,
				"loop",
				"i",
				.var_address=&bbt_loop
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x74c8b03f76ff8894, 140, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbt_pad=((BBString*)&bbEmptyString);
	struct BBDebugStm __stmt_1 = {0x74c8b03f76ff8894, 141, 0};
	bbOnDebugEnterStm(&__stmt_1);
	bbt_loop=bbt_debug_subobjects;
	struct BBDebugStm __stmt_2 = {0x74c8b03f76ff8894, 142, 0};
	bbOnDebugEnterStm(&__stmt_2);
	if(bbt_debug_base_types>bbt_debug_subobjects){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x74c8b03f76ff8894, 142, 0};
		bbOnDebugEnterStm(&__stmt_0);
		bbt_loop=bbt_debug_base_types;
		bbOnDebugLeaveScope();
	}
	struct BBDebugStm __stmt_3 = {0x74c8b03f76ff8894, 143, 0};
	bbOnDebugEnterStm(&__stmt_3);
	{
		BBINT bbt_i=1;
		BBINT bbt_=bbt_loop;
		for(;(bbt_i<bbt_);bbt_i=(bbt_i+1)){
			struct BBDebugScope_1 __scope = {
				BBDEBUGSCOPE_LOCALBLOCK,
				0,
				{
					{
						BBDEBUGDECL_LOCAL,
						"i",
						"i",
						.var_address=&bbt_i
					},
					{
						BBDEBUGDECL_END
					}
				}
			};
			bbOnDebugEnterScope((BBDebugScope *)&__scope);
			struct BBDebugStm __stmt_0 = {0x74c8b03f76ff8894, 144, 0};
			bbOnDebugEnterStm(&__stmt_0);
			bbt_pad=bbStringConcat(bbt_pad,((BBString*)&_s0));
			bbOnDebugLeaveScope();
		}
	}
	struct BBDebugStm __stmt_4 = {0x74c8b03f76ff8894, 146, 0};
	bbOnDebugEnterStm(&__stmt_4);
	if(bbt_debug_subobjects!=0){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x74c8b03f76ff8894, 146, 0};
		bbOnDebugEnterStm(&__stmt_0);
		bbt_debug_subobjects+=1;
		bbOnDebugLeaveScope();
	}
	struct BBDebugStm __stmt_5 = {0x74c8b03f76ff8894, 147, 0};
	bbOnDebugEnterStm(&__stmt_5);
	if(bbt_debug_base_types!=0){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x74c8b03f76ff8894, 147, 0};
		bbOnDebugEnterStm(&__stmt_0);
		bbt_debug_base_types+=1;
		bbOnDebugLeaveScope();
	}
	struct BBDebugStm __stmt_6 = {0x74c8b03f76ff8894, 148, 0};
	bbOnDebugEnterStm(&__stmt_6);
	brl_blitz_DebugLog(bbStringConcat(bbt_pad,((BBString*)&_s689)));
	struct BBDebugStm __stmt_7 = {0x74c8b03f76ff8894, 151, 0};
	bbOnDebugEnterStm(&__stmt_7);
	if(openb3d_openb3dcore_TShadowObject_top_caps!=0){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x74c8b03f76ff8894, 151, 0};
		bbOnDebugEnterStm(&__stmt_0);
		brl_blitz_DebugLog(bbStringConcat(bbStringConcat(bbt_pad,((BBString*)&_s690)),bbStringFromInt(openb3d_openb3dcore_TShadowObject_top_caps[0])));
		bbOnDebugLeaveScope();
	}else{
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x74c8b03f76ff8894, 151, 0};
		bbOnDebugEnterStm(&__stmt_0);
		brl_blitz_DebugLog(bbStringConcat(bbt_pad,((BBString*)&_s691)));
		bbOnDebugLeaveScope();
	}
	struct BBDebugStm __stmt_8 = {0x74c8b03f76ff8894, 154, 0};
	bbOnDebugEnterStm(&__stmt_8);
	if(openb3d_openb3dcore_TShadowObject_parallel!=0){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x74c8b03f76ff8894, 154, 0};
		bbOnDebugEnterStm(&__stmt_0);
		brl_blitz_DebugLog(bbStringConcat(bbStringConcat(bbt_pad,((BBString*)&_s692)),bbStringFromInt(openb3d_openb3dcore_TShadowObject_parallel[0])));
		bbOnDebugLeaveScope();
	}else{
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x74c8b03f76ff8894, 154, 0};
		bbOnDebugEnterStm(&__stmt_0);
		brl_blitz_DebugLog(bbStringConcat(bbt_pad,((BBString*)&_s693)));
		bbOnDebugLeaveScope();
	}
	struct BBDebugStm __stmt_9 = {0x74c8b03f76ff8894, 155, 0};
	bbOnDebugEnterStm(&__stmt_9);
	if(openb3d_openb3dcore_TShadowObject_midStencilVal!=0){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x74c8b03f76ff8894, 155, 0};
		bbOnDebugEnterStm(&__stmt_0);
		brl_blitz_DebugLog(bbStringConcat(bbStringConcat(bbt_pad,((BBString*)&_s694)),bbStringFromInt(openb3d_openb3dcore_TShadowObject_midStencilVal[0])));
		bbOnDebugLeaveScope();
	}else{
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x74c8b03f76ff8894, 155, 0};
		bbOnDebugEnterStm(&__stmt_0);
		brl_blitz_DebugLog(bbStringConcat(bbt_pad,((BBString*)&_s695)));
		bbOnDebugLeaveScope();
	}
	struct BBDebugStm __stmt_10 = {0x74c8b03f76ff8894, 158, 0};
	bbOnDebugEnterStm(&__stmt_10);
	if(openb3d_openb3dcore_TShadowObject_VolumeLength!=0){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x74c8b03f76ff8894, 158, 0};
		bbOnDebugEnterStm(&__stmt_0);
		brl_blitz_DebugLog(bbStringConcat(bbStringConcat(bbt_pad,((BBString*)&_s696)),bbStringFromFloat(openb3d_openb3dcore_TShadowObject_VolumeLength[0])));
		bbOnDebugLeaveScope();
	}else{
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x74c8b03f76ff8894, 158, 0};
		bbOnDebugEnterStm(&__stmt_0);
		brl_blitz_DebugLog(bbStringConcat(bbt_pad,((BBString*)&_s697)));
		bbOnDebugLeaveScope();
	}
	struct BBDebugStm __stmt_11 = {0x74c8b03f76ff8894, 159, 0};
	bbOnDebugEnterStm(&__stmt_11);
	if(openb3d_openb3dcore_TShadowObject_light_x!=0){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x74c8b03f76ff8894, 159, 0};
		bbOnDebugEnterStm(&__stmt_0);
		brl_blitz_DebugLog(bbStringConcat(bbStringConcat(bbt_pad,((BBString*)&_s698)),bbStringFromFloat(openb3d_openb3dcore_TShadowObject_light_x[0])));
		bbOnDebugLeaveScope();
	}else{
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x74c8b03f76ff8894, 159, 0};
		bbOnDebugEnterStm(&__stmt_0);
		brl_blitz_DebugLog(bbStringConcat(bbt_pad,((BBString*)&_s699)));
		bbOnDebugLeaveScope();
	}
	struct BBDebugStm __stmt_12 = {0x74c8b03f76ff8894, 160, 0};
	bbOnDebugEnterStm(&__stmt_12);
	if(openb3d_openb3dcore_TShadowObject_light_y!=0){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x74c8b03f76ff8894, 160, 0};
		bbOnDebugEnterStm(&__stmt_0);
		brl_blitz_DebugLog(bbStringConcat(bbStringConcat(bbt_pad,((BBString*)&_s700)),bbStringFromFloat(openb3d_openb3dcore_TShadowObject_light_y[0])));
		bbOnDebugLeaveScope();
	}else{
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x74c8b03f76ff8894, 160, 0};
		bbOnDebugEnterStm(&__stmt_0);
		brl_blitz_DebugLog(bbStringConcat(bbt_pad,((BBString*)&_s701)));
		bbOnDebugLeaveScope();
	}
	struct BBDebugStm __stmt_13 = {0x74c8b03f76ff8894, 161, 0};
	bbOnDebugEnterStm(&__stmt_13);
	if(openb3d_openb3dcore_TShadowObject_light_z!=0){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x74c8b03f76ff8894, 161, 0};
		bbOnDebugEnterStm(&__stmt_0);
		brl_blitz_DebugLog(bbStringConcat(bbStringConcat(bbt_pad,((BBString*)&_s702)),bbStringFromFloat(openb3d_openb3dcore_TShadowObject_light_z[0])));
		bbOnDebugLeaveScope();
	}else{
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x74c8b03f76ff8894, 161, 0};
		bbOnDebugEnterStm(&__stmt_0);
		brl_blitz_DebugLog(bbStringConcat(bbt_pad,((BBString*)&_s703)));
		bbOnDebugLeaveScope();
	}
	struct BBDebugStm __stmt_14 = {0x74c8b03f76ff8894, 162, 0};
	bbOnDebugEnterStm(&__stmt_14);
	if(openb3d_openb3dcore_TShadowObject_ShadowRed!=0){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x74c8b03f76ff8894, 162, 0};
		bbOnDebugEnterStm(&__stmt_0);
		brl_blitz_DebugLog(bbStringConcat(bbStringConcat(bbt_pad,((BBString*)&_s704)),bbStringFromFloat(openb3d_openb3dcore_TShadowObject_ShadowRed[0])));
		bbOnDebugLeaveScope();
	}else{
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x74c8b03f76ff8894, 162, 0};
		bbOnDebugEnterStm(&__stmt_0);
		brl_blitz_DebugLog(bbStringConcat(bbt_pad,((BBString*)&_s705)));
		bbOnDebugLeaveScope();
	}
	struct BBDebugStm __stmt_15 = {0x74c8b03f76ff8894, 163, 0};
	bbOnDebugEnterStm(&__stmt_15);
	if(openb3d_openb3dcore_TShadowObject_ShadowGreen!=0){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x74c8b03f76ff8894, 163, 0};
		bbOnDebugEnterStm(&__stmt_0);
		brl_blitz_DebugLog(bbStringConcat(bbStringConcat(bbt_pad,((BBString*)&_s706)),bbStringFromFloat(openb3d_openb3dcore_TShadowObject_ShadowGreen[0])));
		bbOnDebugLeaveScope();
	}else{
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x74c8b03f76ff8894, 163, 0};
		bbOnDebugEnterStm(&__stmt_0);
		brl_blitz_DebugLog(bbStringConcat(bbt_pad,((BBString*)&_s707)));
		bbOnDebugLeaveScope();
	}
	struct BBDebugStm __stmt_16 = {0x74c8b03f76ff8894, 164, 0};
	bbOnDebugEnterStm(&__stmt_16);
	if(openb3d_openb3dcore_TShadowObject_ShadowBlue!=0){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x74c8b03f76ff8894, 164, 0};
		bbOnDebugEnterStm(&__stmt_0);
		brl_blitz_DebugLog(bbStringConcat(bbStringConcat(bbt_pad,((BBString*)&_s708)),bbStringFromFloat(openb3d_openb3dcore_TShadowObject_ShadowBlue[0])));
		bbOnDebugLeaveScope();
	}else{
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x74c8b03f76ff8894, 164, 0};
		bbOnDebugEnterStm(&__stmt_0);
		brl_blitz_DebugLog(bbStringConcat(bbt_pad,((BBString*)&_s709)));
		bbOnDebugLeaveScope();
	}
	struct BBDebugStm __stmt_17 = {0x74c8b03f76ff8894, 165, 0};
	bbOnDebugEnterStm(&__stmt_17);
	if(openb3d_openb3dcore_TShadowObject_ShadowAlpha!=0){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x74c8b03f76ff8894, 165, 0};
		bbOnDebugEnterStm(&__stmt_0);
		brl_blitz_DebugLog(bbStringConcat(bbStringConcat(bbt_pad,((BBString*)&_s710)),bbStringFromFloat(openb3d_openb3dcore_TShadowObject_ShadowAlpha[0])));
		bbOnDebugLeaveScope();
	}else{
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x74c8b03f76ff8894, 165, 0};
		bbOnDebugEnterStm(&__stmt_0);
		brl_blitz_DebugLog(bbStringConcat(bbt_pad,((BBString*)&_s711)));
		bbOnDebugLeaveScope();
	}
	struct BBDebugStm __stmt_18 = {0x74c8b03f76ff8894, 167, 0};
	bbOnDebugEnterStm(&__stmt_18);
	brl_blitz_DebugLog((BBString*)&bbEmptyString);
	bbOnDebugLeaveScope();
	return 0;
}
BBINT _openb3d_openb3dcore_TShadowObject_DebugFields_ii(struct openb3d_openb3dcore_TShadowObject_obj* o,BBINT bbt_debug_subobjects,BBINT bbt_debug_base_types){
	((struct openb3d_openb3dcore_TShadowObject_obj*)bbNullObjectTest((BBObject*)o));
	BBSTRING bbt_pad=(&bbEmptyString);
	BBINT bbt_loop=0;
	struct BBDebugScope_5 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"DebugFields",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TShadowObject",
				.var_address=&o
			},
			{
				BBDEBUGDECL_LOCAL,
				"debug_subobjects",
				"i",
				.var_address=&bbt_debug_subobjects
			},
			{
				BBDEBUGDECL_LOCAL,
				"debug_base_types",
				"i",
				.var_address=&bbt_debug_base_types
			},
			{
				BBDEBUGDECL_LOCAL,
				"pad",
				"$",
				.var_address=&bbt_pad
			},
			{
				BBDEBUGDECL_LOCAL,
				"loop",
				"i",
				.var_address=&bbt_loop
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x74c8b03f76ff8894, 173, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbt_pad=((BBString*)&bbEmptyString);
	struct BBDebugStm __stmt_1 = {0x74c8b03f76ff8894, 174, 0};
	bbOnDebugEnterStm(&__stmt_1);
	bbt_loop=bbt_debug_subobjects;
	struct BBDebugStm __stmt_2 = {0x74c8b03f76ff8894, 175, 0};
	bbOnDebugEnterStm(&__stmt_2);
	if(bbt_debug_base_types>bbt_debug_subobjects){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x74c8b03f76ff8894, 175, 0};
		bbOnDebugEnterStm(&__stmt_0);
		bbt_loop=bbt_debug_base_types;
		bbOnDebugLeaveScope();
	}
	struct BBDebugStm __stmt_3 = {0x74c8b03f76ff8894, 176, 0};
	bbOnDebugEnterStm(&__stmt_3);
	{
		BBINT bbt_i=1;
		BBINT bbt_=bbt_loop;
		for(;(bbt_i<bbt_);bbt_i=(bbt_i+1)){
			struct BBDebugScope_1 __scope = {
				BBDEBUGSCOPE_LOCALBLOCK,
				0,
				{
					{
						BBDEBUGDECL_LOCAL,
						"i",
						"i",
						.var_address=&bbt_i
					},
					{
						BBDEBUGDECL_END
					}
				}
			};
			bbOnDebugEnterScope((BBDebugScope *)&__scope);
			struct BBDebugStm __stmt_0 = {0x74c8b03f76ff8894, 177, 0};
			bbOnDebugEnterStm(&__stmt_0);
			bbt_pad=bbStringConcat(bbt_pad,((BBString*)&_s0));
			bbOnDebugLeaveScope();
		}
	}
	struct BBDebugStm __stmt_4 = {0x74c8b03f76ff8894, 179, 0};
	bbOnDebugEnterStm(&__stmt_4);
	if(bbt_debug_subobjects!=0){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x74c8b03f76ff8894, 179, 0};
		bbOnDebugEnterStm(&__stmt_0);
		bbt_debug_subobjects+=1;
		bbOnDebugLeaveScope();
	}
	struct BBDebugStm __stmt_5 = {0x74c8b03f76ff8894, 180, 0};
	bbOnDebugEnterStm(&__stmt_5);
	if(bbt_debug_base_types!=0){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x74c8b03f76ff8894, 180, 0};
		bbOnDebugEnterStm(&__stmt_0);
		bbt_debug_base_types+=1;
		bbOnDebugLeaveScope();
	}
	struct BBDebugStm __stmt_6 = {0x74c8b03f76ff8894, 181, 0};
	bbOnDebugEnterStm(&__stmt_6);
	brl_blitz_DebugLog(bbStringConcat(bbStringConcat(bbt_pad,((BBString*)&_s712)),openb3d_openb3dcore_StringPtr(o->clas->f_GetInstance_pb_TTShadowObject((struct openb3d_openb3dcore_TShadowObject_obj*)o))));
	struct BBDebugStm __stmt_7 = {0x74c8b03f76ff8894, 184, 0};
	bbOnDebugEnterStm(&__stmt_7);
	if(((struct openb3d_openb3dcore_TShadowObject_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tshadowobject_render !=0){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x74c8b03f76ff8894, 184, 0};
		bbOnDebugEnterStm(&__stmt_0);
		brl_blitz_DebugLog(bbStringConcat(bbStringConcat(bbt_pad,((BBString*)&_s713)),bbStringFromInt(((struct openb3d_openb3dcore_TShadowObject_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tshadowobject_render [0])));
		bbOnDebugLeaveScope();
	}else{
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x74c8b03f76ff8894, 184, 0};
		bbOnDebugEnterStm(&__stmt_0);
		brl_blitz_DebugLog(bbStringConcat(bbt_pad,((BBString*)&_s714)));
		bbOnDebugLeaveScope();
	}
	struct BBDebugStm __stmt_8 = {0x74c8b03f76ff8894, 185, 0};
	bbOnDebugEnterStm(&__stmt_8);
	if(((struct openb3d_openb3dcore_TShadowObject_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tshadowobject_static !=0){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x74c8b03f76ff8894, 185, 0};
		bbOnDebugEnterStm(&__stmt_0);
		brl_blitz_DebugLog(bbStringConcat(bbStringConcat(bbt_pad,((BBString*)&_s715)),bbStringFromInt(((struct openb3d_openb3dcore_TShadowObject_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tshadowobject_static [0])));
		bbOnDebugLeaveScope();
	}else{
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x74c8b03f76ff8894, 185, 0};
		bbOnDebugEnterStm(&__stmt_0);
		brl_blitz_DebugLog(bbStringConcat(bbt_pad,((BBString*)&_s716)));
		bbOnDebugLeaveScope();
	}
	struct BBDebugStm __stmt_9 = {0x74c8b03f76ff8894, 186, 0};
	bbOnDebugEnterStm(&__stmt_9);
	if(((struct openb3d_openb3dcore_TShadowObject_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tshadowobject_vcreated !=0){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x74c8b03f76ff8894, 186, 0};
		bbOnDebugEnterStm(&__stmt_0);
		brl_blitz_DebugLog(bbStringConcat(bbStringConcat(bbt_pad,((BBString*)&_s717)),bbStringFromInt(((struct openb3d_openb3dcore_TShadowObject_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tshadowobject_vcreated [0])));
		bbOnDebugLeaveScope();
	}else{
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x74c8b03f76ff8894, 186, 0};
		bbOnDebugEnterStm(&__stmt_0);
		brl_blitz_DebugLog(bbStringConcat(bbt_pad,((BBString*)&_s718)));
		bbOnDebugLeaveScope();
	}
	struct BBDebugStm __stmt_10 = {0x74c8b03f76ff8894, 189, 0};
	bbOnDebugEnterStm(&__stmt_10);
	if(((struct openb3d_openb3dcore_TShadowObject_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tshadowobject_cnt_tris !=0){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x74c8b03f76ff8894, 189, 0};
		bbOnDebugEnterStm(&__stmt_0);
		brl_blitz_DebugLog(bbStringConcat(bbStringConcat(bbt_pad,((BBString*)&_s719)),bbStringFromInt(((struct openb3d_openb3dcore_TShadowObject_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tshadowobject_cnt_tris [0])));
		bbOnDebugLeaveScope();
	}else{
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x74c8b03f76ff8894, 189, 0};
		bbOnDebugEnterStm(&__stmt_0);
		brl_blitz_DebugLog(bbStringConcat(bbt_pad,((BBString*)&_s720)));
		bbOnDebugLeaveScope();
	}
	struct BBDebugStm __stmt_11 = {0x74c8b03f76ff8894, 192, 0};
	bbOnDebugEnterStm(&__stmt_11);
	brl_blitz_DebugLog(bbStringConcat(bbStringConcat(bbt_pad,((BBString*)&_s721)),openb3d_openb3dcore_StringPtr(openb3d_openb3dcore_TEntity_GetInstance_pb_TTEntity((struct openb3d_openb3dcore_TEntity_obj*)((struct openb3d_openb3dcore_TEntity_obj*)bbObjectDowncast((BBOBJECT)((struct openb3d_openb3dcore_TShadowObject_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tshadowobject_parent ,(BBClass*)&openb3d_openb3dcore_TEntity))))));
	struct BBDebugStm __stmt_12 = {0x74c8b03f76ff8894, 193, 0};
	bbOnDebugEnterStm(&__stmt_12);
	if((bbt_debug_subobjects!=0) && (((BBOBJECT)((struct openb3d_openb3dcore_TShadowObject_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tshadowobject_parent )!=&bbNullObject)){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x74c8b03f76ff8894, 193, 0};
		bbOnDebugEnterStm(&__stmt_0);
		((struct openb3d_openb3dcore_TMesh_obj*)bbNullObjectTest((BBObject*)((struct openb3d_openb3dcore_TShadowObject_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tshadowobject_parent ))->clas->m_DebugFields_ii((struct openb3d_openb3dcore_TMesh_obj*)((struct openb3d_openb3dcore_TShadowObject_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tshadowobject_parent ,bbt_debug_subobjects,bbt_debug_base_types);
		bbOnDebugLeaveScope();
	}
	struct BBDebugStm __stmt_13 = {0x74c8b03f76ff8894, 194, 0};
	bbOnDebugEnterStm(&__stmt_13);
	brl_blitz_DebugLog(bbStringConcat(bbStringConcat(bbt_pad,((BBString*)&_s722)),openb3d_openb3dcore_StringPtr(openb3d_openb3dcore_TEntity_GetInstance_pb_TTEntity((struct openb3d_openb3dcore_TEntity_obj*)((struct openb3d_openb3dcore_TEntity_obj*)bbObjectDowncast((BBOBJECT)((struct openb3d_openb3dcore_TShadowObject_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tshadowobject_shadowmesh ,(BBClass*)&openb3d_openb3dcore_TEntity))))));
	struct BBDebugStm __stmt_14 = {0x74c8b03f76ff8894, 195, 0};
	bbOnDebugEnterStm(&__stmt_14);
	if((bbt_debug_subobjects!=0) && (((BBOBJECT)((struct openb3d_openb3dcore_TShadowObject_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tshadowobject_shadowmesh )!=&bbNullObject)){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x74c8b03f76ff8894, 195, 0};
		bbOnDebugEnterStm(&__stmt_0);
		((struct openb3d_openb3dcore_TMesh_obj*)bbNullObjectTest((BBObject*)((struct openb3d_openb3dcore_TShadowObject_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tshadowobject_shadowmesh ))->clas->m_DebugFields_ii((struct openb3d_openb3dcore_TMesh_obj*)((struct openb3d_openb3dcore_TShadowObject_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tshadowobject_shadowmesh ,bbt_debug_subobjects,bbt_debug_base_types);
		bbOnDebugLeaveScope();
	}
	struct BBDebugStm __stmt_15 = {0x74c8b03f76ff8894, 197, 0};
	bbOnDebugEnterStm(&__stmt_15);
	brl_blitz_DebugLog((BBString*)&bbEmptyString);
	bbOnDebugLeaveScope();
	return 0;
}
BBINT openb3d_openb3dcore_TShadowObject_AddList__i_TTList(struct brl_linkedlist_TList_obj* bbt_list){
	struct BBDebugScope_1 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"AddList_",
		{
			{
				BBDEBUGDECL_LOCAL,
				"list",
				":TList",
				.var_address=&bbt_list
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x74c8b03f76ff8894, 203, 0};
	bbOnDebugEnterStm(&__stmt_0);
	struct brl_linkedlist_TList_obj* bbt_=(struct brl_linkedlist_TList_obj*)bbt_list;
	struct BBDebugStm __stmt_1 = {0x74c8b03f76ff8894, 204, 0};
	bbOnDebugEnterStm(&__stmt_1);
	if(((struct brl_linkedlist_TList_obj*)bbt_)==openb3d_openb3dcore_TShadowObject_shadow_list){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x74c8b03f76ff8894, 205, 0};
		bbOnDebugEnterStm(&__stmt_0);
		if(StaticListSize_(46,1)!=0){
			BBBYTE* bbt_inst=0;
			struct openb3d_openb3dcore_TShadowObject_obj* bbt_obj=(struct openb3d_openb3dcore_TShadowObject_obj*)((struct openb3d_openb3dcore_TShadowObject_obj*)&bbNullObject);
			struct BBDebugScope_2 __scope = {
				BBDEBUGSCOPE_LOCALBLOCK,
				0,
				{
					{
						BBDEBUGDECL_LOCAL,
						"inst",
						"*b",
						.var_address=&bbt_inst
					},
					{
						BBDEBUGDECL_LOCAL,
						"obj",
						":TShadowObject",
						.var_address=&bbt_obj
					},
					{
						BBDEBUGDECL_END
					}
				}
			};
			bbOnDebugEnterScope((BBDebugScope *)&__scope);
			struct BBDebugStm __stmt_0 = {0x74c8b03f76ff8894, 206, 0};
			bbOnDebugEnterStm(&__stmt_0);
			bbt_inst=StaticIterListShadowObject_(46,1,(&openb3d_openb3dcore_TShadowObject_shadow_list_id));
			struct BBDebugStm __stmt_1 = {0x74c8b03f76ff8894, 207, 0};
			bbOnDebugEnterStm(&__stmt_1);
			bbt_obj=(struct openb3d_openb3dcore_TShadowObject_obj*)openb3d_openb3dcore_TShadowObject_GetObject_TTShadowObject_pb(bbt_inst);
			struct BBDebugStm __stmt_2 = {0x74c8b03f76ff8894, 208, 0};
			bbOnDebugEnterStm(&__stmt_2);
			if(((BBObject*)bbt_obj)!= &bbNullObject){
				struct BBDebugScope __scope = {
					BBDEBUGSCOPE_LOCALBLOCK,
					0,
					{
						{
							BBDEBUGDECL_END
						}
					}
				};
				bbOnDebugEnterScope((BBDebugScope *)&__scope);
				struct BBDebugStm __stmt_0 = {0x74c8b03f76ff8894, 208, 0};
				bbOnDebugEnterStm(&__stmt_0);
				brl_linkedlist_ListAddLast((struct brl_linkedlist_TList_obj*)bbt_list,(BBOBJECT)bbt_obj);
				bbOnDebugLeaveScope();
			}
			bbOnDebugLeaveScope();
		}
		bbOnDebugLeaveScope();
	}
	bbOnDebugLeaveScope();
	return 0;
}
BBINT openb3d_openb3dcore_TShadowObject_CopyList__i_TTList(struct brl_linkedlist_TList_obj* bbt_list){
	struct BBDebugScope_1 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"CopyList_",
		{
			{
				BBDEBUGDECL_LOCAL,
				"list",
				":TList",
				.var_address=&bbt_list
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x74c8b03f76ff8894, 216, 0};
	bbOnDebugEnterStm(&__stmt_0);
	brl_linkedlist_ClearList((struct brl_linkedlist_TList_obj*)bbt_list);
	struct BBDebugStm __stmt_1 = {0x74c8b03f76ff8894, 218, 0};
	bbOnDebugEnterStm(&__stmt_1);
	struct brl_linkedlist_TList_obj* bbt_=(struct brl_linkedlist_TList_obj*)bbt_list;
	struct BBDebugStm __stmt_2 = {0x74c8b03f76ff8894, 219, 0};
	bbOnDebugEnterStm(&__stmt_2);
	if(((struct brl_linkedlist_TList_obj*)bbt_)==openb3d_openb3dcore_TShadowObject_shadow_list){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x74c8b03f76ff8894, 220, 0};
		bbOnDebugEnterStm(&__stmt_0);
		openb3d_openb3dcore_TShadowObject_shadow_list_id=0;
		struct BBDebugStm __stmt_1 = {0x74c8b03f76ff8894, 221, 0};
		bbOnDebugEnterStm(&__stmt_1);
		{
			BBINT bbt_id=0;
			BBINT bbt_2=(StaticListSize_(46,1)-1);
			for(;(bbt_id<=bbt_2);bbt_id=(bbt_id+1)){
				BBBYTE* bbt_inst=0;
				struct openb3d_openb3dcore_TShadowObject_obj* bbt_obj=(struct openb3d_openb3dcore_TShadowObject_obj*)((struct openb3d_openb3dcore_TShadowObject_obj*)&bbNullObject);
				struct BBDebugScope_3 __scope = {
					BBDEBUGSCOPE_LOCALBLOCK,
					0,
					{
						{
							BBDEBUGDECL_LOCAL,
							"id",
							"i",
							.var_address=&bbt_id
						},
						{
							BBDEBUGDECL_LOCAL,
							"inst",
							"*b",
							.var_address=&bbt_inst
						},
						{
							BBDEBUGDECL_LOCAL,
							"obj",
							":TShadowObject",
							.var_address=&bbt_obj
						},
						{
							BBDEBUGDECL_END
						}
					}
				};
				bbOnDebugEnterScope((BBDebugScope *)&__scope);
				struct BBDebugStm __stmt_0 = {0x74c8b03f76ff8894, 222, 0};
				bbOnDebugEnterStm(&__stmt_0);
				bbt_inst=StaticIterListShadowObject_(46,1,(&openb3d_openb3dcore_TShadowObject_shadow_list_id));
				struct BBDebugStm __stmt_1 = {0x74c8b03f76ff8894, 223, 0};
				bbOnDebugEnterStm(&__stmt_1);
				bbt_obj=(struct openb3d_openb3dcore_TShadowObject_obj*)openb3d_openb3dcore_TShadowObject_GetObject_TTShadowObject_pb(bbt_inst);
				struct BBDebugStm __stmt_2 = {0x74c8b03f76ff8894, 224, 0};
				bbOnDebugEnterStm(&__stmt_2);
				if(((BBObject*)bbt_obj)!= &bbNullObject){
					struct BBDebugScope __scope = {
						BBDEBUGSCOPE_LOCALBLOCK,
						0,
						{
							{
								BBDEBUGDECL_END
							}
						}
					};
					bbOnDebugEnterScope((BBDebugScope *)&__scope);
					struct BBDebugStm __stmt_0 = {0x74c8b03f76ff8894, 224, 0};
					bbOnDebugEnterStm(&__stmt_0);
					brl_linkedlist_ListAddLast((struct brl_linkedlist_TList_obj*)bbt_list,(BBOBJECT)bbt_obj);
					bbOnDebugLeaveScope();
				}
				bbOnDebugLeaveScope();
			}
		}
		bbOnDebugLeaveScope();
	}
	bbOnDebugLeaveScope();
	return 0;
}
BBINT _openb3d_openb3dcore_TShadowObject_ResetShadow(struct openb3d_openb3dcore_TShadowObject_obj* o){
	((struct openb3d_openb3dcore_TShadowObject_obj*)bbNullObjectTest((BBObject*)o));
	struct BBDebugScope_1 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"ResetShadow",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TShadowObject",
				.var_address=&o
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x74c8b03f76ff8894, 235, 0};
	bbOnDebugEnterStm(&__stmt_0);
	((struct openb3d_openb3dcore_TShadowObject_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tshadowobject_vcreated [0]=0;
	bbOnDebugLeaveScope();
	return 0;
}
struct openb3d_openb3dcore_TShadowObject_obj* openb3d_openb3dcore_TShadowObject_CreateShadow_TTShadowObject_TTMeshi(struct openb3d_openb3dcore_TMesh_obj* bbt_parent,BBINT bbt_Static){
	BBBYTE* bbt_inst=0;
	struct BBDebugScope_3 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"CreateShadow",
		{
			{
				BBDEBUGDECL_LOCAL,
				"parent",
				":TMesh",
				.var_address=&bbt_parent
			},
			{
				BBDEBUGDECL_LOCAL,
				"Static",
				"i",
				.var_address=&bbt_Static
			},
			{
				BBDEBUGDECL_LOCAL,
				"inst",
				"*b",
				.var_address=&bbt_inst
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x74c8b03f76ff8894, 243, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbt_inst=CreateShadow_(openb3d_openb3dcore_TEntity_GetInstance_pb_TTEntity((struct openb3d_openb3dcore_TEntity_obj*)((struct openb3d_openb3dcore_TEntity_obj*)bbObjectDowncast((BBOBJECT)bbt_parent,(BBClass*)&openb3d_openb3dcore_TEntity))),bbt_Static);
	struct BBDebugStm __stmt_1 = {0x74c8b03f76ff8894, 244, 0};
	bbOnDebugEnterStm(&__stmt_1);
	bbOnDebugLeaveScope();
	return (struct openb3d_openb3dcore_TShadowObject_obj*)openb3d_openb3dcore_TShadowObject_CreateObject_TTShadowObject_pb(bbt_inst);
}
BBINT _openb3d_openb3dcore_TShadowObject_FreeShadow(struct openb3d_openb3dcore_TShadowObject_obj* o){
	((struct openb3d_openb3dcore_TShadowObject_obj*)bbNullObjectTest((BBObject*)o));
	struct BBDebugScope_1 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"FreeShadow",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TShadowObject",
				.var_address=&o
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x74c8b03f76ff8894, 250, 0};
	bbOnDebugEnterStm(&__stmt_0);
	if(((struct openb3d_openb3dcore_TShadowObject_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tshadowobject_exists !=0){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x74c8b03f76ff8894, 251, 0};
		bbOnDebugEnterStm(&__stmt_0);
		((struct openb3d_openb3dcore_TShadowObject_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tshadowobject_exists =0;
		struct BBDebugStm __stmt_1 = {0x74c8b03f76ff8894, 252, 0};
		bbOnDebugEnterStm(&__stmt_1);
		brl_linkedlist_ListRemove((struct brl_linkedlist_TList_obj*)openb3d_openb3dcore_TShadowObject_shadow_list,(BBOBJECT)o);
		struct BBDebugStm __stmt_2 = {0x74c8b03f76ff8894, 252, 0};
		bbOnDebugEnterStm(&__stmt_2);
		openb3d_openb3dcore_TShadowObject_shadow_list_id-=1;
		struct BBDebugStm __stmt_3 = {0x74c8b03f76ff8894, 253, 0};
		bbOnDebugEnterStm(&__stmt_3);
		brl_linkedlist_ListRemove((struct brl_linkedlist_TList_obj*)openb3d_openb3dcore_TEntity_entity_list,(BBOBJECT)((struct openb3d_openb3dcore_TShadowObject_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tshadowobject_shadowmesh );
		struct BBDebugStm __stmt_4 = {0x74c8b03f76ff8894, 253, 0};
		bbOnDebugEnterStm(&__stmt_4);
		openb3d_openb3dcore_TEntity_entity_list_id-=1;
		struct BBDebugStm __stmt_5 = {0x74c8b03f76ff8894, 255, 0};
		bbOnDebugEnterStm(&__stmt_5);
		openb3d_openb3dcore_TEntity_FreeObject_i_pb(openb3d_openb3dcore_TEntity_GetInstance_pb_TTEntity((struct openb3d_openb3dcore_TEntity_obj*)((struct openb3d_openb3dcore_TEntity_obj*)bbObjectDowncast((BBOBJECT)((struct openb3d_openb3dcore_TShadowObject_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tshadowobject_shadowmesh ,(BBClass*)&openb3d_openb3dcore_TEntity))));
		struct BBDebugStm __stmt_6 = {0x74c8b03f76ff8894, 255, 0};
		bbOnDebugEnterStm(&__stmt_6);
		((struct openb3d_openb3dcore_TShadowObject_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tshadowobject_shadowmesh =(struct openb3d_openb3dcore_TMesh_obj*)&bbNullObject;
		struct BBDebugStm __stmt_7 = {0x74c8b03f76ff8894, 258, 0};
		bbOnDebugEnterStm(&__stmt_7);
		FreeShadow_(o->clas->f_GetInstance_pb_TTShadowObject((struct openb3d_openb3dcore_TShadowObject_obj*)o));
		struct BBDebugStm __stmt_8 = {0x74c8b03f76ff8894, 259, 0};
		bbOnDebugEnterStm(&__stmt_8);
		o->clas->f_FreeObject_i_pb(o->clas->f_GetInstance_pb_TTShadowObject((struct openb3d_openb3dcore_TShadowObject_obj*)o));
		bbOnDebugLeaveScope();
	}
	bbOnDebugLeaveScope();
	return 0;
}
BBINT openb3d_openb3dcore_TShadowObject_ShadowInit_i(){
	struct BBDebugScope __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"ShadowInit",
		{
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x74c8b03f76ff8894, 269, 0};
	bbOnDebugEnterStm(&__stmt_0);
	ShadowInit_();
	bbOnDebugLeaveScope();
	return 0;
}
BBINT _openb3d_openb3dcore_TShadowObject_RemoveShadowfromMesh_TTMesh(struct openb3d_openb3dcore_TShadowObject_obj* o,struct openb3d_openb3dcore_TMesh_obj* bbt_M){
	((struct openb3d_openb3dcore_TShadowObject_obj*)bbNullObjectTest((BBObject*)o));
	struct BBDebugScope_2 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"RemoveShadowfromMesh",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TShadowObject",
				.var_address=&o
			},
			{
				BBDEBUGDECL_LOCAL,
				"M",
				":TMesh",
				.var_address=&bbt_M
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x74c8b03f76ff8894, 276, 0};
	bbOnDebugEnterStm(&__stmt_0);
	RemoveShadowfromMesh_(o->clas->f_GetInstance_pb_TTShadowObject((struct openb3d_openb3dcore_TShadowObject_obj*)o),openb3d_openb3dcore_TEntity_GetInstance_pb_TTEntity((struct openb3d_openb3dcore_TEntity_obj*)((struct openb3d_openb3dcore_TEntity_obj*)bbObjectDowncast((BBOBJECT)bbt_M,(BBClass*)&openb3d_openb3dcore_TEntity))));
	bbOnDebugLeaveScope();
	return 0;
}
BBINT openb3d_openb3dcore_TShadowObject_Update_i_TTCamera(struct openb3d_openb3dcore_TCamera_obj* bbt_Cam){
	struct BBDebugScope_1 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"Update",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Cam",
				":TCamera",
				.var_address=&bbt_Cam
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x74c8b03f76ff8894, 283, 0};
	bbOnDebugEnterStm(&__stmt_0);
	ShadowObjectUpdate_(openb3d_openb3dcore_TEntity_GetInstance_pb_TTEntity((struct openb3d_openb3dcore_TEntity_obj*)((struct openb3d_openb3dcore_TEntity_obj*)bbObjectDowncast((BBOBJECT)bbt_Cam,(BBClass*)&openb3d_openb3dcore_TEntity))));
	bbOnDebugLeaveScope();
	return 0;
}
BBINT openb3d_openb3dcore_TShadowObject_RenderVolume_i(){
	struct BBDebugScope __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"RenderVolume",
		{
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x74c8b03f76ff8894, 290, 0};
	bbOnDebugEnterStm(&__stmt_0);
	RenderVolume_();
	bbOnDebugLeaveScope();
	return 0;
}
BBINT _openb3d_openb3dcore_TShadowObject_UpdateAnim(struct openb3d_openb3dcore_TShadowObject_obj* o){
	((struct openb3d_openb3dcore_TShadowObject_obj*)bbNullObjectTest((BBObject*)o));
	struct BBDebugScope_1 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"UpdateAnim",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TShadowObject",
				.var_address=&o
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x74c8b03f76ff8894, 297, 0};
	bbOnDebugEnterStm(&__stmt_0);
	UpdateAnim_(o->clas->f_GetInstance_pb_TTShadowObject((struct openb3d_openb3dcore_TShadowObject_obj*)o));
	bbOnDebugLeaveScope();
	return 0;
}
BBINT _openb3d_openb3dcore_TShadowObject_Init(struct openb3d_openb3dcore_TShadowObject_obj* o){
	((struct openb3d_openb3dcore_TShadowObject_obj*)bbNullObjectTest((BBObject*)o));
	struct BBDebugScope_1 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"Init",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TShadowObject",
				.var_address=&o
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x74c8b03f76ff8894, 304, 0};
	bbOnDebugEnterStm(&__stmt_0);
	ShadowObjectInit_(o->clas->f_GetInstance_pb_TTShadowObject((struct openb3d_openb3dcore_TShadowObject_obj*)o));
	bbOnDebugLeaveScope();
	return 0;
}
BBINT _openb3d_openb3dcore_TShadowObject_InitShadow(struct openb3d_openb3dcore_TShadowObject_obj* o){
	((struct openb3d_openb3dcore_TShadowObject_obj*)bbNullObjectTest((BBObject*)o));
	struct BBDebugScope_1 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"InitShadow",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TShadowObject",
				.var_address=&o
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x74c8b03f76ff8894, 311, 0};
	bbOnDebugEnterStm(&__stmt_0);
	InitShadow_(o->clas->f_GetInstance_pb_TTShadowObject((struct openb3d_openb3dcore_TShadowObject_obj*)o));
	bbOnDebugLeaveScope();
	return 0;
}
BBINT _openb3d_openb3dcore_TShadowObject_UpdateCaster(struct openb3d_openb3dcore_TShadowObject_obj* o){
	((struct openb3d_openb3dcore_TShadowObject_obj*)bbNullObjectTest((BBObject*)o));
	struct BBDebugScope_1 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"UpdateCaster",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TShadowObject",
				.var_address=&o
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x74c8b03f76ff8894, 318, 0};
	bbOnDebugEnterStm(&__stmt_0);
	UpdateCaster_(o->clas->f_GetInstance_pb_TTShadowObject((struct openb3d_openb3dcore_TShadowObject_obj*)o));
	bbOnDebugLeaveScope();
	return 0;
}
BBINT openb3d_openb3dcore_TShadowObject_ShadowRenderWorldZFail_i(){
	struct BBDebugScope __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"ShadowRenderWorldZFail",
		{
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x74c8b03f76ff8894, 325, 0};
	bbOnDebugEnterStm(&__stmt_0);
	ShadowRenderWorldZFail_();
	bbOnDebugLeaveScope();
	return 0;
}
struct brl_linkedlist_TList_obj* openb3d_openb3dcore_TShadowObject_shadow_list;
BBINT openb3d_openb3dcore_TShadowObject_shadow_list_id;
struct brl_map_ptrmap_TPtrMap_obj* openb3d_openb3dcore_TShadowObject_shad_map;
BBBYTE* openb3d_openb3dcore_TShadowObject_top_caps;
BBINT* openb3d_openb3dcore_TShadowObject_parallel;
BBINT* openb3d_openb3dcore_TShadowObject_midStencilVal;
BBFLOAT* openb3d_openb3dcore_TShadowObject_VolumeLength;
BBFLOAT* openb3d_openb3dcore_TShadowObject_light_x;
BBFLOAT* openb3d_openb3dcore_TShadowObject_light_y;
BBFLOAT* openb3d_openb3dcore_TShadowObject_light_z;
BBFLOAT* openb3d_openb3dcore_TShadowObject_ShadowRed;
BBFLOAT* openb3d_openb3dcore_TShadowObject_ShadowGreen;
BBFLOAT* openb3d_openb3dcore_TShadowObject_ShadowBlue;
BBFLOAT* openb3d_openb3dcore_TShadowObject_ShadowAlpha;
struct BBDebugScope_46 openb3d_openb3dcore_TShadowObject_scope ={
	BBDEBUGSCOPE_USERTYPE,
	"TShadowObject",
	{
		{
			BBDEBUGDECL_FIELD,
			"Parent",
			":TMesh",
			.field_offset=offsetof(struct openb3d_openb3dcore_TShadowObject_obj,_openb3d_openb3dcore_tshadowobject_parent)
		},
		{
			BBDEBUGDECL_FIELD,
			"cnt_tris",
			"*i",
			.field_offset=offsetof(struct openb3d_openb3dcore_TShadowObject_obj,_openb3d_openb3dcore_tshadowobject_cnt_tris)
		},
		{
			BBDEBUGDECL_FIELD,
			"ShadowMesh",
			":TMesh",
			.field_offset=offsetof(struct openb3d_openb3dcore_TShadowObject_obj,_openb3d_openb3dcore_tshadowobject_shadowmesh)
		},
		{
			BBDEBUGDECL_FIELD,
			"ShadowVolume",
			":TSurface",
			.field_offset=offsetof(struct openb3d_openb3dcore_TShadowObject_obj,_openb3d_openb3dcore_tshadowobject_shadowvolume)
		},
		{
			BBDEBUGDECL_FIELD,
			"Render",
			"*b",
			.field_offset=offsetof(struct openb3d_openb3dcore_TShadowObject_obj,_openb3d_openb3dcore_tshadowobject_render)
		},
		{
			BBDEBUGDECL_FIELD,
			"Static",
			"*b",
			.field_offset=offsetof(struct openb3d_openb3dcore_TShadowObject_obj,_openb3d_openb3dcore_tshadowobject_static)
		},
		{
			BBDEBUGDECL_FIELD,
			"VCreated",
			"*b",
			.field_offset=offsetof(struct openb3d_openb3dcore_TShadowObject_obj,_openb3d_openb3dcore_tshadowobject_vcreated)
		},
		{
			BBDEBUGDECL_FIELD,
			"instance",
			"*b",
			.field_offset=offsetof(struct openb3d_openb3dcore_TShadowObject_obj,_openb3d_openb3dcore_tshadowobject_instance)
		},
		{
			BBDEBUGDECL_FIELD,
			"exists",
			"i",
			.field_offset=offsetof(struct openb3d_openb3dcore_TShadowObject_obj,_openb3d_openb3dcore_tshadowobject_exists)
		},
		{
			BBDEBUGDECL_GLOBAL,
			"shadow_list",
			":TList",
			.var_address=(void*)&openb3d_openb3dcore_TShadowObject_shadow_list
		},
		{
			BBDEBUGDECL_GLOBAL,
			"VolumeLength",
			"*f",
			.var_address=(void*)&openb3d_openb3dcore_TShadowObject_VolumeLength
		},
		{
			BBDEBUGDECL_GLOBAL,
			"top_caps",
			"*b",
			.var_address=(void*)&openb3d_openb3dcore_TShadowObject_top_caps
		},
		{
			BBDEBUGDECL_GLOBAL,
			"parallel",
			"*i",
			.var_address=(void*)&openb3d_openb3dcore_TShadowObject_parallel
		},
		{
			BBDEBUGDECL_GLOBAL,
			"light_x",
			"*f",
			.var_address=(void*)&openb3d_openb3dcore_TShadowObject_light_x
		},
		{
			BBDEBUGDECL_GLOBAL,
			"light_y",
			"*f",
			.var_address=(void*)&openb3d_openb3dcore_TShadowObject_light_y
		},
		{
			BBDEBUGDECL_GLOBAL,
			"light_z",
			"*f",
			.var_address=(void*)&openb3d_openb3dcore_TShadowObject_light_z
		},
		{
			BBDEBUGDECL_GLOBAL,
			"midStencilVal",
			"*i",
			.var_address=(void*)&openb3d_openb3dcore_TShadowObject_midStencilVal
		},
		{
			BBDEBUGDECL_GLOBAL,
			"ShadowRed",
			"*f",
			.var_address=(void*)&openb3d_openb3dcore_TShadowObject_ShadowRed
		},
		{
			BBDEBUGDECL_GLOBAL,
			"ShadowGreen",
			"*f",
			.var_address=(void*)&openb3d_openb3dcore_TShadowObject_ShadowGreen
		},
		{
			BBDEBUGDECL_GLOBAL,
			"ShadowBlue",
			"*f",
			.var_address=(void*)&openb3d_openb3dcore_TShadowObject_ShadowBlue
		},
		{
			BBDEBUGDECL_GLOBAL,
			"ShadowAlpha",
			"*f",
			.var_address=(void*)&openb3d_openb3dcore_TShadowObject_ShadowAlpha
		},
		{
			BBDEBUGDECL_GLOBAL,
			"shad_map",
			":TPtrMap",
			.var_address=(void*)&openb3d_openb3dcore_TShadowObject_shad_map
		},
		{
			BBDEBUGDECL_GLOBAL,
			"shadow_list_id",
			"i",
			.var_address=(void*)&openb3d_openb3dcore_TShadowObject_shadow_list_id
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"New",
			"()i",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_TShadowObject_New
		},
		{
			BBDEBUGDECL_TYPEFUNCTION,
			"CreateObject",
			"(*b):TShadowObject",
			.func_ptr=(BBFuncPtr)&openb3d_openb3dcore_TShadowObject_CreateObject_TTShadowObject_pb
		},
		{
			BBDEBUGDECL_TYPEFUNCTION,
			"FreeObject",
			"(*b)i",
			.func_ptr=(BBFuncPtr)&openb3d_openb3dcore_TShadowObject_FreeObject_i_pb
		},
		{
			BBDEBUGDECL_TYPEFUNCTION,
			"GetObject",
			"(*b):TShadowObject",
			.func_ptr=(BBFuncPtr)&openb3d_openb3dcore_TShadowObject_GetObject_TTShadowObject_pb
		},
		{
			BBDEBUGDECL_TYPEFUNCTION,
			"GetInstance",
			"(:TShadowObject)*b",
			.func_ptr=(BBFuncPtr)&openb3d_openb3dcore_TShadowObject_GetInstance_pb_TTShadowObject
		},
		{
			BBDEBUGDECL_TYPEFUNCTION,
			"InitGlobals",
			"()i",
			.func_ptr=(BBFuncPtr)&openb3d_openb3dcore_TShadowObject_InitGlobals_i
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"InitFields",
			"()i",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_TShadowObject_InitFields
		},
		{
			BBDEBUGDECL_TYPEFUNCTION,
			"DebugGlobals",
			"(i,i)i",
			.func_ptr=(BBFuncPtr)&openb3d_openb3dcore_TShadowObject_DebugGlobals_i_ii
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"DebugFields",
			"(i,i)i",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_TShadowObject_DebugFields_ii
		},
		{
			BBDEBUGDECL_TYPEFUNCTION,
			"AddList_",
			"(:TList)i",
			.func_ptr=(BBFuncPtr)&openb3d_openb3dcore_TShadowObject_AddList__i_TTList
		},
		{
			BBDEBUGDECL_TYPEFUNCTION,
			"CopyList_",
			"(:TList)i",
			.func_ptr=(BBFuncPtr)&openb3d_openb3dcore_TShadowObject_CopyList__i_TTList
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"ResetShadow",
			"()i",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_TShadowObject_ResetShadow
		},
		{
			BBDEBUGDECL_TYPEFUNCTION,
			"CreateShadow",
			"(:TMesh,i):TShadowObject",
			.func_ptr=(BBFuncPtr)&openb3d_openb3dcore_TShadowObject_CreateShadow_TTShadowObject_TTMeshi
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"FreeShadow",
			"()i",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_TShadowObject_FreeShadow
		},
		{
			BBDEBUGDECL_TYPEFUNCTION,
			"ShadowInit",
			"()i",
			.func_ptr=(BBFuncPtr)&openb3d_openb3dcore_TShadowObject_ShadowInit_i
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"RemoveShadowfromMesh",
			"(:TMesh)i",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_TShadowObject_RemoveShadowfromMesh_TTMesh
		},
		{
			BBDEBUGDECL_TYPEFUNCTION,
			"Update",
			"(:TCamera)i",
			.func_ptr=(BBFuncPtr)&openb3d_openb3dcore_TShadowObject_Update_i_TTCamera
		},
		{
			BBDEBUGDECL_TYPEFUNCTION,
			"RenderVolume",
			"()i",
			.func_ptr=(BBFuncPtr)&openb3d_openb3dcore_TShadowObject_RenderVolume_i
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"UpdateAnim",
			"()i",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_TShadowObject_UpdateAnim
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"Init",
			"()i",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_TShadowObject_Init
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"InitShadow",
			"()i",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_TShadowObject_InitShadow
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"UpdateCaster",
			"()i",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_TShadowObject_UpdateCaster
		},
		{
			BBDEBUGDECL_TYPEFUNCTION,
			"ShadowRenderWorldZFail",
			"()i",
			.func_ptr=(BBFuncPtr)&openb3d_openb3dcore_TShadowObject_ShadowRenderWorldZFail_i
		},
		{
			BBDEBUGDECL_END
		}
	}
};
struct BBClass_openb3d_openb3dcore_TShadowObject openb3d_openb3dcore_TShadowObject={
	&bbObjectClass,
	bbObjectFree,
	(BBDebugScope*)&openb3d_openb3dcore_TShadowObject_scope,
	sizeof(struct openb3d_openb3dcore_TShadowObject_obj),
	(void (*)(BBOBJECT))_openb3d_openb3dcore_TShadowObject_New,
	bbObjectDtor,
	bbObjectToString,
	bbObjectCompare,
	bbObjectSendMessage,
	0,
	0,
	offsetof(struct openb3d_openb3dcore_TShadowObject_obj,_openb3d_openb3dcore_tshadowobject_exists) - offsetof(struct openb3d_openb3dcore_TShadowObject_obj,_openb3d_openb3dcore_tshadowobject_parent) + sizeof(BBINT)
	,0
	,offsetof(struct openb3d_openb3dcore_TShadowObject_obj,_openb3d_openb3dcore_tshadowobject_parent)
	,openb3d_openb3dcore_TShadowObject_CreateObject_TTShadowObject_pb
	,openb3d_openb3dcore_TShadowObject_FreeObject_i_pb
	,openb3d_openb3dcore_TShadowObject_GetObject_TTShadowObject_pb
	,openb3d_openb3dcore_TShadowObject_GetInstance_pb_TTShadowObject
	,openb3d_openb3dcore_TShadowObject_InitGlobals_i
	,_openb3d_openb3dcore_TShadowObject_InitFields
	,openb3d_openb3dcore_TShadowObject_DebugGlobals_i_ii
	,_openb3d_openb3dcore_TShadowObject_DebugFields_ii
	,openb3d_openb3dcore_TShadowObject_AddList__i_TTList
	,openb3d_openb3dcore_TShadowObject_CopyList__i_TTList
	,_openb3d_openb3dcore_TShadowObject_ResetShadow
	,openb3d_openb3dcore_TShadowObject_CreateShadow_TTShadowObject_TTMeshi
	,_openb3d_openb3dcore_TShadowObject_FreeShadow
	,openb3d_openb3dcore_TShadowObject_ShadowInit_i
	,_openb3d_openb3dcore_TShadowObject_RemoveShadowfromMesh_TTMesh
	,openb3d_openb3dcore_TShadowObject_Update_i_TTCamera
	,openb3d_openb3dcore_TShadowObject_RenderVolume_i
	,_openb3d_openb3dcore_TShadowObject_UpdateAnim
	,_openb3d_openb3dcore_TShadowObject_Init
	,_openb3d_openb3dcore_TShadowObject_InitShadow
	,_openb3d_openb3dcore_TShadowObject_UpdateCaster
	,openb3d_openb3dcore_TShadowObject_ShadowRenderWorldZFail_i
};

void _openb3d_openb3dcore_THardwareInfo_New(struct openb3d_openb3dcore_THardwareInfo_obj* o) {
	bbObjectCtor((BBOBJECT)o);
	o->clas = &openb3d_openb3dcore_THardwareInfo;
}
BBINT openb3d_openb3dcore_THardwareInfo_GetInfo_i(){
	BBSTRING bbt_Extensions=(&bbEmptyString);
	struct BBDebugScope_1 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"GetInfo",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Extensions",
				"$",
				.var_address=&bbt_Extensions
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x2b6c276386fc9654, 41, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbt_Extensions=((BBString*)&bbEmptyString);
	struct BBDebugStm __stmt_1 = {0x2b6c276386fc9654, 44, 0};
	bbOnDebugEnterStm(&__stmt_1);
	openb3d_openb3dcore_THardwareInfo_Vendor=bbStringFromCString(glGetString((GLenum)7936));
	struct BBDebugStm __stmt_2 = {0x2b6c276386fc9654, 45, 0};
	bbOnDebugEnterStm(&__stmt_2);
	openb3d_openb3dcore_THardwareInfo_Renderer=bbStringFromCString(glGetString((GLenum)7937));
	struct BBDebugStm __stmt_3 = {0x2b6c276386fc9654, 46, 0};
	bbOnDebugEnterStm(&__stmt_3);
	openb3d_openb3dcore_THardwareInfo_OGLVersion=bbStringFromCString(glGetString((GLenum)7938));
	struct BBDebugStm __stmt_4 = {0x2b6c276386fc9654, 47, 0};
	bbOnDebugEnterStm(&__stmt_4);
	bbt_Extensions=bbStringFromCString(glGetString((GLenum)7939));
	struct BBDebugStm __stmt_5 = {0x2b6c276386fc9654, 48, 0};
	bbOnDebugEnterStm(&__stmt_5);
	openb3d_openb3dcore_THardwareInfo_Extensions=bbt_Extensions;
	struct BBDebugStm __stmt_6 = {0x2b6c276386fc9654, 51, 0};
	bbOnDebugEnterStm(&__stmt_6);
	openb3d_openb3dcore_THardwareInfo_TexBlendSupport=(bbStringFind((BBSTRING)bbt_Extensions,((BBString*)&_s723),0)>-1);
	struct BBDebugStm __stmt_7 = {0x2b6c276386fc9654, 52, 0};
	bbOnDebugEnterStm(&__stmt_7);
	openb3d_openb3dcore_THardwareInfo_AnIsoSupport=(bbStringFind((BBSTRING)bbt_Extensions,((BBString*)&_s724),0)>-1);
	struct BBDebugStm __stmt_8 = {0x2b6c276386fc9654, 53, 0};
	bbOnDebugEnterStm(&__stmt_8);
	openb3d_openb3dcore_THardwareInfo_GLTCSupport=(bbStringFind((BBSTRING)bbt_Extensions,((BBString*)&_s725),0)>-1);
	struct BBDebugStm __stmt_9 = {0x2b6c276386fc9654, 54, 0};
	bbOnDebugEnterStm(&__stmt_9);
	openb3d_openb3dcore_THardwareInfo_S3TCSupport=(bbStringFind((BBSTRING)bbt_Extensions,((BBString*)&_s726),0)>-1);
	struct BBDebugStm __stmt_10 = {0x2b6c276386fc9654, 55, 0};
	bbOnDebugEnterStm(&__stmt_10);
	openb3d_openb3dcore_THardwareInfo_MultiTexSupport=(bbStringFind((BBSTRING)bbt_Extensions,((BBString*)&_s727),0)>-1);
	struct BBDebugStm __stmt_11 = {0x2b6c276386fc9654, 56, 0};
	bbOnDebugEnterStm(&__stmt_11);
	openb3d_openb3dcore_THardwareInfo_CubemapSupport=(bbStringFind((BBSTRING)bbt_Extensions,((BBString*)&_s728),0)>-1);
	struct BBDebugStm __stmt_12 = {0x2b6c276386fc9654, 57, 0};
	bbOnDebugEnterStm(&__stmt_12);
	openb3d_openb3dcore_THardwareInfo_DepthmapSupport=(bbStringFind((BBSTRING)bbt_Extensions,((BBString*)&_s729),0)>-1);
	struct BBDebugStm __stmt_13 = {0x2b6c276386fc9654, 58, 0};
	bbOnDebugEnterStm(&__stmt_13);
	openb3d_openb3dcore_THardwareInfo_VPSupport=(bbStringFind((BBSTRING)bbt_Extensions,((BBString*)&_s730),0)>-1);
	struct BBDebugStm __stmt_14 = {0x2b6c276386fc9654, 59, 0};
	bbOnDebugEnterStm(&__stmt_14);
	openb3d_openb3dcore_THardwareInfo_FPSupport=(bbStringFind((BBSTRING)bbt_Extensions,((BBString*)&_s731),0)>-1);
	struct BBDebugStm __stmt_15 = {0x2b6c276386fc9654, 60, 0};
	bbOnDebugEnterStm(&__stmt_15);
	openb3d_openb3dcore_THardwareInfo_VBOSupport=(bbStringFind((BBSTRING)bbt_Extensions,((BBString*)&_s732),0)>-1);
	struct BBDebugStm __stmt_16 = {0x2b6c276386fc9654, 61, 0};
	bbOnDebugEnterStm(&__stmt_16);
	openb3d_openb3dcore_THardwareInfo_ShaderSupport=(bbStringFind((BBSTRING)bbt_Extensions,((BBString*)&_s733),0)>-1);
	struct BBDebugStm __stmt_17 = {0x2b6c276386fc9654, 62, 0};
	bbOnDebugEnterStm(&__stmt_17);
	openb3d_openb3dcore_THardwareInfo_VSSupport=(bbStringFind((BBSTRING)bbt_Extensions,((BBString*)&_s734),0)>-1);
	struct BBDebugStm __stmt_18 = {0x2b6c276386fc9654, 63, 0};
	bbOnDebugEnterStm(&__stmt_18);
	openb3d_openb3dcore_THardwareInfo_FSSupport=(bbStringFind((BBSTRING)bbt_Extensions,((BBString*)&_s735),0)>-1);
	struct BBDebugStm __stmt_19 = {0x2b6c276386fc9654, 64, 0};
	bbOnDebugEnterStm(&__stmt_19);
	openb3d_openb3dcore_THardwareInfo_SLSupport=(bbStringFind((BBSTRING)bbt_Extensions,((BBString*)&_s736),0)>-1);
	struct BBDebugStm __stmt_20 = {0x2b6c276386fc9654, 65, 0};
	bbOnDebugEnterStm(&__stmt_20);
	openb3d_openb3dcore_THardwareInfo_FBOSupport=(bbStringFind((BBSTRING)bbt_Extensions,((BBString*)&_s737),0)>-1);
	struct BBDebugStm __stmt_21 = {0x2b6c276386fc9654, 66, 0};
	bbOnDebugEnterStm(&__stmt_21);
	openb3d_openb3dcore_THardwareInfo_DepthStencil=(bbStringFind((BBSTRING)bbt_Extensions,((BBString*)&_s738),0)>-1);
	struct BBDebugStm __stmt_22 = {0x2b6c276386fc9654, 67, 0};
	bbOnDebugEnterStm(&__stmt_22);
	openb3d_openb3dcore_THardwareInfo_MultisampleSupport=(bbStringFind((BBSTRING)bbt_Extensions,((BBString*)&_s739),0)>-1);
	struct BBDebugStm __stmt_23 = {0x2b6c276386fc9654, 69, 0};
	bbOnDebugEnterStm(&__stmt_23);
	if((openb3d_openb3dcore_THardwareInfo_VSSupport==0) || (openb3d_openb3dcore_THardwareInfo_FSSupport==0)){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x2b6c276386fc9654, 70, 0};
		bbOnDebugEnterStm(&__stmt_0);
		openb3d_openb3dcore_THardwareInfo_ShaderSupport=0;
		bbOnDebugLeaveScope();
	}
	struct BBDebugStm __stmt_24 = {0x2b6c276386fc9654, 72, 0};
	bbOnDebugEnterStm(&__stmt_24);
	if(!(openb3d_openb3dcore_THardwareInfo_TexBlendSupport!=0)){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x2b6c276386fc9654, 73, 0};
		bbOnDebugEnterStm(&__stmt_0);
		openb3d_openb3dcore_THardwareInfo_TexBlendSupport=(bbStringFind((BBSTRING)bbt_Extensions,((BBString*)&_s740),0)>-1);
		bbOnDebugLeaveScope();
	}
	struct BBDebugStm __stmt_25 = {0x2b6c276386fc9654, 77, 0};
	bbOnDebugEnterStm(&__stmt_25);
	glGetIntegerv((GLenum)34018,(GLint*)(&openb3d_openb3dcore_THardwareInfo_MaxTextures));
	struct BBDebugStm __stmt_26 = {0x2b6c276386fc9654, 78, 0};
	bbOnDebugEnterStm(&__stmt_26);
	glGetIntegerv((GLenum)3379,(GLint*)(&openb3d_openb3dcore_THardwareInfo_MaxTexSize));
	struct BBDebugStm __stmt_27 = {0x2b6c276386fc9654, 79, 0};
	bbOnDebugEnterStm(&__stmt_27);
	glGetIntegerv((GLenum)3377,(GLint*)(&openb3d_openb3dcore_THardwareInfo_MaxLights));
	bbOnDebugLeaveScope();
	return 0;
}
BBINT openb3d_openb3dcore_THardwareInfo_DisplayInfo_i_i(BBINT bbt_LogFile){
	BBINT bbt_position=0;
	BBINT bbt_Space=0;
	struct brl_stream_TStream_obj* bbt_stream=(struct brl_stream_TStream_obj*)((struct brl_stream_TStream_obj*)&bbNullObject);
	struct BBDebugScope_4 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"DisplayInfo",
		{
			{
				BBDEBUGDECL_LOCAL,
				"LogFile",
				"i",
				.var_address=&bbt_LogFile
			},
			{
				BBDEBUGDECL_LOCAL,
				"position",
				"i",
				.var_address=&bbt_position
			},
			{
				BBDEBUGDECL_LOCAL,
				"Space",
				"i",
				.var_address=&bbt_Space
			},
			{
				BBDEBUGDECL_LOCAL,
				"stream",
				":TStream",
				.var_address=&bbt_stream
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x2b6c276386fc9654, 83, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbt_position=0;
	struct BBDebugStm __stmt_1 = {0x2b6c276386fc9654, 83, 0};
	bbOnDebugEnterStm(&__stmt_1);
	bbt_Space=0;
	struct BBDebugStm __stmt_2 = {0x2b6c276386fc9654, 83, 0};
	bbOnDebugEnterStm(&__stmt_2);
	bbt_stream=(struct brl_stream_TStream_obj*)((struct brl_stream_TStream_obj*)&bbNullObject);
	struct BBDebugStm __stmt_3 = {0x2b6c276386fc9654, 85, 0};
	bbOnDebugEnterStm(&__stmt_3);
	if(bbt_LogFile!=0){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x2b6c276386fc9654, 86, 0};
		bbOnDebugEnterStm(&__stmt_0);
		bbt_stream=(struct brl_stream_TStream_obj*)brl_stream_WriteStream((BBOBJECT)((BBString*)&_s741));
		struct BBDebugStm __stmt_1 = {0x2b6c276386fc9654, 87, 0};
		bbOnDebugEnterStm(&__stmt_1);
		((struct brl_stream_TStream_obj*)bbNullObjectTest((BBObject*)bbt_stream))->clas->m_WriteLine_S((struct brl_stream_TStream_obj*)bbt_stream,((BBString*)&_s742));
		struct BBDebugStm __stmt_2 = {0x2b6c276386fc9654, 88, 0};
		bbOnDebugEnterStm(&__stmt_2);
		((struct brl_stream_TStream_obj*)bbNullObjectTest((BBObject*)bbt_stream))->clas->m_WriteLine_S((struct brl_stream_TStream_obj*)bbt_stream,((BBString*)&bbEmptyString));
		struct BBDebugStm __stmt_3 = {0x2b6c276386fc9654, 91, 0};
		bbOnDebugEnterStm(&__stmt_3);
		((struct brl_stream_TStream_obj*)bbNullObjectTest((BBObject*)bbt_stream))->clas->m_WriteLine_S((struct brl_stream_TStream_obj*)bbt_stream,bbStringConcat(((BBString*)&_s743),bbStringFromInt(openb3d_openb3dcore_THardwareInfo_ScreenWidth)));
		struct BBDebugStm __stmt_4 = {0x2b6c276386fc9654, 92, 0};
		bbOnDebugEnterStm(&__stmt_4);
		((struct brl_stream_TStream_obj*)bbNullObjectTest((BBObject*)bbt_stream))->clas->m_WriteLine_S((struct brl_stream_TStream_obj*)bbt_stream,bbStringConcat(((BBString*)&_s744),bbStringFromInt(openb3d_openb3dcore_THardwareInfo_ScreenHeight)));
		struct BBDebugStm __stmt_5 = {0x2b6c276386fc9654, 93, 0};
		bbOnDebugEnterStm(&__stmt_5);
		((struct brl_stream_TStream_obj*)bbNullObjectTest((BBObject*)bbt_stream))->clas->m_WriteLine_S((struct brl_stream_TStream_obj*)bbt_stream,bbStringConcat(((BBString*)&_s745),bbStringFromInt(openb3d_openb3dcore_THardwareInfo_ScreenDepth)));
		struct BBDebugStm __stmt_6 = {0x2b6c276386fc9654, 94, 0};
		bbOnDebugEnterStm(&__stmt_6);
		((struct brl_stream_TStream_obj*)bbNullObjectTest((BBObject*)bbt_stream))->clas->m_WriteLine_S((struct brl_stream_TStream_obj*)bbt_stream,bbStringConcat(((BBString*)&_s746),bbStringFromInt(openb3d_openb3dcore_THardwareInfo_ScreenHertz)));
		struct BBDebugStm __stmt_7 = {0x2b6c276386fc9654, 95, 0};
		bbOnDebugEnterStm(&__stmt_7);
		((struct brl_stream_TStream_obj*)bbNullObjectTest((BBObject*)bbt_stream))->clas->m_WriteLine_S((struct brl_stream_TStream_obj*)bbt_stream,((BBString*)&bbEmptyString));
		struct BBDebugStm __stmt_8 = {0x2b6c276386fc9654, 98, 0};
		bbOnDebugEnterStm(&__stmt_8);
		((struct brl_stream_TStream_obj*)bbNullObjectTest((BBObject*)bbt_stream))->clas->m_WriteLine_S((struct brl_stream_TStream_obj*)bbt_stream,bbStringConcat(((BBString*)&_s747),openb3d_openb3dcore_THardwareInfo_Vendor));
		struct BBDebugStm __stmt_9 = {0x2b6c276386fc9654, 99, 0};
		bbOnDebugEnterStm(&__stmt_9);
		((struct brl_stream_TStream_obj*)bbNullObjectTest((BBObject*)bbt_stream))->clas->m_WriteLine_S((struct brl_stream_TStream_obj*)bbt_stream,bbStringConcat(((BBString*)&_s748),openb3d_openb3dcore_THardwareInfo_Renderer));
		struct BBDebugStm __stmt_10 = {0x2b6c276386fc9654, 100, 0};
		bbOnDebugEnterStm(&__stmt_10);
		((struct brl_stream_TStream_obj*)bbNullObjectTest((BBObject*)bbt_stream))->clas->m_WriteLine_S((struct brl_stream_TStream_obj*)bbt_stream,bbStringConcat(((BBString*)&_s749),openb3d_openb3dcore_THardwareInfo_OGLVersion));
		struct BBDebugStm __stmt_11 = {0x2b6c276386fc9654, 101, 0};
		bbOnDebugEnterStm(&__stmt_11);
		((struct brl_stream_TStream_obj*)bbNullObjectTest((BBObject*)bbt_stream))->clas->m_WriteLine_S((struct brl_stream_TStream_obj*)bbt_stream,((BBString*)&bbEmptyString));
		struct BBDebugStm __stmt_12 = {0x2b6c276386fc9654, 104, 0};
		bbOnDebugEnterStm(&__stmt_12);
		((struct brl_stream_TStream_obj*)bbNullObjectTest((BBObject*)bbt_stream))->clas->m_WriteLine_S((struct brl_stream_TStream_obj*)bbt_stream,bbStringConcat(((BBString*)&_s750),bbStringFromInt(openb3d_openb3dcore_THardwareInfo_MaxTextures)));
		struct BBDebugStm __stmt_13 = {0x2b6c276386fc9654, 105, 0};
		bbOnDebugEnterStm(&__stmt_13);
		((struct brl_stream_TStream_obj*)bbNullObjectTest((BBObject*)bbt_stream))->clas->m_WriteLine_S((struct brl_stream_TStream_obj*)bbt_stream,bbStringConcat(((BBString*)&_s751),bbStringFromInt(openb3d_openb3dcore_THardwareInfo_MaxTexSize)));
		struct BBDebugStm __stmt_14 = {0x2b6c276386fc9654, 106, 0};
		bbOnDebugEnterStm(&__stmt_14);
		((struct brl_stream_TStream_obj*)bbNullObjectTest((BBObject*)bbt_stream))->clas->m_WriteLine_S((struct brl_stream_TStream_obj*)bbt_stream,bbStringConcat(((BBString*)&_s752),bbStringFromInt(openb3d_openb3dcore_THardwareInfo_MaxLights)));
		struct BBDebugStm __stmt_15 = {0x2b6c276386fc9654, 107, 0};
		bbOnDebugEnterStm(&__stmt_15);
		((struct brl_stream_TStream_obj*)bbNullObjectTest((BBObject*)bbt_stream))->clas->m_WriteLine_S((struct brl_stream_TStream_obj*)bbt_stream,((BBString*)&bbEmptyString));
		struct BBDebugStm __stmt_16 = {0x2b6c276386fc9654, 110, 0};
		bbOnDebugEnterStm(&__stmt_16);
		((struct brl_stream_TStream_obj*)bbNullObjectTest((BBObject*)bbt_stream))->clas->m_WriteLine_S((struct brl_stream_TStream_obj*)bbt_stream,((BBString*)&_s753));
		struct BBDebugStm __stmt_17 = {0x2b6c276386fc9654, 111, 0};
		bbOnDebugEnterStm(&__stmt_17);
		while(bbt_position<(openb3d_openb3dcore_THardwareInfo_Extensions->length)){
			struct BBDebugScope __scope = {
				BBDEBUGSCOPE_LOCALBLOCK,
				0,
				{
					{
						BBDEBUGDECL_END
					}
				}
			};
			bbOnDebugEnterScope((BBDebugScope *)&__scope);
			struct BBDebugStm __stmt_0 = {0x2b6c276386fc9654, 112, 0};
			bbOnDebugEnterStm(&__stmt_0);
			bbt_Space=bbStringFind((BBSTRING)openb3d_openb3dcore_THardwareInfo_Extensions,((BBString*)&_s445),bbt_position);
			struct BBDebugStm __stmt_1 = {0x2b6c276386fc9654, 113, 0};
			bbOnDebugEnterStm(&__stmt_1);
			if(bbt_Space==-1){
				struct BBDebugScope __scope = {
					BBDEBUGSCOPE_LOCALBLOCK,
					0,
					{
						{
							BBDEBUGDECL_END
						}
					}
				};
				bbOnDebugEnterScope((BBDebugScope *)&__scope);
				struct BBDebugStm __stmt_0 = {0x2b6c276386fc9654, 113, 0};
				bbOnDebugEnterStm(&__stmt_0);
				bbOnDebugLeaveScope();
				bbOnDebugLeaveScope();
				break;
			}
			struct BBDebugStm __stmt_2 = {0x2b6c276386fc9654, 114, 0};
			bbOnDebugEnterStm(&__stmt_2);
			((struct brl_stream_TStream_obj*)bbNullObjectTest((BBObject*)bbt_stream))->clas->m_WriteLine_S((struct brl_stream_TStream_obj*)bbt_stream,bbStringSlice(openb3d_openb3dcore_THardwareInfo_Extensions,bbt_position,bbt_Space));
			struct BBDebugStm __stmt_3 = {0x2b6c276386fc9654, 115, 0};
			bbOnDebugEnterStm(&__stmt_3);
			bbt_position=(bbt_Space+1);
			bbOnDebugLeaveScope();
		}
		struct BBDebugStm __stmt_18 = {0x2b6c276386fc9654, 118, 0};
		bbOnDebugEnterStm(&__stmt_18);
		((struct brl_stream_TStream_obj*)bbNullObjectTest((BBObject*)bbt_stream))->clas->m_WriteLine_S((struct brl_stream_TStream_obj*)bbt_stream,((BBString*)&bbEmptyString));
		struct BBDebugStm __stmt_19 = {0x2b6c276386fc9654, 119, 0};
		bbOnDebugEnterStm(&__stmt_19);
		((struct brl_stream_TStream_obj*)bbNullObjectTest((BBObject*)bbt_stream))->clas->m_WriteLine_S((struct brl_stream_TStream_obj*)bbt_stream,((BBString*)&_s754));
		struct BBDebugStm __stmt_20 = {0x2b6c276386fc9654, 120, 0};
		bbOnDebugEnterStm(&__stmt_20);
		((struct brl_stream_TStream_obj*)bbNullObjectTest((BBObject*)bbt_stream))->clas->m_Close((struct brl_stream_TIO_obj*)bbt_stream);
		bbOnDebugLeaveScope();
	}else{
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x2b6c276386fc9654, 122, 0};
		bbOnDebugEnterStm(&__stmt_0);
		brl_standardio_Print((BBString*)&_s742);
		struct BBDebugStm __stmt_1 = {0x2b6c276386fc9654, 123, 0};
		bbOnDebugEnterStm(&__stmt_1);
		brl_standardio_Print((BBString*)&bbEmptyString);
		struct BBDebugStm __stmt_2 = {0x2b6c276386fc9654, 126, 0};
		bbOnDebugEnterStm(&__stmt_2);
		brl_standardio_Print(bbStringConcat(((BBString*)&_s743),bbStringFromInt(openb3d_openb3dcore_THardwareInfo_ScreenWidth)));
		struct BBDebugStm __stmt_3 = {0x2b6c276386fc9654, 127, 0};
		bbOnDebugEnterStm(&__stmt_3);
		brl_standardio_Print(bbStringConcat(((BBString*)&_s744),bbStringFromInt(openb3d_openb3dcore_THardwareInfo_ScreenHeight)));
		struct BBDebugStm __stmt_4 = {0x2b6c276386fc9654, 128, 0};
		bbOnDebugEnterStm(&__stmt_4);
		brl_standardio_Print(bbStringConcat(((BBString*)&_s745),bbStringFromInt(openb3d_openb3dcore_THardwareInfo_ScreenDepth)));
		struct BBDebugStm __stmt_5 = {0x2b6c276386fc9654, 129, 0};
		bbOnDebugEnterStm(&__stmt_5);
		brl_standardio_Print(bbStringConcat(((BBString*)&_s746),bbStringFromInt(openb3d_openb3dcore_THardwareInfo_ScreenHertz)));
		struct BBDebugStm __stmt_6 = {0x2b6c276386fc9654, 130, 0};
		bbOnDebugEnterStm(&__stmt_6);
		brl_standardio_Print((BBString*)&bbEmptyString);
		struct BBDebugStm __stmt_7 = {0x2b6c276386fc9654, 133, 0};
		bbOnDebugEnterStm(&__stmt_7);
		brl_standardio_Print(bbStringConcat(((BBString*)&_s747),openb3d_openb3dcore_THardwareInfo_Vendor));
		struct BBDebugStm __stmt_8 = {0x2b6c276386fc9654, 134, 0};
		bbOnDebugEnterStm(&__stmt_8);
		brl_standardio_Print(bbStringConcat(((BBString*)&_s748),openb3d_openb3dcore_THardwareInfo_Renderer));
		struct BBDebugStm __stmt_9 = {0x2b6c276386fc9654, 135, 0};
		bbOnDebugEnterStm(&__stmt_9);
		brl_standardio_Print(bbStringConcat(((BBString*)&_s749),openb3d_openb3dcore_THardwareInfo_OGLVersion));
		struct BBDebugStm __stmt_10 = {0x2b6c276386fc9654, 136, 0};
		bbOnDebugEnterStm(&__stmt_10);
		brl_standardio_Print((BBString*)&bbEmptyString);
		struct BBDebugStm __stmt_11 = {0x2b6c276386fc9654, 139, 0};
		bbOnDebugEnterStm(&__stmt_11);
		brl_standardio_Print(bbStringConcat(((BBString*)&_s750),bbStringFromInt(openb3d_openb3dcore_THardwareInfo_MaxTextures)));
		struct BBDebugStm __stmt_12 = {0x2b6c276386fc9654, 140, 0};
		bbOnDebugEnterStm(&__stmt_12);
		brl_standardio_Print(bbStringConcat(((BBString*)&_s751),bbStringFromInt(openb3d_openb3dcore_THardwareInfo_MaxTexSize)));
		struct BBDebugStm __stmt_13 = {0x2b6c276386fc9654, 141, 0};
		bbOnDebugEnterStm(&__stmt_13);
		brl_standardio_Print(bbStringConcat(((BBString*)&_s752),bbStringFromInt(openb3d_openb3dcore_THardwareInfo_MaxLights)));
		struct BBDebugStm __stmt_14 = {0x2b6c276386fc9654, 142, 0};
		bbOnDebugEnterStm(&__stmt_14);
		brl_standardio_Print((BBString*)&bbEmptyString);
		struct BBDebugStm __stmt_15 = {0x2b6c276386fc9654, 145, 0};
		bbOnDebugEnterStm(&__stmt_15);
		brl_standardio_Print((BBString*)&_s753);
		struct BBDebugStm __stmt_16 = {0x2b6c276386fc9654, 146, 0};
		bbOnDebugEnterStm(&__stmt_16);
		while(bbt_position<(openb3d_openb3dcore_THardwareInfo_Extensions->length)){
			struct BBDebugScope __scope = {
				BBDEBUGSCOPE_LOCALBLOCK,
				0,
				{
					{
						BBDEBUGDECL_END
					}
				}
			};
			bbOnDebugEnterScope((BBDebugScope *)&__scope);
			struct BBDebugStm __stmt_0 = {0x2b6c276386fc9654, 147, 0};
			bbOnDebugEnterStm(&__stmt_0);
			bbt_Space=bbStringFind((BBSTRING)openb3d_openb3dcore_THardwareInfo_Extensions,((BBString*)&_s445),bbt_position);
			struct BBDebugStm __stmt_1 = {0x2b6c276386fc9654, 148, 0};
			bbOnDebugEnterStm(&__stmt_1);
			if(bbt_Space==-1){
				struct BBDebugScope __scope = {
					BBDEBUGSCOPE_LOCALBLOCK,
					0,
					{
						{
							BBDEBUGDECL_END
						}
					}
				};
				bbOnDebugEnterScope((BBDebugScope *)&__scope);
				struct BBDebugStm __stmt_0 = {0x2b6c276386fc9654, 148, 0};
				bbOnDebugEnterStm(&__stmt_0);
				bbOnDebugLeaveScope();
				bbOnDebugLeaveScope();
				break;
			}
			struct BBDebugStm __stmt_2 = {0x2b6c276386fc9654, 149, 0};
			bbOnDebugEnterStm(&__stmt_2);
			brl_standardio_Print(bbStringSlice(openb3d_openb3dcore_THardwareInfo_Extensions,bbt_position,bbt_Space));
			struct BBDebugStm __stmt_3 = {0x2b6c276386fc9654, 150, 0};
			bbOnDebugEnterStm(&__stmt_3);
			bbt_position=(bbt_Space+1);
			bbOnDebugLeaveScope();
		}
		struct BBDebugStm __stmt_17 = {0x2b6c276386fc9654, 153, 0};
		bbOnDebugEnterStm(&__stmt_17);
		brl_standardio_Print((BBString*)&bbEmptyString);
		struct BBDebugStm __stmt_18 = {0x2b6c276386fc9654, 154, 0};
		bbOnDebugEnterStm(&__stmt_18);
		brl_standardio_Print((BBString*)&_s754);
		bbOnDebugLeaveScope();
	}
	bbOnDebugLeaveScope();
	return 0;
}
BBINT openb3d_openb3dcore_THardwareInfo_DepthStencil;
BBINT openb3d_openb3dcore_THardwareInfo_ScreenWidth;
BBINT openb3d_openb3dcore_THardwareInfo_ScreenHeight;
BBINT openb3d_openb3dcore_THardwareInfo_ScreenDepth;
BBINT openb3d_openb3dcore_THardwareInfo_ScreenHertz;
BBSTRING openb3d_openb3dcore_THardwareInfo_Vendor;
BBSTRING openb3d_openb3dcore_THardwareInfo_Renderer;
BBSTRING openb3d_openb3dcore_THardwareInfo_OGLVersion;
BBSTRING openb3d_openb3dcore_THardwareInfo_Extensions;
BBINT openb3d_openb3dcore_THardwareInfo_MaxTextures;
BBINT openb3d_openb3dcore_THardwareInfo_MaxTexSize;
BBINT openb3d_openb3dcore_THardwareInfo_MaxLights;
BBINT openb3d_openb3dcore_THardwareInfo_TexBlendSupport;
BBINT openb3d_openb3dcore_THardwareInfo_AnIsoSupport;
BBINT openb3d_openb3dcore_THardwareInfo_GLTCSupport;
BBINT openb3d_openb3dcore_THardwareInfo_S3TCSupport;
BBINT openb3d_openb3dcore_THardwareInfo_MultiTexSupport;
BBINT openb3d_openb3dcore_THardwareInfo_CubemapSupport;
BBINT openb3d_openb3dcore_THardwareInfo_DepthmapSupport;
BBINT openb3d_openb3dcore_THardwareInfo_VPSupport;
BBINT openb3d_openb3dcore_THardwareInfo_FPSupport;
BBINT openb3d_openb3dcore_THardwareInfo_VBOSupport;
BBINT openb3d_openb3dcore_THardwareInfo_ShaderSupport;
BBINT openb3d_openb3dcore_THardwareInfo_VSSupport;
BBINT openb3d_openb3dcore_THardwareInfo_FSSupport;
BBINT openb3d_openb3dcore_THardwareInfo_SLSupport;
BBINT openb3d_openb3dcore_THardwareInfo_FBOSupport;
BBINT openb3d_openb3dcore_THardwareInfo_MultisampleSupport;
struct BBDebugScope_31 openb3d_openb3dcore_THardwareInfo_scope ={
	BBDEBUGSCOPE_USERTYPE,
	"THardwareInfo",
	{
		{
			BBDEBUGDECL_GLOBAL,
			"ScreenWidth",
			"i",
			.var_address=(void*)&openb3d_openb3dcore_THardwareInfo_ScreenWidth
		},
		{
			BBDEBUGDECL_GLOBAL,
			"ScreenHeight",
			"i",
			.var_address=(void*)&openb3d_openb3dcore_THardwareInfo_ScreenHeight
		},
		{
			BBDEBUGDECL_GLOBAL,
			"ScreenDepth",
			"i",
			.var_address=(void*)&openb3d_openb3dcore_THardwareInfo_ScreenDepth
		},
		{
			BBDEBUGDECL_GLOBAL,
			"ScreenHertz",
			"i",
			.var_address=(void*)&openb3d_openb3dcore_THardwareInfo_ScreenHertz
		},
		{
			BBDEBUGDECL_GLOBAL,
			"Vendor",
			"$",
			.var_address=(void*)&openb3d_openb3dcore_THardwareInfo_Vendor
		},
		{
			BBDEBUGDECL_GLOBAL,
			"Renderer",
			"$",
			.var_address=(void*)&openb3d_openb3dcore_THardwareInfo_Renderer
		},
		{
			BBDEBUGDECL_GLOBAL,
			"OGLVersion",
			"$",
			.var_address=(void*)&openb3d_openb3dcore_THardwareInfo_OGLVersion
		},
		{
			BBDEBUGDECL_GLOBAL,
			"Extensions",
			"$",
			.var_address=(void*)&openb3d_openb3dcore_THardwareInfo_Extensions
		},
		{
			BBDEBUGDECL_GLOBAL,
			"MaxTextures",
			"i",
			.var_address=(void*)&openb3d_openb3dcore_THardwareInfo_MaxTextures
		},
		{
			BBDEBUGDECL_GLOBAL,
			"MaxTexSize",
			"i",
			.var_address=(void*)&openb3d_openb3dcore_THardwareInfo_MaxTexSize
		},
		{
			BBDEBUGDECL_GLOBAL,
			"MaxLights",
			"i",
			.var_address=(void*)&openb3d_openb3dcore_THardwareInfo_MaxLights
		},
		{
			BBDEBUGDECL_GLOBAL,
			"TexBlendSupport",
			"i",
			.var_address=(void*)&openb3d_openb3dcore_THardwareInfo_TexBlendSupport
		},
		{
			BBDEBUGDECL_GLOBAL,
			"AnIsoSupport",
			"i",
			.var_address=(void*)&openb3d_openb3dcore_THardwareInfo_AnIsoSupport
		},
		{
			BBDEBUGDECL_GLOBAL,
			"GLTCSupport",
			"i",
			.var_address=(void*)&openb3d_openb3dcore_THardwareInfo_GLTCSupport
		},
		{
			BBDEBUGDECL_GLOBAL,
			"S3TCSupport",
			"i",
			.var_address=(void*)&openb3d_openb3dcore_THardwareInfo_S3TCSupport
		},
		{
			BBDEBUGDECL_GLOBAL,
			"MultiTexSupport",
			"i",
			.var_address=(void*)&openb3d_openb3dcore_THardwareInfo_MultiTexSupport
		},
		{
			BBDEBUGDECL_GLOBAL,
			"CubemapSupport",
			"i",
			.var_address=(void*)&openb3d_openb3dcore_THardwareInfo_CubemapSupport
		},
		{
			BBDEBUGDECL_GLOBAL,
			"DepthmapSupport",
			"i",
			.var_address=(void*)&openb3d_openb3dcore_THardwareInfo_DepthmapSupport
		},
		{
			BBDEBUGDECL_GLOBAL,
			"VPSupport",
			"i",
			.var_address=(void*)&openb3d_openb3dcore_THardwareInfo_VPSupport
		},
		{
			BBDEBUGDECL_GLOBAL,
			"FPSupport",
			"i",
			.var_address=(void*)&openb3d_openb3dcore_THardwareInfo_FPSupport
		},
		{
			BBDEBUGDECL_GLOBAL,
			"VBOSupport",
			"i",
			.var_address=(void*)&openb3d_openb3dcore_THardwareInfo_VBOSupport
		},
		{
			BBDEBUGDECL_GLOBAL,
			"ShaderSupport",
			"i",
			.var_address=(void*)&openb3d_openb3dcore_THardwareInfo_ShaderSupport
		},
		{
			BBDEBUGDECL_GLOBAL,
			"VSSupport",
			"i",
			.var_address=(void*)&openb3d_openb3dcore_THardwareInfo_VSSupport
		},
		{
			BBDEBUGDECL_GLOBAL,
			"FSSupport",
			"i",
			.var_address=(void*)&openb3d_openb3dcore_THardwareInfo_FSSupport
		},
		{
			BBDEBUGDECL_GLOBAL,
			"SLSupport",
			"i",
			.var_address=(void*)&openb3d_openb3dcore_THardwareInfo_SLSupport
		},
		{
			BBDEBUGDECL_GLOBAL,
			"FBOSupport",
			"i",
			.var_address=(void*)&openb3d_openb3dcore_THardwareInfo_FBOSupport
		},
		{
			BBDEBUGDECL_GLOBAL,
			"DepthStencil",
			"i",
			.var_address=(void*)&openb3d_openb3dcore_THardwareInfo_DepthStencil
		},
		{
			BBDEBUGDECL_GLOBAL,
			"MultisampleSupport",
			"i",
			.var_address=(void*)&openb3d_openb3dcore_THardwareInfo_MultisampleSupport
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"New",
			"()i",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_THardwareInfo_New
		},
		{
			BBDEBUGDECL_TYPEFUNCTION,
			"GetInfo",
			"()i",
			.func_ptr=(BBFuncPtr)&openb3d_openb3dcore_THardwareInfo_GetInfo_i
		},
		{
			BBDEBUGDECL_TYPEFUNCTION,
			"DisplayInfo",
			"(i)i",
			.func_ptr=(BBFuncPtr)&openb3d_openb3dcore_THardwareInfo_DisplayInfo_i_i
		},
		{
			BBDEBUGDECL_END
		}
	}
};
struct BBClass_openb3d_openb3dcore_THardwareInfo openb3d_openb3dcore_THardwareInfo={
	&bbObjectClass,
	bbObjectFree,
	(BBDebugScope*)&openb3d_openb3dcore_THardwareInfo_scope,
	sizeof(struct openb3d_openb3dcore_THardwareInfo_obj),
	(void (*)(BBOBJECT))_openb3d_openb3dcore_THardwareInfo_New,
	bbObjectDtor,
	bbObjectToString,
	bbObjectCompare,
	bbObjectSendMessage,
	0,
	0,
	0
	,0
	,sizeof(void*)
	,openb3d_openb3dcore_THardwareInfo_GetInfo_i
	,openb3d_openb3dcore_THardwareInfo_DisplayInfo_i_i
};

void _openb3d_openb3dcore_TStencil_New(struct openb3d_openb3dcore_TStencil_obj* o) {
	bbObjectCtor((BBOBJECT)o);
	o->clas = &openb3d_openb3dcore_TStencil;
	((struct openb3d_openb3dcore_TStencil_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tstencil_instance = 0;
	((struct openb3d_openb3dcore_TStencil_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tstencil_exists = 0;
}
struct openb3d_openb3dcore_TStencil_obj* openb3d_openb3dcore_TStencil_CreateObject_TTStencil_pb(BBBYTE* bbt_inst){
	struct openb3d_openb3dcore_TStencil_obj* bbt_obj=(struct openb3d_openb3dcore_TStencil_obj*)((struct openb3d_openb3dcore_TStencil_obj*)&bbNullObject);
	struct BBDebugScope_2 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"CreateObject",
		{
			{
				BBDEBUGDECL_LOCAL,
				"inst",
				"*b",
				.var_address=&bbt_inst
			},
			{
				BBDEBUGDECL_LOCAL,
				"obj",
				":TStencil",
				.var_address=&bbt_obj
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x809f51191e0b706a, 19, 0};
	bbOnDebugEnterStm(&__stmt_0);
	if(bbt_inst==0){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x809f51191e0b706a, 19, 0};
		bbOnDebugEnterStm(&__stmt_0);
		bbOnDebugLeaveScope();
		bbOnDebugLeaveScope();
		return (struct openb3d_openb3dcore_TStencil_obj*)&bbNullObject;
	}
	struct BBDebugStm __stmt_1 = {0x809f51191e0b706a, 20, 0};
	bbOnDebugEnterStm(&__stmt_1);
	bbt_obj=(struct openb3d_openb3dcore_TStencil_obj*)(struct openb3d_openb3dcore_TStencil_obj*)bbObjectAtomicNew((BBClass *)&openb3d_openb3dcore_TStencil);
	struct BBDebugStm __stmt_2 = {0x809f51191e0b706a, 22, 0};
	bbOnDebugEnterStm(&__stmt_2);
	((struct brl_map_ptrmap_TPtrMap_obj*)bbNullObjectTest((BBObject*)openb3d_openb3dcore_TStencil_stencil_map))->clas->m_Insert_pbTObject((struct brl_map_ptrmap_TPtrMap_obj*)openb3d_openb3dcore_TStencil_stencil_map,bbt_inst,(BBOBJECT)bbt_obj);
	struct BBDebugStm __stmt_3 = {0x809f51191e0b706a, 26, 0};
	bbOnDebugEnterStm(&__stmt_3);
	((struct openb3d_openb3dcore_TStencil_obj*)bbNullObjectTest((BBObject*)bbt_obj))->_openb3d_openb3dcore_tstencil_instance =bbt_inst;
	struct BBDebugStm __stmt_4 = {0x809f51191e0b706a, 27, 0};
	bbOnDebugEnterStm(&__stmt_4);
	((struct openb3d_openb3dcore_TStencil_obj*)bbNullObjectTest((BBObject*)bbt_obj))->clas->m_InitFields((struct openb3d_openb3dcore_TStencil_obj*)bbt_obj);
	struct BBDebugStm __stmt_5 = {0x809f51191e0b706a, 28, 0};
	bbOnDebugEnterStm(&__stmt_5);
	bbOnDebugLeaveScope();
	return (struct openb3d_openb3dcore_TStencil_obj*)bbt_obj;
}
BBINT openb3d_openb3dcore_TStencil_FreeObject_i_pb(BBBYTE* bbt_inst){
	struct BBDebugScope_1 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"FreeObject",
		{
			{
				BBDEBUGDECL_LOCAL,
				"inst",
				"*b",
				.var_address=&bbt_inst
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x809f51191e0b706a, 35, 0};
	bbOnDebugEnterStm(&__stmt_0);
	((struct brl_map_ptrmap_TPtrMap_obj*)bbNullObjectTest((BBObject*)openb3d_openb3dcore_TStencil_stencil_map))->clas->m_Remove_pb((struct brl_map_ptrmap_TPtrMap_obj*)openb3d_openb3dcore_TStencil_stencil_map,bbt_inst);
	bbOnDebugLeaveScope();
	return 0;
}
struct openb3d_openb3dcore_TStencil_obj* openb3d_openb3dcore_TStencil_GetObject_TTStencil_pb(BBBYTE* bbt_inst){
	struct BBDebugScope_1 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"GetObject",
		{
			{
				BBDEBUGDECL_LOCAL,
				"inst",
				"*b",
				.var_address=&bbt_inst
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x809f51191e0b706a, 45, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbOnDebugLeaveScope();
	return (struct openb3d_openb3dcore_TStencil_obj*)((struct openb3d_openb3dcore_TStencil_obj*)bbObjectDowncast((BBOBJECT)((struct brl_map_ptrmap_TPtrMap_obj*)bbNullObjectTest((BBObject*)openb3d_openb3dcore_TStencil_stencil_map))->clas->m_ValueForKey_pb((struct brl_map_ptrmap_TPtrMap_obj*)openb3d_openb3dcore_TStencil_stencil_map,bbt_inst),(BBClass*)&openb3d_openb3dcore_TStencil));
}
BBBYTE* openb3d_openb3dcore_TStencil_GetInstance_pb_TTStencil(struct openb3d_openb3dcore_TStencil_obj* bbt_obj){
	struct BBDebugScope_1 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"GetInstance",
		{
			{
				BBDEBUGDECL_LOCAL,
				"obj",
				":TStencil",
				.var_address=&bbt_obj
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x809f51191e0b706a, 54, 0};
	bbOnDebugEnterStm(&__stmt_0);
	if(((BBOBJECT)bbt_obj)==&bbNullObject){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x809f51191e0b706a, 54, 0};
		bbOnDebugEnterStm(&__stmt_0);
		bbOnDebugLeaveScope();
		bbOnDebugLeaveScope();
		return 0;
	}
	struct BBDebugStm __stmt_1 = {0x809f51191e0b706a, 55, 0};
	bbOnDebugEnterStm(&__stmt_1);
	bbOnDebugLeaveScope();
	return ((struct openb3d_openb3dcore_TStencil_obj*)bbNullObjectTest((BBObject*)bbt_obj))->_openb3d_openb3dcore_tstencil_instance ;
}
BBINT _openb3d_openb3dcore_TStencil_InitFields(struct openb3d_openb3dcore_TStencil_obj* o){
	((struct openb3d_openb3dcore_TStencil_obj*)bbNullObjectTest((BBObject*)o));
	struct BBDebugScope_1 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"InitFields",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TStencil",
				.var_address=&o
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x809f51191e0b706a, 61, 0};
	bbOnDebugEnterStm(&__stmt_0);
	((struct openb3d_openb3dcore_TStencil_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tstencil_exists =1;
	bbOnDebugLeaveScope();
	return 0;
}
struct openb3d_openb3dcore_TStencil_obj* openb3d_openb3dcore_TStencil_CreateStencil_TTStencil(){
	BBBYTE* bbt_inst=0;
	struct BBDebugScope_1 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"CreateStencil",
		{
			{
				BBDEBUGDECL_LOCAL,
				"inst",
				"*b",
				.var_address=&bbt_inst
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x809f51191e0b706a, 69, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbt_inst=CreateStencil_();
	struct BBDebugStm __stmt_1 = {0x809f51191e0b706a, 70, 0};
	bbOnDebugEnterStm(&__stmt_1);
	bbOnDebugLeaveScope();
	return (struct openb3d_openb3dcore_TStencil_obj*)openb3d_openb3dcore_TStencil_CreateObject_TTStencil_pb(bbt_inst);
}
BBINT _openb3d_openb3dcore_TStencil_StencilAlpha_f(struct openb3d_openb3dcore_TStencil_obj* o,BBFLOAT bbt_a){
	((struct openb3d_openb3dcore_TStencil_obj*)bbNullObjectTest((BBObject*)o));
	struct BBDebugScope_2 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"StencilAlpha",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TStencil",
				.var_address=&o
			},
			{
				BBDEBUGDECL_LOCAL,
				"a",
				"f",
				.var_address=&bbt_a
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x809f51191e0b706a, 76, 0};
	bbOnDebugEnterStm(&__stmt_0);
	StencilAlpha_(o->clas->f_GetInstance_pb_TTStencil((struct openb3d_openb3dcore_TStencil_obj*)o),bbt_a);
	bbOnDebugLeaveScope();
	return 0;
}
BBINT _openb3d_openb3dcore_TStencil_StencilClsColor_fff(struct openb3d_openb3dcore_TStencil_obj* o,BBFLOAT bbt_r,BBFLOAT bbt_g,BBFLOAT bbt_b){
	((struct openb3d_openb3dcore_TStencil_obj*)bbNullObjectTest((BBObject*)o));
	struct BBDebugScope_4 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"StencilClsColor",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TStencil",
				.var_address=&o
			},
			{
				BBDEBUGDECL_LOCAL,
				"r",
				"f",
				.var_address=&bbt_r
			},
			{
				BBDEBUGDECL_LOCAL,
				"g",
				"f",
				.var_address=&bbt_g
			},
			{
				BBDEBUGDECL_LOCAL,
				"b",
				"f",
				.var_address=&bbt_b
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x809f51191e0b706a, 82, 0};
	bbOnDebugEnterStm(&__stmt_0);
	StencilClsColor_(o->clas->f_GetInstance_pb_TTStencil((struct openb3d_openb3dcore_TStencil_obj*)o),bbt_r,bbt_g,bbt_b);
	bbOnDebugLeaveScope();
	return 0;
}
BBINT _openb3d_openb3dcore_TStencil_StencilClsMode_ii(struct openb3d_openb3dcore_TStencil_obj* o,BBINT bbt_cls_color,BBINT bbt_cls_zbuffer){
	((struct openb3d_openb3dcore_TStencil_obj*)bbNullObjectTest((BBObject*)o));
	struct BBDebugScope_3 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"StencilClsMode",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TStencil",
				.var_address=&o
			},
			{
				BBDEBUGDECL_LOCAL,
				"cls_color",
				"i",
				.var_address=&bbt_cls_color
			},
			{
				BBDEBUGDECL_LOCAL,
				"cls_zbuffer",
				"i",
				.var_address=&bbt_cls_zbuffer
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x809f51191e0b706a, 88, 0};
	bbOnDebugEnterStm(&__stmt_0);
	StencilClsMode_(o->clas->f_GetInstance_pb_TTStencil((struct openb3d_openb3dcore_TStencil_obj*)o),bbt_cls_color,bbt_cls_zbuffer);
	bbOnDebugLeaveScope();
	return 0;
}
BBINT _openb3d_openb3dcore_TStencil_StencilMesh_TTMeshi(struct openb3d_openb3dcore_TStencil_obj* o,struct openb3d_openb3dcore_TMesh_obj* bbt_mesh,BBINT bbt_Mode){
	((struct openb3d_openb3dcore_TStencil_obj*)bbNullObjectTest((BBObject*)o));
	struct BBDebugScope_3 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"StencilMesh",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TStencil",
				.var_address=&o
			},
			{
				BBDEBUGDECL_LOCAL,
				"mesh",
				":TMesh",
				.var_address=&bbt_mesh
			},
			{
				BBDEBUGDECL_LOCAL,
				"Mode",
				"i",
				.var_address=&bbt_Mode
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x809f51191e0b706a, 94, 0};
	bbOnDebugEnterStm(&__stmt_0);
	StencilMesh_(o->clas->f_GetInstance_pb_TTStencil((struct openb3d_openb3dcore_TStencil_obj*)o),openb3d_openb3dcore_TEntity_GetInstance_pb_TTEntity((struct openb3d_openb3dcore_TEntity_obj*)((struct openb3d_openb3dcore_TEntity_obj*)bbObjectDowncast((BBOBJECT)bbt_mesh,(BBClass*)&openb3d_openb3dcore_TEntity))),bbt_Mode);
	bbOnDebugLeaveScope();
	return 0;
}
BBINT _openb3d_openb3dcore_TStencil_StencilMode_ii(struct openb3d_openb3dcore_TStencil_obj* o,BBINT bbt_m,BBINT bbt_o){
	((struct openb3d_openb3dcore_TStencil_obj*)bbNullObjectTest((BBObject*)o));
	struct BBDebugScope_3 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"StencilMode",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TStencil",
				.var_address=&o
			},
			{
				BBDEBUGDECL_LOCAL,
				"m",
				"i",
				.var_address=&bbt_m
			},
			{
				BBDEBUGDECL_LOCAL,
				"o",
				"i",
				.var_address=&bbt_o
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x809f51191e0b706a, 100, 0};
	bbOnDebugEnterStm(&__stmt_0);
	StencilMode_(o->clas->f_GetInstance_pb_TTStencil((struct openb3d_openb3dcore_TStencil_obj*)o),bbt_m,bbt_o);
	bbOnDebugLeaveScope();
	return 0;
}
BBINT openb3d_openb3dcore_TStencil_UseStencil_i_TTStencil(struct openb3d_openb3dcore_TStencil_obj* bbt_sten){
	struct BBDebugScope_1 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"UseStencil",
		{
			{
				BBDEBUGDECL_LOCAL,
				"sten",
				":TStencil",
				.var_address=&bbt_sten
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x809f51191e0b706a, 106, 0};
	bbOnDebugEnterStm(&__stmt_0);
	UseStencil_(openb3d_openb3dcore_TStencil_GetInstance_pb_TTStencil((struct openb3d_openb3dcore_TStencil_obj*)bbt_sten));
	bbOnDebugLeaveScope();
	return 0;
}
BBINT _openb3d_openb3dcore_TStencil_FreeStencil(struct openb3d_openb3dcore_TStencil_obj* o){
	((struct openb3d_openb3dcore_TStencil_obj*)bbNullObjectTest((BBObject*)o));
	struct BBDebugScope_1 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"FreeStencil",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TStencil",
				.var_address=&o
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x809f51191e0b706a, 112, 0};
	bbOnDebugEnterStm(&__stmt_0);
	if(((struct openb3d_openb3dcore_TStencil_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tstencil_exists !=0){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x809f51191e0b706a, 113, 0};
		bbOnDebugEnterStm(&__stmt_0);
		((struct openb3d_openb3dcore_TStencil_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tstencil_exists =0;
		struct BBDebugStm __stmt_1 = {0x809f51191e0b706a, 114, 0};
		bbOnDebugEnterStm(&__stmt_1);
		FreeStencil_(o->clas->f_GetInstance_pb_TTStencil((struct openb3d_openb3dcore_TStencil_obj*)o));
		struct BBDebugStm __stmt_2 = {0x809f51191e0b706a, 115, 0};
		bbOnDebugEnterStm(&__stmt_2);
		o->clas->f_FreeObject_i_pb(o->clas->f_GetInstance_pb_TTStencil((struct openb3d_openb3dcore_TStencil_obj*)o));
		bbOnDebugLeaveScope();
	}
	bbOnDebugLeaveScope();
	return 0;
}
struct brl_map_ptrmap_TPtrMap_obj* openb3d_openb3dcore_TStencil_stencil_map;
struct BBDebugScope_17 openb3d_openb3dcore_TStencil_scope ={
	BBDEBUGSCOPE_USERTYPE,
	"TStencil",
	{
		{
			BBDEBUGDECL_FIELD,
			"instance",
			"*b",
			.field_offset=offsetof(struct openb3d_openb3dcore_TStencil_obj,_openb3d_openb3dcore_tstencil_instance)
		},
		{
			BBDEBUGDECL_FIELD,
			"exists",
			"i",
			.field_offset=offsetof(struct openb3d_openb3dcore_TStencil_obj,_openb3d_openb3dcore_tstencil_exists)
		},
		{
			BBDEBUGDECL_GLOBAL,
			"stencil_map",
			":TPtrMap",
			.var_address=(void*)&openb3d_openb3dcore_TStencil_stencil_map
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"New",
			"()i",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_TStencil_New
		},
		{
			BBDEBUGDECL_TYPEFUNCTION,
			"CreateObject",
			"(*b):TStencil",
			.func_ptr=(BBFuncPtr)&openb3d_openb3dcore_TStencil_CreateObject_TTStencil_pb
		},
		{
			BBDEBUGDECL_TYPEFUNCTION,
			"FreeObject",
			"(*b)i",
			.func_ptr=(BBFuncPtr)&openb3d_openb3dcore_TStencil_FreeObject_i_pb
		},
		{
			BBDEBUGDECL_TYPEFUNCTION,
			"GetObject",
			"(*b):TStencil",
			.func_ptr=(BBFuncPtr)&openb3d_openb3dcore_TStencil_GetObject_TTStencil_pb
		},
		{
			BBDEBUGDECL_TYPEFUNCTION,
			"GetInstance",
			"(:TStencil)*b",
			.func_ptr=(BBFuncPtr)&openb3d_openb3dcore_TStencil_GetInstance_pb_TTStencil
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"InitFields",
			"()i",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_TStencil_InitFields
		},
		{
			BBDEBUGDECL_TYPEFUNCTION,
			"CreateStencil",
			"():TStencil",
			.func_ptr=(BBFuncPtr)&openb3d_openb3dcore_TStencil_CreateStencil_TTStencil
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"StencilAlpha",
			"(f)i",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_TStencil_StencilAlpha_f
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"StencilClsColor",
			"(f,f,f)i",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_TStencil_StencilClsColor_fff
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"StencilClsMode",
			"(i,i)i",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_TStencil_StencilClsMode_ii
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"StencilMesh",
			"(:TMesh,i)i",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_TStencil_StencilMesh_TTMeshi
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"StencilMode",
			"(i,i)i",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_TStencil_StencilMode_ii
		},
		{
			BBDEBUGDECL_TYPEFUNCTION,
			"UseStencil",
			"(:TStencil)i",
			.func_ptr=(BBFuncPtr)&openb3d_openb3dcore_TStencil_UseStencil_i_TTStencil
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"FreeStencil",
			"()i",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_TStencil_FreeStencil
		},
		{
			BBDEBUGDECL_END
		}
	}
};
struct BBClass_openb3d_openb3dcore_TStencil openb3d_openb3dcore_TStencil={
	&bbObjectClass,
	bbObjectFree,
	(BBDebugScope*)&openb3d_openb3dcore_TStencil_scope,
	sizeof(struct openb3d_openb3dcore_TStencil_obj),
	(void (*)(BBOBJECT))_openb3d_openb3dcore_TStencil_New,
	bbObjectDtor,
	bbObjectToString,
	bbObjectCompare,
	bbObjectSendMessage,
	0,
	0,
	offsetof(struct openb3d_openb3dcore_TStencil_obj,_openb3d_openb3dcore_tstencil_exists) - offsetof(struct openb3d_openb3dcore_TStencil_obj,_openb3d_openb3dcore_tstencil_instance) + sizeof(BBINT)
	,0
	,offsetof(struct openb3d_openb3dcore_TStencil_obj,_openb3d_openb3dcore_tstencil_instance)
	,openb3d_openb3dcore_TStencil_CreateObject_TTStencil_pb
	,openb3d_openb3dcore_TStencil_FreeObject_i_pb
	,openb3d_openb3dcore_TStencil_GetObject_TTStencil_pb
	,openb3d_openb3dcore_TStencil_GetInstance_pb_TTStencil
	,_openb3d_openb3dcore_TStencil_InitFields
	,openb3d_openb3dcore_TStencil_CreateStencil_TTStencil
	,_openb3d_openb3dcore_TStencil_StencilAlpha_f
	,_openb3d_openb3dcore_TStencil_StencilClsColor_fff
	,_openb3d_openb3dcore_TStencil_StencilClsMode_ii
	,_openb3d_openb3dcore_TStencil_StencilMesh_TTMeshi
	,_openb3d_openb3dcore_TStencil_StencilMode_ii
	,openb3d_openb3dcore_TStencil_UseStencil_i_TTStencil
	,_openb3d_openb3dcore_TStencil_FreeStencil
};

void _openb3d_openb3dcore_TFluid_New(struct openb3d_openb3dcore_TFluid_obj* o) {
	_openb3d_openb3dcore_TMesh_New((struct openb3d_openb3dcore_TMesh_obj*)o);
	o->clas = &openb3d_openb3dcore_TFluid;
}
void _openb3d_openb3dcore_TFluid_Delete(struct openb3d_openb3dcore_TFluid_obj* o) {
	_openb3d_openb3dcore_TMesh_Delete((struct openb3d_openb3dcore_TMesh_obj*)o);
}
struct openb3d_openb3dcore_TFluid_obj* openb3d_openb3dcore_TFluid_CreateObject_TTFluid_pb(BBBYTE* bbt_inst){
	struct openb3d_openb3dcore_TFluid_obj* bbt_obj=(struct openb3d_openb3dcore_TFluid_obj*)((struct openb3d_openb3dcore_TFluid_obj*)&bbNullObject);
	struct BBDebugScope_2 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"CreateObject",
		{
			{
				BBDEBUGDECL_LOCAL,
				"inst",
				"*b",
				.var_address=&bbt_inst
			},
			{
				BBDEBUGDECL_LOCAL,
				"obj",
				":TFluid",
				.var_address=&bbt_obj
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x270028a708ddc40d, 9, 0};
	bbOnDebugEnterStm(&__stmt_0);
	if(bbt_inst==0){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x270028a708ddc40d, 9, 0};
		bbOnDebugEnterStm(&__stmt_0);
		bbOnDebugLeaveScope();
		bbOnDebugLeaveScope();
		return (struct openb3d_openb3dcore_TFluid_obj*)&bbNullObject;
	}
	struct BBDebugStm __stmt_1 = {0x270028a708ddc40d, 10, 0};
	bbOnDebugEnterStm(&__stmt_1);
	bbt_obj=(struct openb3d_openb3dcore_TFluid_obj*)(struct openb3d_openb3dcore_TFluid_obj*)bbObjectNew((BBClass *)&openb3d_openb3dcore_TFluid);
	struct BBDebugStm __stmt_2 = {0x270028a708ddc40d, 12, 0};
	bbOnDebugEnterStm(&__stmt_2);
	((struct brl_map_ptrmap_TPtrMap_obj*)bbNullObjectTest((BBObject*)openb3d_openb3dcore_TEntity_ent_map))->clas->m_Insert_pbTObject((struct brl_map_ptrmap_TPtrMap_obj*)openb3d_openb3dcore_TEntity_ent_map,bbt_inst,(BBOBJECT)bbt_obj);
	struct BBDebugStm __stmt_3 = {0x270028a708ddc40d, 16, 0};
	bbOnDebugEnterStm(&__stmt_3);
	((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)bbt_obj))->_openb3d_openb3dcore_tentity_instance =bbt_inst;
	struct BBDebugStm __stmt_4 = {0x270028a708ddc40d, 17, 0};
	bbOnDebugEnterStm(&__stmt_4);
	((struct openb3d_openb3dcore_TFluid_obj*)bbNullObjectTest((BBObject*)bbt_obj))->clas->m_InitFields((struct openb3d_openb3dcore_TFluid_obj*)bbt_obj);
	struct BBDebugStm __stmt_5 = {0x270028a708ddc40d, 18, 0};
	bbOnDebugEnterStm(&__stmt_5);
	bbOnDebugLeaveScope();
	return (struct openb3d_openb3dcore_TFluid_obj*)bbt_obj;
}
BBINT _openb3d_openb3dcore_TFluid_InitFields(struct openb3d_openb3dcore_TFluid_obj* o){
	((struct openb3d_openb3dcore_TFluid_obj*)bbNullObjectTest((BBObject*)o));
	struct BBDebugScope_1 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"InitFields",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TFluid",
				.var_address=&o
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x270028a708ddc40d, 24, 0};
	bbOnDebugEnterStm(&__stmt_0);
	(&openb3d_openb3dcore_TFluid)->super->m_InitFields((struct openb3d_openb3dcore_TMesh_obj*)o);
	bbOnDebugLeaveScope();
	return 0;
}
struct openb3d_openb3dcore_TFluid_obj* openb3d_openb3dcore_TFluid_CreateFluid_TTFluid(){
	BBBYTE* bbt_inst=0;
	struct BBDebugScope_1 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"CreateFluid",
		{
			{
				BBDEBUGDECL_LOCAL,
				"inst",
				"*b",
				.var_address=&bbt_inst
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x270028a708ddc40d, 32, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbt_inst=CreateFluid_();
	struct BBDebugStm __stmt_1 = {0x270028a708ddc40d, 33, 0};
	bbOnDebugEnterStm(&__stmt_1);
	bbOnDebugLeaveScope();
	return (struct openb3d_openb3dcore_TFluid_obj*)openb3d_openb3dcore_TFluid_CreateObject_TTFluid_pb(bbt_inst);
}
BBINT _openb3d_openb3dcore_TFluid_FluidArray_vfiii(struct openb3d_openb3dcore_TFluid_obj* o,BBFLOAT* bbt_Array,BBINT bbt_w,BBINT bbt_h,BBINT bbt_d){
	((struct openb3d_openb3dcore_TFluid_obj*)bbNullObjectTest((BBObject*)o));
	struct BBDebugScope_5 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"FluidArray",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TFluid",
				.var_address=&o
			},
			{
				BBDEBUGDECL_VARPARAM,
				"Array",
				"f",
				.var_address=&bbt_Array
			},
			{
				BBDEBUGDECL_LOCAL,
				"w",
				"i",
				.var_address=&bbt_w
			},
			{
				BBDEBUGDECL_LOCAL,
				"h",
				"i",
				.var_address=&bbt_h
			},
			{
				BBDEBUGDECL_LOCAL,
				"d",
				"i",
				.var_address=&bbt_d
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x270028a708ddc40d, 39, 0};
	bbOnDebugEnterStm(&__stmt_0);
	FluidArray_(openb3d_openb3dcore_TEntity_GetInstance_pb_TTEntity((struct openb3d_openb3dcore_TEntity_obj*)((struct openb3d_openb3dcore_TEntity_obj*)bbObjectDowncast((BBOBJECT)o,(BBClass*)&openb3d_openb3dcore_TEntity))),&(*bbt_Array),bbt_w,bbt_h,bbt_d);
	bbOnDebugLeaveScope();
	return 0;
}
BBINT _openb3d_openb3dcore_TFluid_FluidFunction_F_fff_f_(struct openb3d_openb3dcore_TFluid_obj* o,BBFLOAT(* bbt_FieldFunction)(BBFLOAT,BBFLOAT,BBFLOAT)){
	((struct openb3d_openb3dcore_TFluid_obj*)bbNullObjectTest((BBObject*)o));
	struct BBDebugScope_2 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"FluidFunction",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TFluid",
				.var_address=&o
			},
			{
				BBDEBUGDECL_LOCAL,
				"FieldFunction",
				"(f,f,f)f",
				.var_address=&bbt_FieldFunction
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x270028a708ddc40d, 45, 0};
	bbOnDebugEnterStm(&__stmt_0);
	FluidFunction_(openb3d_openb3dcore_TEntity_GetInstance_pb_TTEntity((struct openb3d_openb3dcore_TEntity_obj*)((struct openb3d_openb3dcore_TEntity_obj*)bbObjectDowncast((BBOBJECT)o,(BBClass*)&openb3d_openb3dcore_TEntity))),bbt_FieldFunction);
	bbOnDebugLeaveScope();
	return 0;
}
BBINT _openb3d_openb3dcore_TFluid_FluidThreshold_f(struct openb3d_openb3dcore_TFluid_obj* o,BBFLOAT bbt_threshold){
	((struct openb3d_openb3dcore_TFluid_obj*)bbNullObjectTest((BBObject*)o));
	struct BBDebugScope_2 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"FluidThreshold",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TFluid",
				.var_address=&o
			},
			{
				BBDEBUGDECL_LOCAL,
				"threshold",
				"f",
				.var_address=&bbt_threshold
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x270028a708ddc40d, 51, 0};
	bbOnDebugEnterStm(&__stmt_0);
	FluidThreshold_(openb3d_openb3dcore_TEntity_GetInstance_pb_TTEntity((struct openb3d_openb3dcore_TEntity_obj*)((struct openb3d_openb3dcore_TEntity_obj*)bbObjectDowncast((BBOBJECT)o,(BBClass*)&openb3d_openb3dcore_TEntity))),bbt_threshold);
	bbOnDebugLeaveScope();
	return 0;
}
struct BBDebugScope_7 openb3d_openb3dcore_TFluid_scope ={
	BBDEBUGSCOPE_USERTYPE,
	"TFluid",
	{
		{
			BBDEBUGDECL_TYPEMETHOD,
			"New",
			"()i",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_TFluid_New
		},
		{
			BBDEBUGDECL_TYPEFUNCTION,
			"CreateObject",
			"(*b):TFluid",
			.func_ptr=(BBFuncPtr)&openb3d_openb3dcore_TFluid_CreateObject_TTFluid_pb
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"InitFields",
			"()i",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_TFluid_InitFields
		},
		{
			BBDEBUGDECL_TYPEFUNCTION,
			"CreateFluid",
			"():TFluid",
			.func_ptr=(BBFuncPtr)&openb3d_openb3dcore_TFluid_CreateFluid_TTFluid
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"FluidArray",
			"(f,i,i,i)i",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_TFluid_FluidArray_vfiii
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"FluidFunction",
			"((f,f,f)f)i",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_TFluid_FluidFunction_F_fff_f_
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"FluidThreshold",
			"(f)i",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_TFluid_FluidThreshold_f
		},
		{
			BBDEBUGDECL_END
		}
	}
};
struct BBClass_openb3d_openb3dcore_TFluid openb3d_openb3dcore_TFluid={
	&openb3d_openb3dcore_TMesh,
	bbObjectFree,
	(BBDebugScope*)&openb3d_openb3dcore_TFluid_scope,
	sizeof(struct openb3d_openb3dcore_TFluid_obj),
	(void (*)(BBOBJECT))_openb3d_openb3dcore_TFluid_New,
	(void (*)(BBOBJECT))_openb3d_openb3dcore_TFluid_Delete,
	bbObjectToString,
	bbObjectCompare,
	bbObjectSendMessage,
	0,
	0,
	0
	,0
	,sizeof(void*)
	,_openb3d_openb3dcore_TMesh_CopyEntity_TTEntity
	,_openb3d_openb3dcore_TMesh_Update
	,openb3d_openb3dcore_TEntity_FreeObject_i_pb
	,openb3d_openb3dcore_TEntity_GetObject_TTEntity_pb
	,openb3d_openb3dcore_TEntity_GetInstance_pb_TTEntity
	,openb3d_openb3dcore_TEntity_InitGlobals_i
	,_openb3d_openb3dcore_TFluid_InitFields
	,_openb3d_openb3dcore_TMesh_DebugFields_ii
	,_openb3d_openb3dcore_TMesh_AddList_TTList
	,openb3d_openb3dcore_TEntity_AddList__i_TTList
	,_openb3d_openb3dcore_TMesh_CopyList_TTList
	,openb3d_openb3dcore_TEntity_CopyList__i_TTList
	,_openb3d_openb3dcore_TEntity_EntityListAdd_TTListTObject
	,_openb3d_openb3dcore_TEntity_EntityListRemove_TTListTObject
	,_openb3d_openb3dcore_TEntity_AddAnimSeq_i
	,_openb3d_openb3dcore_TEntity_SetAnimKey_fiii
	,_openb3d_openb3dcore_TEntity_AlignToVector_fffif
	,_openb3d_openb3dcore_TEntity_GetString_pb
	,_openb3d_openb3dcore_TEntity_SetString_pbS
	,_openb3d_openb3dcore_TMesh_FreeEntity
	,_openb3d_openb3dcore_TEntity_FreeEntityList
	,_openb3d_openb3dcore_TEntity_SetParent_TTEntity
	,_openb3d_openb3dcore_TEntity_PositionEntity_fffi
	,_openb3d_openb3dcore_TEntity_MoveEntity_fff
	,_openb3d_openb3dcore_TEntity_TranslateEntity_fffi
	,_openb3d_openb3dcore_TEntity_ScaleEntity_fffi
	,_openb3d_openb3dcore_TEntity_RotateEntity_fffi
	,_openb3d_openb3dcore_TEntity_TurnEntity_fffi
	,_openb3d_openb3dcore_TEntity_PointEntity_TTEntityf
	,_openb3d_openb3dcore_TEntity_LoadAnimSeq_S
	,_openb3d_openb3dcore_TEntity_ExtractAnimSeq_iii
	,_openb3d_openb3dcore_TEntity_Animate_ifii
	,_openb3d_openb3dcore_TEntity_SetAnimTime_fi
	,_openb3d_openb3dcore_TEntity_AnimSeq
	,_openb3d_openb3dcore_TEntity_AnimLength
	,_openb3d_openb3dcore_TEntity_AnimTime
	,_openb3d_openb3dcore_TEntity_Animating
	,_openb3d_openb3dcore_TEntity_EntityColor_fffi
	,_openb3d_openb3dcore_TEntity_EntityAlpha_f
	,_openb3d_openb3dcore_TEntity_EntityShininess_f
	,_openb3d_openb3dcore_TEntity_EntityTexture_TTTextureii
	,_openb3d_openb3dcore_TEntity_EntityBlend_i
	,_openb3d_openb3dcore_TEntity_EntityFX_i
	,_openb3d_openb3dcore_TEntity_PaintEntity_TTBrush
	,_openb3d_openb3dcore_TEntity_GetEntityBrush
	,_openb3d_openb3dcore_TEntity_EntityOrder_i
	,_openb3d_openb3dcore_TEntity_ShowEntity
	,_openb3d_openb3dcore_TEntity_HideEntity
	,_openb3d_openb3dcore_TEntity_NameEntity_S
	,_openb3d_openb3dcore_TEntity_EntityParent_TTEntityi
	,_openb3d_openb3dcore_TEntity_GetParent
	,_openb3d_openb3dcore_TEntity_EntityX_i
	,_openb3d_openb3dcore_TEntity_EntityY_i
	,_openb3d_openb3dcore_TEntity_EntityZ_i
	,_openb3d_openb3dcore_TEntity_EntityPitch_i
	,_openb3d_openb3dcore_TEntity_EntityYaw_i
	,_openb3d_openb3dcore_TEntity_EntityRoll_i
	,_openb3d_openb3dcore_TEntity_EntityClass
	,_openb3d_openb3dcore_TEntity_EntityName
	,_openb3d_openb3dcore_TEntity_CountChildren
	,_openb3d_openb3dcore_TEntity_GetChild_i
	,_openb3d_openb3dcore_TEntity_FindChild_S
	,_openb3d_openb3dcore_TEntity_EntityPick_f
	,_openb3d_openb3dcore_TEntity_LinePick_fffffff
	,_openb3d_openb3dcore_TEntity_EntityVisible_TTEntityTTEntity
	,_openb3d_openb3dcore_TEntity_EntityDistance_TTEntity
	,_openb3d_openb3dcore_TEntity_DeltaYaw_TTEntity
	,_openb3d_openb3dcore_TEntity_DeltaPitch_TTEntity
	,openb3d_openb3dcore_TEntity_TFormPoint_i_fffTTEntityTTEntity
	,openb3d_openb3dcore_TEntity_TFormVector_i_fffTTEntityTTEntity
	,openb3d_openb3dcore_TEntity_TFormNormal_i_fffTTEntityTTEntity
	,openb3d_openb3dcore_TEntity_TFormedX_f
	,openb3d_openb3dcore_TEntity_TFormedY_f
	,openb3d_openb3dcore_TEntity_TFormedZ_f
	,_openb3d_openb3dcore_TEntity_GetMatElement_ii
	,_openb3d_openb3dcore_TEntity_ResetEntity
	,_openb3d_openb3dcore_TEntity_EntityRadius_ff
	,_openb3d_openb3dcore_TEntity_EntityBox_ffffff
	,_openb3d_openb3dcore_TEntity_EntityType_ii
	,_openb3d_openb3dcore_TEntity_EntityPickMode_ii
	,_openb3d_openb3dcore_TEntity_EntityCollided_i
	,_openb3d_openb3dcore_TEntity_CountCollisions
	,_openb3d_openb3dcore_TEntity_CollisionX_i
	,_openb3d_openb3dcore_TEntity_CollisionY_i
	,_openb3d_openb3dcore_TEntity_CollisionZ_i
	,_openb3d_openb3dcore_TEntity_CollisionNX_i
	,_openb3d_openb3dcore_TEntity_CollisionNY_i
	,_openb3d_openb3dcore_TEntity_CollisionNZ_i
	,_openb3d_openb3dcore_TEntity_CollisionTime_i
	,_openb3d_openb3dcore_TEntity_CollisionEntity_i
	,_openb3d_openb3dcore_TEntity_CollisionSurface_i
	,_openb3d_openb3dcore_TEntity_CollisionTriangle_i
	,_openb3d_openb3dcore_TEntity_GetEntityType
	,_openb3d_openb3dcore_TEntity_MeshCullRadius_f
	,_openb3d_openb3dcore_TEntity_EntityScaleX_i
	,_openb3d_openb3dcore_TEntity_EntityScaleY_i
	,_openb3d_openb3dcore_TEntity_EntityScaleZ_i
	,_openb3d_openb3dcore_TEntity_Hidden
	,openb3d_openb3dcore_TEntity_CountAllChildren_i_TTEntityi
	,_openb3d_openb3dcore_TEntity_GetChildFromAll_iviTTEntity
	,_openb3d_openb3dcore_TEntity_ListParents_TTList
	,_openb3d_openb3dcore_TEntity_UpdateMat_b
	,_openb3d_openb3dcore_TEntity_AddParent_TTEntity
	,openb3d_openb3dcore_TEntity_UpdateChildren_i_TTEntity
	,_openb3d_openb3dcore_TEntity_EntityDistanceSquared_TTEntity
	,_openb3d_openb3dcore_TEntity_MQ_Update
	,_openb3d_openb3dcore_TEntity_MQ_GetInvMatrix_TTMatPtr
	,_openb3d_openb3dcore_TEntity_MQ_GetMatrix_TTMatPtr
	,_openb3d_openb3dcore_TEntity_MQ_GetScaleXYZ_vfvfvf
	,_openb3d_openb3dcore_TEntity_MQ_Turn_ffffi
	,openb3d_openb3dcore_TFluid_CreateObject_TTFluid_pb
	,_openb3d_openb3dcore_TMesh_MeshListAdd_TTListTObject
	,_openb3d_openb3dcore_TMesh_MeshListRemove_TTListTObject
	,_openb3d_openb3dcore_TMesh_MeshArrayResize_ii
	,_openb3d_openb3dcore_TMesh_MeshArraySet_iiTObject
	,openb3d_openb3dcore_TMesh_NewMesh_TTMesh
	,openb3d_openb3dcore_TMesh_Create_TTMesh
	,_openb3d_openb3dcore_TMesh_LightMesh_fffffff
	,_openb3d_openb3dcore_TMesh_CreateAllChildren
	,openb3d_openb3dcore_TMesh_CreatePlane_TTMesh_iTTEntity
	,openb3d_openb3dcore_TMesh_UpdatePlane_i_TTMesh
	,_openb3d_openb3dcore_TMesh_CreateBone_TTEntity
	,openb3d_openb3dcore_TMesh_CreateQuad_TTMesh_TTEntity
	,openb3d_openb3dcore_TMesh_MeshCSG_TTMesh_TTMeshTTMeshi
	,_openb3d_openb3dcore_TMesh_MeshesIntersect_TTMesh
	,_openb3d_openb3dcore_TMesh_RepeatMesh_TTEntity
	,_openb3d_openb3dcore_TMesh_SkinMesh_iiifififif
	,_openb3d_openb3dcore_TMesh_PositionAnimMesh_fff
	,_openb3d_openb3dcore_TMesh_RotateAnimMesh_fff
	,_openb3d_openb3dcore_TMesh_ScaleAnimMesh_fff
	,_openb3d_openb3dcore_TMesh_TransformVertices_TTMatPtr
	,_openb3d_openb3dcore_TMesh_UpdateVerticesNormals_TTSurface
	,openb3d_openb3dcore_TMesh_CreateMesh_TTMesh_TTEntity
	,openb3d_openb3dcore_TMesh_CreateCube_TTMesh_TTEntity
	,openb3d_openb3dcore_TMesh_CreateSphere_TTMesh_iTTEntity
	,openb3d_openb3dcore_TMesh_CreateCylinder_TTMesh_iiTTEntity
	,openb3d_openb3dcore_TMesh_CreateCone_TTMesh_iiTTEntity
	,_openb3d_openb3dcore_TMesh_CopyMesh_TTEntity
	,_openb3d_openb3dcore_TMesh_AddMesh_TTMesh
	,_openb3d_openb3dcore_TMesh_FlipMesh
	,_openb3d_openb3dcore_TMesh_PaintMesh_TTBrush
	,_openb3d_openb3dcore_TMesh_FitMesh_ffffffi
	,_openb3d_openb3dcore_TMesh_ScaleMesh_fff
	,_openb3d_openb3dcore_TMesh_RotateMesh_fff
	,_openb3d_openb3dcore_TMesh_PositionMesh_fff
	,_openb3d_openb3dcore_TMesh_UpdateNormals
	,_openb3d_openb3dcore_TMesh_CreateSurface_TTBrush
	,_openb3d_openb3dcore_TMesh_MeshWidth
	,_openb3d_openb3dcore_TMesh_MeshHeight
	,_openb3d_openb3dcore_TMesh_MeshDepth
	,_openb3d_openb3dcore_TMesh_CountSurfaces
	,_openb3d_openb3dcore_TMesh_GetSurface_i
	,_openb3d_openb3dcore_TMesh_FindSurface_TTBrush
	,_openb3d_openb3dcore_TMesh_CountVertices
	,_openb3d_openb3dcore_TMesh_CountTriangles
	,openb3d_openb3dcore_TMesh_CopyBonesList_i_TTEntity
	,_openb3d_openb3dcore_TMesh_CollapseAnimMesh
	,_openb3d_openb3dcore_TMesh_CollapseChildren_TTEntityTTMesh
	,_openb3d_openb3dcore_TMesh_TransformMesh_TTMatPtr
	,_openb3d_openb3dcore_TMesh_GetBounds
	,_openb3d_openb3dcore_TMesh_Alpha
	,_openb3d_openb3dcore_TMesh_MeshColor_ffff
	,_openb3d_openb3dcore_TMesh_MeshRed_f
	,_openb3d_openb3dcore_TMesh_MeshGreen_f
	,_openb3d_openb3dcore_TMesh_MeshBlue_f
	,_openb3d_openb3dcore_TMesh_MeshAlpha_f
	,_openb3d_openb3dcore_TMesh_TreeCheck
	,_openb3d_openb3dcore_TMesh_Render
	,_openb3d_openb3dcore_TMesh_UpdateShadow
	,openb3d_openb3dcore_TFluid_CreateFluid_TTFluid
	,_openb3d_openb3dcore_TFluid_FluidArray_vfiii
	,_openb3d_openb3dcore_TFluid_FluidFunction_F_fff_f_
	,_openb3d_openb3dcore_TFluid_FluidThreshold_f
};

void _openb3d_openb3dcore_TBlob_New(struct openb3d_openb3dcore_TBlob_obj* o) {
	_openb3d_openb3dcore_TEntity_New((struct openb3d_openb3dcore_TEntity_obj*)o);
	o->clas = &openb3d_openb3dcore_TBlob;
}
void _openb3d_openb3dcore_TBlob_Delete(struct openb3d_openb3dcore_TBlob_obj* o) {
	_openb3d_openb3dcore_TEntity_Delete((struct openb3d_openb3dcore_TEntity_obj*)o);
}
struct openb3d_openb3dcore_TBlob_obj* openb3d_openb3dcore_TBlob_CreateObject_TTBlob_pb(BBBYTE* bbt_inst){
	struct openb3d_openb3dcore_TBlob_obj* bbt_obj=(struct openb3d_openb3dcore_TBlob_obj*)((struct openb3d_openb3dcore_TBlob_obj*)&bbNullObject);
	struct BBDebugScope_2 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"CreateObject",
		{
			{
				BBDEBUGDECL_LOCAL,
				"inst",
				"*b",
				.var_address=&bbt_inst
			},
			{
				BBDEBUGDECL_LOCAL,
				"obj",
				":TBlob",
				.var_address=&bbt_obj
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x270028a708ddc40d, 64, 0};
	bbOnDebugEnterStm(&__stmt_0);
	if(bbt_inst==0){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x270028a708ddc40d, 64, 0};
		bbOnDebugEnterStm(&__stmt_0);
		bbOnDebugLeaveScope();
		bbOnDebugLeaveScope();
		return (struct openb3d_openb3dcore_TBlob_obj*)&bbNullObject;
	}
	struct BBDebugStm __stmt_1 = {0x270028a708ddc40d, 65, 0};
	bbOnDebugEnterStm(&__stmt_1);
	bbt_obj=(struct openb3d_openb3dcore_TBlob_obj*)(struct openb3d_openb3dcore_TBlob_obj*)bbObjectNew((BBClass *)&openb3d_openb3dcore_TBlob);
	struct BBDebugStm __stmt_2 = {0x270028a708ddc40d, 67, 0};
	bbOnDebugEnterStm(&__stmt_2);
	((struct brl_map_ptrmap_TPtrMap_obj*)bbNullObjectTest((BBObject*)openb3d_openb3dcore_TEntity_ent_map))->clas->m_Insert_pbTObject((struct brl_map_ptrmap_TPtrMap_obj*)openb3d_openb3dcore_TEntity_ent_map,bbt_inst,(BBOBJECT)bbt_obj);
	struct BBDebugStm __stmt_3 = {0x270028a708ddc40d, 71, 0};
	bbOnDebugEnterStm(&__stmt_3);
	((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)bbt_obj))->_openb3d_openb3dcore_tentity_instance =bbt_inst;
	struct BBDebugStm __stmt_4 = {0x270028a708ddc40d, 72, 0};
	bbOnDebugEnterStm(&__stmt_4);
	((struct openb3d_openb3dcore_TBlob_obj*)bbNullObjectTest((BBObject*)bbt_obj))->clas->m_InitFields((struct openb3d_openb3dcore_TBlob_obj*)bbt_obj);
	struct BBDebugStm __stmt_5 = {0x270028a708ddc40d, 73, 0};
	bbOnDebugEnterStm(&__stmt_5);
	bbOnDebugLeaveScope();
	return (struct openb3d_openb3dcore_TBlob_obj*)bbt_obj;
}
BBINT _openb3d_openb3dcore_TBlob_InitFields(struct openb3d_openb3dcore_TBlob_obj* o){
	((struct openb3d_openb3dcore_TBlob_obj*)bbNullObjectTest((BBObject*)o));
	struct BBDebugScope_1 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"InitFields",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TBlob",
				.var_address=&o
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x270028a708ddc40d, 79, 0};
	bbOnDebugEnterStm(&__stmt_0);
	(&openb3d_openb3dcore_TBlob)->super->m_InitFields((struct openb3d_openb3dcore_TEntity_obj*)o);
	bbOnDebugLeaveScope();
	return 0;
}
struct openb3d_openb3dcore_TBlob_obj* openb3d_openb3dcore_TBlob_CreateBlob_TTBlob_TTFluidfTTEntity(struct openb3d_openb3dcore_TFluid_obj* bbt_fluid,BBFLOAT bbt_radius,struct openb3d_openb3dcore_TEntity_obj* bbt_parent_ent){
	BBBYTE* bbt_inst=0;
	struct BBDebugScope_4 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"CreateBlob",
		{
			{
				BBDEBUGDECL_LOCAL,
				"fluid",
				":TFluid",
				.var_address=&bbt_fluid
			},
			{
				BBDEBUGDECL_LOCAL,
				"radius",
				"f",
				.var_address=&bbt_radius
			},
			{
				BBDEBUGDECL_LOCAL,
				"parent_ent",
				":TEntity",
				.var_address=&bbt_parent_ent
			},
			{
				BBDEBUGDECL_LOCAL,
				"inst",
				"*b",
				.var_address=&bbt_inst
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x270028a708ddc40d, 85, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbt_inst=CreateBlob_(openb3d_openb3dcore_TEntity_GetInstance_pb_TTEntity((struct openb3d_openb3dcore_TEntity_obj*)((struct openb3d_openb3dcore_TEntity_obj*)bbObjectDowncast((BBOBJECT)bbt_fluid,(BBClass*)&openb3d_openb3dcore_TEntity))),bbt_radius,openb3d_openb3dcore_TEntity_GetInstance_pb_TTEntity((struct openb3d_openb3dcore_TEntity_obj*)bbt_parent_ent));
	struct BBDebugStm __stmt_1 = {0x270028a708ddc40d, 86, 0};
	bbOnDebugEnterStm(&__stmt_1);
	bbOnDebugLeaveScope();
	return (struct openb3d_openb3dcore_TBlob_obj*)openb3d_openb3dcore_TBlob_CreateObject_TTBlob_pb(bbt_inst);
}
struct openb3d_openb3dcore_TBlob_obj* _openb3d_openb3dcore_TBlob_CopyEntity_TTEntity(struct openb3d_openb3dcore_TBlob_obj* o,struct openb3d_openb3dcore_TEntity_obj* bbt_parent){
	((struct openb3d_openb3dcore_TBlob_obj*)bbNullObjectTest((BBObject*)o));
	BBBYTE* bbt_inst=0;
	struct openb3d_openb3dcore_TBlob_obj* bbt_blob=(struct openb3d_openb3dcore_TBlob_obj*)((struct openb3d_openb3dcore_TBlob_obj*)&bbNullObject);
	struct BBDebugScope_4 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"CopyEntity",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TBlob",
				.var_address=&o
			},
			{
				BBDEBUGDECL_LOCAL,
				"parent",
				":TEntity",
				.var_address=&bbt_parent
			},
			{
				BBDEBUGDECL_LOCAL,
				"inst",
				"*b",
				.var_address=&bbt_inst
			},
			{
				BBDEBUGDECL_LOCAL,
				"blob",
				":TBlob",
				.var_address=&bbt_blob
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x270028a708ddc40d, 94, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbt_inst=CopyEntity_(openb3d_openb3dcore_TEntity_GetInstance_pb_TTEntity((struct openb3d_openb3dcore_TEntity_obj*)((struct openb3d_openb3dcore_TEntity_obj*)bbObjectDowncast((BBOBJECT)o,(BBClass*)&openb3d_openb3dcore_TEntity))),openb3d_openb3dcore_TEntity_GetInstance_pb_TTEntity((struct openb3d_openb3dcore_TEntity_obj*)bbt_parent));
	struct BBDebugStm __stmt_1 = {0x270028a708ddc40d, 95, 0};
	bbOnDebugEnterStm(&__stmt_1);
	bbt_blob=(struct openb3d_openb3dcore_TBlob_obj*)o->clas->f_CreateObject_TTBlob_pb(bbt_inst);
	struct BBDebugStm __stmt_2 = {0x270028a708ddc40d, 96, 0};
	bbOnDebugEnterStm(&__stmt_2);
	if(((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tentity_pick_mode [0]!=0){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x270028a708ddc40d, 96, 0};
		bbOnDebugEnterStm(&__stmt_0);
		openb3d_openb3dcore_TPick_AddList__i_TTList((struct brl_linkedlist_TList_obj*)openb3d_openb3dcore_TPick_ent_list);
		bbOnDebugLeaveScope();
	}
	struct BBDebugStm __stmt_3 = {0x270028a708ddc40d, 97, 0};
	bbOnDebugEnterStm(&__stmt_3);
	bbOnDebugLeaveScope();
	return (struct openb3d_openb3dcore_TBlob_obj*)bbt_blob;
}
BBINT _openb3d_openb3dcore_TBlob_Update(struct openb3d_openb3dcore_TBlob_obj* o){
	((struct openb3d_openb3dcore_TBlob_obj*)bbNullObjectTest((BBObject*)o));
	struct BBDebugScope_1 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"Update",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TBlob",
				.var_address=&o
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	bbOnDebugLeaveScope();
	return 0;
}
struct BBDebugScope_6 openb3d_openb3dcore_TBlob_scope ={
	BBDEBUGSCOPE_USERTYPE,
	"TBlob",
	{
		{
			BBDEBUGDECL_TYPEMETHOD,
			"New",
			"()i",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_TBlob_New
		},
		{
			BBDEBUGDECL_TYPEFUNCTION,
			"CreateObject",
			"(*b):TBlob",
			.func_ptr=(BBFuncPtr)&openb3d_openb3dcore_TBlob_CreateObject_TTBlob_pb
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"InitFields",
			"()i",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_TBlob_InitFields
		},
		{
			BBDEBUGDECL_TYPEFUNCTION,
			"CreateBlob",
			"(:TFluid,f,:TEntity):TBlob",
			.func_ptr=(BBFuncPtr)&openb3d_openb3dcore_TBlob_CreateBlob_TTBlob_TTFluidfTTEntity
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"CopyEntity",
			"(:TEntity):TBlob",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_TBlob_CopyEntity_TTEntity
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"Update",
			"()i",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_TBlob_Update
		},
		{
			BBDEBUGDECL_END
		}
	}
};
struct BBClass_openb3d_openb3dcore_TBlob openb3d_openb3dcore_TBlob={
	&openb3d_openb3dcore_TEntity,
	bbObjectFree,
	(BBDebugScope*)&openb3d_openb3dcore_TBlob_scope,
	sizeof(struct openb3d_openb3dcore_TBlob_obj),
	(void (*)(BBOBJECT))_openb3d_openb3dcore_TBlob_New,
	(void (*)(BBOBJECT))_openb3d_openb3dcore_TBlob_Delete,
	bbObjectToString,
	bbObjectCompare,
	bbObjectSendMessage,
	0,
	0,
	0
	,0
	,sizeof(void*)
	,_openb3d_openb3dcore_TBlob_CopyEntity_TTEntity
	,_openb3d_openb3dcore_TBlob_Update
	,openb3d_openb3dcore_TEntity_FreeObject_i_pb
	,openb3d_openb3dcore_TEntity_GetObject_TTEntity_pb
	,openb3d_openb3dcore_TEntity_GetInstance_pb_TTEntity
	,openb3d_openb3dcore_TEntity_InitGlobals_i
	,_openb3d_openb3dcore_TBlob_InitFields
	,_openb3d_openb3dcore_TEntity_DebugFields_ii
	,_openb3d_openb3dcore_TEntity_AddList_TTList
	,openb3d_openb3dcore_TEntity_AddList__i_TTList
	,_openb3d_openb3dcore_TEntity_CopyList_TTList
	,openb3d_openb3dcore_TEntity_CopyList__i_TTList
	,_openb3d_openb3dcore_TEntity_EntityListAdd_TTListTObject
	,_openb3d_openb3dcore_TEntity_EntityListRemove_TTListTObject
	,_openb3d_openb3dcore_TEntity_AddAnimSeq_i
	,_openb3d_openb3dcore_TEntity_SetAnimKey_fiii
	,_openb3d_openb3dcore_TEntity_AlignToVector_fffif
	,_openb3d_openb3dcore_TEntity_GetString_pb
	,_openb3d_openb3dcore_TEntity_SetString_pbS
	,_openb3d_openb3dcore_TEntity_FreeEntity
	,_openb3d_openb3dcore_TEntity_FreeEntityList
	,_openb3d_openb3dcore_TEntity_SetParent_TTEntity
	,_openb3d_openb3dcore_TEntity_PositionEntity_fffi
	,_openb3d_openb3dcore_TEntity_MoveEntity_fff
	,_openb3d_openb3dcore_TEntity_TranslateEntity_fffi
	,_openb3d_openb3dcore_TEntity_ScaleEntity_fffi
	,_openb3d_openb3dcore_TEntity_RotateEntity_fffi
	,_openb3d_openb3dcore_TEntity_TurnEntity_fffi
	,_openb3d_openb3dcore_TEntity_PointEntity_TTEntityf
	,_openb3d_openb3dcore_TEntity_LoadAnimSeq_S
	,_openb3d_openb3dcore_TEntity_ExtractAnimSeq_iii
	,_openb3d_openb3dcore_TEntity_Animate_ifii
	,_openb3d_openb3dcore_TEntity_SetAnimTime_fi
	,_openb3d_openb3dcore_TEntity_AnimSeq
	,_openb3d_openb3dcore_TEntity_AnimLength
	,_openb3d_openb3dcore_TEntity_AnimTime
	,_openb3d_openb3dcore_TEntity_Animating
	,_openb3d_openb3dcore_TEntity_EntityColor_fffi
	,_openb3d_openb3dcore_TEntity_EntityAlpha_f
	,_openb3d_openb3dcore_TEntity_EntityShininess_f
	,_openb3d_openb3dcore_TEntity_EntityTexture_TTTextureii
	,_openb3d_openb3dcore_TEntity_EntityBlend_i
	,_openb3d_openb3dcore_TEntity_EntityFX_i
	,_openb3d_openb3dcore_TEntity_PaintEntity_TTBrush
	,_openb3d_openb3dcore_TEntity_GetEntityBrush
	,_openb3d_openb3dcore_TEntity_EntityOrder_i
	,_openb3d_openb3dcore_TEntity_ShowEntity
	,_openb3d_openb3dcore_TEntity_HideEntity
	,_openb3d_openb3dcore_TEntity_NameEntity_S
	,_openb3d_openb3dcore_TEntity_EntityParent_TTEntityi
	,_openb3d_openb3dcore_TEntity_GetParent
	,_openb3d_openb3dcore_TEntity_EntityX_i
	,_openb3d_openb3dcore_TEntity_EntityY_i
	,_openb3d_openb3dcore_TEntity_EntityZ_i
	,_openb3d_openb3dcore_TEntity_EntityPitch_i
	,_openb3d_openb3dcore_TEntity_EntityYaw_i
	,_openb3d_openb3dcore_TEntity_EntityRoll_i
	,_openb3d_openb3dcore_TEntity_EntityClass
	,_openb3d_openb3dcore_TEntity_EntityName
	,_openb3d_openb3dcore_TEntity_CountChildren
	,_openb3d_openb3dcore_TEntity_GetChild_i
	,_openb3d_openb3dcore_TEntity_FindChild_S
	,_openb3d_openb3dcore_TEntity_EntityPick_f
	,_openb3d_openb3dcore_TEntity_LinePick_fffffff
	,_openb3d_openb3dcore_TEntity_EntityVisible_TTEntityTTEntity
	,_openb3d_openb3dcore_TEntity_EntityDistance_TTEntity
	,_openb3d_openb3dcore_TEntity_DeltaYaw_TTEntity
	,_openb3d_openb3dcore_TEntity_DeltaPitch_TTEntity
	,openb3d_openb3dcore_TEntity_TFormPoint_i_fffTTEntityTTEntity
	,openb3d_openb3dcore_TEntity_TFormVector_i_fffTTEntityTTEntity
	,openb3d_openb3dcore_TEntity_TFormNormal_i_fffTTEntityTTEntity
	,openb3d_openb3dcore_TEntity_TFormedX_f
	,openb3d_openb3dcore_TEntity_TFormedY_f
	,openb3d_openb3dcore_TEntity_TFormedZ_f
	,_openb3d_openb3dcore_TEntity_GetMatElement_ii
	,_openb3d_openb3dcore_TEntity_ResetEntity
	,_openb3d_openb3dcore_TEntity_EntityRadius_ff
	,_openb3d_openb3dcore_TEntity_EntityBox_ffffff
	,_openb3d_openb3dcore_TEntity_EntityType_ii
	,_openb3d_openb3dcore_TEntity_EntityPickMode_ii
	,_openb3d_openb3dcore_TEntity_EntityCollided_i
	,_openb3d_openb3dcore_TEntity_CountCollisions
	,_openb3d_openb3dcore_TEntity_CollisionX_i
	,_openb3d_openb3dcore_TEntity_CollisionY_i
	,_openb3d_openb3dcore_TEntity_CollisionZ_i
	,_openb3d_openb3dcore_TEntity_CollisionNX_i
	,_openb3d_openb3dcore_TEntity_CollisionNY_i
	,_openb3d_openb3dcore_TEntity_CollisionNZ_i
	,_openb3d_openb3dcore_TEntity_CollisionTime_i
	,_openb3d_openb3dcore_TEntity_CollisionEntity_i
	,_openb3d_openb3dcore_TEntity_CollisionSurface_i
	,_openb3d_openb3dcore_TEntity_CollisionTriangle_i
	,_openb3d_openb3dcore_TEntity_GetEntityType
	,_openb3d_openb3dcore_TEntity_MeshCullRadius_f
	,_openb3d_openb3dcore_TEntity_EntityScaleX_i
	,_openb3d_openb3dcore_TEntity_EntityScaleY_i
	,_openb3d_openb3dcore_TEntity_EntityScaleZ_i
	,_openb3d_openb3dcore_TEntity_Hidden
	,openb3d_openb3dcore_TEntity_CountAllChildren_i_TTEntityi
	,_openb3d_openb3dcore_TEntity_GetChildFromAll_iviTTEntity
	,_openb3d_openb3dcore_TEntity_ListParents_TTList
	,_openb3d_openb3dcore_TEntity_UpdateMat_b
	,_openb3d_openb3dcore_TEntity_AddParent_TTEntity
	,openb3d_openb3dcore_TEntity_UpdateChildren_i_TTEntity
	,_openb3d_openb3dcore_TEntity_EntityDistanceSquared_TTEntity
	,_openb3d_openb3dcore_TEntity_MQ_Update
	,_openb3d_openb3dcore_TEntity_MQ_GetInvMatrix_TTMatPtr
	,_openb3d_openb3dcore_TEntity_MQ_GetMatrix_TTMatPtr
	,_openb3d_openb3dcore_TEntity_MQ_GetScaleXYZ_vfvfvf
	,_openb3d_openb3dcore_TEntity_MQ_Turn_ffffi
	,openb3d_openb3dcore_TBlob_CreateObject_TTBlob_pb
	,openb3d_openb3dcore_TBlob_CreateBlob_TTBlob_TTFluidfTTEntity
};

void _openb3d_openb3dcore_TGeosphere_New(struct openb3d_openb3dcore_TGeosphere_obj* o) {
	_openb3d_openb3dcore_TTerrain_New((struct openb3d_openb3dcore_TTerrain_obj*)o);
	o->clas = &openb3d_openb3dcore_TGeosphere;
}
void _openb3d_openb3dcore_TGeosphere_Delete(struct openb3d_openb3dcore_TGeosphere_obj* o) {
	_openb3d_openb3dcore_TTerrain_Delete((struct openb3d_openb3dcore_TTerrain_obj*)o);
}
struct openb3d_openb3dcore_TGeosphere_obj* openb3d_openb3dcore_TGeosphere_CreateObject_TTGeosphere_pb(BBBYTE* bbt_inst){
	struct openb3d_openb3dcore_TGeosphere_obj* bbt_obj=(struct openb3d_openb3dcore_TGeosphere_obj*)((struct openb3d_openb3dcore_TGeosphere_obj*)&bbNullObject);
	struct BBDebugScope_2 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"CreateObject",
		{
			{
				BBDEBUGDECL_LOCAL,
				"inst",
				"*b",
				.var_address=&bbt_inst
			},
			{
				BBDEBUGDECL_LOCAL,
				"obj",
				":TGeosphere",
				.var_address=&bbt_obj
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0xdeae01dd9e19c3e2, 9, 0};
	bbOnDebugEnterStm(&__stmt_0);
	if(bbt_inst==0){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0xdeae01dd9e19c3e2, 9, 0};
		bbOnDebugEnterStm(&__stmt_0);
		bbOnDebugLeaveScope();
		bbOnDebugLeaveScope();
		return (struct openb3d_openb3dcore_TGeosphere_obj*)&bbNullObject;
	}
	struct BBDebugStm __stmt_1 = {0xdeae01dd9e19c3e2, 10, 0};
	bbOnDebugEnterStm(&__stmt_1);
	bbt_obj=(struct openb3d_openb3dcore_TGeosphere_obj*)(struct openb3d_openb3dcore_TGeosphere_obj*)bbObjectNew((BBClass *)&openb3d_openb3dcore_TGeosphere);
	struct BBDebugStm __stmt_2 = {0xdeae01dd9e19c3e2, 12, 0};
	bbOnDebugEnterStm(&__stmt_2);
	((struct brl_map_ptrmap_TPtrMap_obj*)bbNullObjectTest((BBObject*)openb3d_openb3dcore_TEntity_ent_map))->clas->m_Insert_pbTObject((struct brl_map_ptrmap_TPtrMap_obj*)openb3d_openb3dcore_TEntity_ent_map,bbt_inst,(BBOBJECT)bbt_obj);
	struct BBDebugStm __stmt_3 = {0xdeae01dd9e19c3e2, 16, 0};
	bbOnDebugEnterStm(&__stmt_3);
	((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)bbt_obj))->_openb3d_openb3dcore_tentity_instance =bbt_inst;
	struct BBDebugStm __stmt_4 = {0xdeae01dd9e19c3e2, 17, 0};
	bbOnDebugEnterStm(&__stmt_4);
	((struct openb3d_openb3dcore_TGeosphere_obj*)bbNullObjectTest((BBObject*)bbt_obj))->clas->m_InitFields((struct openb3d_openb3dcore_TGeosphere_obj*)bbt_obj);
	struct BBDebugStm __stmt_5 = {0xdeae01dd9e19c3e2, 18, 0};
	bbOnDebugEnterStm(&__stmt_5);
	bbOnDebugLeaveScope();
	return (struct openb3d_openb3dcore_TGeosphere_obj*)bbt_obj;
}
BBINT _openb3d_openb3dcore_TGeosphere_InitFields(struct openb3d_openb3dcore_TGeosphere_obj* o){
	((struct openb3d_openb3dcore_TGeosphere_obj*)bbNullObjectTest((BBObject*)o));
	struct BBDebugScope_1 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"InitFields",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TGeosphere",
				.var_address=&o
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0xdeae01dd9e19c3e2, 24, 0};
	bbOnDebugEnterStm(&__stmt_0);
	(&openb3d_openb3dcore_TGeosphere)->super->m_InitFields((struct openb3d_openb3dcore_TTerrain_obj*)o);
	bbOnDebugLeaveScope();
	return 0;
}
struct openb3d_openb3dcore_TGeosphere_obj* openb3d_openb3dcore_TGeosphere_CreateGeosphere_TTGeosphere_iTTEntity(BBINT bbt_size,struct openb3d_openb3dcore_TEntity_obj* bbt_parent){
	BBBYTE* bbt_inst=0;
	struct BBDebugScope_3 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"CreateGeosphere",
		{
			{
				BBDEBUGDECL_LOCAL,
				"size",
				"i",
				.var_address=&bbt_size
			},
			{
				BBDEBUGDECL_LOCAL,
				"parent",
				":TEntity",
				.var_address=&bbt_parent
			},
			{
				BBDEBUGDECL_LOCAL,
				"inst",
				"*b",
				.var_address=&bbt_inst
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0xdeae01dd9e19c3e2, 32, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbt_inst=CreateGeosphere_(bbt_size,openb3d_openb3dcore_TEntity_GetInstance_pb_TTEntity((struct openb3d_openb3dcore_TEntity_obj*)bbt_parent));
	struct BBDebugStm __stmt_1 = {0xdeae01dd9e19c3e2, 33, 0};
	bbOnDebugEnterStm(&__stmt_1);
	bbOnDebugLeaveScope();
	return (struct openb3d_openb3dcore_TGeosphere_obj*)openb3d_openb3dcore_TGeosphere_CreateObject_TTGeosphere_pb(bbt_inst);
}
struct openb3d_openb3dcore_TGeosphere_obj* openb3d_openb3dcore_TGeosphere_LoadGeosphere_TTGeosphere_STTEntity(BBSTRING bbt_file,struct openb3d_openb3dcore_TEntity_obj* bbt_parent){
	BBBYTE* bbt_cString=0;
	BBBYTE* bbt_inst=0;
	struct openb3d_openb3dcore_TGeosphere_obj* bbt_geo=(struct openb3d_openb3dcore_TGeosphere_obj*)((struct openb3d_openb3dcore_TGeosphere_obj*)&bbNullObject);
	struct BBDebugScope_5 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"LoadGeosphere",
		{
			{
				BBDEBUGDECL_LOCAL,
				"file",
				"$",
				.var_address=&bbt_file
			},
			{
				BBDEBUGDECL_LOCAL,
				"parent",
				":TEntity",
				.var_address=&bbt_parent
			},
			{
				BBDEBUGDECL_LOCAL,
				"cString",
				"*b",
				.var_address=&bbt_cString
			},
			{
				BBDEBUGDECL_LOCAL,
				"inst",
				"*b",
				.var_address=&bbt_inst
			},
			{
				BBDEBUGDECL_LOCAL,
				"geo",
				":TGeosphere",
				.var_address=&bbt_geo
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0xdeae01dd9e19c3e2, 39, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbt_cString=bbStringToCString((BBSTRING)bbt_file);
	struct BBDebugStm __stmt_1 = {0xdeae01dd9e19c3e2, 40, 0};
	bbOnDebugEnterStm(&__stmt_1);
	bbt_inst=LoadGeosphere_(bbt_cString,openb3d_openb3dcore_TEntity_GetInstance_pb_TTEntity((struct openb3d_openb3dcore_TEntity_obj*)bbt_parent));
	struct BBDebugStm __stmt_2 = {0xdeae01dd9e19c3e2, 41, 0};
	bbOnDebugEnterStm(&__stmt_2);
	bbt_geo=(struct openb3d_openb3dcore_TGeosphere_obj*)openb3d_openb3dcore_TGeosphere_CreateObject_TTGeosphere_pb(bbt_inst);
	struct BBDebugStm __stmt_3 = {0xdeae01dd9e19c3e2, 42, 0};
	bbOnDebugEnterStm(&__stmt_3);
	bbMemFree((void*)bbt_cString);
	struct BBDebugStm __stmt_4 = {0xdeae01dd9e19c3e2, 43, 0};
	bbOnDebugEnterStm(&__stmt_4);
	bbOnDebugLeaveScope();
	return (struct openb3d_openb3dcore_TGeosphere_obj*)bbt_geo;
}
BBINT _openb3d_openb3dcore_TGeosphere_ModifyGeosphere_iif(struct openb3d_openb3dcore_TGeosphere_obj* o,BBINT bbt_x,BBINT bbt_z,BBFLOAT bbt_new_height){
	((struct openb3d_openb3dcore_TGeosphere_obj*)bbNullObjectTest((BBObject*)o));
	struct BBDebugScope_4 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"ModifyGeosphere",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TGeosphere",
				.var_address=&o
			},
			{
				BBDEBUGDECL_LOCAL,
				"x",
				"i",
				.var_address=&bbt_x
			},
			{
				BBDEBUGDECL_LOCAL,
				"z",
				"i",
				.var_address=&bbt_z
			},
			{
				BBDEBUGDECL_LOCAL,
				"new_height",
				"f",
				.var_address=&bbt_new_height
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0xdeae01dd9e19c3e2, 49, 0};
	bbOnDebugEnterStm(&__stmt_0);
	ModifyGeosphere_(openb3d_openb3dcore_TEntity_GetInstance_pb_TTEntity((struct openb3d_openb3dcore_TEntity_obj*)((struct openb3d_openb3dcore_TEntity_obj*)bbObjectDowncast((BBOBJECT)o,(BBClass*)&openb3d_openb3dcore_TEntity))),bbt_x,bbt_z,bbt_new_height);
	bbOnDebugLeaveScope();
	return 0;
}
BBINT _openb3d_openb3dcore_TGeosphere_GeosphereHeight_f(struct openb3d_openb3dcore_TGeosphere_obj* o,BBFLOAT bbt_h){
	((struct openb3d_openb3dcore_TGeosphere_obj*)bbNullObjectTest((BBObject*)o));
	struct BBDebugScope_2 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"GeosphereHeight",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TGeosphere",
				.var_address=&o
			},
			{
				BBDEBUGDECL_LOCAL,
				"h",
				"f",
				.var_address=&bbt_h
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0xdeae01dd9e19c3e2, 55, 0};
	bbOnDebugEnterStm(&__stmt_0);
	GeosphereHeight_(openb3d_openb3dcore_TEntity_GetInstance_pb_TTEntity((struct openb3d_openb3dcore_TEntity_obj*)((struct openb3d_openb3dcore_TEntity_obj*)bbObjectDowncast((BBOBJECT)o,(BBClass*)&openb3d_openb3dcore_TEntity))),bbt_h);
	bbOnDebugLeaveScope();
	return 0;
}
BBINT _openb3d_openb3dcore_TGeosphere_CountVertices(struct openb3d_openb3dcore_TGeosphere_obj* o){
	((struct openb3d_openb3dcore_TGeosphere_obj*)bbNullObjectTest((BBObject*)o));
	struct BBDebugScope_1 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"CountVertices",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TGeosphere",
				.var_address=&o
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0xdeae01dd9e19c3e2, 61, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbOnDebugLeaveScope();
	return TerrainCountVertices_(openb3d_openb3dcore_TEntity_GetInstance_pb_TTEntity((struct openb3d_openb3dcore_TEntity_obj*)((struct openb3d_openb3dcore_TEntity_obj*)bbObjectDowncast((BBOBJECT)o,(BBClass*)&openb3d_openb3dcore_TEntity))));
}
BBINT _openb3d_openb3dcore_TGeosphere_CountTriangles(struct openb3d_openb3dcore_TGeosphere_obj* o){
	((struct openb3d_openb3dcore_TGeosphere_obj*)bbNullObjectTest((BBObject*)o));
	struct BBDebugScope_1 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"CountTriangles",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TGeosphere",
				.var_address=&o
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0xdeae01dd9e19c3e2, 67, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbOnDebugLeaveScope();
	return TerrainCountTriangles_(openb3d_openb3dcore_TEntity_GetInstance_pb_TTEntity((struct openb3d_openb3dcore_TEntity_obj*)((struct openb3d_openb3dcore_TEntity_obj*)bbObjectDowncast((BBOBJECT)o,(BBClass*)&openb3d_openb3dcore_TEntity))));
}
struct BBDebugScope_9 openb3d_openb3dcore_TGeosphere_scope ={
	BBDEBUGSCOPE_USERTYPE,
	"TGeosphere",
	{
		{
			BBDEBUGDECL_TYPEMETHOD,
			"New",
			"()i",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_TGeosphere_New
		},
		{
			BBDEBUGDECL_TYPEFUNCTION,
			"CreateObject",
			"(*b):TGeosphere",
			.func_ptr=(BBFuncPtr)&openb3d_openb3dcore_TGeosphere_CreateObject_TTGeosphere_pb
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"InitFields",
			"()i",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_TGeosphere_InitFields
		},
		{
			BBDEBUGDECL_TYPEFUNCTION,
			"CreateGeosphere",
			"(i,:TEntity):TGeosphere",
			.func_ptr=(BBFuncPtr)&openb3d_openb3dcore_TGeosphere_CreateGeosphere_TTGeosphere_iTTEntity
		},
		{
			BBDEBUGDECL_TYPEFUNCTION,
			"LoadGeosphere",
			"($,:TEntity):TGeosphere",
			.func_ptr=(BBFuncPtr)&openb3d_openb3dcore_TGeosphere_LoadGeosphere_TTGeosphere_STTEntity
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"ModifyGeosphere",
			"(i,i,f)i",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_TGeosphere_ModifyGeosphere_iif
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"GeosphereHeight",
			"(f)i",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_TGeosphere_GeosphereHeight_f
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"CountVertices",
			"()i",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_TGeosphere_CountVertices
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"CountTriangles",
			"()i",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_TGeosphere_CountTriangles
		},
		{
			BBDEBUGDECL_END
		}
	}
};
struct BBClass_openb3d_openb3dcore_TGeosphere openb3d_openb3dcore_TGeosphere={
	&openb3d_openb3dcore_TTerrain,
	bbObjectFree,
	(BBDebugScope*)&openb3d_openb3dcore_TGeosphere_scope,
	sizeof(struct openb3d_openb3dcore_TGeosphere_obj),
	(void (*)(BBOBJECT))_openb3d_openb3dcore_TGeosphere_New,
	(void (*)(BBOBJECT))_openb3d_openb3dcore_TGeosphere_Delete,
	bbObjectToString,
	bbObjectCompare,
	bbObjectSendMessage,
	0,
	0,
	0
	,0
	,sizeof(void*)
	,_openb3d_openb3dcore_TTerrain_CopyEntity_TTEntity
	,_openb3d_openb3dcore_TTerrain_Update
	,openb3d_openb3dcore_TEntity_FreeObject_i_pb
	,openb3d_openb3dcore_TEntity_GetObject_TTEntity_pb
	,openb3d_openb3dcore_TEntity_GetInstance_pb_TTEntity
	,openb3d_openb3dcore_TTerrain_InitGlobals_i
	,_openb3d_openb3dcore_TGeosphere_InitFields
	,_openb3d_openb3dcore_TTerrain_DebugFields_ii
	,_openb3d_openb3dcore_TEntity_AddList_TTList
	,openb3d_openb3dcore_TTerrain_AddList__i_TTList
	,_openb3d_openb3dcore_TEntity_CopyList_TTList
	,openb3d_openb3dcore_TTerrain_CopyList__i_TTList
	,_openb3d_openb3dcore_TEntity_EntityListAdd_TTListTObject
	,_openb3d_openb3dcore_TEntity_EntityListRemove_TTListTObject
	,_openb3d_openb3dcore_TEntity_AddAnimSeq_i
	,_openb3d_openb3dcore_TEntity_SetAnimKey_fiii
	,_openb3d_openb3dcore_TEntity_AlignToVector_fffif
	,_openb3d_openb3dcore_TEntity_GetString_pb
	,_openb3d_openb3dcore_TEntity_SetString_pbS
	,_openb3d_openb3dcore_TTerrain_FreeEntity
	,_openb3d_openb3dcore_TEntity_FreeEntityList
	,_openb3d_openb3dcore_TEntity_SetParent_TTEntity
	,_openb3d_openb3dcore_TEntity_PositionEntity_fffi
	,_openb3d_openb3dcore_TEntity_MoveEntity_fff
	,_openb3d_openb3dcore_TEntity_TranslateEntity_fffi
	,_openb3d_openb3dcore_TEntity_ScaleEntity_fffi
	,_openb3d_openb3dcore_TEntity_RotateEntity_fffi
	,_openb3d_openb3dcore_TEntity_TurnEntity_fffi
	,_openb3d_openb3dcore_TEntity_PointEntity_TTEntityf
	,_openb3d_openb3dcore_TEntity_LoadAnimSeq_S
	,_openb3d_openb3dcore_TEntity_ExtractAnimSeq_iii
	,_openb3d_openb3dcore_TEntity_Animate_ifii
	,_openb3d_openb3dcore_TEntity_SetAnimTime_fi
	,_openb3d_openb3dcore_TEntity_AnimSeq
	,_openb3d_openb3dcore_TEntity_AnimLength
	,_openb3d_openb3dcore_TEntity_AnimTime
	,_openb3d_openb3dcore_TEntity_Animating
	,_openb3d_openb3dcore_TEntity_EntityColor_fffi
	,_openb3d_openb3dcore_TEntity_EntityAlpha_f
	,_openb3d_openb3dcore_TEntity_EntityShininess_f
	,_openb3d_openb3dcore_TEntity_EntityTexture_TTTextureii
	,_openb3d_openb3dcore_TEntity_EntityBlend_i
	,_openb3d_openb3dcore_TEntity_EntityFX_i
	,_openb3d_openb3dcore_TEntity_PaintEntity_TTBrush
	,_openb3d_openb3dcore_TEntity_GetEntityBrush
	,_openb3d_openb3dcore_TEntity_EntityOrder_i
	,_openb3d_openb3dcore_TEntity_ShowEntity
	,_openb3d_openb3dcore_TEntity_HideEntity
	,_openb3d_openb3dcore_TEntity_NameEntity_S
	,_openb3d_openb3dcore_TEntity_EntityParent_TTEntityi
	,_openb3d_openb3dcore_TEntity_GetParent
	,_openb3d_openb3dcore_TEntity_EntityX_i
	,_openb3d_openb3dcore_TEntity_EntityY_i
	,_openb3d_openb3dcore_TEntity_EntityZ_i
	,_openb3d_openb3dcore_TEntity_EntityPitch_i
	,_openb3d_openb3dcore_TEntity_EntityYaw_i
	,_openb3d_openb3dcore_TEntity_EntityRoll_i
	,_openb3d_openb3dcore_TEntity_EntityClass
	,_openb3d_openb3dcore_TEntity_EntityName
	,_openb3d_openb3dcore_TEntity_CountChildren
	,_openb3d_openb3dcore_TEntity_GetChild_i
	,_openb3d_openb3dcore_TEntity_FindChild_S
	,_openb3d_openb3dcore_TEntity_EntityPick_f
	,_openb3d_openb3dcore_TEntity_LinePick_fffffff
	,_openb3d_openb3dcore_TEntity_EntityVisible_TTEntityTTEntity
	,_openb3d_openb3dcore_TEntity_EntityDistance_TTEntity
	,_openb3d_openb3dcore_TEntity_DeltaYaw_TTEntity
	,_openb3d_openb3dcore_TEntity_DeltaPitch_TTEntity
	,openb3d_openb3dcore_TEntity_TFormPoint_i_fffTTEntityTTEntity
	,openb3d_openb3dcore_TEntity_TFormVector_i_fffTTEntityTTEntity
	,openb3d_openb3dcore_TEntity_TFormNormal_i_fffTTEntityTTEntity
	,openb3d_openb3dcore_TEntity_TFormedX_f
	,openb3d_openb3dcore_TEntity_TFormedY_f
	,openb3d_openb3dcore_TEntity_TFormedZ_f
	,_openb3d_openb3dcore_TEntity_GetMatElement_ii
	,_openb3d_openb3dcore_TEntity_ResetEntity
	,_openb3d_openb3dcore_TEntity_EntityRadius_ff
	,_openb3d_openb3dcore_TEntity_EntityBox_ffffff
	,_openb3d_openb3dcore_TEntity_EntityType_ii
	,_openb3d_openb3dcore_TEntity_EntityPickMode_ii
	,_openb3d_openb3dcore_TEntity_EntityCollided_i
	,_openb3d_openb3dcore_TEntity_CountCollisions
	,_openb3d_openb3dcore_TEntity_CollisionX_i
	,_openb3d_openb3dcore_TEntity_CollisionY_i
	,_openb3d_openb3dcore_TEntity_CollisionZ_i
	,_openb3d_openb3dcore_TEntity_CollisionNX_i
	,_openb3d_openb3dcore_TEntity_CollisionNY_i
	,_openb3d_openb3dcore_TEntity_CollisionNZ_i
	,_openb3d_openb3dcore_TEntity_CollisionTime_i
	,_openb3d_openb3dcore_TEntity_CollisionEntity_i
	,_openb3d_openb3dcore_TEntity_CollisionSurface_i
	,_openb3d_openb3dcore_TEntity_CollisionTriangle_i
	,_openb3d_openb3dcore_TEntity_GetEntityType
	,_openb3d_openb3dcore_TEntity_MeshCullRadius_f
	,_openb3d_openb3dcore_TEntity_EntityScaleX_i
	,_openb3d_openb3dcore_TEntity_EntityScaleY_i
	,_openb3d_openb3dcore_TEntity_EntityScaleZ_i
	,_openb3d_openb3dcore_TEntity_Hidden
	,openb3d_openb3dcore_TEntity_CountAllChildren_i_TTEntityi
	,_openb3d_openb3dcore_TEntity_GetChildFromAll_iviTTEntity
	,_openb3d_openb3dcore_TEntity_ListParents_TTList
	,_openb3d_openb3dcore_TEntity_UpdateMat_b
	,_openb3d_openb3dcore_TEntity_AddParent_TTEntity
	,openb3d_openb3dcore_TEntity_UpdateChildren_i_TTEntity
	,_openb3d_openb3dcore_TEntity_EntityDistanceSquared_TTEntity
	,_openb3d_openb3dcore_TEntity_MQ_Update
	,_openb3d_openb3dcore_TEntity_MQ_GetInvMatrix_TTMatPtr
	,_openb3d_openb3dcore_TEntity_MQ_GetMatrix_TTMatPtr
	,_openb3d_openb3dcore_TEntity_MQ_GetScaleXYZ_vfvfvf
	,_openb3d_openb3dcore_TEntity_MQ_Turn_ffffi
	,openb3d_openb3dcore_TGeosphere_CreateObject_TTGeosphere_pb
	,openb3d_openb3dcore_TTerrain_DebugGlobals_i_ii
	,openb3d_openb3dcore_TTerrain_CreateTerrain_TTTerrain_iTTEntity
	,openb3d_openb3dcore_TTerrain_LoadTerrain_TTTerrain_STTEntity
	,_openb3d_openb3dcore_TTerrain_ModifyTerrain_iif
	,_openb3d_openb3dcore_TTerrain_TerrainHeight_ii
	,_openb3d_openb3dcore_TTerrain_TerrainX_fff
	,_openb3d_openb3dcore_TTerrain_TerrainY_fff
	,_openb3d_openb3dcore_TTerrain_TerrainZ_fff
	,_openb3d_openb3dcore_TTerrain_UpdateNormals
	,_openb3d_openb3dcore_TTerrain_TerrainDetail_f
	,_openb3d_openb3dcore_TTerrain_TerrainCountVertices
	,_openb3d_openb3dcore_TTerrain_TerrainCountTriangles
	,_openb3d_openb3dcore_TTerrain_TerrainScaleTexCoords_ffi
	,_openb3d_openb3dcore_TTerrain_UpdateTerrain
	,openb3d_openb3dcore_TGeosphere_CreateGeosphere_TTGeosphere_iTTEntity
	,openb3d_openb3dcore_TGeosphere_LoadGeosphere_TTGeosphere_STTEntity
	,_openb3d_openb3dcore_TGeosphere_ModifyGeosphere_iif
	,_openb3d_openb3dcore_TGeosphere_GeosphereHeight_f
	,_openb3d_openb3dcore_TGeosphere_CountVertices
	,_openb3d_openb3dcore_TGeosphere_CountTriangles
};

void _openb3d_openb3dcore_TOcTree_New(struct openb3d_openb3dcore_TOcTree_obj* o) {
	_openb3d_openb3dcore_TTerrain_New((struct openb3d_openb3dcore_TTerrain_obj*)o);
	o->clas = &openb3d_openb3dcore_TOcTree;
}
void _openb3d_openb3dcore_TOcTree_Delete(struct openb3d_openb3dcore_TOcTree_obj* o) {
	_openb3d_openb3dcore_TTerrain_Delete((struct openb3d_openb3dcore_TTerrain_obj*)o);
}
struct openb3d_openb3dcore_TOcTree_obj* openb3d_openb3dcore_TOcTree_CreateObject_TTOcTree_pb(BBBYTE* bbt_inst){
	struct openb3d_openb3dcore_TOcTree_obj* bbt_obj=(struct openb3d_openb3dcore_TOcTree_obj*)((struct openb3d_openb3dcore_TOcTree_obj*)&bbNullObject);
	struct BBDebugScope_2 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"CreateObject",
		{
			{
				BBDEBUGDECL_LOCAL,
				"inst",
				"*b",
				.var_address=&bbt_inst
			},
			{
				BBDEBUGDECL_LOCAL,
				"obj",
				":TOcTree",
				.var_address=&bbt_obj
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0xc446e5b6de7b1a5f, 11, 0};
	bbOnDebugEnterStm(&__stmt_0);
	if(bbt_inst==0){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0xc446e5b6de7b1a5f, 11, 0};
		bbOnDebugEnterStm(&__stmt_0);
		bbOnDebugLeaveScope();
		bbOnDebugLeaveScope();
		return (struct openb3d_openb3dcore_TOcTree_obj*)&bbNullObject;
	}
	struct BBDebugStm __stmt_1 = {0xc446e5b6de7b1a5f, 12, 0};
	bbOnDebugEnterStm(&__stmt_1);
	bbt_obj=(struct openb3d_openb3dcore_TOcTree_obj*)(struct openb3d_openb3dcore_TOcTree_obj*)bbObjectNew((BBClass *)&openb3d_openb3dcore_TOcTree);
	struct BBDebugStm __stmt_2 = {0xc446e5b6de7b1a5f, 14, 0};
	bbOnDebugEnterStm(&__stmt_2);
	((struct brl_map_ptrmap_TPtrMap_obj*)bbNullObjectTest((BBObject*)openb3d_openb3dcore_TEntity_ent_map))->clas->m_Insert_pbTObject((struct brl_map_ptrmap_TPtrMap_obj*)openb3d_openb3dcore_TEntity_ent_map,bbt_inst,(BBOBJECT)bbt_obj);
	struct BBDebugStm __stmt_3 = {0xc446e5b6de7b1a5f, 18, 0};
	bbOnDebugEnterStm(&__stmt_3);
	((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)bbt_obj))->_openb3d_openb3dcore_tentity_instance =bbt_inst;
	struct BBDebugStm __stmt_4 = {0xc446e5b6de7b1a5f, 19, 0};
	bbOnDebugEnterStm(&__stmt_4);
	((struct openb3d_openb3dcore_TOcTree_obj*)bbNullObjectTest((BBObject*)bbt_obj))->clas->m_InitFields((struct openb3d_openb3dcore_TOcTree_obj*)bbt_obj);
	struct BBDebugStm __stmt_5 = {0xc446e5b6de7b1a5f, 20, 0};
	bbOnDebugEnterStm(&__stmt_5);
	bbOnDebugLeaveScope();
	return (struct openb3d_openb3dcore_TOcTree_obj*)bbt_obj;
}
BBINT _openb3d_openb3dcore_TOcTree_InitFields(struct openb3d_openb3dcore_TOcTree_obj* o){
	((struct openb3d_openb3dcore_TOcTree_obj*)bbNullObjectTest((BBObject*)o));
	struct BBDebugScope_1 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"InitFields",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TOcTree",
				.var_address=&o
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0xc446e5b6de7b1a5f, 26, 0};
	bbOnDebugEnterStm(&__stmt_0);
	(&openb3d_openb3dcore_TOcTree)->super->m_InitFields((struct openb3d_openb3dcore_TTerrain_obj*)o);
	bbOnDebugLeaveScope();
	return 0;
}
struct openb3d_openb3dcore_TOcTree_obj* openb3d_openb3dcore_TOcTree_CreateOcTree_TTOcTree_fffTTEntity(BBFLOAT bbt_w,BBFLOAT bbt_h,BBFLOAT bbt_d,struct openb3d_openb3dcore_TEntity_obj* bbt_parent_ent){
	BBBYTE* bbt_inst=0;
	struct BBDebugScope_5 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"CreateOcTree",
		{
			{
				BBDEBUGDECL_LOCAL,
				"w",
				"f",
				.var_address=&bbt_w
			},
			{
				BBDEBUGDECL_LOCAL,
				"h",
				"f",
				.var_address=&bbt_h
			},
			{
				BBDEBUGDECL_LOCAL,
				"d",
				"f",
				.var_address=&bbt_d
			},
			{
				BBDEBUGDECL_LOCAL,
				"parent_ent",
				":TEntity",
				.var_address=&bbt_parent_ent
			},
			{
				BBDEBUGDECL_LOCAL,
				"inst",
				"*b",
				.var_address=&bbt_inst
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0xc446e5b6de7b1a5f, 34, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbt_inst=CreateOcTree_(bbt_w,bbt_h,bbt_d,openb3d_openb3dcore_TEntity_GetInstance_pb_TTEntity((struct openb3d_openb3dcore_TEntity_obj*)bbt_parent_ent));
	struct BBDebugStm __stmt_1 = {0xc446e5b6de7b1a5f, 35, 0};
	bbOnDebugEnterStm(&__stmt_1);
	bbOnDebugLeaveScope();
	return (struct openb3d_openb3dcore_TOcTree_obj*)openb3d_openb3dcore_TOcTree_CreateObject_TTOcTree_pb(bbt_inst);
}
BBINT _openb3d_openb3dcore_TOcTree_OctreeBlock_TTMeshifffff(struct openb3d_openb3dcore_TOcTree_obj* o,struct openb3d_openb3dcore_TMesh_obj* bbt_mesh,BBINT bbt_level,BBFLOAT bbt_X,BBFLOAT bbt_Y,BBFLOAT bbt_Z,BBFLOAT bbt_Near,BBFLOAT bbt_Far){
	((struct openb3d_openb3dcore_TOcTree_obj*)bbNullObjectTest((BBObject*)o));
	struct BBDebugScope_8 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"OctreeBlock",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TOcTree",
				.var_address=&o
			},
			{
				BBDEBUGDECL_LOCAL,
				"mesh",
				":TMesh",
				.var_address=&bbt_mesh
			},
			{
				BBDEBUGDECL_LOCAL,
				"level",
				"i",
				.var_address=&bbt_level
			},
			{
				BBDEBUGDECL_LOCAL,
				"X",
				"f",
				.var_address=&bbt_X
			},
			{
				BBDEBUGDECL_LOCAL,
				"Y",
				"f",
				.var_address=&bbt_Y
			},
			{
				BBDEBUGDECL_LOCAL,
				"Z",
				"f",
				.var_address=&bbt_Z
			},
			{
				BBDEBUGDECL_LOCAL,
				"Near",
				"f",
				.var_address=&bbt_Near
			},
			{
				BBDEBUGDECL_LOCAL,
				"Far",
				"f",
				.var_address=&bbt_Far
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0xc446e5b6de7b1a5f, 41, 0};
	bbOnDebugEnterStm(&__stmt_0);
	OctreeBlock_(openb3d_openb3dcore_TEntity_GetInstance_pb_TTEntity((struct openb3d_openb3dcore_TEntity_obj*)((struct openb3d_openb3dcore_TEntity_obj*)bbObjectDowncast((BBOBJECT)o,(BBClass*)&openb3d_openb3dcore_TEntity))),openb3d_openb3dcore_TEntity_GetInstance_pb_TTEntity((struct openb3d_openb3dcore_TEntity_obj*)((struct openb3d_openb3dcore_TEntity_obj*)bbObjectDowncast((BBOBJECT)bbt_mesh,(BBClass*)&openb3d_openb3dcore_TEntity))),bbt_level,bbt_X,bbt_Y,bbt_Z,bbt_Near,bbt_Far);
	bbOnDebugLeaveScope();
	return 0;
}
BBINT _openb3d_openb3dcore_TOcTree_OctreeMesh_TTMeshifffff(struct openb3d_openb3dcore_TOcTree_obj* o,struct openb3d_openb3dcore_TMesh_obj* bbt_mesh,BBINT bbt_level,BBFLOAT bbt_X,BBFLOAT bbt_Y,BBFLOAT bbt_Z,BBFLOAT bbt_Near,BBFLOAT bbt_Far){
	((struct openb3d_openb3dcore_TOcTree_obj*)bbNullObjectTest((BBObject*)o));
	struct BBDebugScope_8 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"OctreeMesh",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TOcTree",
				.var_address=&o
			},
			{
				BBDEBUGDECL_LOCAL,
				"mesh",
				":TMesh",
				.var_address=&bbt_mesh
			},
			{
				BBDEBUGDECL_LOCAL,
				"level",
				"i",
				.var_address=&bbt_level
			},
			{
				BBDEBUGDECL_LOCAL,
				"X",
				"f",
				.var_address=&bbt_X
			},
			{
				BBDEBUGDECL_LOCAL,
				"Y",
				"f",
				.var_address=&bbt_Y
			},
			{
				BBDEBUGDECL_LOCAL,
				"Z",
				"f",
				.var_address=&bbt_Z
			},
			{
				BBDEBUGDECL_LOCAL,
				"Near",
				"f",
				.var_address=&bbt_Near
			},
			{
				BBDEBUGDECL_LOCAL,
				"Far",
				"f",
				.var_address=&bbt_Far
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0xc446e5b6de7b1a5f, 47, 0};
	bbOnDebugEnterStm(&__stmt_0);
	OctreeMesh_(openb3d_openb3dcore_TEntity_GetInstance_pb_TTEntity((struct openb3d_openb3dcore_TEntity_obj*)((struct openb3d_openb3dcore_TEntity_obj*)bbObjectDowncast((BBOBJECT)o,(BBClass*)&openb3d_openb3dcore_TEntity))),openb3d_openb3dcore_TEntity_GetInstance_pb_TTEntity((struct openb3d_openb3dcore_TEntity_obj*)((struct openb3d_openb3dcore_TEntity_obj*)bbObjectDowncast((BBOBJECT)bbt_mesh,(BBClass*)&openb3d_openb3dcore_TEntity))),bbt_level,bbt_X,bbt_Y,bbt_Z,bbt_Near,bbt_Far);
	bbOnDebugLeaveScope();
	return 0;
}
struct BBDebugScope_6 openb3d_openb3dcore_TOcTree_scope ={
	BBDEBUGSCOPE_USERTYPE,
	"TOcTree",
	{
		{
			BBDEBUGDECL_TYPEMETHOD,
			"New",
			"()i",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_TOcTree_New
		},
		{
			BBDEBUGDECL_TYPEFUNCTION,
			"CreateObject",
			"(*b):TOcTree",
			.func_ptr=(BBFuncPtr)&openb3d_openb3dcore_TOcTree_CreateObject_TTOcTree_pb
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"InitFields",
			"()i",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_TOcTree_InitFields
		},
		{
			BBDEBUGDECL_TYPEFUNCTION,
			"CreateOcTree",
			"(f,f,f,:TEntity):TOcTree",
			.func_ptr=(BBFuncPtr)&openb3d_openb3dcore_TOcTree_CreateOcTree_TTOcTree_fffTTEntity
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"OctreeBlock",
			"(:TMesh,i,f,f,f,f,f)i",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_TOcTree_OctreeBlock_TTMeshifffff
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"OctreeMesh",
			"(:TMesh,i,f,f,f,f,f)i",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_TOcTree_OctreeMesh_TTMeshifffff
		},
		{
			BBDEBUGDECL_END
		}
	}
};
struct BBClass_openb3d_openb3dcore_TOcTree openb3d_openb3dcore_TOcTree={
	&openb3d_openb3dcore_TTerrain,
	bbObjectFree,
	(BBDebugScope*)&openb3d_openb3dcore_TOcTree_scope,
	sizeof(struct openb3d_openb3dcore_TOcTree_obj),
	(void (*)(BBOBJECT))_openb3d_openb3dcore_TOcTree_New,
	(void (*)(BBOBJECT))_openb3d_openb3dcore_TOcTree_Delete,
	bbObjectToString,
	bbObjectCompare,
	bbObjectSendMessage,
	0,
	0,
	0
	,0
	,sizeof(void*)
	,_openb3d_openb3dcore_TTerrain_CopyEntity_TTEntity
	,_openb3d_openb3dcore_TTerrain_Update
	,openb3d_openb3dcore_TEntity_FreeObject_i_pb
	,openb3d_openb3dcore_TEntity_GetObject_TTEntity_pb
	,openb3d_openb3dcore_TEntity_GetInstance_pb_TTEntity
	,openb3d_openb3dcore_TTerrain_InitGlobals_i
	,_openb3d_openb3dcore_TOcTree_InitFields
	,_openb3d_openb3dcore_TTerrain_DebugFields_ii
	,_openb3d_openb3dcore_TEntity_AddList_TTList
	,openb3d_openb3dcore_TTerrain_AddList__i_TTList
	,_openb3d_openb3dcore_TEntity_CopyList_TTList
	,openb3d_openb3dcore_TTerrain_CopyList__i_TTList
	,_openb3d_openb3dcore_TEntity_EntityListAdd_TTListTObject
	,_openb3d_openb3dcore_TEntity_EntityListRemove_TTListTObject
	,_openb3d_openb3dcore_TEntity_AddAnimSeq_i
	,_openb3d_openb3dcore_TEntity_SetAnimKey_fiii
	,_openb3d_openb3dcore_TEntity_AlignToVector_fffif
	,_openb3d_openb3dcore_TEntity_GetString_pb
	,_openb3d_openb3dcore_TEntity_SetString_pbS
	,_openb3d_openb3dcore_TTerrain_FreeEntity
	,_openb3d_openb3dcore_TEntity_FreeEntityList
	,_openb3d_openb3dcore_TEntity_SetParent_TTEntity
	,_openb3d_openb3dcore_TEntity_PositionEntity_fffi
	,_openb3d_openb3dcore_TEntity_MoveEntity_fff
	,_openb3d_openb3dcore_TEntity_TranslateEntity_fffi
	,_openb3d_openb3dcore_TEntity_ScaleEntity_fffi
	,_openb3d_openb3dcore_TEntity_RotateEntity_fffi
	,_openb3d_openb3dcore_TEntity_TurnEntity_fffi
	,_openb3d_openb3dcore_TEntity_PointEntity_TTEntityf
	,_openb3d_openb3dcore_TEntity_LoadAnimSeq_S
	,_openb3d_openb3dcore_TEntity_ExtractAnimSeq_iii
	,_openb3d_openb3dcore_TEntity_Animate_ifii
	,_openb3d_openb3dcore_TEntity_SetAnimTime_fi
	,_openb3d_openb3dcore_TEntity_AnimSeq
	,_openb3d_openb3dcore_TEntity_AnimLength
	,_openb3d_openb3dcore_TEntity_AnimTime
	,_openb3d_openb3dcore_TEntity_Animating
	,_openb3d_openb3dcore_TEntity_EntityColor_fffi
	,_openb3d_openb3dcore_TEntity_EntityAlpha_f
	,_openb3d_openb3dcore_TEntity_EntityShininess_f
	,_openb3d_openb3dcore_TEntity_EntityTexture_TTTextureii
	,_openb3d_openb3dcore_TEntity_EntityBlend_i
	,_openb3d_openb3dcore_TEntity_EntityFX_i
	,_openb3d_openb3dcore_TEntity_PaintEntity_TTBrush
	,_openb3d_openb3dcore_TEntity_GetEntityBrush
	,_openb3d_openb3dcore_TEntity_EntityOrder_i
	,_openb3d_openb3dcore_TEntity_ShowEntity
	,_openb3d_openb3dcore_TEntity_HideEntity
	,_openb3d_openb3dcore_TEntity_NameEntity_S
	,_openb3d_openb3dcore_TEntity_EntityParent_TTEntityi
	,_openb3d_openb3dcore_TEntity_GetParent
	,_openb3d_openb3dcore_TEntity_EntityX_i
	,_openb3d_openb3dcore_TEntity_EntityY_i
	,_openb3d_openb3dcore_TEntity_EntityZ_i
	,_openb3d_openb3dcore_TEntity_EntityPitch_i
	,_openb3d_openb3dcore_TEntity_EntityYaw_i
	,_openb3d_openb3dcore_TEntity_EntityRoll_i
	,_openb3d_openb3dcore_TEntity_EntityClass
	,_openb3d_openb3dcore_TEntity_EntityName
	,_openb3d_openb3dcore_TEntity_CountChildren
	,_openb3d_openb3dcore_TEntity_GetChild_i
	,_openb3d_openb3dcore_TEntity_FindChild_S
	,_openb3d_openb3dcore_TEntity_EntityPick_f
	,_openb3d_openb3dcore_TEntity_LinePick_fffffff
	,_openb3d_openb3dcore_TEntity_EntityVisible_TTEntityTTEntity
	,_openb3d_openb3dcore_TEntity_EntityDistance_TTEntity
	,_openb3d_openb3dcore_TEntity_DeltaYaw_TTEntity
	,_openb3d_openb3dcore_TEntity_DeltaPitch_TTEntity
	,openb3d_openb3dcore_TEntity_TFormPoint_i_fffTTEntityTTEntity
	,openb3d_openb3dcore_TEntity_TFormVector_i_fffTTEntityTTEntity
	,openb3d_openb3dcore_TEntity_TFormNormal_i_fffTTEntityTTEntity
	,openb3d_openb3dcore_TEntity_TFormedX_f
	,openb3d_openb3dcore_TEntity_TFormedY_f
	,openb3d_openb3dcore_TEntity_TFormedZ_f
	,_openb3d_openb3dcore_TEntity_GetMatElement_ii
	,_openb3d_openb3dcore_TEntity_ResetEntity
	,_openb3d_openb3dcore_TEntity_EntityRadius_ff
	,_openb3d_openb3dcore_TEntity_EntityBox_ffffff
	,_openb3d_openb3dcore_TEntity_EntityType_ii
	,_openb3d_openb3dcore_TEntity_EntityPickMode_ii
	,_openb3d_openb3dcore_TEntity_EntityCollided_i
	,_openb3d_openb3dcore_TEntity_CountCollisions
	,_openb3d_openb3dcore_TEntity_CollisionX_i
	,_openb3d_openb3dcore_TEntity_CollisionY_i
	,_openb3d_openb3dcore_TEntity_CollisionZ_i
	,_openb3d_openb3dcore_TEntity_CollisionNX_i
	,_openb3d_openb3dcore_TEntity_CollisionNY_i
	,_openb3d_openb3dcore_TEntity_CollisionNZ_i
	,_openb3d_openb3dcore_TEntity_CollisionTime_i
	,_openb3d_openb3dcore_TEntity_CollisionEntity_i
	,_openb3d_openb3dcore_TEntity_CollisionSurface_i
	,_openb3d_openb3dcore_TEntity_CollisionTriangle_i
	,_openb3d_openb3dcore_TEntity_GetEntityType
	,_openb3d_openb3dcore_TEntity_MeshCullRadius_f
	,_openb3d_openb3dcore_TEntity_EntityScaleX_i
	,_openb3d_openb3dcore_TEntity_EntityScaleY_i
	,_openb3d_openb3dcore_TEntity_EntityScaleZ_i
	,_openb3d_openb3dcore_TEntity_Hidden
	,openb3d_openb3dcore_TEntity_CountAllChildren_i_TTEntityi
	,_openb3d_openb3dcore_TEntity_GetChildFromAll_iviTTEntity
	,_openb3d_openb3dcore_TEntity_ListParents_TTList
	,_openb3d_openb3dcore_TEntity_UpdateMat_b
	,_openb3d_openb3dcore_TEntity_AddParent_TTEntity
	,openb3d_openb3dcore_TEntity_UpdateChildren_i_TTEntity
	,_openb3d_openb3dcore_TEntity_EntityDistanceSquared_TTEntity
	,_openb3d_openb3dcore_TEntity_MQ_Update
	,_openb3d_openb3dcore_TEntity_MQ_GetInvMatrix_TTMatPtr
	,_openb3d_openb3dcore_TEntity_MQ_GetMatrix_TTMatPtr
	,_openb3d_openb3dcore_TEntity_MQ_GetScaleXYZ_vfvfvf
	,_openb3d_openb3dcore_TEntity_MQ_Turn_ffffi
	,openb3d_openb3dcore_TOcTree_CreateObject_TTOcTree_pb
	,openb3d_openb3dcore_TTerrain_DebugGlobals_i_ii
	,openb3d_openb3dcore_TTerrain_CreateTerrain_TTTerrain_iTTEntity
	,openb3d_openb3dcore_TTerrain_LoadTerrain_TTTerrain_STTEntity
	,_openb3d_openb3dcore_TTerrain_ModifyTerrain_iif
	,_openb3d_openb3dcore_TTerrain_TerrainHeight_ii
	,_openb3d_openb3dcore_TTerrain_TerrainX_fff
	,_openb3d_openb3dcore_TTerrain_TerrainY_fff
	,_openb3d_openb3dcore_TTerrain_TerrainZ_fff
	,_openb3d_openb3dcore_TTerrain_UpdateNormals
	,_openb3d_openb3dcore_TTerrain_TerrainDetail_f
	,_openb3d_openb3dcore_TTerrain_TerrainCountVertices
	,_openb3d_openb3dcore_TTerrain_TerrainCountTriangles
	,_openb3d_openb3dcore_TTerrain_TerrainScaleTexCoords_ffi
	,_openb3d_openb3dcore_TTerrain_UpdateTerrain
	,openb3d_openb3dcore_TOcTree_CreateOcTree_TTOcTree_fffTTEntity
	,_openb3d_openb3dcore_TOcTree_OctreeBlock_TTMeshifffff
	,_openb3d_openb3dcore_TOcTree_OctreeMesh_TTMeshifffff
};

void _openb3d_openb3dcore_TVoxelSprite_New(struct openb3d_openb3dcore_TVoxelSprite_obj* o) {
	_openb3d_openb3dcore_TMesh_New((struct openb3d_openb3dcore_TMesh_obj*)o);
	o->clas = &openb3d_openb3dcore_TVoxelSprite;
}
void _openb3d_openb3dcore_TVoxelSprite_Delete(struct openb3d_openb3dcore_TVoxelSprite_obj* o) {
	_openb3d_openb3dcore_TMesh_Delete((struct openb3d_openb3dcore_TMesh_obj*)o);
}
struct openb3d_openb3dcore_TVoxelSprite_obj* openb3d_openb3dcore_TVoxelSprite_CreateObject_TTVoxelSprite_pb(BBBYTE* bbt_inst){
	struct openb3d_openb3dcore_TVoxelSprite_obj* bbt_obj=(struct openb3d_openb3dcore_TVoxelSprite_obj*)((struct openb3d_openb3dcore_TVoxelSprite_obj*)&bbNullObject);
	struct BBDebugScope_2 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"CreateObject",
		{
			{
				BBDEBUGDECL_LOCAL,
				"inst",
				"*b",
				.var_address=&bbt_inst
			},
			{
				BBDEBUGDECL_LOCAL,
				"obj",
				":TVoxelSprite",
				.var_address=&bbt_obj
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x4d40222d904adaa4, 9, 0};
	bbOnDebugEnterStm(&__stmt_0);
	if(bbt_inst==0){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x4d40222d904adaa4, 9, 0};
		bbOnDebugEnterStm(&__stmt_0);
		bbOnDebugLeaveScope();
		bbOnDebugLeaveScope();
		return (struct openb3d_openb3dcore_TVoxelSprite_obj*)&bbNullObject;
	}
	struct BBDebugStm __stmt_1 = {0x4d40222d904adaa4, 10, 0};
	bbOnDebugEnterStm(&__stmt_1);
	bbt_obj=(struct openb3d_openb3dcore_TVoxelSprite_obj*)(struct openb3d_openb3dcore_TVoxelSprite_obj*)bbObjectNew((BBClass *)&openb3d_openb3dcore_TVoxelSprite);
	struct BBDebugStm __stmt_2 = {0x4d40222d904adaa4, 12, 0};
	bbOnDebugEnterStm(&__stmt_2);
	((struct brl_map_ptrmap_TPtrMap_obj*)bbNullObjectTest((BBObject*)openb3d_openb3dcore_TEntity_ent_map))->clas->m_Insert_pbTObject((struct brl_map_ptrmap_TPtrMap_obj*)openb3d_openb3dcore_TEntity_ent_map,bbt_inst,(BBOBJECT)bbt_obj);
	struct BBDebugStm __stmt_3 = {0x4d40222d904adaa4, 16, 0};
	bbOnDebugEnterStm(&__stmt_3);
	((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)bbt_obj))->_openb3d_openb3dcore_tentity_instance =bbt_inst;
	struct BBDebugStm __stmt_4 = {0x4d40222d904adaa4, 17, 0};
	bbOnDebugEnterStm(&__stmt_4);
	((struct openb3d_openb3dcore_TVoxelSprite_obj*)bbNullObjectTest((BBObject*)bbt_obj))->clas->m_InitFields((struct openb3d_openb3dcore_TVoxelSprite_obj*)bbt_obj);
	struct BBDebugStm __stmt_5 = {0x4d40222d904adaa4, 18, 0};
	bbOnDebugEnterStm(&__stmt_5);
	bbOnDebugLeaveScope();
	return (struct openb3d_openb3dcore_TVoxelSprite_obj*)bbt_obj;
}
BBINT _openb3d_openb3dcore_TVoxelSprite_InitFields(struct openb3d_openb3dcore_TVoxelSprite_obj* o){
	((struct openb3d_openb3dcore_TVoxelSprite_obj*)bbNullObjectTest((BBObject*)o));
	struct BBDebugScope_1 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"InitFields",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TVoxelSprite",
				.var_address=&o
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x4d40222d904adaa4, 24, 0};
	bbOnDebugEnterStm(&__stmt_0);
	(&openb3d_openb3dcore_TVoxelSprite)->super->m_InitFields((struct openb3d_openb3dcore_TMesh_obj*)o);
	bbOnDebugLeaveScope();
	return 0;
}
struct openb3d_openb3dcore_TVoxelSprite_obj* openb3d_openb3dcore_TVoxelSprite_CreateVoxelSprite_TTVoxelSprite_iTTEntity(BBINT bbt_slices,struct openb3d_openb3dcore_TEntity_obj* bbt_parent){
	BBBYTE* bbt_inst=0;
	struct BBDebugScope_3 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"CreateVoxelSprite",
		{
			{
				BBDEBUGDECL_LOCAL,
				"slices",
				"i",
				.var_address=&bbt_slices
			},
			{
				BBDEBUGDECL_LOCAL,
				"parent",
				":TEntity",
				.var_address=&bbt_parent
			},
			{
				BBDEBUGDECL_LOCAL,
				"inst",
				"*b",
				.var_address=&bbt_inst
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x4d40222d904adaa4, 32, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbt_inst=CreateVoxelSprite_(bbt_slices,openb3d_openb3dcore_TEntity_GetInstance_pb_TTEntity((struct openb3d_openb3dcore_TEntity_obj*)bbt_parent));
	struct BBDebugStm __stmt_1 = {0x4d40222d904adaa4, 33, 0};
	bbOnDebugEnterStm(&__stmt_1);
	bbOnDebugLeaveScope();
	return (struct openb3d_openb3dcore_TVoxelSprite_obj*)openb3d_openb3dcore_TVoxelSprite_CreateObject_TTVoxelSprite_pb(bbt_inst);
}
BBINT _openb3d_openb3dcore_TVoxelSprite_VoxelSpriteMaterial_TTMaterial(struct openb3d_openb3dcore_TVoxelSprite_obj* o,struct openb3d_openb3dcore_TMaterial_obj* bbt_mat){
	((struct openb3d_openb3dcore_TVoxelSprite_obj*)bbNullObjectTest((BBObject*)o));
	struct BBDebugScope_2 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"VoxelSpriteMaterial",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TVoxelSprite",
				.var_address=&o
			},
			{
				BBDEBUGDECL_LOCAL,
				"mat",
				":TMaterial",
				.var_address=&bbt_mat
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x4d40222d904adaa4, 39, 0};
	bbOnDebugEnterStm(&__stmt_0);
	VoxelSpriteMaterial_(openb3d_openb3dcore_TEntity_GetInstance_pb_TTEntity((struct openb3d_openb3dcore_TEntity_obj*)((struct openb3d_openb3dcore_TEntity_obj*)bbObjectDowncast((BBOBJECT)o,(BBClass*)&openb3d_openb3dcore_TEntity))),openb3d_openb3dcore_TTexture_GetInstance_pb_TTTexture((struct openb3d_openb3dcore_TTexture_obj*)((struct openb3d_openb3dcore_TTexture_obj*)bbObjectDowncast((BBOBJECT)bbt_mat,(BBClass*)&openb3d_openb3dcore_TTexture))));
	bbOnDebugLeaveScope();
	return 0;
}
struct BBDebugScope_5 openb3d_openb3dcore_TVoxelSprite_scope ={
	BBDEBUGSCOPE_USERTYPE,
	"TVoxelSprite",
	{
		{
			BBDEBUGDECL_TYPEMETHOD,
			"New",
			"()i",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_TVoxelSprite_New
		},
		{
			BBDEBUGDECL_TYPEFUNCTION,
			"CreateObject",
			"(*b):TVoxelSprite",
			.func_ptr=(BBFuncPtr)&openb3d_openb3dcore_TVoxelSprite_CreateObject_TTVoxelSprite_pb
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"InitFields",
			"()i",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_TVoxelSprite_InitFields
		},
		{
			BBDEBUGDECL_TYPEFUNCTION,
			"CreateVoxelSprite",
			"(i,:TEntity):TVoxelSprite",
			.func_ptr=(BBFuncPtr)&openb3d_openb3dcore_TVoxelSprite_CreateVoxelSprite_TTVoxelSprite_iTTEntity
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"VoxelSpriteMaterial",
			"(:TMaterial)i",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_TVoxelSprite_VoxelSpriteMaterial_TTMaterial
		},
		{
			BBDEBUGDECL_END
		}
	}
};
struct BBClass_openb3d_openb3dcore_TVoxelSprite openb3d_openb3dcore_TVoxelSprite={
	&openb3d_openb3dcore_TMesh,
	bbObjectFree,
	(BBDebugScope*)&openb3d_openb3dcore_TVoxelSprite_scope,
	sizeof(struct openb3d_openb3dcore_TVoxelSprite_obj),
	(void (*)(BBOBJECT))_openb3d_openb3dcore_TVoxelSprite_New,
	(void (*)(BBOBJECT))_openb3d_openb3dcore_TVoxelSprite_Delete,
	bbObjectToString,
	bbObjectCompare,
	bbObjectSendMessage,
	0,
	0,
	0
	,0
	,sizeof(void*)
	,_openb3d_openb3dcore_TMesh_CopyEntity_TTEntity
	,_openb3d_openb3dcore_TMesh_Update
	,openb3d_openb3dcore_TEntity_FreeObject_i_pb
	,openb3d_openb3dcore_TEntity_GetObject_TTEntity_pb
	,openb3d_openb3dcore_TEntity_GetInstance_pb_TTEntity
	,openb3d_openb3dcore_TEntity_InitGlobals_i
	,_openb3d_openb3dcore_TVoxelSprite_InitFields
	,_openb3d_openb3dcore_TMesh_DebugFields_ii
	,_openb3d_openb3dcore_TMesh_AddList_TTList
	,openb3d_openb3dcore_TEntity_AddList__i_TTList
	,_openb3d_openb3dcore_TMesh_CopyList_TTList
	,openb3d_openb3dcore_TEntity_CopyList__i_TTList
	,_openb3d_openb3dcore_TEntity_EntityListAdd_TTListTObject
	,_openb3d_openb3dcore_TEntity_EntityListRemove_TTListTObject
	,_openb3d_openb3dcore_TEntity_AddAnimSeq_i
	,_openb3d_openb3dcore_TEntity_SetAnimKey_fiii
	,_openb3d_openb3dcore_TEntity_AlignToVector_fffif
	,_openb3d_openb3dcore_TEntity_GetString_pb
	,_openb3d_openb3dcore_TEntity_SetString_pbS
	,_openb3d_openb3dcore_TMesh_FreeEntity
	,_openb3d_openb3dcore_TEntity_FreeEntityList
	,_openb3d_openb3dcore_TEntity_SetParent_TTEntity
	,_openb3d_openb3dcore_TEntity_PositionEntity_fffi
	,_openb3d_openb3dcore_TEntity_MoveEntity_fff
	,_openb3d_openb3dcore_TEntity_TranslateEntity_fffi
	,_openb3d_openb3dcore_TEntity_ScaleEntity_fffi
	,_openb3d_openb3dcore_TEntity_RotateEntity_fffi
	,_openb3d_openb3dcore_TEntity_TurnEntity_fffi
	,_openb3d_openb3dcore_TEntity_PointEntity_TTEntityf
	,_openb3d_openb3dcore_TEntity_LoadAnimSeq_S
	,_openb3d_openb3dcore_TEntity_ExtractAnimSeq_iii
	,_openb3d_openb3dcore_TEntity_Animate_ifii
	,_openb3d_openb3dcore_TEntity_SetAnimTime_fi
	,_openb3d_openb3dcore_TEntity_AnimSeq
	,_openb3d_openb3dcore_TEntity_AnimLength
	,_openb3d_openb3dcore_TEntity_AnimTime
	,_openb3d_openb3dcore_TEntity_Animating
	,_openb3d_openb3dcore_TEntity_EntityColor_fffi
	,_openb3d_openb3dcore_TEntity_EntityAlpha_f
	,_openb3d_openb3dcore_TEntity_EntityShininess_f
	,_openb3d_openb3dcore_TEntity_EntityTexture_TTTextureii
	,_openb3d_openb3dcore_TEntity_EntityBlend_i
	,_openb3d_openb3dcore_TEntity_EntityFX_i
	,_openb3d_openb3dcore_TEntity_PaintEntity_TTBrush
	,_openb3d_openb3dcore_TEntity_GetEntityBrush
	,_openb3d_openb3dcore_TEntity_EntityOrder_i
	,_openb3d_openb3dcore_TEntity_ShowEntity
	,_openb3d_openb3dcore_TEntity_HideEntity
	,_openb3d_openb3dcore_TEntity_NameEntity_S
	,_openb3d_openb3dcore_TEntity_EntityParent_TTEntityi
	,_openb3d_openb3dcore_TEntity_GetParent
	,_openb3d_openb3dcore_TEntity_EntityX_i
	,_openb3d_openb3dcore_TEntity_EntityY_i
	,_openb3d_openb3dcore_TEntity_EntityZ_i
	,_openb3d_openb3dcore_TEntity_EntityPitch_i
	,_openb3d_openb3dcore_TEntity_EntityYaw_i
	,_openb3d_openb3dcore_TEntity_EntityRoll_i
	,_openb3d_openb3dcore_TEntity_EntityClass
	,_openb3d_openb3dcore_TEntity_EntityName
	,_openb3d_openb3dcore_TEntity_CountChildren
	,_openb3d_openb3dcore_TEntity_GetChild_i
	,_openb3d_openb3dcore_TEntity_FindChild_S
	,_openb3d_openb3dcore_TEntity_EntityPick_f
	,_openb3d_openb3dcore_TEntity_LinePick_fffffff
	,_openb3d_openb3dcore_TEntity_EntityVisible_TTEntityTTEntity
	,_openb3d_openb3dcore_TEntity_EntityDistance_TTEntity
	,_openb3d_openb3dcore_TEntity_DeltaYaw_TTEntity
	,_openb3d_openb3dcore_TEntity_DeltaPitch_TTEntity
	,openb3d_openb3dcore_TEntity_TFormPoint_i_fffTTEntityTTEntity
	,openb3d_openb3dcore_TEntity_TFormVector_i_fffTTEntityTTEntity
	,openb3d_openb3dcore_TEntity_TFormNormal_i_fffTTEntityTTEntity
	,openb3d_openb3dcore_TEntity_TFormedX_f
	,openb3d_openb3dcore_TEntity_TFormedY_f
	,openb3d_openb3dcore_TEntity_TFormedZ_f
	,_openb3d_openb3dcore_TEntity_GetMatElement_ii
	,_openb3d_openb3dcore_TEntity_ResetEntity
	,_openb3d_openb3dcore_TEntity_EntityRadius_ff
	,_openb3d_openb3dcore_TEntity_EntityBox_ffffff
	,_openb3d_openb3dcore_TEntity_EntityType_ii
	,_openb3d_openb3dcore_TEntity_EntityPickMode_ii
	,_openb3d_openb3dcore_TEntity_EntityCollided_i
	,_openb3d_openb3dcore_TEntity_CountCollisions
	,_openb3d_openb3dcore_TEntity_CollisionX_i
	,_openb3d_openb3dcore_TEntity_CollisionY_i
	,_openb3d_openb3dcore_TEntity_CollisionZ_i
	,_openb3d_openb3dcore_TEntity_CollisionNX_i
	,_openb3d_openb3dcore_TEntity_CollisionNY_i
	,_openb3d_openb3dcore_TEntity_CollisionNZ_i
	,_openb3d_openb3dcore_TEntity_CollisionTime_i
	,_openb3d_openb3dcore_TEntity_CollisionEntity_i
	,_openb3d_openb3dcore_TEntity_CollisionSurface_i
	,_openb3d_openb3dcore_TEntity_CollisionTriangle_i
	,_openb3d_openb3dcore_TEntity_GetEntityType
	,_openb3d_openb3dcore_TEntity_MeshCullRadius_f
	,_openb3d_openb3dcore_TEntity_EntityScaleX_i
	,_openb3d_openb3dcore_TEntity_EntityScaleY_i
	,_openb3d_openb3dcore_TEntity_EntityScaleZ_i
	,_openb3d_openb3dcore_TEntity_Hidden
	,openb3d_openb3dcore_TEntity_CountAllChildren_i_TTEntityi
	,_openb3d_openb3dcore_TEntity_GetChildFromAll_iviTTEntity
	,_openb3d_openb3dcore_TEntity_ListParents_TTList
	,_openb3d_openb3dcore_TEntity_UpdateMat_b
	,_openb3d_openb3dcore_TEntity_AddParent_TTEntity
	,openb3d_openb3dcore_TEntity_UpdateChildren_i_TTEntity
	,_openb3d_openb3dcore_TEntity_EntityDistanceSquared_TTEntity
	,_openb3d_openb3dcore_TEntity_MQ_Update
	,_openb3d_openb3dcore_TEntity_MQ_GetInvMatrix_TTMatPtr
	,_openb3d_openb3dcore_TEntity_MQ_GetMatrix_TTMatPtr
	,_openb3d_openb3dcore_TEntity_MQ_GetScaleXYZ_vfvfvf
	,_openb3d_openb3dcore_TEntity_MQ_Turn_ffffi
	,openb3d_openb3dcore_TVoxelSprite_CreateObject_TTVoxelSprite_pb
	,_openb3d_openb3dcore_TMesh_MeshListAdd_TTListTObject
	,_openb3d_openb3dcore_TMesh_MeshListRemove_TTListTObject
	,_openb3d_openb3dcore_TMesh_MeshArrayResize_ii
	,_openb3d_openb3dcore_TMesh_MeshArraySet_iiTObject
	,openb3d_openb3dcore_TMesh_NewMesh_TTMesh
	,openb3d_openb3dcore_TMesh_Create_TTMesh
	,_openb3d_openb3dcore_TMesh_LightMesh_fffffff
	,_openb3d_openb3dcore_TMesh_CreateAllChildren
	,openb3d_openb3dcore_TMesh_CreatePlane_TTMesh_iTTEntity
	,openb3d_openb3dcore_TMesh_UpdatePlane_i_TTMesh
	,_openb3d_openb3dcore_TMesh_CreateBone_TTEntity
	,openb3d_openb3dcore_TMesh_CreateQuad_TTMesh_TTEntity
	,openb3d_openb3dcore_TMesh_MeshCSG_TTMesh_TTMeshTTMeshi
	,_openb3d_openb3dcore_TMesh_MeshesIntersect_TTMesh
	,_openb3d_openb3dcore_TMesh_RepeatMesh_TTEntity
	,_openb3d_openb3dcore_TMesh_SkinMesh_iiifififif
	,_openb3d_openb3dcore_TMesh_PositionAnimMesh_fff
	,_openb3d_openb3dcore_TMesh_RotateAnimMesh_fff
	,_openb3d_openb3dcore_TMesh_ScaleAnimMesh_fff
	,_openb3d_openb3dcore_TMesh_TransformVertices_TTMatPtr
	,_openb3d_openb3dcore_TMesh_UpdateVerticesNormals_TTSurface
	,openb3d_openb3dcore_TMesh_CreateMesh_TTMesh_TTEntity
	,openb3d_openb3dcore_TMesh_CreateCube_TTMesh_TTEntity
	,openb3d_openb3dcore_TMesh_CreateSphere_TTMesh_iTTEntity
	,openb3d_openb3dcore_TMesh_CreateCylinder_TTMesh_iiTTEntity
	,openb3d_openb3dcore_TMesh_CreateCone_TTMesh_iiTTEntity
	,_openb3d_openb3dcore_TMesh_CopyMesh_TTEntity
	,_openb3d_openb3dcore_TMesh_AddMesh_TTMesh
	,_openb3d_openb3dcore_TMesh_FlipMesh
	,_openb3d_openb3dcore_TMesh_PaintMesh_TTBrush
	,_openb3d_openb3dcore_TMesh_FitMesh_ffffffi
	,_openb3d_openb3dcore_TMesh_ScaleMesh_fff
	,_openb3d_openb3dcore_TMesh_RotateMesh_fff
	,_openb3d_openb3dcore_TMesh_PositionMesh_fff
	,_openb3d_openb3dcore_TMesh_UpdateNormals
	,_openb3d_openb3dcore_TMesh_CreateSurface_TTBrush
	,_openb3d_openb3dcore_TMesh_MeshWidth
	,_openb3d_openb3dcore_TMesh_MeshHeight
	,_openb3d_openb3dcore_TMesh_MeshDepth
	,_openb3d_openb3dcore_TMesh_CountSurfaces
	,_openb3d_openb3dcore_TMesh_GetSurface_i
	,_openb3d_openb3dcore_TMesh_FindSurface_TTBrush
	,_openb3d_openb3dcore_TMesh_CountVertices
	,_openb3d_openb3dcore_TMesh_CountTriangles
	,openb3d_openb3dcore_TMesh_CopyBonesList_i_TTEntity
	,_openb3d_openb3dcore_TMesh_CollapseAnimMesh
	,_openb3d_openb3dcore_TMesh_CollapseChildren_TTEntityTTMesh
	,_openb3d_openb3dcore_TMesh_TransformMesh_TTMatPtr
	,_openb3d_openb3dcore_TMesh_GetBounds
	,_openb3d_openb3dcore_TMesh_Alpha
	,_openb3d_openb3dcore_TMesh_MeshColor_ffff
	,_openb3d_openb3dcore_TMesh_MeshRed_f
	,_openb3d_openb3dcore_TMesh_MeshGreen_f
	,_openb3d_openb3dcore_TMesh_MeshBlue_f
	,_openb3d_openb3dcore_TMesh_MeshAlpha_f
	,_openb3d_openb3dcore_TMesh_TreeCheck
	,_openb3d_openb3dcore_TMesh_Render
	,_openb3d_openb3dcore_TMesh_UpdateShadow
	,openb3d_openb3dcore_TVoxelSprite_CreateVoxelSprite_TTVoxelSprite_iTTEntity
	,_openb3d_openb3dcore_TVoxelSprite_VoxelSpriteMaterial_TTMaterial
};

void _openb3d_openb3dcore_TAction_New(struct openb3d_openb3dcore_TAction_obj* o) {
	bbObjectCtor((BBOBJECT)o);
	o->clas = &openb3d_openb3dcore_TAction;
	((struct openb3d_openb3dcore_TAction_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_taction_act = 0;
	((struct openb3d_openb3dcore_TAction_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_taction_ent = (struct openb3d_openb3dcore_TEntity_obj*)((struct openb3d_openb3dcore_TEntity_obj*)&bbNullObject);
	((struct openb3d_openb3dcore_TAction_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_taction_target = (struct openb3d_openb3dcore_TEntity_obj*)((struct openb3d_openb3dcore_TEntity_obj*)&bbNullObject);
	((struct openb3d_openb3dcore_TAction_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_taction_rate = 0;
	((struct openb3d_openb3dcore_TAction_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_taction_a = 0;
	((struct openb3d_openb3dcore_TAction_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_taction_b = 0;
	((struct openb3d_openb3dcore_TAction_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_taction_c = 0;
	((struct openb3d_openb3dcore_TAction_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_taction_endact = 0;
	((struct openb3d_openb3dcore_TAction_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_taction_lifetime = 0;
	((struct openb3d_openb3dcore_TAction_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_taction_instance = 0;
	((struct openb3d_openb3dcore_TAction_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_taction_exists = 0;
}
struct openb3d_openb3dcore_TAction_obj* openb3d_openb3dcore_TAction_CreateObject_TTAction_pb(BBBYTE* bbt_inst){
	struct openb3d_openb3dcore_TAction_obj* bbt_obj=(struct openb3d_openb3dcore_TAction_obj*)((struct openb3d_openb3dcore_TAction_obj*)&bbNullObject);
	struct BBDebugScope_2 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"CreateObject",
		{
			{
				BBDEBUGDECL_LOCAL,
				"inst",
				"*b",
				.var_address=&bbt_inst
			},
			{
				BBDEBUGDECL_LOCAL,
				"obj",
				":TAction",
				.var_address=&bbt_obj
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0xbc887fbb172a5d2b, 47, 0};
	bbOnDebugEnterStm(&__stmt_0);
	if(bbt_inst==0){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0xbc887fbb172a5d2b, 47, 0};
		bbOnDebugEnterStm(&__stmt_0);
		bbOnDebugLeaveScope();
		bbOnDebugLeaveScope();
		return (struct openb3d_openb3dcore_TAction_obj*)&bbNullObject;
	}
	struct BBDebugStm __stmt_1 = {0xbc887fbb172a5d2b, 48, 0};
	bbOnDebugEnterStm(&__stmt_1);
	bbt_obj=(struct openb3d_openb3dcore_TAction_obj*)(struct openb3d_openb3dcore_TAction_obj*)bbObjectNew((BBClass *)&openb3d_openb3dcore_TAction);
	struct BBDebugStm __stmt_2 = {0xbc887fbb172a5d2b, 50, 0};
	bbOnDebugEnterStm(&__stmt_2);
	((struct brl_map_ptrmap_TPtrMap_obj*)bbNullObjectTest((BBObject*)openb3d_openb3dcore_TAction_action_map))->clas->m_Insert_pbTObject((struct brl_map_ptrmap_TPtrMap_obj*)openb3d_openb3dcore_TAction_action_map,bbt_inst,(BBOBJECT)bbt_obj);
	struct BBDebugStm __stmt_3 = {0xbc887fbb172a5d2b, 54, 0};
	bbOnDebugEnterStm(&__stmt_3);
	((struct openb3d_openb3dcore_TAction_obj*)bbNullObjectTest((BBObject*)bbt_obj))->_openb3d_openb3dcore_taction_instance =bbt_inst;
	struct BBDebugStm __stmt_4 = {0xbc887fbb172a5d2b, 55, 0};
	bbOnDebugEnterStm(&__stmt_4);
	((struct openb3d_openb3dcore_TAction_obj*)bbNullObjectTest((BBObject*)bbt_obj))->clas->m_InitFields((struct openb3d_openb3dcore_TAction_obj*)bbt_obj);
	struct BBDebugStm __stmt_5 = {0xbc887fbb172a5d2b, 56, 0};
	bbOnDebugEnterStm(&__stmt_5);
	bbOnDebugLeaveScope();
	return (struct openb3d_openb3dcore_TAction_obj*)bbt_obj;
}
BBINT openb3d_openb3dcore_TAction_FreeObject_i_pb(BBBYTE* bbt_inst){
	struct BBDebugScope_1 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"FreeObject",
		{
			{
				BBDEBUGDECL_LOCAL,
				"inst",
				"*b",
				.var_address=&bbt_inst
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0xbc887fbb172a5d2b, 63, 0};
	bbOnDebugEnterStm(&__stmt_0);
	((struct brl_map_ptrmap_TPtrMap_obj*)bbNullObjectTest((BBObject*)openb3d_openb3dcore_TAction_action_map))->clas->m_Remove_pb((struct brl_map_ptrmap_TPtrMap_obj*)openb3d_openb3dcore_TAction_action_map,bbt_inst);
	bbOnDebugLeaveScope();
	return 0;
}
struct openb3d_openb3dcore_TAction_obj* openb3d_openb3dcore_TAction_GetObject_TTAction_pb(BBBYTE* bbt_inst){
	struct BBDebugScope_1 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"GetObject",
		{
			{
				BBDEBUGDECL_LOCAL,
				"inst",
				"*b",
				.var_address=&bbt_inst
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0xbc887fbb172a5d2b, 73, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbOnDebugLeaveScope();
	return (struct openb3d_openb3dcore_TAction_obj*)((struct openb3d_openb3dcore_TAction_obj*)bbObjectDowncast((BBOBJECT)((struct brl_map_ptrmap_TPtrMap_obj*)bbNullObjectTest((BBObject*)openb3d_openb3dcore_TAction_action_map))->clas->m_ValueForKey_pb((struct brl_map_ptrmap_TPtrMap_obj*)openb3d_openb3dcore_TAction_action_map,bbt_inst),(BBClass*)&openb3d_openb3dcore_TAction));
}
BBBYTE* openb3d_openb3dcore_TAction_GetInstance_pb_TTAction(struct openb3d_openb3dcore_TAction_obj* bbt_obj){
	struct BBDebugScope_1 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"GetInstance",
		{
			{
				BBDEBUGDECL_LOCAL,
				"obj",
				":TAction",
				.var_address=&bbt_obj
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0xbc887fbb172a5d2b, 82, 0};
	bbOnDebugEnterStm(&__stmt_0);
	if(((BBOBJECT)bbt_obj)==&bbNullObject){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0xbc887fbb172a5d2b, 82, 0};
		bbOnDebugEnterStm(&__stmt_0);
		bbOnDebugLeaveScope();
		bbOnDebugLeaveScope();
		return 0;
	}
	struct BBDebugStm __stmt_1 = {0xbc887fbb172a5d2b, 83, 0};
	bbOnDebugEnterStm(&__stmt_1);
	bbOnDebugLeaveScope();
	return ((struct openb3d_openb3dcore_TAction_obj*)bbNullObjectTest((BBObject*)bbt_obj))->_openb3d_openb3dcore_taction_instance ;
}
BBINT _openb3d_openb3dcore_TAction_InitFields(struct openb3d_openb3dcore_TAction_obj* o){
	((struct openb3d_openb3dcore_TAction_obj*)bbNullObjectTest((BBObject*)o));
	BBBYTE* bbt_inst=0;
	struct BBDebugScope_2 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"InitFields",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TAction",
				.var_address=&o
			},
			{
				BBDEBUGDECL_LOCAL,
				"inst",
				"*b",
				.var_address=&bbt_inst
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0xbc887fbb172a5d2b, 90, 0};
	bbOnDebugEnterStm(&__stmt_0);
	((struct openb3d_openb3dcore_TAction_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_taction_act =ActionInt_(o->clas->f_GetInstance_pb_TTAction((struct openb3d_openb3dcore_TAction_obj*)o),2);
	struct BBDebugStm __stmt_1 = {0xbc887fbb172a5d2b, 91, 0};
	bbOnDebugEnterStm(&__stmt_1);
	((struct openb3d_openb3dcore_TAction_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_taction_endact =ActionInt_(o->clas->f_GetInstance_pb_TTAction((struct openb3d_openb3dcore_TAction_obj*)o),11);
	struct BBDebugStm __stmt_2 = {0xbc887fbb172a5d2b, 92, 0};
	bbOnDebugEnterStm(&__stmt_2);
	((struct openb3d_openb3dcore_TAction_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_taction_lifetime =ActionInt_(o->clas->f_GetInstance_pb_TTAction((struct openb3d_openb3dcore_TAction_obj*)o),12);
	struct BBDebugStm __stmt_3 = {0xbc887fbb172a5d2b, 95, 0};
	bbOnDebugEnterStm(&__stmt_3);
	((struct openb3d_openb3dcore_TAction_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_taction_rate =ActionFloat_(o->clas->f_GetInstance_pb_TTAction((struct openb3d_openb3dcore_TAction_obj*)o),5);
	struct BBDebugStm __stmt_4 = {0xbc887fbb172a5d2b, 96, 0};
	bbOnDebugEnterStm(&__stmt_4);
	((struct openb3d_openb3dcore_TAction_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_taction_a =ActionFloat_(o->clas->f_GetInstance_pb_TTAction((struct openb3d_openb3dcore_TAction_obj*)o),6);
	struct BBDebugStm __stmt_5 = {0xbc887fbb172a5d2b, 97, 0};
	bbOnDebugEnterStm(&__stmt_5);
	((struct openb3d_openb3dcore_TAction_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_taction_b =ActionFloat_(o->clas->f_GetInstance_pb_TTAction((struct openb3d_openb3dcore_TAction_obj*)o),7);
	struct BBDebugStm __stmt_6 = {0xbc887fbb172a5d2b, 98, 0};
	bbOnDebugEnterStm(&__stmt_6);
	((struct openb3d_openb3dcore_TAction_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_taction_c =ActionFloat_(o->clas->f_GetInstance_pb_TTAction((struct openb3d_openb3dcore_TAction_obj*)o),8);
	struct BBDebugStm __stmt_7 = {0xbc887fbb172a5d2b, 101, 0};
	bbOnDebugEnterStm(&__stmt_7);
	bbt_inst=ActionEntity_(o->clas->f_GetInstance_pb_TTAction((struct openb3d_openb3dcore_TAction_obj*)o),3);
	struct BBDebugStm __stmt_8 = {0xbc887fbb172a5d2b, 102, 0};
	bbOnDebugEnterStm(&__stmt_8);
	((struct openb3d_openb3dcore_TAction_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_taction_ent =(struct openb3d_openb3dcore_TEntity_obj*)openb3d_openb3dcore_TEntity_GetObject_TTEntity_pb(bbt_inst);
	struct BBDebugStm __stmt_9 = {0xbc887fbb172a5d2b, 103, 0};
	bbOnDebugEnterStm(&__stmt_9);
	bbt_inst=ActionEntity_(o->clas->f_GetInstance_pb_TTAction((struct openb3d_openb3dcore_TAction_obj*)o),4);
	struct BBDebugStm __stmt_10 = {0xbc887fbb172a5d2b, 104, 0};
	bbOnDebugEnterStm(&__stmt_10);
	((struct openb3d_openb3dcore_TAction_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_taction_target =(struct openb3d_openb3dcore_TEntity_obj*)openb3d_openb3dcore_TEntity_GetObject_TTEntity_pb(bbt_inst);
	struct BBDebugStm __stmt_11 = {0xbc887fbb172a5d2b, 106, 0};
	bbOnDebugEnterStm(&__stmt_11);
	o->clas->f_CopyList__i_TTList((struct brl_linkedlist_TList_obj*)openb3d_openb3dcore_TAction_action_list);
	struct BBDebugStm __stmt_12 = {0xbc887fbb172a5d2b, 107, 0};
	bbOnDebugEnterStm(&__stmt_12);
	((struct openb3d_openb3dcore_TAction_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_taction_exists =1;
	bbOnDebugLeaveScope();
	return 0;
}
BBINT _openb3d_openb3dcore_TAction_DebugFields_ii(struct openb3d_openb3dcore_TAction_obj* o,BBINT bbt_debug_subobjects,BBINT bbt_debug_base_types){
	((struct openb3d_openb3dcore_TAction_obj*)bbNullObjectTest((BBObject*)o));
	BBSTRING bbt_pad=(&bbEmptyString);
	BBINT bbt_loop=0;
	struct BBDebugScope_5 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"DebugFields",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TAction",
				.var_address=&o
			},
			{
				BBDEBUGDECL_LOCAL,
				"debug_subobjects",
				"i",
				.var_address=&bbt_debug_subobjects
			},
			{
				BBDEBUGDECL_LOCAL,
				"debug_base_types",
				"i",
				.var_address=&bbt_debug_base_types
			},
			{
				BBDEBUGDECL_LOCAL,
				"pad",
				"$",
				.var_address=&bbt_pad
			},
			{
				BBDEBUGDECL_LOCAL,
				"loop",
				"i",
				.var_address=&bbt_loop
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0xbc887fbb172a5d2b, 113, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbt_pad=((BBString*)&bbEmptyString);
	struct BBDebugStm __stmt_1 = {0xbc887fbb172a5d2b, 114, 0};
	bbOnDebugEnterStm(&__stmt_1);
	bbt_loop=bbt_debug_subobjects;
	struct BBDebugStm __stmt_2 = {0xbc887fbb172a5d2b, 115, 0};
	bbOnDebugEnterStm(&__stmt_2);
	if(bbt_debug_base_types>bbt_debug_subobjects){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0xbc887fbb172a5d2b, 115, 0};
		bbOnDebugEnterStm(&__stmt_0);
		bbt_loop=bbt_debug_base_types;
		bbOnDebugLeaveScope();
	}
	struct BBDebugStm __stmt_3 = {0xbc887fbb172a5d2b, 116, 0};
	bbOnDebugEnterStm(&__stmt_3);
	{
		BBINT bbt_i=1;
		BBINT bbt_=bbt_loop;
		for(;(bbt_i<bbt_);bbt_i=(bbt_i+1)){
			struct BBDebugScope_1 __scope = {
				BBDEBUGSCOPE_LOCALBLOCK,
				0,
				{
					{
						BBDEBUGDECL_LOCAL,
						"i",
						"i",
						.var_address=&bbt_i
					},
					{
						BBDEBUGDECL_END
					}
				}
			};
			bbOnDebugEnterScope((BBDebugScope *)&__scope);
			struct BBDebugStm __stmt_0 = {0xbc887fbb172a5d2b, 117, 0};
			bbOnDebugEnterStm(&__stmt_0);
			bbt_pad=bbStringConcat(bbt_pad,((BBString*)&_s0));
			bbOnDebugLeaveScope();
		}
	}
	struct BBDebugStm __stmt_4 = {0xbc887fbb172a5d2b, 119, 0};
	bbOnDebugEnterStm(&__stmt_4);
	if(bbt_debug_subobjects!=0){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0xbc887fbb172a5d2b, 119, 0};
		bbOnDebugEnterStm(&__stmt_0);
		bbt_debug_subobjects+=1;
		bbOnDebugLeaveScope();
	}
	struct BBDebugStm __stmt_5 = {0xbc887fbb172a5d2b, 120, 0};
	bbOnDebugEnterStm(&__stmt_5);
	if(bbt_debug_base_types!=0){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0xbc887fbb172a5d2b, 120, 0};
		bbOnDebugEnterStm(&__stmt_0);
		bbt_debug_base_types+=1;
		bbOnDebugLeaveScope();
	}
	struct BBDebugStm __stmt_6 = {0xbc887fbb172a5d2b, 121, 0};
	bbOnDebugEnterStm(&__stmt_6);
	brl_blitz_DebugLog(bbStringConcat(bbStringConcat(bbt_pad,((BBString*)&_s755)),openb3d_openb3dcore_StringPtr(o->clas->f_GetInstance_pb_TTAction((struct openb3d_openb3dcore_TAction_obj*)o))));
	struct BBDebugStm __stmt_7 = {0xbc887fbb172a5d2b, 124, 0};
	bbOnDebugEnterStm(&__stmt_7);
	if(((struct openb3d_openb3dcore_TAction_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_taction_act !=0){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0xbc887fbb172a5d2b, 124, 0};
		bbOnDebugEnterStm(&__stmt_0);
		brl_blitz_DebugLog(bbStringConcat(bbStringConcat(bbt_pad,((BBString*)&_s756)),bbStringFromInt(((struct openb3d_openb3dcore_TAction_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_taction_act [0])));
		bbOnDebugLeaveScope();
	}else{
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0xbc887fbb172a5d2b, 124, 0};
		bbOnDebugEnterStm(&__stmt_0);
		brl_blitz_DebugLog(bbStringConcat(bbt_pad,((BBString*)&_s757)));
		bbOnDebugLeaveScope();
	}
	struct BBDebugStm __stmt_8 = {0xbc887fbb172a5d2b, 125, 0};
	bbOnDebugEnterStm(&__stmt_8);
	if(((struct openb3d_openb3dcore_TAction_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_taction_endact !=0){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0xbc887fbb172a5d2b, 125, 0};
		bbOnDebugEnterStm(&__stmt_0);
		brl_blitz_DebugLog(bbStringConcat(bbStringConcat(bbt_pad,((BBString*)&_s758)),bbStringFromInt(((struct openb3d_openb3dcore_TAction_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_taction_endact [0])));
		bbOnDebugLeaveScope();
	}else{
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0xbc887fbb172a5d2b, 125, 0};
		bbOnDebugEnterStm(&__stmt_0);
		brl_blitz_DebugLog(bbStringConcat(bbt_pad,((BBString*)&_s759)));
		bbOnDebugLeaveScope();
	}
	struct BBDebugStm __stmt_9 = {0xbc887fbb172a5d2b, 126, 0};
	bbOnDebugEnterStm(&__stmt_9);
	if(((struct openb3d_openb3dcore_TAction_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_taction_lifetime !=0){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0xbc887fbb172a5d2b, 126, 0};
		bbOnDebugEnterStm(&__stmt_0);
		brl_blitz_DebugLog(bbStringConcat(bbStringConcat(bbt_pad,((BBString*)&_s760)),bbStringFromInt(((struct openb3d_openb3dcore_TAction_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_taction_lifetime [0])));
		bbOnDebugLeaveScope();
	}else{
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0xbc887fbb172a5d2b, 126, 0};
		bbOnDebugEnterStm(&__stmt_0);
		brl_blitz_DebugLog(bbStringConcat(bbt_pad,((BBString*)&_s761)));
		bbOnDebugLeaveScope();
	}
	struct BBDebugStm __stmt_10 = {0xbc887fbb172a5d2b, 129, 0};
	bbOnDebugEnterStm(&__stmt_10);
	if(((struct openb3d_openb3dcore_TAction_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_taction_rate !=0){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0xbc887fbb172a5d2b, 129, 0};
		bbOnDebugEnterStm(&__stmt_0);
		brl_blitz_DebugLog(bbStringConcat(bbStringConcat(bbt_pad,((BBString*)&_s10)),bbStringFromFloat(((struct openb3d_openb3dcore_TAction_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_taction_rate [0])));
		bbOnDebugLeaveScope();
	}else{
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0xbc887fbb172a5d2b, 129, 0};
		bbOnDebugEnterStm(&__stmt_0);
		brl_blitz_DebugLog(bbStringConcat(bbt_pad,((BBString*)&_s11)));
		bbOnDebugLeaveScope();
	}
	struct BBDebugStm __stmt_11 = {0xbc887fbb172a5d2b, 130, 0};
	bbOnDebugEnterStm(&__stmt_11);
	if(((struct openb3d_openb3dcore_TAction_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_taction_a !=0){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0xbc887fbb172a5d2b, 130, 0};
		bbOnDebugEnterStm(&__stmt_0);
		brl_blitz_DebugLog(bbStringConcat(bbStringConcat(bbt_pad,((BBString*)&_s762)),bbStringFromFloat(((struct openb3d_openb3dcore_TAction_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_taction_a [0])));
		bbOnDebugLeaveScope();
	}else{
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0xbc887fbb172a5d2b, 130, 0};
		bbOnDebugEnterStm(&__stmt_0);
		brl_blitz_DebugLog(bbStringConcat(bbt_pad,((BBString*)&_s763)));
		bbOnDebugLeaveScope();
	}
	struct BBDebugStm __stmt_12 = {0xbc887fbb172a5d2b, 131, 0};
	bbOnDebugEnterStm(&__stmt_12);
	if(((struct openb3d_openb3dcore_TAction_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_taction_b !=0){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0xbc887fbb172a5d2b, 131, 0};
		bbOnDebugEnterStm(&__stmt_0);
		brl_blitz_DebugLog(bbStringConcat(bbStringConcat(bbt_pad,((BBString*)&_s764)),bbStringFromFloat(((struct openb3d_openb3dcore_TAction_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_taction_b [0])));
		bbOnDebugLeaveScope();
	}else{
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0xbc887fbb172a5d2b, 131, 0};
		bbOnDebugEnterStm(&__stmt_0);
		brl_blitz_DebugLog(bbStringConcat(bbt_pad,((BBString*)&_s765)));
		bbOnDebugLeaveScope();
	}
	struct BBDebugStm __stmt_13 = {0xbc887fbb172a5d2b, 132, 0};
	bbOnDebugEnterStm(&__stmt_13);
	if(((struct openb3d_openb3dcore_TAction_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_taction_c !=0){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0xbc887fbb172a5d2b, 132, 0};
		bbOnDebugEnterStm(&__stmt_0);
		brl_blitz_DebugLog(bbStringConcat(bbStringConcat(bbt_pad,((BBString*)&_s766)),bbStringFromFloat(((struct openb3d_openb3dcore_TAction_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_taction_c [0])));
		bbOnDebugLeaveScope();
	}else{
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0xbc887fbb172a5d2b, 132, 0};
		bbOnDebugEnterStm(&__stmt_0);
		brl_blitz_DebugLog(bbStringConcat(bbt_pad,((BBString*)&_s767)));
		bbOnDebugLeaveScope();
	}
	struct BBDebugStm __stmt_14 = {0xbc887fbb172a5d2b, 135, 0};
	bbOnDebugEnterStm(&__stmt_14);
	brl_blitz_DebugLog(bbStringConcat(bbStringConcat(bbt_pad,((BBString*)&_s768)),openb3d_openb3dcore_StringPtr(openb3d_openb3dcore_TEntity_GetInstance_pb_TTEntity((struct openb3d_openb3dcore_TEntity_obj*)((struct openb3d_openb3dcore_TAction_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_taction_ent ))));
	struct BBDebugStm __stmt_15 = {0xbc887fbb172a5d2b, 136, 0};
	bbOnDebugEnterStm(&__stmt_15);
	if((bbt_debug_subobjects!=0) && (((BBOBJECT)((struct openb3d_openb3dcore_TAction_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_taction_ent )!=&bbNullObject)){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0xbc887fbb172a5d2b, 136, 0};
		bbOnDebugEnterStm(&__stmt_0);
		((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)((struct openb3d_openb3dcore_TAction_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_taction_ent ))->clas->m_DebugFields_ii((struct openb3d_openb3dcore_TEntity_obj*)((struct openb3d_openb3dcore_TAction_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_taction_ent ,bbt_debug_subobjects,bbt_debug_base_types);
		bbOnDebugLeaveScope();
	}
	struct BBDebugStm __stmt_16 = {0xbc887fbb172a5d2b, 137, 0};
	bbOnDebugEnterStm(&__stmt_16);
	brl_blitz_DebugLog(bbStringConcat(bbStringConcat(bbt_pad,((BBString*)&_s769)),openb3d_openb3dcore_StringPtr(openb3d_openb3dcore_TEntity_GetInstance_pb_TTEntity((struct openb3d_openb3dcore_TEntity_obj*)((struct openb3d_openb3dcore_TAction_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_taction_target ))));
	struct BBDebugStm __stmt_17 = {0xbc887fbb172a5d2b, 138, 0};
	bbOnDebugEnterStm(&__stmt_17);
	if((bbt_debug_subobjects!=0) && (((BBOBJECT)((struct openb3d_openb3dcore_TAction_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_taction_target )!=&bbNullObject)){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0xbc887fbb172a5d2b, 138, 0};
		bbOnDebugEnterStm(&__stmt_0);
		((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)((struct openb3d_openb3dcore_TAction_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_taction_target ))->clas->m_DebugFields_ii((struct openb3d_openb3dcore_TEntity_obj*)((struct openb3d_openb3dcore_TAction_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_taction_target ,bbt_debug_subobjects,bbt_debug_base_types);
		bbOnDebugLeaveScope();
	}
	struct BBDebugStm __stmt_18 = {0xbc887fbb172a5d2b, 140, 0};
	bbOnDebugEnterStm(&__stmt_18);
	brl_blitz_DebugLog((BBString*)&bbEmptyString);
	bbOnDebugLeaveScope();
	return 0;
}
BBINT openb3d_openb3dcore_TAction_AddList__i_TTList(struct brl_linkedlist_TList_obj* bbt_list){
	struct BBDebugScope_1 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"AddList_",
		{
			{
				BBDEBUGDECL_LOCAL,
				"list",
				":TList",
				.var_address=&bbt_list
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0xbc887fbb172a5d2b, 146, 0};
	bbOnDebugEnterStm(&__stmt_0);
	struct brl_linkedlist_TList_obj* bbt_=(struct brl_linkedlist_TList_obj*)bbt_list;
	struct BBDebugStm __stmt_1 = {0xbc887fbb172a5d2b, 147, 0};
	bbOnDebugEnterStm(&__stmt_1);
	if(((struct brl_linkedlist_TList_obj*)bbt_)==openb3d_openb3dcore_TAction_action_list){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0xbc887fbb172a5d2b, 148, 0};
		bbOnDebugEnterStm(&__stmt_0);
		if(StaticListSize_(1,1)!=0){
			BBBYTE* bbt_inst=0;
			struct openb3d_openb3dcore_TAction_obj* bbt_obj=(struct openb3d_openb3dcore_TAction_obj*)((struct openb3d_openb3dcore_TAction_obj*)&bbNullObject);
			struct BBDebugScope_2 __scope = {
				BBDEBUGSCOPE_LOCALBLOCK,
				0,
				{
					{
						BBDEBUGDECL_LOCAL,
						"inst",
						"*b",
						.var_address=&bbt_inst
					},
					{
						BBDEBUGDECL_LOCAL,
						"obj",
						":TAction",
						.var_address=&bbt_obj
					},
					{
						BBDEBUGDECL_END
					}
				}
			};
			bbOnDebugEnterScope((BBDebugScope *)&__scope);
			struct BBDebugStm __stmt_0 = {0xbc887fbb172a5d2b, 149, 0};
			bbOnDebugEnterStm(&__stmt_0);
			bbt_inst=StaticIterListAction_(1,1,(&openb3d_openb3dcore_TAction_action_list_id));
			struct BBDebugStm __stmt_1 = {0xbc887fbb172a5d2b, 150, 0};
			bbOnDebugEnterStm(&__stmt_1);
			bbt_obj=(struct openb3d_openb3dcore_TAction_obj*)openb3d_openb3dcore_TAction_GetObject_TTAction_pb(bbt_inst);
			struct BBDebugStm __stmt_2 = {0xbc887fbb172a5d2b, 151, 0};
			bbOnDebugEnterStm(&__stmt_2);
			if(((BBObject*)bbt_obj)!= &bbNullObject){
				struct BBDebugScope __scope = {
					BBDEBUGSCOPE_LOCALBLOCK,
					0,
					{
						{
							BBDEBUGDECL_END
						}
					}
				};
				bbOnDebugEnterScope((BBDebugScope *)&__scope);
				struct BBDebugStm __stmt_0 = {0xbc887fbb172a5d2b, 151, 0};
				bbOnDebugEnterStm(&__stmt_0);
				brl_linkedlist_ListAddLast((struct brl_linkedlist_TList_obj*)bbt_list,(BBOBJECT)bbt_obj);
				bbOnDebugLeaveScope();
			}
			bbOnDebugLeaveScope();
		}
		bbOnDebugLeaveScope();
	}
	bbOnDebugLeaveScope();
	return 0;
}
BBINT openb3d_openb3dcore_TAction_CopyList__i_TTList(struct brl_linkedlist_TList_obj* bbt_list){
	struct BBDebugScope_1 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"CopyList_",
		{
			{
				BBDEBUGDECL_LOCAL,
				"list",
				":TList",
				.var_address=&bbt_list
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0xbc887fbb172a5d2b, 159, 0};
	bbOnDebugEnterStm(&__stmt_0);
	brl_linkedlist_ClearList((struct brl_linkedlist_TList_obj*)bbt_list);
	struct BBDebugStm __stmt_1 = {0xbc887fbb172a5d2b, 161, 0};
	bbOnDebugEnterStm(&__stmt_1);
	struct brl_linkedlist_TList_obj* bbt_=(struct brl_linkedlist_TList_obj*)bbt_list;
	struct BBDebugStm __stmt_2 = {0xbc887fbb172a5d2b, 162, 0};
	bbOnDebugEnterStm(&__stmt_2);
	if(((struct brl_linkedlist_TList_obj*)bbt_)==openb3d_openb3dcore_TAction_action_list){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0xbc887fbb172a5d2b, 163, 0};
		bbOnDebugEnterStm(&__stmt_0);
		openb3d_openb3dcore_TAction_action_list_id=0;
		struct BBDebugStm __stmt_1 = {0xbc887fbb172a5d2b, 164, 0};
		bbOnDebugEnterStm(&__stmt_1);
		{
			BBINT bbt_id=0;
			BBINT bbt_2=(StaticListSize_(1,1)-1);
			for(;(bbt_id<=bbt_2);bbt_id=(bbt_id+1)){
				BBBYTE* bbt_inst=0;
				struct openb3d_openb3dcore_TAction_obj* bbt_obj=(struct openb3d_openb3dcore_TAction_obj*)((struct openb3d_openb3dcore_TAction_obj*)&bbNullObject);
				struct BBDebugScope_3 __scope = {
					BBDEBUGSCOPE_LOCALBLOCK,
					0,
					{
						{
							BBDEBUGDECL_LOCAL,
							"id",
							"i",
							.var_address=&bbt_id
						},
						{
							BBDEBUGDECL_LOCAL,
							"inst",
							"*b",
							.var_address=&bbt_inst
						},
						{
							BBDEBUGDECL_LOCAL,
							"obj",
							":TAction",
							.var_address=&bbt_obj
						},
						{
							BBDEBUGDECL_END
						}
					}
				};
				bbOnDebugEnterScope((BBDebugScope *)&__scope);
				struct BBDebugStm __stmt_0 = {0xbc887fbb172a5d2b, 165, 0};
				bbOnDebugEnterStm(&__stmt_0);
				bbt_inst=StaticIterListAction_(1,1,(&openb3d_openb3dcore_TAction_action_list_id));
				struct BBDebugStm __stmt_1 = {0xbc887fbb172a5d2b, 166, 0};
				bbOnDebugEnterStm(&__stmt_1);
				bbt_obj=(struct openb3d_openb3dcore_TAction_obj*)openb3d_openb3dcore_TAction_GetObject_TTAction_pb(bbt_inst);
				struct BBDebugStm __stmt_2 = {0xbc887fbb172a5d2b, 167, 0};
				bbOnDebugEnterStm(&__stmt_2);
				if(((BBObject*)bbt_obj)!= &bbNullObject){
					struct BBDebugScope __scope = {
						BBDEBUGSCOPE_LOCALBLOCK,
						0,
						{
							{
								BBDEBUGDECL_END
							}
						}
					};
					bbOnDebugEnterScope((BBDebugScope *)&__scope);
					struct BBDebugStm __stmt_0 = {0xbc887fbb172a5d2b, 167, 0};
					bbOnDebugEnterStm(&__stmt_0);
					brl_linkedlist_ListAddLast((struct brl_linkedlist_TList_obj*)bbt_list,(BBOBJECT)bbt_obj);
					bbOnDebugLeaveScope();
				}
				bbOnDebugLeaveScope();
			}
		}
		bbOnDebugLeaveScope();
	}
	bbOnDebugLeaveScope();
	return 0;
}
BBINT _openb3d_openb3dcore_TAction_AppendAction_TTAction(struct openb3d_openb3dcore_TAction_obj* o,struct openb3d_openb3dcore_TAction_obj* bbt_act2){
	((struct openb3d_openb3dcore_TAction_obj*)bbNullObjectTest((BBObject*)o));
	struct BBDebugScope_2 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"AppendAction",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TAction",
				.var_address=&o
			},
			{
				BBDEBUGDECL_LOCAL,
				"act2",
				":TAction",
				.var_address=&bbt_act2
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0xbc887fbb172a5d2b, 177, 0};
	bbOnDebugEnterStm(&__stmt_0);
	AppendAction_(o->clas->f_GetInstance_pb_TTAction((struct openb3d_openb3dcore_TAction_obj*)o),o->clas->f_GetInstance_pb_TTAction((struct openb3d_openb3dcore_TAction_obj*)bbt_act2));
	bbOnDebugLeaveScope();
	return 0;
}
BBINT _openb3d_openb3dcore_TAction_FreeAction(struct openb3d_openb3dcore_TAction_obj* o){
	((struct openb3d_openb3dcore_TAction_obj*)bbNullObjectTest((BBObject*)o));
	struct BBDebugScope_1 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"FreeAction",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TAction",
				.var_address=&o
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0xbc887fbb172a5d2b, 183, 0};
	bbOnDebugEnterStm(&__stmt_0);
	if((((struct openb3d_openb3dcore_TAction_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_taction_exists !=0) && (((struct openb3d_openb3dcore_TAction_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_taction_act [0]==0)){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0xbc887fbb172a5d2b, 184, 0};
		bbOnDebugEnterStm(&__stmt_0);
		((struct openb3d_openb3dcore_TAction_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_taction_exists =0;
		struct BBDebugStm __stmt_1 = {0xbc887fbb172a5d2b, 185, 0};
		bbOnDebugEnterStm(&__stmt_1);
		brl_linkedlist_ListRemove((struct brl_linkedlist_TList_obj*)openb3d_openb3dcore_TAction_action_list,(BBOBJECT)o);
		struct BBDebugStm __stmt_2 = {0xbc887fbb172a5d2b, 185, 0};
		bbOnDebugEnterStm(&__stmt_2);
		openb3d_openb3dcore_TAction_action_list_id-=1;
		struct BBDebugStm __stmt_3 = {0xbc887fbb172a5d2b, 187, 0};
		bbOnDebugEnterStm(&__stmt_3);
		FreeAction_(o->clas->f_GetInstance_pb_TTAction((struct openb3d_openb3dcore_TAction_obj*)o));
		struct BBDebugStm __stmt_4 = {0xbc887fbb172a5d2b, 188, 0};
		bbOnDebugEnterStm(&__stmt_4);
		o->clas->f_FreeObject_i_pb(o->clas->f_GetInstance_pb_TTAction((struct openb3d_openb3dcore_TAction_obj*)o));
		bbOnDebugLeaveScope();
	}
	bbOnDebugLeaveScope();
	return 0;
}
BBINT _openb3d_openb3dcore_TAction_EndAction(struct openb3d_openb3dcore_TAction_obj* o){
	((struct openb3d_openb3dcore_TAction_obj*)bbNullObjectTest((BBObject*)o));
	struct BBDebugScope_1 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"EndAction",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TAction",
				.var_address=&o
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0xbc887fbb172a5d2b, 195, 0};
	bbOnDebugEnterStm(&__stmt_0);
	EndAction_(o->clas->f_GetInstance_pb_TTAction((struct openb3d_openb3dcore_TAction_obj*)o));
	bbOnDebugLeaveScope();
	return 0;
}
struct brl_map_ptrmap_TPtrMap_obj* openb3d_openb3dcore_TAction_action_map;
struct brl_linkedlist_TList_obj* openb3d_openb3dcore_TAction_action_list;
BBINT openb3d_openb3dcore_TAction_action_list_id;
struct BBDebugScope_26 openb3d_openb3dcore_TAction_scope ={
	BBDEBUGSCOPE_USERTYPE,
	"TAction",
	{
		{
			BBDEBUGDECL_FIELD,
			"act",
			"*i",
			.field_offset=offsetof(struct openb3d_openb3dcore_TAction_obj,_openb3d_openb3dcore_taction_act)
		},
		{
			BBDEBUGDECL_FIELD,
			"ent",
			":TEntity",
			.field_offset=offsetof(struct openb3d_openb3dcore_TAction_obj,_openb3d_openb3dcore_taction_ent)
		},
		{
			BBDEBUGDECL_FIELD,
			"target",
			":TEntity",
			.field_offset=offsetof(struct openb3d_openb3dcore_TAction_obj,_openb3d_openb3dcore_taction_target)
		},
		{
			BBDEBUGDECL_FIELD,
			"rate",
			"*f",
			.field_offset=offsetof(struct openb3d_openb3dcore_TAction_obj,_openb3d_openb3dcore_taction_rate)
		},
		{
			BBDEBUGDECL_FIELD,
			"a",
			"*f",
			.field_offset=offsetof(struct openb3d_openb3dcore_TAction_obj,_openb3d_openb3dcore_taction_a)
		},
		{
			BBDEBUGDECL_FIELD,
			"b",
			"*f",
			.field_offset=offsetof(struct openb3d_openb3dcore_TAction_obj,_openb3d_openb3dcore_taction_b)
		},
		{
			BBDEBUGDECL_FIELD,
			"c",
			"*f",
			.field_offset=offsetof(struct openb3d_openb3dcore_TAction_obj,_openb3d_openb3dcore_taction_c)
		},
		{
			BBDEBUGDECL_FIELD,
			"endact",
			"*i",
			.field_offset=offsetof(struct openb3d_openb3dcore_TAction_obj,_openb3d_openb3dcore_taction_endact)
		},
		{
			BBDEBUGDECL_FIELD,
			"lifetime",
			"*i",
			.field_offset=offsetof(struct openb3d_openb3dcore_TAction_obj,_openb3d_openb3dcore_taction_lifetime)
		},
		{
			BBDEBUGDECL_FIELD,
			"instance",
			"*b",
			.field_offset=offsetof(struct openb3d_openb3dcore_TAction_obj,_openb3d_openb3dcore_taction_instance)
		},
		{
			BBDEBUGDECL_FIELD,
			"exists",
			"i",
			.field_offset=offsetof(struct openb3d_openb3dcore_TAction_obj,_openb3d_openb3dcore_taction_exists)
		},
		{
			BBDEBUGDECL_GLOBAL,
			"action_list",
			":TList",
			.var_address=(void*)&openb3d_openb3dcore_TAction_action_list
		},
		{
			BBDEBUGDECL_GLOBAL,
			"action_map",
			":TPtrMap",
			.var_address=(void*)&openb3d_openb3dcore_TAction_action_map
		},
		{
			BBDEBUGDECL_GLOBAL,
			"action_list_id",
			"i",
			.var_address=(void*)&openb3d_openb3dcore_TAction_action_list_id
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"New",
			"()i",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_TAction_New
		},
		{
			BBDEBUGDECL_TYPEFUNCTION,
			"CreateObject",
			"(*b):TAction",
			.func_ptr=(BBFuncPtr)&openb3d_openb3dcore_TAction_CreateObject_TTAction_pb
		},
		{
			BBDEBUGDECL_TYPEFUNCTION,
			"FreeObject",
			"(*b)i",
			.func_ptr=(BBFuncPtr)&openb3d_openb3dcore_TAction_FreeObject_i_pb
		},
		{
			BBDEBUGDECL_TYPEFUNCTION,
			"GetObject",
			"(*b):TAction",
			.func_ptr=(BBFuncPtr)&openb3d_openb3dcore_TAction_GetObject_TTAction_pb
		},
		{
			BBDEBUGDECL_TYPEFUNCTION,
			"GetInstance",
			"(:TAction)*b",
			.func_ptr=(BBFuncPtr)&openb3d_openb3dcore_TAction_GetInstance_pb_TTAction
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"InitFields",
			"()i",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_TAction_InitFields
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"DebugFields",
			"(i,i)i",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_TAction_DebugFields_ii
		},
		{
			BBDEBUGDECL_TYPEFUNCTION,
			"AddList_",
			"(:TList)i",
			.func_ptr=(BBFuncPtr)&openb3d_openb3dcore_TAction_AddList__i_TTList
		},
		{
			BBDEBUGDECL_TYPEFUNCTION,
			"CopyList_",
			"(:TList)i",
			.func_ptr=(BBFuncPtr)&openb3d_openb3dcore_TAction_CopyList__i_TTList
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"AppendAction",
			"(:TAction)i",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_TAction_AppendAction_TTAction
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"FreeAction",
			"()i",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_TAction_FreeAction
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"EndAction",
			"()i",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_TAction_EndAction
		},
		{
			BBDEBUGDECL_END
		}
	}
};
struct BBClass_openb3d_openb3dcore_TAction openb3d_openb3dcore_TAction={
	&bbObjectClass,
	bbObjectFree,
	(BBDebugScope*)&openb3d_openb3dcore_TAction_scope,
	sizeof(struct openb3d_openb3dcore_TAction_obj),
	(void (*)(BBOBJECT))_openb3d_openb3dcore_TAction_New,
	bbObjectDtor,
	bbObjectToString,
	bbObjectCompare,
	bbObjectSendMessage,
	0,
	0,
	offsetof(struct openb3d_openb3dcore_TAction_obj,_openb3d_openb3dcore_taction_exists) - offsetof(struct openb3d_openb3dcore_TAction_obj,_openb3d_openb3dcore_taction_act) + sizeof(BBINT)
	,0
	,offsetof(struct openb3d_openb3dcore_TAction_obj,_openb3d_openb3dcore_taction_act)
	,openb3d_openb3dcore_TAction_CreateObject_TTAction_pb
	,openb3d_openb3dcore_TAction_FreeObject_i_pb
	,openb3d_openb3dcore_TAction_GetObject_TTAction_pb
	,openb3d_openb3dcore_TAction_GetInstance_pb_TTAction
	,_openb3d_openb3dcore_TAction_InitFields
	,_openb3d_openb3dcore_TAction_DebugFields_ii
	,openb3d_openb3dcore_TAction_AddList__i_TTList
	,openb3d_openb3dcore_TAction_CopyList__i_TTList
	,_openb3d_openb3dcore_TAction_AppendAction_TTAction
	,_openb3d_openb3dcore_TAction_FreeAction
	,_openb3d_openb3dcore_TAction_EndAction
};

void _openb3d_openb3dcore_TConstraint_New(struct openb3d_openb3dcore_TConstraint_obj* o) {
	bbObjectCtor((BBOBJECT)o);
	o->clas = &openb3d_openb3dcore_TConstraint;
	((struct openb3d_openb3dcore_TConstraint_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tconstraint_instance = 0;
}
struct openb3d_openb3dcore_TConstraint_obj* openb3d_openb3dcore_TConstraint_CreateObject_TTConstraint_pb(BBBYTE* bbt_inst){
	struct openb3d_openb3dcore_TConstraint_obj* bbt_obj=(struct openb3d_openb3dcore_TConstraint_obj*)((struct openb3d_openb3dcore_TConstraint_obj*)&bbNullObject);
	struct BBDebugScope_2 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"CreateObject",
		{
			{
				BBDEBUGDECL_LOCAL,
				"inst",
				"*b",
				.var_address=&bbt_inst
			},
			{
				BBDEBUGDECL_LOCAL,
				"obj",
				":TConstraint",
				.var_address=&bbt_obj
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x66be26468d9c2fab, 11, 0};
	bbOnDebugEnterStm(&__stmt_0);
	if(bbt_inst==0){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x66be26468d9c2fab, 11, 0};
		bbOnDebugEnterStm(&__stmt_0);
		bbOnDebugLeaveScope();
		bbOnDebugLeaveScope();
		return (struct openb3d_openb3dcore_TConstraint_obj*)&bbNullObject;
	}
	struct BBDebugStm __stmt_1 = {0x66be26468d9c2fab, 12, 0};
	bbOnDebugEnterStm(&__stmt_1);
	bbt_obj=(struct openb3d_openb3dcore_TConstraint_obj*)(struct openb3d_openb3dcore_TConstraint_obj*)bbObjectAtomicNew((BBClass *)&openb3d_openb3dcore_TConstraint);
	struct BBDebugStm __stmt_2 = {0x66be26468d9c2fab, 13, 0};
	bbOnDebugEnterStm(&__stmt_2);
	((struct openb3d_openb3dcore_TConstraint_obj*)bbNullObjectTest((BBObject*)bbt_obj))->_openb3d_openb3dcore_tconstraint_instance =bbt_inst;
	struct BBDebugStm __stmt_3 = {0x66be26468d9c2fab, 14, 0};
	bbOnDebugEnterStm(&__stmt_3);
	bbOnDebugLeaveScope();
	return (struct openb3d_openb3dcore_TConstraint_obj*)bbt_obj;
}
BBBYTE* openb3d_openb3dcore_TConstraint_GetInstance_pb_TTConstraint(struct openb3d_openb3dcore_TConstraint_obj* bbt_obj){
	struct BBDebugScope_1 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"GetInstance",
		{
			{
				BBDEBUGDECL_LOCAL,
				"obj",
				":TConstraint",
				.var_address=&bbt_obj
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x66be26468d9c2fab, 20, 0};
	bbOnDebugEnterStm(&__stmt_0);
	if(((BBOBJECT)bbt_obj)==&bbNullObject){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x66be26468d9c2fab, 20, 0};
		bbOnDebugEnterStm(&__stmt_0);
		bbOnDebugLeaveScope();
		bbOnDebugLeaveScope();
		return 0;
	}
	struct BBDebugStm __stmt_1 = {0x66be26468d9c2fab, 21, 0};
	bbOnDebugEnterStm(&__stmt_1);
	bbOnDebugLeaveScope();
	return ((struct openb3d_openb3dcore_TConstraint_obj*)bbNullObjectTest((BBObject*)bbt_obj))->_openb3d_openb3dcore_tconstraint_instance ;
}
struct openb3d_openb3dcore_TConstraint_obj* openb3d_openb3dcore_TConstraint_CreateConstraint_TTConstraint_TTEntityTTEntityf(struct openb3d_openb3dcore_TEntity_obj* bbt_p1,struct openb3d_openb3dcore_TEntity_obj* bbt_p2,BBFLOAT bbt_l){
	BBBYTE* bbt_inst=0;
	struct BBDebugScope_4 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"CreateConstraint",
		{
			{
				BBDEBUGDECL_LOCAL,
				"p1",
				":TEntity",
				.var_address=&bbt_p1
			},
			{
				BBDEBUGDECL_LOCAL,
				"p2",
				":TEntity",
				.var_address=&bbt_p2
			},
			{
				BBDEBUGDECL_LOCAL,
				"l",
				"f",
				.var_address=&bbt_l
			},
			{
				BBDEBUGDECL_LOCAL,
				"inst",
				"*b",
				.var_address=&bbt_inst
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x66be26468d9c2fab, 29, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbt_inst=CreateConstraint_(openb3d_openb3dcore_TEntity_GetInstance_pb_TTEntity((struct openb3d_openb3dcore_TEntity_obj*)bbt_p1),openb3d_openb3dcore_TEntity_GetInstance_pb_TTEntity((struct openb3d_openb3dcore_TEntity_obj*)bbt_p2),bbt_l);
	struct BBDebugStm __stmt_1 = {0x66be26468d9c2fab, 30, 0};
	bbOnDebugEnterStm(&__stmt_1);
	bbOnDebugLeaveScope();
	return (struct openb3d_openb3dcore_TConstraint_obj*)openb3d_openb3dcore_TConstraint_CreateObject_TTConstraint_pb(bbt_inst);
}
struct BBDebugScope_5 openb3d_openb3dcore_TConstraint_scope ={
	BBDEBUGSCOPE_USERTYPE,
	"TConstraint",
	{
		{
			BBDEBUGDECL_FIELD,
			"instance",
			"*b",
			.field_offset=offsetof(struct openb3d_openb3dcore_TConstraint_obj,_openb3d_openb3dcore_tconstraint_instance)
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"New",
			"()i",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_TConstraint_New
		},
		{
			BBDEBUGDECL_TYPEFUNCTION,
			"CreateObject",
			"(*b):TConstraint",
			.func_ptr=(BBFuncPtr)&openb3d_openb3dcore_TConstraint_CreateObject_TTConstraint_pb
		},
		{
			BBDEBUGDECL_TYPEFUNCTION,
			"GetInstance",
			"(:TConstraint)*b",
			.func_ptr=(BBFuncPtr)&openb3d_openb3dcore_TConstraint_GetInstance_pb_TTConstraint
		},
		{
			BBDEBUGDECL_TYPEFUNCTION,
			"CreateConstraint",
			"(:TEntity,:TEntity,f):TConstraint",
			.func_ptr=(BBFuncPtr)&openb3d_openb3dcore_TConstraint_CreateConstraint_TTConstraint_TTEntityTTEntityf
		},
		{
			BBDEBUGDECL_END
		}
	}
};
struct BBClass_openb3d_openb3dcore_TConstraint openb3d_openb3dcore_TConstraint={
	&bbObjectClass,
	bbObjectFree,
	(BBDebugScope*)&openb3d_openb3dcore_TConstraint_scope,
	sizeof(struct openb3d_openb3dcore_TConstraint_obj),
	(void (*)(BBOBJECT))_openb3d_openb3dcore_TConstraint_New,
	bbObjectDtor,
	bbObjectToString,
	bbObjectCompare,
	bbObjectSendMessage,
	0,
	0,
	sizeof(BBBYTE*)
	,0
	,offsetof(struct openb3d_openb3dcore_TConstraint_obj,_openb3d_openb3dcore_tconstraint_instance)
	,openb3d_openb3dcore_TConstraint_CreateObject_TTConstraint_pb
	,openb3d_openb3dcore_TConstraint_GetInstance_pb_TTConstraint
	,openb3d_openb3dcore_TConstraint_CreateConstraint_TTConstraint_TTEntityTTEntityf
};

void _openb3d_openb3dcore_TRigidBody_New(struct openb3d_openb3dcore_TRigidBody_obj* o) {
	bbObjectCtor((BBOBJECT)o);
	o->clas = &openb3d_openb3dcore_TRigidBody;
	((struct openb3d_openb3dcore_TRigidBody_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_trigidbody_instance = 0;
}
struct openb3d_openb3dcore_TRigidBody_obj* openb3d_openb3dcore_TRigidBody_CreateObject_TTRigidBody_pb(BBBYTE* bbt_inst){
	struct openb3d_openb3dcore_TRigidBody_obj* bbt_obj=(struct openb3d_openb3dcore_TRigidBody_obj*)((struct openb3d_openb3dcore_TRigidBody_obj*)&bbNullObject);
	struct BBDebugScope_2 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"CreateObject",
		{
			{
				BBDEBUGDECL_LOCAL,
				"inst",
				"*b",
				.var_address=&bbt_inst
			},
			{
				BBDEBUGDECL_LOCAL,
				"obj",
				":TRigidBody",
				.var_address=&bbt_obj
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x66be26468d9c2fab, 45, 0};
	bbOnDebugEnterStm(&__stmt_0);
	if(bbt_inst==0){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x66be26468d9c2fab, 45, 0};
		bbOnDebugEnterStm(&__stmt_0);
		bbOnDebugLeaveScope();
		bbOnDebugLeaveScope();
		return (struct openb3d_openb3dcore_TRigidBody_obj*)&bbNullObject;
	}
	struct BBDebugStm __stmt_1 = {0x66be26468d9c2fab, 46, 0};
	bbOnDebugEnterStm(&__stmt_1);
	bbt_obj=(struct openb3d_openb3dcore_TRigidBody_obj*)(struct openb3d_openb3dcore_TRigidBody_obj*)bbObjectAtomicNew((BBClass *)&openb3d_openb3dcore_TRigidBody);
	struct BBDebugStm __stmt_2 = {0x66be26468d9c2fab, 47, 0};
	bbOnDebugEnterStm(&__stmt_2);
	((struct openb3d_openb3dcore_TRigidBody_obj*)bbNullObjectTest((BBObject*)bbt_obj))->_openb3d_openb3dcore_trigidbody_instance =bbt_inst;
	struct BBDebugStm __stmt_3 = {0x66be26468d9c2fab, 48, 0};
	bbOnDebugEnterStm(&__stmt_3);
	bbOnDebugLeaveScope();
	return (struct openb3d_openb3dcore_TRigidBody_obj*)bbt_obj;
}
BBBYTE* openb3d_openb3dcore_TRigidBody_GetInstance_pb_TTRigidBody(struct openb3d_openb3dcore_TRigidBody_obj* bbt_obj){
	struct BBDebugScope_1 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"GetInstance",
		{
			{
				BBDEBUGDECL_LOCAL,
				"obj",
				":TRigidBody",
				.var_address=&bbt_obj
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x66be26468d9c2fab, 54, 0};
	bbOnDebugEnterStm(&__stmt_0);
	if(((BBOBJECT)bbt_obj)==&bbNullObject){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x66be26468d9c2fab, 54, 0};
		bbOnDebugEnterStm(&__stmt_0);
		bbOnDebugLeaveScope();
		bbOnDebugLeaveScope();
		return 0;
	}
	struct BBDebugStm __stmt_1 = {0x66be26468d9c2fab, 55, 0};
	bbOnDebugEnterStm(&__stmt_1);
	bbOnDebugLeaveScope();
	return ((struct openb3d_openb3dcore_TRigidBody_obj*)bbNullObjectTest((BBObject*)bbt_obj))->_openb3d_openb3dcore_trigidbody_instance ;
}
struct openb3d_openb3dcore_TRigidBody_obj* openb3d_openb3dcore_TRigidBody_CreateRigidBody_TTRigidBody_TTEntityTTEntityTTEntityTTEntityTTEntity(struct openb3d_openb3dcore_TEntity_obj* bbt_body,struct openb3d_openb3dcore_TEntity_obj* bbt_p1,struct openb3d_openb3dcore_TEntity_obj* bbt_p2,struct openb3d_openb3dcore_TEntity_obj* bbt_p3,struct openb3d_openb3dcore_TEntity_obj* bbt_p4){
	BBBYTE* bbt_inst=0;
	struct BBDebugScope_6 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"CreateRigidBody",
		{
			{
				BBDEBUGDECL_LOCAL,
				"body",
				":TEntity",
				.var_address=&bbt_body
			},
			{
				BBDEBUGDECL_LOCAL,
				"p1",
				":TEntity",
				.var_address=&bbt_p1
			},
			{
				BBDEBUGDECL_LOCAL,
				"p2",
				":TEntity",
				.var_address=&bbt_p2
			},
			{
				BBDEBUGDECL_LOCAL,
				"p3",
				":TEntity",
				.var_address=&bbt_p3
			},
			{
				BBDEBUGDECL_LOCAL,
				"p4",
				":TEntity",
				.var_address=&bbt_p4
			},
			{
				BBDEBUGDECL_LOCAL,
				"inst",
				"*b",
				.var_address=&bbt_inst
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x66be26468d9c2fab, 63, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbt_inst=CreateRigidBody_(openb3d_openb3dcore_TEntity_GetInstance_pb_TTEntity((struct openb3d_openb3dcore_TEntity_obj*)bbt_body),openb3d_openb3dcore_TEntity_GetInstance_pb_TTEntity((struct openb3d_openb3dcore_TEntity_obj*)bbt_p1),openb3d_openb3dcore_TEntity_GetInstance_pb_TTEntity((struct openb3d_openb3dcore_TEntity_obj*)bbt_p2),openb3d_openb3dcore_TEntity_GetInstance_pb_TTEntity((struct openb3d_openb3dcore_TEntity_obj*)bbt_p3),openb3d_openb3dcore_TEntity_GetInstance_pb_TTEntity((struct openb3d_openb3dcore_TEntity_obj*)bbt_p4));
	struct BBDebugStm __stmt_1 = {0x66be26468d9c2fab, 64, 0};
	bbOnDebugEnterStm(&__stmt_1);
	bbOnDebugLeaveScope();
	return (struct openb3d_openb3dcore_TRigidBody_obj*)openb3d_openb3dcore_TRigidBody_CreateObject_TTRigidBody_pb(bbt_inst);
}
struct BBDebugScope_5 openb3d_openb3dcore_TRigidBody_scope ={
	BBDEBUGSCOPE_USERTYPE,
	"TRigidBody",
	{
		{
			BBDEBUGDECL_FIELD,
			"instance",
			"*b",
			.field_offset=offsetof(struct openb3d_openb3dcore_TRigidBody_obj,_openb3d_openb3dcore_trigidbody_instance)
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"New",
			"()i",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_TRigidBody_New
		},
		{
			BBDEBUGDECL_TYPEFUNCTION,
			"CreateObject",
			"(*b):TRigidBody",
			.func_ptr=(BBFuncPtr)&openb3d_openb3dcore_TRigidBody_CreateObject_TTRigidBody_pb
		},
		{
			BBDEBUGDECL_TYPEFUNCTION,
			"GetInstance",
			"(:TRigidBody)*b",
			.func_ptr=(BBFuncPtr)&openb3d_openb3dcore_TRigidBody_GetInstance_pb_TTRigidBody
		},
		{
			BBDEBUGDECL_TYPEFUNCTION,
			"CreateRigidBody",
			"(:TEntity,:TEntity,:TEntity,:TEntity,:TEntity):TRigidBody",
			.func_ptr=(BBFuncPtr)&openb3d_openb3dcore_TRigidBody_CreateRigidBody_TTRigidBody_TTEntityTTEntityTTEntityTTEntityTTEntity
		},
		{
			BBDEBUGDECL_END
		}
	}
};
struct BBClass_openb3d_openb3dcore_TRigidBody openb3d_openb3dcore_TRigidBody={
	&bbObjectClass,
	bbObjectFree,
	(BBDebugScope*)&openb3d_openb3dcore_TRigidBody_scope,
	sizeof(struct openb3d_openb3dcore_TRigidBody_obj),
	(void (*)(BBOBJECT))_openb3d_openb3dcore_TRigidBody_New,
	bbObjectDtor,
	bbObjectToString,
	bbObjectCompare,
	bbObjectSendMessage,
	0,
	0,
	sizeof(BBBYTE*)
	,0
	,offsetof(struct openb3d_openb3dcore_TRigidBody_obj,_openb3d_openb3dcore_trigidbody_instance)
	,openb3d_openb3dcore_TRigidBody_CreateObject_TTRigidBody_pb
	,openb3d_openb3dcore_TRigidBody_GetInstance_pb_TTRigidBody
	,openb3d_openb3dcore_TRigidBody_CreateRigidBody_TTRigidBody_TTEntityTTEntityTTEntityTTEntityTTEntity
};

void _openb3d_openb3dcore_TParticleBatch_New(struct openb3d_openb3dcore_TParticleBatch_obj* o) {
	_openb3d_openb3dcore_TMesh_New((struct openb3d_openb3dcore_TMesh_obj*)o);
	o->clas = &openb3d_openb3dcore_TParticleBatch;
}
void _openb3d_openb3dcore_TParticleBatch_Delete(struct openb3d_openb3dcore_TParticleBatch_obj* o) {
	_openb3d_openb3dcore_TMesh_Delete((struct openb3d_openb3dcore_TMesh_obj*)o);
}
struct openb3d_openb3dcore_TParticleBatch_obj* openb3d_openb3dcore_TParticleBatch_CreateObject_TTParticleBatch_pb(BBBYTE* bbt_inst){
	struct openb3d_openb3dcore_TParticleBatch_obj* bbt_obj=(struct openb3d_openb3dcore_TParticleBatch_obj*)((struct openb3d_openb3dcore_TParticleBatch_obj*)&bbNullObject);
	struct BBDebugScope_2 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"CreateObject",
		{
			{
				BBDEBUGDECL_LOCAL,
				"inst",
				"*b",
				.var_address=&bbt_inst
			},
			{
				BBDEBUGDECL_LOCAL,
				"obj",
				":TParticleBatch",
				.var_address=&bbt_obj
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0xe2f66d59d20c5230, 9, 0};
	bbOnDebugEnterStm(&__stmt_0);
	if(bbt_inst==0){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0xe2f66d59d20c5230, 9, 0};
		bbOnDebugEnterStm(&__stmt_0);
		bbOnDebugLeaveScope();
		bbOnDebugLeaveScope();
		return (struct openb3d_openb3dcore_TParticleBatch_obj*)&bbNullObject;
	}
	struct BBDebugStm __stmt_1 = {0xe2f66d59d20c5230, 10, 0};
	bbOnDebugEnterStm(&__stmt_1);
	bbt_obj=(struct openb3d_openb3dcore_TParticleBatch_obj*)(struct openb3d_openb3dcore_TParticleBatch_obj*)bbObjectNew((BBClass *)&openb3d_openb3dcore_TParticleBatch);
	struct BBDebugStm __stmt_2 = {0xe2f66d59d20c5230, 12, 0};
	bbOnDebugEnterStm(&__stmt_2);
	((struct brl_map_ptrmap_TPtrMap_obj*)bbNullObjectTest((BBObject*)openb3d_openb3dcore_TEntity_ent_map))->clas->m_Insert_pbTObject((struct brl_map_ptrmap_TPtrMap_obj*)openb3d_openb3dcore_TEntity_ent_map,bbt_inst,(BBOBJECT)bbt_obj);
	struct BBDebugStm __stmt_3 = {0xe2f66d59d20c5230, 16, 0};
	bbOnDebugEnterStm(&__stmt_3);
	((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)bbt_obj))->_openb3d_openb3dcore_tentity_instance =bbt_inst;
	struct BBDebugStm __stmt_4 = {0xe2f66d59d20c5230, 17, 0};
	bbOnDebugEnterStm(&__stmt_4);
	((struct openb3d_openb3dcore_TParticleBatch_obj*)bbNullObjectTest((BBObject*)bbt_obj))->clas->m_InitFields((struct openb3d_openb3dcore_TParticleBatch_obj*)bbt_obj);
	struct BBDebugStm __stmt_5 = {0xe2f66d59d20c5230, 18, 0};
	bbOnDebugEnterStm(&__stmt_5);
	bbOnDebugLeaveScope();
	return (struct openb3d_openb3dcore_TParticleBatch_obj*)bbt_obj;
}
BBINT _openb3d_openb3dcore_TParticleBatch_InitFields(struct openb3d_openb3dcore_TParticleBatch_obj* o){
	((struct openb3d_openb3dcore_TParticleBatch_obj*)bbNullObjectTest((BBObject*)o));
	struct BBDebugScope_1 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"InitFields",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TParticleBatch",
				.var_address=&o
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0xe2f66d59d20c5230, 24, 0};
	bbOnDebugEnterStm(&__stmt_0);
	(&openb3d_openb3dcore_TParticleBatch)->super->m_InitFields((struct openb3d_openb3dcore_TMesh_obj*)o);
	bbOnDebugLeaveScope();
	return 0;
}
struct BBDebugScope_3 openb3d_openb3dcore_TParticleBatch_scope ={
	BBDEBUGSCOPE_USERTYPE,
	"TParticleBatch",
	{
		{
			BBDEBUGDECL_TYPEMETHOD,
			"New",
			"()i",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_TParticleBatch_New
		},
		{
			BBDEBUGDECL_TYPEFUNCTION,
			"CreateObject",
			"(*b):TParticleBatch",
			.func_ptr=(BBFuncPtr)&openb3d_openb3dcore_TParticleBatch_CreateObject_TTParticleBatch_pb
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"InitFields",
			"()i",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_TParticleBatch_InitFields
		},
		{
			BBDEBUGDECL_END
		}
	}
};
struct BBClass_openb3d_openb3dcore_TParticleBatch openb3d_openb3dcore_TParticleBatch={
	&openb3d_openb3dcore_TMesh,
	bbObjectFree,
	(BBDebugScope*)&openb3d_openb3dcore_TParticleBatch_scope,
	sizeof(struct openb3d_openb3dcore_TParticleBatch_obj),
	(void (*)(BBOBJECT))_openb3d_openb3dcore_TParticleBatch_New,
	(void (*)(BBOBJECT))_openb3d_openb3dcore_TParticleBatch_Delete,
	bbObjectToString,
	bbObjectCompare,
	bbObjectSendMessage,
	0,
	0,
	0
	,0
	,sizeof(void*)
	,_openb3d_openb3dcore_TMesh_CopyEntity_TTEntity
	,_openb3d_openb3dcore_TMesh_Update
	,openb3d_openb3dcore_TEntity_FreeObject_i_pb
	,openb3d_openb3dcore_TEntity_GetObject_TTEntity_pb
	,openb3d_openb3dcore_TEntity_GetInstance_pb_TTEntity
	,openb3d_openb3dcore_TEntity_InitGlobals_i
	,_openb3d_openb3dcore_TParticleBatch_InitFields
	,_openb3d_openb3dcore_TMesh_DebugFields_ii
	,_openb3d_openb3dcore_TMesh_AddList_TTList
	,openb3d_openb3dcore_TEntity_AddList__i_TTList
	,_openb3d_openb3dcore_TMesh_CopyList_TTList
	,openb3d_openb3dcore_TEntity_CopyList__i_TTList
	,_openb3d_openb3dcore_TEntity_EntityListAdd_TTListTObject
	,_openb3d_openb3dcore_TEntity_EntityListRemove_TTListTObject
	,_openb3d_openb3dcore_TEntity_AddAnimSeq_i
	,_openb3d_openb3dcore_TEntity_SetAnimKey_fiii
	,_openb3d_openb3dcore_TEntity_AlignToVector_fffif
	,_openb3d_openb3dcore_TEntity_GetString_pb
	,_openb3d_openb3dcore_TEntity_SetString_pbS
	,_openb3d_openb3dcore_TMesh_FreeEntity
	,_openb3d_openb3dcore_TEntity_FreeEntityList
	,_openb3d_openb3dcore_TEntity_SetParent_TTEntity
	,_openb3d_openb3dcore_TEntity_PositionEntity_fffi
	,_openb3d_openb3dcore_TEntity_MoveEntity_fff
	,_openb3d_openb3dcore_TEntity_TranslateEntity_fffi
	,_openb3d_openb3dcore_TEntity_ScaleEntity_fffi
	,_openb3d_openb3dcore_TEntity_RotateEntity_fffi
	,_openb3d_openb3dcore_TEntity_TurnEntity_fffi
	,_openb3d_openb3dcore_TEntity_PointEntity_TTEntityf
	,_openb3d_openb3dcore_TEntity_LoadAnimSeq_S
	,_openb3d_openb3dcore_TEntity_ExtractAnimSeq_iii
	,_openb3d_openb3dcore_TEntity_Animate_ifii
	,_openb3d_openb3dcore_TEntity_SetAnimTime_fi
	,_openb3d_openb3dcore_TEntity_AnimSeq
	,_openb3d_openb3dcore_TEntity_AnimLength
	,_openb3d_openb3dcore_TEntity_AnimTime
	,_openb3d_openb3dcore_TEntity_Animating
	,_openb3d_openb3dcore_TEntity_EntityColor_fffi
	,_openb3d_openb3dcore_TEntity_EntityAlpha_f
	,_openb3d_openb3dcore_TEntity_EntityShininess_f
	,_openb3d_openb3dcore_TEntity_EntityTexture_TTTextureii
	,_openb3d_openb3dcore_TEntity_EntityBlend_i
	,_openb3d_openb3dcore_TEntity_EntityFX_i
	,_openb3d_openb3dcore_TEntity_PaintEntity_TTBrush
	,_openb3d_openb3dcore_TEntity_GetEntityBrush
	,_openb3d_openb3dcore_TEntity_EntityOrder_i
	,_openb3d_openb3dcore_TEntity_ShowEntity
	,_openb3d_openb3dcore_TEntity_HideEntity
	,_openb3d_openb3dcore_TEntity_NameEntity_S
	,_openb3d_openb3dcore_TEntity_EntityParent_TTEntityi
	,_openb3d_openb3dcore_TEntity_GetParent
	,_openb3d_openb3dcore_TEntity_EntityX_i
	,_openb3d_openb3dcore_TEntity_EntityY_i
	,_openb3d_openb3dcore_TEntity_EntityZ_i
	,_openb3d_openb3dcore_TEntity_EntityPitch_i
	,_openb3d_openb3dcore_TEntity_EntityYaw_i
	,_openb3d_openb3dcore_TEntity_EntityRoll_i
	,_openb3d_openb3dcore_TEntity_EntityClass
	,_openb3d_openb3dcore_TEntity_EntityName
	,_openb3d_openb3dcore_TEntity_CountChildren
	,_openb3d_openb3dcore_TEntity_GetChild_i
	,_openb3d_openb3dcore_TEntity_FindChild_S
	,_openb3d_openb3dcore_TEntity_EntityPick_f
	,_openb3d_openb3dcore_TEntity_LinePick_fffffff
	,_openb3d_openb3dcore_TEntity_EntityVisible_TTEntityTTEntity
	,_openb3d_openb3dcore_TEntity_EntityDistance_TTEntity
	,_openb3d_openb3dcore_TEntity_DeltaYaw_TTEntity
	,_openb3d_openb3dcore_TEntity_DeltaPitch_TTEntity
	,openb3d_openb3dcore_TEntity_TFormPoint_i_fffTTEntityTTEntity
	,openb3d_openb3dcore_TEntity_TFormVector_i_fffTTEntityTTEntity
	,openb3d_openb3dcore_TEntity_TFormNormal_i_fffTTEntityTTEntity
	,openb3d_openb3dcore_TEntity_TFormedX_f
	,openb3d_openb3dcore_TEntity_TFormedY_f
	,openb3d_openb3dcore_TEntity_TFormedZ_f
	,_openb3d_openb3dcore_TEntity_GetMatElement_ii
	,_openb3d_openb3dcore_TEntity_ResetEntity
	,_openb3d_openb3dcore_TEntity_EntityRadius_ff
	,_openb3d_openb3dcore_TEntity_EntityBox_ffffff
	,_openb3d_openb3dcore_TEntity_EntityType_ii
	,_openb3d_openb3dcore_TEntity_EntityPickMode_ii
	,_openb3d_openb3dcore_TEntity_EntityCollided_i
	,_openb3d_openb3dcore_TEntity_CountCollisions
	,_openb3d_openb3dcore_TEntity_CollisionX_i
	,_openb3d_openb3dcore_TEntity_CollisionY_i
	,_openb3d_openb3dcore_TEntity_CollisionZ_i
	,_openb3d_openb3dcore_TEntity_CollisionNX_i
	,_openb3d_openb3dcore_TEntity_CollisionNY_i
	,_openb3d_openb3dcore_TEntity_CollisionNZ_i
	,_openb3d_openb3dcore_TEntity_CollisionTime_i
	,_openb3d_openb3dcore_TEntity_CollisionEntity_i
	,_openb3d_openb3dcore_TEntity_CollisionSurface_i
	,_openb3d_openb3dcore_TEntity_CollisionTriangle_i
	,_openb3d_openb3dcore_TEntity_GetEntityType
	,_openb3d_openb3dcore_TEntity_MeshCullRadius_f
	,_openb3d_openb3dcore_TEntity_EntityScaleX_i
	,_openb3d_openb3dcore_TEntity_EntityScaleY_i
	,_openb3d_openb3dcore_TEntity_EntityScaleZ_i
	,_openb3d_openb3dcore_TEntity_Hidden
	,openb3d_openb3dcore_TEntity_CountAllChildren_i_TTEntityi
	,_openb3d_openb3dcore_TEntity_GetChildFromAll_iviTTEntity
	,_openb3d_openb3dcore_TEntity_ListParents_TTList
	,_openb3d_openb3dcore_TEntity_UpdateMat_b
	,_openb3d_openb3dcore_TEntity_AddParent_TTEntity
	,openb3d_openb3dcore_TEntity_UpdateChildren_i_TTEntity
	,_openb3d_openb3dcore_TEntity_EntityDistanceSquared_TTEntity
	,_openb3d_openb3dcore_TEntity_MQ_Update
	,_openb3d_openb3dcore_TEntity_MQ_GetInvMatrix_TTMatPtr
	,_openb3d_openb3dcore_TEntity_MQ_GetMatrix_TTMatPtr
	,_openb3d_openb3dcore_TEntity_MQ_GetScaleXYZ_vfvfvf
	,_openb3d_openb3dcore_TEntity_MQ_Turn_ffffi
	,openb3d_openb3dcore_TParticleBatch_CreateObject_TTParticleBatch_pb
	,_openb3d_openb3dcore_TMesh_MeshListAdd_TTListTObject
	,_openb3d_openb3dcore_TMesh_MeshListRemove_TTListTObject
	,_openb3d_openb3dcore_TMesh_MeshArrayResize_ii
	,_openb3d_openb3dcore_TMesh_MeshArraySet_iiTObject
	,openb3d_openb3dcore_TMesh_NewMesh_TTMesh
	,openb3d_openb3dcore_TMesh_Create_TTMesh
	,_openb3d_openb3dcore_TMesh_LightMesh_fffffff
	,_openb3d_openb3dcore_TMesh_CreateAllChildren
	,openb3d_openb3dcore_TMesh_CreatePlane_TTMesh_iTTEntity
	,openb3d_openb3dcore_TMesh_UpdatePlane_i_TTMesh
	,_openb3d_openb3dcore_TMesh_CreateBone_TTEntity
	,openb3d_openb3dcore_TMesh_CreateQuad_TTMesh_TTEntity
	,openb3d_openb3dcore_TMesh_MeshCSG_TTMesh_TTMeshTTMeshi
	,_openb3d_openb3dcore_TMesh_MeshesIntersect_TTMesh
	,_openb3d_openb3dcore_TMesh_RepeatMesh_TTEntity
	,_openb3d_openb3dcore_TMesh_SkinMesh_iiifififif
	,_openb3d_openb3dcore_TMesh_PositionAnimMesh_fff
	,_openb3d_openb3dcore_TMesh_RotateAnimMesh_fff
	,_openb3d_openb3dcore_TMesh_ScaleAnimMesh_fff
	,_openb3d_openb3dcore_TMesh_TransformVertices_TTMatPtr
	,_openb3d_openb3dcore_TMesh_UpdateVerticesNormals_TTSurface
	,openb3d_openb3dcore_TMesh_CreateMesh_TTMesh_TTEntity
	,openb3d_openb3dcore_TMesh_CreateCube_TTMesh_TTEntity
	,openb3d_openb3dcore_TMesh_CreateSphere_TTMesh_iTTEntity
	,openb3d_openb3dcore_TMesh_CreateCylinder_TTMesh_iiTTEntity
	,openb3d_openb3dcore_TMesh_CreateCone_TTMesh_iiTTEntity
	,_openb3d_openb3dcore_TMesh_CopyMesh_TTEntity
	,_openb3d_openb3dcore_TMesh_AddMesh_TTMesh
	,_openb3d_openb3dcore_TMesh_FlipMesh
	,_openb3d_openb3dcore_TMesh_PaintMesh_TTBrush
	,_openb3d_openb3dcore_TMesh_FitMesh_ffffffi
	,_openb3d_openb3dcore_TMesh_ScaleMesh_fff
	,_openb3d_openb3dcore_TMesh_RotateMesh_fff
	,_openb3d_openb3dcore_TMesh_PositionMesh_fff
	,_openb3d_openb3dcore_TMesh_UpdateNormals
	,_openb3d_openb3dcore_TMesh_CreateSurface_TTBrush
	,_openb3d_openb3dcore_TMesh_MeshWidth
	,_openb3d_openb3dcore_TMesh_MeshHeight
	,_openb3d_openb3dcore_TMesh_MeshDepth
	,_openb3d_openb3dcore_TMesh_CountSurfaces
	,_openb3d_openb3dcore_TMesh_GetSurface_i
	,_openb3d_openb3dcore_TMesh_FindSurface_TTBrush
	,_openb3d_openb3dcore_TMesh_CountVertices
	,_openb3d_openb3dcore_TMesh_CountTriangles
	,openb3d_openb3dcore_TMesh_CopyBonesList_i_TTEntity
	,_openb3d_openb3dcore_TMesh_CollapseAnimMesh
	,_openb3d_openb3dcore_TMesh_CollapseChildren_TTEntityTTMesh
	,_openb3d_openb3dcore_TMesh_TransformMesh_TTMatPtr
	,_openb3d_openb3dcore_TMesh_GetBounds
	,_openb3d_openb3dcore_TMesh_Alpha
	,_openb3d_openb3dcore_TMesh_MeshColor_ffff
	,_openb3d_openb3dcore_TMesh_MeshRed_f
	,_openb3d_openb3dcore_TMesh_MeshGreen_f
	,_openb3d_openb3dcore_TMesh_MeshBlue_f
	,_openb3d_openb3dcore_TMesh_MeshAlpha_f
	,_openb3d_openb3dcore_TMesh_TreeCheck
	,_openb3d_openb3dcore_TMesh_Render
	,_openb3d_openb3dcore_TMesh_UpdateShadow
};

void _openb3d_openb3dcore_TParticleEmitter_New(struct openb3d_openb3dcore_TParticleEmitter_obj* o) {
	_openb3d_openb3dcore_TEntity_New((struct openb3d_openb3dcore_TEntity_obj*)o);
	o->clas = &openb3d_openb3dcore_TParticleEmitter;
}
void _openb3d_openb3dcore_TParticleEmitter_Delete(struct openb3d_openb3dcore_TParticleEmitter_obj* o) {
	_openb3d_openb3dcore_TEntity_Delete((struct openb3d_openb3dcore_TEntity_obj*)o);
}
struct openb3d_openb3dcore_TParticleEmitter_obj* openb3d_openb3dcore_TParticleEmitter_CreateObject_TTParticleEmitter_pb(BBBYTE* bbt_inst){
	struct openb3d_openb3dcore_TParticleEmitter_obj* bbt_obj=(struct openb3d_openb3dcore_TParticleEmitter_obj*)((struct openb3d_openb3dcore_TParticleEmitter_obj*)&bbNullObject);
	struct BBDebugScope_2 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"CreateObject",
		{
			{
				BBDEBUGDECL_LOCAL,
				"inst",
				"*b",
				.var_address=&bbt_inst
			},
			{
				BBDEBUGDECL_LOCAL,
				"obj",
				":TParticleEmitter",
				.var_address=&bbt_obj
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0xe2f66d59d20c5230, 41, 0};
	bbOnDebugEnterStm(&__stmt_0);
	if(bbt_inst==0){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0xe2f66d59d20c5230, 41, 0};
		bbOnDebugEnterStm(&__stmt_0);
		bbOnDebugLeaveScope();
		bbOnDebugLeaveScope();
		return (struct openb3d_openb3dcore_TParticleEmitter_obj*)&bbNullObject;
	}
	struct BBDebugStm __stmt_1 = {0xe2f66d59d20c5230, 42, 0};
	bbOnDebugEnterStm(&__stmt_1);
	bbt_obj=(struct openb3d_openb3dcore_TParticleEmitter_obj*)(struct openb3d_openb3dcore_TParticleEmitter_obj*)bbObjectNew((BBClass *)&openb3d_openb3dcore_TParticleEmitter);
	struct BBDebugStm __stmt_2 = {0xe2f66d59d20c5230, 44, 0};
	bbOnDebugEnterStm(&__stmt_2);
	((struct brl_map_ptrmap_TPtrMap_obj*)bbNullObjectTest((BBObject*)openb3d_openb3dcore_TEntity_ent_map))->clas->m_Insert_pbTObject((struct brl_map_ptrmap_TPtrMap_obj*)openb3d_openb3dcore_TEntity_ent_map,bbt_inst,(BBOBJECT)bbt_obj);
	struct BBDebugStm __stmt_3 = {0xe2f66d59d20c5230, 48, 0};
	bbOnDebugEnterStm(&__stmt_3);
	((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)bbt_obj))->_openb3d_openb3dcore_tentity_instance =bbt_inst;
	struct BBDebugStm __stmt_4 = {0xe2f66d59d20c5230, 49, 0};
	bbOnDebugEnterStm(&__stmt_4);
	((struct openb3d_openb3dcore_TParticleEmitter_obj*)bbNullObjectTest((BBObject*)bbt_obj))->clas->m_InitFields((struct openb3d_openb3dcore_TParticleEmitter_obj*)bbt_obj);
	struct BBDebugStm __stmt_5 = {0xe2f66d59d20c5230, 50, 0};
	bbOnDebugEnterStm(&__stmt_5);
	bbOnDebugLeaveScope();
	return (struct openb3d_openb3dcore_TParticleEmitter_obj*)bbt_obj;
}
BBINT _openb3d_openb3dcore_TParticleEmitter_InitFields(struct openb3d_openb3dcore_TParticleEmitter_obj* o){
	((struct openb3d_openb3dcore_TParticleEmitter_obj*)bbNullObjectTest((BBObject*)o));
	struct BBDebugScope_1 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"InitFields",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TParticleEmitter",
				.var_address=&o
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0xe2f66d59d20c5230, 56, 0};
	bbOnDebugEnterStm(&__stmt_0);
	(&openb3d_openb3dcore_TParticleEmitter)->super->m_InitFields((struct openb3d_openb3dcore_TEntity_obj*)o);
	bbOnDebugLeaveScope();
	return 0;
}
struct openb3d_openb3dcore_TParticleEmitter_obj* openb3d_openb3dcore_TParticleEmitter_CreateParticleEmitter_TTParticleEmitter_TTEntityTTEntity(struct openb3d_openb3dcore_TEntity_obj* bbt_particle,struct openb3d_openb3dcore_TEntity_obj* bbt_parent_ent){
	BBBYTE* bbt_inst=0;
	struct BBDebugScope_3 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"CreateParticleEmitter",
		{
			{
				BBDEBUGDECL_LOCAL,
				"particle",
				":TEntity",
				.var_address=&bbt_particle
			},
			{
				BBDEBUGDECL_LOCAL,
				"parent_ent",
				":TEntity",
				.var_address=&bbt_parent_ent
			},
			{
				BBDEBUGDECL_LOCAL,
				"inst",
				"*b",
				.var_address=&bbt_inst
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0xe2f66d59d20c5230, 64, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbt_inst=CreateParticleEmitter_(openb3d_openb3dcore_TEntity_GetInstance_pb_TTEntity((struct openb3d_openb3dcore_TEntity_obj*)bbt_particle),openb3d_openb3dcore_TEntity_GetInstance_pb_TTEntity((struct openb3d_openb3dcore_TEntity_obj*)bbt_parent_ent));
	struct BBDebugStm __stmt_1 = {0xe2f66d59d20c5230, 65, 0};
	bbOnDebugEnterStm(&__stmt_1);
	bbOnDebugLeaveScope();
	return (struct openb3d_openb3dcore_TParticleEmitter_obj*)openb3d_openb3dcore_TParticleEmitter_CreateObject_TTParticleEmitter_pb(bbt_inst);
}
BBINT _openb3d_openb3dcore_TParticleEmitter_EmitterVector_ffffff(struct openb3d_openb3dcore_TParticleEmitter_obj* o,BBFLOAT bbt_startx,BBFLOAT bbt_starty,BBFLOAT bbt_startz,BBFLOAT bbt_endx,BBFLOAT bbt_endy,BBFLOAT bbt_endz){
	((struct openb3d_openb3dcore_TParticleEmitter_obj*)bbNullObjectTest((BBObject*)o));
	struct BBDebugScope_7 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"EmitterVector",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TParticleEmitter",
				.var_address=&o
			},
			{
				BBDEBUGDECL_LOCAL,
				"startx",
				"f",
				.var_address=&bbt_startx
			},
			{
				BBDEBUGDECL_LOCAL,
				"starty",
				"f",
				.var_address=&bbt_starty
			},
			{
				BBDEBUGDECL_LOCAL,
				"startz",
				"f",
				.var_address=&bbt_startz
			},
			{
				BBDEBUGDECL_LOCAL,
				"endx",
				"f",
				.var_address=&bbt_endx
			},
			{
				BBDEBUGDECL_LOCAL,
				"endy",
				"f",
				.var_address=&bbt_endy
			},
			{
				BBDEBUGDECL_LOCAL,
				"endz",
				"f",
				.var_address=&bbt_endz
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0xe2f66d59d20c5230, 71, 0};
	bbOnDebugEnterStm(&__stmt_0);
	EmitterVector_(openb3d_openb3dcore_TEntity_GetInstance_pb_TTEntity((struct openb3d_openb3dcore_TEntity_obj*)((struct openb3d_openb3dcore_TEntity_obj*)bbObjectDowncast((BBOBJECT)o,(BBClass*)&openb3d_openb3dcore_TEntity))),bbt_startx,bbt_starty,bbt_startz,bbt_endx,bbt_endy,bbt_endz);
	bbOnDebugLeaveScope();
	return 0;
}
BBINT _openb3d_openb3dcore_TParticleEmitter_EmitterRate_f(struct openb3d_openb3dcore_TParticleEmitter_obj* o,BBFLOAT bbt_r){
	((struct openb3d_openb3dcore_TParticleEmitter_obj*)bbNullObjectTest((BBObject*)o));
	struct BBDebugScope_2 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"EmitterRate",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TParticleEmitter",
				.var_address=&o
			},
			{
				BBDEBUGDECL_LOCAL,
				"r",
				"f",
				.var_address=&bbt_r
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0xe2f66d59d20c5230, 77, 0};
	bbOnDebugEnterStm(&__stmt_0);
	EmitterRate_(openb3d_openb3dcore_TEntity_GetInstance_pb_TTEntity((struct openb3d_openb3dcore_TEntity_obj*)((struct openb3d_openb3dcore_TEntity_obj*)bbObjectDowncast((BBOBJECT)o,(BBClass*)&openb3d_openb3dcore_TEntity))),bbt_r);
	bbOnDebugLeaveScope();
	return 0;
}
BBINT _openb3d_openb3dcore_TParticleEmitter_EmitterParticleLife_iii(struct openb3d_openb3dcore_TParticleEmitter_obj* o,BBINT bbt_startl,BBINT bbt_endl,BBINT bbt_randl){
	((struct openb3d_openb3dcore_TParticleEmitter_obj*)bbNullObjectTest((BBObject*)o));
	struct BBDebugScope_4 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"EmitterParticleLife",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TParticleEmitter",
				.var_address=&o
			},
			{
				BBDEBUGDECL_LOCAL,
				"startl",
				"i",
				.var_address=&bbt_startl
			},
			{
				BBDEBUGDECL_LOCAL,
				"endl",
				"i",
				.var_address=&bbt_endl
			},
			{
				BBDEBUGDECL_LOCAL,
				"randl",
				"i",
				.var_address=&bbt_randl
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0xe2f66d59d20c5230, 83, 0};
	bbOnDebugEnterStm(&__stmt_0);
	EmitterParticleLife_(openb3d_openb3dcore_TEntity_GetInstance_pb_TTEntity((struct openb3d_openb3dcore_TEntity_obj*)((struct openb3d_openb3dcore_TEntity_obj*)bbObjectDowncast((BBOBJECT)o,(BBClass*)&openb3d_openb3dcore_TEntity))),bbt_startl,bbt_endl,bbt_randl);
	bbOnDebugLeaveScope();
	return 0;
}
BBINT _openb3d_openb3dcore_TParticleEmitter_EmitterParticleFunction_F_pbi_i_(struct openb3d_openb3dcore_TParticleEmitter_obj* o,BBINT(* bbt_EmitterFunction)(BBBYTE*,BBINT)){
	((struct openb3d_openb3dcore_TParticleEmitter_obj*)bbNullObjectTest((BBObject*)o));
	struct BBDebugScope_2 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"EmitterParticleFunction",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TParticleEmitter",
				.var_address=&o
			},
			{
				BBDEBUGDECL_LOCAL,
				"EmitterFunction",
				"(*b,i)i",
				.var_address=&bbt_EmitterFunction
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0xe2f66d59d20c5230, 89, 0};
	bbOnDebugEnterStm(&__stmt_0);
	EmitterParticleFunction_(openb3d_openb3dcore_TEntity_GetInstance_pb_TTEntity((struct openb3d_openb3dcore_TEntity_obj*)((struct openb3d_openb3dcore_TEntity_obj*)bbObjectDowncast((BBOBJECT)o,(BBClass*)&openb3d_openb3dcore_TEntity))),bbt_EmitterFunction);
	bbOnDebugLeaveScope();
	return 0;
}
BBINT _openb3d_openb3dcore_TParticleEmitter_EmitterParticleSpeed_ff(struct openb3d_openb3dcore_TParticleEmitter_obj* o,BBFLOAT bbt_starts,BBFLOAT bbt_ends){
	((struct openb3d_openb3dcore_TParticleEmitter_obj*)bbNullObjectTest((BBObject*)o));
	struct BBDebugScope_3 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"EmitterParticleSpeed",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TParticleEmitter",
				.var_address=&o
			},
			{
				BBDEBUGDECL_LOCAL,
				"starts",
				"f",
				.var_address=&bbt_starts
			},
			{
				BBDEBUGDECL_LOCAL,
				"ends",
				"f",
				.var_address=&bbt_ends
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0xe2f66d59d20c5230, 95, 0};
	bbOnDebugEnterStm(&__stmt_0);
	EmitterParticleSpeed_(openb3d_openb3dcore_TEntity_GetInstance_pb_TTEntity((struct openb3d_openb3dcore_TEntity_obj*)((struct openb3d_openb3dcore_TEntity_obj*)bbObjectDowncast((BBOBJECT)o,(BBClass*)&openb3d_openb3dcore_TEntity))),bbt_starts,bbt_ends);
	bbOnDebugLeaveScope();
	return 0;
}
BBINT _openb3d_openb3dcore_TParticleEmitter_EmitterVariance_f(struct openb3d_openb3dcore_TParticleEmitter_obj* o,BBFLOAT bbt_v){
	((struct openb3d_openb3dcore_TParticleEmitter_obj*)bbNullObjectTest((BBObject*)o));
	struct BBDebugScope_2 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"EmitterVariance",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TParticleEmitter",
				.var_address=&o
			},
			{
				BBDEBUGDECL_LOCAL,
				"v",
				"f",
				.var_address=&bbt_v
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0xe2f66d59d20c5230, 101, 0};
	bbOnDebugEnterStm(&__stmt_0);
	EmitterVariance_(openb3d_openb3dcore_TEntity_GetInstance_pb_TTEntity((struct openb3d_openb3dcore_TEntity_obj*)((struct openb3d_openb3dcore_TEntity_obj*)bbObjectDowncast((BBOBJECT)o,(BBClass*)&openb3d_openb3dcore_TEntity))),bbt_v);
	bbOnDebugLeaveScope();
	return 0;
}
BBINT _openb3d_openb3dcore_TParticleEmitter_EmitterParticleAlpha_fffi(struct openb3d_openb3dcore_TParticleEmitter_obj* o,BBFLOAT bbt_starta,BBFLOAT bbt_enda,BBFLOAT bbt_mida,BBINT bbt_midlife){
	((struct openb3d_openb3dcore_TParticleEmitter_obj*)bbNullObjectTest((BBObject*)o));
	struct BBDebugScope_5 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"EmitterParticleAlpha",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TParticleEmitter",
				.var_address=&o
			},
			{
				BBDEBUGDECL_LOCAL,
				"starta",
				"f",
				.var_address=&bbt_starta
			},
			{
				BBDEBUGDECL_LOCAL,
				"enda",
				"f",
				.var_address=&bbt_enda
			},
			{
				BBDEBUGDECL_LOCAL,
				"mida",
				"f",
				.var_address=&bbt_mida
			},
			{
				BBDEBUGDECL_LOCAL,
				"midlife",
				"i",
				.var_address=&bbt_midlife
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0xe2f66d59d20c5230, 107, 0};
	bbOnDebugEnterStm(&__stmt_0);
	EmitterParticleAlpha_(openb3d_openb3dcore_TEntity_GetInstance_pb_TTEntity((struct openb3d_openb3dcore_TEntity_obj*)((struct openb3d_openb3dcore_TEntity_obj*)bbObjectDowncast((BBOBJECT)o,(BBClass*)&openb3d_openb3dcore_TEntity))),bbt_starta,bbt_enda,bbt_mida,bbt_midlife);
	bbOnDebugLeaveScope();
	return 0;
}
BBINT _openb3d_openb3dcore_TParticleEmitter_EmitterParticleScale_ffffffi(struct openb3d_openb3dcore_TParticleEmitter_obj* o,BBFLOAT bbt_startsx,BBFLOAT bbt_startsy,BBFLOAT bbt_endsx,BBFLOAT bbt_endsy,BBFLOAT bbt_midsx,BBFLOAT bbt_midsy,BBINT bbt_midlife){
	((struct openb3d_openb3dcore_TParticleEmitter_obj*)bbNullObjectTest((BBObject*)o));
	struct BBDebugScope_8 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"EmitterParticleScale",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TParticleEmitter",
				.var_address=&o
			},
			{
				BBDEBUGDECL_LOCAL,
				"startsx",
				"f",
				.var_address=&bbt_startsx
			},
			{
				BBDEBUGDECL_LOCAL,
				"startsy",
				"f",
				.var_address=&bbt_startsy
			},
			{
				BBDEBUGDECL_LOCAL,
				"endsx",
				"f",
				.var_address=&bbt_endsx
			},
			{
				BBDEBUGDECL_LOCAL,
				"endsy",
				"f",
				.var_address=&bbt_endsy
			},
			{
				BBDEBUGDECL_LOCAL,
				"midsx",
				"f",
				.var_address=&bbt_midsx
			},
			{
				BBDEBUGDECL_LOCAL,
				"midsy",
				"f",
				.var_address=&bbt_midsy
			},
			{
				BBDEBUGDECL_LOCAL,
				"midlife",
				"i",
				.var_address=&bbt_midlife
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0xe2f66d59d20c5230, 113, 0};
	bbOnDebugEnterStm(&__stmt_0);
	EmitterParticleScale_(openb3d_openb3dcore_TEntity_GetInstance_pb_TTEntity((struct openb3d_openb3dcore_TEntity_obj*)((struct openb3d_openb3dcore_TEntity_obj*)bbObjectDowncast((BBOBJECT)o,(BBClass*)&openb3d_openb3dcore_TEntity))),bbt_startsx,bbt_startsy,bbt_endsx,bbt_endsy,bbt_midsx,bbt_midsy,bbt_midlife);
	bbOnDebugLeaveScope();
	return 0;
}
BBINT _openb3d_openb3dcore_TParticleEmitter_EmitterParticleColor_fffffffffi(struct openb3d_openb3dcore_TParticleEmitter_obj* o,BBFLOAT bbt_startr,BBFLOAT bbt_startg,BBFLOAT bbt_startb,BBFLOAT bbt_endr,BBFLOAT bbt_endg,BBFLOAT bbt_endb,BBFLOAT bbt_midr,BBFLOAT bbt_midg,BBFLOAT bbt_midb,BBINT bbt_midlife){
	((struct openb3d_openb3dcore_TParticleEmitter_obj*)bbNullObjectTest((BBObject*)o));
	struct BBDebugScope_11 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"EmitterParticleColor",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TParticleEmitter",
				.var_address=&o
			},
			{
				BBDEBUGDECL_LOCAL,
				"startr",
				"f",
				.var_address=&bbt_startr
			},
			{
				BBDEBUGDECL_LOCAL,
				"startg",
				"f",
				.var_address=&bbt_startg
			},
			{
				BBDEBUGDECL_LOCAL,
				"startb",
				"f",
				.var_address=&bbt_startb
			},
			{
				BBDEBUGDECL_LOCAL,
				"endr",
				"f",
				.var_address=&bbt_endr
			},
			{
				BBDEBUGDECL_LOCAL,
				"endg",
				"f",
				.var_address=&bbt_endg
			},
			{
				BBDEBUGDECL_LOCAL,
				"endb",
				"f",
				.var_address=&bbt_endb
			},
			{
				BBDEBUGDECL_LOCAL,
				"midr",
				"f",
				.var_address=&bbt_midr
			},
			{
				BBDEBUGDECL_LOCAL,
				"midg",
				"f",
				.var_address=&bbt_midg
			},
			{
				BBDEBUGDECL_LOCAL,
				"midb",
				"f",
				.var_address=&bbt_midb
			},
			{
				BBDEBUGDECL_LOCAL,
				"midlife",
				"i",
				.var_address=&bbt_midlife
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0xe2f66d59d20c5230, 119, 0};
	bbOnDebugEnterStm(&__stmt_0);
	EmitterParticleColor_(openb3d_openb3dcore_TEntity_GetInstance_pb_TTEntity((struct openb3d_openb3dcore_TEntity_obj*)((struct openb3d_openb3dcore_TEntity_obj*)bbObjectDowncast((BBOBJECT)o,(BBClass*)&openb3d_openb3dcore_TEntity))),bbt_startr,bbt_startg,bbt_startb,bbt_endr,bbt_endg,bbt_endb,bbt_midr,bbt_midg,bbt_midb,bbt_midlife);
	bbOnDebugLeaveScope();
	return 0;
}
BBINT _openb3d_openb3dcore_TParticleEmitter_EmitterParticleRotate_fffi(struct openb3d_openb3dcore_TParticleEmitter_obj* o,BBFLOAT bbt_startr,BBFLOAT bbt_endr,BBFLOAT bbt_midr,BBINT bbt_midlife){
	((struct openb3d_openb3dcore_TParticleEmitter_obj*)bbNullObjectTest((BBObject*)o));
	struct BBDebugScope_5 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"EmitterParticleRotate",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TParticleEmitter",
				.var_address=&o
			},
			{
				BBDEBUGDECL_LOCAL,
				"startr",
				"f",
				.var_address=&bbt_startr
			},
			{
				BBDEBUGDECL_LOCAL,
				"endr",
				"f",
				.var_address=&bbt_endr
			},
			{
				BBDEBUGDECL_LOCAL,
				"midr",
				"f",
				.var_address=&bbt_midr
			},
			{
				BBDEBUGDECL_LOCAL,
				"midlife",
				"i",
				.var_address=&bbt_midlife
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0xe2f66d59d20c5230, 125, 0};
	bbOnDebugEnterStm(&__stmt_0);
	EmitterParticleRotate_(openb3d_openb3dcore_TEntity_GetInstance_pb_TTEntity((struct openb3d_openb3dcore_TEntity_obj*)((struct openb3d_openb3dcore_TEntity_obj*)bbObjectDowncast((BBOBJECT)o,(BBClass*)&openb3d_openb3dcore_TEntity))),bbt_startr,bbt_endr,bbt_midr,bbt_midlife);
	bbOnDebugLeaveScope();
	return 0;
}
struct openb3d_openb3dcore_TParticleEmitter_obj* _openb3d_openb3dcore_TParticleEmitter_CopyEntity_TTEntity(struct openb3d_openb3dcore_TParticleEmitter_obj* o,struct openb3d_openb3dcore_TEntity_obj* bbt_parent){
	((struct openb3d_openb3dcore_TParticleEmitter_obj*)bbNullObjectTest((BBObject*)o));
	BBBYTE* bbt_inst=0;
	struct openb3d_openb3dcore_TParticleEmitter_obj* bbt_particle=(struct openb3d_openb3dcore_TParticleEmitter_obj*)((struct openb3d_openb3dcore_TParticleEmitter_obj*)&bbNullObject);
	struct BBDebugScope_4 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"CopyEntity",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TParticleEmitter",
				.var_address=&o
			},
			{
				BBDEBUGDECL_LOCAL,
				"parent",
				":TEntity",
				.var_address=&bbt_parent
			},
			{
				BBDEBUGDECL_LOCAL,
				"inst",
				"*b",
				.var_address=&bbt_inst
			},
			{
				BBDEBUGDECL_LOCAL,
				"particle",
				":TParticleEmitter",
				.var_address=&bbt_particle
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0xe2f66d59d20c5230, 133, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbt_inst=CopyEntity_(openb3d_openb3dcore_TEntity_GetInstance_pb_TTEntity((struct openb3d_openb3dcore_TEntity_obj*)((struct openb3d_openb3dcore_TEntity_obj*)bbObjectDowncast((BBOBJECT)o,(BBClass*)&openb3d_openb3dcore_TEntity))),openb3d_openb3dcore_TEntity_GetInstance_pb_TTEntity((struct openb3d_openb3dcore_TEntity_obj*)bbt_parent));
	struct BBDebugStm __stmt_1 = {0xe2f66d59d20c5230, 134, 0};
	bbOnDebugEnterStm(&__stmt_1);
	bbt_particle=(struct openb3d_openb3dcore_TParticleEmitter_obj*)o->clas->f_CreateObject_TTParticleEmitter_pb(bbt_inst);
	struct BBDebugStm __stmt_2 = {0xe2f66d59d20c5230, 135, 0};
	bbOnDebugEnterStm(&__stmt_2);
	if(((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tentity_pick_mode [0]!=0){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0xe2f66d59d20c5230, 135, 0};
		bbOnDebugEnterStm(&__stmt_0);
		openb3d_openb3dcore_TPick_AddList__i_TTList((struct brl_linkedlist_TList_obj*)openb3d_openb3dcore_TPick_ent_list);
		bbOnDebugLeaveScope();
	}
	struct BBDebugStm __stmt_3 = {0xe2f66d59d20c5230, 136, 0};
	bbOnDebugEnterStm(&__stmt_3);
	bbOnDebugLeaveScope();
	return (struct openb3d_openb3dcore_TParticleEmitter_obj*)bbt_particle;
}
BBINT _openb3d_openb3dcore_TParticleEmitter_Update(struct openb3d_openb3dcore_TParticleEmitter_obj* o){
	((struct openb3d_openb3dcore_TParticleEmitter_obj*)bbNullObjectTest((BBObject*)o));
	struct BBDebugScope_1 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"Update",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TParticleEmitter",
				.var_address=&o
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	bbOnDebugLeaveScope();
	return 0;
}
struct BBDebugScope_16 openb3d_openb3dcore_TParticleEmitter_scope ={
	BBDEBUGSCOPE_USERTYPE,
	"TParticleEmitter",
	{
		{
			BBDEBUGDECL_TYPEMETHOD,
			"New",
			"()i",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_TParticleEmitter_New
		},
		{
			BBDEBUGDECL_TYPEFUNCTION,
			"CreateObject",
			"(*b):TParticleEmitter",
			.func_ptr=(BBFuncPtr)&openb3d_openb3dcore_TParticleEmitter_CreateObject_TTParticleEmitter_pb
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"InitFields",
			"()i",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_TParticleEmitter_InitFields
		},
		{
			BBDEBUGDECL_TYPEFUNCTION,
			"CreateParticleEmitter",
			"(:TEntity,:TEntity):TParticleEmitter",
			.func_ptr=(BBFuncPtr)&openb3d_openb3dcore_TParticleEmitter_CreateParticleEmitter_TTParticleEmitter_TTEntityTTEntity
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"EmitterVector",
			"(f,f,f,f,f,f)i",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_TParticleEmitter_EmitterVector_ffffff
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"EmitterRate",
			"(f)i",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_TParticleEmitter_EmitterRate_f
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"EmitterParticleLife",
			"(i,i,i)i",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_TParticleEmitter_EmitterParticleLife_iii
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"EmitterParticleFunction",
			"((*b,i)i)i",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_TParticleEmitter_EmitterParticleFunction_F_pbi_i_
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"EmitterParticleSpeed",
			"(f,f)i",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_TParticleEmitter_EmitterParticleSpeed_ff
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"EmitterVariance",
			"(f)i",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_TParticleEmitter_EmitterVariance_f
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"EmitterParticleAlpha",
			"(f,f,f,i)i",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_TParticleEmitter_EmitterParticleAlpha_fffi
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"EmitterParticleScale",
			"(f,f,f,f,f,f,i)i",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_TParticleEmitter_EmitterParticleScale_ffffffi
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"EmitterParticleColor",
			"(f,f,f,f,f,f,f,f,f,i)i",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_TParticleEmitter_EmitterParticleColor_fffffffffi
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"EmitterParticleRotate",
			"(f,f,f,i)i",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_TParticleEmitter_EmitterParticleRotate_fffi
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"CopyEntity",
			"(:TEntity):TParticleEmitter",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_TParticleEmitter_CopyEntity_TTEntity
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"Update",
			"()i",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_TParticleEmitter_Update
		},
		{
			BBDEBUGDECL_END
		}
	}
};
struct BBClass_openb3d_openb3dcore_TParticleEmitter openb3d_openb3dcore_TParticleEmitter={
	&openb3d_openb3dcore_TEntity,
	bbObjectFree,
	(BBDebugScope*)&openb3d_openb3dcore_TParticleEmitter_scope,
	sizeof(struct openb3d_openb3dcore_TParticleEmitter_obj),
	(void (*)(BBOBJECT))_openb3d_openb3dcore_TParticleEmitter_New,
	(void (*)(BBOBJECT))_openb3d_openb3dcore_TParticleEmitter_Delete,
	bbObjectToString,
	bbObjectCompare,
	bbObjectSendMessage,
	0,
	0,
	0
	,0
	,sizeof(void*)
	,_openb3d_openb3dcore_TParticleEmitter_CopyEntity_TTEntity
	,_openb3d_openb3dcore_TParticleEmitter_Update
	,openb3d_openb3dcore_TEntity_FreeObject_i_pb
	,openb3d_openb3dcore_TEntity_GetObject_TTEntity_pb
	,openb3d_openb3dcore_TEntity_GetInstance_pb_TTEntity
	,openb3d_openb3dcore_TEntity_InitGlobals_i
	,_openb3d_openb3dcore_TParticleEmitter_InitFields
	,_openb3d_openb3dcore_TEntity_DebugFields_ii
	,_openb3d_openb3dcore_TEntity_AddList_TTList
	,openb3d_openb3dcore_TEntity_AddList__i_TTList
	,_openb3d_openb3dcore_TEntity_CopyList_TTList
	,openb3d_openb3dcore_TEntity_CopyList__i_TTList
	,_openb3d_openb3dcore_TEntity_EntityListAdd_TTListTObject
	,_openb3d_openb3dcore_TEntity_EntityListRemove_TTListTObject
	,_openb3d_openb3dcore_TEntity_AddAnimSeq_i
	,_openb3d_openb3dcore_TEntity_SetAnimKey_fiii
	,_openb3d_openb3dcore_TEntity_AlignToVector_fffif
	,_openb3d_openb3dcore_TEntity_GetString_pb
	,_openb3d_openb3dcore_TEntity_SetString_pbS
	,_openb3d_openb3dcore_TEntity_FreeEntity
	,_openb3d_openb3dcore_TEntity_FreeEntityList
	,_openb3d_openb3dcore_TEntity_SetParent_TTEntity
	,_openb3d_openb3dcore_TEntity_PositionEntity_fffi
	,_openb3d_openb3dcore_TEntity_MoveEntity_fff
	,_openb3d_openb3dcore_TEntity_TranslateEntity_fffi
	,_openb3d_openb3dcore_TEntity_ScaleEntity_fffi
	,_openb3d_openb3dcore_TEntity_RotateEntity_fffi
	,_openb3d_openb3dcore_TEntity_TurnEntity_fffi
	,_openb3d_openb3dcore_TEntity_PointEntity_TTEntityf
	,_openb3d_openb3dcore_TEntity_LoadAnimSeq_S
	,_openb3d_openb3dcore_TEntity_ExtractAnimSeq_iii
	,_openb3d_openb3dcore_TEntity_Animate_ifii
	,_openb3d_openb3dcore_TEntity_SetAnimTime_fi
	,_openb3d_openb3dcore_TEntity_AnimSeq
	,_openb3d_openb3dcore_TEntity_AnimLength
	,_openb3d_openb3dcore_TEntity_AnimTime
	,_openb3d_openb3dcore_TEntity_Animating
	,_openb3d_openb3dcore_TEntity_EntityColor_fffi
	,_openb3d_openb3dcore_TEntity_EntityAlpha_f
	,_openb3d_openb3dcore_TEntity_EntityShininess_f
	,_openb3d_openb3dcore_TEntity_EntityTexture_TTTextureii
	,_openb3d_openb3dcore_TEntity_EntityBlend_i
	,_openb3d_openb3dcore_TEntity_EntityFX_i
	,_openb3d_openb3dcore_TEntity_PaintEntity_TTBrush
	,_openb3d_openb3dcore_TEntity_GetEntityBrush
	,_openb3d_openb3dcore_TEntity_EntityOrder_i
	,_openb3d_openb3dcore_TEntity_ShowEntity
	,_openb3d_openb3dcore_TEntity_HideEntity
	,_openb3d_openb3dcore_TEntity_NameEntity_S
	,_openb3d_openb3dcore_TEntity_EntityParent_TTEntityi
	,_openb3d_openb3dcore_TEntity_GetParent
	,_openb3d_openb3dcore_TEntity_EntityX_i
	,_openb3d_openb3dcore_TEntity_EntityY_i
	,_openb3d_openb3dcore_TEntity_EntityZ_i
	,_openb3d_openb3dcore_TEntity_EntityPitch_i
	,_openb3d_openb3dcore_TEntity_EntityYaw_i
	,_openb3d_openb3dcore_TEntity_EntityRoll_i
	,_openb3d_openb3dcore_TEntity_EntityClass
	,_openb3d_openb3dcore_TEntity_EntityName
	,_openb3d_openb3dcore_TEntity_CountChildren
	,_openb3d_openb3dcore_TEntity_GetChild_i
	,_openb3d_openb3dcore_TEntity_FindChild_S
	,_openb3d_openb3dcore_TEntity_EntityPick_f
	,_openb3d_openb3dcore_TEntity_LinePick_fffffff
	,_openb3d_openb3dcore_TEntity_EntityVisible_TTEntityTTEntity
	,_openb3d_openb3dcore_TEntity_EntityDistance_TTEntity
	,_openb3d_openb3dcore_TEntity_DeltaYaw_TTEntity
	,_openb3d_openb3dcore_TEntity_DeltaPitch_TTEntity
	,openb3d_openb3dcore_TEntity_TFormPoint_i_fffTTEntityTTEntity
	,openb3d_openb3dcore_TEntity_TFormVector_i_fffTTEntityTTEntity
	,openb3d_openb3dcore_TEntity_TFormNormal_i_fffTTEntityTTEntity
	,openb3d_openb3dcore_TEntity_TFormedX_f
	,openb3d_openb3dcore_TEntity_TFormedY_f
	,openb3d_openb3dcore_TEntity_TFormedZ_f
	,_openb3d_openb3dcore_TEntity_GetMatElement_ii
	,_openb3d_openb3dcore_TEntity_ResetEntity
	,_openb3d_openb3dcore_TEntity_EntityRadius_ff
	,_openb3d_openb3dcore_TEntity_EntityBox_ffffff
	,_openb3d_openb3dcore_TEntity_EntityType_ii
	,_openb3d_openb3dcore_TEntity_EntityPickMode_ii
	,_openb3d_openb3dcore_TEntity_EntityCollided_i
	,_openb3d_openb3dcore_TEntity_CountCollisions
	,_openb3d_openb3dcore_TEntity_CollisionX_i
	,_openb3d_openb3dcore_TEntity_CollisionY_i
	,_openb3d_openb3dcore_TEntity_CollisionZ_i
	,_openb3d_openb3dcore_TEntity_CollisionNX_i
	,_openb3d_openb3dcore_TEntity_CollisionNY_i
	,_openb3d_openb3dcore_TEntity_CollisionNZ_i
	,_openb3d_openb3dcore_TEntity_CollisionTime_i
	,_openb3d_openb3dcore_TEntity_CollisionEntity_i
	,_openb3d_openb3dcore_TEntity_CollisionSurface_i
	,_openb3d_openb3dcore_TEntity_CollisionTriangle_i
	,_openb3d_openb3dcore_TEntity_GetEntityType
	,_openb3d_openb3dcore_TEntity_MeshCullRadius_f
	,_openb3d_openb3dcore_TEntity_EntityScaleX_i
	,_openb3d_openb3dcore_TEntity_EntityScaleY_i
	,_openb3d_openb3dcore_TEntity_EntityScaleZ_i
	,_openb3d_openb3dcore_TEntity_Hidden
	,openb3d_openb3dcore_TEntity_CountAllChildren_i_TTEntityi
	,_openb3d_openb3dcore_TEntity_GetChildFromAll_iviTTEntity
	,_openb3d_openb3dcore_TEntity_ListParents_TTList
	,_openb3d_openb3dcore_TEntity_UpdateMat_b
	,_openb3d_openb3dcore_TEntity_AddParent_TTEntity
	,openb3d_openb3dcore_TEntity_UpdateChildren_i_TTEntity
	,_openb3d_openb3dcore_TEntity_EntityDistanceSquared_TTEntity
	,_openb3d_openb3dcore_TEntity_MQ_Update
	,_openb3d_openb3dcore_TEntity_MQ_GetInvMatrix_TTMatPtr
	,_openb3d_openb3dcore_TEntity_MQ_GetMatrix_TTMatPtr
	,_openb3d_openb3dcore_TEntity_MQ_GetScaleXYZ_vfvfvf
	,_openb3d_openb3dcore_TEntity_MQ_Turn_ffffi
	,openb3d_openb3dcore_TParticleEmitter_CreateObject_TTParticleEmitter_pb
	,openb3d_openb3dcore_TParticleEmitter_CreateParticleEmitter_TTParticleEmitter_TTEntityTTEntity
	,_openb3d_openb3dcore_TParticleEmitter_EmitterVector_ffffff
	,_openb3d_openb3dcore_TParticleEmitter_EmitterRate_f
	,_openb3d_openb3dcore_TParticleEmitter_EmitterParticleLife_iii
	,_openb3d_openb3dcore_TParticleEmitter_EmitterParticleFunction_F_pbi_i_
	,_openb3d_openb3dcore_TParticleEmitter_EmitterParticleSpeed_ff
	,_openb3d_openb3dcore_TParticleEmitter_EmitterVariance_f
	,_openb3d_openb3dcore_TParticleEmitter_EmitterParticleAlpha_fffi
	,_openb3d_openb3dcore_TParticleEmitter_EmitterParticleScale_ffffffi
	,_openb3d_openb3dcore_TParticleEmitter_EmitterParticleColor_fffffffffi
	,_openb3d_openb3dcore_TParticleEmitter_EmitterParticleRotate_fffi
};

void _openb3d_openb3dcore_TPostFX_New(struct openb3d_openb3dcore_TPostFX_obj* o) {
	bbObjectCtor((BBOBJECT)o);
	o->clas = &openb3d_openb3dcore_TPostFX;
	((struct openb3d_openb3dcore_TPostFX_obj*)bbNullObjectTest((BBObject*)o))->_openb3d_openb3dcore_tpostfx_instance = 0;
}
struct openb3d_openb3dcore_TPostFX_obj* openb3d_openb3dcore_TPostFX_CreateObject_TTPostFX_pb(BBBYTE* bbt_inst){
	struct openb3d_openb3dcore_TPostFX_obj* bbt_obj=(struct openb3d_openb3dcore_TPostFX_obj*)((struct openb3d_openb3dcore_TPostFX_obj*)&bbNullObject);
	struct BBDebugScope_2 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"CreateObject",
		{
			{
				BBDEBUGDECL_LOCAL,
				"inst",
				"*b",
				.var_address=&bbt_inst
			},
			{
				BBDEBUGDECL_LOCAL,
				"obj",
				":TPostFX",
				.var_address=&bbt_obj
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0xb95836f6245d1685, 18, 0};
	bbOnDebugEnterStm(&__stmt_0);
	if(bbt_inst==0){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0xb95836f6245d1685, 18, 0};
		bbOnDebugEnterStm(&__stmt_0);
		bbOnDebugLeaveScope();
		bbOnDebugLeaveScope();
		return (struct openb3d_openb3dcore_TPostFX_obj*)&bbNullObject;
	}
	struct BBDebugStm __stmt_1 = {0xb95836f6245d1685, 19, 0};
	bbOnDebugEnterStm(&__stmt_1);
	bbt_obj=(struct openb3d_openb3dcore_TPostFX_obj*)(struct openb3d_openb3dcore_TPostFX_obj*)bbObjectAtomicNew((BBClass *)&openb3d_openb3dcore_TPostFX);
	struct BBDebugStm __stmt_2 = {0xb95836f6245d1685, 21, 0};
	bbOnDebugEnterStm(&__stmt_2);
	((struct brl_map_ptrmap_TPtrMap_obj*)bbNullObjectTest((BBObject*)openb3d_openb3dcore_TPostFX_postfx_map))->clas->m_Insert_pbTObject((struct brl_map_ptrmap_TPtrMap_obj*)openb3d_openb3dcore_TPostFX_postfx_map,bbt_inst,(BBOBJECT)bbt_obj);
	struct BBDebugStm __stmt_3 = {0xb95836f6245d1685, 25, 0};
	bbOnDebugEnterStm(&__stmt_3);
	((struct openb3d_openb3dcore_TPostFX_obj*)bbNullObjectTest((BBObject*)bbt_obj))->_openb3d_openb3dcore_tpostfx_instance =bbt_inst;
	struct BBDebugStm __stmt_4 = {0xb95836f6245d1685, 26, 0};
	bbOnDebugEnterStm(&__stmt_4);
	bbOnDebugLeaveScope();
	return (struct openb3d_openb3dcore_TPostFX_obj*)bbt_obj;
}
BBINT openb3d_openb3dcore_TPostFX_FreeObject_i_pb(BBBYTE* bbt_inst){
	struct BBDebugScope_1 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"FreeObject",
		{
			{
				BBDEBUGDECL_LOCAL,
				"inst",
				"*b",
				.var_address=&bbt_inst
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0xb95836f6245d1685, 33, 0};
	bbOnDebugEnterStm(&__stmt_0);
	((struct brl_map_ptrmap_TPtrMap_obj*)bbNullObjectTest((BBObject*)openb3d_openb3dcore_TPostFX_postfx_map))->clas->m_Remove_pb((struct brl_map_ptrmap_TPtrMap_obj*)openb3d_openb3dcore_TPostFX_postfx_map,bbt_inst);
	bbOnDebugLeaveScope();
	return 0;
}
struct openb3d_openb3dcore_TPostFX_obj* openb3d_openb3dcore_TPostFX_GetObject_TTPostFX_pb(BBBYTE* bbt_inst){
	struct BBDebugScope_1 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"GetObject",
		{
			{
				BBDEBUGDECL_LOCAL,
				"inst",
				"*b",
				.var_address=&bbt_inst
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0xb95836f6245d1685, 43, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbOnDebugLeaveScope();
	return (struct openb3d_openb3dcore_TPostFX_obj*)((struct openb3d_openb3dcore_TPostFX_obj*)bbObjectDowncast((BBOBJECT)((struct brl_map_ptrmap_TPtrMap_obj*)bbNullObjectTest((BBObject*)openb3d_openb3dcore_TPostFX_postfx_map))->clas->m_ValueForKey_pb((struct brl_map_ptrmap_TPtrMap_obj*)openb3d_openb3dcore_TPostFX_postfx_map,bbt_inst),(BBClass*)&openb3d_openb3dcore_TPostFX));
}
BBBYTE* openb3d_openb3dcore_TPostFX_GetInstance_pb_TTPostFX(struct openb3d_openb3dcore_TPostFX_obj* bbt_obj){
	struct BBDebugScope_1 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"GetInstance",
		{
			{
				BBDEBUGDECL_LOCAL,
				"obj",
				":TPostFX",
				.var_address=&bbt_obj
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0xb95836f6245d1685, 52, 0};
	bbOnDebugEnterStm(&__stmt_0);
	if(((BBOBJECT)bbt_obj)==&bbNullObject){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0xb95836f6245d1685, 52, 0};
		bbOnDebugEnterStm(&__stmt_0);
		bbOnDebugLeaveScope();
		bbOnDebugLeaveScope();
		return 0;
	}
	struct BBDebugStm __stmt_1 = {0xb95836f6245d1685, 53, 0};
	bbOnDebugEnterStm(&__stmt_1);
	bbOnDebugLeaveScope();
	return ((struct openb3d_openb3dcore_TPostFX_obj*)bbNullObjectTest((BBObject*)bbt_obj))->_openb3d_openb3dcore_tpostfx_instance ;
}
struct openb3d_openb3dcore_TPostFX_obj* openb3d_openb3dcore_TPostFX_CreatePostFX_TTPostFX_TTCamerai(struct openb3d_openb3dcore_TCamera_obj* bbt_cam,BBINT bbt_passes){
	BBBYTE* bbt_inst=0;
	struct BBDebugScope_3 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"CreatePostFX",
		{
			{
				BBDEBUGDECL_LOCAL,
				"cam",
				":TCamera",
				.var_address=&bbt_cam
			},
			{
				BBDEBUGDECL_LOCAL,
				"passes",
				"i",
				.var_address=&bbt_passes
			},
			{
				BBDEBUGDECL_LOCAL,
				"inst",
				"*b",
				.var_address=&bbt_inst
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0xb95836f6245d1685, 61, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbt_inst=CreatePostFX_(openb3d_openb3dcore_TEntity_GetInstance_pb_TTEntity((struct openb3d_openb3dcore_TEntity_obj*)((struct openb3d_openb3dcore_TEntity_obj*)bbObjectDowncast((BBOBJECT)bbt_cam,(BBClass*)&openb3d_openb3dcore_TEntity))),bbt_passes);
	struct BBDebugStm __stmt_1 = {0xb95836f6245d1685, 62, 0};
	bbOnDebugEnterStm(&__stmt_1);
	bbOnDebugLeaveScope();
	return (struct openb3d_openb3dcore_TPostFX_obj*)openb3d_openb3dcore_TPostFX_CreateObject_TTPostFX_pb(bbt_inst);
}
BBINT _openb3d_openb3dcore_TPostFX_AddRenderTarget_iiiif(struct openb3d_openb3dcore_TPostFX_obj* o,BBINT bbt_pass_no,BBINT bbt_numColBufs,BBINT bbt_depth,BBINT bbt_format,BBFLOAT bbt_scale){
	((struct openb3d_openb3dcore_TPostFX_obj*)bbNullObjectTest((BBObject*)o));
	struct BBDebugScope_6 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"AddRenderTarget",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TPostFX",
				.var_address=&o
			},
			{
				BBDEBUGDECL_LOCAL,
				"pass_no",
				"i",
				.var_address=&bbt_pass_no
			},
			{
				BBDEBUGDECL_LOCAL,
				"numColBufs",
				"i",
				.var_address=&bbt_numColBufs
			},
			{
				BBDEBUGDECL_LOCAL,
				"depth",
				"i",
				.var_address=&bbt_depth
			},
			{
				BBDEBUGDECL_LOCAL,
				"format",
				"i",
				.var_address=&bbt_format
			},
			{
				BBDEBUGDECL_LOCAL,
				"scale",
				"f",
				.var_address=&bbt_scale
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0xb95836f6245d1685, 68, 0};
	bbOnDebugEnterStm(&__stmt_0);
	AddRenderTarget_(o->clas->f_GetInstance_pb_TTPostFX((struct openb3d_openb3dcore_TPostFX_obj*)o),bbt_pass_no,bbt_numColBufs,bbt_depth,bbt_format,bbt_scale);
	bbOnDebugLeaveScope();
	return 0;
}
BBINT _openb3d_openb3dcore_TPostFX_PostFXShader_iTTShader(struct openb3d_openb3dcore_TPostFX_obj* o,BBINT bbt_pass_no,struct openb3d_openb3dcore_TShader_obj* bbt_shader){
	((struct openb3d_openb3dcore_TPostFX_obj*)bbNullObjectTest((BBObject*)o));
	struct BBDebugScope_3 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"PostFXShader",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TPostFX",
				.var_address=&o
			},
			{
				BBDEBUGDECL_LOCAL,
				"pass_no",
				"i",
				.var_address=&bbt_pass_no
			},
			{
				BBDEBUGDECL_LOCAL,
				"shader",
				":TShader",
				.var_address=&bbt_shader
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0xb95836f6245d1685, 74, 0};
	bbOnDebugEnterStm(&__stmt_0);
	PostFXShader_(o->clas->f_GetInstance_pb_TTPostFX((struct openb3d_openb3dcore_TPostFX_obj*)o),bbt_pass_no,openb3d_openb3dcore_TShader_GetInstance_pb_TTShader((struct openb3d_openb3dcore_TShader_obj*)bbt_shader));
	bbOnDebugLeaveScope();
	return 0;
}
BBINT _openb3d_openb3dcore_TPostFX_PostFXShaderPass_iSi(struct openb3d_openb3dcore_TPostFX_obj* o,BBINT bbt_pass_no,BBSTRING bbt_name,BBINT bbt_v){
	((struct openb3d_openb3dcore_TPostFX_obj*)bbNullObjectTest((BBObject*)o));
	BBBYTE* bbt_cString=0;
	struct BBDebugScope_5 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"PostFXShaderPass",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TPostFX",
				.var_address=&o
			},
			{
				BBDEBUGDECL_LOCAL,
				"pass_no",
				"i",
				.var_address=&bbt_pass_no
			},
			{
				BBDEBUGDECL_LOCAL,
				"name",
				"$",
				.var_address=&bbt_name
			},
			{
				BBDEBUGDECL_LOCAL,
				"v",
				"i",
				.var_address=&bbt_v
			},
			{
				BBDEBUGDECL_LOCAL,
				"cString",
				"*b",
				.var_address=&bbt_cString
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0xb95836f6245d1685, 80, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbt_cString=bbStringToCString((BBSTRING)bbt_name);
	struct BBDebugStm __stmt_1 = {0xb95836f6245d1685, 81, 0};
	bbOnDebugEnterStm(&__stmt_1);
	PostFXShaderPass_(o->clas->f_GetInstance_pb_TTPostFX((struct openb3d_openb3dcore_TPostFX_obj*)o),bbt_pass_no,bbt_cString,bbt_v);
	struct BBDebugStm __stmt_2 = {0xb95836f6245d1685, 82, 0};
	bbOnDebugEnterStm(&__stmt_2);
	bbMemFree((void*)bbt_cString);
	bbOnDebugLeaveScope();
	return 0;
}
BBINT _openb3d_openb3dcore_TPostFX_PostFXBuffer_iiii(struct openb3d_openb3dcore_TPostFX_obj* o,BBINT bbt_pass_no,BBINT bbt_source_pass,BBINT bbt_index,BBINT bbt_slot){
	((struct openb3d_openb3dcore_TPostFX_obj*)bbNullObjectTest((BBObject*)o));
	struct BBDebugScope_5 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"PostFXBuffer",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TPostFX",
				.var_address=&o
			},
			{
				BBDEBUGDECL_LOCAL,
				"pass_no",
				"i",
				.var_address=&bbt_pass_no
			},
			{
				BBDEBUGDECL_LOCAL,
				"source_pass",
				"i",
				.var_address=&bbt_source_pass
			},
			{
				BBDEBUGDECL_LOCAL,
				"index",
				"i",
				.var_address=&bbt_index
			},
			{
				BBDEBUGDECL_LOCAL,
				"slot",
				"i",
				.var_address=&bbt_slot
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0xb95836f6245d1685, 88, 0};
	bbOnDebugEnterStm(&__stmt_0);
	PostFXBuffer_(o->clas->f_GetInstance_pb_TTPostFX((struct openb3d_openb3dcore_TPostFX_obj*)o),bbt_pass_no,bbt_source_pass,bbt_index,bbt_slot);
	bbOnDebugLeaveScope();
	return 0;
}
BBINT _openb3d_openb3dcore_TPostFX_PostFXTexture_iTTTextureii(struct openb3d_openb3dcore_TPostFX_obj* o,BBINT bbt_pass_no,struct openb3d_openb3dcore_TTexture_obj* bbt_tex,BBINT bbt_slot,BBINT bbt_frame){
	((struct openb3d_openb3dcore_TPostFX_obj*)bbNullObjectTest((BBObject*)o));
	struct BBDebugScope_5 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"PostFXTexture",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TPostFX",
				.var_address=&o
			},
			{
				BBDEBUGDECL_LOCAL,
				"pass_no",
				"i",
				.var_address=&bbt_pass_no
			},
			{
				BBDEBUGDECL_LOCAL,
				"tex",
				":TTexture",
				.var_address=&bbt_tex
			},
			{
				BBDEBUGDECL_LOCAL,
				"slot",
				"i",
				.var_address=&bbt_slot
			},
			{
				BBDEBUGDECL_LOCAL,
				"frame",
				"i",
				.var_address=&bbt_frame
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0xb95836f6245d1685, 94, 0};
	bbOnDebugEnterStm(&__stmt_0);
	PostFXTexture_(o->clas->f_GetInstance_pb_TTPostFX((struct openb3d_openb3dcore_TPostFX_obj*)o),bbt_pass_no,openb3d_openb3dcore_TTexture_GetInstance_pb_TTTexture((struct openb3d_openb3dcore_TTexture_obj*)bbt_tex),bbt_slot,bbt_frame);
	bbOnDebugLeaveScope();
	return 0;
}
BBINT _openb3d_openb3dcore_TPostFX_PostFXFunction_iF_i_(struct openb3d_openb3dcore_TPostFX_obj* o,BBINT bbt_pass_no,BBINT(* bbt_PassFunction)()){
	((struct openb3d_openb3dcore_TPostFX_obj*)bbNullObjectTest((BBObject*)o));
	struct BBDebugScope_3 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"PostFXFunction",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TPostFX",
				.var_address=&o
			},
			{
				BBDEBUGDECL_LOCAL,
				"pass_no",
				"i",
				.var_address=&bbt_pass_no
			},
			{
				BBDEBUGDECL_LOCAL,
				"PassFunction",
				"()i",
				.var_address=&bbt_PassFunction
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0xb95836f6245d1685, 100, 0};
	bbOnDebugEnterStm(&__stmt_0);
	PostFXFunction_(o->clas->f_GetInstance_pb_TTPostFX((struct openb3d_openb3dcore_TPostFX_obj*)o),bbt_pass_no,bbt_PassFunction);
	bbOnDebugLeaveScope();
	return 0;
}
struct brl_map_ptrmap_TPtrMap_obj* openb3d_openb3dcore_TPostFX_postfx_map;
struct BBDebugScope_14 openb3d_openb3dcore_TPostFX_scope ={
	BBDEBUGSCOPE_USERTYPE,
	"TPostFX",
	{
		{
			BBDEBUGDECL_FIELD,
			"instance",
			"*b",
			.field_offset=offsetof(struct openb3d_openb3dcore_TPostFX_obj,_openb3d_openb3dcore_tpostfx_instance)
		},
		{
			BBDEBUGDECL_GLOBAL,
			"postfx_map",
			":TPtrMap",
			.var_address=(void*)&openb3d_openb3dcore_TPostFX_postfx_map
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"New",
			"()i",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_TPostFX_New
		},
		{
			BBDEBUGDECL_TYPEFUNCTION,
			"CreateObject",
			"(*b):TPostFX",
			.func_ptr=(BBFuncPtr)&openb3d_openb3dcore_TPostFX_CreateObject_TTPostFX_pb
		},
		{
			BBDEBUGDECL_TYPEFUNCTION,
			"FreeObject",
			"(*b)i",
			.func_ptr=(BBFuncPtr)&openb3d_openb3dcore_TPostFX_FreeObject_i_pb
		},
		{
			BBDEBUGDECL_TYPEFUNCTION,
			"GetObject",
			"(*b):TPostFX",
			.func_ptr=(BBFuncPtr)&openb3d_openb3dcore_TPostFX_GetObject_TTPostFX_pb
		},
		{
			BBDEBUGDECL_TYPEFUNCTION,
			"GetInstance",
			"(:TPostFX)*b",
			.func_ptr=(BBFuncPtr)&openb3d_openb3dcore_TPostFX_GetInstance_pb_TTPostFX
		},
		{
			BBDEBUGDECL_TYPEFUNCTION,
			"CreatePostFX",
			"(:TCamera,i):TPostFX",
			.func_ptr=(BBFuncPtr)&openb3d_openb3dcore_TPostFX_CreatePostFX_TTPostFX_TTCamerai
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"AddRenderTarget",
			"(i,i,i,i,f)i",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_TPostFX_AddRenderTarget_iiiif
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"PostFXShader",
			"(i,:TShader)i",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_TPostFX_PostFXShader_iTTShader
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"PostFXShaderPass",
			"(i,$,i)i",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_TPostFX_PostFXShaderPass_iSi
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"PostFXBuffer",
			"(i,i,i,i)i",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_TPostFX_PostFXBuffer_iiii
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"PostFXTexture",
			"(i,:TTexture,i,i)i",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_TPostFX_PostFXTexture_iTTTextureii
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"PostFXFunction",
			"(i,()i)i",
			.func_ptr=(BBFuncPtr)&_openb3d_openb3dcore_TPostFX_PostFXFunction_iF_i_
		},
		{
			BBDEBUGDECL_END
		}
	}
};
struct BBClass_openb3d_openb3dcore_TPostFX openb3d_openb3dcore_TPostFX={
	&bbObjectClass,
	bbObjectFree,
	(BBDebugScope*)&openb3d_openb3dcore_TPostFX_scope,
	sizeof(struct openb3d_openb3dcore_TPostFX_obj),
	(void (*)(BBOBJECT))_openb3d_openb3dcore_TPostFX_New,
	bbObjectDtor,
	bbObjectToString,
	bbObjectCompare,
	bbObjectSendMessage,
	0,
	0,
	sizeof(BBBYTE*)
	,0
	,offsetof(struct openb3d_openb3dcore_TPostFX_obj,_openb3d_openb3dcore_tpostfx_instance)
	,openb3d_openb3dcore_TPostFX_CreateObject_TTPostFX_pb
	,openb3d_openb3dcore_TPostFX_FreeObject_i_pb
	,openb3d_openb3dcore_TPostFX_GetObject_TTPostFX_pb
	,openb3d_openb3dcore_TPostFX_GetInstance_pb_TTPostFX
	,openb3d_openb3dcore_TPostFX_CreatePostFX_TTPostFX_TTCamerai
	,_openb3d_openb3dcore_TPostFX_AddRenderTarget_iiiif
	,_openb3d_openb3dcore_TPostFX_PostFXShader_iTTShader
	,_openb3d_openb3dcore_TPostFX_PostFXShaderPass_iSi
	,_openb3d_openb3dcore_TPostFX_PostFXBuffer_iiii
	,_openb3d_openb3dcore_TPostFX_PostFXTexture_iTTTextureii
	,_openb3d_openb3dcore_TPostFX_PostFXFunction_iF_i_
};

BBINT openb3d_openb3dcore_BeginMax2D(BBINT bbt_version){
	struct BBDebugScope_1 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"BeginMax2D",
		{
			{
				BBDEBUGDECL_LOCAL,
				"version",
				"i",
				.var_address=&bbt_version
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0xf37902d63da5e078, 51, 0};
	bbOnDebugEnterStm(&__stmt_0);
	openb3d_openb3dcore_TBlitz2D_BeginMax2D_i_i(bbt_version);
	bbOnDebugLeaveScope();
	return 0;
}
BBINT openb3d_openb3dcore_EndMax2D(BBINT bbt_version){
	struct BBDebugScope_1 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"EndMax2D",
		{
			{
				BBDEBUGDECL_LOCAL,
				"version",
				"i",
				.var_address=&bbt_version
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0xf37902d63da5e078, 58, 0};
	bbOnDebugEnterStm(&__stmt_0);
	openb3d_openb3dcore_TBlitz2D_EndMax2D_i_i(bbt_version);
	bbOnDebugLeaveScope();
	return 0;
}
BBINT openb3d_openb3dcore_CopyList(struct brl_linkedlist_TList_obj* bbt_list){
	struct BBDebugScope_1 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"CopyList",
		{
			{
				BBDEBUGDECL_LOCAL,
				"list",
				":TList",
				.var_address=&bbt_list
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0xf37902d63da5e078, 66, 0};
	bbOnDebugEnterStm(&__stmt_0);
	openb3d_openb3dcore_TGlobal3D_CopyList_i_TTList((struct brl_linkedlist_TList_obj*)bbt_list);
	bbOnDebugLeaveScope();
	return 0;
}
BBINT openb3d_openb3dcore_CountMipmaps(struct openb3d_openb3dcore_TTexture_obj* bbt_tex){
	struct BBDebugScope_1 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"CountMipmaps",
		{
			{
				BBDEBUGDECL_LOCAL,
				"tex",
				":TTexture",
				.var_address=&bbt_tex
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x4af243160143e7fa, 93, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbOnDebugLeaveScope();
	return ((struct openb3d_openb3dcore_TTexture_obj*)bbNullObjectTest((BBObject*)bbt_tex))->clas->m_CountMipmaps((struct openb3d_openb3dcore_TTexture_obj*)bbt_tex);
}
BBINT openb3d_openb3dcore_AddSurface(struct openb3d_openb3dcore_TMesh_obj* bbt_mesh,struct openb3d_openb3dcore_TSurface_obj* bbt_surf,BBINT bbt_anim_surf){
	struct BBDebugScope_3 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"AddSurface",
		{
			{
				BBDEBUGDECL_LOCAL,
				"mesh",
				":TMesh",
				.var_address=&bbt_mesh
			},
			{
				BBDEBUGDECL_LOCAL,
				"surf",
				":TSurface",
				.var_address=&bbt_surf
			},
			{
				BBDEBUGDECL_LOCAL,
				"anim_surf",
				"i",
				.var_address=&bbt_anim_surf
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0xf37902d63da5e078, 81, 0};
	bbOnDebugEnterStm(&__stmt_0);
	if(bbt_anim_surf==0){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0xf37902d63da5e078, 82, 0};
		bbOnDebugEnterStm(&__stmt_0);
		((struct openb3d_openb3dcore_TMesh_obj*)bbNullObjectTest((BBObject*)bbt_mesh))->clas->m_MeshListAdd_TTListTObject((struct openb3d_openb3dcore_TMesh_obj*)bbt_mesh,(struct brl_linkedlist_TList_obj*)((struct openb3d_openb3dcore_TMesh_obj*)bbNullObjectTest((BBObject*)bbt_mesh))->_openb3d_openb3dcore_tmesh_surf_list ,(BBOBJECT)bbt_surf);
		bbOnDebugLeaveScope();
	}else{
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0xf37902d63da5e078, 84, 0};
		bbOnDebugEnterStm(&__stmt_0);
		((struct openb3d_openb3dcore_TMesh_obj*)bbNullObjectTest((BBObject*)bbt_mesh))->clas->m_MeshListAdd_TTListTObject((struct openb3d_openb3dcore_TMesh_obj*)bbt_mesh,(struct brl_linkedlist_TList_obj*)((struct openb3d_openb3dcore_TMesh_obj*)bbNullObjectTest((BBObject*)bbt_mesh))->_openb3d_openb3dcore_tmesh_anim_surf_list ,(BBOBJECT)bbt_surf);
		bbOnDebugLeaveScope();
	}
	bbOnDebugLeaveScope();
	return 0;
}
BBINT openb3d_openb3dcore_BoxFromPoints(BBFLOAT bbt_px1,BBFLOAT bbt_py1,BBFLOAT bbt_pz1,BBFLOAT bbt_px2,BBFLOAT bbt_py2,BBFLOAT bbt_pz2,BBFLOAT* bbt_bx1,BBFLOAT* bbt_by1,BBFLOAT* bbt_bz1,BBFLOAT* bbt_bx2,BBFLOAT* bbt_by2,BBFLOAT* bbt_bz2){
	struct BBDebugScope_12 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"BoxFromPoints",
		{
			{
				BBDEBUGDECL_LOCAL,
				"px1",
				"f",
				.var_address=&bbt_px1
			},
			{
				BBDEBUGDECL_LOCAL,
				"py1",
				"f",
				.var_address=&bbt_py1
			},
			{
				BBDEBUGDECL_LOCAL,
				"pz1",
				"f",
				.var_address=&bbt_pz1
			},
			{
				BBDEBUGDECL_LOCAL,
				"px2",
				"f",
				.var_address=&bbt_px2
			},
			{
				BBDEBUGDECL_LOCAL,
				"py2",
				"f",
				.var_address=&bbt_py2
			},
			{
				BBDEBUGDECL_LOCAL,
				"pz2",
				"f",
				.var_address=&bbt_pz2
			},
			{
				BBDEBUGDECL_VARPARAM,
				"bx1",
				"f",
				.var_address=&bbt_bx1
			},
			{
				BBDEBUGDECL_VARPARAM,
				"by1",
				"f",
				.var_address=&bbt_by1
			},
			{
				BBDEBUGDECL_VARPARAM,
				"bz1",
				"f",
				.var_address=&bbt_bz1
			},
			{
				BBDEBUGDECL_VARPARAM,
				"bx2",
				"f",
				.var_address=&bbt_bx2
			},
			{
				BBDEBUGDECL_VARPARAM,
				"by2",
				"f",
				.var_address=&bbt_by2
			},
			{
				BBDEBUGDECL_VARPARAM,
				"bz2",
				"f",
				.var_address=&bbt_bz2
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0xd84337d0cb3b0ee4, 9, 0};
	bbOnDebugEnterStm(&__stmt_0);
	if(bbt_px1<bbt_px2){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0xd84337d0cb3b0ee4, 10, 0};
		bbOnDebugEnterStm(&__stmt_0);
		*bbt_bx1=bbt_px1;
		struct BBDebugStm __stmt_1 = {0xd84337d0cb3b0ee4, 11, 0};
		bbOnDebugEnterStm(&__stmt_1);
		*bbt_bx2=bbt_px2;
		bbOnDebugLeaveScope();
	}else{
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0xd84337d0cb3b0ee4, 13, 0};
		bbOnDebugEnterStm(&__stmt_0);
		*bbt_bx1=bbt_px2;
		struct BBDebugStm __stmt_1 = {0xd84337d0cb3b0ee4, 14, 0};
		bbOnDebugEnterStm(&__stmt_1);
		*bbt_bx2=bbt_px1;
		bbOnDebugLeaveScope();
	}
	struct BBDebugStm __stmt_1 = {0xd84337d0cb3b0ee4, 16, 0};
	bbOnDebugEnterStm(&__stmt_1);
	if(bbt_py1<bbt_py2){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0xd84337d0cb3b0ee4, 17, 0};
		bbOnDebugEnterStm(&__stmt_0);
		*bbt_by1=bbt_py1;
		struct BBDebugStm __stmt_1 = {0xd84337d0cb3b0ee4, 18, 0};
		bbOnDebugEnterStm(&__stmt_1);
		*bbt_by2=bbt_py2;
		bbOnDebugLeaveScope();
	}else{
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0xd84337d0cb3b0ee4, 20, 0};
		bbOnDebugEnterStm(&__stmt_0);
		*bbt_by1=bbt_py2;
		struct BBDebugStm __stmt_1 = {0xd84337d0cb3b0ee4, 21, 0};
		bbOnDebugEnterStm(&__stmt_1);
		*bbt_by2=bbt_py1;
		bbOnDebugLeaveScope();
	}
	struct BBDebugStm __stmt_2 = {0xd84337d0cb3b0ee4, 23, 0};
	bbOnDebugEnterStm(&__stmt_2);
	if(bbt_pz1<bbt_pz2){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0xd84337d0cb3b0ee4, 24, 0};
		bbOnDebugEnterStm(&__stmt_0);
		*bbt_bz1=bbt_pz1;
		struct BBDebugStm __stmt_1 = {0xd84337d0cb3b0ee4, 25, 0};
		bbOnDebugEnterStm(&__stmt_1);
		*bbt_bz2=bbt_pz2;
		bbOnDebugLeaveScope();
	}else{
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0xd84337d0cb3b0ee4, 27, 0};
		bbOnDebugEnterStm(&__stmt_0);
		*bbt_bz1=bbt_pz2;
		struct BBDebugStm __stmt_1 = {0xd84337d0cb3b0ee4, 28, 0};
		bbOnDebugEnterStm(&__stmt_1);
		*bbt_bz2=bbt_pz1;
		bbOnDebugLeaveScope();
	}
	bbOnDebugLeaveScope();
	return 0;
}
BBINT openb3d_openb3dcore_BoxFromTri(BBFLOAT bbt_tx1,BBFLOAT bbt_ty1,BBFLOAT bbt_tz1,BBFLOAT bbt_tx2,BBFLOAT bbt_ty2,BBFLOAT bbt_tz2,BBFLOAT bbt_tx3,BBFLOAT bbt_ty3,BBFLOAT bbt_tz3,BBFLOAT* bbt_bx1,BBFLOAT* bbt_by1,BBFLOAT* bbt_bz1,BBFLOAT* bbt_bx2,BBFLOAT* bbt_by2,BBFLOAT* bbt_bz2){
	struct BBDebugScope_15 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"BoxFromTri",
		{
			{
				BBDEBUGDECL_LOCAL,
				"tx1",
				"f",
				.var_address=&bbt_tx1
			},
			{
				BBDEBUGDECL_LOCAL,
				"ty1",
				"f",
				.var_address=&bbt_ty1
			},
			{
				BBDEBUGDECL_LOCAL,
				"tz1",
				"f",
				.var_address=&bbt_tz1
			},
			{
				BBDEBUGDECL_LOCAL,
				"tx2",
				"f",
				.var_address=&bbt_tx2
			},
			{
				BBDEBUGDECL_LOCAL,
				"ty2",
				"f",
				.var_address=&bbt_ty2
			},
			{
				BBDEBUGDECL_LOCAL,
				"tz2",
				"f",
				.var_address=&bbt_tz2
			},
			{
				BBDEBUGDECL_LOCAL,
				"tx3",
				"f",
				.var_address=&bbt_tx3
			},
			{
				BBDEBUGDECL_LOCAL,
				"ty3",
				"f",
				.var_address=&bbt_ty3
			},
			{
				BBDEBUGDECL_LOCAL,
				"tz3",
				"f",
				.var_address=&bbt_tz3
			},
			{
				BBDEBUGDECL_VARPARAM,
				"bx1",
				"f",
				.var_address=&bbt_bx1
			},
			{
				BBDEBUGDECL_VARPARAM,
				"by1",
				"f",
				.var_address=&bbt_by1
			},
			{
				BBDEBUGDECL_VARPARAM,
				"bz1",
				"f",
				.var_address=&bbt_bz1
			},
			{
				BBDEBUGDECL_VARPARAM,
				"bx2",
				"f",
				.var_address=&bbt_bx2
			},
			{
				BBDEBUGDECL_VARPARAM,
				"by2",
				"f",
				.var_address=&bbt_by2
			},
			{
				BBDEBUGDECL_VARPARAM,
				"bz2",
				"f",
				.var_address=&bbt_bz2
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0xd84337d0cb3b0ee4, 41, 0};
	bbOnDebugEnterStm(&__stmt_0);
	*bbt_bx1=1000000.00f;
	struct BBDebugStm __stmt_1 = {0xd84337d0cb3b0ee4, 41, 0};
	bbOnDebugEnterStm(&__stmt_1);
	*bbt_by1=1000000.00f;
	struct BBDebugStm __stmt_2 = {0xd84337d0cb3b0ee4, 41, 0};
	bbOnDebugEnterStm(&__stmt_2);
	*bbt_bz1=1000000.00f;
	struct BBDebugStm __stmt_3 = {0xd84337d0cb3b0ee4, 42, 0};
	bbOnDebugEnterStm(&__stmt_3);
	*bbt_bx2=-1000000.00f;
	struct BBDebugStm __stmt_4 = {0xd84337d0cb3b0ee4, 42, 0};
	bbOnDebugEnterStm(&__stmt_4);
	*bbt_by2=-1000000.00f;
	struct BBDebugStm __stmt_5 = {0xd84337d0cb3b0ee4, 42, 0};
	bbOnDebugEnterStm(&__stmt_5);
	*bbt_bz2=-1000000.00f;
	struct BBDebugStm __stmt_6 = {0xd84337d0cb3b0ee4, 44, 0};
	bbOnDebugEnterStm(&__stmt_6);
	if(bbt_tx1<*bbt_bx1){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0xd84337d0cb3b0ee4, 44, 0};
		bbOnDebugEnterStm(&__stmt_0);
		*bbt_bx1=bbt_tx1;
		bbOnDebugLeaveScope();
	}
	struct BBDebugStm __stmt_7 = {0xd84337d0cb3b0ee4, 45, 0};
	bbOnDebugEnterStm(&__stmt_7);
	if(bbt_ty1<*bbt_by1){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0xd84337d0cb3b0ee4, 45, 0};
		bbOnDebugEnterStm(&__stmt_0);
		*bbt_by1=bbt_ty1;
		bbOnDebugLeaveScope();
	}
	struct BBDebugStm __stmt_8 = {0xd84337d0cb3b0ee4, 46, 0};
	bbOnDebugEnterStm(&__stmt_8);
	if(bbt_tz1<*bbt_bz1){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0xd84337d0cb3b0ee4, 46, 0};
		bbOnDebugEnterStm(&__stmt_0);
		*bbt_bz1=bbt_tz1;
		bbOnDebugLeaveScope();
	}
	struct BBDebugStm __stmt_9 = {0xd84337d0cb3b0ee4, 48, 0};
	bbOnDebugEnterStm(&__stmt_9);
	if(bbt_tx2<*bbt_bx1){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0xd84337d0cb3b0ee4, 48, 0};
		bbOnDebugEnterStm(&__stmt_0);
		*bbt_bx1=bbt_tx2;
		bbOnDebugLeaveScope();
	}
	struct BBDebugStm __stmt_10 = {0xd84337d0cb3b0ee4, 49, 0};
	bbOnDebugEnterStm(&__stmt_10);
	if(bbt_ty2<*bbt_by1){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0xd84337d0cb3b0ee4, 49, 0};
		bbOnDebugEnterStm(&__stmt_0);
		*bbt_by1=bbt_ty2;
		bbOnDebugLeaveScope();
	}
	struct BBDebugStm __stmt_11 = {0xd84337d0cb3b0ee4, 50, 0};
	bbOnDebugEnterStm(&__stmt_11);
	if(bbt_tz2<*bbt_bz1){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0xd84337d0cb3b0ee4, 50, 0};
		bbOnDebugEnterStm(&__stmt_0);
		*bbt_bz1=bbt_tz2;
		bbOnDebugLeaveScope();
	}
	struct BBDebugStm __stmt_12 = {0xd84337d0cb3b0ee4, 52, 0};
	bbOnDebugEnterStm(&__stmt_12);
	if(bbt_tx3<*bbt_bx1){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0xd84337d0cb3b0ee4, 52, 0};
		bbOnDebugEnterStm(&__stmt_0);
		*bbt_bx1=bbt_tx3;
		bbOnDebugLeaveScope();
	}
	struct BBDebugStm __stmt_13 = {0xd84337d0cb3b0ee4, 53, 0};
	bbOnDebugEnterStm(&__stmt_13);
	if(bbt_ty3<*bbt_by1){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0xd84337d0cb3b0ee4, 53, 0};
		bbOnDebugEnterStm(&__stmt_0);
		*bbt_by1=bbt_ty3;
		bbOnDebugLeaveScope();
	}
	struct BBDebugStm __stmt_14 = {0xd84337d0cb3b0ee4, 54, 0};
	bbOnDebugEnterStm(&__stmt_14);
	if(bbt_tz3<*bbt_bz1){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0xd84337d0cb3b0ee4, 54, 0};
		bbOnDebugEnterStm(&__stmt_0);
		*bbt_bz1=bbt_tz3;
		bbOnDebugLeaveScope();
	}
	struct BBDebugStm __stmt_15 = {0xd84337d0cb3b0ee4, 56, 0};
	bbOnDebugEnterStm(&__stmt_15);
	if(bbt_tx1>*bbt_bx2){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0xd84337d0cb3b0ee4, 56, 0};
		bbOnDebugEnterStm(&__stmt_0);
		*bbt_bx2=bbt_tx1;
		bbOnDebugLeaveScope();
	}
	struct BBDebugStm __stmt_16 = {0xd84337d0cb3b0ee4, 57, 0};
	bbOnDebugEnterStm(&__stmt_16);
	if(bbt_ty1>*bbt_by2){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0xd84337d0cb3b0ee4, 57, 0};
		bbOnDebugEnterStm(&__stmt_0);
		*bbt_by2=bbt_ty1;
		bbOnDebugLeaveScope();
	}
	struct BBDebugStm __stmt_17 = {0xd84337d0cb3b0ee4, 58, 0};
	bbOnDebugEnterStm(&__stmt_17);
	if(bbt_tz1>*bbt_bz2){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0xd84337d0cb3b0ee4, 58, 0};
		bbOnDebugEnterStm(&__stmt_0);
		*bbt_bz2=bbt_tz1;
		bbOnDebugLeaveScope();
	}
	struct BBDebugStm __stmt_18 = {0xd84337d0cb3b0ee4, 60, 0};
	bbOnDebugEnterStm(&__stmt_18);
	if(bbt_tx2>*bbt_bx2){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0xd84337d0cb3b0ee4, 60, 0};
		bbOnDebugEnterStm(&__stmt_0);
		*bbt_bx2=bbt_tx2;
		bbOnDebugLeaveScope();
	}
	struct BBDebugStm __stmt_19 = {0xd84337d0cb3b0ee4, 61, 0};
	bbOnDebugEnterStm(&__stmt_19);
	if(bbt_ty2>*bbt_by2){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0xd84337d0cb3b0ee4, 61, 0};
		bbOnDebugEnterStm(&__stmt_0);
		*bbt_by2=bbt_ty2;
		bbOnDebugLeaveScope();
	}
	struct BBDebugStm __stmt_20 = {0xd84337d0cb3b0ee4, 62, 0};
	bbOnDebugEnterStm(&__stmt_20);
	if(bbt_tz2>*bbt_bz2){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0xd84337d0cb3b0ee4, 62, 0};
		bbOnDebugEnterStm(&__stmt_0);
		*bbt_bz2=bbt_tz2;
		bbOnDebugLeaveScope();
	}
	struct BBDebugStm __stmt_21 = {0xd84337d0cb3b0ee4, 64, 0};
	bbOnDebugEnterStm(&__stmt_21);
	if(bbt_tx3>*bbt_bx2){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0xd84337d0cb3b0ee4, 64, 0};
		bbOnDebugEnterStm(&__stmt_0);
		*bbt_bx2=bbt_tx3;
		bbOnDebugLeaveScope();
	}
	struct BBDebugStm __stmt_22 = {0xd84337d0cb3b0ee4, 65, 0};
	bbOnDebugEnterStm(&__stmt_22);
	if(bbt_ty3>*bbt_by2){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0xd84337d0cb3b0ee4, 65, 0};
		bbOnDebugEnterStm(&__stmt_0);
		*bbt_by2=bbt_ty3;
		bbOnDebugLeaveScope();
	}
	struct BBDebugStm __stmt_23 = {0xd84337d0cb3b0ee4, 66, 0};
	bbOnDebugEnterStm(&__stmt_23);
	if(bbt_tz3>*bbt_bz2){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0xd84337d0cb3b0ee4, 66, 0};
		bbOnDebugEnterStm(&__stmt_0);
		*bbt_bz2=bbt_tz3;
		bbOnDebugLeaveScope();
	}
	bbOnDebugLeaveScope();
	return 0;
}
BBINT openb3d_openb3dcore_BoxBoxIntersection(BBFLOAT bbt_ax1,BBFLOAT bbt_ay1,BBFLOAT bbt_az1,BBFLOAT bbt_ax2,BBFLOAT bbt_ay2,BBFLOAT bbt_az2,BBFLOAT bbt_bx1,BBFLOAT bbt_by1,BBFLOAT bbt_bz1,BBFLOAT bbt_bx2,BBFLOAT bbt_by2,BBFLOAT bbt_bz2){
	struct BBDebugScope_12 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"BoxBoxIntersection",
		{
			{
				BBDEBUGDECL_LOCAL,
				"ax1",
				"f",
				.var_address=&bbt_ax1
			},
			{
				BBDEBUGDECL_LOCAL,
				"ay1",
				"f",
				.var_address=&bbt_ay1
			},
			{
				BBDEBUGDECL_LOCAL,
				"az1",
				"f",
				.var_address=&bbt_az1
			},
			{
				BBDEBUGDECL_LOCAL,
				"ax2",
				"f",
				.var_address=&bbt_ax2
			},
			{
				BBDEBUGDECL_LOCAL,
				"ay2",
				"f",
				.var_address=&bbt_ay2
			},
			{
				BBDEBUGDECL_LOCAL,
				"az2",
				"f",
				.var_address=&bbt_az2
			},
			{
				BBDEBUGDECL_LOCAL,
				"bx1",
				"f",
				.var_address=&bbt_bx1
			},
			{
				BBDEBUGDECL_LOCAL,
				"by1",
				"f",
				.var_address=&bbt_by1
			},
			{
				BBDEBUGDECL_LOCAL,
				"bz1",
				"f",
				.var_address=&bbt_bz1
			},
			{
				BBDEBUGDECL_LOCAL,
				"bx2",
				"f",
				.var_address=&bbt_bx2
			},
			{
				BBDEBUGDECL_LOCAL,
				"by2",
				"f",
				.var_address=&bbt_by2
			},
			{
				BBDEBUGDECL_LOCAL,
				"bz2",
				"f",
				.var_address=&bbt_bz2
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0xd84337d0cb3b0ee4, 75, 0};
	bbOnDebugEnterStm(&__stmt_0);
	if((bbt_ax2<bbt_bx1) || (bbt_ax1>bbt_bx2)){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0xd84337d0cb3b0ee4, 75, 0};
		bbOnDebugEnterStm(&__stmt_0);
		bbOnDebugLeaveScope();
		bbOnDebugLeaveScope();
		return 0;
	}
	struct BBDebugStm __stmt_1 = {0xd84337d0cb3b0ee4, 76, 0};
	bbOnDebugEnterStm(&__stmt_1);
	if((bbt_ay2<bbt_by1) || (bbt_ay1>bbt_by2)){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0xd84337d0cb3b0ee4, 76, 0};
		bbOnDebugEnterStm(&__stmt_0);
		bbOnDebugLeaveScope();
		bbOnDebugLeaveScope();
		return 0;
	}
	struct BBDebugStm __stmt_2 = {0xd84337d0cb3b0ee4, 77, 0};
	bbOnDebugEnterStm(&__stmt_2);
	if((bbt_az2<bbt_bz1) || (bbt_az1>bbt_bz2)){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0xd84337d0cb3b0ee4, 77, 0};
		bbOnDebugEnterStm(&__stmt_0);
		bbOnDebugLeaveScope();
		bbOnDebugLeaveScope();
		return 0;
	}
	struct BBDebugStm __stmt_3 = {0xd84337d0cb3b0ee4, 79, 0};
	bbOnDebugEnterStm(&__stmt_3);
	bbOnDebugLeaveScope();
	return 1;
}
BBINT openb3d_openb3dcore_BoxSphereIntersection(BBFLOAT bbt_x1,BBFLOAT bbt_y1,BBFLOAT bbt_z1,BBFLOAT bbt_x2,BBFLOAT bbt_y2,BBFLOAT bbt_z2,BBFLOAT bbt_sx,BBFLOAT bbt_sy,BBFLOAT bbt_sz,BBFLOAT bbt_sr){
	BBFLOAT bbt_dmin=0;
	BBFLOAT bbt_sr2=0;
	struct BBDebugScope_12 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"BoxSphereIntersection",
		{
			{
				BBDEBUGDECL_LOCAL,
				"x1",
				"f",
				.var_address=&bbt_x1
			},
			{
				BBDEBUGDECL_LOCAL,
				"y1",
				"f",
				.var_address=&bbt_y1
			},
			{
				BBDEBUGDECL_LOCAL,
				"z1",
				"f",
				.var_address=&bbt_z1
			},
			{
				BBDEBUGDECL_LOCAL,
				"x2",
				"f",
				.var_address=&bbt_x2
			},
			{
				BBDEBUGDECL_LOCAL,
				"y2",
				"f",
				.var_address=&bbt_y2
			},
			{
				BBDEBUGDECL_LOCAL,
				"z2",
				"f",
				.var_address=&bbt_z2
			},
			{
				BBDEBUGDECL_LOCAL,
				"sx",
				"f",
				.var_address=&bbt_sx
			},
			{
				BBDEBUGDECL_LOCAL,
				"sy",
				"f",
				.var_address=&bbt_sy
			},
			{
				BBDEBUGDECL_LOCAL,
				"sz",
				"f",
				.var_address=&bbt_sz
			},
			{
				BBDEBUGDECL_LOCAL,
				"sr",
				"f",
				.var_address=&bbt_sr
			},
			{
				BBDEBUGDECL_LOCAL,
				"dmin",
				"f",
				.var_address=&bbt_dmin
			},
			{
				BBDEBUGDECL_LOCAL,
				"sr2",
				"f",
				.var_address=&bbt_sr2
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0xd84337d0cb3b0ee4, 86, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbt_dmin=0.00000000f;
	struct BBDebugStm __stmt_1 = {0xd84337d0cb3b0ee4, 87, 0};
	bbOnDebugEnterStm(&__stmt_1);
	bbt_sr2=(bbt_sr*bbt_sr);
	struct BBDebugStm __stmt_2 = {0xd84337d0cb3b0ee4, 90, 0};
	bbOnDebugEnterStm(&__stmt_2);
	if(bbt_sx<bbt_x1){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0xd84337d0cb3b0ee4, 92, 0};
		bbOnDebugEnterStm(&__stmt_0);
		bbt_dmin=(bbt_dmin+((bbt_sx-bbt_x1)*(bbt_sx-bbt_x1)));
		bbOnDebugLeaveScope();
	}else{
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0xd84337d0cb3b0ee4, 94, 0};
		bbOnDebugEnterStm(&__stmt_0);
		if(bbt_sx>bbt_x2){
			struct BBDebugScope __scope = {
				BBDEBUGSCOPE_LOCALBLOCK,
				0,
				{
					{
						BBDEBUGDECL_END
					}
				}
			};
			bbOnDebugEnterScope((BBDebugScope *)&__scope);
			struct BBDebugStm __stmt_0 = {0xd84337d0cb3b0ee4, 96, 0};
			bbOnDebugEnterStm(&__stmt_0);
			bbt_dmin=(bbt_dmin+((bbt_sx-bbt_x2)*(bbt_sx-bbt_x2)));
			bbOnDebugLeaveScope();
		}
		bbOnDebugLeaveScope();
	}
	struct BBDebugStm __stmt_3 = {0xd84337d0cb3b0ee4, 101, 0};
	bbOnDebugEnterStm(&__stmt_3);
	if(bbt_sy<bbt_y1){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0xd84337d0cb3b0ee4, 103, 0};
		bbOnDebugEnterStm(&__stmt_0);
		bbt_dmin=(bbt_dmin+((bbt_sy-bbt_y1)*(bbt_sy-bbt_y1)));
		bbOnDebugLeaveScope();
	}else{
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0xd84337d0cb3b0ee4, 105, 0};
		bbOnDebugEnterStm(&__stmt_0);
		if(bbt_sy>bbt_y2){
			struct BBDebugScope __scope = {
				BBDEBUGSCOPE_LOCALBLOCK,
				0,
				{
					{
						BBDEBUGDECL_END
					}
				}
			};
			bbOnDebugEnterScope((BBDebugScope *)&__scope);
			struct BBDebugStm __stmt_0 = {0xd84337d0cb3b0ee4, 107, 0};
			bbOnDebugEnterStm(&__stmt_0);
			bbt_dmin=(bbt_dmin+((bbt_sy-bbt_y2)*(bbt_sy-bbt_y2)));
			bbOnDebugLeaveScope();
		}
		bbOnDebugLeaveScope();
	}
	struct BBDebugStm __stmt_4 = {0xd84337d0cb3b0ee4, 112, 0};
	bbOnDebugEnterStm(&__stmt_4);
	if(bbt_sz<bbt_z1){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0xd84337d0cb3b0ee4, 114, 0};
		bbOnDebugEnterStm(&__stmt_0);
		bbt_dmin=(bbt_dmin+((bbt_sz-bbt_z1)*(bbt_sz-bbt_z2)));
		bbOnDebugLeaveScope();
	}else{
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0xd84337d0cb3b0ee4, 116, 0};
		bbOnDebugEnterStm(&__stmt_0);
		if(bbt_sz>bbt_x2){
			struct BBDebugScope __scope = {
				BBDEBUGSCOPE_LOCALBLOCK,
				0,
				{
					{
						BBDEBUGDECL_END
					}
				}
			};
			bbOnDebugEnterScope((BBDebugScope *)&__scope);
			struct BBDebugStm __stmt_0 = {0xd84337d0cb3b0ee4, 118, 0};
			bbOnDebugEnterStm(&__stmt_0);
			bbt_dmin=(bbt_dmin+((bbt_sz-bbt_z2)*(bbt_sz-bbt_z2)));
			bbOnDebugLeaveScope();
		}
		bbOnDebugLeaveScope();
	}
	struct BBDebugStm __stmt_5 = {0xd84337d0cb3b0ee4, 122, 0};
	bbOnDebugEnterStm(&__stmt_5);
	if(bbt_dmin<=bbt_sr2){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0xd84337d0cb3b0ee4, 122, 0};
		bbOnDebugEnterStm(&__stmt_0);
		bbOnDebugLeaveScope();
		bbOnDebugLeaveScope();
		return 1;
	}else{
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0xd84337d0cb3b0ee4, 122, 0};
		bbOnDebugEnterStm(&__stmt_0);
		bbOnDebugLeaveScope();
		bbOnDebugLeaveScope();
		return 0;
	}
}
struct openb3d_openb3dcore_TMeshLoader_obj* openb3d_openb3dcore_GetMeshLoader(BBSTRING bbt_extension){
	struct openb3d_openb3dcore_TMeshLoader_obj* bbt_loader=(struct openb3d_openb3dcore_TMeshLoader_obj*)((struct openb3d_openb3dcore_TMeshLoader_obj*)&bbNullObject);
	struct BBDebugScope_2 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"GetMeshLoader",
		{
			{
				BBDEBUGDECL_LOCAL,
				"extension",
				"$",
				.var_address=&bbt_extension
			},
			{
				BBDEBUGDECL_LOCAL,
				"loader",
				":TMeshLoader",
				.var_address=&bbt_loader
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x495c13799fba57b6, 13, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbt_loader=(struct openb3d_openb3dcore_TMeshLoader_obj*)openb3d_openb3dcore_mesh_loaders;
	struct BBDebugStm __stmt_1 = {0x495c13799fba57b6, 15, 0};
	bbOnDebugEnterStm(&__stmt_1);
	while(((BBObject*)bbt_loader)!= &bbNullObject){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x495c13799fba57b6, 16, 0};
		bbOnDebugEnterStm(&__stmt_0);
		if(((struct openb3d_openb3dcore_TMeshLoader_obj*)bbNullObjectTest((BBObject*)bbt_loader))->clas->m_CanLoadMesh_S((struct openb3d_openb3dcore_TMeshLoader_obj*)bbt_loader,bbt_extension)!=0){
			struct BBDebugScope __scope = {
				BBDEBUGSCOPE_LOCALBLOCK,
				0,
				{
					{
						BBDEBUGDECL_END
					}
				}
			};
			bbOnDebugEnterScope((BBDebugScope *)&__scope);
			struct BBDebugStm __stmt_0 = {0x495c13799fba57b6, 17, 0};
			bbOnDebugEnterStm(&__stmt_0);
			bbOnDebugLeaveScope();
			bbOnDebugLeaveScope();
			bbOnDebugLeaveScope();
			return (struct openb3d_openb3dcore_TMeshLoader_obj*)bbt_loader;
		}
		struct BBDebugStm __stmt_1 = {0x495c13799fba57b6, 19, 0};
		bbOnDebugEnterStm(&__stmt_1);
		bbt_loader=(struct openb3d_openb3dcore_TMeshLoader_obj*)((struct openb3d_openb3dcore_TMeshLoader_obj*)bbNullObjectTest((BBObject*)bbt_loader))->_openb3d_openb3dcore_tmeshloader__succ ;
		bbOnDebugLeaveScope();
	}
	bbOnDebugLeaveScope();
	return (struct openb3d_openb3dcore_TMeshLoader_obj*)((struct openb3d_openb3dcore_TMeshLoader_obj*)&bbNullObject);
}
BBINT openb3d_openb3dcore_AddMesh(struct openb3d_openb3dcore_TMesh_obj* bbt_mesh1,struct openb3d_openb3dcore_TMesh_obj* bbt_mesh2){
	struct BBDebugScope_2 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"AddMesh",
		{
			{
				BBDEBUGDECL_LOCAL,
				"mesh1",
				":TMesh",
				.var_address=&bbt_mesh1
			},
			{
				BBDEBUGDECL_LOCAL,
				"mesh2",
				":TMesh",
				.var_address=&bbt_mesh2
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x7997c65814154ece, 161, 0};
	bbOnDebugEnterStm(&__stmt_0);
	((struct openb3d_openb3dcore_TMesh_obj*)bbNullObjectTest((BBObject*)bbt_mesh1))->clas->m_AddMesh_TTMesh((struct openb3d_openb3dcore_TMesh_obj*)bbt_mesh1,(struct openb3d_openb3dcore_TMesh_obj*)bbt_mesh2);
	bbOnDebugLeaveScope();
	return 0;
}
BBINT openb3d_openb3dcore_AddTriangle(struct openb3d_openb3dcore_TSurface_obj* bbt_surf,BBINT bbt_v0,BBINT bbt_v1,BBINT bbt_v2){
	struct BBDebugScope_4 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"AddTriangle",
		{
			{
				BBDEBUGDECL_LOCAL,
				"surf",
				":TSurface",
				.var_address=&bbt_surf
			},
			{
				BBDEBUGDECL_LOCAL,
				"v0",
				"i",
				.var_address=&bbt_v0
			},
			{
				BBDEBUGDECL_LOCAL,
				"v1",
				"i",
				.var_address=&bbt_v1
			},
			{
				BBDEBUGDECL_LOCAL,
				"v2",
				"i",
				.var_address=&bbt_v2
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x7997c65814154ece, 189, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbOnDebugLeaveScope();
	return ((struct openb3d_openb3dcore_TSurface_obj*)bbNullObjectTest((BBObject*)bbt_surf))->clas->m_AddTriangle_iii((struct openb3d_openb3dcore_TSurface_obj*)bbt_surf,bbt_v0,bbt_v1,bbt_v2);
}
BBINT openb3d_openb3dcore_AddVertex(struct openb3d_openb3dcore_TSurface_obj* bbt_surf,BBFLOAT bbt_x,BBFLOAT bbt_y,BBFLOAT bbt_z,BBFLOAT bbt_u,BBFLOAT bbt_v,BBFLOAT bbt_w){
	struct BBDebugScope_7 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"AddVertex",
		{
			{
				BBDEBUGDECL_LOCAL,
				"surf",
				":TSurface",
				.var_address=&bbt_surf
			},
			{
				BBDEBUGDECL_LOCAL,
				"x",
				"f",
				.var_address=&bbt_x
			},
			{
				BBDEBUGDECL_LOCAL,
				"y",
				"f",
				.var_address=&bbt_y
			},
			{
				BBDEBUGDECL_LOCAL,
				"z",
				"f",
				.var_address=&bbt_z
			},
			{
				BBDEBUGDECL_LOCAL,
				"u",
				"f",
				.var_address=&bbt_u
			},
			{
				BBDEBUGDECL_LOCAL,
				"v",
				"f",
				.var_address=&bbt_v
			},
			{
				BBDEBUGDECL_LOCAL,
				"w",
				"f",
				.var_address=&bbt_w
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x7997c65814154ece, 234, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbOnDebugLeaveScope();
	return ((struct openb3d_openb3dcore_TSurface_obj*)bbNullObjectTest((BBObject*)bbt_surf))->clas->m_AddVertex_ffffff((struct openb3d_openb3dcore_TSurface_obj*)bbt_surf,bbt_x,bbt_y,bbt_z,bbt_u,bbt_v,bbt_w);
}
BBINT openb3d_openb3dcore_AmbientLight(BBFLOAT bbt_r,BBFLOAT bbt_g,BBFLOAT bbt_b){
	struct BBDebugScope_3 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"AmbientLight",
		{
			{
				BBDEBUGDECL_LOCAL,
				"r",
				"f",
				.var_address=&bbt_r
			},
			{
				BBDEBUGDECL_LOCAL,
				"g",
				"f",
				.var_address=&bbt_g
			},
			{
				BBDEBUGDECL_LOCAL,
				"b",
				"f",
				.var_address=&bbt_b
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x7997c65814154ece, 265, 0};
	bbOnDebugEnterStm(&__stmt_0);
	openb3d_openb3dcore_TGlobal3D_AmbientLight_i_fff(bbt_r,bbt_g,bbt_b);
	bbOnDebugLeaveScope();
	return 0;
}
BBINT openb3d_openb3dcore_Animate(struct openb3d_openb3dcore_TEntity_obj* bbt_ent,BBINT bbt_Mode,BBFLOAT bbt_speed,BBINT bbt_seq,BBINT bbt_trans){
	struct BBDebugScope_5 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"Animate",
		{
			{
				BBDEBUGDECL_LOCAL,
				"ent",
				":TEntity",
				.var_address=&bbt_ent
			},
			{
				BBDEBUGDECL_LOCAL,
				"Mode",
				"i",
				.var_address=&bbt_Mode
			},
			{
				BBDEBUGDECL_LOCAL,
				"speed",
				"f",
				.var_address=&bbt_speed
			},
			{
				BBDEBUGDECL_LOCAL,
				"seq",
				"i",
				.var_address=&bbt_seq
			},
			{
				BBDEBUGDECL_LOCAL,
				"trans",
				"i",
				.var_address=&bbt_trans
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x7997c65814154ece, 307, 0};
	bbOnDebugEnterStm(&__stmt_0);
	((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)bbt_ent))->clas->m_Animate_ifii((struct openb3d_openb3dcore_TEntity_obj*)bbt_ent,bbt_Mode,bbt_speed,bbt_seq,bbt_trans);
	bbOnDebugLeaveScope();
	return 0;
}
BBINT openb3d_openb3dcore_Animating(struct openb3d_openb3dcore_TEntity_obj* bbt_ent){
	struct BBDebugScope_1 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"Animating",
		{
			{
				BBDEBUGDECL_LOCAL,
				"ent",
				":TEntity",
				.var_address=&bbt_ent
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x7997c65814154ece, 323, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbOnDebugLeaveScope();
	return Animating_(openb3d_openb3dcore_TEntity_GetInstance_pb_TTEntity((struct openb3d_openb3dcore_TEntity_obj*)bbt_ent));
}
BBINT openb3d_openb3dcore_AnimLength(struct openb3d_openb3dcore_TEntity_obj* bbt_ent){
	struct BBDebugScope_1 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"AnimLength",
		{
			{
				BBDEBUGDECL_LOCAL,
				"ent",
				":TEntity",
				.var_address=&bbt_ent
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x7997c65814154ece, 339, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbOnDebugLeaveScope();
	return ((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)bbt_ent))->clas->m_AnimLength((struct openb3d_openb3dcore_TEntity_obj*)bbt_ent);
}
BBINT openb3d_openb3dcore_AnimSeq(struct openb3d_openb3dcore_TEntity_obj* bbt_ent){
	struct BBDebugScope_1 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"AnimSeq",
		{
			{
				BBDEBUGDECL_LOCAL,
				"ent",
				":TEntity",
				.var_address=&bbt_ent
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x7997c65814154ece, 355, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbOnDebugLeaveScope();
	return AnimSeq_(openb3d_openb3dcore_TEntity_GetInstance_pb_TTEntity((struct openb3d_openb3dcore_TEntity_obj*)bbt_ent));
}
BBFLOAT openb3d_openb3dcore_AnimTime(struct openb3d_openb3dcore_TEntity_obj* bbt_ent){
	struct BBDebugScope_1 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"AnimTime",
		{
			{
				BBDEBUGDECL_LOCAL,
				"ent",
				":TEntity",
				.var_address=&bbt_ent
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x7997c65814154ece, 371, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbOnDebugLeaveScope();
	return ((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)bbt_ent))->clas->m_AnimTime((struct openb3d_openb3dcore_TEntity_obj*)bbt_ent);
}
BBINT openb3d_openb3dcore_AntiAlias(BBINT bbt_samples){
	struct BBDebugScope_1 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"AntiAlias",
		{
			{
				BBDEBUGDECL_LOCAL,
				"samples",
				"i",
				.var_address=&bbt_samples
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x7997c65814154ece, 394, 0};
	bbOnDebugEnterStm(&__stmt_0);
	openb3d_openb3dcore_TGlobal3D_AntiAlias_i_i(bbt_samples);
	bbOnDebugLeaveScope();
	return 0;
}
BBINT openb3d_openb3dcore_BrushAlpha(struct openb3d_openb3dcore_TBrush_obj* bbt_brush,BBFLOAT bbt_a){
	struct BBDebugScope_2 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"BrushAlpha",
		{
			{
				BBDEBUGDECL_LOCAL,
				"brush",
				":TBrush",
				.var_address=&bbt_brush
			},
			{
				BBDEBUGDECL_LOCAL,
				"a",
				"f",
				.var_address=&bbt_a
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x7997c65814154ece, 418, 0};
	bbOnDebugEnterStm(&__stmt_0);
	((struct openb3d_openb3dcore_TBrush_obj*)bbNullObjectTest((BBObject*)bbt_brush))->clas->m_BrushAlpha_f((struct openb3d_openb3dcore_TBrush_obj*)bbt_brush,bbt_a);
	bbOnDebugLeaveScope();
	return 0;
}
BBINT openb3d_openb3dcore_BrushBlend(struct openb3d_openb3dcore_TBrush_obj* bbt_brush,BBINT bbt_blend){
	struct BBDebugScope_2 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"BrushBlend",
		{
			{
				BBDEBUGDECL_LOCAL,
				"brush",
				":TBrush",
				.var_address=&bbt_brush
			},
			{
				BBDEBUGDECL_LOCAL,
				"blend",
				"i",
				.var_address=&bbt_blend
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x7997c65814154ece, 442, 0};
	bbOnDebugEnterStm(&__stmt_0);
	((struct openb3d_openb3dcore_TBrush_obj*)bbNullObjectTest((BBObject*)bbt_brush))->clas->m_BrushBlend_i((struct openb3d_openb3dcore_TBrush_obj*)bbt_brush,bbt_blend);
	bbOnDebugLeaveScope();
	return 0;
}
BBINT openb3d_openb3dcore_BrushColor(struct openb3d_openb3dcore_TBrush_obj* bbt_brush,BBFLOAT bbt_r,BBFLOAT bbt_g,BBFLOAT bbt_b){
	struct BBDebugScope_4 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"BrushColor",
		{
			{
				BBDEBUGDECL_LOCAL,
				"brush",
				":TBrush",
				.var_address=&bbt_brush
			},
			{
				BBDEBUGDECL_LOCAL,
				"r",
				"f",
				.var_address=&bbt_r
			},
			{
				BBDEBUGDECL_LOCAL,
				"g",
				"f",
				.var_address=&bbt_g
			},
			{
				BBDEBUGDECL_LOCAL,
				"b",
				"f",
				.var_address=&bbt_b
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x7997c65814154ece, 468, 0};
	bbOnDebugEnterStm(&__stmt_0);
	((struct openb3d_openb3dcore_TBrush_obj*)bbNullObjectTest((BBObject*)bbt_brush))->clas->m_BrushColor_fff((struct openb3d_openb3dcore_TBrush_obj*)bbt_brush,bbt_r,bbt_g,bbt_b);
	bbOnDebugLeaveScope();
	return 0;
}
BBINT openb3d_openb3dcore_BrushFX(struct openb3d_openb3dcore_TBrush_obj* bbt_brush,BBINT bbt_fx){
	struct BBDebugScope_2 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"BrushFX",
		{
			{
				BBDEBUGDECL_LOCAL,
				"brush",
				":TBrush",
				.var_address=&bbt_brush
			},
			{
				BBDEBUGDECL_LOCAL,
				"fx",
				"i",
				.var_address=&bbt_fx
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x7997c65814154ece, 501, 0};
	bbOnDebugEnterStm(&__stmt_0);
	((struct openb3d_openb3dcore_TBrush_obj*)bbNullObjectTest((BBObject*)bbt_brush))->clas->m_BrushFX_i((struct openb3d_openb3dcore_TBrush_obj*)bbt_brush,bbt_fx);
	bbOnDebugLeaveScope();
	return 0;
}
BBINT openb3d_openb3dcore_BrushShininess(struct openb3d_openb3dcore_TBrush_obj* bbt_brush,BBFLOAT bbt_s){
	struct BBDebugScope_2 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"BrushShininess",
		{
			{
				BBDEBUGDECL_LOCAL,
				"brush",
				":TBrush",
				.var_address=&bbt_brush
			},
			{
				BBDEBUGDECL_LOCAL,
				"s",
				"f",
				.var_address=&bbt_s
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x7997c65814154ece, 525, 0};
	bbOnDebugEnterStm(&__stmt_0);
	((struct openb3d_openb3dcore_TBrush_obj*)bbNullObjectTest((BBObject*)bbt_brush))->clas->m_BrushShininess_f((struct openb3d_openb3dcore_TBrush_obj*)bbt_brush,bbt_s);
	bbOnDebugLeaveScope();
	return 0;
}
BBINT openb3d_openb3dcore_BrushTexture(struct openb3d_openb3dcore_TBrush_obj* bbt_brush,struct openb3d_openb3dcore_TTexture_obj* bbt_tex,BBINT bbt_frame,BBINT bbt_index){
	struct BBDebugScope_4 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"BrushTexture",
		{
			{
				BBDEBUGDECL_LOCAL,
				"brush",
				":TBrush",
				.var_address=&bbt_brush
			},
			{
				BBDEBUGDECL_LOCAL,
				"tex",
				":TTexture",
				.var_address=&bbt_tex
			},
			{
				BBDEBUGDECL_LOCAL,
				"frame",
				"i",
				.var_address=&bbt_frame
			},
			{
				BBDEBUGDECL_LOCAL,
				"index",
				"i",
				.var_address=&bbt_index
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x7997c65814154ece, 551, 0};
	bbOnDebugEnterStm(&__stmt_0);
	((struct openb3d_openb3dcore_TBrush_obj*)bbNullObjectTest((BBObject*)bbt_brush))->clas->m_BrushTexture_TTTextureii((struct openb3d_openb3dcore_TBrush_obj*)bbt_brush,(struct openb3d_openb3dcore_TTexture_obj*)bbt_tex,bbt_frame,bbt_index);
	bbOnDebugLeaveScope();
	return 0;
}
BBINT openb3d_openb3dcore_CameraClsColor(struct openb3d_openb3dcore_TCamera_obj* bbt_cam,BBFLOAT bbt_r,BBFLOAT bbt_g,BBFLOAT bbt_b){
	struct BBDebugScope_4 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"CameraClsColor",
		{
			{
				BBDEBUGDECL_LOCAL,
				"cam",
				":TCamera",
				.var_address=&bbt_cam
			},
			{
				BBDEBUGDECL_LOCAL,
				"r",
				"f",
				.var_address=&bbt_r
			},
			{
				BBDEBUGDECL_LOCAL,
				"g",
				"f",
				.var_address=&bbt_g
			},
			{
				BBDEBUGDECL_LOCAL,
				"b",
				"f",
				.var_address=&bbt_b
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x7997c65814154ece, 573, 0};
	bbOnDebugEnterStm(&__stmt_0);
	((struct openb3d_openb3dcore_TCamera_obj*)bbNullObjectTest((BBObject*)bbt_cam))->clas->m_CameraClsColor_fff((struct openb3d_openb3dcore_TCamera_obj*)bbt_cam,bbt_r,bbt_g,bbt_b);
	bbOnDebugLeaveScope();
	return 0;
}
BBINT openb3d_openb3dcore_CameraClsMode(struct openb3d_openb3dcore_TCamera_obj* bbt_cam,BBINT bbt_cls_depth,BBINT bbt_cls_zbuffer){
	struct BBDebugScope_3 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"CameraClsMode",
		{
			{
				BBDEBUGDECL_LOCAL,
				"cam",
				":TCamera",
				.var_address=&bbt_cam
			},
			{
				BBDEBUGDECL_LOCAL,
				"cls_depth",
				"i",
				.var_address=&bbt_cls_depth
			},
			{
				BBDEBUGDECL_LOCAL,
				"cls_zbuffer",
				"i",
				.var_address=&bbt_cls_zbuffer
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x7997c65814154ece, 593, 0};
	bbOnDebugEnterStm(&__stmt_0);
	((struct openb3d_openb3dcore_TCamera_obj*)bbNullObjectTest((BBObject*)bbt_cam))->clas->m_CameraClsMode_ii((struct openb3d_openb3dcore_TCamera_obj*)bbt_cam,bbt_cls_depth,bbt_cls_zbuffer);
	bbOnDebugLeaveScope();
	return 0;
}
BBINT openb3d_openb3dcore_CameraFogColor(struct openb3d_openb3dcore_TCamera_obj* bbt_cam,BBFLOAT bbt_r,BBFLOAT bbt_g,BBFLOAT bbt_b){
	struct BBDebugScope_4 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"CameraFogColor",
		{
			{
				BBDEBUGDECL_LOCAL,
				"cam",
				":TCamera",
				.var_address=&bbt_cam
			},
			{
				BBDEBUGDECL_LOCAL,
				"r",
				"f",
				.var_address=&bbt_r
			},
			{
				BBDEBUGDECL_LOCAL,
				"g",
				"f",
				.var_address=&bbt_g
			},
			{
				BBDEBUGDECL_LOCAL,
				"b",
				"f",
				.var_address=&bbt_b
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x7997c65814154ece, 615, 0};
	bbOnDebugEnterStm(&__stmt_0);
	((struct openb3d_openb3dcore_TCamera_obj*)bbNullObjectTest((BBObject*)bbt_cam))->clas->m_CameraFogColor_fff((struct openb3d_openb3dcore_TCamera_obj*)bbt_cam,bbt_r,bbt_g,bbt_b);
	bbOnDebugLeaveScope();
	return 0;
}
BBINT openb3d_openb3dcore_CameraFogMode(struct openb3d_openb3dcore_TCamera_obj* bbt_cam,BBINT bbt_Mode){
	struct BBDebugScope_2 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"CameraFogMode",
		{
			{
				BBDEBUGDECL_LOCAL,
				"cam",
				":TCamera",
				.var_address=&bbt_cam
			},
			{
				BBDEBUGDECL_LOCAL,
				"Mode",
				"i",
				.var_address=&bbt_Mode
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x7997c65814154ece, 644, 0};
	bbOnDebugEnterStm(&__stmt_0);
	((struct openb3d_openb3dcore_TCamera_obj*)bbNullObjectTest((BBObject*)bbt_cam))->clas->m_CameraFogMode_i((struct openb3d_openb3dcore_TCamera_obj*)bbt_cam,bbt_Mode);
	bbOnDebugLeaveScope();
	return 0;
}
BBINT openb3d_openb3dcore_CameraFogRange(struct openb3d_openb3dcore_TCamera_obj* bbt_cam,BBFLOAT bbt_nnear,BBFLOAT bbt_nfar){
	struct BBDebugScope_3 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"CameraFogRange",
		{
			{
				BBDEBUGDECL_LOCAL,
				"cam",
				":TCamera",
				.var_address=&bbt_cam
			},
			{
				BBDEBUGDECL_LOCAL,
				"nnear",
				"f",
				.var_address=&bbt_nnear
			},
			{
				BBDEBUGDECL_LOCAL,
				"nfar",
				"f",
				.var_address=&bbt_nfar
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x7997c65814154ece, 668, 0};
	bbOnDebugEnterStm(&__stmt_0);
	((struct openb3d_openb3dcore_TCamera_obj*)bbNullObjectTest((BBObject*)bbt_cam))->clas->m_CameraFogRange_ff((struct openb3d_openb3dcore_TCamera_obj*)bbt_cam,bbt_nnear,bbt_nfar);
	bbOnDebugLeaveScope();
	return 0;
}
struct openb3d_openb3dcore_TEntity_obj* openb3d_openb3dcore_CameraPick(struct openb3d_openb3dcore_TCamera_obj* bbt_cam,BBFLOAT bbt_x,BBFLOAT bbt_y){
	struct BBDebugScope_3 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"CameraPick",
		{
			{
				BBDEBUGDECL_LOCAL,
				"cam",
				":TCamera",
				.var_address=&bbt_cam
			},
			{
				BBDEBUGDECL_LOCAL,
				"x",
				"f",
				.var_address=&bbt_x
			},
			{
				BBDEBUGDECL_LOCAL,
				"y",
				"f",
				.var_address=&bbt_y
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x7997c65814154ece, 694, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbOnDebugLeaveScope();
	return (struct openb3d_openb3dcore_TEntity_obj*)((struct openb3d_openb3dcore_TCamera_obj*)bbNullObjectTest((BBObject*)bbt_cam))->clas->m_CameraPick_ff((struct openb3d_openb3dcore_TCamera_obj*)bbt_cam,bbt_x,bbt_y);
}
BBINT openb3d_openb3dcore_CameraProject(struct openb3d_openb3dcore_TCamera_obj* bbt_cam,BBFLOAT bbt_x,BBFLOAT bbt_y,BBFLOAT bbt_z){
	struct BBDebugScope_4 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"CameraProject",
		{
			{
				BBDEBUGDECL_LOCAL,
				"cam",
				":TCamera",
				.var_address=&bbt_cam
			},
			{
				BBDEBUGDECL_LOCAL,
				"x",
				"f",
				.var_address=&bbt_x
			},
			{
				BBDEBUGDECL_LOCAL,
				"y",
				"f",
				.var_address=&bbt_y
			},
			{
				BBDEBUGDECL_LOCAL,
				"z",
				"f",
				.var_address=&bbt_z
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x7997c65814154ece, 716, 0};
	bbOnDebugEnterStm(&__stmt_0);
	((struct openb3d_openb3dcore_TCamera_obj*)bbNullObjectTest((BBObject*)bbt_cam))->clas->m_CameraProject_fff((struct openb3d_openb3dcore_TCamera_obj*)bbt_cam,bbt_x,bbt_y,bbt_z);
	bbOnDebugLeaveScope();
	return 0;
}
BBINT openb3d_openb3dcore_CameraProjMode(struct openb3d_openb3dcore_TCamera_obj* bbt_cam,BBINT bbt_Mode){
	struct BBDebugScope_2 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"CameraProjMode",
		{
			{
				BBDEBUGDECL_LOCAL,
				"cam",
				":TCamera",
				.var_address=&bbt_cam
			},
			{
				BBDEBUGDECL_LOCAL,
				"Mode",
				"i",
				.var_address=&bbt_Mode
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x7997c65814154ece, 746, 0};
	bbOnDebugEnterStm(&__stmt_0);
	((struct openb3d_openb3dcore_TCamera_obj*)bbNullObjectTest((BBObject*)bbt_cam))->clas->m_CameraProjMode_i((struct openb3d_openb3dcore_TCamera_obj*)bbt_cam,bbt_Mode);
	bbOnDebugLeaveScope();
	return 0;
}
BBINT openb3d_openb3dcore_CameraRange(struct openb3d_openb3dcore_TCamera_obj* bbt_cam,BBFLOAT bbt_nnear,BBFLOAT bbt_nfar){
	struct BBDebugScope_3 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"CameraRange",
		{
			{
				BBDEBUGDECL_LOCAL,
				"cam",
				":TCamera",
				.var_address=&bbt_cam
			},
			{
				BBDEBUGDECL_LOCAL,
				"nnear",
				"f",
				.var_address=&bbt_nnear
			},
			{
				BBDEBUGDECL_LOCAL,
				"nfar",
				"f",
				.var_address=&bbt_nfar
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x7997c65814154ece, 768, 0};
	bbOnDebugEnterStm(&__stmt_0);
	((struct openb3d_openb3dcore_TCamera_obj*)bbNullObjectTest((BBObject*)bbt_cam))->clas->m_CameraRange_ff((struct openb3d_openb3dcore_TCamera_obj*)bbt_cam,bbt_nnear,bbt_nfar);
	bbOnDebugLeaveScope();
	return 0;
}
BBINT openb3d_openb3dcore_CameraViewport(struct openb3d_openb3dcore_TCamera_obj* bbt_cam,BBINT bbt_x,BBINT bbt_y,BBINT bbt_width,BBINT bbt_height){
	struct BBDebugScope_5 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"CameraViewport",
		{
			{
				BBDEBUGDECL_LOCAL,
				"cam",
				":TCamera",
				.var_address=&bbt_cam
			},
			{
				BBDEBUGDECL_LOCAL,
				"x",
				"i",
				.var_address=&bbt_x
			},
			{
				BBDEBUGDECL_LOCAL,
				"y",
				"i",
				.var_address=&bbt_y
			},
			{
				BBDEBUGDECL_LOCAL,
				"width",
				"i",
				.var_address=&bbt_width
			},
			{
				BBDEBUGDECL_LOCAL,
				"height",
				"i",
				.var_address=&bbt_height
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x7997c65814154ece, 796, 0};
	bbOnDebugEnterStm(&__stmt_0);
	((struct openb3d_openb3dcore_TCamera_obj*)bbNullObjectTest((BBObject*)bbt_cam))->clas->m_CameraViewport_iiii((struct openb3d_openb3dcore_TCamera_obj*)bbt_cam,bbt_x,bbt_y,bbt_width,bbt_height);
	bbOnDebugLeaveScope();
	return 0;
}
BBINT openb3d_openb3dcore_CameraZoom(struct openb3d_openb3dcore_TCamera_obj* bbt_cam,BBFLOAT bbt_zoom){
	struct BBDebugScope_2 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"CameraZoom",
		{
			{
				BBDEBUGDECL_LOCAL,
				"cam",
				":TCamera",
				.var_address=&bbt_cam
			},
			{
				BBDEBUGDECL_LOCAL,
				"zoom",
				"f",
				.var_address=&bbt_zoom
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x7997c65814154ece, 814, 0};
	bbOnDebugEnterStm(&__stmt_0);
	((struct openb3d_openb3dcore_TCamera_obj*)bbNullObjectTest((BBObject*)bbt_cam))->clas->m_CameraZoom_f((struct openb3d_openb3dcore_TCamera_obj*)bbt_cam,bbt_zoom);
	bbOnDebugLeaveScope();
	return 0;
}
BBINT openb3d_openb3dcore_ClearCollisions(){
	struct BBDebugScope __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"ClearCollisions",
		{
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x7997c65814154ece, 834, 0};
	bbOnDebugEnterStm(&__stmt_0);
	openb3d_openb3dcore_TGlobal3D_ClearCollisions_i();
	bbOnDebugLeaveScope();
	return 0;
}
BBINT openb3d_openb3dcore_ClearSurface(struct openb3d_openb3dcore_TSurface_obj* bbt_surf,BBINT bbt_clear_verts,BBINT bbt_clear_tris){
	struct BBDebugScope_3 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"ClearSurface",
		{
			{
				BBDEBUGDECL_LOCAL,
				"surf",
				":TSurface",
				.var_address=&bbt_surf
			},
			{
				BBDEBUGDECL_LOCAL,
				"clear_verts",
				"i",
				.var_address=&bbt_clear_verts
			},
			{
				BBDEBUGDECL_LOCAL,
				"clear_tris",
				"i",
				.var_address=&bbt_clear_tris
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x7997c65814154ece, 858, 0};
	bbOnDebugEnterStm(&__stmt_0);
	((struct openb3d_openb3dcore_TSurface_obj*)bbNullObjectTest((BBObject*)bbt_surf))->clas->m_ClearSurface_ii((struct openb3d_openb3dcore_TSurface_obj*)bbt_surf,bbt_clear_verts,bbt_clear_tris);
	bbOnDebugLeaveScope();
	return 0;
}
BBINT openb3d_openb3dcore_ClearTextureFilters(){
	struct BBDebugScope __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"ClearTextureFilters",
		{
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x7997c65814154ece, 874, 0};
	bbOnDebugEnterStm(&__stmt_0);
	openb3d_openb3dcore_TTexture_ClearTextureFilters_i();
	bbOnDebugLeaveScope();
	return 0;
}
BBINT openb3d_openb3dcore_ClearWorld(BBINT bbt_entities,BBINT bbt_brushes,BBINT bbt_textures){
	struct BBDebugScope_3 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"ClearWorld",
		{
			{
				BBDEBUGDECL_LOCAL,
				"entities",
				"i",
				.var_address=&bbt_entities
			},
			{
				BBDEBUGDECL_LOCAL,
				"brushes",
				"i",
				.var_address=&bbt_brushes
			},
			{
				BBDEBUGDECL_LOCAL,
				"textures",
				"i",
				.var_address=&bbt_textures
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x7997c65814154ece, 898, 0};
	bbOnDebugEnterStm(&__stmt_0);
	openb3d_openb3dcore_TGlobal3D_ClearWorld_i_iii(bbt_entities,bbt_brushes,bbt_textures);
	bbOnDebugLeaveScope();
	return 0;
}
struct openb3d_openb3dcore_TEntity_obj* openb3d_openb3dcore_CollisionEntity(struct openb3d_openb3dcore_TEntity_obj* bbt_ent,BBINT bbt_index){
	struct BBDebugScope_2 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"CollisionEntity",
		{
			{
				BBDEBUGDECL_LOCAL,
				"ent",
				":TEntity",
				.var_address=&bbt_ent
			},
			{
				BBDEBUGDECL_LOCAL,
				"index",
				"i",
				.var_address=&bbt_index
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x7997c65814154ece, 918, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbOnDebugLeaveScope();
	return (struct openb3d_openb3dcore_TEntity_obj*)((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)bbt_ent))->clas->m_CollisionEntity_i((struct openb3d_openb3dcore_TEntity_obj*)bbt_ent,bbt_index);
}
BBFLOAT openb3d_openb3dcore_CollisionNX(struct openb3d_openb3dcore_TEntity_obj* bbt_ent,BBINT bbt_index){
	struct BBDebugScope_2 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"CollisionNX",
		{
			{
				BBDEBUGDECL_LOCAL,
				"ent",
				":TEntity",
				.var_address=&bbt_ent
			},
			{
				BBDEBUGDECL_LOCAL,
				"index",
				"i",
				.var_address=&bbt_index
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x7997c65814154ece, 940, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbOnDebugLeaveScope();
	return ((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)bbt_ent))->clas->m_CollisionNX_i((struct openb3d_openb3dcore_TEntity_obj*)bbt_ent,bbt_index);
}
BBFLOAT openb3d_openb3dcore_CollisionNY(struct openb3d_openb3dcore_TEntity_obj* bbt_ent,BBINT bbt_index){
	struct BBDebugScope_2 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"CollisionNY",
		{
			{
				BBDEBUGDECL_LOCAL,
				"ent",
				":TEntity",
				.var_address=&bbt_ent
			},
			{
				BBDEBUGDECL_LOCAL,
				"index",
				"i",
				.var_address=&bbt_index
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x7997c65814154ece, 962, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbOnDebugLeaveScope();
	return ((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)bbt_ent))->clas->m_CollisionNY_i((struct openb3d_openb3dcore_TEntity_obj*)bbt_ent,bbt_index);
}
BBFLOAT openb3d_openb3dcore_CollisionNZ(struct openb3d_openb3dcore_TEntity_obj* bbt_ent,BBINT bbt_index){
	struct BBDebugScope_2 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"CollisionNZ",
		{
			{
				BBDEBUGDECL_LOCAL,
				"ent",
				":TEntity",
				.var_address=&bbt_ent
			},
			{
				BBDEBUGDECL_LOCAL,
				"index",
				"i",
				.var_address=&bbt_index
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x7997c65814154ece, 984, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbOnDebugLeaveScope();
	return ((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)bbt_ent))->clas->m_CollisionNZ_i((struct openb3d_openb3dcore_TEntity_obj*)bbt_ent,bbt_index);
}
BBINT openb3d_openb3dcore_Collisions(BBINT bbt_src_no,BBINT bbt_dest_no,BBINT bbt_method_no,BBINT bbt_response_no){
	struct BBDebugScope_4 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"Collisions",
		{
			{
				BBDEBUGDECL_LOCAL,
				"src_no",
				"i",
				.var_address=&bbt_src_no
			},
			{
				BBDEBUGDECL_LOCAL,
				"dest_no",
				"i",
				.var_address=&bbt_dest_no
			},
			{
				BBDEBUGDECL_LOCAL,
				"method_no",
				"i",
				.var_address=&bbt_method_no
			},
			{
				BBDEBUGDECL_LOCAL,
				"response_no",
				"i",
				.var_address=&bbt_response_no
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x7997c65814154ece, 1036, 0};
	bbOnDebugEnterStm(&__stmt_0);
	openb3d_openb3dcore_TGlobal3D_Collisions_i_iiii(bbt_src_no,bbt_dest_no,bbt_method_no,bbt_response_no);
	bbOnDebugLeaveScope();
	return 0;
}
struct openb3d_openb3dcore_TSurface_obj* openb3d_openb3dcore_CollisionSurface(struct openb3d_openb3dcore_TEntity_obj* bbt_ent,BBINT bbt_index){
	struct BBDebugScope_2 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"CollisionSurface",
		{
			{
				BBDEBUGDECL_LOCAL,
				"ent",
				":TEntity",
				.var_address=&bbt_ent
			},
			{
				BBDEBUGDECL_LOCAL,
				"index",
				"i",
				.var_address=&bbt_index
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x7997c65814154ece, 1058, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbOnDebugLeaveScope();
	return (struct openb3d_openb3dcore_TSurface_obj*)((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)bbt_ent))->clas->m_CollisionSurface_i((struct openb3d_openb3dcore_TEntity_obj*)bbt_ent,bbt_index);
}
BBFLOAT openb3d_openb3dcore_CollisionTime(struct openb3d_openb3dcore_TEntity_obj* bbt_ent,BBINT bbt_index){
	struct BBDebugScope_2 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"CollisionTime",
		{
			{
				BBDEBUGDECL_LOCAL,
				"ent",
				":TEntity",
				.var_address=&bbt_ent
			},
			{
				BBDEBUGDECL_LOCAL,
				"index",
				"i",
				.var_address=&bbt_index
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x7997c65814154ece, 1080, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbOnDebugLeaveScope();
	return ((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)bbt_ent))->clas->m_CollisionTime_i((struct openb3d_openb3dcore_TEntity_obj*)bbt_ent,bbt_index);
}
BBINT openb3d_openb3dcore_CollisionTriangle(struct openb3d_openb3dcore_TEntity_obj* bbt_ent,BBINT bbt_index){
	struct BBDebugScope_2 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"CollisionTriangle",
		{
			{
				BBDEBUGDECL_LOCAL,
				"ent",
				":TEntity",
				.var_address=&bbt_ent
			},
			{
				BBDEBUGDECL_LOCAL,
				"index",
				"i",
				.var_address=&bbt_index
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x7997c65814154ece, 1102, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbOnDebugLeaveScope();
	return ((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)bbt_ent))->clas->m_CollisionTriangle_i((struct openb3d_openb3dcore_TEntity_obj*)bbt_ent,bbt_index);
}
BBFLOAT openb3d_openb3dcore_CollisionX(struct openb3d_openb3dcore_TEntity_obj* bbt_ent,BBINT bbt_index){
	struct BBDebugScope_2 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"CollisionX",
		{
			{
				BBDEBUGDECL_LOCAL,
				"ent",
				":TEntity",
				.var_address=&bbt_ent
			},
			{
				BBDEBUGDECL_LOCAL,
				"index",
				"i",
				.var_address=&bbt_index
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x7997c65814154ece, 1124, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbOnDebugLeaveScope();
	return ((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)bbt_ent))->clas->m_CollisionX_i((struct openb3d_openb3dcore_TEntity_obj*)bbt_ent,bbt_index);
}
BBFLOAT openb3d_openb3dcore_CollisionY(struct openb3d_openb3dcore_TEntity_obj* bbt_ent,BBINT bbt_index){
	struct BBDebugScope_2 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"CollisionY",
		{
			{
				BBDEBUGDECL_LOCAL,
				"ent",
				":TEntity",
				.var_address=&bbt_ent
			},
			{
				BBDEBUGDECL_LOCAL,
				"index",
				"i",
				.var_address=&bbt_index
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x7997c65814154ece, 1146, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbOnDebugLeaveScope();
	return ((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)bbt_ent))->clas->m_CollisionY_i((struct openb3d_openb3dcore_TEntity_obj*)bbt_ent,bbt_index);
}
BBFLOAT openb3d_openb3dcore_CollisionZ(struct openb3d_openb3dcore_TEntity_obj* bbt_ent,BBINT bbt_index){
	struct BBDebugScope_2 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"CollisionZ",
		{
			{
				BBDEBUGDECL_LOCAL,
				"ent",
				":TEntity",
				.var_address=&bbt_ent
			},
			{
				BBDEBUGDECL_LOCAL,
				"index",
				"i",
				.var_address=&bbt_index
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x7997c65814154ece, 1168, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbOnDebugLeaveScope();
	return ((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)bbt_ent))->clas->m_CollisionZ_i((struct openb3d_openb3dcore_TEntity_obj*)bbt_ent,bbt_index);
}
struct openb3d_openb3dcore_TEntity_obj* openb3d_openb3dcore_CopyEntity(struct openb3d_openb3dcore_TEntity_obj* bbt_ent,struct openb3d_openb3dcore_TEntity_obj* bbt_parent){
	struct BBDebugScope_2 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"CopyEntity",
		{
			{
				BBDEBUGDECL_LOCAL,
				"ent",
				":TEntity",
				.var_address=&bbt_ent
			},
			{
				BBDEBUGDECL_LOCAL,
				"parent",
				":TEntity",
				.var_address=&bbt_parent
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x7997c65814154ece, 1188, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbOnDebugLeaveScope();
	return (struct openb3d_openb3dcore_TEntity_obj*)((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)bbt_ent))->clas->m_CopyEntity_TTEntity((struct openb3d_openb3dcore_TEntity_obj*)bbt_ent,(struct openb3d_openb3dcore_TEntity_obj*)bbt_parent);
}
struct openb3d_openb3dcore_TMesh_obj* openb3d_openb3dcore_CopyMesh(struct openb3d_openb3dcore_TMesh_obj* bbt_mesh,struct openb3d_openb3dcore_TEntity_obj* bbt_parent){
	struct BBDebugScope_2 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"CopyMesh",
		{
			{
				BBDEBUGDECL_LOCAL,
				"mesh",
				":TMesh",
				.var_address=&bbt_mesh
			},
			{
				BBDEBUGDECL_LOCAL,
				"parent",
				":TEntity",
				.var_address=&bbt_parent
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x7997c65814154ece, 1210, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbOnDebugLeaveScope();
	return (struct openb3d_openb3dcore_TMesh_obj*)((struct openb3d_openb3dcore_TMesh_obj*)bbNullObjectTest((BBObject*)bbt_mesh))->clas->m_CopyMesh_TTEntity((struct openb3d_openb3dcore_TMesh_obj*)bbt_mesh,(struct openb3d_openb3dcore_TEntity_obj*)bbt_parent);
}
BBINT openb3d_openb3dcore_CountChildren(struct openb3d_openb3dcore_TEntity_obj* bbt_ent){
	struct BBDebugScope_1 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"CountChildren",
		{
			{
				BBDEBUGDECL_LOCAL,
				"ent",
				":TEntity",
				.var_address=&bbt_ent
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x7997c65814154ece, 1226, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbOnDebugLeaveScope();
	return ((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)bbt_ent))->clas->m_CountChildren((struct openb3d_openb3dcore_TEntity_obj*)bbt_ent);
}
BBINT openb3d_openb3dcore_CountCollisions(struct openb3d_openb3dcore_TEntity_obj* bbt_ent){
	struct BBDebugScope_1 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"CountCollisions",
		{
			{
				BBDEBUGDECL_LOCAL,
				"ent",
				":TEntity",
				.var_address=&bbt_ent
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x7997c65814154ece, 1244, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbOnDebugLeaveScope();
	return ((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)bbt_ent))->clas->m_CountCollisions((struct openb3d_openb3dcore_TEntity_obj*)bbt_ent);
}
BBINT openb3d_openb3dcore_CountSurfaces(struct openb3d_openb3dcore_TMesh_obj* bbt_mesh){
	struct BBDebugScope_1 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"CountSurfaces",
		{
			{
				BBDEBUGDECL_LOCAL,
				"mesh",
				":TMesh",
				.var_address=&bbt_mesh
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x7997c65814154ece, 1264, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbOnDebugLeaveScope();
	return ((struct openb3d_openb3dcore_TMesh_obj*)bbNullObjectTest((BBObject*)bbt_mesh))->clas->m_CountSurfaces((struct openb3d_openb3dcore_TMesh_obj*)bbt_mesh);
}
BBINT openb3d_openb3dcore_CountTriangles(struct openb3d_openb3dcore_TSurface_obj* bbt_surf){
	struct BBDebugScope_1 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"CountTriangles",
		{
			{
				BBDEBUGDECL_LOCAL,
				"surf",
				":TSurface",
				.var_address=&bbt_surf
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x7997c65814154ece, 1280, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbOnDebugLeaveScope();
	return ((struct openb3d_openb3dcore_TSurface_obj*)bbNullObjectTest((BBObject*)bbt_surf))->clas->m_CountTriangles((struct openb3d_openb3dcore_TSurface_obj*)bbt_surf);
}
BBINT openb3d_openb3dcore_CountVertices(struct openb3d_openb3dcore_TSurface_obj* bbt_surf){
	struct BBDebugScope_1 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"CountVertices",
		{
			{
				BBDEBUGDECL_LOCAL,
				"surf",
				":TSurface",
				.var_address=&bbt_surf
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x7997c65814154ece, 1296, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbOnDebugLeaveScope();
	return ((struct openb3d_openb3dcore_TSurface_obj*)bbNullObjectTest((BBObject*)bbt_surf))->clas->m_CountVertices((struct openb3d_openb3dcore_TSurface_obj*)bbt_surf);
}
struct openb3d_openb3dcore_TBrush_obj* openb3d_openb3dcore_CreateBrush(BBFLOAT bbt_r,BBFLOAT bbt_g,BBFLOAT bbt_b){
	struct BBDebugScope_3 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"CreateBrush",
		{
			{
				BBDEBUGDECL_LOCAL,
				"r",
				"f",
				.var_address=&bbt_r
			},
			{
				BBDEBUGDECL_LOCAL,
				"g",
				"f",
				.var_address=&bbt_g
			},
			{
				BBDEBUGDECL_LOCAL,
				"b",
				"f",
				.var_address=&bbt_b
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x7997c65814154ece, 1324, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbOnDebugLeaveScope();
	return (struct openb3d_openb3dcore_TBrush_obj*)openb3d_openb3dcore_TBrush_CreateBrush_TTBrush_fff(bbt_r,bbt_g,bbt_b);
}
struct openb3d_openb3dcore_TCamera_obj* openb3d_openb3dcore_CreateCamera(struct openb3d_openb3dcore_TEntity_obj* bbt_parent){
	struct BBDebugScope_1 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"CreateCamera",
		{
			{
				BBDEBUGDECL_LOCAL,
				"parent",
				":TEntity",
				.var_address=&bbt_parent
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x7997c65814154ece, 1348, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbOnDebugLeaveScope();
	return (struct openb3d_openb3dcore_TCamera_obj*)openb3d_openb3dcore_TCamera_CreateCamera_TTCamera_TTEntity((struct openb3d_openb3dcore_TEntity_obj*)bbt_parent);
}
struct openb3d_openb3dcore_TMesh_obj* openb3d_openb3dcore_CreateCone(BBINT bbt_segments,BBINT bbt_solid,struct openb3d_openb3dcore_TEntity_obj* bbt_parent){
	struct BBDebugScope_3 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"CreateCone",
		{
			{
				BBDEBUGDECL_LOCAL,
				"segments",
				"i",
				.var_address=&bbt_segments
			},
			{
				BBDEBUGDECL_LOCAL,
				"solid",
				"i",
				.var_address=&bbt_solid
			},
			{
				BBDEBUGDECL_LOCAL,
				"parent",
				":TEntity",
				.var_address=&bbt_parent
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x7997c65814154ece, 1384, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbOnDebugLeaveScope();
	return (struct openb3d_openb3dcore_TMesh_obj*)openb3d_openb3dcore_TMesh_CreateCone_TTMesh_iiTTEntity(bbt_segments,bbt_solid,(struct openb3d_openb3dcore_TEntity_obj*)bbt_parent);
}
struct openb3d_openb3dcore_TMesh_obj* openb3d_openb3dcore_CreateCylinder(BBINT bbt_segments,BBINT bbt_solid,struct openb3d_openb3dcore_TEntity_obj* bbt_parent){
	struct BBDebugScope_3 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"CreateCylinder",
		{
			{
				BBDEBUGDECL_LOCAL,
				"segments",
				"i",
				.var_address=&bbt_segments
			},
			{
				BBDEBUGDECL_LOCAL,
				"solid",
				"i",
				.var_address=&bbt_solid
			},
			{
				BBDEBUGDECL_LOCAL,
				"parent",
				":TEntity",
				.var_address=&bbt_parent
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x7997c65814154ece, 1420, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbOnDebugLeaveScope();
	return (struct openb3d_openb3dcore_TMesh_obj*)openb3d_openb3dcore_TMesh_CreateCylinder_TTMesh_iiTTEntity(bbt_segments,bbt_solid,(struct openb3d_openb3dcore_TEntity_obj*)bbt_parent);
}
struct openb3d_openb3dcore_TMesh_obj* openb3d_openb3dcore_CreateCube(struct openb3d_openb3dcore_TEntity_obj* bbt_parent){
	struct BBDebugScope_1 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"CreateCube",
		{
			{
				BBDEBUGDECL_LOCAL,
				"parent",
				":TEntity",
				.var_address=&bbt_parent
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x7997c65814154ece, 1446, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbOnDebugLeaveScope();
	return (struct openb3d_openb3dcore_TMesh_obj*)openb3d_openb3dcore_TMesh_CreateCube_TTMesh_TTEntity((struct openb3d_openb3dcore_TEntity_obj*)bbt_parent);
}
struct openb3d_openb3dcore_TMesh_obj* openb3d_openb3dcore_CreateMesh(struct openb3d_openb3dcore_TEntity_obj* bbt_parent){
	struct BBDebugScope_1 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"CreateMesh",
		{
			{
				BBDEBUGDECL_LOCAL,
				"parent",
				":TEntity",
				.var_address=&bbt_parent
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x7997c65814154ece, 1470, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbOnDebugLeaveScope();
	return (struct openb3d_openb3dcore_TMesh_obj*)openb3d_openb3dcore_TMesh_CreateMesh_TTMesh_TTEntity((struct openb3d_openb3dcore_TEntity_obj*)bbt_parent);
}
struct openb3d_openb3dcore_TLight_obj* openb3d_openb3dcore_CreateLight(BBINT bbt_light_type,struct openb3d_openb3dcore_TEntity_obj* bbt_parent){
	struct BBDebugScope_2 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"CreateLight",
		{
			{
				BBDEBUGDECL_LOCAL,
				"light_type",
				"i",
				.var_address=&bbt_light_type
			},
			{
				BBDEBUGDECL_LOCAL,
				"parent",
				":TEntity",
				.var_address=&bbt_parent
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x7997c65814154ece, 1521, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbOnDebugLeaveScope();
	return (struct openb3d_openb3dcore_TLight_obj*)openb3d_openb3dcore_TLight_CreateLight_TTLight_iTTEntity(bbt_light_type,(struct openb3d_openb3dcore_TEntity_obj*)bbt_parent);
}
struct openb3d_openb3dcore_TPivot_obj* openb3d_openb3dcore_CreatePivot(struct openb3d_openb3dcore_TEntity_obj* bbt_parent){
	struct BBDebugScope_1 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"CreatePivot",
		{
			{
				BBDEBUGDECL_LOCAL,
				"parent",
				":TEntity",
				.var_address=&bbt_parent
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x7997c65814154ece, 1543, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbOnDebugLeaveScope();
	return (struct openb3d_openb3dcore_TPivot_obj*)openb3d_openb3dcore_TPivot_CreatePivot_TTPivot_TTEntity((struct openb3d_openb3dcore_TEntity_obj*)bbt_parent);
}
struct openb3d_openb3dcore_TMesh_obj* openb3d_openb3dcore_CreateSphere(BBINT bbt_segments,struct openb3d_openb3dcore_TEntity_obj* bbt_parent){
	struct BBDebugScope_2 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"CreateSphere",
		{
			{
				BBDEBUGDECL_LOCAL,
				"segments",
				"i",
				.var_address=&bbt_segments
			},
			{
				BBDEBUGDECL_LOCAL,
				"parent",
				":TEntity",
				.var_address=&bbt_parent
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x7997c65814154ece, 1576, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbOnDebugLeaveScope();
	return (struct openb3d_openb3dcore_TMesh_obj*)openb3d_openb3dcore_TMesh_CreateSphere_TTMesh_iTTEntity(bbt_segments,(struct openb3d_openb3dcore_TEntity_obj*)bbt_parent);
}
struct openb3d_openb3dcore_TSprite_obj* openb3d_openb3dcore_CreateSprite(struct openb3d_openb3dcore_TEntity_obj* bbt_parent){
	struct BBDebugScope_1 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"CreateSprite",
		{
			{
				BBDEBUGDECL_LOCAL,
				"parent",
				":TEntity",
				.var_address=&bbt_parent
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x7997c65814154ece, 1606, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbOnDebugLeaveScope();
	return (struct openb3d_openb3dcore_TSprite_obj*)openb3d_openb3dcore_TSprite_CreateSprite_TTSprite_TTEntity((struct openb3d_openb3dcore_TEntity_obj*)bbt_parent);
}
struct openb3d_openb3dcore_TSurface_obj* openb3d_openb3dcore_CreateSurface(struct openb3d_openb3dcore_TMesh_obj* bbt_mesh,struct openb3d_openb3dcore_TBrush_obj* bbt_brush){
	struct BBDebugScope_2 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"CreateSurface",
		{
			{
				BBDEBUGDECL_LOCAL,
				"mesh",
				":TMesh",
				.var_address=&bbt_mesh
			},
			{
				BBDEBUGDECL_LOCAL,
				"brush",
				":TBrush",
				.var_address=&bbt_brush
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x7997c65814154ece, 1626, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbOnDebugLeaveScope();
	return (struct openb3d_openb3dcore_TSurface_obj*)openb3d_openb3dcore_TSurface_CreateSurface_TTSurface_TTMeshTTBrush((struct openb3d_openb3dcore_TMesh_obj*)bbt_mesh,(struct openb3d_openb3dcore_TBrush_obj*)bbt_brush);
}
struct openb3d_openb3dcore_TTexture_obj* openb3d_openb3dcore_CreateTexture(BBINT bbt_width,BBINT bbt_height,BBINT bbt_flags,BBINT bbt_frames){
	struct BBDebugScope_4 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"CreateTexture",
		{
			{
				BBDEBUGDECL_LOCAL,
				"width",
				"i",
				.var_address=&bbt_width
			},
			{
				BBDEBUGDECL_LOCAL,
				"height",
				"i",
				.var_address=&bbt_height
			},
			{
				BBDEBUGDECL_LOCAL,
				"flags",
				"i",
				.var_address=&bbt_flags
			},
			{
				BBDEBUGDECL_LOCAL,
				"frames",
				"i",
				.var_address=&bbt_frames
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x7997c65814154ece, 1706, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbOnDebugLeaveScope();
	return (struct openb3d_openb3dcore_TTexture_obj*)openb3d_openb3dcore_TTexture_CreateTexture_TTTexture_iiii(bbt_width,bbt_height,bbt_flags,bbt_frames);
}
BBFLOAT openb3d_openb3dcore_DeltaPitch(struct openb3d_openb3dcore_TEntity_obj* bbt_ent1,struct openb3d_openb3dcore_TEntity_obj* bbt_ent2){
	struct BBDebugScope_2 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"DeltaPitch",
		{
			{
				BBDEBUGDECL_LOCAL,
				"ent1",
				":TEntity",
				.var_address=&bbt_ent1
			},
			{
				BBDEBUGDECL_LOCAL,
				"ent2",
				":TEntity",
				.var_address=&bbt_ent2
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x7997c65814154ece, 1728, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbOnDebugLeaveScope();
	return ((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)bbt_ent1))->clas->m_DeltaPitch_TTEntity((struct openb3d_openb3dcore_TEntity_obj*)bbt_ent1,(struct openb3d_openb3dcore_TEntity_obj*)bbt_ent2);
}
BBFLOAT openb3d_openb3dcore_DeltaYaw(struct openb3d_openb3dcore_TEntity_obj* bbt_ent1,struct openb3d_openb3dcore_TEntity_obj* bbt_ent2){
	struct BBDebugScope_2 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"DeltaYaw",
		{
			{
				BBDEBUGDECL_LOCAL,
				"ent1",
				":TEntity",
				.var_address=&bbt_ent1
			},
			{
				BBDEBUGDECL_LOCAL,
				"ent2",
				":TEntity",
				.var_address=&bbt_ent2
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x7997c65814154ece, 1750, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbOnDebugLeaveScope();
	return ((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)bbt_ent1))->clas->m_DeltaYaw_TTEntity((struct openb3d_openb3dcore_TEntity_obj*)bbt_ent1,(struct openb3d_openb3dcore_TEntity_obj*)bbt_ent2);
}
BBINT openb3d_openb3dcore_EntityAlpha(struct openb3d_openb3dcore_TEntity_obj* bbt_ent,BBFLOAT bbt_alpha){
	struct BBDebugScope_2 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"EntityAlpha",
		{
			{
				BBDEBUGDECL_LOCAL,
				"ent",
				":TEntity",
				.var_address=&bbt_ent
			},
			{
				BBDEBUGDECL_LOCAL,
				"alpha",
				"f",
				.var_address=&bbt_alpha
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x7997c65814154ece, 1774, 0};
	bbOnDebugEnterStm(&__stmt_0);
	((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)bbt_ent))->clas->m_EntityAlpha_f((struct openb3d_openb3dcore_TEntity_obj*)bbt_ent,bbt_alpha);
	bbOnDebugLeaveScope();
	return 0;
}
BBINT openb3d_openb3dcore_EntityBlend(struct openb3d_openb3dcore_TEntity_obj* bbt_ent,BBINT bbt_blend){
	struct BBDebugScope_2 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"EntityBlend",
		{
			{
				BBDEBUGDECL_LOCAL,
				"ent",
				":TEntity",
				.var_address=&bbt_ent
			},
			{
				BBDEBUGDECL_LOCAL,
				"blend",
				"i",
				.var_address=&bbt_blend
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x7997c65814154ece, 1846, 0};
	bbOnDebugEnterStm(&__stmt_0);
	((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)bbt_ent))->clas->m_EntityBlend_i((struct openb3d_openb3dcore_TEntity_obj*)bbt_ent,bbt_blend);
	bbOnDebugLeaveScope();
	return 0;
}
BBINT openb3d_openb3dcore_EntityBox(struct openb3d_openb3dcore_TEntity_obj* bbt_ent,BBFLOAT bbt_x,BBFLOAT bbt_y,BBFLOAT bbt_z,BBFLOAT bbt_w,BBFLOAT bbt_h,BBFLOAT bbt_d){
	struct BBDebugScope_7 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"EntityBox",
		{
			{
				BBDEBUGDECL_LOCAL,
				"ent",
				":TEntity",
				.var_address=&bbt_ent
			},
			{
				BBDEBUGDECL_LOCAL,
				"x",
				"f",
				.var_address=&bbt_x
			},
			{
				BBDEBUGDECL_LOCAL,
				"y",
				"f",
				.var_address=&bbt_y
			},
			{
				BBDEBUGDECL_LOCAL,
				"z",
				"f",
				.var_address=&bbt_z
			},
			{
				BBDEBUGDECL_LOCAL,
				"w",
				"f",
				.var_address=&bbt_w
			},
			{
				BBDEBUGDECL_LOCAL,
				"h",
				"f",
				.var_address=&bbt_h
			},
			{
				BBDEBUGDECL_LOCAL,
				"d",
				"f",
				.var_address=&bbt_d
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x7997c65814154ece, 1876, 0};
	bbOnDebugEnterStm(&__stmt_0);
	((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)bbt_ent))->clas->m_EntityBox_ffffff((struct openb3d_openb3dcore_TEntity_obj*)bbt_ent,bbt_x,bbt_y,bbt_z,bbt_w,bbt_h,bbt_d);
	bbOnDebugLeaveScope();
	return 0;
}
BBSTRING openb3d_openb3dcore_EntityClass(struct openb3d_openb3dcore_TEntity_obj* bbt_ent){
	struct BBDebugScope_1 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"EntityClass",
		{
			{
				BBDEBUGDECL_LOCAL,
				"ent",
				":TEntity",
				.var_address=&bbt_ent
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x7997c65814154ece, 1908, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbOnDebugLeaveScope();
	return ((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)bbt_ent))->clas->m_EntityClass((struct openb3d_openb3dcore_TEntity_obj*)bbt_ent);
}
struct openb3d_openb3dcore_TEntity_obj* openb3d_openb3dcore_EntityCollided(struct openb3d_openb3dcore_TEntity_obj* bbt_ent,BBINT bbt_type_no){
	struct BBDebugScope_2 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"EntityCollided",
		{
			{
				BBDEBUGDECL_LOCAL,
				"ent",
				":TEntity",
				.var_address=&bbt_ent
			},
			{
				BBDEBUGDECL_LOCAL,
				"type_no",
				"i",
				.var_address=&bbt_type_no
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x7997c65814154ece, 1928, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbOnDebugLeaveScope();
	return (struct openb3d_openb3dcore_TEntity_obj*)((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)bbt_ent))->clas->m_EntityCollided_i((struct openb3d_openb3dcore_TEntity_obj*)bbt_ent,bbt_type_no);
}
BBINT openb3d_openb3dcore_EntityColor(struct openb3d_openb3dcore_TEntity_obj* bbt_ent,BBFLOAT bbt_red,BBFLOAT bbt_green,BBFLOAT bbt_blue,BBINT bbt_recursive){
	struct BBDebugScope_5 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"EntityColor",
		{
			{
				BBDEBUGDECL_LOCAL,
				"ent",
				":TEntity",
				.var_address=&bbt_ent
			},
			{
				BBDEBUGDECL_LOCAL,
				"red",
				"f",
				.var_address=&bbt_red
			},
			{
				BBDEBUGDECL_LOCAL,
				"green",
				"f",
				.var_address=&bbt_green
			},
			{
				BBDEBUGDECL_LOCAL,
				"blue",
				"f",
				.var_address=&bbt_blue
			},
			{
				BBDEBUGDECL_LOCAL,
				"recursive",
				"i",
				.var_address=&bbt_recursive
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x7997c65814154ece, 1952, 0};
	bbOnDebugEnterStm(&__stmt_0);
	((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)bbt_ent))->clas->m_EntityColor_fffi((struct openb3d_openb3dcore_TEntity_obj*)bbt_ent,bbt_red,bbt_green,bbt_blue,bbt_recursive);
	bbOnDebugLeaveScope();
	return 0;
}
BBFLOAT openb3d_openb3dcore_EntityDistance(struct openb3d_openb3dcore_TEntity_obj* bbt_ent1,struct openb3d_openb3dcore_TEntity_obj* bbt_ent2){
	struct BBDebugScope_2 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"EntityDistance",
		{
			{
				BBDEBUGDECL_LOCAL,
				"ent1",
				":TEntity",
				.var_address=&bbt_ent1
			},
			{
				BBDEBUGDECL_LOCAL,
				"ent2",
				":TEntity",
				.var_address=&bbt_ent2
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x7997c65814154ece, 1970, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbOnDebugLeaveScope();
	return ((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)bbt_ent1))->clas->m_EntityDistance_TTEntity((struct openb3d_openb3dcore_TEntity_obj*)bbt_ent1,(struct openb3d_openb3dcore_TEntity_obj*)bbt_ent2);
}
BBINT openb3d_openb3dcore_EntityFX(struct openb3d_openb3dcore_TEntity_obj* bbt_ent,BBINT bbt_fx){
	struct BBDebugScope_2 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"EntityFX",
		{
			{
				BBDEBUGDECL_LOCAL,
				"ent",
				":TEntity",
				.var_address=&bbt_ent
			},
			{
				BBDEBUGDECL_LOCAL,
				"fx",
				"i",
				.var_address=&bbt_fx
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x7997c65814154ece, 2009, 0};
	bbOnDebugEnterStm(&__stmt_0);
	((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)bbt_ent))->clas->m_EntityFX_i((struct openb3d_openb3dcore_TEntity_obj*)bbt_ent,bbt_fx);
	bbOnDebugLeaveScope();
	return 0;
}
BBINT openb3d_openb3dcore_EntityInView(struct openb3d_openb3dcore_TEntity_obj* bbt_ent,struct openb3d_openb3dcore_TCamera_obj* bbt_cam){
	struct BBDebugScope_2 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"EntityInView",
		{
			{
				BBDEBUGDECL_LOCAL,
				"ent",
				":TEntity",
				.var_address=&bbt_ent
			},
			{
				BBDEBUGDECL_LOCAL,
				"cam",
				":TCamera",
				.var_address=&bbt_cam
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x7997c65814154ece, 2031, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbOnDebugLeaveScope();
	return ((struct openb3d_openb3dcore_TCamera_obj*)bbNullObjectTest((BBObject*)bbt_cam))->clas->m_EntityInView_TTEntity((struct openb3d_openb3dcore_TCamera_obj*)bbt_cam,(struct openb3d_openb3dcore_TEntity_obj*)bbt_ent);
}
BBSTRING openb3d_openb3dcore_EntityName(struct openb3d_openb3dcore_TEntity_obj* bbt_ent){
	struct BBDebugScope_1 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"EntityName",
		{
			{
				BBDEBUGDECL_LOCAL,
				"ent",
				":TEntity",
				.var_address=&bbt_ent
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x7997c65814154ece, 2049, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbOnDebugLeaveScope();
	return ((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)bbt_ent))->clas->m_EntityName((struct openb3d_openb3dcore_TEntity_obj*)bbt_ent);
}
BBINT openb3d_openb3dcore_EntityOrder(struct openb3d_openb3dcore_TEntity_obj* bbt_ent,BBINT bbt_order){
	struct BBDebugScope_2 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"EntityOrder",
		{
			{
				BBDEBUGDECL_LOCAL,
				"ent",
				":TEntity",
				.var_address=&bbt_ent
			},
			{
				BBDEBUGDECL_LOCAL,
				"order",
				"i",
				.var_address=&bbt_order
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x7997c65814154ece, 2073, 0};
	bbOnDebugEnterStm(&__stmt_0);
	((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)bbt_ent))->clas->m_EntityOrder_i((struct openb3d_openb3dcore_TEntity_obj*)bbt_ent,bbt_order);
	bbOnDebugLeaveScope();
	return 0;
}
BBINT openb3d_openb3dcore_EntityParent(struct openb3d_openb3dcore_TEntity_obj* bbt_ent,struct openb3d_openb3dcore_TEntity_obj* bbt_parent_ent,BBINT bbt_glob){
	struct BBDebugScope_3 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"EntityParent",
		{
			{
				BBDEBUGDECL_LOCAL,
				"ent",
				":TEntity",
				.var_address=&bbt_ent
			},
			{
				BBDEBUGDECL_LOCAL,
				"parent_ent",
				":TEntity",
				.var_address=&bbt_parent_ent
			},
			{
				BBDEBUGDECL_LOCAL,
				"glob",
				"i",
				.var_address=&bbt_glob
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x7997c65814154ece, 2095, 0};
	bbOnDebugEnterStm(&__stmt_0);
	((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)bbt_ent))->clas->m_EntityParent_TTEntityi((struct openb3d_openb3dcore_TEntity_obj*)bbt_ent,(struct openb3d_openb3dcore_TEntity_obj*)bbt_parent_ent,bbt_glob);
	bbOnDebugLeaveScope();
	return 0;
}
struct openb3d_openb3dcore_TEntity_obj* openb3d_openb3dcore_EntityPick(struct openb3d_openb3dcore_TEntity_obj* bbt_ent,BBFLOAT bbt_Range){
	struct BBDebugScope_2 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"EntityPick",
		{
			{
				BBDEBUGDECL_LOCAL,
				"ent",
				":TEntity",
				.var_address=&bbt_ent
			},
			{
				BBDEBUGDECL_LOCAL,
				"Range",
				"f",
				.var_address=&bbt_Range
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x7997c65814154ece, 2115, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbOnDebugLeaveScope();
	return (struct openb3d_openb3dcore_TEntity_obj*)((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)bbt_ent))->clas->m_EntityPick_f((struct openb3d_openb3dcore_TEntity_obj*)bbt_ent,bbt_Range);
}
BBINT openb3d_openb3dcore_EntityPickMode(struct openb3d_openb3dcore_TEntity_obj* bbt_ent,BBINT bbt_pick_mode,BBINT bbt_obscurer){
	struct BBDebugScope_3 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"EntityPickMode",
		{
			{
				BBDEBUGDECL_LOCAL,
				"ent",
				":TEntity",
				.var_address=&bbt_ent
			},
			{
				BBDEBUGDECL_LOCAL,
				"pick_mode",
				"i",
				.var_address=&bbt_pick_mode
			},
			{
				BBDEBUGDECL_LOCAL,
				"obscurer",
				"i",
				.var_address=&bbt_obscurer
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x7997c65814154ece, 2151, 0};
	bbOnDebugEnterStm(&__stmt_0);
	((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)bbt_ent))->clas->m_EntityPickMode_ii((struct openb3d_openb3dcore_TEntity_obj*)bbt_ent,bbt_pick_mode,bbt_obscurer);
	bbOnDebugLeaveScope();
	return 0;
}
BBFLOAT openb3d_openb3dcore_EntityPitch(struct openb3d_openb3dcore_TEntity_obj* bbt_ent,BBINT bbt_glob){
	struct BBDebugScope_2 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"EntityPitch",
		{
			{
				BBDEBUGDECL_LOCAL,
				"ent",
				":TEntity",
				.var_address=&bbt_ent
			},
			{
				BBDEBUGDECL_LOCAL,
				"glob",
				"i",
				.var_address=&bbt_glob
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x7997c65814154ece, 2171, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbOnDebugLeaveScope();
	return ((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)bbt_ent))->clas->m_EntityPitch_i((struct openb3d_openb3dcore_TEntity_obj*)bbt_ent,bbt_glob);
}
BBINT openb3d_openb3dcore_EntityRadius(struct openb3d_openb3dcore_TEntity_obj* bbt_ent,BBFLOAT bbt_radius_x,BBFLOAT bbt_radius_y){
	struct BBDebugScope_3 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"EntityRadius",
		{
			{
				BBDEBUGDECL_LOCAL,
				"ent",
				":TEntity",
				.var_address=&bbt_ent
			},
			{
				BBDEBUGDECL_LOCAL,
				"radius_x",
				"f",
				.var_address=&bbt_radius_x
			},
			{
				BBDEBUGDECL_LOCAL,
				"radius_y",
				"f",
				.var_address=&bbt_radius_y
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x7997c65814154ece, 2195, 0};
	bbOnDebugEnterStm(&__stmt_0);
	((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)bbt_ent))->clas->m_EntityRadius_ff((struct openb3d_openb3dcore_TEntity_obj*)bbt_ent,bbt_radius_x,bbt_radius_y);
	bbOnDebugLeaveScope();
	return 0;
}
BBFLOAT openb3d_openb3dcore_EntityRoll(struct openb3d_openb3dcore_TEntity_obj* bbt_ent,BBINT bbt_glob){
	struct BBDebugScope_2 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"EntityRoll",
		{
			{
				BBDEBUGDECL_LOCAL,
				"ent",
				":TEntity",
				.var_address=&bbt_ent
			},
			{
				BBDEBUGDECL_LOCAL,
				"glob",
				"i",
				.var_address=&bbt_glob
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x7997c65814154ece, 2215, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbOnDebugLeaveScope();
	return ((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)bbt_ent))->clas->m_EntityRoll_i((struct openb3d_openb3dcore_TEntity_obj*)bbt_ent,bbt_glob);
}
BBINT openb3d_openb3dcore_EntityShininess(struct openb3d_openb3dcore_TEntity_obj* bbt_ent,BBFLOAT bbt_shine){
	struct BBDebugScope_2 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"EntityShininess",
		{
			{
				BBDEBUGDECL_LOCAL,
				"ent",
				":TEntity",
				.var_address=&bbt_ent
			},
			{
				BBDEBUGDECL_LOCAL,
				"shine",
				"f",
				.var_address=&bbt_shine
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x7997c65814154ece, 2239, 0};
	bbOnDebugEnterStm(&__stmt_0);
	((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)bbt_ent))->clas->m_EntityShininess_f((struct openb3d_openb3dcore_TEntity_obj*)bbt_ent,bbt_shine);
	bbOnDebugLeaveScope();
	return 0;
}
BBINT openb3d_openb3dcore_EntityTexture(struct openb3d_openb3dcore_TEntity_obj* bbt_ent,struct openb3d_openb3dcore_TTexture_obj* bbt_tex,BBINT bbt_frame,BBINT bbt_index){
	struct BBDebugScope_4 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"EntityTexture",
		{
			{
				BBDEBUGDECL_LOCAL,
				"ent",
				":TEntity",
				.var_address=&bbt_ent
			},
			{
				BBDEBUGDECL_LOCAL,
				"tex",
				":TTexture",
				.var_address=&bbt_tex
			},
			{
				BBDEBUGDECL_LOCAL,
				"frame",
				"i",
				.var_address=&bbt_frame
			},
			{
				BBDEBUGDECL_LOCAL,
				"index",
				"i",
				.var_address=&bbt_index
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x7997c65814154ece, 2267, 0};
	bbOnDebugEnterStm(&__stmt_0);
	((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)bbt_ent))->clas->m_EntityTexture_TTTextureii((struct openb3d_openb3dcore_TEntity_obj*)bbt_ent,(struct openb3d_openb3dcore_TTexture_obj*)bbt_tex,bbt_frame,bbt_index);
	bbOnDebugLeaveScope();
	return 0;
}
BBINT openb3d_openb3dcore_EntityType(struct openb3d_openb3dcore_TEntity_obj* bbt_ent,BBINT bbt_type_no,BBINT bbt_recursive){
	struct BBDebugScope_3 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"EntityType",
		{
			{
				BBDEBUGDECL_LOCAL,
				"ent",
				":TEntity",
				.var_address=&bbt_ent
			},
			{
				BBDEBUGDECL_LOCAL,
				"type_no",
				"i",
				.var_address=&bbt_type_no
			},
			{
				BBDEBUGDECL_LOCAL,
				"recursive",
				"i",
				.var_address=&bbt_recursive
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x7997c65814154ece, 2291, 0};
	bbOnDebugEnterStm(&__stmt_0);
	((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)bbt_ent))->clas->m_EntityType_ii((struct openb3d_openb3dcore_TEntity_obj*)bbt_ent,bbt_type_no,bbt_recursive);
	bbOnDebugLeaveScope();
	return 0;
}
BBINT openb3d_openb3dcore_EntityVisible(struct openb3d_openb3dcore_TEntity_obj* bbt_src_ent,struct openb3d_openb3dcore_TEntity_obj* bbt_dest_ent){
	struct BBDebugScope_2 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"EntityVisible",
		{
			{
				BBDEBUGDECL_LOCAL,
				"src_ent",
				":TEntity",
				.var_address=&bbt_src_ent
			},
			{
				BBDEBUGDECL_LOCAL,
				"dest_ent",
				":TEntity",
				.var_address=&bbt_dest_ent
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x7997c65814154ece, 2309, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbOnDebugLeaveScope();
	return openb3d_openb3dcore_TPick_EntityVisible_i_TTEntityTTEntity((struct openb3d_openb3dcore_TEntity_obj*)bbt_src_ent,(struct openb3d_openb3dcore_TEntity_obj*)bbt_dest_ent);
}
BBFLOAT openb3d_openb3dcore_EntityX(struct openb3d_openb3dcore_TEntity_obj* bbt_ent,BBINT bbt_glob){
	struct BBDebugScope_2 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"EntityX",
		{
			{
				BBDEBUGDECL_LOCAL,
				"ent",
				":TEntity",
				.var_address=&bbt_ent
			},
			{
				BBDEBUGDECL_LOCAL,
				"glob",
				"i",
				.var_address=&bbt_glob
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x7997c65814154ece, 2348, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbOnDebugLeaveScope();
	return ((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)bbt_ent))->clas->m_EntityX_i((struct openb3d_openb3dcore_TEntity_obj*)bbt_ent,bbt_glob);
}
BBFLOAT openb3d_openb3dcore_EntityY(struct openb3d_openb3dcore_TEntity_obj* bbt_ent,BBINT bbt_glob){
	struct BBDebugScope_2 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"EntityY",
		{
			{
				BBDEBUGDECL_LOCAL,
				"ent",
				":TEntity",
				.var_address=&bbt_ent
			},
			{
				BBDEBUGDECL_LOCAL,
				"glob",
				"i",
				.var_address=&bbt_glob
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x7997c65814154ece, 2369, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbOnDebugLeaveScope();
	return ((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)bbt_ent))->clas->m_EntityY_i((struct openb3d_openb3dcore_TEntity_obj*)bbt_ent,bbt_glob);
}
BBFLOAT openb3d_openb3dcore_EntityYaw(struct openb3d_openb3dcore_TEntity_obj* bbt_ent,BBINT bbt_glob){
	struct BBDebugScope_2 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"EntityYaw",
		{
			{
				BBDEBUGDECL_LOCAL,
				"ent",
				":TEntity",
				.var_address=&bbt_ent
			},
			{
				BBDEBUGDECL_LOCAL,
				"glob",
				"i",
				.var_address=&bbt_glob
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x7997c65814154ece, 2389, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbOnDebugLeaveScope();
	return ((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)bbt_ent))->clas->m_EntityYaw_i((struct openb3d_openb3dcore_TEntity_obj*)bbt_ent,bbt_glob);
}
BBFLOAT openb3d_openb3dcore_EntityZ(struct openb3d_openb3dcore_TEntity_obj* bbt_ent,BBINT bbt_glob){
	struct BBDebugScope_2 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"EntityZ",
		{
			{
				BBDEBUGDECL_LOCAL,
				"ent",
				":TEntity",
				.var_address=&bbt_ent
			},
			{
				BBDEBUGDECL_LOCAL,
				"glob",
				"i",
				.var_address=&bbt_glob
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x7997c65814154ece, 2410, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbOnDebugLeaveScope();
	return ((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)bbt_ent))->clas->m_EntityZ_i((struct openb3d_openb3dcore_TEntity_obj*)bbt_ent,bbt_glob);
}
BBINT openb3d_openb3dcore_ExtractAnimSeq(struct openb3d_openb3dcore_TEntity_obj* bbt_ent,BBINT bbt_first_frame,BBINT bbt_last_frame,BBINT bbt_seq){
	struct BBDebugScope_4 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"ExtractAnimSeq",
		{
			{
				BBDEBUGDECL_LOCAL,
				"ent",
				":TEntity",
				.var_address=&bbt_ent
			},
			{
				BBDEBUGDECL_LOCAL,
				"first_frame",
				"i",
				.var_address=&bbt_first_frame
			},
			{
				BBDEBUGDECL_LOCAL,
				"last_frame",
				"i",
				.var_address=&bbt_last_frame
			},
			{
				BBDEBUGDECL_LOCAL,
				"seq",
				"i",
				.var_address=&bbt_seq
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x7997c65814154ece, 2432, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbOnDebugLeaveScope();
	return ((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)bbt_ent))->clas->m_ExtractAnimSeq_iii((struct openb3d_openb3dcore_TEntity_obj*)bbt_ent,bbt_first_frame,bbt_last_frame,bbt_seq);
}
struct openb3d_openb3dcore_TEntity_obj* openb3d_openb3dcore_FindChild(struct openb3d_openb3dcore_TEntity_obj* bbt_ent,BBSTRING bbt_child_name){
	struct BBDebugScope_2 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"FindChild",
		{
			{
				BBDEBUGDECL_LOCAL,
				"ent",
				":TEntity",
				.var_address=&bbt_ent
			},
			{
				BBDEBUGDECL_LOCAL,
				"child_name",
				"$",
				.var_address=&bbt_child_name
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x7997c65814154ece, 2450, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbOnDebugLeaveScope();
	return (struct openb3d_openb3dcore_TEntity_obj*)((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)bbt_ent))->clas->m_FindChild_S((struct openb3d_openb3dcore_TEntity_obj*)bbt_ent,bbt_child_name);
}
struct openb3d_openb3dcore_TSurface_obj* openb3d_openb3dcore_FindSurface(struct openb3d_openb3dcore_TMesh_obj* bbt_mesh,struct openb3d_openb3dcore_TBrush_obj* bbt_brush){
	struct BBDebugScope_2 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"FindSurface",
		{
			{
				BBDEBUGDECL_LOCAL,
				"mesh",
				":TMesh",
				.var_address=&bbt_mesh
			},
			{
				BBDEBUGDECL_LOCAL,
				"brush",
				":TBrush",
				.var_address=&bbt_brush
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x7997c65814154ece, 2470, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbOnDebugLeaveScope();
	return (struct openb3d_openb3dcore_TSurface_obj*)((struct openb3d_openb3dcore_TMesh_obj*)bbNullObjectTest((BBObject*)bbt_mesh))->clas->m_FindSurface_TTBrush((struct openb3d_openb3dcore_TMesh_obj*)bbt_mesh,(struct openb3d_openb3dcore_TBrush_obj*)bbt_brush);
}
BBINT openb3d_openb3dcore_FitMesh(struct openb3d_openb3dcore_TMesh_obj* bbt_mesh,BBFLOAT bbt_x,BBFLOAT bbt_y,BBFLOAT bbt_z,BBFLOAT bbt_width,BBFLOAT bbt_height,BBFLOAT bbt_depth,BBINT bbt_uniform){
	struct BBDebugScope_8 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"FitMesh",
		{
			{
				BBDEBUGDECL_LOCAL,
				"mesh",
				":TMesh",
				.var_address=&bbt_mesh
			},
			{
				BBDEBUGDECL_LOCAL,
				"x",
				"f",
				.var_address=&bbt_x
			},
			{
				BBDEBUGDECL_LOCAL,
				"y",
				"f",
				.var_address=&bbt_y
			},
			{
				BBDEBUGDECL_LOCAL,
				"z",
				"f",
				.var_address=&bbt_z
			},
			{
				BBDEBUGDECL_LOCAL,
				"width",
				"f",
				.var_address=&bbt_width
			},
			{
				BBDEBUGDECL_LOCAL,
				"height",
				"f",
				.var_address=&bbt_height
			},
			{
				BBDEBUGDECL_LOCAL,
				"depth",
				"f",
				.var_address=&bbt_depth
			},
			{
				BBDEBUGDECL_LOCAL,
				"uniform",
				"i",
				.var_address=&bbt_uniform
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x7997c65814154ece, 2504, 0};
	bbOnDebugEnterStm(&__stmt_0);
	((struct openb3d_openb3dcore_TMesh_obj*)bbNullObjectTest((BBObject*)bbt_mesh))->clas->m_FitMesh_ffffffi((struct openb3d_openb3dcore_TMesh_obj*)bbt_mesh,bbt_x,bbt_y,bbt_z,bbt_width,bbt_height,bbt_depth,bbt_uniform);
	bbOnDebugLeaveScope();
	return 0;
}
BBINT openb3d_openb3dcore_FlipMesh(struct openb3d_openb3dcore_TMesh_obj* bbt_mesh){
	struct BBDebugScope_1 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"FlipMesh",
		{
			{
				BBDEBUGDECL_LOCAL,
				"mesh",
				":TMesh",
				.var_address=&bbt_mesh
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x7997c65814154ece, 2528, 0};
	bbOnDebugEnterStm(&__stmt_0);
	((struct openb3d_openb3dcore_TMesh_obj*)bbNullObjectTest((BBObject*)bbt_mesh))->clas->m_FlipMesh((struct openb3d_openb3dcore_TMesh_obj*)bbt_mesh);
	bbOnDebugLeaveScope();
	return 0;
}
BBINT openb3d_openb3dcore_FreeBrush(struct openb3d_openb3dcore_TBrush_obj* bbt_brush){
	struct BBDebugScope_1 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"FreeBrush",
		{
			{
				BBDEBUGDECL_LOCAL,
				"brush",
				":TBrush",
				.var_address=&bbt_brush
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x7997c65814154ece, 2544, 0};
	bbOnDebugEnterStm(&__stmt_0);
	((struct openb3d_openb3dcore_TBrush_obj*)bbNullObjectTest((BBObject*)bbt_brush))->clas->m_FreeBrush((struct openb3d_openb3dcore_TBrush_obj*)bbt_brush);
	bbOnDebugLeaveScope();
	return 0;
}
BBINT openb3d_openb3dcore_FreeEntity(struct openb3d_openb3dcore_TEntity_obj* bbt_ent){
	struct BBDebugScope_1 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"FreeEntity",
		{
			{
				BBDEBUGDECL_LOCAL,
				"ent",
				":TEntity",
				.var_address=&bbt_ent
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x7997c65814154ece, 2564, 0};
	bbOnDebugEnterStm(&__stmt_0);
	((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)bbt_ent))->clas->m_FreeEntity((struct openb3d_openb3dcore_TEntity_obj*)bbt_ent);
	bbOnDebugLeaveScope();
	return 0;
}
BBINT openb3d_openb3dcore_FreeTexture(struct openb3d_openb3dcore_TTexture_obj* bbt_tex){
	struct BBDebugScope_1 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"FreeTexture",
		{
			{
				BBDEBUGDECL_LOCAL,
				"tex",
				":TTexture",
				.var_address=&bbt_tex
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x7997c65814154ece, 2582, 0};
	bbOnDebugEnterStm(&__stmt_0);
	((struct openb3d_openb3dcore_TTexture_obj*)bbNullObjectTest((BBObject*)bbt_tex))->clas->m_FreeTexture((struct openb3d_openb3dcore_TTexture_obj*)bbt_tex);
	bbOnDebugLeaveScope();
	return 0;
}
struct openb3d_openb3dcore_TTexture_obj* openb3d_openb3dcore_GetBrushTexture(struct openb3d_openb3dcore_TBrush_obj* bbt_brush,BBINT bbt_index){
	struct BBDebugScope_2 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"GetBrushTexture",
		{
			{
				BBDEBUGDECL_LOCAL,
				"brush",
				":TBrush",
				.var_address=&bbt_brush
			},
			{
				BBDEBUGDECL_LOCAL,
				"index",
				"i",
				.var_address=&bbt_index
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x7997c65814154ece, 2608, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbOnDebugLeaveScope();
	return (struct openb3d_openb3dcore_TTexture_obj*)((struct openb3d_openb3dcore_TBrush_obj*)bbNullObjectTest((BBObject*)bbt_brush))->clas->m_GetBrushTexture_i((struct openb3d_openb3dcore_TBrush_obj*)bbt_brush,bbt_index);
}
struct openb3d_openb3dcore_TEntity_obj* openb3d_openb3dcore_GetChild(struct openb3d_openb3dcore_TEntity_obj* bbt_ent,BBINT bbt_child_no){
	struct BBDebugScope_2 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"GetChild",
		{
			{
				BBDEBUGDECL_LOCAL,
				"ent",
				":TEntity",
				.var_address=&bbt_ent
			},
			{
				BBDEBUGDECL_LOCAL,
				"child_no",
				"i",
				.var_address=&bbt_child_no
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x7997c65814154ece, 2626, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbOnDebugLeaveScope();
	return (struct openb3d_openb3dcore_TEntity_obj*)((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)bbt_ent))->clas->m_GetChild_i((struct openb3d_openb3dcore_TEntity_obj*)bbt_ent,bbt_child_no);
}
struct openb3d_openb3dcore_TBrush_obj* openb3d_openb3dcore_GetEntityBrush(struct openb3d_openb3dcore_TEntity_obj* bbt_ent){
	struct BBDebugScope_1 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"GetEntityBrush",
		{
			{
				BBDEBUGDECL_LOCAL,
				"ent",
				":TEntity",
				.var_address=&bbt_ent
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x7997c65814154ece, 2650, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbOnDebugLeaveScope();
	return (struct openb3d_openb3dcore_TBrush_obj*)((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)bbt_ent))->clas->m_GetEntityBrush((struct openb3d_openb3dcore_TEntity_obj*)bbt_ent);
}
BBINT openb3d_openb3dcore_GetEntityType(struct openb3d_openb3dcore_TEntity_obj* bbt_ent){
	struct BBDebugScope_1 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"GetEntityType",
		{
			{
				BBDEBUGDECL_LOCAL,
				"ent",
				":TEntity",
				.var_address=&bbt_ent
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x7997c65814154ece, 2668, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbOnDebugLeaveScope();
	return ((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)bbt_ent))->clas->m_GetEntityType((struct openb3d_openb3dcore_TEntity_obj*)bbt_ent);
}
BBFLOAT openb3d_openb3dcore_GetMatElement(struct openb3d_openb3dcore_TEntity_obj* bbt_ent,BBINT bbt_row,BBINT bbt_col){
	struct BBDebugScope_3 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"GetMatElement",
		{
			{
				BBDEBUGDECL_LOCAL,
				"ent",
				":TEntity",
				.var_address=&bbt_ent
			},
			{
				BBDEBUGDECL_LOCAL,
				"row",
				"i",
				.var_address=&bbt_row
			},
			{
				BBDEBUGDECL_LOCAL,
				"col",
				"i",
				.var_address=&bbt_col
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x7997c65814154ece, 2692, 0};
	bbOnDebugEnterStm(&__stmt_0);
	((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)bbt_ent))->clas->m_GetMatElement_ii((struct openb3d_openb3dcore_TEntity_obj*)bbt_ent,bbt_row,bbt_col);
	bbOnDebugLeaveScope();
	return .00000000f;
}
struct openb3d_openb3dcore_TEntity_obj* openb3d_openb3dcore_GetParent(struct openb3d_openb3dcore_TEntity_obj* bbt_ent){
	struct BBDebugScope_1 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"GetParent",
		{
			{
				BBDEBUGDECL_LOCAL,
				"ent",
				":TEntity",
				.var_address=&bbt_ent
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x7997c65814154ece, 2708, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbOnDebugLeaveScope();
	return (struct openb3d_openb3dcore_TEntity_obj*)((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)bbt_ent))->clas->m_GetParent((struct openb3d_openb3dcore_TEntity_obj*)bbt_ent);
}
struct openb3d_openb3dcore_TSurface_obj* openb3d_openb3dcore_GetSurface(struct openb3d_openb3dcore_TMesh_obj* bbt_mesh,BBINT bbt_surf_no){
	struct BBDebugScope_2 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"GetSurface",
		{
			{
				BBDEBUGDECL_LOCAL,
				"mesh",
				":TMesh",
				.var_address=&bbt_mesh
			},
			{
				BBDEBUGDECL_LOCAL,
				"surf_no",
				"i",
				.var_address=&bbt_surf_no
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x7997c65814154ece, 2732, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbOnDebugLeaveScope();
	return (struct openb3d_openb3dcore_TSurface_obj*)((struct openb3d_openb3dcore_TMesh_obj*)bbNullObjectTest((BBObject*)bbt_mesh))->clas->m_GetSurface_i((struct openb3d_openb3dcore_TMesh_obj*)bbt_mesh,bbt_surf_no);
}
struct openb3d_openb3dcore_TBrush_obj* openb3d_openb3dcore_GetSurfaceBrush(struct openb3d_openb3dcore_TSurface_obj* bbt_surf){
	struct BBDebugScope_1 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"GetSurfaceBrush",
		{
			{
				BBDEBUGDECL_LOCAL,
				"surf",
				":TSurface",
				.var_address=&bbt_surf
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x7997c65814154ece, 2756, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbOnDebugLeaveScope();
	return (struct openb3d_openb3dcore_TBrush_obj*)((struct openb3d_openb3dcore_TSurface_obj*)bbNullObjectTest((BBObject*)bbt_surf))->clas->m_GetSurfaceBrush((struct openb3d_openb3dcore_TSurface_obj*)bbt_surf);
}
BBINT openb3d_openb3dcore_HandleSprite(struct openb3d_openb3dcore_TSprite_obj* bbt_sprite,BBFLOAT bbt_h_x,BBFLOAT bbt_h_y){
	struct BBDebugScope_3 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"HandleSprite",
		{
			{
				BBDEBUGDECL_LOCAL,
				"sprite",
				":TSprite",
				.var_address=&bbt_sprite
			},
			{
				BBDEBUGDECL_LOCAL,
				"h_x",
				"f",
				.var_address=&bbt_h_x
			},
			{
				BBDEBUGDECL_LOCAL,
				"h_y",
				"f",
				.var_address=&bbt_h_y
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x7997c65814154ece, 2778, 0};
	bbOnDebugEnterStm(&__stmt_0);
	((struct openb3d_openb3dcore_TSprite_obj*)bbNullObjectTest((BBObject*)bbt_sprite))->clas->m_HandleSprite_ff((struct openb3d_openb3dcore_TSprite_obj*)bbt_sprite,bbt_h_x,bbt_h_y);
	bbOnDebugLeaveScope();
	return 0;
}
BBINT openb3d_openb3dcore_HideEntity(struct openb3d_openb3dcore_TEntity_obj* bbt_ent){
	struct BBDebugScope_1 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"HideEntity",
		{
			{
				BBDEBUGDECL_LOCAL,
				"ent",
				":TEntity",
				.var_address=&bbt_ent
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x7997c65814154ece, 2800, 0};
	bbOnDebugEnterStm(&__stmt_0);
	((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)bbt_ent))->clas->m_HideEntity((struct openb3d_openb3dcore_TEntity_obj*)bbt_ent);
	bbOnDebugLeaveScope();
	return 0;
}
BBINT openb3d_openb3dcore_LightColor(struct openb3d_openb3dcore_TLight_obj* bbt_light,BBFLOAT bbt_red,BBFLOAT bbt_green,BBFLOAT bbt_blue){
	struct BBDebugScope_4 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"LightColor",
		{
			{
				BBDEBUGDECL_LOCAL,
				"light",
				":TLight",
				.var_address=&bbt_light
			},
			{
				BBDEBUGDECL_LOCAL,
				"red",
				"f",
				.var_address=&bbt_red
			},
			{
				BBDEBUGDECL_LOCAL,
				"green",
				"f",
				.var_address=&bbt_green
			},
			{
				BBDEBUGDECL_LOCAL,
				"blue",
				"f",
				.var_address=&bbt_blue
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x7997c65814154ece, 2830, 0};
	bbOnDebugEnterStm(&__stmt_0);
	((struct openb3d_openb3dcore_TLight_obj*)bbNullObjectTest((BBObject*)bbt_light))->clas->m_LightColor_fff((struct openb3d_openb3dcore_TLight_obj*)bbt_light,bbt_red,bbt_green,bbt_blue);
	bbOnDebugLeaveScope();
	return 0;
}
BBINT openb3d_openb3dcore_LightConeAngles(struct openb3d_openb3dcore_TLight_obj* bbt_light,BBFLOAT bbt_inner_ang,BBFLOAT bbt_outer_ang){
	struct BBDebugScope_3 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"LightConeAngles",
		{
			{
				BBDEBUGDECL_LOCAL,
				"light",
				":TLight",
				.var_address=&bbt_light
			},
			{
				BBDEBUGDECL_LOCAL,
				"inner_ang",
				"f",
				.var_address=&bbt_inner_ang
			},
			{
				BBDEBUGDECL_LOCAL,
				"outer_ang",
				"f",
				.var_address=&bbt_outer_ang
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x7997c65814154ece, 2854, 0};
	bbOnDebugEnterStm(&__stmt_0);
	((struct openb3d_openb3dcore_TLight_obj*)bbNullObjectTest((BBObject*)bbt_light))->clas->m_LightConeAngles_ff((struct openb3d_openb3dcore_TLight_obj*)bbt_light,bbt_inner_ang,bbt_outer_ang);
	bbOnDebugLeaveScope();
	return 0;
}
BBINT openb3d_openb3dcore_LightRange(struct openb3d_openb3dcore_TLight_obj* bbt_light,BBFLOAT bbt_Range){
	struct BBDebugScope_2 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"LightRange",
		{
			{
				BBDEBUGDECL_LOCAL,
				"light",
				":TLight",
				.var_address=&bbt_light
			},
			{
				BBDEBUGDECL_LOCAL,
				"Range",
				"f",
				.var_address=&bbt_Range
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x7997c65814154ece, 2878, 0};
	bbOnDebugEnterStm(&__stmt_0);
	((struct openb3d_openb3dcore_TLight_obj*)bbNullObjectTest((BBObject*)bbt_light))->clas->m_LightRange_f((struct openb3d_openb3dcore_TLight_obj*)bbt_light,bbt_Range);
	bbOnDebugLeaveScope();
	return 0;
}
struct openb3d_openb3dcore_TEntity_obj* openb3d_openb3dcore_LinePick(BBFLOAT bbt_x,BBFLOAT bbt_y,BBFLOAT bbt_z,BBFLOAT bbt_dx,BBFLOAT bbt_dy,BBFLOAT bbt_dz,BBFLOAT bbt_radius){
	struct BBDebugScope_7 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"LinePick",
		{
			{
				BBDEBUGDECL_LOCAL,
				"x",
				"f",
				.var_address=&bbt_x
			},
			{
				BBDEBUGDECL_LOCAL,
				"y",
				"f",
				.var_address=&bbt_y
			},
			{
				BBDEBUGDECL_LOCAL,
				"z",
				"f",
				.var_address=&bbt_z
			},
			{
				BBDEBUGDECL_LOCAL,
				"dx",
				"f",
				.var_address=&bbt_dx
			},
			{
				BBDEBUGDECL_LOCAL,
				"dy",
				"f",
				.var_address=&bbt_dy
			},
			{
				BBDEBUGDECL_LOCAL,
				"dz",
				"f",
				.var_address=&bbt_dz
			},
			{
				BBDEBUGDECL_LOCAL,
				"radius",
				"f",
				.var_address=&bbt_radius
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x7997c65814154ece, 2908, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbOnDebugLeaveScope();
	return (struct openb3d_openb3dcore_TEntity_obj*)openb3d_openb3dcore_TPick_LinePick_TTEntity_fffffff(bbt_x,bbt_y,bbt_z,bbt_dx,bbt_dy,bbt_dz,bbt_radius);
}
struct openb3d_openb3dcore_TTexture_obj* openb3d_openb3dcore_LoadAnimTexture(BBSTRING bbt_file,BBINT bbt_flags,BBINT bbt_frame_width,BBINT bbt_frame_height,BBINT bbt_first_frame,BBINT bbt_frame_count,struct openb3d_openb3dcore_TTexture_obj* bbt_tex){
	struct BBDebugScope_7 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"LoadAnimTexture",
		{
			{
				BBDEBUGDECL_LOCAL,
				"file",
				"$",
				.var_address=&bbt_file
			},
			{
				BBDEBUGDECL_LOCAL,
				"flags",
				"i",
				.var_address=&bbt_flags
			},
			{
				BBDEBUGDECL_LOCAL,
				"frame_width",
				"i",
				.var_address=&bbt_frame_width
			},
			{
				BBDEBUGDECL_LOCAL,
				"frame_height",
				"i",
				.var_address=&bbt_frame_height
			},
			{
				BBDEBUGDECL_LOCAL,
				"first_frame",
				"i",
				.var_address=&bbt_first_frame
			},
			{
				BBDEBUGDECL_LOCAL,
				"frame_count",
				"i",
				.var_address=&bbt_frame_count
			},
			{
				BBDEBUGDECL_LOCAL,
				"tex",
				":TTexture",
				.var_address=&bbt_tex
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x7997c65814154ece, 2967, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbOnDebugLeaveScope();
	return (struct openb3d_openb3dcore_TTexture_obj*)openb3d_openb3dcore_TTexture_LoadAnimTexture_TTTexture_SiiiiiTTTexture(bbt_file,bbt_flags,bbt_frame_width,bbt_frame_height,bbt_first_frame,bbt_frame_count,(struct openb3d_openb3dcore_TTexture_obj*)bbt_tex);
}
struct openb3d_openb3dcore_TBrush_obj* openb3d_openb3dcore_LoadBrush(BBSTRING bbt_file,BBINT bbt_flags,BBFLOAT bbt_u_scale,BBFLOAT bbt_v_scale){
	struct BBDebugScope_4 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"LoadBrush",
		{
			{
				BBDEBUGDECL_LOCAL,
				"file",
				"$",
				.var_address=&bbt_file
			},
			{
				BBDEBUGDECL_LOCAL,
				"flags",
				"i",
				.var_address=&bbt_flags
			},
			{
				BBDEBUGDECL_LOCAL,
				"u_scale",
				"f",
				.var_address=&bbt_u_scale
			},
			{
				BBDEBUGDECL_LOCAL,
				"v_scale",
				"f",
				.var_address=&bbt_v_scale
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x7997c65814154ece, 3007, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbOnDebugLeaveScope();
	return (struct openb3d_openb3dcore_TBrush_obj*)openb3d_openb3dcore_TBrush_LoadBrush_TTBrush_Siff(bbt_file,bbt_flags,bbt_u_scale,bbt_v_scale);
}
struct openb3d_openb3dcore_TTexture_obj* openb3d_openb3dcore_LoadTexture(BBSTRING bbt_file,BBINT bbt_flags,struct openb3d_openb3dcore_TTexture_obj* bbt_tex){
	struct BBDebugScope_3 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"LoadTexture",
		{
			{
				BBDEBUGDECL_LOCAL,
				"file",
				"$",
				.var_address=&bbt_file
			},
			{
				BBDEBUGDECL_LOCAL,
				"flags",
				"i",
				.var_address=&bbt_flags
			},
			{
				BBDEBUGDECL_LOCAL,
				"tex",
				":TTexture",
				.var_address=&bbt_tex
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x7997c65814154ece, 3061, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbOnDebugLeaveScope();
	return (struct openb3d_openb3dcore_TTexture_obj*)openb3d_openb3dcore_TTexture_LoadTexture_TTTexture_SiTTTexture(bbt_file,bbt_flags,(struct openb3d_openb3dcore_TTexture_obj*)bbt_tex);
}
struct openb3d_openb3dcore_TSprite_obj* openb3d_openb3dcore_LoadSprite(BBSTRING bbt_tex_file,BBINT bbt_tex_flag,struct openb3d_openb3dcore_TEntity_obj* bbt_parent){
	struct BBDebugScope_3 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"LoadSprite",
		{
			{
				BBDEBUGDECL_LOCAL,
				"tex_file",
				"$",
				.var_address=&bbt_tex_file
			},
			{
				BBDEBUGDECL_LOCAL,
				"tex_flag",
				"i",
				.var_address=&bbt_tex_flag
			},
			{
				BBDEBUGDECL_LOCAL,
				"parent",
				":TEntity",
				.var_address=&bbt_parent
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x7997c65814154ece, 3099, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbOnDebugLeaveScope();
	return (struct openb3d_openb3dcore_TSprite_obj*)openb3d_openb3dcore_TSprite_LoadSprite_TTSprite_SiTTEntity(bbt_tex_file,bbt_tex_flag,(struct openb3d_openb3dcore_TEntity_obj*)bbt_parent);
}
BBFLOAT openb3d_openb3dcore_MeshDepth(struct openb3d_openb3dcore_TMesh_obj* bbt_mesh){
	struct BBDebugScope_1 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"MeshDepth",
		{
			{
				BBDEBUGDECL_LOCAL,
				"mesh",
				":TMesh",
				.var_address=&bbt_mesh
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x7997c65814154ece, 3117, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbOnDebugLeaveScope();
	return ((struct openb3d_openb3dcore_TMesh_obj*)bbNullObjectTest((BBObject*)bbt_mesh))->clas->m_MeshDepth((struct openb3d_openb3dcore_TMesh_obj*)bbt_mesh);
}
BBFLOAT openb3d_openb3dcore_MeshHeight(struct openb3d_openb3dcore_TMesh_obj* bbt_mesh){
	struct BBDebugScope_1 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"MeshHeight",
		{
			{
				BBDEBUGDECL_LOCAL,
				"mesh",
				":TMesh",
				.var_address=&bbt_mesh
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x7997c65814154ece, 3135, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbOnDebugLeaveScope();
	return ((struct openb3d_openb3dcore_TMesh_obj*)bbNullObjectTest((BBObject*)bbt_mesh))->clas->m_MeshHeight((struct openb3d_openb3dcore_TMesh_obj*)bbt_mesh);
}
BBFLOAT openb3d_openb3dcore_MeshWidth(struct openb3d_openb3dcore_TMesh_obj* bbt_mesh){
	struct BBDebugScope_1 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"MeshWidth",
		{
			{
				BBDEBUGDECL_LOCAL,
				"mesh",
				":TMesh",
				.var_address=&bbt_mesh
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x7997c65814154ece, 3153, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbOnDebugLeaveScope();
	return ((struct openb3d_openb3dcore_TMesh_obj*)bbNullObjectTest((BBObject*)bbt_mesh))->clas->m_MeshWidth((struct openb3d_openb3dcore_TMesh_obj*)bbt_mesh);
}
BBINT openb3d_openb3dcore_MoveEntity(struct openb3d_openb3dcore_TEntity_obj* bbt_ent,BBFLOAT bbt_x,BBFLOAT bbt_y,BBFLOAT bbt_z){
	struct BBDebugScope_4 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"MoveEntity",
		{
			{
				BBDEBUGDECL_LOCAL,
				"ent",
				":TEntity",
				.var_address=&bbt_ent
			},
			{
				BBDEBUGDECL_LOCAL,
				"x",
				"f",
				.var_address=&bbt_x
			},
			{
				BBDEBUGDECL_LOCAL,
				"y",
				"f",
				.var_address=&bbt_y
			},
			{
				BBDEBUGDECL_LOCAL,
				"z",
				"f",
				.var_address=&bbt_z
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x7997c65814154ece, 3179, 0};
	bbOnDebugEnterStm(&__stmt_0);
	((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)bbt_ent))->clas->m_MoveEntity_fff((struct openb3d_openb3dcore_TEntity_obj*)bbt_ent,bbt_x,bbt_y,bbt_z);
	bbOnDebugLeaveScope();
	return 0;
}
BBINT openb3d_openb3dcore_NameEntity(struct openb3d_openb3dcore_TEntity_obj* bbt_ent,BBSTRING bbt_name){
	struct BBDebugScope_2 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"NameEntity",
		{
			{
				BBDEBUGDECL_LOCAL,
				"ent",
				":TEntity",
				.var_address=&bbt_ent
			},
			{
				BBDEBUGDECL_LOCAL,
				"name",
				"$",
				.var_address=&bbt_name
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x7997c65814154ece, 3199, 0};
	bbOnDebugEnterStm(&__stmt_0);
	((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)bbt_ent))->clas->m_NameEntity_S((struct openb3d_openb3dcore_TEntity_obj*)bbt_ent,bbt_name);
	bbOnDebugLeaveScope();
	return 0;
}
BBINT openb3d_openb3dcore_PaintEntity(struct openb3d_openb3dcore_TEntity_obj* bbt_ent,struct openb3d_openb3dcore_TBrush_obj* bbt_brush){
	struct BBDebugScope_2 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"PaintEntity",
		{
			{
				BBDEBUGDECL_LOCAL,
				"ent",
				":TEntity",
				.var_address=&bbt_ent
			},
			{
				BBDEBUGDECL_LOCAL,
				"brush",
				":TBrush",
				.var_address=&bbt_brush
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x7997c65814154ece, 3219, 0};
	bbOnDebugEnterStm(&__stmt_0);
	((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)bbt_ent))->clas->m_PaintEntity_TTBrush((struct openb3d_openb3dcore_TEntity_obj*)bbt_ent,(struct openb3d_openb3dcore_TBrush_obj*)bbt_brush);
	bbOnDebugLeaveScope();
	return 0;
}
BBINT openb3d_openb3dcore_PaintMesh(struct openb3d_openb3dcore_TMesh_obj* bbt_mesh,struct openb3d_openb3dcore_TBrush_obj* bbt_brush){
	struct BBDebugScope_2 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"PaintMesh",
		{
			{
				BBDEBUGDECL_LOCAL,
				"mesh",
				":TMesh",
				.var_address=&bbt_mesh
			},
			{
				BBDEBUGDECL_LOCAL,
				"brush",
				":TBrush",
				.var_address=&bbt_brush
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x7997c65814154ece, 3243, 0};
	bbOnDebugEnterStm(&__stmt_0);
	((struct openb3d_openb3dcore_TMesh_obj*)bbNullObjectTest((BBObject*)bbt_mesh))->clas->m_PaintMesh_TTBrush((struct openb3d_openb3dcore_TMesh_obj*)bbt_mesh,(struct openb3d_openb3dcore_TBrush_obj*)bbt_brush);
	bbOnDebugLeaveScope();
	return 0;
}
BBINT openb3d_openb3dcore_PaintSurface(struct openb3d_openb3dcore_TSurface_obj* bbt_surf,struct openb3d_openb3dcore_TBrush_obj* bbt_brush){
	struct BBDebugScope_2 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"PaintSurface",
		{
			{
				BBDEBUGDECL_LOCAL,
				"surf",
				":TSurface",
				.var_address=&bbt_surf
			},
			{
				BBDEBUGDECL_LOCAL,
				"brush",
				":TBrush",
				.var_address=&bbt_brush
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x7997c65814154ece, 3265, 0};
	bbOnDebugEnterStm(&__stmt_0);
	((struct openb3d_openb3dcore_TSurface_obj*)bbNullObjectTest((BBObject*)bbt_surf))->clas->m_PaintSurface_TTBrush((struct openb3d_openb3dcore_TSurface_obj*)bbt_surf,(struct openb3d_openb3dcore_TBrush_obj*)bbt_brush);
	bbOnDebugLeaveScope();
	return 0;
}
struct openb3d_openb3dcore_TEntity_obj* openb3d_openb3dcore_PickedEntity(){
	struct BBDebugScope __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"PickedEntity",
		{
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x7997c65814154ece, 3283, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbOnDebugLeaveScope();
	return (struct openb3d_openb3dcore_TEntity_obj*)openb3d_openb3dcore_TPick_PickedEntity_TTEntity();
}
BBFLOAT openb3d_openb3dcore_PickedNX(){
	struct BBDebugScope __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"PickedNX",
		{
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x7997c65814154ece, 3299, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbOnDebugLeaveScope();
	return openb3d_openb3dcore_TPick_PickedNX_f();
}
BBFLOAT openb3d_openb3dcore_PickedNY(){
	struct BBDebugScope __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"PickedNY",
		{
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x7997c65814154ece, 3315, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbOnDebugLeaveScope();
	return openb3d_openb3dcore_TPick_PickedNY_f();
}
BBFLOAT openb3d_openb3dcore_PickedNZ(){
	struct BBDebugScope __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"PickedNZ",
		{
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x7997c65814154ece, 3331, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbOnDebugLeaveScope();
	return openb3d_openb3dcore_TPick_PickedNZ_f();
}
struct openb3d_openb3dcore_TSurface_obj* openb3d_openb3dcore_PickedSurface(){
	struct BBDebugScope __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"PickedSurface",
		{
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x7997c65814154ece, 3347, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbOnDebugLeaveScope();
	return (struct openb3d_openb3dcore_TSurface_obj*)openb3d_openb3dcore_TPick_PickedSurface_TTSurface();
}
BBFLOAT openb3d_openb3dcore_PickedTime(){
	struct BBDebugScope __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"PickedTime",
		{
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x7997c65814154ece, 3363, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbOnDebugLeaveScope();
	return openb3d_openb3dcore_TPick_PickedTime_f();
}
BBINT openb3d_openb3dcore_PickedTriangle(){
	struct BBDebugScope __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"PickedTriangle",
		{
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x7997c65814154ece, 3379, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbOnDebugLeaveScope();
	return openb3d_openb3dcore_TPick_PickedTriangle_i();
}
BBFLOAT openb3d_openb3dcore_PickedX(){
	struct BBDebugScope __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"PickedX",
		{
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x7997c65814154ece, 3399, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbOnDebugLeaveScope();
	return openb3d_openb3dcore_TPick_PickedX_f();
}
BBFLOAT openb3d_openb3dcore_PickedY(){
	struct BBDebugScope __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"PickedY",
		{
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x7997c65814154ece, 3419, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbOnDebugLeaveScope();
	return openb3d_openb3dcore_TPick_PickedY_f();
}
BBFLOAT openb3d_openb3dcore_PickedZ(){
	struct BBDebugScope __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"PickedZ",
		{
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x7997c65814154ece, 3439, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbOnDebugLeaveScope();
	return openb3d_openb3dcore_TPick_PickedZ_f();
}
BBINT openb3d_openb3dcore_PointEntity(struct openb3d_openb3dcore_TEntity_obj* bbt_ent,struct openb3d_openb3dcore_TEntity_obj* bbt_target_ent,BBFLOAT bbt_roll){
	struct BBDebugScope_3 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"PointEntity",
		{
			{
				BBDEBUGDECL_LOCAL,
				"ent",
				":TEntity",
				.var_address=&bbt_ent
			},
			{
				BBDEBUGDECL_LOCAL,
				"target_ent",
				":TEntity",
				.var_address=&bbt_target_ent
			},
			{
				BBDEBUGDECL_LOCAL,
				"roll",
				"f",
				.var_address=&bbt_roll
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x7997c65814154ece, 3463, 0};
	bbOnDebugEnterStm(&__stmt_0);
	((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)bbt_ent))->clas->m_PointEntity_TTEntityf((struct openb3d_openb3dcore_TEntity_obj*)bbt_ent,(struct openb3d_openb3dcore_TEntity_obj*)bbt_target_ent,bbt_roll);
	bbOnDebugLeaveScope();
	return 0;
}
BBINT openb3d_openb3dcore_PositionEntity(struct openb3d_openb3dcore_TEntity_obj* bbt_ent,BBFLOAT bbt_x,BBFLOAT bbt_y,BBFLOAT bbt_z,BBINT bbt_glob){
	struct BBDebugScope_5 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"PositionEntity",
		{
			{
				BBDEBUGDECL_LOCAL,
				"ent",
				":TEntity",
				.var_address=&bbt_ent
			},
			{
				BBDEBUGDECL_LOCAL,
				"x",
				"f",
				.var_address=&bbt_x
			},
			{
				BBDEBUGDECL_LOCAL,
				"y",
				"f",
				.var_address=&bbt_y
			},
			{
				BBDEBUGDECL_LOCAL,
				"z",
				"f",
				.var_address=&bbt_z
			},
			{
				BBDEBUGDECL_LOCAL,
				"glob",
				"i",
				.var_address=&bbt_glob
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x7997c65814154ece, 3493, 0};
	bbOnDebugEnterStm(&__stmt_0);
	((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)bbt_ent))->clas->m_PositionEntity_fffi((struct openb3d_openb3dcore_TEntity_obj*)bbt_ent,bbt_x,bbt_y,bbt_z,bbt_glob);
	bbOnDebugLeaveScope();
	return 0;
}
BBINT openb3d_openb3dcore_PositionMesh(struct openb3d_openb3dcore_TMesh_obj* bbt_mesh,BBFLOAT bbt_px,BBFLOAT bbt_py,BBFLOAT bbt_pz){
	struct BBDebugScope_4 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"PositionMesh",
		{
			{
				BBDEBUGDECL_LOCAL,
				"mesh",
				":TMesh",
				.var_address=&bbt_mesh
			},
			{
				BBDEBUGDECL_LOCAL,
				"px",
				"f",
				.var_address=&bbt_px
			},
			{
				BBDEBUGDECL_LOCAL,
				"py",
				"f",
				.var_address=&bbt_py
			},
			{
				BBDEBUGDECL_LOCAL,
				"pz",
				"f",
				.var_address=&bbt_pz
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x7997c65814154ece, 3517, 0};
	bbOnDebugEnterStm(&__stmt_0);
	((struct openb3d_openb3dcore_TMesh_obj*)bbNullObjectTest((BBObject*)bbt_mesh))->clas->m_PositionMesh_fff((struct openb3d_openb3dcore_TMesh_obj*)bbt_mesh,bbt_px,bbt_py,bbt_pz);
	bbOnDebugLeaveScope();
	return 0;
}
BBINT openb3d_openb3dcore_PositionTexture(struct openb3d_openb3dcore_TTexture_obj* bbt_tex,BBFLOAT bbt_u_pos,BBFLOAT bbt_v_pos){
	struct BBDebugScope_3 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"PositionTexture",
		{
			{
				BBDEBUGDECL_LOCAL,
				"tex",
				":TTexture",
				.var_address=&bbt_tex
			},
			{
				BBDEBUGDECL_LOCAL,
				"u_pos",
				"f",
				.var_address=&bbt_u_pos
			},
			{
				BBDEBUGDECL_LOCAL,
				"v_pos",
				"f",
				.var_address=&bbt_v_pos
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x7997c65814154ece, 3541, 0};
	bbOnDebugEnterStm(&__stmt_0);
	((struct openb3d_openb3dcore_TTexture_obj*)bbNullObjectTest((BBObject*)bbt_tex))->clas->m_PositionTexture_ff((struct openb3d_openb3dcore_TTexture_obj*)bbt_tex,bbt_u_pos,bbt_v_pos);
	bbOnDebugLeaveScope();
	return 0;
}
BBFLOAT openb3d_openb3dcore_ProjectedX(){
	struct BBDebugScope __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"ProjectedX",
		{
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x7997c65814154ece, 3557, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbOnDebugLeaveScope();
	return ProjectedX_();
}
BBFLOAT openb3d_openb3dcore_ProjectedY(){
	struct BBDebugScope __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"ProjectedY",
		{
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x7997c65814154ece, 3573, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbOnDebugLeaveScope();
	return ProjectedY_();
}
BBFLOAT openb3d_openb3dcore_ProjectedZ(){
	struct BBDebugScope __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"ProjectedZ",
		{
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x7997c65814154ece, 3589, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbOnDebugLeaveScope();
	return ProjectedZ_();
}
BBINT openb3d_openb3dcore_RenderWorld(){
	struct BBDebugScope __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"RenderWorld",
		{
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x7997c65814154ece, 3613, 0};
	bbOnDebugEnterStm(&__stmt_0);
	openb3d_openb3dcore_TGlobal3D_RenderWorld_i();
	bbOnDebugLeaveScope();
	return 0;
}
BBINT openb3d_openb3dcore_ResetEntity(struct openb3d_openb3dcore_TEntity_obj* bbt_ent){
	struct BBDebugScope_1 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"ResetEntity",
		{
			{
				BBDEBUGDECL_LOCAL,
				"ent",
				":TEntity",
				.var_address=&bbt_ent
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x7997c65814154ece, 3631, 0};
	bbOnDebugEnterStm(&__stmt_0);
	((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)bbt_ent))->clas->m_ResetEntity((struct openb3d_openb3dcore_TEntity_obj*)bbt_ent);
	bbOnDebugLeaveScope();
	return 0;
}
BBINT openb3d_openb3dcore_RotateEntity(struct openb3d_openb3dcore_TEntity_obj* bbt_ent,BBFLOAT bbt_x,BBFLOAT bbt_y,BBFLOAT bbt_z,BBINT bbt_glob){
	struct BBDebugScope_5 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"RotateEntity",
		{
			{
				BBDEBUGDECL_LOCAL,
				"ent",
				":TEntity",
				.var_address=&bbt_ent
			},
			{
				BBDEBUGDECL_LOCAL,
				"x",
				"f",
				.var_address=&bbt_x
			},
			{
				BBDEBUGDECL_LOCAL,
				"y",
				"f",
				.var_address=&bbt_y
			},
			{
				BBDEBUGDECL_LOCAL,
				"z",
				"f",
				.var_address=&bbt_z
			},
			{
				BBDEBUGDECL_LOCAL,
				"glob",
				"i",
				.var_address=&bbt_glob
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x7997c65814154ece, 3663, 0};
	bbOnDebugEnterStm(&__stmt_0);
	((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)bbt_ent))->clas->m_RotateEntity_fffi((struct openb3d_openb3dcore_TEntity_obj*)bbt_ent,bbt_x,bbt_y,bbt_z,bbt_glob);
	bbOnDebugLeaveScope();
	return 0;
}
BBINT openb3d_openb3dcore_RotateMesh(struct openb3d_openb3dcore_TMesh_obj* bbt_mesh,BBFLOAT bbt_pitch,BBFLOAT bbt_yaw,BBFLOAT bbt_roll){
	struct BBDebugScope_4 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"RotateMesh",
		{
			{
				BBDEBUGDECL_LOCAL,
				"mesh",
				":TMesh",
				.var_address=&bbt_mesh
			},
			{
				BBDEBUGDECL_LOCAL,
				"pitch",
				"f",
				.var_address=&bbt_pitch
			},
			{
				BBDEBUGDECL_LOCAL,
				"yaw",
				"f",
				.var_address=&bbt_yaw
			},
			{
				BBDEBUGDECL_LOCAL,
				"roll",
				"f",
				.var_address=&bbt_roll
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x7997c65814154ece, 3687, 0};
	bbOnDebugEnterStm(&__stmt_0);
	((struct openb3d_openb3dcore_TMesh_obj*)bbNullObjectTest((BBObject*)bbt_mesh))->clas->m_RotateMesh_fff((struct openb3d_openb3dcore_TMesh_obj*)bbt_mesh,bbt_pitch,bbt_yaw,bbt_roll);
	bbOnDebugLeaveScope();
	return 0;
}
BBINT openb3d_openb3dcore_RotateSprite(struct openb3d_openb3dcore_TSprite_obj* bbt_sprite,BBFLOAT bbt_ang){
	struct BBDebugScope_2 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"RotateSprite",
		{
			{
				BBDEBUGDECL_LOCAL,
				"sprite",
				":TSprite",
				.var_address=&bbt_sprite
			},
			{
				BBDEBUGDECL_LOCAL,
				"ang",
				"f",
				.var_address=&bbt_ang
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x7997c65814154ece, 3707, 0};
	bbOnDebugEnterStm(&__stmt_0);
	((struct openb3d_openb3dcore_TSprite_obj*)bbNullObjectTest((BBObject*)bbt_sprite))->clas->m_RotateSprite_f((struct openb3d_openb3dcore_TSprite_obj*)bbt_sprite,bbt_ang);
	bbOnDebugLeaveScope();
	return 0;
}
BBINT openb3d_openb3dcore_RotateTexture(struct openb3d_openb3dcore_TTexture_obj* bbt_tex,BBFLOAT bbt_ang){
	struct BBDebugScope_2 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"RotateTexture",
		{
			{
				BBDEBUGDECL_LOCAL,
				"tex",
				":TTexture",
				.var_address=&bbt_tex
			},
			{
				BBDEBUGDECL_LOCAL,
				"ang",
				"f",
				.var_address=&bbt_ang
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x7997c65814154ece, 3729, 0};
	bbOnDebugEnterStm(&__stmt_0);
	((struct openb3d_openb3dcore_TTexture_obj*)bbNullObjectTest((BBObject*)bbt_tex))->clas->m_RotateTexture_f((struct openb3d_openb3dcore_TTexture_obj*)bbt_tex,bbt_ang);
	bbOnDebugLeaveScope();
	return 0;
}
BBINT openb3d_openb3dcore_ScaleEntity(struct openb3d_openb3dcore_TEntity_obj* bbt_ent,BBFLOAT bbt_x,BBFLOAT bbt_y,BBFLOAT bbt_z,BBINT bbt_glob){
	struct BBDebugScope_5 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"ScaleEntity",
		{
			{
				BBDEBUGDECL_LOCAL,
				"ent",
				":TEntity",
				.var_address=&bbt_ent
			},
			{
				BBDEBUGDECL_LOCAL,
				"x",
				"f",
				.var_address=&bbt_x
			},
			{
				BBDEBUGDECL_LOCAL,
				"y",
				"f",
				.var_address=&bbt_y
			},
			{
				BBDEBUGDECL_LOCAL,
				"z",
				"f",
				.var_address=&bbt_z
			},
			{
				BBDEBUGDECL_LOCAL,
				"glob",
				"i",
				.var_address=&bbt_glob
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x7997c65814154ece, 3763, 0};
	bbOnDebugEnterStm(&__stmt_0);
	((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)bbt_ent))->clas->m_ScaleEntity_fffi((struct openb3d_openb3dcore_TEntity_obj*)bbt_ent,bbt_x,bbt_y,bbt_z,bbt_glob);
	bbOnDebugLeaveScope();
	return 0;
}
BBINT openb3d_openb3dcore_ScaleMesh(struct openb3d_openb3dcore_TMesh_obj* bbt_mesh,BBFLOAT bbt_sx,BBFLOAT bbt_sy,BBFLOAT bbt_sz){
	struct BBDebugScope_4 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"ScaleMesh",
		{
			{
				BBDEBUGDECL_LOCAL,
				"mesh",
				":TMesh",
				.var_address=&bbt_mesh
			},
			{
				BBDEBUGDECL_LOCAL,
				"sx",
				"f",
				.var_address=&bbt_sx
			},
			{
				BBDEBUGDECL_LOCAL,
				"sy",
				"f",
				.var_address=&bbt_sy
			},
			{
				BBDEBUGDECL_LOCAL,
				"sz",
				"f",
				.var_address=&bbt_sz
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x7997c65814154ece, 3787, 0};
	bbOnDebugEnterStm(&__stmt_0);
	((struct openb3d_openb3dcore_TMesh_obj*)bbNullObjectTest((BBObject*)bbt_mesh))->clas->m_ScaleMesh_fff((struct openb3d_openb3dcore_TMesh_obj*)bbt_mesh,bbt_sx,bbt_sy,bbt_sz);
	bbOnDebugLeaveScope();
	return 0;
}
BBINT openb3d_openb3dcore_ScaleSprite(struct openb3d_openb3dcore_TSprite_obj* bbt_sprite,BBFLOAT bbt_s_x,BBFLOAT bbt_s_y){
	struct BBDebugScope_3 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"ScaleSprite",
		{
			{
				BBDEBUGDECL_LOCAL,
				"sprite",
				":TSprite",
				.var_address=&bbt_sprite
			},
			{
				BBDEBUGDECL_LOCAL,
				"s_x",
				"f",
				.var_address=&bbt_s_x
			},
			{
				BBDEBUGDECL_LOCAL,
				"s_y",
				"f",
				.var_address=&bbt_s_y
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x7997c65814154ece, 3809, 0};
	bbOnDebugEnterStm(&__stmt_0);
	((struct openb3d_openb3dcore_TSprite_obj*)bbNullObjectTest((BBObject*)bbt_sprite))->clas->m_ScaleSprite_ff((struct openb3d_openb3dcore_TSprite_obj*)bbt_sprite,bbt_s_x,bbt_s_y);
	bbOnDebugLeaveScope();
	return 0;
}
BBINT openb3d_openb3dcore_ScaleTexture(struct openb3d_openb3dcore_TTexture_obj* bbt_tex,BBFLOAT bbt_u_scale,BBFLOAT bbt_v_scale){
	struct BBDebugScope_3 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"ScaleTexture",
		{
			{
				BBDEBUGDECL_LOCAL,
				"tex",
				":TTexture",
				.var_address=&bbt_tex
			},
			{
				BBDEBUGDECL_LOCAL,
				"u_scale",
				"f",
				.var_address=&bbt_u_scale
			},
			{
				BBDEBUGDECL_LOCAL,
				"v_scale",
				"f",
				.var_address=&bbt_v_scale
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x7997c65814154ece, 3831, 0};
	bbOnDebugEnterStm(&__stmt_0);
	((struct openb3d_openb3dcore_TTexture_obj*)bbNullObjectTest((BBObject*)bbt_tex))->clas->m_ScaleTexture_ff((struct openb3d_openb3dcore_TTexture_obj*)bbt_tex,bbt_u_scale,bbt_v_scale);
	bbOnDebugLeaveScope();
	return 0;
}
BBINT openb3d_openb3dcore_SetAnimTime(struct openb3d_openb3dcore_TEntity_obj* bbt_ent,BBFLOAT bbt_time,BBINT bbt_seq){
	struct BBDebugScope_3 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"SetAnimTime",
		{
			{
				BBDEBUGDECL_LOCAL,
				"ent",
				":TEntity",
				.var_address=&bbt_ent
			},
			{
				BBDEBUGDECL_LOCAL,
				"time",
				"f",
				.var_address=&bbt_time
			},
			{
				BBDEBUGDECL_LOCAL,
				"seq",
				"i",
				.var_address=&bbt_seq
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x7997c65814154ece, 3851, 0};
	bbOnDebugEnterStm(&__stmt_0);
	((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)bbt_ent))->clas->m_SetAnimTime_fi((struct openb3d_openb3dcore_TEntity_obj*)bbt_ent,bbt_time,bbt_seq);
	bbOnDebugLeaveScope();
	return 0;
}
BBINT openb3d_openb3dcore_SetCubeFace(struct openb3d_openb3dcore_TTexture_obj* bbt_tex,BBINT bbt_face){
	struct BBDebugScope_2 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"SetCubeFace",
		{
			{
				BBDEBUGDECL_LOCAL,
				"tex",
				":TTexture",
				.var_address=&bbt_tex
			},
			{
				BBDEBUGDECL_LOCAL,
				"face",
				"i",
				.var_address=&bbt_face
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x7997c65814154ece, 3949, 0};
	bbOnDebugEnterStm(&__stmt_0);
	SetCubeFace_(openb3d_openb3dcore_TTexture_GetInstance_pb_TTTexture((struct openb3d_openb3dcore_TTexture_obj*)bbt_tex),bbt_face);
	bbOnDebugLeaveScope();
	return 0;
}
BBINT openb3d_openb3dcore_SetCubeMode(struct openb3d_openb3dcore_TTexture_obj* bbt_tex,BBINT bbt_Mode){
	struct BBDebugScope_2 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"SetCubeMode",
		{
			{
				BBDEBUGDECL_LOCAL,
				"tex",
				":TTexture",
				.var_address=&bbt_tex
			},
			{
				BBDEBUGDECL_LOCAL,
				"Mode",
				"i",
				.var_address=&bbt_Mode
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x7997c65814154ece, 3985, 0};
	bbOnDebugEnterStm(&__stmt_0);
	SetCubeMode_(openb3d_openb3dcore_TTexture_GetInstance_pb_TTTexture((struct openb3d_openb3dcore_TTexture_obj*)bbt_tex),bbt_Mode);
	bbOnDebugLeaveScope();
	return 0;
}
BBINT openb3d_openb3dcore_ShowEntity(struct openb3d_openb3dcore_TEntity_obj* bbt_ent){
	struct BBDebugScope_1 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"ShowEntity",
		{
			{
				BBDEBUGDECL_LOCAL,
				"ent",
				":TEntity",
				.var_address=&bbt_ent
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x7997c65814154ece, 4007, 0};
	bbOnDebugEnterStm(&__stmt_0);
	((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)bbt_ent))->clas->m_ShowEntity((struct openb3d_openb3dcore_TEntity_obj*)bbt_ent);
	bbOnDebugLeaveScope();
	return 0;
}
BBINT openb3d_openb3dcore_SpriteViewMode(struct openb3d_openb3dcore_TSprite_obj* bbt_sprite,BBINT bbt_Mode){
	struct BBDebugScope_2 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"SpriteViewMode",
		{
			{
				BBDEBUGDECL_LOCAL,
				"sprite",
				":TSprite",
				.var_address=&bbt_sprite
			},
			{
				BBDEBUGDECL_LOCAL,
				"Mode",
				"i",
				.var_address=&bbt_Mode
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x7997c65814154ece, 4047, 0};
	bbOnDebugEnterStm(&__stmt_0);
	((struct openb3d_openb3dcore_TSprite_obj*)bbNullObjectTest((BBObject*)bbt_sprite))->clas->m_SpriteViewMode_i((struct openb3d_openb3dcore_TSprite_obj*)bbt_sprite,bbt_Mode);
	bbOnDebugLeaveScope();
	return 0;
}
BBINT openb3d_openb3dcore_TextureBlend(struct openb3d_openb3dcore_TTexture_obj* bbt_tex,BBINT bbt_blend){
	struct BBDebugScope_2 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"TextureBlend",
		{
			{
				BBDEBUGDECL_LOCAL,
				"tex",
				":TTexture",
				.var_address=&bbt_tex
			},
			{
				BBDEBUGDECL_LOCAL,
				"blend",
				"i",
				.var_address=&bbt_blend
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x7997c65814154ece, 4091, 0};
	bbOnDebugEnterStm(&__stmt_0);
	((struct openb3d_openb3dcore_TTexture_obj*)bbNullObjectTest((BBObject*)bbt_tex))->clas->m_TextureBlend_i((struct openb3d_openb3dcore_TTexture_obj*)bbt_tex,bbt_blend);
	bbOnDebugLeaveScope();
	return 0;
}
BBINT openb3d_openb3dcore_TextureCoords(struct openb3d_openb3dcore_TTexture_obj* bbt_tex,BBINT bbt_coords){
	struct BBDebugScope_2 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"TextureCoords",
		{
			{
				BBDEBUGDECL_LOCAL,
				"tex",
				":TTexture",
				.var_address=&bbt_tex
			},
			{
				BBDEBUGDECL_LOCAL,
				"coords",
				"i",
				.var_address=&bbt_coords
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x7997c65814154ece, 4115, 0};
	bbOnDebugEnterStm(&__stmt_0);
	((struct openb3d_openb3dcore_TTexture_obj*)bbNullObjectTest((BBObject*)bbt_tex))->clas->m_TextureCoords_i((struct openb3d_openb3dcore_TTexture_obj*)bbt_tex,bbt_coords);
	bbOnDebugLeaveScope();
	return 0;
}
BBINT openb3d_openb3dcore_TextureHeight(struct openb3d_openb3dcore_TTexture_obj* bbt_tex){
	struct BBDebugScope_1 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"TextureHeight",
		{
			{
				BBDEBUGDECL_LOCAL,
				"tex",
				":TTexture",
				.var_address=&bbt_tex
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x7997c65814154ece, 4131, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbOnDebugLeaveScope();
	return TextureHeight_(openb3d_openb3dcore_TTexture_GetInstance_pb_TTTexture((struct openb3d_openb3dcore_TTexture_obj*)bbt_tex));
}
BBINT openb3d_openb3dcore_TextureFilter(BBSTRING bbt_match_text,BBINT bbt_flags){
	struct BBDebugScope_2 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"TextureFilter",
		{
			{
				BBDEBUGDECL_LOCAL,
				"match_text",
				"$",
				.var_address=&bbt_match_text
			},
			{
				BBDEBUGDECL_LOCAL,
				"flags",
				"i",
				.var_address=&bbt_flags
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x7997c65814154ece, 4178, 0};
	bbOnDebugEnterStm(&__stmt_0);
	openb3d_openb3dcore_TTexture_TextureFilter_i_Si(bbt_match_text,bbt_flags);
	bbOnDebugLeaveScope();
	return 0;
}
BBSTRING openb3d_openb3dcore_TextureName(struct openb3d_openb3dcore_TTexture_obj* bbt_tex){
	struct BBDebugScope_1 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"TextureName",
		{
			{
				BBDEBUGDECL_LOCAL,
				"tex",
				":TTexture",
				.var_address=&bbt_tex
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x7997c65814154ece, 4217, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbOnDebugLeaveScope();
	return ((struct openb3d_openb3dcore_TTexture_obj*)bbNullObjectTest((BBObject*)bbt_tex))->clas->m_TextureName((struct openb3d_openb3dcore_TTexture_obj*)bbt_tex);
}
BBINT openb3d_openb3dcore_TextureWidth(struct openb3d_openb3dcore_TTexture_obj* bbt_tex){
	struct BBDebugScope_1 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"TextureWidth",
		{
			{
				BBDEBUGDECL_LOCAL,
				"tex",
				":TTexture",
				.var_address=&bbt_tex
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x7997c65814154ece, 4233, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbOnDebugLeaveScope();
	return TextureWidth_(openb3d_openb3dcore_TTexture_GetInstance_pb_TTTexture((struct openb3d_openb3dcore_TTexture_obj*)bbt_tex));
}
BBFLOAT openb3d_openb3dcore_TFormedX(){
	struct BBDebugScope __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"TFormedX",
		{
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x7997c65814154ece, 4251, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbOnDebugLeaveScope();
	return openb3d_openb3dcore_TEntity_TFormedX_f();
}
BBFLOAT openb3d_openb3dcore_TFormedY(){
	struct BBDebugScope __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"TFormedY",
		{
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x7997c65814154ece, 4269, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbOnDebugLeaveScope();
	return openb3d_openb3dcore_TEntity_TFormedY_f();
}
BBFLOAT openb3d_openb3dcore_TFormedZ(){
	struct BBDebugScope __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"TFormedZ",
		{
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x7997c65814154ece, 4287, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbOnDebugLeaveScope();
	return openb3d_openb3dcore_TEntity_TFormedZ_f();
}
BBINT openb3d_openb3dcore_TFormNormal(BBFLOAT bbt_x,BBFLOAT bbt_y,BBFLOAT bbt_z,struct openb3d_openb3dcore_TEntity_obj* bbt_src_ent,struct openb3d_openb3dcore_TEntity_obj* bbt_dest_ent){
	struct BBDebugScope_5 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"TFormNormal",
		{
			{
				BBDEBUGDECL_LOCAL,
				"x",
				"f",
				.var_address=&bbt_x
			},
			{
				BBDEBUGDECL_LOCAL,
				"y",
				"f",
				.var_address=&bbt_y
			},
			{
				BBDEBUGDECL_LOCAL,
				"z",
				"f",
				.var_address=&bbt_z
			},
			{
				BBDEBUGDECL_LOCAL,
				"src_ent",
				":TEntity",
				.var_address=&bbt_src_ent
			},
			{
				BBDEBUGDECL_LOCAL,
				"dest_ent",
				":TEntity",
				.var_address=&bbt_dest_ent
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x7997c65814154ece, 4318, 0};
	bbOnDebugEnterStm(&__stmt_0);
	openb3d_openb3dcore_TEntity_TFormNormal_i_fffTTEntityTTEntity(bbt_x,bbt_y,bbt_z,(struct openb3d_openb3dcore_TEntity_obj*)bbt_src_ent,(struct openb3d_openb3dcore_TEntity_obj*)bbt_dest_ent);
	bbOnDebugLeaveScope();
	return 0;
}
BBINT openb3d_openb3dcore_TFormPoint(BBFLOAT bbt_x,BBFLOAT bbt_y,BBFLOAT bbt_z,struct openb3d_openb3dcore_TEntity_obj* bbt_src_ent,struct openb3d_openb3dcore_TEntity_obj* bbt_dest_ent){
	struct BBDebugScope_5 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"TFormPoint",
		{
			{
				BBDEBUGDECL_LOCAL,
				"x",
				"f",
				.var_address=&bbt_x
			},
			{
				BBDEBUGDECL_LOCAL,
				"y",
				"f",
				.var_address=&bbt_y
			},
			{
				BBDEBUGDECL_LOCAL,
				"z",
				"f",
				.var_address=&bbt_z
			},
			{
				BBDEBUGDECL_LOCAL,
				"src_ent",
				":TEntity",
				.var_address=&bbt_src_ent
			},
			{
				BBDEBUGDECL_LOCAL,
				"dest_ent",
				":TEntity",
				.var_address=&bbt_dest_ent
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x7997c65814154ece, 4349, 0};
	bbOnDebugEnterStm(&__stmt_0);
	openb3d_openb3dcore_TEntity_TFormPoint_i_fffTTEntityTTEntity(bbt_x,bbt_y,bbt_z,(struct openb3d_openb3dcore_TEntity_obj*)bbt_src_ent,(struct openb3d_openb3dcore_TEntity_obj*)bbt_dest_ent);
	bbOnDebugLeaveScope();
	return 0;
}
BBINT openb3d_openb3dcore_TFormVector(BBFLOAT bbt_x,BBFLOAT bbt_y,BBFLOAT bbt_z,struct openb3d_openb3dcore_TEntity_obj* bbt_src_ent,struct openb3d_openb3dcore_TEntity_obj* bbt_dest_ent){
	struct BBDebugScope_5 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"TFormVector",
		{
			{
				BBDEBUGDECL_LOCAL,
				"x",
				"f",
				.var_address=&bbt_x
			},
			{
				BBDEBUGDECL_LOCAL,
				"y",
				"f",
				.var_address=&bbt_y
			},
			{
				BBDEBUGDECL_LOCAL,
				"z",
				"f",
				.var_address=&bbt_z
			},
			{
				BBDEBUGDECL_LOCAL,
				"src_ent",
				":TEntity",
				.var_address=&bbt_src_ent
			},
			{
				BBDEBUGDECL_LOCAL,
				"dest_ent",
				":TEntity",
				.var_address=&bbt_dest_ent
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x7997c65814154ece, 4387, 0};
	bbOnDebugEnterStm(&__stmt_0);
	openb3d_openb3dcore_TEntity_TFormVector_i_fffTTEntityTTEntity(bbt_x,bbt_y,bbt_z,(struct openb3d_openb3dcore_TEntity_obj*)bbt_src_ent,(struct openb3d_openb3dcore_TEntity_obj*)bbt_dest_ent);
	bbOnDebugLeaveScope();
	return 0;
}
BBINT openb3d_openb3dcore_TranslateEntity(struct openb3d_openb3dcore_TEntity_obj* bbt_ent,BBFLOAT bbt_x,BBFLOAT bbt_y,BBFLOAT bbt_z,BBINT bbt_glob){
	struct BBDebugScope_5 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"TranslateEntity",
		{
			{
				BBDEBUGDECL_LOCAL,
				"ent",
				":TEntity",
				.var_address=&bbt_ent
			},
			{
				BBDEBUGDECL_LOCAL,
				"x",
				"f",
				.var_address=&bbt_x
			},
			{
				BBDEBUGDECL_LOCAL,
				"y",
				"f",
				.var_address=&bbt_y
			},
			{
				BBDEBUGDECL_LOCAL,
				"z",
				"f",
				.var_address=&bbt_z
			},
			{
				BBDEBUGDECL_LOCAL,
				"glob",
				"i",
				.var_address=&bbt_glob
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x7997c65814154ece, 4415, 0};
	bbOnDebugEnterStm(&__stmt_0);
	((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)bbt_ent))->clas->m_TranslateEntity_fffi((struct openb3d_openb3dcore_TEntity_obj*)bbt_ent,bbt_x,bbt_y,bbt_z,bbt_glob);
	bbOnDebugLeaveScope();
	return 0;
}
BBINT openb3d_openb3dcore_TriangleVertex(struct openb3d_openb3dcore_TSurface_obj* bbt_surf,BBINT bbt_tri_no,BBINT bbt_corner){
	struct BBDebugScope_3 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"TriangleVertex",
		{
			{
				BBDEBUGDECL_LOCAL,
				"surf",
				":TSurface",
				.var_address=&bbt_surf
			},
			{
				BBDEBUGDECL_LOCAL,
				"tri_no",
				"i",
				.var_address=&bbt_tri_no
			},
			{
				BBDEBUGDECL_LOCAL,
				"corner",
				"i",
				.var_address=&bbt_corner
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x7997c65814154ece, 4435, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbOnDebugLeaveScope();
	return ((struct openb3d_openb3dcore_TSurface_obj*)bbNullObjectTest((BBObject*)bbt_surf))->clas->m_TriangleVertex_ii((struct openb3d_openb3dcore_TSurface_obj*)bbt_surf,bbt_tri_no,bbt_corner);
}
BBINT openb3d_openb3dcore_TurnEntity(struct openb3d_openb3dcore_TEntity_obj* bbt_ent,BBFLOAT bbt_x,BBFLOAT bbt_y,BBFLOAT bbt_z,BBINT bbt_glob){
	struct BBDebugScope_5 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"TurnEntity",
		{
			{
				BBDEBUGDECL_LOCAL,
				"ent",
				":TEntity",
				.var_address=&bbt_ent
			},
			{
				BBDEBUGDECL_LOCAL,
				"x",
				"f",
				.var_address=&bbt_x
			},
			{
				BBDEBUGDECL_LOCAL,
				"y",
				"f",
				.var_address=&bbt_y
			},
			{
				BBDEBUGDECL_LOCAL,
				"z",
				"f",
				.var_address=&bbt_z
			},
			{
				BBDEBUGDECL_LOCAL,
				"glob",
				"i",
				.var_address=&bbt_glob
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x7997c65814154ece, 4467, 0};
	bbOnDebugEnterStm(&__stmt_0);
	((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)bbt_ent))->clas->m_TurnEntity_fffi((struct openb3d_openb3dcore_TEntity_obj*)bbt_ent,bbt_x,bbt_y,bbt_z,bbt_glob);
	bbOnDebugLeaveScope();
	return 0;
}
BBINT openb3d_openb3dcore_UpdateNormals(struct openb3d_openb3dcore_TMesh_obj* bbt_mesh){
	struct BBDebugScope_1 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"UpdateNormals",
		{
			{
				BBDEBUGDECL_LOCAL,
				"mesh",
				":TMesh",
				.var_address=&bbt_mesh
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x7997c65814154ece, 4483, 0};
	bbOnDebugEnterStm(&__stmt_0);
	((struct openb3d_openb3dcore_TMesh_obj*)bbNullObjectTest((BBObject*)bbt_mesh))->clas->m_UpdateNormals((struct openb3d_openb3dcore_TMesh_obj*)bbt_mesh);
	bbOnDebugLeaveScope();
	return 0;
}
BBINT openb3d_openb3dcore_UpdateWorld(BBFLOAT bbt_anim_speed){
	struct BBDebugScope_1 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"UpdateWorld",
		{
			{
				BBDEBUGDECL_LOCAL,
				"anim_speed",
				"f",
				.var_address=&bbt_anim_speed
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x7997c65814154ece, 4503, 0};
	bbOnDebugEnterStm(&__stmt_0);
	openb3d_openb3dcore_TGlobal3D_UpdateWorld_i_f(bbt_anim_speed);
	bbOnDebugLeaveScope();
	return 0;
}
BBFLOAT openb3d_openb3dcore_VectorPitch(BBFLOAT bbt_vx,BBFLOAT bbt_vy,BBFLOAT bbt_vz){
	struct BBDebugScope_3 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"VectorPitch",
		{
			{
				BBDEBUGDECL_LOCAL,
				"vx",
				"f",
				.var_address=&bbt_vx
			},
			{
				BBDEBUGDECL_LOCAL,
				"vy",
				"f",
				.var_address=&bbt_vy
			},
			{
				BBDEBUGDECL_LOCAL,
				"vz",
				"f",
				.var_address=&bbt_vz
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x7997c65814154ece, 4527, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbOnDebugLeaveScope();
	return -VectorPitch_(bbt_vx,bbt_vy,bbt_vz);
}
BBFLOAT openb3d_openb3dcore_VectorYaw(BBFLOAT bbt_vx,BBFLOAT bbt_vy,BBFLOAT bbt_vz){
	struct BBDebugScope_3 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"VectorYaw",
		{
			{
				BBDEBUGDECL_LOCAL,
				"vx",
				"f",
				.var_address=&bbt_vx
			},
			{
				BBDEBUGDECL_LOCAL,
				"vy",
				"f",
				.var_address=&bbt_vy
			},
			{
				BBDEBUGDECL_LOCAL,
				"vz",
				"f",
				.var_address=&bbt_vz
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x7997c65814154ece, 4551, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbOnDebugLeaveScope();
	return VectorYaw_(bbt_vx,bbt_vy,bbt_vz);
}
BBFLOAT openb3d_openb3dcore_VertexAlpha(struct openb3d_openb3dcore_TSurface_obj* bbt_surf,BBINT bbt_vid){
	struct BBDebugScope_2 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"VertexAlpha",
		{
			{
				BBDEBUGDECL_LOCAL,
				"surf",
				":TSurface",
				.var_address=&bbt_surf
			},
			{
				BBDEBUGDECL_LOCAL,
				"vid",
				"i",
				.var_address=&bbt_vid
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x7997c65814154ece, 4571, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbOnDebugLeaveScope();
	return ((struct openb3d_openb3dcore_TSurface_obj*)bbNullObjectTest((BBObject*)bbt_surf))->clas->m_VertexAlpha_i((struct openb3d_openb3dcore_TSurface_obj*)bbt_surf,bbt_vid);
}
BBFLOAT openb3d_openb3dcore_VertexBlue(struct openb3d_openb3dcore_TSurface_obj* bbt_surf,BBINT bbt_vid){
	struct BBDebugScope_2 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"VertexBlue",
		{
			{
				BBDEBUGDECL_LOCAL,
				"surf",
				":TSurface",
				.var_address=&bbt_surf
			},
			{
				BBDEBUGDECL_LOCAL,
				"vid",
				"i",
				.var_address=&bbt_vid
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x7997c65814154ece, 4589, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbOnDebugLeaveScope();
	return ((struct openb3d_openb3dcore_TSurface_obj*)bbNullObjectTest((BBObject*)bbt_surf))->clas->m_VertexBlue_i((struct openb3d_openb3dcore_TSurface_obj*)bbt_surf,bbt_vid);
}
BBINT openb3d_openb3dcore_VertexColor(struct openb3d_openb3dcore_TSurface_obj* bbt_surf,BBINT bbt_vid,BBFLOAT bbt_r,BBFLOAT bbt_g,BBFLOAT bbt_b,BBFLOAT bbt_a){
	struct BBDebugScope_6 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"VertexColor",
		{
			{
				BBDEBUGDECL_LOCAL,
				"surf",
				":TSurface",
				.var_address=&bbt_surf
			},
			{
				BBDEBUGDECL_LOCAL,
				"vid",
				"i",
				.var_address=&bbt_vid
			},
			{
				BBDEBUGDECL_LOCAL,
				"r",
				"f",
				.var_address=&bbt_r
			},
			{
				BBDEBUGDECL_LOCAL,
				"g",
				"f",
				.var_address=&bbt_g
			},
			{
				BBDEBUGDECL_LOCAL,
				"b",
				"f",
				.var_address=&bbt_b
			},
			{
				BBDEBUGDECL_LOCAL,
				"a",
				"f",
				.var_address=&bbt_a
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x7997c65814154ece, 4619, 0};
	bbOnDebugEnterStm(&__stmt_0);
	((struct openb3d_openb3dcore_TSurface_obj*)bbNullObjectTest((BBObject*)bbt_surf))->clas->m_VertexColor_iffff((struct openb3d_openb3dcore_TSurface_obj*)bbt_surf,bbt_vid,bbt_r,bbt_g,bbt_b,bbt_a);
	bbOnDebugLeaveScope();
	return 0;
}
BBINT openb3d_openb3dcore_VertexCoords(struct openb3d_openb3dcore_TSurface_obj* bbt_surf,BBINT bbt_vid,BBFLOAT bbt_x,BBFLOAT bbt_y,BBFLOAT bbt_z){
	struct BBDebugScope_5 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"VertexCoords",
		{
			{
				BBDEBUGDECL_LOCAL,
				"surf",
				":TSurface",
				.var_address=&bbt_surf
			},
			{
				BBDEBUGDECL_LOCAL,
				"vid",
				"i",
				.var_address=&bbt_vid
			},
			{
				BBDEBUGDECL_LOCAL,
				"x",
				"f",
				.var_address=&bbt_x
			},
			{
				BBDEBUGDECL_LOCAL,
				"y",
				"f",
				.var_address=&bbt_y
			},
			{
				BBDEBUGDECL_LOCAL,
				"z",
				"f",
				.var_address=&bbt_z
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x7997c65814154ece, 4645, 0};
	bbOnDebugEnterStm(&__stmt_0);
	((struct openb3d_openb3dcore_TSurface_obj*)bbNullObjectTest((BBObject*)bbt_surf))->clas->m_VertexCoords_ifff((struct openb3d_openb3dcore_TSurface_obj*)bbt_surf,bbt_vid,bbt_x,bbt_y,bbt_z);
	bbOnDebugLeaveScope();
	return 0;
}
BBFLOAT openb3d_openb3dcore_VertexGreen(struct openb3d_openb3dcore_TSurface_obj* bbt_surf,BBINT bbt_vid){
	struct BBDebugScope_2 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"VertexGreen",
		{
			{
				BBDEBUGDECL_LOCAL,
				"surf",
				":TSurface",
				.var_address=&bbt_surf
			},
			{
				BBDEBUGDECL_LOCAL,
				"vid",
				"i",
				.var_address=&bbt_vid
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x7997c65814154ece, 4663, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbOnDebugLeaveScope();
	return ((struct openb3d_openb3dcore_TSurface_obj*)bbNullObjectTest((BBObject*)bbt_surf))->clas->m_VertexGreen_i((struct openb3d_openb3dcore_TSurface_obj*)bbt_surf,bbt_vid);
}
BBINT openb3d_openb3dcore_VertexNormal(struct openb3d_openb3dcore_TSurface_obj* bbt_surf,BBINT bbt_vid,BBFLOAT bbt_nx,BBFLOAT bbt_ny,BBFLOAT bbt_nz){
	struct BBDebugScope_5 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"VertexNormal",
		{
			{
				BBDEBUGDECL_LOCAL,
				"surf",
				":TSurface",
				.var_address=&bbt_surf
			},
			{
				BBDEBUGDECL_LOCAL,
				"vid",
				"i",
				.var_address=&bbt_vid
			},
			{
				BBDEBUGDECL_LOCAL,
				"nx",
				"f",
				.var_address=&bbt_nx
			},
			{
				BBDEBUGDECL_LOCAL,
				"ny",
				"f",
				.var_address=&bbt_ny
			},
			{
				BBDEBUGDECL_LOCAL,
				"nz",
				"f",
				.var_address=&bbt_nz
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x7997c65814154ece, 4687, 0};
	bbOnDebugEnterStm(&__stmt_0);
	((struct openb3d_openb3dcore_TSurface_obj*)bbNullObjectTest((BBObject*)bbt_surf))->clas->m_VertexNormal_ifff((struct openb3d_openb3dcore_TSurface_obj*)bbt_surf,bbt_vid,bbt_nx,bbt_ny,bbt_nz);
	bbOnDebugLeaveScope();
	return 0;
}
BBFLOAT openb3d_openb3dcore_VertexNX(struct openb3d_openb3dcore_TSurface_obj* bbt_surf,BBINT bbt_vid){
	struct BBDebugScope_2 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"VertexNX",
		{
			{
				BBDEBUGDECL_LOCAL,
				"surf",
				":TSurface",
				.var_address=&bbt_surf
			},
			{
				BBDEBUGDECL_LOCAL,
				"vid",
				"i",
				.var_address=&bbt_vid
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x7997c65814154ece, 4705, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbOnDebugLeaveScope();
	return ((struct openb3d_openb3dcore_TSurface_obj*)bbNullObjectTest((BBObject*)bbt_surf))->clas->m_VertexNX_i((struct openb3d_openb3dcore_TSurface_obj*)bbt_surf,bbt_vid);
}
BBFLOAT openb3d_openb3dcore_VertexNY(struct openb3d_openb3dcore_TSurface_obj* bbt_surf,BBINT bbt_vid){
	struct BBDebugScope_2 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"VertexNY",
		{
			{
				BBDEBUGDECL_LOCAL,
				"surf",
				":TSurface",
				.var_address=&bbt_surf
			},
			{
				BBDEBUGDECL_LOCAL,
				"vid",
				"i",
				.var_address=&bbt_vid
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x7997c65814154ece, 4723, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbOnDebugLeaveScope();
	return ((struct openb3d_openb3dcore_TSurface_obj*)bbNullObjectTest((BBObject*)bbt_surf))->clas->m_VertexNY_i((struct openb3d_openb3dcore_TSurface_obj*)bbt_surf,bbt_vid);
}
BBFLOAT openb3d_openb3dcore_VertexNZ(struct openb3d_openb3dcore_TSurface_obj* bbt_surf,BBINT bbt_vid){
	struct BBDebugScope_2 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"VertexNZ",
		{
			{
				BBDEBUGDECL_LOCAL,
				"surf",
				":TSurface",
				.var_address=&bbt_surf
			},
			{
				BBDEBUGDECL_LOCAL,
				"vid",
				"i",
				.var_address=&bbt_vid
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x7997c65814154ece, 4741, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbOnDebugLeaveScope();
	return ((struct openb3d_openb3dcore_TSurface_obj*)bbNullObjectTest((BBObject*)bbt_surf))->clas->m_VertexNZ_i((struct openb3d_openb3dcore_TSurface_obj*)bbt_surf,bbt_vid);
}
BBFLOAT openb3d_openb3dcore_VertexRed(struct openb3d_openb3dcore_TSurface_obj* bbt_surf,BBINT bbt_vid){
	struct BBDebugScope_2 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"VertexRed",
		{
			{
				BBDEBUGDECL_LOCAL,
				"surf",
				":TSurface",
				.var_address=&bbt_surf
			},
			{
				BBDEBUGDECL_LOCAL,
				"vid",
				"i",
				.var_address=&bbt_vid
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x7997c65814154ece, 4759, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbOnDebugLeaveScope();
	return ((struct openb3d_openb3dcore_TSurface_obj*)bbNullObjectTest((BBObject*)bbt_surf))->clas->m_VertexRed_i((struct openb3d_openb3dcore_TSurface_obj*)bbt_surf,bbt_vid);
}
BBINT openb3d_openb3dcore_VertexTexCoords(struct openb3d_openb3dcore_TSurface_obj* bbt_surf,BBINT bbt_vid,BBFLOAT bbt_u,BBFLOAT bbt_v,BBFLOAT bbt_w,BBINT bbt_coord_set){
	struct BBDebugScope_6 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"VertexTexCoords",
		{
			{
				BBDEBUGDECL_LOCAL,
				"surf",
				":TSurface",
				.var_address=&bbt_surf
			},
			{
				BBDEBUGDECL_LOCAL,
				"vid",
				"i",
				.var_address=&bbt_vid
			},
			{
				BBDEBUGDECL_LOCAL,
				"u",
				"f",
				.var_address=&bbt_u
			},
			{
				BBDEBUGDECL_LOCAL,
				"v",
				"f",
				.var_address=&bbt_v
			},
			{
				BBDEBUGDECL_LOCAL,
				"w",
				"f",
				.var_address=&bbt_w
			},
			{
				BBDEBUGDECL_LOCAL,
				"coord_set",
				"i",
				.var_address=&bbt_coord_set
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x7997c65814154ece, 4785, 0};
	bbOnDebugEnterStm(&__stmt_0);
	((struct openb3d_openb3dcore_TSurface_obj*)bbNullObjectTest((BBObject*)bbt_surf))->clas->m_VertexTexCoords_ifffi((struct openb3d_openb3dcore_TSurface_obj*)bbt_surf,bbt_vid,bbt_u,bbt_v,bbt_w,bbt_coord_set);
	bbOnDebugLeaveScope();
	return 0;
}
BBFLOAT openb3d_openb3dcore_VertexU(struct openb3d_openb3dcore_TSurface_obj* bbt_surf,BBINT bbt_vid,BBINT bbt_coord_set){
	struct BBDebugScope_3 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"VertexU",
		{
			{
				BBDEBUGDECL_LOCAL,
				"surf",
				":TSurface",
				.var_address=&bbt_surf
			},
			{
				BBDEBUGDECL_LOCAL,
				"vid",
				"i",
				.var_address=&bbt_vid
			},
			{
				BBDEBUGDECL_LOCAL,
				"coord_set",
				"i",
				.var_address=&bbt_coord_set
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x7997c65814154ece, 4807, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbOnDebugLeaveScope();
	return ((struct openb3d_openb3dcore_TSurface_obj*)bbNullObjectTest((BBObject*)bbt_surf))->clas->m_VertexU_ii((struct openb3d_openb3dcore_TSurface_obj*)bbt_surf,bbt_vid,bbt_coord_set);
}
BBFLOAT openb3d_openb3dcore_VertexV(struct openb3d_openb3dcore_TSurface_obj* bbt_surf,BBINT bbt_vid,BBINT bbt_coord_set){
	struct BBDebugScope_3 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"VertexV",
		{
			{
				BBDEBUGDECL_LOCAL,
				"surf",
				":TSurface",
				.var_address=&bbt_surf
			},
			{
				BBDEBUGDECL_LOCAL,
				"vid",
				"i",
				.var_address=&bbt_vid
			},
			{
				BBDEBUGDECL_LOCAL,
				"coord_set",
				"i",
				.var_address=&bbt_coord_set
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x7997c65814154ece, 4829, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbOnDebugLeaveScope();
	return ((struct openb3d_openb3dcore_TSurface_obj*)bbNullObjectTest((BBObject*)bbt_surf))->clas->m_VertexV_ii((struct openb3d_openb3dcore_TSurface_obj*)bbt_surf,bbt_vid,bbt_coord_set);
}
BBFLOAT openb3d_openb3dcore_VertexW(struct openb3d_openb3dcore_TSurface_obj* bbt_surf,BBINT bbt_vid,BBINT bbt_coord_set){
	struct BBDebugScope_3 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"VertexW",
		{
			{
				BBDEBUGDECL_LOCAL,
				"surf",
				":TSurface",
				.var_address=&bbt_surf
			},
			{
				BBDEBUGDECL_LOCAL,
				"vid",
				"i",
				.var_address=&bbt_vid
			},
			{
				BBDEBUGDECL_LOCAL,
				"coord_set",
				"i",
				.var_address=&bbt_coord_set
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x7997c65814154ece, 4847, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbOnDebugLeaveScope();
	return ((struct openb3d_openb3dcore_TSurface_obj*)bbNullObjectTest((BBObject*)bbt_surf))->clas->m_VertexW_ii((struct openb3d_openb3dcore_TSurface_obj*)bbt_surf,bbt_vid,bbt_coord_set);
}
BBFLOAT openb3d_openb3dcore_VertexX(struct openb3d_openb3dcore_TSurface_obj* bbt_surf,BBINT bbt_vid){
	struct BBDebugScope_2 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"VertexX",
		{
			{
				BBDEBUGDECL_LOCAL,
				"surf",
				":TSurface",
				.var_address=&bbt_surf
			},
			{
				BBDEBUGDECL_LOCAL,
				"vid",
				"i",
				.var_address=&bbt_vid
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x7997c65814154ece, 4865, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbOnDebugLeaveScope();
	return ((struct openb3d_openb3dcore_TSurface_obj*)bbNullObjectTest((BBObject*)bbt_surf))->clas->m_VertexX_i((struct openb3d_openb3dcore_TSurface_obj*)bbt_surf,bbt_vid);
}
BBFLOAT openb3d_openb3dcore_VertexY(struct openb3d_openb3dcore_TSurface_obj* bbt_surf,BBINT bbt_vid){
	struct BBDebugScope_2 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"VertexY",
		{
			{
				BBDEBUGDECL_LOCAL,
				"surf",
				":TSurface",
				.var_address=&bbt_surf
			},
			{
				BBDEBUGDECL_LOCAL,
				"vid",
				"i",
				.var_address=&bbt_vid
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x7997c65814154ece, 4883, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbOnDebugLeaveScope();
	return ((struct openb3d_openb3dcore_TSurface_obj*)bbNullObjectTest((BBObject*)bbt_surf))->clas->m_VertexY_i((struct openb3d_openb3dcore_TSurface_obj*)bbt_surf,bbt_vid);
}
BBFLOAT openb3d_openb3dcore_VertexZ(struct openb3d_openb3dcore_TSurface_obj* bbt_surf,BBINT bbt_vid){
	struct BBDebugScope_2 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"VertexZ",
		{
			{
				BBDEBUGDECL_LOCAL,
				"surf",
				":TSurface",
				.var_address=&bbt_surf
			},
			{
				BBDEBUGDECL_LOCAL,
				"vid",
				"i",
				.var_address=&bbt_vid
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x7997c65814154ece, 4901, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbOnDebugLeaveScope();
	return ((struct openb3d_openb3dcore_TSurface_obj*)bbNullObjectTest((BBObject*)bbt_surf))->clas->m_VertexZ_i((struct openb3d_openb3dcore_TSurface_obj*)bbt_surf,bbt_vid);
}
BBINT openb3d_openb3dcore_Wireframe(BBINT bbt_enable){
	struct BBDebugScope_1 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"Wireframe",
		{
			{
				BBDEBUGDECL_LOCAL,
				"enable",
				"i",
				.var_address=&bbt_enable
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x7997c65814154ece, 4924, 0};
	bbOnDebugEnterStm(&__stmt_0);
	Wireframe_(bbt_enable);
	bbOnDebugLeaveScope();
	return 0;
}
BBINT openb3d_openb3dcore_AddAnimSeq(struct openb3d_openb3dcore_TEntity_obj* bbt_ent,BBINT bbt_length){
	struct BBDebugScope_2 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"AddAnimSeq",
		{
			{
				BBDEBUGDECL_LOCAL,
				"ent",
				":TEntity",
				.var_address=&bbt_ent
			},
			{
				BBDEBUGDECL_LOCAL,
				"length",
				"i",
				.var_address=&bbt_length
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x7997c65814154ece, 4946, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbOnDebugLeaveScope();
	return ((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)bbt_ent))->clas->m_AddAnimSeq_i((struct openb3d_openb3dcore_TEntity_obj*)bbt_ent,bbt_length);
}
BBINT openb3d_openb3dcore_AlignToVector(struct openb3d_openb3dcore_TEntity_obj* bbt_entity,BBFLOAT bbt_x,BBFLOAT bbt_y,BBFLOAT bbt_z,BBINT bbt_axis,BBINT bbt_rate){
	struct BBDebugScope_6 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"AlignToVector",
		{
			{
				BBDEBUGDECL_LOCAL,
				"entity",
				":TEntity",
				.var_address=&bbt_entity
			},
			{
				BBDEBUGDECL_LOCAL,
				"x",
				"f",
				.var_address=&bbt_x
			},
			{
				BBDEBUGDECL_LOCAL,
				"y",
				"f",
				.var_address=&bbt_y
			},
			{
				BBDEBUGDECL_LOCAL,
				"z",
				"f",
				.var_address=&bbt_z
			},
			{
				BBDEBUGDECL_LOCAL,
				"axis",
				"i",
				.var_address=&bbt_axis
			},
			{
				BBDEBUGDECL_LOCAL,
				"rate",
				"i",
				.var_address=&bbt_rate
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x7997c65814154ece, 4980, 0};
	bbOnDebugEnterStm(&__stmt_0);
	((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)bbt_entity))->clas->m_AlignToVector_fffif((struct openb3d_openb3dcore_TEntity_obj*)bbt_entity,bbt_x,bbt_y,bbt_z,bbt_axis,((BBFLOAT)bbt_rate));
	bbOnDebugLeaveScope();
	return 0;
}
struct openb3d_openb3dcore_TMesh_obj* openb3d_openb3dcore_CreatePlane(BBINT bbt_divisions,struct openb3d_openb3dcore_TEntity_obj* bbt_parent){
	struct BBDebugScope_2 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"CreatePlane",
		{
			{
				BBDEBUGDECL_LOCAL,
				"divisions",
				"i",
				.var_address=&bbt_divisions
			},
			{
				BBDEBUGDECL_LOCAL,
				"parent",
				":TEntity",
				.var_address=&bbt_parent
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x7997c65814154ece, 5008, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbOnDebugLeaveScope();
	return (struct openb3d_openb3dcore_TMesh_obj*)openb3d_openb3dcore_TMesh_CreatePlane_TTMesh_iTTEntity(bbt_divisions,(struct openb3d_openb3dcore_TEntity_obj*)bbt_parent);
}
struct openb3d_openb3dcore_TTerrain_obj* openb3d_openb3dcore_CreateTerrain(BBINT bbt_size,struct openb3d_openb3dcore_TEntity_obj* bbt_parent){
	struct BBDebugScope_2 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"CreateTerrain",
		{
			{
				BBDEBUGDECL_LOCAL,
				"size",
				"i",
				.var_address=&bbt_size
			},
			{
				BBDEBUGDECL_LOCAL,
				"parent",
				":TEntity",
				.var_address=&bbt_parent
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x7997c65814154ece, 5038, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbOnDebugLeaveScope();
	return (struct openb3d_openb3dcore_TTerrain_obj*)openb3d_openb3dcore_TTerrain_CreateTerrain_TTTerrain_iTTEntity(bbt_size,(struct openb3d_openb3dcore_TEntity_obj*)bbt_parent);
}
BBINT openb3d_openb3dcore_LoadAnimSeq(struct openb3d_openb3dcore_TEntity_obj* bbt_ent,BBSTRING bbt_file){
	struct BBDebugScope_2 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"LoadAnimSeq",
		{
			{
				BBDEBUGDECL_LOCAL,
				"ent",
				":TEntity",
				.var_address=&bbt_ent
			},
			{
				BBDEBUGDECL_LOCAL,
				"file",
				"$",
				.var_address=&bbt_file
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x7997c65814154ece, 5058, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbOnDebugLeaveScope();
	return ((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)bbt_ent))->clas->m_LoadAnimSeq_S((struct openb3d_openb3dcore_TEntity_obj*)bbt_ent,bbt_file);
}
struct openb3d_openb3dcore_TTerrain_obj* openb3d_openb3dcore_LoadTerrain(BBSTRING bbt_file,struct openb3d_openb3dcore_TEntity_obj* bbt_parent){
	struct BBDebugScope_2 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"LoadTerrain",
		{
			{
				BBDEBUGDECL_LOCAL,
				"file",
				"$",
				.var_address=&bbt_file
			},
			{
				BBDEBUGDECL_LOCAL,
				"parent",
				":TEntity",
				.var_address=&bbt_parent
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x7997c65814154ece, 5095, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbOnDebugLeaveScope();
	return (struct openb3d_openb3dcore_TTerrain_obj*)openb3d_openb3dcore_TTerrain_LoadTerrain_TTTerrain_STTEntity(bbt_file,(struct openb3d_openb3dcore_TEntity_obj*)bbt_parent);
}
BBINT openb3d_openb3dcore_MeshesIntersect(struct openb3d_openb3dcore_TMesh_obj* bbt_mesh1,struct openb3d_openb3dcore_TMesh_obj* bbt_mesh2){
	struct BBDebugScope_2 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"MeshesIntersect",
		{
			{
				BBDEBUGDECL_LOCAL,
				"mesh1",
				":TMesh",
				.var_address=&bbt_mesh1
			},
			{
				BBDEBUGDECL_LOCAL,
				"mesh2",
				":TMesh",
				.var_address=&bbt_mesh2
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x7997c65814154ece, 5117, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbOnDebugLeaveScope();
	return ((struct openb3d_openb3dcore_TMesh_obj*)bbNullObjectTest((BBObject*)bbt_mesh1))->clas->m_MeshesIntersect_TTMesh((struct openb3d_openb3dcore_TMesh_obj*)bbt_mesh1,(struct openb3d_openb3dcore_TMesh_obj*)bbt_mesh2);
}
BBINT openb3d_openb3dcore_ModifyTerrain(struct openb3d_openb3dcore_TTerrain_obj* bbt_terr,BBINT bbt_x,BBINT bbt_z,BBFLOAT bbt_new_height){
	struct BBDebugScope_4 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"ModifyTerrain",
		{
			{
				BBDEBUGDECL_LOCAL,
				"terr",
				":TTerrain",
				.var_address=&bbt_terr
			},
			{
				BBDEBUGDECL_LOCAL,
				"x",
				"i",
				.var_address=&bbt_x
			},
			{
				BBDEBUGDECL_LOCAL,
				"z",
				"i",
				.var_address=&bbt_z
			},
			{
				BBDEBUGDECL_LOCAL,
				"new_height",
				"f",
				.var_address=&bbt_new_height
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x7997c65814154ece, 5141, 0};
	bbOnDebugEnterStm(&__stmt_0);
	((struct openb3d_openb3dcore_TTerrain_obj*)bbNullObjectTest((BBObject*)bbt_terr))->clas->m_ModifyTerrain_iif((struct openb3d_openb3dcore_TTerrain_obj*)bbt_terr,bbt_x,bbt_z,bbt_new_height);
	bbOnDebugLeaveScope();
	return 0;
}
BBINT openb3d_openb3dcore_SetAnimKey(struct openb3d_openb3dcore_TEntity_obj* bbt_ent,BBFLOAT bbt_frame,BBINT bbt_pos_key,BBINT bbt_rot_key,BBINT bbt_scale_key){
	struct BBDebugScope_5 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"SetAnimKey",
		{
			{
				BBDEBUGDECL_LOCAL,
				"ent",
				":TEntity",
				.var_address=&bbt_ent
			},
			{
				BBDEBUGDECL_LOCAL,
				"frame",
				"f",
				.var_address=&bbt_frame
			},
			{
				BBDEBUGDECL_LOCAL,
				"pos_key",
				"i",
				.var_address=&bbt_pos_key
			},
			{
				BBDEBUGDECL_LOCAL,
				"rot_key",
				"i",
				.var_address=&bbt_rot_key
			},
			{
				BBDEBUGDECL_LOCAL,
				"scale_key",
				"i",
				.var_address=&bbt_scale_key
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x7997c65814154ece, 5167, 0};
	bbOnDebugEnterStm(&__stmt_0);
	((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)bbt_ent))->clas->m_SetAnimKey_fiii((struct openb3d_openb3dcore_TEntity_obj*)bbt_ent,bbt_frame,bbt_pos_key,bbt_rot_key,bbt_scale_key);
	bbOnDebugLeaveScope();
	return 0;
}
BBFLOAT openb3d_openb3dcore_TerrainHeight(struct openb3d_openb3dcore_TTerrain_obj* bbt_terr,BBINT bbt_x,BBINT bbt_z){
	struct BBDebugScope_3 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"TerrainHeight",
		{
			{
				BBDEBUGDECL_LOCAL,
				"terr",
				":TTerrain",
				.var_address=&bbt_terr
			},
			{
				BBDEBUGDECL_LOCAL,
				"x",
				"i",
				.var_address=&bbt_x
			},
			{
				BBDEBUGDECL_LOCAL,
				"z",
				"i",
				.var_address=&bbt_z
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x7997c65814154ece, 5189, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbOnDebugLeaveScope();
	return ((struct openb3d_openb3dcore_TTerrain_obj*)bbNullObjectTest((BBObject*)bbt_terr))->clas->m_TerrainHeight_ii((struct openb3d_openb3dcore_TTerrain_obj*)bbt_terr,bbt_x,bbt_z);
}
BBFLOAT openb3d_openb3dcore_TerrainX(struct openb3d_openb3dcore_TTerrain_obj* bbt_terr,BBFLOAT bbt_x,BBFLOAT bbt_y,BBFLOAT bbt_z){
	struct BBDebugScope_4 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"TerrainX",
		{
			{
				BBDEBUGDECL_LOCAL,
				"terr",
				":TTerrain",
				.var_address=&bbt_terr
			},
			{
				BBDEBUGDECL_LOCAL,
				"x",
				"f",
				.var_address=&bbt_x
			},
			{
				BBDEBUGDECL_LOCAL,
				"y",
				"f",
				.var_address=&bbt_y
			},
			{
				BBDEBUGDECL_LOCAL,
				"z",
				"f",
				.var_address=&bbt_z
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x7997c65814154ece, 5213, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbOnDebugLeaveScope();
	return ((struct openb3d_openb3dcore_TTerrain_obj*)bbNullObjectTest((BBObject*)bbt_terr))->clas->m_TerrainX_fff((struct openb3d_openb3dcore_TTerrain_obj*)bbt_terr,bbt_x,bbt_y,bbt_z);
}
BBFLOAT openb3d_openb3dcore_TerrainY(struct openb3d_openb3dcore_TTerrain_obj* bbt_terr,BBFLOAT bbt_x,BBFLOAT bbt_y,BBFLOAT bbt_z){
	struct BBDebugScope_4 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"TerrainY",
		{
			{
				BBDEBUGDECL_LOCAL,
				"terr",
				":TTerrain",
				.var_address=&bbt_terr
			},
			{
				BBDEBUGDECL_LOCAL,
				"x",
				"f",
				.var_address=&bbt_x
			},
			{
				BBDEBUGDECL_LOCAL,
				"y",
				"f",
				.var_address=&bbt_y
			},
			{
				BBDEBUGDECL_LOCAL,
				"z",
				"f",
				.var_address=&bbt_z
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x7997c65814154ece, 5239, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbOnDebugLeaveScope();
	return ((struct openb3d_openb3dcore_TTerrain_obj*)bbNullObjectTest((BBObject*)bbt_terr))->clas->m_TerrainY_fff((struct openb3d_openb3dcore_TTerrain_obj*)bbt_terr,bbt_x,bbt_y,bbt_z);
}
BBFLOAT openb3d_openb3dcore_TerrainZ(struct openb3d_openb3dcore_TTerrain_obj* bbt_terr,BBFLOAT bbt_x,BBFLOAT bbt_y,BBFLOAT bbt_z){
	struct BBDebugScope_4 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"TerrainZ",
		{
			{
				BBDEBUGDECL_LOCAL,
				"terr",
				":TTerrain",
				.var_address=&bbt_terr
			},
			{
				BBDEBUGDECL_LOCAL,
				"x",
				"f",
				.var_address=&bbt_x
			},
			{
				BBDEBUGDECL_LOCAL,
				"y",
				"f",
				.var_address=&bbt_y
			},
			{
				BBDEBUGDECL_LOCAL,
				"z",
				"f",
				.var_address=&bbt_z
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x7997c65814154ece, 5263, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbOnDebugLeaveScope();
	return ((struct openb3d_openb3dcore_TTerrain_obj*)bbNullObjectTest((BBObject*)bbt_terr))->clas->m_TerrainZ_fff((struct openb3d_openb3dcore_TTerrain_obj*)bbt_terr,bbt_x,bbt_y,bbt_z);
}
BBINT openb3d_openb3dcore_ManualCollision(struct openb3d_openb3dcore_TEntity_obj* bbt_ent,struct openb3d_openb3dcore_TEntity_obj* bbt_ent2,BBINT bbt_col_method,BBINT bbt_col_response){
	struct BBDebugScope_4 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"ManualCollision",
		{
			{
				BBDEBUGDECL_LOCAL,
				"ent",
				":TEntity",
				.var_address=&bbt_ent
			},
			{
				BBDEBUGDECL_LOCAL,
				"ent2",
				":TEntity",
				.var_address=&bbt_ent2
			},
			{
				BBDEBUGDECL_LOCAL,
				"col_method",
				"i",
				.var_address=&bbt_col_method
			},
			{
				BBDEBUGDECL_LOCAL,
				"col_response",
				"i",
				.var_address=&bbt_col_response
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x4af243160143e7fa, 9, 0};
	bbOnDebugEnterStm(&__stmt_0);
	ManualCollision_(openb3d_openb3dcore_TEntity_GetInstance_pb_TTEntity((struct openb3d_openb3dcore_TEntity_obj*)bbt_ent),openb3d_openb3dcore_TEntity_GetInstance_pb_TTEntity((struct openb3d_openb3dcore_TEntity_obj*)bbt_ent2),bbt_col_method,bbt_col_response);
	bbOnDebugLeaveScope();
	return 0;
}
BBINT openb3d_openb3dcore_CheckFramebufferStatus(BBINT bbt_target){
	struct BBDebugScope_1 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"CheckFramebufferStatus",
		{
			{
				BBDEBUGDECL_LOCAL,
				"target",
				"i",
				.var_address=&bbt_target
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x4af243160143e7fa, 16, 0};
	bbOnDebugEnterStm(&__stmt_0);
	openb3d_openb3dcore_TGlobal3D_CheckFramebufferStatus_i_i(bbt_target);
	bbOnDebugLeaveScope();
	return 0;
}
BBINT openb3d_openb3dcore_TerrainCountTriangles(struct openb3d_openb3dcore_TTerrain_obj* bbt_terr){
	struct BBDebugScope_1 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"TerrainCountTriangles",
		{
			{
				BBDEBUGDECL_LOCAL,
				"terr",
				":TTerrain",
				.var_address=&bbt_terr
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x4af243160143e7fa, 23, 0};
	bbOnDebugEnterStm(&__stmt_0);
	((struct openb3d_openb3dcore_TTerrain_obj*)bbNullObjectTest((BBObject*)bbt_terr))->clas->m_TerrainCountTriangles((struct openb3d_openb3dcore_TTerrain_obj*)bbt_terr);
	bbOnDebugLeaveScope();
	return 0;
}
BBINT openb3d_openb3dcore_TerrainCountVertices(struct openb3d_openb3dcore_TTerrain_obj* bbt_terr){
	struct BBDebugScope_1 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"TerrainCountVertices",
		{
			{
				BBDEBUGDECL_LOCAL,
				"terr",
				":TTerrain",
				.var_address=&bbt_terr
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x4af243160143e7fa, 30, 0};
	bbOnDebugEnterStm(&__stmt_0);
	((struct openb3d_openb3dcore_TTerrain_obj*)bbNullObjectTest((BBObject*)bbt_terr))->clas->m_TerrainCountVertices((struct openb3d_openb3dcore_TTerrain_obj*)bbt_terr);
	bbOnDebugLeaveScope();
	return 0;
}
BBINT openb3d_openb3dcore_TerrainScaleTexCoords(struct openb3d_openb3dcore_TTerrain_obj* bbt_terr,BBFLOAT bbt_u_scale,BBFLOAT bbt_v_scale,BBINT bbt_coords_set){
	struct BBDebugScope_4 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"TerrainScaleTexCoords",
		{
			{
				BBDEBUGDECL_LOCAL,
				"terr",
				":TTerrain",
				.var_address=&bbt_terr
			},
			{
				BBDEBUGDECL_LOCAL,
				"u_scale",
				"f",
				.var_address=&bbt_u_scale
			},
			{
				BBDEBUGDECL_LOCAL,
				"v_scale",
				"f",
				.var_address=&bbt_v_scale
			},
			{
				BBDEBUGDECL_LOCAL,
				"coords_set",
				"i",
				.var_address=&bbt_coords_set
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x4af243160143e7fa, 37, 0};
	bbOnDebugEnterStm(&__stmt_0);
	((struct openb3d_openb3dcore_TTerrain_obj*)bbNullObjectTest((BBObject*)bbt_terr))->clas->m_TerrainScaleTexCoords_ffi((struct openb3d_openb3dcore_TTerrain_obj*)bbt_terr,bbt_u_scale,bbt_v_scale,bbt_coords_set);
	bbOnDebugLeaveScope();
	return 0;
}
BBINT openb3d_openb3dcore_TerrainDetail(struct openb3d_openb3dcore_TTerrain_obj* bbt_terr,BBFLOAT bbt_detail_level){
	struct BBDebugScope_2 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"TerrainDetail",
		{
			{
				BBDEBUGDECL_LOCAL,
				"terr",
				":TTerrain",
				.var_address=&bbt_terr
			},
			{
				BBDEBUGDECL_LOCAL,
				"detail_level",
				"f",
				.var_address=&bbt_detail_level
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x4af243160143e7fa, 44, 0};
	bbOnDebugEnterStm(&__stmt_0);
	((struct openb3d_openb3dcore_TTerrain_obj*)bbNullObjectTest((BBObject*)bbt_terr))->clas->m_TerrainDetail_f((struct openb3d_openb3dcore_TTerrain_obj*)bbt_terr,bbt_detail_level);
	bbOnDebugLeaveScope();
	return 0;
}
BBINT openb3d_openb3dcore_MSAntiAlias(BBINT bbt_multisample){
	struct BBDebugScope_1 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"MSAntiAlias",
		{
			{
				BBDEBUGDECL_LOCAL,
				"multisample",
				"i",
				.var_address=&bbt_multisample
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x4af243160143e7fa, 51, 0};
	bbOnDebugEnterStm(&__stmt_0);
	openb3d_openb3dcore_TGlobal3D_MSAntiAlias_i_i(bbt_multisample);
	bbOnDebugLeaveScope();
	return 0;
}
BBINT openb3d_openb3dcore_GlobalResolution(BBINT bbt_width,BBINT bbt_height){
	struct BBDebugScope_2 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"GlobalResolution",
		{
			{
				BBDEBUGDECL_LOCAL,
				"width",
				"i",
				.var_address=&bbt_width
			},
			{
				BBDEBUGDECL_LOCAL,
				"height",
				"i",
				.var_address=&bbt_height
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x4af243160143e7fa, 60, 0};
	bbOnDebugEnterStm(&__stmt_0);
	openb3d_openb3dcore_TGlobal3D_width[0]=bbt_width;
	struct BBDebugStm __stmt_1 = {0x4af243160143e7fa, 61, 0};
	bbOnDebugEnterStm(&__stmt_1);
	openb3d_openb3dcore_TGlobal3D_height[0]=bbt_height;
	bbOnDebugLeaveScope();
	return 0;
}
BBINT openb3d_openb3dcore_GlobalWidth(){
	struct BBDebugScope __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"GlobalWidth",
		{
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x4af243160143e7fa, 68, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbOnDebugLeaveScope();
	return openb3d_openb3dcore_TGlobal3D_width[0];
}
BBINT openb3d_openb3dcore_GlobalHeight(){
	struct BBDebugScope __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"GlobalHeight",
		{
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x4af243160143e7fa, 75, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbOnDebugLeaveScope();
	return openb3d_openb3dcore_TGlobal3D_height[0];
}
BBSTRING openb3d_openb3dcore_StringPtr(BBBYTE* bbt_inst){
	struct BBDebugScope_1 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"StringPtr",
		{
			{
				BBDEBUGDECL_LOCAL,
				"inst",
				"*b",
				.var_address=&bbt_inst
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x4af243160143e7fa, 83, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbOnDebugLeaveScope();
	return bbStringFromSizet(bbt_inst);
}
BBINT openb3d_openb3dcore_AlphaDiscard(struct openb3d_openb3dcore_TTexture_obj* bbt_tex,BBFLOAT bbt_alpha){
	struct BBDebugScope_2 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"AlphaDiscard",
		{
			{
				BBDEBUGDECL_LOCAL,
				"tex",
				":TTexture",
				.var_address=&bbt_tex
			},
			{
				BBDEBUGDECL_LOCAL,
				"alpha",
				"f",
				.var_address=&bbt_alpha
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x4af243160143e7fa, 100, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbOnDebugLeaveScope();
	return ((struct openb3d_openb3dcore_TTexture_obj*)bbNullObjectTest((BBObject*)bbt_tex))->clas->m_AlphaDiscard_f((struct openb3d_openb3dcore_TTexture_obj*)bbt_tex,bbt_alpha);
}
struct openb3d_openb3dcore_TMesh_obj* openb3d_openb3dcore_LoadMD2(BBOBJECT bbt_url,struct openb3d_openb3dcore_TEntity_obj* bbt_parent){
	struct BBDebugScope_2 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"LoadMD2",
		{
			{
				BBDEBUGDECL_LOCAL,
				"url",
				":Object",
				.var_address=&bbt_url
			},
			{
				BBDEBUGDECL_LOCAL,
				"parent",
				":TEntity",
				.var_address=&bbt_parent
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x4af243160143e7fa, 107, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbOnDebugLeaveScope();
	return (struct openb3d_openb3dcore_TMesh_obj*)openb3d_openb3dcore_TMD2_LoadMD2_TTMesh_TObjectTTEntity((BBOBJECT)((BBString *)bbObjectStringcast((BBOBJECT)bbt_url)),(struct openb3d_openb3dcore_TEntity_obj*)bbt_parent);
}
struct openb3d_openb3dcore_TMesh_obj* openb3d_openb3dcore_LoadAnimMesh(BBOBJECT bbt_url,struct openb3d_openb3dcore_TEntity_obj* bbt_parent,BBINT bbt_flags){
	struct brl_stream_TStream_obj* bbt_stream=(struct brl_stream_TStream_obj*)((struct brl_stream_TStream_obj*)&bbNullObject);
	BBINT bbt_pos=0;
	struct openb3d_openb3dcore_TMesh_obj* volatile bbt_mesh=(struct openb3d_openb3dcore_TMesh_obj*)((struct openb3d_openb3dcore_TMesh_obj*)&bbNullObject);
	struct openb3d_openb3dcore_TMeshLoader_obj* bbt_loader=(struct openb3d_openb3dcore_TMeshLoader_obj*)((struct openb3d_openb3dcore_TMeshLoader_obj*)&bbNullObject);
	struct BBDebugScope_7 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"LoadAnimMesh",
		{
			{
				BBDEBUGDECL_LOCAL,
				"url",
				":Object",
				.var_address=&bbt_url
			},
			{
				BBDEBUGDECL_LOCAL,
				"parent",
				":TEntity",
				.var_address=&bbt_parent
			},
			{
				BBDEBUGDECL_LOCAL,
				"flags",
				"i",
				.var_address=&bbt_flags
			},
			{
				BBDEBUGDECL_LOCAL,
				"stream",
				":TStream",
				.var_address=&bbt_stream
			},
			{
				BBDEBUGDECL_LOCAL,
				"pos",
				"i",
				.var_address=&bbt_pos
			},
			{
				BBDEBUGDECL_LOCAL,
				"mesh",
				":TMesh",
				.var_address=&bbt_mesh
			},
			{
				BBDEBUGDECL_LOCAL,
				"loader",
				":TMeshLoader",
				.var_address=&bbt_loader
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x4af243160143e7fa, 115, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbt_stream=(struct brl_stream_TStream_obj*)brl_endianstream_LittleEndianStream((struct brl_stream_TStream_obj*)brl_filesystem_ReadFile((BBOBJECT)bbt_url));
	struct BBDebugStm __stmt_1 = {0x4af243160143e7fa, 116, 0};
	bbOnDebugEnterStm(&__stmt_1);
	if(!(((BBObject*)bbt_stream)!= &bbNullObject)){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x4af243160143e7fa, 117, 0};
		bbOnDebugEnterStm(&__stmt_0);
		brl_blitz_DebugLog(bbStringConcat(bbStringConcat(bbStringConcat(((BBString*)&_s770),brl_filesystem_ExtractExt((BBString *)bbObjectStringcast((BBOBJECT)bbt_url))),((BBString*)&_s771)),((BBString *)bbObjectStringcast((BBOBJECT)bbt_url))));
		struct BBDebugStm __stmt_1 = {0x4af243160143e7fa, 118, 0};
		bbOnDebugEnterStm(&__stmt_1);
		bbOnDebugLeaveScope();
		bbOnDebugLeaveScope();
		return (struct openb3d_openb3dcore_TMesh_obj*)&bbNullObject;
	}
	struct BBDebugStm __stmt_2 = {0x4af243160143e7fa, 121, 0};
	bbOnDebugEnterStm(&__stmt_2);
	bbt_pos=((BBINT)((struct brl_stream_TStream_obj*)bbNullObjectTest((BBObject*)bbt_stream))->clas->m_Pos((struct brl_stream_TIO_obj*)bbt_stream));
	struct BBDebugStm __stmt_3 = {0x4af243160143e7fa, 122, 0};
	bbOnDebugEnterStm(&__stmt_3);
	if(bbt_pos==-1){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x4af243160143e7fa, 123, 0};
		bbOnDebugEnterStm(&__stmt_0);
		((struct brl_stream_TStream_obj*)bbNullObjectTest((BBObject*)bbt_stream))->clas->m_Close((struct brl_stream_TIO_obj*)bbt_stream);
		struct BBDebugStm __stmt_1 = {0x4af243160143e7fa, 124, 0};
		bbOnDebugEnterStm(&__stmt_1);
		bbOnDebugLeaveScope();
		bbOnDebugLeaveScope();
		return (struct openb3d_openb3dcore_TMesh_obj*)((struct openb3d_openb3dcore_TMesh_obj*)&bbNullObject);
	}
	struct BBDebugStm __stmt_4 = {0x4af243160143e7fa, 127, 0};
	bbOnDebugEnterStm(&__stmt_4);
	bbt_mesh=(struct openb3d_openb3dcore_TMesh_obj*)((struct openb3d_openb3dcore_TMesh_obj*)&bbNullObject);
	struct BBDebugStm __stmt_5 = {0x4af243160143e7fa, 128, 0};
	bbOnDebugEnterStm(&__stmt_5);
	bbt_loader=(struct openb3d_openb3dcore_TMeshLoader_obj*)openb3d_openb3dcore_mesh_loaders;
	struct BBDebugStm __stmt_6 = {0x4af243160143e7fa, 129, 0};
	bbOnDebugEnterStm(&__stmt_6);
	while(((BBObject*)bbt_loader)!= &bbNullObject){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x4af243160143e7fa, 130, 0};
		bbOnDebugEnterStm(&__stmt_0);
		((struct brl_stream_TStream_obj*)bbNullObjectTest((BBObject*)bbt_stream))->clas->m_Seek_li((struct brl_stream_TIO_obj*)bbt_stream,((BBLONG)bbt_pos),0);
		struct BBDebugStm __stmt_1 = {0x4af243160143e7fa, 131, 0};
		bbOnDebugEnterStm(&__stmt_1);
		{
			BBOBJECT ex;
			bbExTry {
				case 0: {
					bbOnDebugPushExState();
					struct BBDebugScope __scope = {
						BBDEBUGSCOPE_LOCALBLOCK,
						0,
						{
							{
								BBDEBUGDECL_END
							}
						}
					};
					bbOnDebugEnterScope((BBDebugScope *)&__scope);
					struct BBDebugStm __stmt_0 = {0x4af243160143e7fa, 132, 0};
					bbOnDebugEnterStm(&__stmt_0);
					bbt_mesh=(struct openb3d_openb3dcore_TMesh_obj*)((struct openb3d_openb3dcore_TMeshLoader_obj*)bbNullObjectTest((BBObject*)bbt_loader))->clas->m_LoadAnimMesh_TTStreamTObjectTTEntityi((struct openb3d_openb3dcore_TMeshLoader_obj*)bbt_loader,(struct brl_stream_TStream_obj*)bbt_stream,(BBOBJECT)bbt_url,(struct openb3d_openb3dcore_TEntity_obj*)bbt_parent,bbt_flags);
					bbOnDebugLeaveScope();
					bbExLeave();
					bbOnDebugPopExState();
				}
				break;
				case 1: {
					bbOnDebugPopExState();
					ex = bbExCatch();
					if (bbObjectDowncast((BBOBJECT)ex,(BBClass*)&brl_stream_TStreamException) != &bbNullObject) {
						struct brl_stream_TStreamException_obj* bbt_ex=(struct brl_stream_TStreamException_obj*)ex;
						struct BBDebugScope_1 __scope = {
							BBDEBUGSCOPE_LOCALBLOCK,
							0,
							{
								{
									BBDEBUGDECL_LOCAL,
									"ex",
									":TStreamException",
									.var_address=&bbt_ex
								},
								{
									BBDEBUGDECL_END
								}
							}
						};
						bbOnDebugEnterScope((BBDebugScope *)&__scope);
						bbOnDebugLeaveScope();
					} else {
						goto _rethrow;
					}
					goto _endtry;
				}
				break;
				_rethrow:;
				bbExThrow(ex);
			}
		}
		_endtry:;
		struct BBDebugStm __stmt_2 = {0x4af243160143e7fa, 135, 0};
		bbOnDebugEnterStm(&__stmt_2);
		if(((BBObject*)bbt_mesh)!= &bbNullObject){
			struct BBDebugScope __scope = {
				BBDEBUGSCOPE_LOCALBLOCK,
				0,
				{
					{
						BBDEBUGDECL_END
					}
				}
			};
			bbOnDebugEnterScope((BBDebugScope *)&__scope);
			struct BBDebugStm __stmt_0 = {0x4af243160143e7fa, 135, 0};
			bbOnDebugEnterStm(&__stmt_0);
			bbOnDebugLeaveScope();
			bbOnDebugLeaveScope();
			break;
		}
		struct BBDebugStm __stmt_3 = {0x4af243160143e7fa, 136, 0};
		bbOnDebugEnterStm(&__stmt_3);
		bbt_loader=(struct openb3d_openb3dcore_TMeshLoader_obj*)((struct openb3d_openb3dcore_TMeshLoader_obj*)bbNullObjectTest((BBObject*)bbt_loader))->_openb3d_openb3dcore_tmeshloader__succ ;
		bbOnDebugLeaveScope();
	}
	struct BBDebugStm __stmt_7 = {0x4af243160143e7fa, 138, 0};
	bbOnDebugEnterStm(&__stmt_7);
	((struct brl_stream_TStream_obj*)bbNullObjectTest((BBObject*)bbt_stream))->clas->m_Close((struct brl_stream_TIO_obj*)bbt_stream);
	struct BBDebugStm __stmt_8 = {0x4af243160143e7fa, 139, 0};
	bbOnDebugEnterStm(&__stmt_8);
	bbOnDebugLeaveScope();
	return (struct openb3d_openb3dcore_TMesh_obj*)bbt_mesh;
}
struct openb3d_openb3dcore_TMesh_obj* openb3d_openb3dcore_LoadMesh(BBOBJECT bbt_url,struct openb3d_openb3dcore_TEntity_obj* bbt_parent,BBINT bbt_flags){
	struct brl_stream_TStream_obj* bbt_stream=(struct brl_stream_TStream_obj*)((struct brl_stream_TStream_obj*)&bbNullObject);
	BBINT bbt_pos=0;
	struct openb3d_openb3dcore_TMesh_obj* volatile bbt_mesh=(struct openb3d_openb3dcore_TMesh_obj*)((struct openb3d_openb3dcore_TMesh_obj*)&bbNullObject);
	struct openb3d_openb3dcore_TMeshLoader_obj* bbt_loader=(struct openb3d_openb3dcore_TMeshLoader_obj*)((struct openb3d_openb3dcore_TMeshLoader_obj*)&bbNullObject);
	struct BBDebugScope_7 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"LoadMesh",
		{
			{
				BBDEBUGDECL_LOCAL,
				"url",
				":Object",
				.var_address=&bbt_url
			},
			{
				BBDEBUGDECL_LOCAL,
				"parent",
				":TEntity",
				.var_address=&bbt_parent
			},
			{
				BBDEBUGDECL_LOCAL,
				"flags",
				"i",
				.var_address=&bbt_flags
			},
			{
				BBDEBUGDECL_LOCAL,
				"stream",
				":TStream",
				.var_address=&bbt_stream
			},
			{
				BBDEBUGDECL_LOCAL,
				"pos",
				"i",
				.var_address=&bbt_pos
			},
			{
				BBDEBUGDECL_LOCAL,
				"mesh",
				":TMesh",
				.var_address=&bbt_mesh
			},
			{
				BBDEBUGDECL_LOCAL,
				"loader",
				":TMeshLoader",
				.var_address=&bbt_loader
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x4af243160143e7fa, 147, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbt_stream=(struct brl_stream_TStream_obj*)brl_endianstream_LittleEndianStream((struct brl_stream_TStream_obj*)brl_filesystem_ReadFile((BBOBJECT)bbt_url));
	struct BBDebugStm __stmt_1 = {0x4af243160143e7fa, 148, 0};
	bbOnDebugEnterStm(&__stmt_1);
	if(!(((BBObject*)bbt_stream)!= &bbNullObject)){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x4af243160143e7fa, 149, 0};
		bbOnDebugEnterStm(&__stmt_0);
		brl_blitz_DebugLog(bbStringConcat(bbStringConcat(bbStringConcat(((BBString*)&_s770),brl_filesystem_ExtractExt((BBString *)bbObjectStringcast((BBOBJECT)bbt_url))),((BBString*)&_s771)),((BBString *)bbObjectStringcast((BBOBJECT)bbt_url))));
		struct BBDebugStm __stmt_1 = {0x4af243160143e7fa, 150, 0};
		bbOnDebugEnterStm(&__stmt_1);
		bbOnDebugLeaveScope();
		bbOnDebugLeaveScope();
		return (struct openb3d_openb3dcore_TMesh_obj*)&bbNullObject;
	}
	struct BBDebugStm __stmt_2 = {0x4af243160143e7fa, 153, 0};
	bbOnDebugEnterStm(&__stmt_2);
	bbt_pos=((BBINT)((struct brl_stream_TStream_obj*)bbNullObjectTest((BBObject*)bbt_stream))->clas->m_Pos((struct brl_stream_TIO_obj*)bbt_stream));
	struct BBDebugStm __stmt_3 = {0x4af243160143e7fa, 154, 0};
	bbOnDebugEnterStm(&__stmt_3);
	if(bbt_pos==-1){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x4af243160143e7fa, 155, 0};
		bbOnDebugEnterStm(&__stmt_0);
		((struct brl_stream_TStream_obj*)bbNullObjectTest((BBObject*)bbt_stream))->clas->m_Close((struct brl_stream_TIO_obj*)bbt_stream);
		struct BBDebugStm __stmt_1 = {0x4af243160143e7fa, 156, 0};
		bbOnDebugEnterStm(&__stmt_1);
		bbOnDebugLeaveScope();
		bbOnDebugLeaveScope();
		return (struct openb3d_openb3dcore_TMesh_obj*)((struct openb3d_openb3dcore_TMesh_obj*)&bbNullObject);
	}
	struct BBDebugStm __stmt_4 = {0x4af243160143e7fa, 159, 0};
	bbOnDebugEnterStm(&__stmt_4);
	bbt_mesh=(struct openb3d_openb3dcore_TMesh_obj*)((struct openb3d_openb3dcore_TMesh_obj*)&bbNullObject);
	struct BBDebugStm __stmt_5 = {0x4af243160143e7fa, 160, 0};
	bbOnDebugEnterStm(&__stmt_5);
	bbt_loader=(struct openb3d_openb3dcore_TMeshLoader_obj*)openb3d_openb3dcore_mesh_loaders;
	struct BBDebugStm __stmt_6 = {0x4af243160143e7fa, 162, 0};
	bbOnDebugEnterStm(&__stmt_6);
	while(((BBObject*)bbt_loader)!= &bbNullObject){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x4af243160143e7fa, 163, 0};
		bbOnDebugEnterStm(&__stmt_0);
		((struct brl_stream_TStream_obj*)bbNullObjectTest((BBObject*)bbt_stream))->clas->m_Seek_li((struct brl_stream_TIO_obj*)bbt_stream,((BBLONG)bbt_pos),0);
		struct BBDebugStm __stmt_1 = {0x4af243160143e7fa, 164, 0};
		bbOnDebugEnterStm(&__stmt_1);
		{
			BBOBJECT ex;
			bbExTry {
				case 0: {
					bbOnDebugPushExState();
					struct BBDebugScope __scope = {
						BBDEBUGSCOPE_LOCALBLOCK,
						0,
						{
							{
								BBDEBUGDECL_END
							}
						}
					};
					bbOnDebugEnterScope((BBDebugScope *)&__scope);
					struct BBDebugStm __stmt_0 = {0x4af243160143e7fa, 165, 0};
					bbOnDebugEnterStm(&__stmt_0);
					bbt_mesh=(struct openb3d_openb3dcore_TMesh_obj*)((struct openb3d_openb3dcore_TMeshLoader_obj*)bbNullObjectTest((BBObject*)bbt_loader))->clas->m_LoadMesh_TTStreamTObjectTTEntityi((struct openb3d_openb3dcore_TMeshLoader_obj*)bbt_loader,(struct brl_stream_TStream_obj*)bbt_stream,(BBOBJECT)bbt_url,(struct openb3d_openb3dcore_TEntity_obj*)bbt_parent,bbt_flags);
					bbOnDebugLeaveScope();
					bbExLeave();
					bbOnDebugPopExState();
				}
				break;
				case 1: {
					bbOnDebugPopExState();
					ex = bbExCatch();
					if (bbObjectDowncast((BBOBJECT)ex,(BBClass*)&brl_stream_TStreamException) != &bbNullObject) {
						struct brl_stream_TStreamException_obj* bbt_ex=(struct brl_stream_TStreamException_obj*)ex;
						struct BBDebugScope_1 __scope = {
							BBDEBUGSCOPE_LOCALBLOCK,
							0,
							{
								{
									BBDEBUGDECL_LOCAL,
									"ex",
									":TStreamException",
									.var_address=&bbt_ex
								},
								{
									BBDEBUGDECL_END
								}
							}
						};
						bbOnDebugEnterScope((BBDebugScope *)&__scope);
						bbOnDebugLeaveScope();
					} else {
						goto _rethrow;
					}
					goto _endtry;
				}
				break;
				_rethrow:;
				bbExThrow(ex);
			}
		}
		_endtry:;
		struct BBDebugStm __stmt_2 = {0x4af243160143e7fa, 168, 0};
		bbOnDebugEnterStm(&__stmt_2);
		if(((BBObject*)bbt_mesh)!= &bbNullObject){
			struct BBDebugScope __scope = {
				BBDEBUGSCOPE_LOCALBLOCK,
				0,
				{
					{
						BBDEBUGDECL_END
					}
				}
			};
			bbOnDebugEnterScope((BBDebugScope *)&__scope);
			struct BBDebugStm __stmt_0 = {0x4af243160143e7fa, 168, 0};
			bbOnDebugEnterStm(&__stmt_0);
			bbOnDebugLeaveScope();
			bbOnDebugLeaveScope();
			break;
		}
		struct BBDebugStm __stmt_3 = {0x4af243160143e7fa, 169, 0};
		bbOnDebugEnterStm(&__stmt_3);
		bbt_loader=(struct openb3d_openb3dcore_TMeshLoader_obj*)((struct openb3d_openb3dcore_TMeshLoader_obj*)bbNullObjectTest((BBObject*)bbt_loader))->_openb3d_openb3dcore_tmeshloader__succ ;
		bbOnDebugLeaveScope();
	}
	struct BBDebugStm __stmt_7 = {0x4af243160143e7fa, 171, 0};
	bbOnDebugEnterStm(&__stmt_7);
	((struct brl_stream_TStream_obj*)bbNullObjectTest((BBObject*)bbt_stream))->clas->m_Close((struct brl_stream_TIO_obj*)bbt_stream);
	struct BBDebugStm __stmt_8 = {0x4af243160143e7fa, 172, 0};
	bbOnDebugEnterStm(&__stmt_8);
	bbOnDebugLeaveScope();
	return (struct openb3d_openb3dcore_TMesh_obj*)bbt_mesh;
}
BBINT openb3d_openb3dcore_UseLibraryMeshes(BBINT bbt_flag){
	struct BBDebugScope_1 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"UseLibraryMeshes",
		{
			{
				BBDEBUGDECL_LOCAL,
				"flag",
				"i",
				.var_address=&bbt_flag
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x4af243160143e7fa, 204, 0};
	bbOnDebugEnterStm(&__stmt_0);
	openb3d_openb3dcore_TUse_LibraryMeshes_i_i(bbt_flag);
	bbOnDebugLeaveScope();
	return 0;
}
BBINT openb3d_openb3dcore_UseAssimpStreamMeshes(BBINT bbt_flag,BBINT bbt_meshflags){
	struct BBDebugScope_2 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"UseAssimpStreamMeshes",
		{
			{
				BBDEBUGDECL_LOCAL,
				"flag",
				"i",
				.var_address=&bbt_flag
			},
			{
				BBDEBUGDECL_LOCAL,
				"meshflags",
				"i",
				.var_address=&bbt_meshflags
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x4af243160143e7fa, 213, 0};
	bbOnDebugEnterStm(&__stmt_0);
	openb3d_openb3dcore_TUse_AssimpStreamMeshes_i_ii(bbt_flag,bbt_meshflags);
	bbOnDebugLeaveScope();
	return 0;
}
BBINT openb3d_openb3dcore_UseMeshDebugLog(BBINT bbt_flag){
	struct BBDebugScope_1 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"UseMeshDebugLog",
		{
			{
				BBDEBUGDECL_LOCAL,
				"flag",
				"i",
				.var_address=&bbt_flag
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x4af243160143e7fa, 221, 0};
	bbOnDebugEnterStm(&__stmt_0);
	openb3d_openb3dcore_TUse_MeshDebugLog_i_i(bbt_flag);
	bbOnDebugLeaveScope();
	return 0;
}
BBINT openb3d_openb3dcore_UseMeshTransform(BBINT bbt_flag){
	struct BBDebugScope_1 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"UseMeshTransform",
		{
			{
				BBDEBUGDECL_LOCAL,
				"flag",
				"i",
				.var_address=&bbt_flag
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x4af243160143e7fa, 229, 0};
	bbOnDebugEnterStm(&__stmt_0);
	openb3d_openb3dcore_TUse_MeshTransform_i_i(bbt_flag);
	bbOnDebugLeaveScope();
	return 0;
}
BBINT openb3d_openb3dcore_UseMatrix3DS(BBFLOAT bbt_xx,BBFLOAT bbt_xy,BBFLOAT bbt_xz,BBFLOAT bbt_yx,BBFLOAT bbt_yy,BBFLOAT bbt_yz,BBFLOAT bbt_zx,BBFLOAT bbt_zy,BBFLOAT bbt_zz){
	struct BBDebugScope_9 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"UseMatrix3DS",
		{
			{
				BBDEBUGDECL_LOCAL,
				"xx",
				"f",
				.var_address=&bbt_xx
			},
			{
				BBDEBUGDECL_LOCAL,
				"xy",
				"f",
				.var_address=&bbt_xy
			},
			{
				BBDEBUGDECL_LOCAL,
				"xz",
				"f",
				.var_address=&bbt_xz
			},
			{
				BBDEBUGDECL_LOCAL,
				"yx",
				"f",
				.var_address=&bbt_yx
			},
			{
				BBDEBUGDECL_LOCAL,
				"yy",
				"f",
				.var_address=&bbt_yy
			},
			{
				BBDEBUGDECL_LOCAL,
				"yz",
				"f",
				.var_address=&bbt_yz
			},
			{
				BBDEBUGDECL_LOCAL,
				"zx",
				"f",
				.var_address=&bbt_zx
			},
			{
				BBDEBUGDECL_LOCAL,
				"zy",
				"f",
				.var_address=&bbt_zy
			},
			{
				BBDEBUGDECL_LOCAL,
				"zz",
				"f",
				.var_address=&bbt_zz
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x4af243160143e7fa, 236, 0};
	bbOnDebugEnterStm(&__stmt_0);
	openb3d_openb3dcore_TUse_Matrix3DS_i_fffffffff(bbt_xx,bbt_xy,bbt_xz,bbt_yx,bbt_yy,bbt_yz,bbt_zx,bbt_zy,bbt_zz);
	bbOnDebugLeaveScope();
	return 0;
}
BBINT openb3d_openb3dcore_UseMatrixMD2(BBFLOAT bbt_xx,BBFLOAT bbt_xy,BBFLOAT bbt_xz,BBFLOAT bbt_yx,BBFLOAT bbt_yy,BBFLOAT bbt_yz,BBFLOAT bbt_zx,BBFLOAT bbt_zy,BBFLOAT bbt_zz){
	struct BBDebugScope_9 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"UseMatrixMD2",
		{
			{
				BBDEBUGDECL_LOCAL,
				"xx",
				"f",
				.var_address=&bbt_xx
			},
			{
				BBDEBUGDECL_LOCAL,
				"xy",
				"f",
				.var_address=&bbt_xy
			},
			{
				BBDEBUGDECL_LOCAL,
				"xz",
				"f",
				.var_address=&bbt_xz
			},
			{
				BBDEBUGDECL_LOCAL,
				"yx",
				"f",
				.var_address=&bbt_yx
			},
			{
				BBDEBUGDECL_LOCAL,
				"yy",
				"f",
				.var_address=&bbt_yy
			},
			{
				BBDEBUGDECL_LOCAL,
				"yz",
				"f",
				.var_address=&bbt_yz
			},
			{
				BBDEBUGDECL_LOCAL,
				"zx",
				"f",
				.var_address=&bbt_zx
			},
			{
				BBDEBUGDECL_LOCAL,
				"zy",
				"f",
				.var_address=&bbt_zy
			},
			{
				BBDEBUGDECL_LOCAL,
				"zz",
				"f",
				.var_address=&bbt_zz
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x4af243160143e7fa, 243, 0};
	bbOnDebugEnterStm(&__stmt_0);
	openb3d_openb3dcore_TUse_MatrixMD2_i_fffffffff(bbt_xx,bbt_xy,bbt_xz,bbt_yx,bbt_yy,bbt_yz,bbt_zx,bbt_zy,bbt_zz);
	bbOnDebugLeaveScope();
	return 0;
}
BBINT openb3d_openb3dcore_UseLibraryTextures(BBINT bbt_flag){
	struct BBDebugScope_1 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"UseLibraryTextures",
		{
			{
				BBDEBUGDECL_LOCAL,
				"flag",
				"i",
				.var_address=&bbt_flag
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x4af243160143e7fa, 251, 0};
	bbOnDebugEnterStm(&__stmt_0);
	openb3d_openb3dcore_TUse_LibraryTextures_i_i(bbt_flag);
	bbOnDebugLeaveScope();
	return 0;
}
BBINT openb3d_openb3dcore_UseTextureFrames(BBINT bbt_lf0,BBINT bbt_fr1,BBINT bbt_rt2,BBINT bbt_bk3,BBINT bbt_dn4,BBINT bbt_up5){
	struct BBDebugScope_6 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"UseTextureFrames",
		{
			{
				BBDEBUGDECL_LOCAL,
				"lf0",
				"i",
				.var_address=&bbt_lf0
			},
			{
				BBDEBUGDECL_LOCAL,
				"fr1",
				"i",
				.var_address=&bbt_fr1
			},
			{
				BBDEBUGDECL_LOCAL,
				"rt2",
				"i",
				.var_address=&bbt_rt2
			},
			{
				BBDEBUGDECL_LOCAL,
				"bk3",
				"i",
				.var_address=&bbt_bk3
			},
			{
				BBDEBUGDECL_LOCAL,
				"dn4",
				"i",
				.var_address=&bbt_dn4
			},
			{
				BBDEBUGDECL_LOCAL,
				"up5",
				"i",
				.var_address=&bbt_up5
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x4af243160143e7fa, 259, 0};
	bbOnDebugEnterStm(&__stmt_0);
	openb3d_openb3dcore_TUse_TextureFrames_i_iiiiii(bbt_lf0,bbt_fr1,bbt_rt2,bbt_bk3,bbt_dn4,bbt_up5);
	bbOnDebugLeaveScope();
	return 0;
}
BBINT openb3d_openb3dcore_UseTextureFaces(BBINT bbt_lf0,BBINT bbt_fr1,BBINT bbt_rt2,BBINT bbt_bk3,BBINT bbt_dn4,BBINT bbt_up5){
	struct BBDebugScope_6 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"UseTextureFaces",
		{
			{
				BBDEBUGDECL_LOCAL,
				"lf0",
				"i",
				.var_address=&bbt_lf0
			},
			{
				BBDEBUGDECL_LOCAL,
				"fr1",
				"i",
				.var_address=&bbt_fr1
			},
			{
				BBDEBUGDECL_LOCAL,
				"rt2",
				"i",
				.var_address=&bbt_rt2
			},
			{
				BBDEBUGDECL_LOCAL,
				"bk3",
				"i",
				.var_address=&bbt_bk3
			},
			{
				BBDEBUGDECL_LOCAL,
				"dn4",
				"i",
				.var_address=&bbt_dn4
			},
			{
				BBDEBUGDECL_LOCAL,
				"up5",
				"i",
				.var_address=&bbt_up5
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x4af243160143e7fa, 267, 0};
	bbOnDebugEnterStm(&__stmt_0);
	openb3d_openb3dcore_TUse_TextureFaces_i_iiiiii(bbt_lf0,bbt_fr1,bbt_rt2,bbt_bk3,bbt_dn4,bbt_up5);
	bbOnDebugLeaveScope();
	return 0;
}
BBINT openb3d_openb3dcore_UseCubemapFlip(BBINT bbt_flag){
	struct BBDebugScope_1 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"UseCubemapFlip",
		{
			{
				BBDEBUGDECL_LOCAL,
				"flag",
				"i",
				.var_address=&bbt_flag
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x4af243160143e7fa, 275, 0};
	bbOnDebugEnterStm(&__stmt_0);
	openb3d_openb3dcore_TUse_CubemapFlip_i_i(bbt_flag);
	bbOnDebugLeaveScope();
	return 0;
}
BBINT openb3d_openb3dcore_UseMeshTextureFlags(BBINT bbt_texflags){
	struct BBDebugScope_1 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"UseMeshTextureFlags",
		{
			{
				BBDEBUGDECL_LOCAL,
				"texflags",
				"i",
				.var_address=&bbt_texflags
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x4af243160143e7fa, 283, 0};
	bbOnDebugEnterStm(&__stmt_0);
	openb3d_openb3dcore_TUse_MeshTextureFlags_i_i(bbt_texflags);
	bbOnDebugLeaveScope();
	return 0;
}
BBINT openb3d_openb3dcore_FreeBrushTextures(struct openb3d_openb3dcore_TBrush_obj* bbt_brush){
	struct BBDebugScope_1 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"FreeBrushTextures",
		{
			{
				BBDEBUGDECL_LOCAL,
				"brush",
				":TBrush",
				.var_address=&bbt_brush
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x4af243160143e7fa, 290, 0};
	bbOnDebugEnterStm(&__stmt_0);
	((struct openb3d_openb3dcore_TBrush_obj*)bbNullObjectTest((BBObject*)bbt_brush))->clas->m_FreeBrushTextures((struct openb3d_openb3dcore_TBrush_obj*)bbt_brush);
	bbOnDebugLeaveScope();
	return 0;
}
BBINT openb3d_openb3dcore_PositionAnimMesh(struct openb3d_openb3dcore_TMesh_obj* bbt_mesh,BBFLOAT bbt_px,BBFLOAT bbt_py,BBFLOAT bbt_pz){
	struct BBDebugScope_4 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"PositionAnimMesh",
		{
			{
				BBDEBUGDECL_LOCAL,
				"mesh",
				":TMesh",
				.var_address=&bbt_mesh
			},
			{
				BBDEBUGDECL_LOCAL,
				"px",
				"f",
				.var_address=&bbt_px
			},
			{
				BBDEBUGDECL_LOCAL,
				"py",
				"f",
				.var_address=&bbt_py
			},
			{
				BBDEBUGDECL_LOCAL,
				"pz",
				"f",
				.var_address=&bbt_pz
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x4af243160143e7fa, 297, 0};
	bbOnDebugEnterStm(&__stmt_0);
	((struct openb3d_openb3dcore_TMesh_obj*)bbNullObjectTest((BBObject*)bbt_mesh))->clas->m_PositionAnimMesh_fff((struct openb3d_openb3dcore_TMesh_obj*)bbt_mesh,bbt_px,bbt_py,bbt_pz);
	bbOnDebugLeaveScope();
	return 0;
}
BBINT openb3d_openb3dcore_RotateAnimMesh(struct openb3d_openb3dcore_TMesh_obj* bbt_mesh,BBFLOAT bbt_rx,BBFLOAT bbt_ry,BBFLOAT bbt_rz){
	struct BBDebugScope_4 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"RotateAnimMesh",
		{
			{
				BBDEBUGDECL_LOCAL,
				"mesh",
				":TMesh",
				.var_address=&bbt_mesh
			},
			{
				BBDEBUGDECL_LOCAL,
				"rx",
				"f",
				.var_address=&bbt_rx
			},
			{
				BBDEBUGDECL_LOCAL,
				"ry",
				"f",
				.var_address=&bbt_ry
			},
			{
				BBDEBUGDECL_LOCAL,
				"rz",
				"f",
				.var_address=&bbt_rz
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x4af243160143e7fa, 304, 0};
	bbOnDebugEnterStm(&__stmt_0);
	((struct openb3d_openb3dcore_TMesh_obj*)bbNullObjectTest((BBObject*)bbt_mesh))->clas->m_RotateAnimMesh_fff((struct openb3d_openb3dcore_TMesh_obj*)bbt_mesh,bbt_rx,bbt_ry,bbt_rz);
	bbOnDebugLeaveScope();
	return 0;
}
BBINT openb3d_openb3dcore_ScaleAnimMesh(struct openb3d_openb3dcore_TMesh_obj* bbt_mesh,BBFLOAT bbt_sx,BBFLOAT bbt_sy,BBFLOAT bbt_sz){
	struct BBDebugScope_4 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"ScaleAnimMesh",
		{
			{
				BBDEBUGDECL_LOCAL,
				"mesh",
				":TMesh",
				.var_address=&bbt_mesh
			},
			{
				BBDEBUGDECL_LOCAL,
				"sx",
				"f",
				.var_address=&bbt_sx
			},
			{
				BBDEBUGDECL_LOCAL,
				"sy",
				"f",
				.var_address=&bbt_sy
			},
			{
				BBDEBUGDECL_LOCAL,
				"sz",
				"f",
				.var_address=&bbt_sz
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x4af243160143e7fa, 311, 0};
	bbOnDebugEnterStm(&__stmt_0);
	((struct openb3d_openb3dcore_TMesh_obj*)bbNullObjectTest((BBObject*)bbt_mesh))->clas->m_ScaleAnimMesh_fff((struct openb3d_openb3dcore_TMesh_obj*)bbt_mesh,bbt_sx,bbt_sy,bbt_sz);
	bbOnDebugLeaveScope();
	return 0;
}
BBINT openb3d_openb3dcore_CopyRect(BBINT bbt_srcX,BBINT bbt_srcY,BBINT bbt_srcW,BBINT bbt_srcH,BBINT bbt_dstW,BBINT bbt_dstH,BBBYTE* bbt_src,BBBYTE* bbt_dst,BBINT bbt_bPP,BBINT bbt_invert){
	struct BBDebugScope_10 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"CopyRect",
		{
			{
				BBDEBUGDECL_LOCAL,
				"srcX",
				"i",
				.var_address=&bbt_srcX
			},
			{
				BBDEBUGDECL_LOCAL,
				"srcY",
				"i",
				.var_address=&bbt_srcY
			},
			{
				BBDEBUGDECL_LOCAL,
				"srcW",
				"i",
				.var_address=&bbt_srcW
			},
			{
				BBDEBUGDECL_LOCAL,
				"srcH",
				"i",
				.var_address=&bbt_srcH
			},
			{
				BBDEBUGDECL_LOCAL,
				"dstW",
				"i",
				.var_address=&bbt_dstW
			},
			{
				BBDEBUGDECL_LOCAL,
				"dstH",
				"i",
				.var_address=&bbt_dstH
			},
			{
				BBDEBUGDECL_LOCAL,
				"src",
				"*b",
				.var_address=&bbt_src
			},
			{
				BBDEBUGDECL_LOCAL,
				"dst",
				"*b",
				.var_address=&bbt_dst
			},
			{
				BBDEBUGDECL_LOCAL,
				"bPP",
				"i",
				.var_address=&bbt_bPP
			},
			{
				BBDEBUGDECL_LOCAL,
				"invert",
				"i",
				.var_address=&bbt_invert
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x4af243160143e7fa, 319, 0};
	bbOnDebugEnterStm(&__stmt_0);
	CopyRect_(bbt_src,bbt_srcW,bbt_srcH,bbt_srcX,bbt_srcY,bbt_dst,bbt_dstW,bbt_dstH,bbt_bPP,bbt_invert);
	bbOnDebugLeaveScope();
	return 0;
}
BBSTRING openb3d_openb3dcore_GetString(BBOBJECT bbt_obj,BBBYTE* bbt_strPtr){
	struct openb3d_openb3dcore_TBrush_obj* bbt_bru=(struct openb3d_openb3dcore_TBrush_obj*)((struct openb3d_openb3dcore_TBrush_obj*)&bbNullObject);
	struct openb3d_openb3dcore_TEntity_obj* bbt_ent=(struct openb3d_openb3dcore_TEntity_obj*)((struct openb3d_openb3dcore_TEntity_obj*)&bbNullObject);
	struct openb3d_openb3dcore_TTexture_obj* bbt_tex=(struct openb3d_openb3dcore_TTexture_obj*)((struct openb3d_openb3dcore_TTexture_obj*)&bbNullObject);
	struct BBDebugScope_5 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"GetString",
		{
			{
				BBDEBUGDECL_LOCAL,
				"obj",
				":Object",
				.var_address=&bbt_obj
			},
			{
				BBDEBUGDECL_LOCAL,
				"strPtr",
				"*b",
				.var_address=&bbt_strPtr
			},
			{
				BBDEBUGDECL_LOCAL,
				"bru",
				":TBrush",
				.var_address=&bbt_bru
			},
			{
				BBDEBUGDECL_LOCAL,
				"ent",
				":TEntity",
				.var_address=&bbt_ent
			},
			{
				BBDEBUGDECL_LOCAL,
				"tex",
				":TTexture",
				.var_address=&bbt_tex
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x4af243160143e7fa, 326, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbt_bru=(struct openb3d_openb3dcore_TBrush_obj*)((struct openb3d_openb3dcore_TBrush_obj*)bbObjectDowncast((BBOBJECT)bbt_obj,(BBClass*)&openb3d_openb3dcore_TBrush));
	struct BBDebugStm __stmt_1 = {0x4af243160143e7fa, 327, 0};
	bbOnDebugEnterStm(&__stmt_1);
	bbt_ent=(struct openb3d_openb3dcore_TEntity_obj*)((struct openb3d_openb3dcore_TEntity_obj*)bbObjectDowncast((BBOBJECT)bbt_obj,(BBClass*)&openb3d_openb3dcore_TEntity));
	struct BBDebugStm __stmt_2 = {0x4af243160143e7fa, 328, 0};
	bbOnDebugEnterStm(&__stmt_2);
	bbt_tex=(struct openb3d_openb3dcore_TTexture_obj*)((struct openb3d_openb3dcore_TTexture_obj*)bbObjectDowncast((BBOBJECT)bbt_obj,(BBClass*)&openb3d_openb3dcore_TTexture));
	struct BBDebugStm __stmt_3 = {0x4af243160143e7fa, 329, 0};
	bbOnDebugEnterStm(&__stmt_3);
	if(((BBObject*)bbt_bru)!= &bbNullObject){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x4af243160143e7fa, 330, 0};
		bbOnDebugEnterStm(&__stmt_0);
		BBBYTE* bbt_=bbt_strPtr;
		struct BBDebugStm __stmt_1 = {0x4af243160143e7fa, 331, 0};
		bbOnDebugEnterStm(&__stmt_1);
		if(bbt_==((struct openb3d_openb3dcore_TBrush_obj*)bbNullObjectTest((BBObject*)bbt_bru))->_openb3d_openb3dcore_tbrush_name ){
			struct BBDebugScope __scope = {
				BBDEBUGSCOPE_LOCALBLOCK,
				0,
				{
					{
						BBDEBUGDECL_END
					}
				}
			};
			bbOnDebugEnterScope((BBDebugScope *)&__scope);
			struct BBDebugStm __stmt_0 = {0x4af243160143e7fa, 332, 0};
			bbOnDebugEnterStm(&__stmt_0);
			bbOnDebugLeaveScope();
			bbOnDebugLeaveScope();
			bbOnDebugLeaveScope();
			return bbStringFromCString(BrushString_(openb3d_openb3dcore_TBrush_GetInstance_pb_TTBrush((struct openb3d_openb3dcore_TBrush_obj*)bbt_bru),2));
		}
		bbOnDebugLeaveScope();
	}else{
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x4af243160143e7fa, 334, 0};
		bbOnDebugEnterStm(&__stmt_0);
		if(((BBObject*)bbt_ent)!= &bbNullObject){
			struct BBDebugScope __scope = {
				BBDEBUGSCOPE_LOCALBLOCK,
				0,
				{
					{
						BBDEBUGDECL_END
					}
				}
			};
			bbOnDebugEnterScope((BBDebugScope *)&__scope);
			struct BBDebugStm __stmt_0 = {0x4af243160143e7fa, 335, 0};
			bbOnDebugEnterStm(&__stmt_0);
			BBBYTE* bbt_2=bbt_strPtr;
			struct BBDebugStm __stmt_1 = {0x4af243160143e7fa, 336, 0};
			bbOnDebugEnterStm(&__stmt_1);
			if(bbt_2==((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)bbt_ent))->_openb3d_openb3dcore_tentity_name ){
				struct BBDebugScope __scope = {
					BBDEBUGSCOPE_LOCALBLOCK,
					0,
					{
						{
							BBDEBUGDECL_END
						}
					}
				};
				bbOnDebugEnterScope((BBDebugScope *)&__scope);
				struct BBDebugStm __stmt_0 = {0x4af243160143e7fa, 337, 0};
				bbOnDebugEnterStm(&__stmt_0);
				bbOnDebugLeaveScope();
				bbOnDebugLeaveScope();
				bbOnDebugLeaveScope();
				bbOnDebugLeaveScope();
				return bbStringFromCString(EntityString_(openb3d_openb3dcore_TEntity_GetInstance_pb_TTEntity((struct openb3d_openb3dcore_TEntity_obj*)bbt_ent),24));
			}else{
				struct BBDebugScope __scope = {
					BBDEBUGSCOPE_LOCALBLOCK,
					0,
					{
						{
							BBDEBUGDECL_END
						}
					}
				};
				bbOnDebugEnterScope((BBDebugScope *)&__scope);
				struct BBDebugStm __stmt_0 = {0x4af243160143e7fa, 338, 0};
				bbOnDebugEnterStm(&__stmt_0);
				if(bbt_2==((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)bbt_ent))->_openb3d_openb3dcore_tentity_class_name ){
					struct BBDebugScope __scope = {
						BBDEBUGSCOPE_LOCALBLOCK,
						0,
						{
							{
								BBDEBUGDECL_END
							}
						}
					};
					bbOnDebugEnterScope((BBDebugScope *)&__scope);
					struct BBDebugStm __stmt_0 = {0x4af243160143e7fa, 339, 0};
					bbOnDebugEnterStm(&__stmt_0);
					bbOnDebugLeaveScope();
					bbOnDebugLeaveScope();
					bbOnDebugLeaveScope();
					bbOnDebugLeaveScope();
					bbOnDebugLeaveScope();
					return bbStringFromCString(EntityString_(openb3d_openb3dcore_TEntity_GetInstance_pb_TTEntity((struct openb3d_openb3dcore_TEntity_obj*)bbt_ent),25));
				}
				bbOnDebugLeaveScope();
			}
			bbOnDebugLeaveScope();
		}else{
			struct BBDebugScope __scope = {
				BBDEBUGSCOPE_LOCALBLOCK,
				0,
				{
					{
						BBDEBUGDECL_END
					}
				}
			};
			bbOnDebugEnterScope((BBDebugScope *)&__scope);
			struct BBDebugStm __stmt_0 = {0x4af243160143e7fa, 341, 0};
			bbOnDebugEnterStm(&__stmt_0);
			if(((BBObject*)bbt_tex)!= &bbNullObject){
				struct BBDebugScope __scope = {
					BBDEBUGSCOPE_LOCALBLOCK,
					0,
					{
						{
							BBDEBUGDECL_END
						}
					}
				};
				bbOnDebugEnterScope((BBDebugScope *)&__scope);
				struct BBDebugStm __stmt_0 = {0x4af243160143e7fa, 342, 0};
				bbOnDebugEnterStm(&__stmt_0);
				BBBYTE* bbt_3=bbt_strPtr;
				struct BBDebugStm __stmt_1 = {0x4af243160143e7fa, 343, 0};
				bbOnDebugEnterStm(&__stmt_1);
				if(bbt_3==((struct openb3d_openb3dcore_TTexture_obj*)bbNullObjectTest((BBObject*)bbt_tex))->_openb3d_openb3dcore_ttexture_file ){
					struct BBDebugScope __scope = {
						BBDEBUGSCOPE_LOCALBLOCK,
						0,
						{
							{
								BBDEBUGDECL_END
							}
						}
					};
					bbOnDebugEnterScope((BBDebugScope *)&__scope);
					struct BBDebugStm __stmt_0 = {0x4af243160143e7fa, 344, 0};
					bbOnDebugEnterStm(&__stmt_0);
					bbOnDebugLeaveScope();
					bbOnDebugLeaveScope();
					bbOnDebugLeaveScope();
					bbOnDebugLeaveScope();
					bbOnDebugLeaveScope();
					return bbStringFromCString(TextureString_(openb3d_openb3dcore_TTexture_GetInstance_pb_TTTexture((struct openb3d_openb3dcore_TTexture_obj*)bbt_tex),3));
				}else{
					struct BBDebugScope __scope = {
						BBDEBUGSCOPE_LOCALBLOCK,
						0,
						{
							{
								BBDEBUGDECL_END
							}
						}
					};
					bbOnDebugEnterScope((BBDebugScope *)&__scope);
					struct BBDebugStm __stmt_0 = {0x4af243160143e7fa, 345, 0};
					bbOnDebugEnterStm(&__stmt_0);
					if(bbt_3==((struct openb3d_openb3dcore_TTexture_obj*)bbNullObjectTest((BBObject*)bbt_tex))->_openb3d_openb3dcore_ttexture_file_abs ){
						struct BBDebugScope __scope = {
							BBDEBUGSCOPE_LOCALBLOCK,
							0,
							{
								{
									BBDEBUGDECL_END
								}
							}
						};
						bbOnDebugEnterScope((BBDebugScope *)&__scope);
						struct BBDebugStm __stmt_0 = {0x4af243160143e7fa, 346, 0};
						bbOnDebugEnterStm(&__stmt_0);
						bbOnDebugLeaveScope();
						bbOnDebugLeaveScope();
						bbOnDebugLeaveScope();
						bbOnDebugLeaveScope();
						bbOnDebugLeaveScope();
						bbOnDebugLeaveScope();
						return bbStringFromCString(TextureString_(openb3d_openb3dcore_TTexture_GetInstance_pb_TTTexture((struct openb3d_openb3dcore_TTexture_obj*)bbt_tex),13));
					}
					bbOnDebugLeaveScope();
				}
				bbOnDebugLeaveScope();
			}
			bbOnDebugLeaveScope();
		}
		bbOnDebugLeaveScope();
	}
	bbOnDebugLeaveScope();
	return ((BBString*)&bbEmptyString);
}
BBSTRING openb3d_openb3dcore_SetString(BBOBJECT bbt_obj,BBBYTE* bbt_strPtr,BBSTRING bbt_strValue){
	struct openb3d_openb3dcore_TBrush_obj* bbt_bru=(struct openb3d_openb3dcore_TBrush_obj*)((struct openb3d_openb3dcore_TBrush_obj*)&bbNullObject);
	struct openb3d_openb3dcore_TEntity_obj* bbt_ent=(struct openb3d_openb3dcore_TEntity_obj*)((struct openb3d_openb3dcore_TEntity_obj*)&bbNullObject);
	struct openb3d_openb3dcore_TTexture_obj* bbt_tex=(struct openb3d_openb3dcore_TTexture_obj*)((struct openb3d_openb3dcore_TTexture_obj*)&bbNullObject);
	struct BBDebugScope_6 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"SetString",
		{
			{
				BBDEBUGDECL_LOCAL,
				"obj",
				":Object",
				.var_address=&bbt_obj
			},
			{
				BBDEBUGDECL_LOCAL,
				"strPtr",
				"*b",
				.var_address=&bbt_strPtr
			},
			{
				BBDEBUGDECL_LOCAL,
				"strValue",
				"$",
				.var_address=&bbt_strValue
			},
			{
				BBDEBUGDECL_LOCAL,
				"bru",
				":TBrush",
				.var_address=&bbt_bru
			},
			{
				BBDEBUGDECL_LOCAL,
				"ent",
				":TEntity",
				.var_address=&bbt_ent
			},
			{
				BBDEBUGDECL_LOCAL,
				"tex",
				":TTexture",
				.var_address=&bbt_tex
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x4af243160143e7fa, 355, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbt_bru=(struct openb3d_openb3dcore_TBrush_obj*)((struct openb3d_openb3dcore_TBrush_obj*)bbObjectDowncast((BBOBJECT)bbt_obj,(BBClass*)&openb3d_openb3dcore_TBrush));
	struct BBDebugStm __stmt_1 = {0x4af243160143e7fa, 356, 0};
	bbOnDebugEnterStm(&__stmt_1);
	bbt_ent=(struct openb3d_openb3dcore_TEntity_obj*)((struct openb3d_openb3dcore_TEntity_obj*)bbObjectDowncast((BBOBJECT)bbt_obj,(BBClass*)&openb3d_openb3dcore_TEntity));
	struct BBDebugStm __stmt_2 = {0x4af243160143e7fa, 357, 0};
	bbOnDebugEnterStm(&__stmt_2);
	bbt_tex=(struct openb3d_openb3dcore_TTexture_obj*)((struct openb3d_openb3dcore_TTexture_obj*)bbObjectDowncast((BBOBJECT)bbt_obj,(BBClass*)&openb3d_openb3dcore_TTexture));
	struct BBDebugStm __stmt_3 = {0x4af243160143e7fa, 358, 0};
	bbOnDebugEnterStm(&__stmt_3);
	if(((BBObject*)bbt_bru)!= &bbNullObject){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x4af243160143e7fa, 359, 0};
		bbOnDebugEnterStm(&__stmt_0);
		BBBYTE* bbt_=bbt_strPtr;
		struct BBDebugStm __stmt_1 = {0x4af243160143e7fa, 360, 0};
		bbOnDebugEnterStm(&__stmt_1);
		if(bbt_==((struct openb3d_openb3dcore_TBrush_obj*)bbNullObjectTest((BBObject*)bbt_bru))->_openb3d_openb3dcore_tbrush_name ){
			struct BBDebugScope __scope = {
				BBDEBUGSCOPE_LOCALBLOCK,
				0,
				{
					{
						BBDEBUGDECL_END
					}
				}
			};
			bbOnDebugEnterScope((BBDebugScope *)&__scope);
			struct BBDebugStm __stmt_0 = {0x4af243160143e7fa, 361, 0};
			bbOnDebugEnterStm(&__stmt_0);
			((struct openb3d_openb3dcore_TBrush_obj*)bbNullObjectTest((BBObject*)bbt_bru))->clas->m_SetString_pbS((struct openb3d_openb3dcore_TBrush_obj*)bbt_bru,((struct openb3d_openb3dcore_TBrush_obj*)bbNullObjectTest((BBObject*)bbt_bru))->_openb3d_openb3dcore_tbrush_name ,bbt_strValue);
			bbOnDebugLeaveScope();
		}
		bbOnDebugLeaveScope();
	}else{
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x4af243160143e7fa, 363, 0};
		bbOnDebugEnterStm(&__stmt_0);
		if(((BBObject*)bbt_ent)!= &bbNullObject){
			struct BBDebugScope __scope = {
				BBDEBUGSCOPE_LOCALBLOCK,
				0,
				{
					{
						BBDEBUGDECL_END
					}
				}
			};
			bbOnDebugEnterScope((BBDebugScope *)&__scope);
			struct BBDebugStm __stmt_0 = {0x4af243160143e7fa, 364, 0};
			bbOnDebugEnterStm(&__stmt_0);
			BBBYTE* bbt_2=bbt_strPtr;
			struct BBDebugStm __stmt_1 = {0x4af243160143e7fa, 365, 0};
			bbOnDebugEnterStm(&__stmt_1);
			if(bbt_2==((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)bbt_ent))->_openb3d_openb3dcore_tentity_name ){
				struct BBDebugScope __scope = {
					BBDEBUGSCOPE_LOCALBLOCK,
					0,
					{
						{
							BBDEBUGDECL_END
						}
					}
				};
				bbOnDebugEnterScope((BBDebugScope *)&__scope);
				struct BBDebugStm __stmt_0 = {0x4af243160143e7fa, 366, 0};
				bbOnDebugEnterStm(&__stmt_0);
				((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)bbt_ent))->clas->m_SetString_pbS((struct openb3d_openb3dcore_TEntity_obj*)bbt_ent,((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)bbt_ent))->_openb3d_openb3dcore_tentity_name ,bbt_strValue);
				bbOnDebugLeaveScope();
			}else{
				struct BBDebugScope __scope = {
					BBDEBUGSCOPE_LOCALBLOCK,
					0,
					{
						{
							BBDEBUGDECL_END
						}
					}
				};
				bbOnDebugEnterScope((BBDebugScope *)&__scope);
				struct BBDebugStm __stmt_0 = {0x4af243160143e7fa, 367, 0};
				bbOnDebugEnterStm(&__stmt_0);
				if(bbt_2==((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)bbt_ent))->_openb3d_openb3dcore_tentity_class_name ){
					struct BBDebugScope __scope = {
						BBDEBUGSCOPE_LOCALBLOCK,
						0,
						{
							{
								BBDEBUGDECL_END
							}
						}
					};
					bbOnDebugEnterScope((BBDebugScope *)&__scope);
					struct BBDebugStm __stmt_0 = {0x4af243160143e7fa, 368, 0};
					bbOnDebugEnterStm(&__stmt_0);
					((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)bbt_ent))->clas->m_SetString_pbS((struct openb3d_openb3dcore_TEntity_obj*)bbt_ent,((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)bbt_ent))->_openb3d_openb3dcore_tentity_class_name ,bbt_strValue);
					bbOnDebugLeaveScope();
				}
				bbOnDebugLeaveScope();
			}
			bbOnDebugLeaveScope();
		}else{
			struct BBDebugScope __scope = {
				BBDEBUGSCOPE_LOCALBLOCK,
				0,
				{
					{
						BBDEBUGDECL_END
					}
				}
			};
			bbOnDebugEnterScope((BBDebugScope *)&__scope);
			struct BBDebugStm __stmt_0 = {0x4af243160143e7fa, 370, 0};
			bbOnDebugEnterStm(&__stmt_0);
			if(((BBObject*)bbt_tex)!= &bbNullObject){
				struct BBDebugScope __scope = {
					BBDEBUGSCOPE_LOCALBLOCK,
					0,
					{
						{
							BBDEBUGDECL_END
						}
					}
				};
				bbOnDebugEnterScope((BBDebugScope *)&__scope);
				struct BBDebugStm __stmt_0 = {0x4af243160143e7fa, 371, 0};
				bbOnDebugEnterStm(&__stmt_0);
				BBBYTE* bbt_3=bbt_strPtr;
				struct BBDebugStm __stmt_1 = {0x4af243160143e7fa, 372, 0};
				bbOnDebugEnterStm(&__stmt_1);
				if(bbt_3==((struct openb3d_openb3dcore_TTexture_obj*)bbNullObjectTest((BBObject*)bbt_tex))->_openb3d_openb3dcore_ttexture_file ){
					struct BBDebugScope __scope = {
						BBDEBUGSCOPE_LOCALBLOCK,
						0,
						{
							{
								BBDEBUGDECL_END
							}
						}
					};
					bbOnDebugEnterScope((BBDebugScope *)&__scope);
					struct BBDebugStm __stmt_0 = {0x4af243160143e7fa, 373, 0};
					bbOnDebugEnterStm(&__stmt_0);
					((struct openb3d_openb3dcore_TTexture_obj*)bbNullObjectTest((BBObject*)bbt_tex))->clas->m_SetString_pbS((struct openb3d_openb3dcore_TTexture_obj*)bbt_tex,((struct openb3d_openb3dcore_TTexture_obj*)bbNullObjectTest((BBObject*)bbt_tex))->_openb3d_openb3dcore_ttexture_file ,bbt_strValue);
					bbOnDebugLeaveScope();
				}else{
					struct BBDebugScope __scope = {
						BBDEBUGSCOPE_LOCALBLOCK,
						0,
						{
							{
								BBDEBUGDECL_END
							}
						}
					};
					bbOnDebugEnterScope((BBDebugScope *)&__scope);
					struct BBDebugStm __stmt_0 = {0x4af243160143e7fa, 374, 0};
					bbOnDebugEnterStm(&__stmt_0);
					if(bbt_3==((struct openb3d_openb3dcore_TTexture_obj*)bbNullObjectTest((BBObject*)bbt_tex))->_openb3d_openb3dcore_ttexture_file_abs ){
						struct BBDebugScope __scope = {
							BBDEBUGSCOPE_LOCALBLOCK,
							0,
							{
								{
									BBDEBUGDECL_END
								}
							}
						};
						bbOnDebugEnterScope((BBDebugScope *)&__scope);
						struct BBDebugStm __stmt_0 = {0x4af243160143e7fa, 375, 0};
						bbOnDebugEnterStm(&__stmt_0);
						((struct openb3d_openb3dcore_TTexture_obj*)bbNullObjectTest((BBObject*)bbt_tex))->clas->m_SetString_pbS((struct openb3d_openb3dcore_TTexture_obj*)bbt_tex,((struct openb3d_openb3dcore_TTexture_obj*)bbNullObjectTest((BBObject*)bbt_tex))->_openb3d_openb3dcore_ttexture_file_abs ,bbt_strValue);
						bbOnDebugLeaveScope();
					}
					bbOnDebugLeaveScope();
				}
				bbOnDebugLeaveScope();
			}
			bbOnDebugLeaveScope();
		}
		bbOnDebugLeaveScope();
	}
	bbOnDebugLeaveScope();
	return ((BBString*)&bbEmptyString);
}
BBINT openb3d_openb3dcore_GlobalAnIsotropic(BBFLOAT bbt_f){
	struct BBDebugScope_1 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"GlobalAnIsotropic",
		{
			{
				BBDEBUGDECL_LOCAL,
				"f",
				"f",
				.var_address=&bbt_f
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x4af243160143e7fa, 384, 0};
	bbOnDebugEnterStm(&__stmt_0);
	openb3d_openb3dcore_TTexture_global_aniso[0]=bbt_f;
	bbOnDebugLeaveScope();
	return 0;
}
BBINT openb3d_openb3dcore_TextureAnIsotropic(struct openb3d_openb3dcore_TTexture_obj* bbt_tex,BBFLOAT bbt_f){
	struct BBDebugScope_2 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"TextureAnIsotropic",
		{
			{
				BBDEBUGDECL_LOCAL,
				"tex",
				":TTexture",
				.var_address=&bbt_tex
			},
			{
				BBDEBUGDECL_LOCAL,
				"f",
				"f",
				.var_address=&bbt_f
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x4af243160143e7fa, 391, 0};
	bbOnDebugEnterStm(&__stmt_0);
	TextureAnIsotropic_(openb3d_openb3dcore_TTexture_GetInstance_pb_TTTexture((struct openb3d_openb3dcore_TTexture_obj*)bbt_tex),bbt_f);
	bbOnDebugLeaveScope();
	return 0;
}
BBINT openb3d_openb3dcore_TextureMultitex(struct openb3d_openb3dcore_TTexture_obj* bbt_tex,BBFLOAT bbt_f){
	struct BBDebugScope_2 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"TextureMultitex",
		{
			{
				BBDEBUGDECL_LOCAL,
				"tex",
				":TTexture",
				.var_address=&bbt_tex
			},
			{
				BBDEBUGDECL_LOCAL,
				"f",
				"f",
				.var_address=&bbt_f
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x4af243160143e7fa, 398, 0};
	bbOnDebugEnterStm(&__stmt_0);
	TextureMultitex_(openb3d_openb3dcore_TTexture_GetInstance_pb_TTTexture((struct openb3d_openb3dcore_TTexture_obj*)bbt_tex),bbt_f);
	bbOnDebugLeaveScope();
	return 0;
}
BBINT openb3d_openb3dcore_TrisRendered(){
	struct BBDebugScope __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"TrisRendered",
		{
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x4af243160143e7fa, 405, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbOnDebugLeaveScope();
	return TrisRendered_();
}
BBINT openb3d_openb3dcore_VertsRendered(){
	struct BBDebugScope __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"VertsRendered",
		{
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x4af243160143e7fa, 412, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbOnDebugLeaveScope();
	return VertsRendered_();
}
BBINT openb3d_openb3dcore_SurfsRendered(){
	struct BBDebugScope __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"SurfsRendered",
		{
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x4af243160143e7fa, 419, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbOnDebugLeaveScope();
	return SurfsRendered_();
}
struct openb3d_openb3dcore_TSprite_obj* openb3d_openb3dcore_NewSprite(){
	struct BBDebugScope __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"NewSprite",
		{
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x4af243160143e7fa, 427, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbOnDebugLeaveScope();
	return (struct openb3d_openb3dcore_TSprite_obj*)openb3d_openb3dcore_TSprite_Create_TTSprite();
}
struct openb3d_openb3dcore_TTexture_obj* openb3d_openb3dcore_NewTexture(){
	struct BBDebugScope __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"NewTexture",
		{
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x4af243160143e7fa, 435, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbOnDebugLeaveScope();
	return (struct openb3d_openb3dcore_TTexture_obj*)openb3d_openb3dcore_TTexture_Create_TTTexture();
}
struct openb3d_openb3dcore_TMesh_obj* openb3d_openb3dcore_NewMesh(){
	struct BBDebugScope __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"NewMesh",
		{
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x4af243160143e7fa, 443, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbOnDebugLeaveScope();
	return (struct openb3d_openb3dcore_TMesh_obj*)openb3d_openb3dcore_TMesh_Create_TTMesh();
}
struct openb3d_openb3dcore_TSurface_obj* openb3d_openb3dcore_NewSurface(){
	struct BBDebugScope __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"NewSurface",
		{
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x4af243160143e7fa, 451, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbOnDebugLeaveScope();
	return (struct openb3d_openb3dcore_TSurface_obj*)openb3d_openb3dcore_TSurface_Create_TTSurface();
}
struct openb3d_openb3dcore_TBone_obj* openb3d_openb3dcore_NewBone(){
	struct BBDebugScope __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"NewBone",
		{
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x4af243160143e7fa, 459, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbOnDebugLeaveScope();
	return (struct openb3d_openb3dcore_TBone_obj*)openb3d_openb3dcore_TBone_Create_TTBone();
}
struct openb3d_openb3dcore_TAnimationKeys_obj* openb3d_openb3dcore_NewAnimationKeys(struct openb3d_openb3dcore_TBone_obj* bbt_bone){
	struct BBDebugScope_1 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"NewAnimationKeys",
		{
			{
				BBDEBUGDECL_LOCAL,
				"bone",
				":TBone",
				.var_address=&bbt_bone
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x4af243160143e7fa, 467, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbOnDebugLeaveScope();
	return (struct openb3d_openb3dcore_TAnimationKeys_obj*)openb3d_openb3dcore_TAnimationKeys_Create_TTAnimationKeys_TTBone((struct openb3d_openb3dcore_TBone_obj*)bbt_bone);
}
struct openb3d_openb3dcore_TMatPtr_obj* openb3d_openb3dcore_NewMatPtr(){
	struct BBDebugScope __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"NewMatPtr",
		{
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x4af243160143e7fa, 475, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbOnDebugLeaveScope();
	return (struct openb3d_openb3dcore_TMatPtr_obj*)openb3d_openb3dcore_TMatPtr_Create_TTMatPtr();
}
struct openb3d_openb3dcore_TQuatPtr_obj* openb3d_openb3dcore_NewQuatPtr(){
	struct BBDebugScope __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"NewQuatPtr",
		{
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x4af243160143e7fa, 483, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbOnDebugLeaveScope();
	return (struct openb3d_openb3dcore_TQuatPtr_obj*)openb3d_openb3dcore_TQuatPtr_Create_TTQuatPtr_ffff(0.00000000f,0.00000000f,0.00000000f,0.00000000f);
}
struct openb3d_openb3dcore_TVecPtr_obj* openb3d_openb3dcore_NewVecPtr(){
	struct BBDebugScope __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"NewVecPtr",
		{
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x4af243160143e7fa, 491, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbOnDebugLeaveScope();
	return (struct openb3d_openb3dcore_TVecPtr_obj*)openb3d_openb3dcore_TVecPtr_Create_TTVecPtr_fff(0.00000000f,0.00000000f,0.00000000f);
}
BBINT openb3d_openb3dcore_BrushGLColor(struct openb3d_openb3dcore_TBrush_obj* bbt_brush,BBFLOAT bbt_r,BBFLOAT bbt_g,BBFLOAT bbt_b,BBFLOAT bbt_a){
	struct BBDebugScope_5 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"BrushGLColor",
		{
			{
				BBDEBUGDECL_LOCAL,
				"brush",
				":TBrush",
				.var_address=&bbt_brush
			},
			{
				BBDEBUGDECL_LOCAL,
				"r",
				"f",
				.var_address=&bbt_r
			},
			{
				BBDEBUGDECL_LOCAL,
				"g",
				"f",
				.var_address=&bbt_g
			},
			{
				BBDEBUGDECL_LOCAL,
				"b",
				"f",
				.var_address=&bbt_b
			},
			{
				BBDEBUGDECL_LOCAL,
				"a",
				"f",
				.var_address=&bbt_a
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x4af243160143e7fa, 498, 0};
	bbOnDebugEnterStm(&__stmt_0);
	BrushGLColor_(openb3d_openb3dcore_TBrush_GetInstance_pb_TTBrush((struct openb3d_openb3dcore_TBrush_obj*)bbt_brush),bbt_r,bbt_g,bbt_b,bbt_a);
	bbOnDebugLeaveScope();
	return 0;
}
BBINT openb3d_openb3dcore_BrushGLBlendFunc(struct openb3d_openb3dcore_TBrush_obj* bbt_brush,BBINT bbt_sfactor,BBINT bbt_dfactor){
	struct BBDebugScope_3 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"BrushGLBlendFunc",
		{
			{
				BBDEBUGDECL_LOCAL,
				"brush",
				":TBrush",
				.var_address=&bbt_brush
			},
			{
				BBDEBUGDECL_LOCAL,
				"sfactor",
				"i",
				.var_address=&bbt_sfactor
			},
			{
				BBDEBUGDECL_LOCAL,
				"dfactor",
				"i",
				.var_address=&bbt_dfactor
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x4af243160143e7fa, 505, 0};
	bbOnDebugEnterStm(&__stmt_0);
	BrushGLBlendFunc_(openb3d_openb3dcore_TBrush_GetInstance_pb_TTBrush((struct openb3d_openb3dcore_TBrush_obj*)bbt_brush),bbt_sfactor,bbt_dfactor);
	bbOnDebugLeaveScope();
	return 0;
}
BBINT openb3d_openb3dcore_TextureGLTexEnvi(struct openb3d_openb3dcore_TTexture_obj* bbt_tex,BBINT bbt_target,BBINT bbt_pname,BBINT bbt_param){
	struct BBDebugScope_4 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"TextureGLTexEnvi",
		{
			{
				BBDEBUGDECL_LOCAL,
				"tex",
				":TTexture",
				.var_address=&bbt_tex
			},
			{
				BBDEBUGDECL_LOCAL,
				"target",
				"i",
				.var_address=&bbt_target
			},
			{
				BBDEBUGDECL_LOCAL,
				"pname",
				"i",
				.var_address=&bbt_pname
			},
			{
				BBDEBUGDECL_LOCAL,
				"param",
				"i",
				.var_address=&bbt_param
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x4af243160143e7fa, 512, 0};
	bbOnDebugEnterStm(&__stmt_0);
	TextureGLTexEnvi_(openb3d_openb3dcore_TTexture_GetInstance_pb_TTTexture((struct openb3d_openb3dcore_TTexture_obj*)bbt_tex),bbt_target,bbt_pname,bbt_param);
	bbOnDebugLeaveScope();
	return 0;
}
BBINT openb3d_openb3dcore_TextureGLTexEnvf(struct openb3d_openb3dcore_TTexture_obj* bbt_tex,BBINT bbt_target,BBINT bbt_pname,BBFLOAT bbt_param){
	struct BBDebugScope_4 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"TextureGLTexEnvf",
		{
			{
				BBDEBUGDECL_LOCAL,
				"tex",
				":TTexture",
				.var_address=&bbt_tex
			},
			{
				BBDEBUGDECL_LOCAL,
				"target",
				"i",
				.var_address=&bbt_target
			},
			{
				BBDEBUGDECL_LOCAL,
				"pname",
				"i",
				.var_address=&bbt_pname
			},
			{
				BBDEBUGDECL_LOCAL,
				"param",
				"f",
				.var_address=&bbt_param
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x4af243160143e7fa, 519, 0};
	bbOnDebugEnterStm(&__stmt_0);
	TextureGLTexEnvf_(openb3d_openb3dcore_TTexture_GetInstance_pb_TTTexture((struct openb3d_openb3dcore_TTexture_obj*)bbt_tex),bbt_target,bbt_pname,bbt_param);
	bbOnDebugLeaveScope();
	return 0;
}
struct openb3d_openb3dcore_TBrush_obj* openb3d_openb3dcore_CopyBrush(struct openb3d_openb3dcore_TBrush_obj* bbt_brush){
	struct BBDebugScope_1 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"CopyBrush",
		{
			{
				BBDEBUGDECL_LOCAL,
				"brush",
				":TBrush",
				.var_address=&bbt_brush
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x4af243160143e7fa, 526, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbOnDebugLeaveScope();
	return (struct openb3d_openb3dcore_TBrush_obj*)((struct openb3d_openb3dcore_TBrush_obj*)bbNullObjectTest((BBObject*)bbt_brush))->clas->m_Copy((struct openb3d_openb3dcore_TBrush_obj*)bbt_brush);
}
struct openb3d_openb3dcore_TSurface_obj* openb3d_openb3dcore_CopySurface(struct openb3d_openb3dcore_TSurface_obj* bbt_surf){
	struct BBDebugScope_1 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"CopySurface",
		{
			{
				BBDEBUGDECL_LOCAL,
				"surf",
				":TSurface",
				.var_address=&bbt_surf
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x4af243160143e7fa, 533, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbOnDebugLeaveScope();
	return (struct openb3d_openb3dcore_TSurface_obj*)((struct openb3d_openb3dcore_TSurface_obj*)bbNullObjectTest((BBObject*)bbt_surf))->clas->m_Copy((struct openb3d_openb3dcore_TSurface_obj*)bbt_surf);
}
struct openb3d_openb3dcore_TTexture_obj* openb3d_openb3dcore_CopyTexture(struct openb3d_openb3dcore_TTexture_obj* bbt_tex,BBINT bbt_flags){
	struct BBDebugScope_2 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"CopyTexture",
		{
			{
				BBDEBUGDECL_LOCAL,
				"tex",
				":TTexture",
				.var_address=&bbt_tex
			},
			{
				BBDEBUGDECL_LOCAL,
				"flags",
				"i",
				.var_address=&bbt_flags
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x4af243160143e7fa, 540, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbOnDebugLeaveScope();
	return (struct openb3d_openb3dcore_TTexture_obj*)((struct openb3d_openb3dcore_TTexture_obj*)bbNullObjectTest((BBObject*)bbt_tex))->clas->m_Copy_i((struct openb3d_openb3dcore_TTexture_obj*)bbt_tex,bbt_flags);
}
struct openb3d_openb3dcore_TShader_obj* openb3d_openb3dcore_CreateShaderMaterial(BBSTRING bbt_ShaderName){
	struct BBDebugScope_1 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"CreateShaderMaterial",
		{
			{
				BBDEBUGDECL_LOCAL,
				"ShaderName",
				"$",
				.var_address=&bbt_ShaderName
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x4af243160143e7fa, 547, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbOnDebugLeaveScope();
	return (struct openb3d_openb3dcore_TShader_obj*)openb3d_openb3dcore_TShader_CreateShaderMaterial_TTShader_S(bbt_ShaderName);
}
struct openb3d_openb3dcore_TShaderObject_obj* openb3d_openb3dcore_CreateFragShader(struct openb3d_openb3dcore_TShader_obj* bbt_shader,BBSTRING bbt_shaderFileName){
	struct BBDebugScope_2 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"CreateFragShader",
		{
			{
				BBDEBUGDECL_LOCAL,
				"shader",
				":TShader",
				.var_address=&bbt_shader
			},
			{
				BBDEBUGDECL_LOCAL,
				"shaderFileName",
				"$",
				.var_address=&bbt_shaderFileName
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x4af243160143e7fa, 554, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbOnDebugLeaveScope();
	return (struct openb3d_openb3dcore_TShaderObject_obj*)openb3d_openb3dcore_TShaderObject_CreateFragShader_TTShaderObject_TTShaderS((struct openb3d_openb3dcore_TShader_obj*)bbt_shader,bbt_shaderFileName);
}
struct openb3d_openb3dcore_TShaderObject_obj* openb3d_openb3dcore_CreateFragShaderString(struct openb3d_openb3dcore_TShader_obj* bbt_shader,BBSTRING bbt_shadercode){
	struct BBDebugScope_2 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"CreateFragShaderString",
		{
			{
				BBDEBUGDECL_LOCAL,
				"shader",
				":TShader",
				.var_address=&bbt_shader
			},
			{
				BBDEBUGDECL_LOCAL,
				"shadercode",
				"$",
				.var_address=&bbt_shadercode
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x4af243160143e7fa, 561, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbOnDebugLeaveScope();
	return (struct openb3d_openb3dcore_TShaderObject_obj*)openb3d_openb3dcore_TShaderObject_CreateFragShaderString_TTShaderObject_TTShaderS((struct openb3d_openb3dcore_TShader_obj*)bbt_shader,bbt_shadercode);
}
struct openb3d_openb3dcore_TShaderObject_obj* openb3d_openb3dcore_CreateVertShader(struct openb3d_openb3dcore_TShader_obj* bbt_shader,BBSTRING bbt_shaderFileName){
	struct BBDebugScope_2 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"CreateVertShader",
		{
			{
				BBDEBUGDECL_LOCAL,
				"shader",
				":TShader",
				.var_address=&bbt_shader
			},
			{
				BBDEBUGDECL_LOCAL,
				"shaderFileName",
				"$",
				.var_address=&bbt_shaderFileName
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x4af243160143e7fa, 568, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbOnDebugLeaveScope();
	return (struct openb3d_openb3dcore_TShaderObject_obj*)openb3d_openb3dcore_TShaderObject_CreateVertShader_TTShaderObject_TTShaderS((struct openb3d_openb3dcore_TShader_obj*)bbt_shader,bbt_shaderFileName);
}
struct openb3d_openb3dcore_TShaderObject_obj* openb3d_openb3dcore_CreateVertShaderString(struct openb3d_openb3dcore_TShader_obj* bbt_shader,BBSTRING bbt_shadercode){
	struct BBDebugScope_2 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"CreateVertShaderString",
		{
			{
				BBDEBUGDECL_LOCAL,
				"shader",
				":TShader",
				.var_address=&bbt_shader
			},
			{
				BBDEBUGDECL_LOCAL,
				"shadercode",
				"$",
				.var_address=&bbt_shadercode
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x4af243160143e7fa, 575, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbOnDebugLeaveScope();
	return (struct openb3d_openb3dcore_TShaderObject_obj*)openb3d_openb3dcore_TShaderObject_CreateVertShaderString_TTShaderObject_TTShaderS((struct openb3d_openb3dcore_TShader_obj*)bbt_shader,bbt_shadercode);
}
BBINT openb3d_openb3dcore_LinkShader(struct openb3d_openb3dcore_TShader_obj* bbt_shader){
	struct BBDebugScope_1 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"LinkShader",
		{
			{
				BBDEBUGDECL_LOCAL,
				"shader",
				":TShader",
				.var_address=&bbt_shader
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x4af243160143e7fa, 582, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbOnDebugLeaveScope();
	return ((struct openb3d_openb3dcore_TShader_obj*)bbNullObjectTest((BBObject*)bbt_shader))->clas->m_LinkShader((struct openb3d_openb3dcore_TShader_obj*)bbt_shader);
}
BBINT openb3d_openb3dcore_AttachFragShader(struct openb3d_openb3dcore_TShader_obj* bbt_shader,struct openb3d_openb3dcore_TShaderObject_obj* bbt_myShader){
	struct BBDebugScope_2 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"AttachFragShader",
		{
			{
				BBDEBUGDECL_LOCAL,
				"shader",
				":TShader",
				.var_address=&bbt_shader
			},
			{
				BBDEBUGDECL_LOCAL,
				"myShader",
				":TShaderObject",
				.var_address=&bbt_myShader
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x4af243160143e7fa, 589, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbOnDebugLeaveScope();
	return ((struct openb3d_openb3dcore_TShaderObject_obj*)bbNullObjectTest((BBObject*)bbt_myShader))->clas->m_AttachFragShader_TTShader((struct openb3d_openb3dcore_TShaderObject_obj*)bbt_myShader,(struct openb3d_openb3dcore_TShader_obj*)bbt_shader);
}
BBINT openb3d_openb3dcore_AttachVertShader(struct openb3d_openb3dcore_TShader_obj* bbt_shader,struct openb3d_openb3dcore_TShaderObject_obj* bbt_myShader){
	struct BBDebugScope_2 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"AttachVertShader",
		{
			{
				BBDEBUGDECL_LOCAL,
				"shader",
				":TShader",
				.var_address=&bbt_shader
			},
			{
				BBDEBUGDECL_LOCAL,
				"myShader",
				":TShaderObject",
				.var_address=&bbt_myShader
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x4af243160143e7fa, 596, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbOnDebugLeaveScope();
	return ((struct openb3d_openb3dcore_TShaderObject_obj*)bbNullObjectTest((BBObject*)bbt_myShader))->clas->m_AttachVertShader_TTShader((struct openb3d_openb3dcore_TShaderObject_obj*)bbt_myShader,(struct openb3d_openb3dcore_TShader_obj*)bbt_shader);
}
BBINT openb3d_openb3dcore_DeleteFragShader(struct openb3d_openb3dcore_TShaderObject_obj* bbt_myShader){
	struct BBDebugScope_1 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"DeleteFragShader",
		{
			{
				BBDEBUGDECL_LOCAL,
				"myShader",
				":TShaderObject",
				.var_address=&bbt_myShader
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x4af243160143e7fa, 603, 0};
	bbOnDebugEnterStm(&__stmt_0);
	((struct openb3d_openb3dcore_TShaderObject_obj*)bbNullObjectTest((BBObject*)bbt_myShader))->clas->m_DeleteFragShader((struct openb3d_openb3dcore_TShaderObject_obj*)bbt_myShader);
	bbOnDebugLeaveScope();
	return 0;
}
BBINT openb3d_openb3dcore_DeleteVertShader(struct openb3d_openb3dcore_TShaderObject_obj* bbt_myShader){
	struct BBDebugScope_1 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"DeleteVertShader",
		{
			{
				BBDEBUGDECL_LOCAL,
				"myShader",
				":TShaderObject",
				.var_address=&bbt_myShader
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x4af243160143e7fa, 610, 0};
	bbOnDebugEnterStm(&__stmt_0);
	((struct openb3d_openb3dcore_TShaderObject_obj*)bbNullObjectTest((BBObject*)bbt_myShader))->clas->m_DeleteVertShader((struct openb3d_openb3dcore_TShaderObject_obj*)bbt_myShader);
	bbOnDebugLeaveScope();
	return 0;
}
BBINT openb3d_openb3dcore_FreeShader(struct openb3d_openb3dcore_TShader_obj* bbt_shader){
	struct BBDebugScope_1 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"FreeShader",
		{
			{
				BBDEBUGDECL_LOCAL,
				"shader",
				":TShader",
				.var_address=&bbt_shader
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x4af243160143e7fa, 617, 0};
	bbOnDebugEnterStm(&__stmt_0);
	((struct openb3d_openb3dcore_TShader_obj*)bbNullObjectTest((BBObject*)bbt_shader))->clas->m_FreeShader((struct openb3d_openb3dcore_TShader_obj*)bbt_shader);
	bbOnDebugLeaveScope();
	return 0;
}
BBINT openb3d_openb3dcore_FreeStencil(struct openb3d_openb3dcore_TStencil_obj* bbt_stencil){
	struct BBDebugScope_1 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"FreeStencil",
		{
			{
				BBDEBUGDECL_LOCAL,
				"stencil",
				":TStencil",
				.var_address=&bbt_stencil
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x4af243160143e7fa, 624, 0};
	bbOnDebugEnterStm(&__stmt_0);
	((struct openb3d_openb3dcore_TStencil_obj*)bbNullObjectTest((BBObject*)bbt_stencil))->clas->m_FreeStencil((struct openb3d_openb3dcore_TStencil_obj*)bbt_stencil);
	bbOnDebugLeaveScope();
	return 0;
}
BBINT openb3d_openb3dcore_FreeSurface(struct openb3d_openb3dcore_TSurface_obj* bbt_surf){
	struct BBDebugScope_1 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"FreeSurface",
		{
			{
				BBDEBUGDECL_LOCAL,
				"surf",
				":TSurface",
				.var_address=&bbt_surf
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x4af243160143e7fa, 631, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbOnDebugLeaveScope();
	return ((struct openb3d_openb3dcore_TSurface_obj*)bbNullObjectTest((BBObject*)bbt_surf))->clas->m_FreeSurface((struct openb3d_openb3dcore_TSurface_obj*)bbt_surf);
}
BBINT openb3d_openb3dcore_TextureFlags(struct openb3d_openb3dcore_TTexture_obj* bbt_tex,BBINT bbt_flags){
	struct BBDebugScope_2 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"TextureFlags",
		{
			{
				BBDEBUGDECL_LOCAL,
				"tex",
				":TTexture",
				.var_address=&bbt_tex
			},
			{
				BBDEBUGDECL_LOCAL,
				"flags",
				"i",
				.var_address=&bbt_flags
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x4af243160143e7fa, 638, 0};
	bbOnDebugEnterStm(&__stmt_0);
	((struct openb3d_openb3dcore_TTexture_obj*)bbNullObjectTest((BBObject*)bbt_tex))->clas->m_TextureFlags_i((struct openb3d_openb3dcore_TTexture_obj*)bbt_tex,bbt_flags);
	bbOnDebugLeaveScope();
	return 0;
}
BBINT openb3d_openb3dcore_LightMesh(struct openb3d_openb3dcore_TMesh_obj* bbt_mesh,BBFLOAT bbt_red,BBFLOAT bbt_green,BBFLOAT bbt_blue,BBFLOAT bbt_range,BBFLOAT bbt_light_x,BBFLOAT bbt_light_y,BBFLOAT bbt_light_z){
	struct BBDebugScope_8 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"LightMesh",
		{
			{
				BBDEBUGDECL_LOCAL,
				"mesh",
				":TMesh",
				.var_address=&bbt_mesh
			},
			{
				BBDEBUGDECL_LOCAL,
				"red",
				"f",
				.var_address=&bbt_red
			},
			{
				BBDEBUGDECL_LOCAL,
				"green",
				"f",
				.var_address=&bbt_green
			},
			{
				BBDEBUGDECL_LOCAL,
				"blue",
				"f",
				.var_address=&bbt_blue
			},
			{
				BBDEBUGDECL_LOCAL,
				"range",
				"f",
				.var_address=&bbt_range
			},
			{
				BBDEBUGDECL_LOCAL,
				"light_x",
				"f",
				.var_address=&bbt_light_x
			},
			{
				BBDEBUGDECL_LOCAL,
				"light_y",
				"f",
				.var_address=&bbt_light_y
			},
			{
				BBDEBUGDECL_LOCAL,
				"light_z",
				"f",
				.var_address=&bbt_light_z
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x4af243160143e7fa, 646, 0};
	bbOnDebugEnterStm(&__stmt_0);
	((struct openb3d_openb3dcore_TMesh_obj*)bbNullObjectTest((BBObject*)bbt_mesh))->clas->m_LightMesh_fffffff((struct openb3d_openb3dcore_TMesh_obj*)bbt_mesh,bbt_red,bbt_green,bbt_blue,bbt_range,bbt_light_x,bbt_light_y,bbt_light_z);
	bbOnDebugLeaveScope();
	return 0;
}
BBINT openb3d_openb3dcore_BackBufferToTex(struct openb3d_openb3dcore_TTexture_obj* bbt_tex,BBINT bbt_mipmap_no,BBINT bbt_frame,BBINT bbt_fastinvert){
	struct BBDebugScope_4 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"BackBufferToTex",
		{
			{
				BBDEBUGDECL_LOCAL,
				"tex",
				":TTexture",
				.var_address=&bbt_tex
			},
			{
				BBDEBUGDECL_LOCAL,
				"mipmap_no",
				"i",
				.var_address=&bbt_mipmap_no
			},
			{
				BBDEBUGDECL_LOCAL,
				"frame",
				"i",
				.var_address=&bbt_frame
			},
			{
				BBDEBUGDECL_LOCAL,
				"fastinvert",
				"i",
				.var_address=&bbt_fastinvert
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x4af243160143e7fa, 660, 0};
	bbOnDebugEnterStm(&__stmt_0);
	((struct openb3d_openb3dcore_TTexture_obj*)bbNullObjectTest((BBObject*)bbt_tex))->clas->m_BackBufferToTex_iii((struct openb3d_openb3dcore_TTexture_obj*)bbt_tex,bbt_mipmap_no,bbt_frame,bbt_fastinvert);
	bbOnDebugLeaveScope();
	return 0;
}
BBINT openb3d_openb3dcore_MeshCullRadius(struct openb3d_openb3dcore_TEntity_obj* bbt_ent,BBFLOAT bbt_radius){
	struct BBDebugScope_2 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"MeshCullRadius",
		{
			{
				BBDEBUGDECL_LOCAL,
				"ent",
				":TEntity",
				.var_address=&bbt_ent
			},
			{
				BBDEBUGDECL_LOCAL,
				"radius",
				"f",
				.var_address=&bbt_radius
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x4af243160143e7fa, 671, 0};
	bbOnDebugEnterStm(&__stmt_0);
	MeshCullRadius_(openb3d_openb3dcore_TEntity_GetInstance_pb_TTEntity((struct openb3d_openb3dcore_TEntity_obj*)bbt_ent),bbt_radius);
	bbOnDebugLeaveScope();
	return 0;
}
BBFLOAT openb3d_openb3dcore_EntityScaleX(struct openb3d_openb3dcore_TEntity_obj* bbt_ent,BBINT bbt_glob){
	struct BBDebugScope_2 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"EntityScaleX",
		{
			{
				BBDEBUGDECL_LOCAL,
				"ent",
				":TEntity",
				.var_address=&bbt_ent
			},
			{
				BBDEBUGDECL_LOCAL,
				"glob",
				"i",
				.var_address=&bbt_glob
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x4af243160143e7fa, 679, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbOnDebugLeaveScope();
	return ((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)bbt_ent))->clas->m_EntityScaleX_i((struct openb3d_openb3dcore_TEntity_obj*)bbt_ent,bbt_glob);
}
BBFLOAT openb3d_openb3dcore_EntityScaleY(struct openb3d_openb3dcore_TEntity_obj* bbt_ent,BBINT bbt_glob){
	struct BBDebugScope_2 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"EntityScaleY",
		{
			{
				BBDEBUGDECL_LOCAL,
				"ent",
				":TEntity",
				.var_address=&bbt_ent
			},
			{
				BBDEBUGDECL_LOCAL,
				"glob",
				"i",
				.var_address=&bbt_glob
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x4af243160143e7fa, 687, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbOnDebugLeaveScope();
	return ((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)bbt_ent))->clas->m_EntityScaleY_i((struct openb3d_openb3dcore_TEntity_obj*)bbt_ent,bbt_glob);
}
BBFLOAT openb3d_openb3dcore_EntityScaleZ(struct openb3d_openb3dcore_TEntity_obj* bbt_ent,BBINT bbt_glob){
	struct BBDebugScope_2 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"EntityScaleZ",
		{
			{
				BBDEBUGDECL_LOCAL,
				"ent",
				":TEntity",
				.var_address=&bbt_ent
			},
			{
				BBDEBUGDECL_LOCAL,
				"glob",
				"i",
				.var_address=&bbt_glob
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x4af243160143e7fa, 695, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbOnDebugLeaveScope();
	return ((struct openb3d_openb3dcore_TEntity_obj*)bbNullObjectTest((BBObject*)bbt_ent))->clas->m_EntityScaleZ_i((struct openb3d_openb3dcore_TEntity_obj*)bbt_ent,bbt_glob);
}
BBINT openb3d_openb3dcore_BufferToTex(struct openb3d_openb3dcore_TTexture_obj* bbt_tex,BBBYTE* bbt_buffer,BBINT bbt_frame){
	struct BBDebugScope_3 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"BufferToTex",
		{
			{
				BBDEBUGDECL_LOCAL,
				"tex",
				":TTexture",
				.var_address=&bbt_tex
			},
			{
				BBDEBUGDECL_LOCAL,
				"buffer",
				"*b",
				.var_address=&bbt_buffer
			},
			{
				BBDEBUGDECL_LOCAL,
				"frame",
				"i",
				.var_address=&bbt_frame
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x4af243160143e7fa, 704, 0};
	bbOnDebugEnterStm(&__stmt_0);
	((struct openb3d_openb3dcore_TTexture_obj*)bbNullObjectTest((BBObject*)bbt_tex))->clas->m_BufferToTex_pbi((struct openb3d_openb3dcore_TTexture_obj*)bbt_tex,bbt_buffer,bbt_frame);
	bbOnDebugLeaveScope();
	return 0;
}
BBINT openb3d_openb3dcore_CameraToTex(struct openb3d_openb3dcore_TTexture_obj* bbt_tex,struct openb3d_openb3dcore_TCamera_obj* bbt_cam,BBINT bbt_frame){
	struct BBDebugScope_3 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"CameraToTex",
		{
			{
				BBDEBUGDECL_LOCAL,
				"tex",
				":TTexture",
				.var_address=&bbt_tex
			},
			{
				BBDEBUGDECL_LOCAL,
				"cam",
				":TCamera",
				.var_address=&bbt_cam
			},
			{
				BBDEBUGDECL_LOCAL,
				"frame",
				"i",
				.var_address=&bbt_frame
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x4af243160143e7fa, 711, 0};
	bbOnDebugEnterStm(&__stmt_0);
	((struct openb3d_openb3dcore_TTexture_obj*)bbNullObjectTest((BBObject*)bbt_tex))->clas->m_CameraToTex_TTCamerai((struct openb3d_openb3dcore_TTexture_obj*)bbt_tex,(struct openb3d_openb3dcore_TCamera_obj*)bbt_cam,bbt_frame);
	bbOnDebugLeaveScope();
	return 0;
}
struct openb3d_openb3dcore_TBone_obj* openb3d_openb3dcore_CreateBone(struct openb3d_openb3dcore_TMesh_obj* bbt_mesh,struct openb3d_openb3dcore_TEntity_obj* bbt_parent_ent){
	struct BBDebugScope_2 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"CreateBone",
		{
			{
				BBDEBUGDECL_LOCAL,
				"mesh",
				":TMesh",
				.var_address=&bbt_mesh
			},
			{
				BBDEBUGDECL_LOCAL,
				"parent_ent",
				":TEntity",
				.var_address=&bbt_parent_ent
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x4af243160143e7fa, 718, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbOnDebugLeaveScope();
	return (struct openb3d_openb3dcore_TBone_obj*)openb3d_openb3dcore_TBone_CreateBone_TTBone_TTMeshTTEntity((struct openb3d_openb3dcore_TMesh_obj*)bbt_mesh,(struct openb3d_openb3dcore_TEntity_obj*)bbt_parent_ent);
}
struct openb3d_openb3dcore_TMesh_obj* openb3d_openb3dcore_CreateQuad(struct openb3d_openb3dcore_TEntity_obj* bbt_parent){
	struct BBDebugScope_1 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"CreateQuad",
		{
			{
				BBDEBUGDECL_LOCAL,
				"parent",
				":TEntity",
				.var_address=&bbt_parent
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x4af243160143e7fa, 725, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbOnDebugLeaveScope();
	return (struct openb3d_openb3dcore_TMesh_obj*)openb3d_openb3dcore_TMesh_CreateQuad_TTMesh_TTEntity((struct openb3d_openb3dcore_TEntity_obj*)bbt_parent);
}
BBINT openb3d_openb3dcore_DepthBufferToTex(struct openb3d_openb3dcore_TTexture_obj* bbt_tex,struct openb3d_openb3dcore_TCamera_obj* bbt_cam){
	struct BBDebugScope_2 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"DepthBufferToTex",
		{
			{
				BBDEBUGDECL_LOCAL,
				"tex",
				":TTexture",
				.var_address=&bbt_tex
			},
			{
				BBDEBUGDECL_LOCAL,
				"cam",
				":TCamera",
				.var_address=&bbt_cam
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x4af243160143e7fa, 732, 0};
	bbOnDebugEnterStm(&__stmt_0);
	((struct openb3d_openb3dcore_TTexture_obj*)bbNullObjectTest((BBObject*)bbt_tex))->clas->m_DepthBufferToTex_TTCamera((struct openb3d_openb3dcore_TTexture_obj*)bbt_tex,(struct openb3d_openb3dcore_TCamera_obj*)bbt_cam);
	bbOnDebugLeaveScope();
	return 0;
}
struct openb3d_openb3dcore_TMesh_obj* openb3d_openb3dcore_MeshCSG(struct openb3d_openb3dcore_TMesh_obj* bbt_m1,struct openb3d_openb3dcore_TMesh_obj* bbt_m2,BBINT bbt_method_no){
	struct BBDebugScope_3 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"MeshCSG",
		{
			{
				BBDEBUGDECL_LOCAL,
				"m1",
				":TMesh",
				.var_address=&bbt_m1
			},
			{
				BBDEBUGDECL_LOCAL,
				"m2",
				":TMesh",
				.var_address=&bbt_m2
			},
			{
				BBDEBUGDECL_LOCAL,
				"method_no",
				"i",
				.var_address=&bbt_method_no
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x4af243160143e7fa, 739, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbOnDebugLeaveScope();
	return (struct openb3d_openb3dcore_TMesh_obj*)openb3d_openb3dcore_TMesh_MeshCSG_TTMesh_TTMeshTTMeshi((struct openb3d_openb3dcore_TMesh_obj*)bbt_m1,(struct openb3d_openb3dcore_TMesh_obj*)bbt_m2,bbt_method_no);
}
struct openb3d_openb3dcore_TMesh_obj* openb3d_openb3dcore_RepeatMesh(struct openb3d_openb3dcore_TMesh_obj* bbt_mesh,struct openb3d_openb3dcore_TEntity_obj* bbt_parent){
	struct BBDebugScope_2 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"RepeatMesh",
		{
			{
				BBDEBUGDECL_LOCAL,
				"mesh",
				":TMesh",
				.var_address=&bbt_mesh
			},
			{
				BBDEBUGDECL_LOCAL,
				"parent",
				":TEntity",
				.var_address=&bbt_parent
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x4af243160143e7fa, 746, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbOnDebugLeaveScope();
	return (struct openb3d_openb3dcore_TMesh_obj*)((struct openb3d_openb3dcore_TMesh_obj*)bbNullObjectTest((BBObject*)bbt_mesh))->clas->m_RepeatMesh_TTEntity((struct openb3d_openb3dcore_TMesh_obj*)bbt_mesh,(struct openb3d_openb3dcore_TEntity_obj*)bbt_parent);
}
BBINT openb3d_openb3dcore_SkinMesh(struct openb3d_openb3dcore_TMesh_obj* bbt_mesh,BBINT bbt_surf_no_get,BBINT bbt_vid,BBINT bbt_bone1,BBFLOAT bbt_weight1,BBINT bbt_bone2,BBFLOAT bbt_weight2,BBINT bbt_bone3,BBFLOAT bbt_weight3,BBINT bbt_bone4,BBFLOAT bbt_weight4){
	struct BBDebugScope_11 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"SkinMesh",
		{
			{
				BBDEBUGDECL_LOCAL,
				"mesh",
				":TMesh",
				.var_address=&bbt_mesh
			},
			{
				BBDEBUGDECL_LOCAL,
				"surf_no_get",
				"i",
				.var_address=&bbt_surf_no_get
			},
			{
				BBDEBUGDECL_LOCAL,
				"vid",
				"i",
				.var_address=&bbt_vid
			},
			{
				BBDEBUGDECL_LOCAL,
				"bone1",
				"i",
				.var_address=&bbt_bone1
			},
			{
				BBDEBUGDECL_LOCAL,
				"weight1",
				"f",
				.var_address=&bbt_weight1
			},
			{
				BBDEBUGDECL_LOCAL,
				"bone2",
				"i",
				.var_address=&bbt_bone2
			},
			{
				BBDEBUGDECL_LOCAL,
				"weight2",
				"f",
				.var_address=&bbt_weight2
			},
			{
				BBDEBUGDECL_LOCAL,
				"bone3",
				"i",
				.var_address=&bbt_bone3
			},
			{
				BBDEBUGDECL_LOCAL,
				"weight3",
				"f",
				.var_address=&bbt_weight3
			},
			{
				BBDEBUGDECL_LOCAL,
				"bone4",
				"i",
				.var_address=&bbt_bone4
			},
			{
				BBDEBUGDECL_LOCAL,
				"weight4",
				"f",
				.var_address=&bbt_weight4
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x4af243160143e7fa, 754, 0};
	bbOnDebugEnterStm(&__stmt_0);
	((struct openb3d_openb3dcore_TMesh_obj*)bbNullObjectTest((BBObject*)bbt_mesh))->clas->m_SkinMesh_iiifififif((struct openb3d_openb3dcore_TMesh_obj*)bbt_mesh,bbt_surf_no_get,bbt_vid,bbt_bone1,bbt_weight1,bbt_bone2,bbt_weight2,bbt_bone3,bbt_weight3,bbt_bone4,bbt_weight4);
	bbOnDebugLeaveScope();
	return 0;
}
BBINT openb3d_openb3dcore_SpriteRenderMode(struct openb3d_openb3dcore_TSprite_obj* bbt_sprite,BBINT bbt_Mode){
	struct BBDebugScope_2 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"SpriteRenderMode",
		{
			{
				BBDEBUGDECL_LOCAL,
				"sprite",
				":TSprite",
				.var_address=&bbt_sprite
			},
			{
				BBDEBUGDECL_LOCAL,
				"Mode",
				"i",
				.var_address=&bbt_Mode
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x4af243160143e7fa, 762, 0};
	bbOnDebugEnterStm(&__stmt_0);
	((struct openb3d_openb3dcore_TSprite_obj*)bbNullObjectTest((BBObject*)bbt_sprite))->clas->m_SpriteRenderMode_i((struct openb3d_openb3dcore_TSprite_obj*)bbt_sprite,bbt_Mode);
	bbOnDebugLeaveScope();
	return 0;
}
BBINT openb3d_openb3dcore_TexToBuffer(struct openb3d_openb3dcore_TTexture_obj* bbt_tex,BBBYTE* bbt_buffer,BBINT bbt_frame){
	struct BBDebugScope_3 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"TexToBuffer",
		{
			{
				BBDEBUGDECL_LOCAL,
				"tex",
				":TTexture",
				.var_address=&bbt_tex
			},
			{
				BBDEBUGDECL_LOCAL,
				"buffer",
				"*b",
				.var_address=&bbt_buffer
			},
			{
				BBDEBUGDECL_LOCAL,
				"frame",
				"i",
				.var_address=&bbt_frame
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x4af243160143e7fa, 769, 0};
	bbOnDebugEnterStm(&__stmt_0);
	((struct openb3d_openb3dcore_TTexture_obj*)bbNullObjectTest((BBObject*)bbt_tex))->clas->m_TexToBuffer_pbi((struct openb3d_openb3dcore_TTexture_obj*)bbt_tex,bbt_buffer,bbt_frame);
	bbOnDebugLeaveScope();
	return 0;
}
BBINT openb3d_openb3dcore_UpdateTexCoords(struct openb3d_openb3dcore_TSurface_obj* bbt_surf){
	struct BBDebugScope_1 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"UpdateTexCoords",
		{
			{
				BBDEBUGDECL_LOCAL,
				"surf",
				":TSurface",
				.var_address=&bbt_surf
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x4af243160143e7fa, 776, 0};
	bbOnDebugEnterStm(&__stmt_0);
	((struct openb3d_openb3dcore_TSurface_obj*)bbNullObjectTest((BBObject*)bbt_surf))->clas->m_UpdateTexCoords((struct openb3d_openb3dcore_TSurface_obj*)bbt_surf);
	bbOnDebugLeaveScope();
	return 0;
}
BBFLOAT* openb3d_openb3dcore_CameraProjMatrix(struct openb3d_openb3dcore_TCamera_obj* bbt_cam){
	struct BBDebugScope_1 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"CameraProjMatrix",
		{
			{
				BBDEBUGDECL_LOCAL,
				"cam",
				":TCamera",
				.var_address=&bbt_cam
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x4af243160143e7fa, 783, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbOnDebugLeaveScope();
	return CameraProjMatrix_(openb3d_openb3dcore_TEntity_GetInstance_pb_TTEntity((struct openb3d_openb3dcore_TEntity_obj*)((struct openb3d_openb3dcore_TEntity_obj*)bbObjectDowncast((BBOBJECT)bbt_cam,(BBClass*)&openb3d_openb3dcore_TEntity))));
}
BBFLOAT* openb3d_openb3dcore_EntityMatrix(struct openb3d_openb3dcore_TEntity_obj* bbt_ent){
	struct BBDebugScope_1 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"EntityMatrix",
		{
			{
				BBDEBUGDECL_LOCAL,
				"ent",
				":TEntity",
				.var_address=&bbt_ent
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x4af243160143e7fa, 790, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbOnDebugLeaveScope();
	return EntityMatrix_(openb3d_openb3dcore_TEntity_GetInstance_pb_TTEntity((struct openb3d_openb3dcore_TEntity_obj*)bbt_ent));
}
struct openb3d_openb3dcore_TAction_obj* openb3d_openb3dcore_ActMoveBy(struct openb3d_openb3dcore_TEntity_obj* bbt_ent,BBFLOAT bbt_a,BBFLOAT bbt_b,BBFLOAT bbt_c,BBFLOAT bbt_rate){
	BBBYTE* bbt_inst=0;
	struct openb3d_openb3dcore_TAction_obj* bbt_act=(struct openb3d_openb3dcore_TAction_obj*)((struct openb3d_openb3dcore_TAction_obj*)&bbNullObject);
	struct BBDebugScope_7 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"ActMoveBy",
		{
			{
				BBDEBUGDECL_LOCAL,
				"ent",
				":TEntity",
				.var_address=&bbt_ent
			},
			{
				BBDEBUGDECL_LOCAL,
				"a",
				"f",
				.var_address=&bbt_a
			},
			{
				BBDEBUGDECL_LOCAL,
				"b",
				"f",
				.var_address=&bbt_b
			},
			{
				BBDEBUGDECL_LOCAL,
				"c",
				"f",
				.var_address=&bbt_c
			},
			{
				BBDEBUGDECL_LOCAL,
				"rate",
				"f",
				.var_address=&bbt_rate
			},
			{
				BBDEBUGDECL_LOCAL,
				"inst",
				"*b",
				.var_address=&bbt_inst
			},
			{
				BBDEBUGDECL_LOCAL,
				"act",
				":TAction",
				.var_address=&bbt_act
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x4af243160143e7fa, 799, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbt_inst=ActMoveBy_(openb3d_openb3dcore_TEntity_GetInstance_pb_TTEntity((struct openb3d_openb3dcore_TEntity_obj*)bbt_ent),bbt_a,bbt_b,bbt_c,bbt_rate);
	struct BBDebugStm __stmt_1 = {0x4af243160143e7fa, 800, 0};
	bbOnDebugEnterStm(&__stmt_1);
	bbt_act=(struct openb3d_openb3dcore_TAction_obj*)openb3d_openb3dcore_TAction_GetObject_TTAction_pb(bbt_inst);
	struct BBDebugStm __stmt_2 = {0x4af243160143e7fa, 801, 0};
	bbOnDebugEnterStm(&__stmt_2);
	if((((BBOBJECT)bbt_act)==&bbNullObject) && (bbt_inst!=0)){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x4af243160143e7fa, 801, 0};
		bbOnDebugEnterStm(&__stmt_0);
		bbt_act=(struct openb3d_openb3dcore_TAction_obj*)openb3d_openb3dcore_TAction_CreateObject_TTAction_pb(bbt_inst);
		bbOnDebugLeaveScope();
	}
	struct BBDebugStm __stmt_3 = {0x4af243160143e7fa, 802, 0};
	bbOnDebugEnterStm(&__stmt_3);
	bbOnDebugLeaveScope();
	return (struct openb3d_openb3dcore_TAction_obj*)bbt_act;
}
struct openb3d_openb3dcore_TAction_obj* openb3d_openb3dcore_ActTurnBy(struct openb3d_openb3dcore_TEntity_obj* bbt_ent,BBFLOAT bbt_a,BBFLOAT bbt_b,BBFLOAT bbt_c,BBFLOAT bbt_rate){
	BBBYTE* bbt_inst=0;
	struct openb3d_openb3dcore_TAction_obj* bbt_act=(struct openb3d_openb3dcore_TAction_obj*)((struct openb3d_openb3dcore_TAction_obj*)&bbNullObject);
	struct BBDebugScope_7 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"ActTurnBy",
		{
			{
				BBDEBUGDECL_LOCAL,
				"ent",
				":TEntity",
				.var_address=&bbt_ent
			},
			{
				BBDEBUGDECL_LOCAL,
				"a",
				"f",
				.var_address=&bbt_a
			},
			{
				BBDEBUGDECL_LOCAL,
				"b",
				"f",
				.var_address=&bbt_b
			},
			{
				BBDEBUGDECL_LOCAL,
				"c",
				"f",
				.var_address=&bbt_c
			},
			{
				BBDEBUGDECL_LOCAL,
				"rate",
				"f",
				.var_address=&bbt_rate
			},
			{
				BBDEBUGDECL_LOCAL,
				"inst",
				"*b",
				.var_address=&bbt_inst
			},
			{
				BBDEBUGDECL_LOCAL,
				"act",
				":TAction",
				.var_address=&bbt_act
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x4af243160143e7fa, 809, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbt_inst=ActTurnBy_(openb3d_openb3dcore_TEntity_GetInstance_pb_TTEntity((struct openb3d_openb3dcore_TEntity_obj*)bbt_ent),bbt_a,bbt_b,bbt_c,bbt_rate);
	struct BBDebugStm __stmt_1 = {0x4af243160143e7fa, 810, 0};
	bbOnDebugEnterStm(&__stmt_1);
	bbt_act=(struct openb3d_openb3dcore_TAction_obj*)openb3d_openb3dcore_TAction_GetObject_TTAction_pb(bbt_inst);
	struct BBDebugStm __stmt_2 = {0x4af243160143e7fa, 811, 0};
	bbOnDebugEnterStm(&__stmt_2);
	if((((BBOBJECT)bbt_act)==&bbNullObject) && (bbt_inst!=0)){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x4af243160143e7fa, 811, 0};
		bbOnDebugEnterStm(&__stmt_0);
		bbt_act=(struct openb3d_openb3dcore_TAction_obj*)openb3d_openb3dcore_TAction_CreateObject_TTAction_pb(bbt_inst);
		bbOnDebugLeaveScope();
	}
	struct BBDebugStm __stmt_3 = {0x4af243160143e7fa, 812, 0};
	bbOnDebugEnterStm(&__stmt_3);
	bbOnDebugLeaveScope();
	return (struct openb3d_openb3dcore_TAction_obj*)bbt_act;
}
struct openb3d_openb3dcore_TAction_obj* openb3d_openb3dcore_ActVector(struct openb3d_openb3dcore_TEntity_obj* bbt_ent,BBFLOAT bbt_a,BBFLOAT bbt_b,BBFLOAT bbt_c){
	BBBYTE* bbt_inst=0;
	struct openb3d_openb3dcore_TAction_obj* bbt_act=(struct openb3d_openb3dcore_TAction_obj*)((struct openb3d_openb3dcore_TAction_obj*)&bbNullObject);
	struct BBDebugScope_6 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"ActVector",
		{
			{
				BBDEBUGDECL_LOCAL,
				"ent",
				":TEntity",
				.var_address=&bbt_ent
			},
			{
				BBDEBUGDECL_LOCAL,
				"a",
				"f",
				.var_address=&bbt_a
			},
			{
				BBDEBUGDECL_LOCAL,
				"b",
				"f",
				.var_address=&bbt_b
			},
			{
				BBDEBUGDECL_LOCAL,
				"c",
				"f",
				.var_address=&bbt_c
			},
			{
				BBDEBUGDECL_LOCAL,
				"inst",
				"*b",
				.var_address=&bbt_inst
			},
			{
				BBDEBUGDECL_LOCAL,
				"act",
				":TAction",
				.var_address=&bbt_act
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x4af243160143e7fa, 819, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbt_inst=ActVector_(openb3d_openb3dcore_TEntity_GetInstance_pb_TTEntity((struct openb3d_openb3dcore_TEntity_obj*)bbt_ent),bbt_a,bbt_b,bbt_c);
	struct BBDebugStm __stmt_1 = {0x4af243160143e7fa, 820, 0};
	bbOnDebugEnterStm(&__stmt_1);
	bbt_act=(struct openb3d_openb3dcore_TAction_obj*)openb3d_openb3dcore_TAction_GetObject_TTAction_pb(bbt_inst);
	struct BBDebugStm __stmt_2 = {0x4af243160143e7fa, 821, 0};
	bbOnDebugEnterStm(&__stmt_2);
	if((((BBOBJECT)bbt_act)==&bbNullObject) && (bbt_inst!=0)){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x4af243160143e7fa, 821, 0};
		bbOnDebugEnterStm(&__stmt_0);
		bbt_act=(struct openb3d_openb3dcore_TAction_obj*)openb3d_openb3dcore_TAction_CreateObject_TTAction_pb(bbt_inst);
		bbOnDebugLeaveScope();
	}
	struct BBDebugStm __stmt_3 = {0x4af243160143e7fa, 822, 0};
	bbOnDebugEnterStm(&__stmt_3);
	bbOnDebugLeaveScope();
	return (struct openb3d_openb3dcore_TAction_obj*)bbt_act;
}
struct openb3d_openb3dcore_TAction_obj* openb3d_openb3dcore_ActMoveTo(struct openb3d_openb3dcore_TEntity_obj* bbt_ent,BBFLOAT bbt_a,BBFLOAT bbt_b,BBFLOAT bbt_c,BBFLOAT bbt_rate){
	BBBYTE* bbt_inst=0;
	struct openb3d_openb3dcore_TAction_obj* bbt_act=(struct openb3d_openb3dcore_TAction_obj*)((struct openb3d_openb3dcore_TAction_obj*)&bbNullObject);
	struct BBDebugScope_7 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"ActMoveTo",
		{
			{
				BBDEBUGDECL_LOCAL,
				"ent",
				":TEntity",
				.var_address=&bbt_ent
			},
			{
				BBDEBUGDECL_LOCAL,
				"a",
				"f",
				.var_address=&bbt_a
			},
			{
				BBDEBUGDECL_LOCAL,
				"b",
				"f",
				.var_address=&bbt_b
			},
			{
				BBDEBUGDECL_LOCAL,
				"c",
				"f",
				.var_address=&bbt_c
			},
			{
				BBDEBUGDECL_LOCAL,
				"rate",
				"f",
				.var_address=&bbt_rate
			},
			{
				BBDEBUGDECL_LOCAL,
				"inst",
				"*b",
				.var_address=&bbt_inst
			},
			{
				BBDEBUGDECL_LOCAL,
				"act",
				":TAction",
				.var_address=&bbt_act
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x4af243160143e7fa, 829, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbt_inst=ActMoveTo_(openb3d_openb3dcore_TEntity_GetInstance_pb_TTEntity((struct openb3d_openb3dcore_TEntity_obj*)bbt_ent),bbt_a,bbt_b,bbt_c,bbt_rate);
	struct BBDebugStm __stmt_1 = {0x4af243160143e7fa, 830, 0};
	bbOnDebugEnterStm(&__stmt_1);
	bbt_act=(struct openb3d_openb3dcore_TAction_obj*)openb3d_openb3dcore_TAction_GetObject_TTAction_pb(bbt_inst);
	struct BBDebugStm __stmt_2 = {0x4af243160143e7fa, 831, 0};
	bbOnDebugEnterStm(&__stmt_2);
	if((((BBOBJECT)bbt_act)==&bbNullObject) && (bbt_inst!=0)){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x4af243160143e7fa, 831, 0};
		bbOnDebugEnterStm(&__stmt_0);
		bbt_act=(struct openb3d_openb3dcore_TAction_obj*)openb3d_openb3dcore_TAction_CreateObject_TTAction_pb(bbt_inst);
		bbOnDebugLeaveScope();
	}
	struct BBDebugStm __stmt_3 = {0x4af243160143e7fa, 832, 0};
	bbOnDebugEnterStm(&__stmt_3);
	bbOnDebugLeaveScope();
	return (struct openb3d_openb3dcore_TAction_obj*)bbt_act;
}
struct openb3d_openb3dcore_TAction_obj* openb3d_openb3dcore_ActTurnTo(struct openb3d_openb3dcore_TEntity_obj* bbt_ent,BBFLOAT bbt_a,BBFLOAT bbt_b,BBFLOAT bbt_c,BBFLOAT bbt_rate){
	BBBYTE* bbt_inst=0;
	struct openb3d_openb3dcore_TAction_obj* bbt_act=(struct openb3d_openb3dcore_TAction_obj*)((struct openb3d_openb3dcore_TAction_obj*)&bbNullObject);
	struct BBDebugScope_7 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"ActTurnTo",
		{
			{
				BBDEBUGDECL_LOCAL,
				"ent",
				":TEntity",
				.var_address=&bbt_ent
			},
			{
				BBDEBUGDECL_LOCAL,
				"a",
				"f",
				.var_address=&bbt_a
			},
			{
				BBDEBUGDECL_LOCAL,
				"b",
				"f",
				.var_address=&bbt_b
			},
			{
				BBDEBUGDECL_LOCAL,
				"c",
				"f",
				.var_address=&bbt_c
			},
			{
				BBDEBUGDECL_LOCAL,
				"rate",
				"f",
				.var_address=&bbt_rate
			},
			{
				BBDEBUGDECL_LOCAL,
				"inst",
				"*b",
				.var_address=&bbt_inst
			},
			{
				BBDEBUGDECL_LOCAL,
				"act",
				":TAction",
				.var_address=&bbt_act
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x4af243160143e7fa, 839, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbt_inst=ActTurnTo_(openb3d_openb3dcore_TEntity_GetInstance_pb_TTEntity((struct openb3d_openb3dcore_TEntity_obj*)bbt_ent),bbt_a,bbt_b,bbt_c,bbt_rate);
	struct BBDebugStm __stmt_1 = {0x4af243160143e7fa, 840, 0};
	bbOnDebugEnterStm(&__stmt_1);
	bbt_act=(struct openb3d_openb3dcore_TAction_obj*)openb3d_openb3dcore_TAction_GetObject_TTAction_pb(bbt_inst);
	struct BBDebugStm __stmt_2 = {0x4af243160143e7fa, 841, 0};
	bbOnDebugEnterStm(&__stmt_2);
	if((((BBOBJECT)bbt_act)==&bbNullObject) && (bbt_inst!=0)){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x4af243160143e7fa, 841, 0};
		bbOnDebugEnterStm(&__stmt_0);
		bbt_act=(struct openb3d_openb3dcore_TAction_obj*)openb3d_openb3dcore_TAction_CreateObject_TTAction_pb(bbt_inst);
		bbOnDebugLeaveScope();
	}
	struct BBDebugStm __stmt_3 = {0x4af243160143e7fa, 842, 0};
	bbOnDebugEnterStm(&__stmt_3);
	bbOnDebugLeaveScope();
	return (struct openb3d_openb3dcore_TAction_obj*)bbt_act;
}
struct openb3d_openb3dcore_TAction_obj* openb3d_openb3dcore_ActScaleTo(struct openb3d_openb3dcore_TEntity_obj* bbt_ent,BBFLOAT bbt_a,BBFLOAT bbt_b,BBFLOAT bbt_c,BBFLOAT bbt_rate){
	BBBYTE* bbt_inst=0;
	struct openb3d_openb3dcore_TAction_obj* bbt_act=(struct openb3d_openb3dcore_TAction_obj*)((struct openb3d_openb3dcore_TAction_obj*)&bbNullObject);
	struct BBDebugScope_7 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"ActScaleTo",
		{
			{
				BBDEBUGDECL_LOCAL,
				"ent",
				":TEntity",
				.var_address=&bbt_ent
			},
			{
				BBDEBUGDECL_LOCAL,
				"a",
				"f",
				.var_address=&bbt_a
			},
			{
				BBDEBUGDECL_LOCAL,
				"b",
				"f",
				.var_address=&bbt_b
			},
			{
				BBDEBUGDECL_LOCAL,
				"c",
				"f",
				.var_address=&bbt_c
			},
			{
				BBDEBUGDECL_LOCAL,
				"rate",
				"f",
				.var_address=&bbt_rate
			},
			{
				BBDEBUGDECL_LOCAL,
				"inst",
				"*b",
				.var_address=&bbt_inst
			},
			{
				BBDEBUGDECL_LOCAL,
				"act",
				":TAction",
				.var_address=&bbt_act
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x4af243160143e7fa, 849, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbt_inst=ActScaleTo_(openb3d_openb3dcore_TEntity_GetInstance_pb_TTEntity((struct openb3d_openb3dcore_TEntity_obj*)bbt_ent),bbt_a,bbt_b,bbt_c,bbt_rate);
	struct BBDebugStm __stmt_1 = {0x4af243160143e7fa, 850, 0};
	bbOnDebugEnterStm(&__stmt_1);
	bbt_act=(struct openb3d_openb3dcore_TAction_obj*)openb3d_openb3dcore_TAction_GetObject_TTAction_pb(bbt_inst);
	struct BBDebugStm __stmt_2 = {0x4af243160143e7fa, 851, 0};
	bbOnDebugEnterStm(&__stmt_2);
	if((((BBOBJECT)bbt_act)==&bbNullObject) && (bbt_inst!=0)){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x4af243160143e7fa, 851, 0};
		bbOnDebugEnterStm(&__stmt_0);
		bbt_act=(struct openb3d_openb3dcore_TAction_obj*)openb3d_openb3dcore_TAction_CreateObject_TTAction_pb(bbt_inst);
		bbOnDebugLeaveScope();
	}
	struct BBDebugStm __stmt_3 = {0x4af243160143e7fa, 852, 0};
	bbOnDebugEnterStm(&__stmt_3);
	bbOnDebugLeaveScope();
	return (struct openb3d_openb3dcore_TAction_obj*)bbt_act;
}
struct openb3d_openb3dcore_TAction_obj* openb3d_openb3dcore_ActFadeTo(struct openb3d_openb3dcore_TEntity_obj* bbt_ent,BBFLOAT bbt_a,BBFLOAT bbt_rate){
	BBBYTE* bbt_inst=0;
	struct openb3d_openb3dcore_TAction_obj* bbt_act=(struct openb3d_openb3dcore_TAction_obj*)((struct openb3d_openb3dcore_TAction_obj*)&bbNullObject);
	struct BBDebugScope_5 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"ActFadeTo",
		{
			{
				BBDEBUGDECL_LOCAL,
				"ent",
				":TEntity",
				.var_address=&bbt_ent
			},
			{
				BBDEBUGDECL_LOCAL,
				"a",
				"f",
				.var_address=&bbt_a
			},
			{
				BBDEBUGDECL_LOCAL,
				"rate",
				"f",
				.var_address=&bbt_rate
			},
			{
				BBDEBUGDECL_LOCAL,
				"inst",
				"*b",
				.var_address=&bbt_inst
			},
			{
				BBDEBUGDECL_LOCAL,
				"act",
				":TAction",
				.var_address=&bbt_act
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x4af243160143e7fa, 859, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbt_inst=ActFadeTo_(openb3d_openb3dcore_TEntity_GetInstance_pb_TTEntity((struct openb3d_openb3dcore_TEntity_obj*)bbt_ent),bbt_a,bbt_rate);
	struct BBDebugStm __stmt_1 = {0x4af243160143e7fa, 860, 0};
	bbOnDebugEnterStm(&__stmt_1);
	bbt_act=(struct openb3d_openb3dcore_TAction_obj*)openb3d_openb3dcore_TAction_GetObject_TTAction_pb(bbt_inst);
	struct BBDebugStm __stmt_2 = {0x4af243160143e7fa, 861, 0};
	bbOnDebugEnterStm(&__stmt_2);
	if((((BBOBJECT)bbt_act)==&bbNullObject) && (bbt_inst!=0)){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x4af243160143e7fa, 861, 0};
		bbOnDebugEnterStm(&__stmt_0);
		bbt_act=(struct openb3d_openb3dcore_TAction_obj*)openb3d_openb3dcore_TAction_CreateObject_TTAction_pb(bbt_inst);
		bbOnDebugLeaveScope();
	}
	struct BBDebugStm __stmt_3 = {0x4af243160143e7fa, 862, 0};
	bbOnDebugEnterStm(&__stmt_3);
	bbOnDebugLeaveScope();
	return (struct openb3d_openb3dcore_TAction_obj*)bbt_act;
}
struct openb3d_openb3dcore_TAction_obj* openb3d_openb3dcore_ActTintTo(struct openb3d_openb3dcore_TEntity_obj* bbt_ent,BBFLOAT bbt_a,BBFLOAT bbt_b,BBFLOAT bbt_c,BBFLOAT bbt_rate){
	BBBYTE* bbt_inst=0;
	struct openb3d_openb3dcore_TAction_obj* bbt_act=(struct openb3d_openb3dcore_TAction_obj*)((struct openb3d_openb3dcore_TAction_obj*)&bbNullObject);
	struct BBDebugScope_7 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"ActTintTo",
		{
			{
				BBDEBUGDECL_LOCAL,
				"ent",
				":TEntity",
				.var_address=&bbt_ent
			},
			{
				BBDEBUGDECL_LOCAL,
				"a",
				"f",
				.var_address=&bbt_a
			},
			{
				BBDEBUGDECL_LOCAL,
				"b",
				"f",
				.var_address=&bbt_b
			},
			{
				BBDEBUGDECL_LOCAL,
				"c",
				"f",
				.var_address=&bbt_c
			},
			{
				BBDEBUGDECL_LOCAL,
				"rate",
				"f",
				.var_address=&bbt_rate
			},
			{
				BBDEBUGDECL_LOCAL,
				"inst",
				"*b",
				.var_address=&bbt_inst
			},
			{
				BBDEBUGDECL_LOCAL,
				"act",
				":TAction",
				.var_address=&bbt_act
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x4af243160143e7fa, 869, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbt_inst=ActTintTo_(openb3d_openb3dcore_TEntity_GetInstance_pb_TTEntity((struct openb3d_openb3dcore_TEntity_obj*)bbt_ent),bbt_a,bbt_b,bbt_c,bbt_rate);
	struct BBDebugStm __stmt_1 = {0x4af243160143e7fa, 870, 0};
	bbOnDebugEnterStm(&__stmt_1);
	bbt_act=(struct openb3d_openb3dcore_TAction_obj*)openb3d_openb3dcore_TAction_GetObject_TTAction_pb(bbt_inst);
	struct BBDebugStm __stmt_2 = {0x4af243160143e7fa, 871, 0};
	bbOnDebugEnterStm(&__stmt_2);
	if((((BBOBJECT)bbt_act)==&bbNullObject) && (bbt_inst!=0)){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x4af243160143e7fa, 871, 0};
		bbOnDebugEnterStm(&__stmt_0);
		bbt_act=(struct openb3d_openb3dcore_TAction_obj*)openb3d_openb3dcore_TAction_CreateObject_TTAction_pb(bbt_inst);
		bbOnDebugLeaveScope();
	}
	struct BBDebugStm __stmt_3 = {0x4af243160143e7fa, 872, 0};
	bbOnDebugEnterStm(&__stmt_3);
	bbOnDebugLeaveScope();
	return (struct openb3d_openb3dcore_TAction_obj*)bbt_act;
}
struct openb3d_openb3dcore_TAction_obj* openb3d_openb3dcore_ActTrackByPoint(struct openb3d_openb3dcore_TEntity_obj* bbt_ent,struct openb3d_openb3dcore_TEntity_obj* bbt_target,BBFLOAT bbt_a,BBFLOAT bbt_b,BBFLOAT bbt_c,BBFLOAT bbt_rate){
	BBBYTE* bbt_inst=0;
	struct openb3d_openb3dcore_TAction_obj* bbt_act=(struct openb3d_openb3dcore_TAction_obj*)((struct openb3d_openb3dcore_TAction_obj*)&bbNullObject);
	struct BBDebugScope_8 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"ActTrackByPoint",
		{
			{
				BBDEBUGDECL_LOCAL,
				"ent",
				":TEntity",
				.var_address=&bbt_ent
			},
			{
				BBDEBUGDECL_LOCAL,
				"target",
				":TEntity",
				.var_address=&bbt_target
			},
			{
				BBDEBUGDECL_LOCAL,
				"a",
				"f",
				.var_address=&bbt_a
			},
			{
				BBDEBUGDECL_LOCAL,
				"b",
				"f",
				.var_address=&bbt_b
			},
			{
				BBDEBUGDECL_LOCAL,
				"c",
				"f",
				.var_address=&bbt_c
			},
			{
				BBDEBUGDECL_LOCAL,
				"rate",
				"f",
				.var_address=&bbt_rate
			},
			{
				BBDEBUGDECL_LOCAL,
				"inst",
				"*b",
				.var_address=&bbt_inst
			},
			{
				BBDEBUGDECL_LOCAL,
				"act",
				":TAction",
				.var_address=&bbt_act
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x4af243160143e7fa, 879, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbt_inst=ActTrackByPoint_(openb3d_openb3dcore_TEntity_GetInstance_pb_TTEntity((struct openb3d_openb3dcore_TEntity_obj*)bbt_ent),openb3d_openb3dcore_TEntity_GetInstance_pb_TTEntity((struct openb3d_openb3dcore_TEntity_obj*)bbt_target),bbt_a,bbt_b,bbt_c,bbt_rate);
	struct BBDebugStm __stmt_1 = {0x4af243160143e7fa, 880, 0};
	bbOnDebugEnterStm(&__stmt_1);
	bbt_act=(struct openb3d_openb3dcore_TAction_obj*)openb3d_openb3dcore_TAction_GetObject_TTAction_pb(bbt_inst);
	struct BBDebugStm __stmt_2 = {0x4af243160143e7fa, 881, 0};
	bbOnDebugEnterStm(&__stmt_2);
	if((((BBOBJECT)bbt_act)==&bbNullObject) && (bbt_inst!=0)){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x4af243160143e7fa, 881, 0};
		bbOnDebugEnterStm(&__stmt_0);
		bbt_act=(struct openb3d_openb3dcore_TAction_obj*)openb3d_openb3dcore_TAction_CreateObject_TTAction_pb(bbt_inst);
		bbOnDebugLeaveScope();
	}
	struct BBDebugStm __stmt_3 = {0x4af243160143e7fa, 882, 0};
	bbOnDebugEnterStm(&__stmt_3);
	bbOnDebugLeaveScope();
	return (struct openb3d_openb3dcore_TAction_obj*)bbt_act;
}
struct openb3d_openb3dcore_TAction_obj* openb3d_openb3dcore_ActTrackByDistance(struct openb3d_openb3dcore_TEntity_obj* bbt_ent,struct openb3d_openb3dcore_TEntity_obj* bbt_target,BBFLOAT bbt_a,BBFLOAT bbt_rate){
	BBBYTE* bbt_inst=0;
	struct openb3d_openb3dcore_TAction_obj* bbt_act=(struct openb3d_openb3dcore_TAction_obj*)((struct openb3d_openb3dcore_TAction_obj*)&bbNullObject);
	struct BBDebugScope_6 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"ActTrackByDistance",
		{
			{
				BBDEBUGDECL_LOCAL,
				"ent",
				":TEntity",
				.var_address=&bbt_ent
			},
			{
				BBDEBUGDECL_LOCAL,
				"target",
				":TEntity",
				.var_address=&bbt_target
			},
			{
				BBDEBUGDECL_LOCAL,
				"a",
				"f",
				.var_address=&bbt_a
			},
			{
				BBDEBUGDECL_LOCAL,
				"rate",
				"f",
				.var_address=&bbt_rate
			},
			{
				BBDEBUGDECL_LOCAL,
				"inst",
				"*b",
				.var_address=&bbt_inst
			},
			{
				BBDEBUGDECL_LOCAL,
				"act",
				":TAction",
				.var_address=&bbt_act
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x4af243160143e7fa, 889, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbt_inst=ActTrackByDistance_(openb3d_openb3dcore_TEntity_GetInstance_pb_TTEntity((struct openb3d_openb3dcore_TEntity_obj*)bbt_ent),openb3d_openb3dcore_TEntity_GetInstance_pb_TTEntity((struct openb3d_openb3dcore_TEntity_obj*)bbt_target),bbt_a,bbt_rate);
	struct BBDebugStm __stmt_1 = {0x4af243160143e7fa, 890, 0};
	bbOnDebugEnterStm(&__stmt_1);
	bbt_act=(struct openb3d_openb3dcore_TAction_obj*)openb3d_openb3dcore_TAction_GetObject_TTAction_pb(bbt_inst);
	struct BBDebugStm __stmt_2 = {0x4af243160143e7fa, 891, 0};
	bbOnDebugEnterStm(&__stmt_2);
	if((((BBOBJECT)bbt_act)==&bbNullObject) && (bbt_inst!=0)){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x4af243160143e7fa, 891, 0};
		bbOnDebugEnterStm(&__stmt_0);
		bbt_act=(struct openb3d_openb3dcore_TAction_obj*)openb3d_openb3dcore_TAction_CreateObject_TTAction_pb(bbt_inst);
		bbOnDebugLeaveScope();
	}
	struct BBDebugStm __stmt_3 = {0x4af243160143e7fa, 892, 0};
	bbOnDebugEnterStm(&__stmt_3);
	bbOnDebugLeaveScope();
	return (struct openb3d_openb3dcore_TAction_obj*)bbt_act;
}
struct openb3d_openb3dcore_TAction_obj* openb3d_openb3dcore_ActNewtonian(struct openb3d_openb3dcore_TEntity_obj* bbt_ent,BBFLOAT bbt_rate){
	BBBYTE* bbt_inst=0;
	struct openb3d_openb3dcore_TAction_obj* bbt_act=(struct openb3d_openb3dcore_TAction_obj*)((struct openb3d_openb3dcore_TAction_obj*)&bbNullObject);
	struct BBDebugScope_4 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"ActNewtonian",
		{
			{
				BBDEBUGDECL_LOCAL,
				"ent",
				":TEntity",
				.var_address=&bbt_ent
			},
			{
				BBDEBUGDECL_LOCAL,
				"rate",
				"f",
				.var_address=&bbt_rate
			},
			{
				BBDEBUGDECL_LOCAL,
				"inst",
				"*b",
				.var_address=&bbt_inst
			},
			{
				BBDEBUGDECL_LOCAL,
				"act",
				":TAction",
				.var_address=&bbt_act
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x4af243160143e7fa, 899, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbt_inst=ActNewtonian_(openb3d_openb3dcore_TEntity_GetInstance_pb_TTEntity((struct openb3d_openb3dcore_TEntity_obj*)bbt_ent),bbt_rate);
	struct BBDebugStm __stmt_1 = {0x4af243160143e7fa, 900, 0};
	bbOnDebugEnterStm(&__stmt_1);
	bbt_act=(struct openb3d_openb3dcore_TAction_obj*)openb3d_openb3dcore_TAction_GetObject_TTAction_pb(bbt_inst);
	struct BBDebugStm __stmt_2 = {0x4af243160143e7fa, 901, 0};
	bbOnDebugEnterStm(&__stmt_2);
	if((((BBOBJECT)bbt_act)==&bbNullObject) && (bbt_inst!=0)){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x4af243160143e7fa, 901, 0};
		bbOnDebugEnterStm(&__stmt_0);
		bbt_act=(struct openb3d_openb3dcore_TAction_obj*)openb3d_openb3dcore_TAction_CreateObject_TTAction_pb(bbt_inst);
		bbOnDebugLeaveScope();
	}
	struct BBDebugStm __stmt_3 = {0x4af243160143e7fa, 902, 0};
	bbOnDebugEnterStm(&__stmt_3);
	bbOnDebugLeaveScope();
	return (struct openb3d_openb3dcore_TAction_obj*)bbt_act;
}
BBINT openb3d_openb3dcore_AppendAction(struct openb3d_openb3dcore_TAction_obj* bbt_act1,struct openb3d_openb3dcore_TAction_obj* bbt_act2){
	struct BBDebugScope_2 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"AppendAction",
		{
			{
				BBDEBUGDECL_LOCAL,
				"act1",
				":TAction",
				.var_address=&bbt_act1
			},
			{
				BBDEBUGDECL_LOCAL,
				"act2",
				":TAction",
				.var_address=&bbt_act2
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x4af243160143e7fa, 909, 0};
	bbOnDebugEnterStm(&__stmt_0);
	((struct openb3d_openb3dcore_TAction_obj*)bbNullObjectTest((BBObject*)bbt_act1))->clas->m_AppendAction_TTAction((struct openb3d_openb3dcore_TAction_obj*)bbt_act1,(struct openb3d_openb3dcore_TAction_obj*)bbt_act2);
	bbOnDebugLeaveScope();
	return 0;
}
BBINT openb3d_openb3dcore_FreeAction(struct openb3d_openb3dcore_TAction_obj* bbt_act){
	struct BBDebugScope_1 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"FreeAction",
		{
			{
				BBDEBUGDECL_LOCAL,
				"act",
				":TAction",
				.var_address=&bbt_act
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x4af243160143e7fa, 916, 0};
	bbOnDebugEnterStm(&__stmt_0);
	((struct openb3d_openb3dcore_TAction_obj*)bbNullObjectTest((BBObject*)bbt_act))->clas->m_FreeAction((struct openb3d_openb3dcore_TAction_obj*)bbt_act);
	bbOnDebugLeaveScope();
	return 0;
}
BBINT openb3d_openb3dcore_EndAction(struct openb3d_openb3dcore_TAction_obj* bbt_act){
	struct BBDebugScope_1 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"EndAction",
		{
			{
				BBDEBUGDECL_LOCAL,
				"act",
				":TAction",
				.var_address=&bbt_act
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x4af243160143e7fa, 923, 0};
	bbOnDebugEnterStm(&__stmt_0);
	((struct openb3d_openb3dcore_TAction_obj*)bbNullObjectTest((BBObject*)bbt_act))->clas->m_EndAction((struct openb3d_openb3dcore_TAction_obj*)bbt_act);
	bbOnDebugLeaveScope();
	return 0;
}
struct openb3d_openb3dcore_TConstraint_obj* openb3d_openb3dcore_CreateConstraint(struct openb3d_openb3dcore_TEntity_obj* bbt_p1,struct openb3d_openb3dcore_TEntity_obj* bbt_p2,BBFLOAT bbt_l){
	struct BBDebugScope_3 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"CreateConstraint",
		{
			{
				BBDEBUGDECL_LOCAL,
				"p1",
				":TEntity",
				.var_address=&bbt_p1
			},
			{
				BBDEBUGDECL_LOCAL,
				"p2",
				":TEntity",
				.var_address=&bbt_p2
			},
			{
				BBDEBUGDECL_LOCAL,
				"l",
				"f",
				.var_address=&bbt_l
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x4af243160143e7fa, 932, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbOnDebugLeaveScope();
	return (struct openb3d_openb3dcore_TConstraint_obj*)openb3d_openb3dcore_TConstraint_CreateConstraint_TTConstraint_TTEntityTTEntityf((struct openb3d_openb3dcore_TEntity_obj*)bbt_p1,(struct openb3d_openb3dcore_TEntity_obj*)bbt_p2,bbt_l);
}
struct openb3d_openb3dcore_TRigidBody_obj* openb3d_openb3dcore_CreateRigidBody(struct openb3d_openb3dcore_TEntity_obj* bbt_body,struct openb3d_openb3dcore_TEntity_obj* bbt_p1,struct openb3d_openb3dcore_TEntity_obj* bbt_p2,struct openb3d_openb3dcore_TEntity_obj* bbt_p3,struct openb3d_openb3dcore_TEntity_obj* bbt_p4){
	struct BBDebugScope_5 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"CreateRigidBody",
		{
			{
				BBDEBUGDECL_LOCAL,
				"body",
				":TEntity",
				.var_address=&bbt_body
			},
			{
				BBDEBUGDECL_LOCAL,
				"p1",
				":TEntity",
				.var_address=&bbt_p1
			},
			{
				BBDEBUGDECL_LOCAL,
				"p2",
				":TEntity",
				.var_address=&bbt_p2
			},
			{
				BBDEBUGDECL_LOCAL,
				"p3",
				":TEntity",
				.var_address=&bbt_p3
			},
			{
				BBDEBUGDECL_LOCAL,
				"p4",
				":TEntity",
				.var_address=&bbt_p4
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x4af243160143e7fa, 939, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbOnDebugLeaveScope();
	return (struct openb3d_openb3dcore_TRigidBody_obj*)openb3d_openb3dcore_TRigidBody_CreateRigidBody_TTRigidBody_TTEntityTTEntityTTEntityTTEntityTTEntity((struct openb3d_openb3dcore_TEntity_obj*)bbt_body,(struct openb3d_openb3dcore_TEntity_obj*)bbt_p1,(struct openb3d_openb3dcore_TEntity_obj*)bbt_p2,(struct openb3d_openb3dcore_TEntity_obj*)bbt_p3,(struct openb3d_openb3dcore_TEntity_obj*)bbt_p4);
}
struct openb3d_openb3dcore_TBlob_obj* openb3d_openb3dcore_CreateBlob(struct openb3d_openb3dcore_TFluid_obj* bbt_fluid,BBFLOAT bbt_radius,struct openb3d_openb3dcore_TEntity_obj* bbt_parent_ent){
	struct BBDebugScope_3 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"CreateBlob",
		{
			{
				BBDEBUGDECL_LOCAL,
				"fluid",
				":TFluid",
				.var_address=&bbt_fluid
			},
			{
				BBDEBUGDECL_LOCAL,
				"radius",
				"f",
				.var_address=&bbt_radius
			},
			{
				BBDEBUGDECL_LOCAL,
				"parent_ent",
				":TEntity",
				.var_address=&bbt_parent_ent
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x4af243160143e7fa, 948, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbOnDebugLeaveScope();
	return (struct openb3d_openb3dcore_TBlob_obj*)openb3d_openb3dcore_TBlob_CreateBlob_TTBlob_TTFluidfTTEntity((struct openb3d_openb3dcore_TFluid_obj*)bbt_fluid,bbt_radius,(struct openb3d_openb3dcore_TEntity_obj*)bbt_parent_ent);
}
struct openb3d_openb3dcore_TFluid_obj* openb3d_openb3dcore_CreateFluid(){
	struct BBDebugScope __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"CreateFluid",
		{
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x4af243160143e7fa, 955, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbOnDebugLeaveScope();
	return (struct openb3d_openb3dcore_TFluid_obj*)openb3d_openb3dcore_TFluid_CreateFluid_TTFluid();
}
BBINT openb3d_openb3dcore_FluidArray(struct openb3d_openb3dcore_TFluid_obj* bbt_fluid,BBFLOAT* bbt_Array,BBINT bbt_w,BBINT bbt_h,BBINT bbt_d){
	struct BBDebugScope_5 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"FluidArray",
		{
			{
				BBDEBUGDECL_LOCAL,
				"fluid",
				":TFluid",
				.var_address=&bbt_fluid
			},
			{
				BBDEBUGDECL_VARPARAM,
				"Array",
				"f",
				.var_address=&bbt_Array
			},
			{
				BBDEBUGDECL_LOCAL,
				"w",
				"i",
				.var_address=&bbt_w
			},
			{
				BBDEBUGDECL_LOCAL,
				"h",
				"i",
				.var_address=&bbt_h
			},
			{
				BBDEBUGDECL_LOCAL,
				"d",
				"i",
				.var_address=&bbt_d
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x4af243160143e7fa, 962, 0};
	bbOnDebugEnterStm(&__stmt_0);
	((struct openb3d_openb3dcore_TFluid_obj*)bbNullObjectTest((BBObject*)bbt_fluid))->clas->m_FluidArray_vfiii((struct openb3d_openb3dcore_TFluid_obj*)bbt_fluid,bbt_Array,bbt_w,bbt_h,bbt_d);
	bbOnDebugLeaveScope();
	return 0;
}
BBINT openb3d_openb3dcore_FluidFunction(struct openb3d_openb3dcore_TFluid_obj* bbt_fluid,BBFLOAT(* bbt_FieldFunction)(BBFLOAT,BBFLOAT,BBFLOAT)){
	struct BBDebugScope_2 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"FluidFunction",
		{
			{
				BBDEBUGDECL_LOCAL,
				"fluid",
				":TFluid",
				.var_address=&bbt_fluid
			},
			{
				BBDEBUGDECL_LOCAL,
				"FieldFunction",
				"(f,f,f)f",
				.var_address=&bbt_FieldFunction
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x4af243160143e7fa, 969, 0};
	bbOnDebugEnterStm(&__stmt_0);
	((struct openb3d_openb3dcore_TFluid_obj*)bbNullObjectTest((BBObject*)bbt_fluid))->clas->m_FluidFunction_F_fff_f_((struct openb3d_openb3dcore_TFluid_obj*)bbt_fluid,bbt_FieldFunction);
	bbOnDebugLeaveScope();
	return 0;
}
BBINT openb3d_openb3dcore_FluidThreshold(struct openb3d_openb3dcore_TFluid_obj* bbt_fluid,BBFLOAT bbt_threshold){
	struct BBDebugScope_2 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"FluidThreshold",
		{
			{
				BBDEBUGDECL_LOCAL,
				"fluid",
				":TFluid",
				.var_address=&bbt_fluid
			},
			{
				BBDEBUGDECL_LOCAL,
				"threshold",
				"f",
				.var_address=&bbt_threshold
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x4af243160143e7fa, 976, 0};
	bbOnDebugEnterStm(&__stmt_0);
	FluidThreshold_(openb3d_openb3dcore_TEntity_GetInstance_pb_TTEntity((struct openb3d_openb3dcore_TEntity_obj*)((struct openb3d_openb3dcore_TEntity_obj*)bbObjectDowncast((BBOBJECT)bbt_fluid,(BBClass*)&openb3d_openb3dcore_TEntity))),bbt_threshold);
	bbOnDebugLeaveScope();
	return 0;
}
struct openb3d_openb3dcore_TGeosphere_obj* openb3d_openb3dcore_CreateGeosphere(BBINT bbt_size,struct openb3d_openb3dcore_TEntity_obj* bbt_parent){
	struct BBDebugScope_2 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"CreateGeosphere",
		{
			{
				BBDEBUGDECL_LOCAL,
				"size",
				"i",
				.var_address=&bbt_size
			},
			{
				BBDEBUGDECL_LOCAL,
				"parent",
				":TEntity",
				.var_address=&bbt_parent
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x4af243160143e7fa, 985, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbOnDebugLeaveScope();
	return (struct openb3d_openb3dcore_TGeosphere_obj*)openb3d_openb3dcore_TGeosphere_CreateGeosphere_TTGeosphere_iTTEntity(bbt_size,(struct openb3d_openb3dcore_TEntity_obj*)bbt_parent);
}
BBINT openb3d_openb3dcore_GeosphereHeight(struct openb3d_openb3dcore_TGeosphere_obj* bbt_geo,BBFLOAT bbt_h){
	struct BBDebugScope_2 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"GeosphereHeight",
		{
			{
				BBDEBUGDECL_LOCAL,
				"geo",
				":TGeosphere",
				.var_address=&bbt_geo
			},
			{
				BBDEBUGDECL_LOCAL,
				"h",
				"f",
				.var_address=&bbt_h
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x4af243160143e7fa, 992, 0};
	bbOnDebugEnterStm(&__stmt_0);
	GeosphereHeight_(openb3d_openb3dcore_TEntity_GetInstance_pb_TTEntity((struct openb3d_openb3dcore_TEntity_obj*)((struct openb3d_openb3dcore_TEntity_obj*)bbObjectDowncast((BBOBJECT)bbt_geo,(BBClass*)&openb3d_openb3dcore_TEntity))),bbt_h);
	bbOnDebugLeaveScope();
	return 0;
}
struct openb3d_openb3dcore_TGeosphere_obj* openb3d_openb3dcore_LoadGeosphere(BBSTRING bbt_file,struct openb3d_openb3dcore_TEntity_obj* bbt_parent){
	struct BBDebugScope_2 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"LoadGeosphere",
		{
			{
				BBDEBUGDECL_LOCAL,
				"file",
				"$",
				.var_address=&bbt_file
			},
			{
				BBDEBUGDECL_LOCAL,
				"parent",
				":TEntity",
				.var_address=&bbt_parent
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x4af243160143e7fa, 999, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbOnDebugLeaveScope();
	return (struct openb3d_openb3dcore_TGeosphere_obj*)openb3d_openb3dcore_TGeosphere_LoadGeosphere_TTGeosphere_STTEntity(bbt_file,(struct openb3d_openb3dcore_TEntity_obj*)bbt_parent);
}
BBINT openb3d_openb3dcore_ModifyGeosphere(struct openb3d_openb3dcore_TGeosphere_obj* bbt_geo,BBINT bbt_x,BBINT bbt_z,BBFLOAT bbt_new_height){
	struct BBDebugScope_4 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"ModifyGeosphere",
		{
			{
				BBDEBUGDECL_LOCAL,
				"geo",
				":TGeosphere",
				.var_address=&bbt_geo
			},
			{
				BBDEBUGDECL_LOCAL,
				"x",
				"i",
				.var_address=&bbt_x
			},
			{
				BBDEBUGDECL_LOCAL,
				"z",
				"i",
				.var_address=&bbt_z
			},
			{
				BBDEBUGDECL_LOCAL,
				"new_height",
				"f",
				.var_address=&bbt_new_height
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x4af243160143e7fa, 1006, 0};
	bbOnDebugEnterStm(&__stmt_0);
	((struct openb3d_openb3dcore_TGeosphere_obj*)bbNullObjectTest((BBObject*)bbt_geo))->clas->m_ModifyGeosphere_iif((struct openb3d_openb3dcore_TGeosphere_obj*)bbt_geo,bbt_x,bbt_z,bbt_new_height);
	bbOnDebugLeaveScope();
	return 0;
}
struct openb3d_openb3dcore_TOcTree_obj* openb3d_openb3dcore_CreateOcTree(BBFLOAT bbt_w,BBFLOAT bbt_h,BBFLOAT bbt_d,struct openb3d_openb3dcore_TEntity_obj* bbt_parent_ent){
	struct BBDebugScope_4 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"CreateOcTree",
		{
			{
				BBDEBUGDECL_LOCAL,
				"w",
				"f",
				.var_address=&bbt_w
			},
			{
				BBDEBUGDECL_LOCAL,
				"h",
				"f",
				.var_address=&bbt_h
			},
			{
				BBDEBUGDECL_LOCAL,
				"d",
				"f",
				.var_address=&bbt_d
			},
			{
				BBDEBUGDECL_LOCAL,
				"parent_ent",
				":TEntity",
				.var_address=&bbt_parent_ent
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x4af243160143e7fa, 1015, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbOnDebugLeaveScope();
	return (struct openb3d_openb3dcore_TOcTree_obj*)openb3d_openb3dcore_TOcTree_CreateOcTree_TTOcTree_fffTTEntity(bbt_w,bbt_h,bbt_d,(struct openb3d_openb3dcore_TEntity_obj*)bbt_parent_ent);
}
BBINT openb3d_openb3dcore_OctreeBlock(struct openb3d_openb3dcore_TOcTree_obj* bbt_octree,struct openb3d_openb3dcore_TMesh_obj* bbt_mesh,BBINT bbt_level,BBFLOAT bbt_X,BBFLOAT bbt_Y,BBFLOAT bbt_Z,BBFLOAT bbt_Near,BBFLOAT bbt_Far){
	struct BBDebugScope_8 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"OctreeBlock",
		{
			{
				BBDEBUGDECL_LOCAL,
				"octree",
				":TOcTree",
				.var_address=&bbt_octree
			},
			{
				BBDEBUGDECL_LOCAL,
				"mesh",
				":TMesh",
				.var_address=&bbt_mesh
			},
			{
				BBDEBUGDECL_LOCAL,
				"level",
				"i",
				.var_address=&bbt_level
			},
			{
				BBDEBUGDECL_LOCAL,
				"X",
				"f",
				.var_address=&bbt_X
			},
			{
				BBDEBUGDECL_LOCAL,
				"Y",
				"f",
				.var_address=&bbt_Y
			},
			{
				BBDEBUGDECL_LOCAL,
				"Z",
				"f",
				.var_address=&bbt_Z
			},
			{
				BBDEBUGDECL_LOCAL,
				"Near",
				"f",
				.var_address=&bbt_Near
			},
			{
				BBDEBUGDECL_LOCAL,
				"Far",
				"f",
				.var_address=&bbt_Far
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x4af243160143e7fa, 1028, 0};
	bbOnDebugEnterStm(&__stmt_0);
	((struct openb3d_openb3dcore_TOcTree_obj*)bbNullObjectTest((BBObject*)bbt_octree))->clas->m_OctreeBlock_TTMeshifffff((struct openb3d_openb3dcore_TOcTree_obj*)bbt_octree,(struct openb3d_openb3dcore_TMesh_obj*)bbt_mesh,bbt_level,bbt_X,bbt_Y,bbt_Z,bbt_Near,bbt_Far);
	bbOnDebugLeaveScope();
	return 0;
}
BBINT openb3d_openb3dcore_OctreeMesh(struct openb3d_openb3dcore_TOcTree_obj* bbt_octree,struct openb3d_openb3dcore_TMesh_obj* bbt_mesh,BBINT bbt_level,BBFLOAT bbt_X,BBFLOAT bbt_Y,BBFLOAT bbt_Z,BBFLOAT bbt_Near,BBFLOAT bbt_Far){
	struct BBDebugScope_8 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"OctreeMesh",
		{
			{
				BBDEBUGDECL_LOCAL,
				"octree",
				":TOcTree",
				.var_address=&bbt_octree
			},
			{
				BBDEBUGDECL_LOCAL,
				"mesh",
				":TMesh",
				.var_address=&bbt_mesh
			},
			{
				BBDEBUGDECL_LOCAL,
				"level",
				"i",
				.var_address=&bbt_level
			},
			{
				BBDEBUGDECL_LOCAL,
				"X",
				"f",
				.var_address=&bbt_X
			},
			{
				BBDEBUGDECL_LOCAL,
				"Y",
				"f",
				.var_address=&bbt_Y
			},
			{
				BBDEBUGDECL_LOCAL,
				"Z",
				"f",
				.var_address=&bbt_Z
			},
			{
				BBDEBUGDECL_LOCAL,
				"Near",
				"f",
				.var_address=&bbt_Near
			},
			{
				BBDEBUGDECL_LOCAL,
				"Far",
				"f",
				.var_address=&bbt_Far
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x4af243160143e7fa, 1035, 0};
	bbOnDebugEnterStm(&__stmt_0);
	((struct openb3d_openb3dcore_TOcTree_obj*)bbNullObjectTest((BBObject*)bbt_octree))->clas->m_OctreeMesh_TTMeshifffff((struct openb3d_openb3dcore_TOcTree_obj*)bbt_octree,(struct openb3d_openb3dcore_TMesh_obj*)bbt_mesh,bbt_level,bbt_X,bbt_Y,bbt_Z,bbt_Near,bbt_Far);
	bbOnDebugLeaveScope();
	return 0;
}
struct openb3d_openb3dcore_TParticleEmitter_obj* openb3d_openb3dcore_CreateParticleEmitter(struct openb3d_openb3dcore_TEntity_obj* bbt_particle,struct openb3d_openb3dcore_TEntity_obj* bbt_parent_ent){
	struct BBDebugScope_2 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"CreateParticleEmitter",
		{
			{
				BBDEBUGDECL_LOCAL,
				"particle",
				":TEntity",
				.var_address=&bbt_particle
			},
			{
				BBDEBUGDECL_LOCAL,
				"parent_ent",
				":TEntity",
				.var_address=&bbt_parent_ent
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x4af243160143e7fa, 1044, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbOnDebugLeaveScope();
	return (struct openb3d_openb3dcore_TParticleEmitter_obj*)openb3d_openb3dcore_TParticleEmitter_CreateParticleEmitter_TTParticleEmitter_TTEntityTTEntity((struct openb3d_openb3dcore_TEntity_obj*)bbt_particle,(struct openb3d_openb3dcore_TEntity_obj*)bbt_parent_ent);
}
BBINT openb3d_openb3dcore_EmitterVector(struct openb3d_openb3dcore_TParticleEmitter_obj* bbt_emit,BBFLOAT bbt_startx,BBFLOAT bbt_starty,BBFLOAT bbt_startz,BBFLOAT bbt_endx,BBFLOAT bbt_endy,BBFLOAT bbt_endz){
	struct BBDebugScope_7 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"EmitterVector",
		{
			{
				BBDEBUGDECL_LOCAL,
				"emit",
				":TParticleEmitter",
				.var_address=&bbt_emit
			},
			{
				BBDEBUGDECL_LOCAL,
				"startx",
				"f",
				.var_address=&bbt_startx
			},
			{
				BBDEBUGDECL_LOCAL,
				"starty",
				"f",
				.var_address=&bbt_starty
			},
			{
				BBDEBUGDECL_LOCAL,
				"startz",
				"f",
				.var_address=&bbt_startz
			},
			{
				BBDEBUGDECL_LOCAL,
				"endx",
				"f",
				.var_address=&bbt_endx
			},
			{
				BBDEBUGDECL_LOCAL,
				"endy",
				"f",
				.var_address=&bbt_endy
			},
			{
				BBDEBUGDECL_LOCAL,
				"endz",
				"f",
				.var_address=&bbt_endz
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x4af243160143e7fa, 1052, 0};
	bbOnDebugEnterStm(&__stmt_0);
	((struct openb3d_openb3dcore_TParticleEmitter_obj*)bbNullObjectTest((BBObject*)bbt_emit))->clas->m_EmitterVector_ffffff((struct openb3d_openb3dcore_TParticleEmitter_obj*)bbt_emit,bbt_startx,bbt_starty,bbt_startz,bbt_endx,bbt_endy,bbt_endz);
	bbOnDebugLeaveScope();
	return 0;
}
BBINT openb3d_openb3dcore_EmitterRate(struct openb3d_openb3dcore_TParticleEmitter_obj* bbt_emit,BBFLOAT bbt_r){
	struct BBDebugScope_2 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"EmitterRate",
		{
			{
				BBDEBUGDECL_LOCAL,
				"emit",
				":TParticleEmitter",
				.var_address=&bbt_emit
			},
			{
				BBDEBUGDECL_LOCAL,
				"r",
				"f",
				.var_address=&bbt_r
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x4af243160143e7fa, 1060, 0};
	bbOnDebugEnterStm(&__stmt_0);
	((struct openb3d_openb3dcore_TParticleEmitter_obj*)bbNullObjectTest((BBObject*)bbt_emit))->clas->m_EmitterRate_f((struct openb3d_openb3dcore_TParticleEmitter_obj*)bbt_emit,bbt_r);
	bbOnDebugLeaveScope();
	return 0;
}
BBINT openb3d_openb3dcore_EmitterParticleLife(struct openb3d_openb3dcore_TParticleEmitter_obj* bbt_emit,BBINT bbt_startl,BBINT bbt_endl,BBINT bbt_randl){
	struct BBDebugScope_4 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"EmitterParticleLife",
		{
			{
				BBDEBUGDECL_LOCAL,
				"emit",
				":TParticleEmitter",
				.var_address=&bbt_emit
			},
			{
				BBDEBUGDECL_LOCAL,
				"startl",
				"i",
				.var_address=&bbt_startl
			},
			{
				BBDEBUGDECL_LOCAL,
				"endl",
				"i",
				.var_address=&bbt_endl
			},
			{
				BBDEBUGDECL_LOCAL,
				"randl",
				"i",
				.var_address=&bbt_randl
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x4af243160143e7fa, 1068, 0};
	bbOnDebugEnterStm(&__stmt_0);
	((struct openb3d_openb3dcore_TParticleEmitter_obj*)bbNullObjectTest((BBObject*)bbt_emit))->clas->m_EmitterParticleLife_iii((struct openb3d_openb3dcore_TParticleEmitter_obj*)bbt_emit,bbt_startl,bbt_endl,bbt_randl);
	bbOnDebugLeaveScope();
	return 0;
}
BBINT openb3d_openb3dcore_EmitterParticleFunction(struct openb3d_openb3dcore_TParticleEmitter_obj* bbt_emit,BBINT(* bbt_EmitterFunction)(BBBYTE*,BBINT)){
	struct BBDebugScope_2 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"EmitterParticleFunction",
		{
			{
				BBDEBUGDECL_LOCAL,
				"emit",
				":TParticleEmitter",
				.var_address=&bbt_emit
			},
			{
				BBDEBUGDECL_LOCAL,
				"EmitterFunction",
				"(*b,i)i",
				.var_address=&bbt_EmitterFunction
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x4af243160143e7fa, 1076, 0};
	bbOnDebugEnterStm(&__stmt_0);
	((struct openb3d_openb3dcore_TParticleEmitter_obj*)bbNullObjectTest((BBObject*)bbt_emit))->clas->m_EmitterParticleFunction_F_pbi_i_((struct openb3d_openb3dcore_TParticleEmitter_obj*)bbt_emit,bbt_EmitterFunction);
	bbOnDebugLeaveScope();
	return 0;
}
BBINT openb3d_openb3dcore_EmitterParticleSpeed(struct openb3d_openb3dcore_TParticleEmitter_obj* bbt_emit,BBFLOAT bbt_starts,BBFLOAT bbt_ends){
	struct BBDebugScope_3 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"EmitterParticleSpeed",
		{
			{
				BBDEBUGDECL_LOCAL,
				"emit",
				":TParticleEmitter",
				.var_address=&bbt_emit
			},
			{
				BBDEBUGDECL_LOCAL,
				"starts",
				"f",
				.var_address=&bbt_starts
			},
			{
				BBDEBUGDECL_LOCAL,
				"ends",
				"f",
				.var_address=&bbt_ends
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x4af243160143e7fa, 1084, 0};
	bbOnDebugEnterStm(&__stmt_0);
	((struct openb3d_openb3dcore_TParticleEmitter_obj*)bbNullObjectTest((BBObject*)bbt_emit))->clas->m_EmitterParticleSpeed_ff((struct openb3d_openb3dcore_TParticleEmitter_obj*)bbt_emit,bbt_starts,bbt_ends);
	bbOnDebugLeaveScope();
	return 0;
}
BBINT openb3d_openb3dcore_EmitterVariance(struct openb3d_openb3dcore_TParticleEmitter_obj* bbt_emit,BBFLOAT bbt_v){
	struct BBDebugScope_2 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"EmitterVariance",
		{
			{
				BBDEBUGDECL_LOCAL,
				"emit",
				":TParticleEmitter",
				.var_address=&bbt_emit
			},
			{
				BBDEBUGDECL_LOCAL,
				"v",
				"f",
				.var_address=&bbt_v
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x4af243160143e7fa, 1092, 0};
	bbOnDebugEnterStm(&__stmt_0);
	((struct openb3d_openb3dcore_TParticleEmitter_obj*)bbNullObjectTest((BBObject*)bbt_emit))->clas->m_EmitterVariance_f((struct openb3d_openb3dcore_TParticleEmitter_obj*)bbt_emit,bbt_v);
	bbOnDebugLeaveScope();
	return 0;
}
BBINT openb3d_openb3dcore_EmitterParticleAlpha(struct openb3d_openb3dcore_TParticleEmitter_obj* bbt_emit,BBFLOAT bbt_starta,BBFLOAT bbt_enda,BBFLOAT bbt_mida,BBINT bbt_midlife){
	struct BBDebugScope_5 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"EmitterParticleAlpha",
		{
			{
				BBDEBUGDECL_LOCAL,
				"emit",
				":TParticleEmitter",
				.var_address=&bbt_emit
			},
			{
				BBDEBUGDECL_LOCAL,
				"starta",
				"f",
				.var_address=&bbt_starta
			},
			{
				BBDEBUGDECL_LOCAL,
				"enda",
				"f",
				.var_address=&bbt_enda
			},
			{
				BBDEBUGDECL_LOCAL,
				"mida",
				"f",
				.var_address=&bbt_mida
			},
			{
				BBDEBUGDECL_LOCAL,
				"midlife",
				"i",
				.var_address=&bbt_midlife
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x4af243160143e7fa, 1099, 0};
	bbOnDebugEnterStm(&__stmt_0);
	((struct openb3d_openb3dcore_TParticleEmitter_obj*)bbNullObjectTest((BBObject*)bbt_emit))->clas->m_EmitterParticleAlpha_fffi((struct openb3d_openb3dcore_TParticleEmitter_obj*)bbt_emit,bbt_starta,bbt_enda,bbt_mida,bbt_midlife);
	bbOnDebugLeaveScope();
	return 0;
}
BBINT openb3d_openb3dcore_EmitterParticleScale(struct openb3d_openb3dcore_TParticleEmitter_obj* bbt_emit,BBFLOAT bbt_startx,BBFLOAT bbt_starty,BBFLOAT bbt_endx,BBFLOAT bbt_endy,BBFLOAT bbt_midsx,BBFLOAT bbt_midsy,BBINT bbt_midlife){
	struct BBDebugScope_8 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"EmitterParticleScale",
		{
			{
				BBDEBUGDECL_LOCAL,
				"emit",
				":TParticleEmitter",
				.var_address=&bbt_emit
			},
			{
				BBDEBUGDECL_LOCAL,
				"startx",
				"f",
				.var_address=&bbt_startx
			},
			{
				BBDEBUGDECL_LOCAL,
				"starty",
				"f",
				.var_address=&bbt_starty
			},
			{
				BBDEBUGDECL_LOCAL,
				"endx",
				"f",
				.var_address=&bbt_endx
			},
			{
				BBDEBUGDECL_LOCAL,
				"endy",
				"f",
				.var_address=&bbt_endy
			},
			{
				BBDEBUGDECL_LOCAL,
				"midsx",
				"f",
				.var_address=&bbt_midsx
			},
			{
				BBDEBUGDECL_LOCAL,
				"midsy",
				"f",
				.var_address=&bbt_midsy
			},
			{
				BBDEBUGDECL_LOCAL,
				"midlife",
				"i",
				.var_address=&bbt_midlife
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x4af243160143e7fa, 1106, 0};
	bbOnDebugEnterStm(&__stmt_0);
	((struct openb3d_openb3dcore_TParticleEmitter_obj*)bbNullObjectTest((BBObject*)bbt_emit))->clas->m_EmitterParticleScale_ffffffi((struct openb3d_openb3dcore_TParticleEmitter_obj*)bbt_emit,bbt_startx,bbt_starty,bbt_endx,bbt_endy,bbt_midsx,bbt_midsy,bbt_midlife);
	bbOnDebugLeaveScope();
	return 0;
}
BBINT openb3d_openb3dcore_EmitterParticleColor(struct openb3d_openb3dcore_TParticleEmitter_obj* bbt_emit,BBFLOAT bbt_startr,BBFLOAT bbt_startg,BBFLOAT bbt_startb,BBFLOAT bbt_endr,BBFLOAT bbt_endg,BBFLOAT bbt_endb,BBFLOAT bbt_midr,BBFLOAT bbt_midg,BBFLOAT bbt_midb,BBINT bbt_midlife){
	struct BBDebugScope_11 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"EmitterParticleColor",
		{
			{
				BBDEBUGDECL_LOCAL,
				"emit",
				":TParticleEmitter",
				.var_address=&bbt_emit
			},
			{
				BBDEBUGDECL_LOCAL,
				"startr",
				"f",
				.var_address=&bbt_startr
			},
			{
				BBDEBUGDECL_LOCAL,
				"startg",
				"f",
				.var_address=&bbt_startg
			},
			{
				BBDEBUGDECL_LOCAL,
				"startb",
				"f",
				.var_address=&bbt_startb
			},
			{
				BBDEBUGDECL_LOCAL,
				"endr",
				"f",
				.var_address=&bbt_endr
			},
			{
				BBDEBUGDECL_LOCAL,
				"endg",
				"f",
				.var_address=&bbt_endg
			},
			{
				BBDEBUGDECL_LOCAL,
				"endb",
				"f",
				.var_address=&bbt_endb
			},
			{
				BBDEBUGDECL_LOCAL,
				"midr",
				"f",
				.var_address=&bbt_midr
			},
			{
				BBDEBUGDECL_LOCAL,
				"midg",
				"f",
				.var_address=&bbt_midg
			},
			{
				BBDEBUGDECL_LOCAL,
				"midb",
				"f",
				.var_address=&bbt_midb
			},
			{
				BBDEBUGDECL_LOCAL,
				"midlife",
				"i",
				.var_address=&bbt_midlife
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x4af243160143e7fa, 1113, 0};
	bbOnDebugEnterStm(&__stmt_0);
	((struct openb3d_openb3dcore_TParticleEmitter_obj*)bbNullObjectTest((BBObject*)bbt_emit))->clas->m_EmitterParticleColor_fffffffffi((struct openb3d_openb3dcore_TParticleEmitter_obj*)bbt_emit,bbt_startr,bbt_startg,bbt_startb,bbt_endr,bbt_endg,bbt_endb,bbt_midr,bbt_midg,bbt_midb,bbt_midlife);
	bbOnDebugLeaveScope();
	return 0;
}
BBINT openb3d_openb3dcore_EmitterParticleRotate(struct openb3d_openb3dcore_TParticleEmitter_obj* bbt_emit,BBFLOAT bbt_startr,BBFLOAT bbt_endr,BBFLOAT bbt_midr,BBINT bbt_midlife){
	struct BBDebugScope_5 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"EmitterParticleRotate",
		{
			{
				BBDEBUGDECL_LOCAL,
				"emit",
				":TParticleEmitter",
				.var_address=&bbt_emit
			},
			{
				BBDEBUGDECL_LOCAL,
				"startr",
				"f",
				.var_address=&bbt_startr
			},
			{
				BBDEBUGDECL_LOCAL,
				"endr",
				"f",
				.var_address=&bbt_endr
			},
			{
				BBDEBUGDECL_LOCAL,
				"midr",
				"f",
				.var_address=&bbt_midr
			},
			{
				BBDEBUGDECL_LOCAL,
				"midlife",
				"i",
				.var_address=&bbt_midlife
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x4af243160143e7fa, 1121, 0};
	bbOnDebugEnterStm(&__stmt_0);
	((struct openb3d_openb3dcore_TParticleEmitter_obj*)bbNullObjectTest((BBObject*)bbt_emit))->clas->m_EmitterParticleRotate_fffi((struct openb3d_openb3dcore_TParticleEmitter_obj*)bbt_emit,bbt_startr,bbt_endr,bbt_midr,bbt_midlife);
	bbOnDebugLeaveScope();
	return 0;
}
BBINT openb3d_openb3dcore_ParticleColor(struct openb3d_openb3dcore_TSprite_obj* bbt_sprite,BBFLOAT bbt_r,BBFLOAT bbt_g,BBFLOAT bbt_b,BBFLOAT bbt_a){
	struct BBDebugScope_5 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"ParticleColor",
		{
			{
				BBDEBUGDECL_LOCAL,
				"sprite",
				":TSprite",
				.var_address=&bbt_sprite
			},
			{
				BBDEBUGDECL_LOCAL,
				"r",
				"f",
				.var_address=&bbt_r
			},
			{
				BBDEBUGDECL_LOCAL,
				"g",
				"f",
				.var_address=&bbt_g
			},
			{
				BBDEBUGDECL_LOCAL,
				"b",
				"f",
				.var_address=&bbt_b
			},
			{
				BBDEBUGDECL_LOCAL,
				"a",
				"f",
				.var_address=&bbt_a
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x4af243160143e7fa, 1129, 0};
	bbOnDebugEnterStm(&__stmt_0);
	ParticleColor_(openb3d_openb3dcore_TEntity_GetInstance_pb_TTEntity((struct openb3d_openb3dcore_TEntity_obj*)((struct openb3d_openb3dcore_TEntity_obj*)bbObjectDowncast((BBOBJECT)bbt_sprite,(BBClass*)&openb3d_openb3dcore_TEntity))),bbt_r,bbt_g,bbt_b,bbt_a);
	bbOnDebugLeaveScope();
	return 0;
}
BBINT openb3d_openb3dcore_ParticleVector(struct openb3d_openb3dcore_TSprite_obj* bbt_sprite,BBFLOAT bbt_x,BBFLOAT bbt_y,BBFLOAT bbt_z){
	struct BBDebugScope_4 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"ParticleVector",
		{
			{
				BBDEBUGDECL_LOCAL,
				"sprite",
				":TSprite",
				.var_address=&bbt_sprite
			},
			{
				BBDEBUGDECL_LOCAL,
				"x",
				"f",
				.var_address=&bbt_x
			},
			{
				BBDEBUGDECL_LOCAL,
				"y",
				"f",
				.var_address=&bbt_y
			},
			{
				BBDEBUGDECL_LOCAL,
				"z",
				"f",
				.var_address=&bbt_z
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x4af243160143e7fa, 1137, 0};
	bbOnDebugEnterStm(&__stmt_0);
	ParticleVector_(openb3d_openb3dcore_TEntity_GetInstance_pb_TTEntity((struct openb3d_openb3dcore_TEntity_obj*)((struct openb3d_openb3dcore_TEntity_obj*)bbObjectDowncast((BBOBJECT)bbt_sprite,(BBClass*)&openb3d_openb3dcore_TEntity))),bbt_x,bbt_y,bbt_z);
	bbOnDebugLeaveScope();
	return 0;
}
BBINT openb3d_openb3dcore_ParticleTrail(struct openb3d_openb3dcore_TSprite_obj* bbt_sprite,BBINT bbt_length){
	struct BBDebugScope_2 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"ParticleTrail",
		{
			{
				BBDEBUGDECL_LOCAL,
				"sprite",
				":TSprite",
				.var_address=&bbt_sprite
			},
			{
				BBDEBUGDECL_LOCAL,
				"length",
				"i",
				.var_address=&bbt_length
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x4af243160143e7fa, 1145, 0};
	bbOnDebugEnterStm(&__stmt_0);
	ParticleTrail_(openb3d_openb3dcore_TEntity_GetInstance_pb_TTEntity((struct openb3d_openb3dcore_TEntity_obj*)((struct openb3d_openb3dcore_TEntity_obj*)bbObjectDowncast((BBOBJECT)bbt_sprite,(BBClass*)&openb3d_openb3dcore_TEntity))),bbt_length);
	bbOnDebugLeaveScope();
	return 0;
}
struct openb3d_openb3dcore_TPostFX_obj* openb3d_openb3dcore_CreatePostFX(struct openb3d_openb3dcore_TCamera_obj* bbt_cam,BBINT bbt_passes){
	struct BBDebugScope_2 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"CreatePostFX",
		{
			{
				BBDEBUGDECL_LOCAL,
				"cam",
				":TCamera",
				.var_address=&bbt_cam
			},
			{
				BBDEBUGDECL_LOCAL,
				"passes",
				"i",
				.var_address=&bbt_passes
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x4af243160143e7fa, 1154, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbOnDebugLeaveScope();
	return (struct openb3d_openb3dcore_TPostFX_obj*)openb3d_openb3dcore_TPostFX_CreatePostFX_TTPostFX_TTCamerai((struct openb3d_openb3dcore_TCamera_obj*)bbt_cam,bbt_passes);
}
BBINT openb3d_openb3dcore_AddRenderTarget(struct openb3d_openb3dcore_TPostFX_obj* bbt_fx,BBINT bbt_pass_no,BBINT bbt_numColBufs,BBINT bbt_depth,BBINT bbt_format,BBFLOAT bbt_scale){
	struct BBDebugScope_6 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"AddRenderTarget",
		{
			{
				BBDEBUGDECL_LOCAL,
				"fx",
				":TPostFX",
				.var_address=&bbt_fx
			},
			{
				BBDEBUGDECL_LOCAL,
				"pass_no",
				"i",
				.var_address=&bbt_pass_no
			},
			{
				BBDEBUGDECL_LOCAL,
				"numColBufs",
				"i",
				.var_address=&bbt_numColBufs
			},
			{
				BBDEBUGDECL_LOCAL,
				"depth",
				"i",
				.var_address=&bbt_depth
			},
			{
				BBDEBUGDECL_LOCAL,
				"format",
				"i",
				.var_address=&bbt_format
			},
			{
				BBDEBUGDECL_LOCAL,
				"scale",
				"f",
				.var_address=&bbt_scale
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x4af243160143e7fa, 1161, 0};
	bbOnDebugEnterStm(&__stmt_0);
	((struct openb3d_openb3dcore_TPostFX_obj*)bbNullObjectTest((BBObject*)bbt_fx))->clas->m_AddRenderTarget_iiiif((struct openb3d_openb3dcore_TPostFX_obj*)bbt_fx,bbt_pass_no,bbt_numColBufs,bbt_depth,bbt_format,bbt_scale);
	bbOnDebugLeaveScope();
	return 0;
}
BBINT openb3d_openb3dcore_PostFXShader(struct openb3d_openb3dcore_TPostFX_obj* bbt_fx,BBINT bbt_pass_no,struct openb3d_openb3dcore_TShader_obj* bbt_shader){
	struct BBDebugScope_3 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"PostFXShader",
		{
			{
				BBDEBUGDECL_LOCAL,
				"fx",
				":TPostFX",
				.var_address=&bbt_fx
			},
			{
				BBDEBUGDECL_LOCAL,
				"pass_no",
				"i",
				.var_address=&bbt_pass_no
			},
			{
				BBDEBUGDECL_LOCAL,
				"shader",
				":TShader",
				.var_address=&bbt_shader
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x4af243160143e7fa, 1168, 0};
	bbOnDebugEnterStm(&__stmt_0);
	((struct openb3d_openb3dcore_TPostFX_obj*)bbNullObjectTest((BBObject*)bbt_fx))->clas->m_PostFXShader_iTTShader((struct openb3d_openb3dcore_TPostFX_obj*)bbt_fx,bbt_pass_no,(struct openb3d_openb3dcore_TShader_obj*)bbt_shader);
	bbOnDebugLeaveScope();
	return 0;
}
BBINT openb3d_openb3dcore_PostFXShaderPass(struct openb3d_openb3dcore_TPostFX_obj* bbt_fx,BBINT bbt_pass_no,BBSTRING bbt_name,BBINT bbt_v){
	struct BBDebugScope_4 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"PostFXShaderPass",
		{
			{
				BBDEBUGDECL_LOCAL,
				"fx",
				":TPostFX",
				.var_address=&bbt_fx
			},
			{
				BBDEBUGDECL_LOCAL,
				"pass_no",
				"i",
				.var_address=&bbt_pass_no
			},
			{
				BBDEBUGDECL_LOCAL,
				"name",
				"$",
				.var_address=&bbt_name
			},
			{
				BBDEBUGDECL_LOCAL,
				"v",
				"i",
				.var_address=&bbt_v
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x4af243160143e7fa, 1175, 0};
	bbOnDebugEnterStm(&__stmt_0);
	((struct openb3d_openb3dcore_TPostFX_obj*)bbNullObjectTest((BBObject*)bbt_fx))->clas->m_PostFXShaderPass_iSi((struct openb3d_openb3dcore_TPostFX_obj*)bbt_fx,bbt_pass_no,bbt_name,bbt_v);
	bbOnDebugLeaveScope();
	return 0;
}
BBINT openb3d_openb3dcore_PostFXBuffer(struct openb3d_openb3dcore_TPostFX_obj* bbt_fx,BBINT bbt_pass_no,BBINT bbt_source_pass,BBINT bbt_index,BBINT bbt_slot){
	struct BBDebugScope_5 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"PostFXBuffer",
		{
			{
				BBDEBUGDECL_LOCAL,
				"fx",
				":TPostFX",
				.var_address=&bbt_fx
			},
			{
				BBDEBUGDECL_LOCAL,
				"pass_no",
				"i",
				.var_address=&bbt_pass_no
			},
			{
				BBDEBUGDECL_LOCAL,
				"source_pass",
				"i",
				.var_address=&bbt_source_pass
			},
			{
				BBDEBUGDECL_LOCAL,
				"index",
				"i",
				.var_address=&bbt_index
			},
			{
				BBDEBUGDECL_LOCAL,
				"slot",
				"i",
				.var_address=&bbt_slot
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x4af243160143e7fa, 1182, 0};
	bbOnDebugEnterStm(&__stmt_0);
	((struct openb3d_openb3dcore_TPostFX_obj*)bbNullObjectTest((BBObject*)bbt_fx))->clas->m_PostFXBuffer_iiii((struct openb3d_openb3dcore_TPostFX_obj*)bbt_fx,bbt_pass_no,bbt_source_pass,bbt_index,bbt_slot);
	bbOnDebugLeaveScope();
	return 0;
}
BBINT openb3d_openb3dcore_PostFXTexture(struct openb3d_openb3dcore_TPostFX_obj* bbt_fx,BBINT bbt_pass_no,struct openb3d_openb3dcore_TTexture_obj* bbt_tex,BBINT bbt_slot,BBINT bbt_frame){
	struct BBDebugScope_5 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"PostFXTexture",
		{
			{
				BBDEBUGDECL_LOCAL,
				"fx",
				":TPostFX",
				.var_address=&bbt_fx
			},
			{
				BBDEBUGDECL_LOCAL,
				"pass_no",
				"i",
				.var_address=&bbt_pass_no
			},
			{
				BBDEBUGDECL_LOCAL,
				"tex",
				":TTexture",
				.var_address=&bbt_tex
			},
			{
				BBDEBUGDECL_LOCAL,
				"slot",
				"i",
				.var_address=&bbt_slot
			},
			{
				BBDEBUGDECL_LOCAL,
				"frame",
				"i",
				.var_address=&bbt_frame
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x4af243160143e7fa, 1189, 0};
	bbOnDebugEnterStm(&__stmt_0);
	((struct openb3d_openb3dcore_TPostFX_obj*)bbNullObjectTest((BBObject*)bbt_fx))->clas->m_PostFXTexture_iTTTextureii((struct openb3d_openb3dcore_TPostFX_obj*)bbt_fx,bbt_pass_no,(struct openb3d_openb3dcore_TTexture_obj*)bbt_tex,bbt_slot,bbt_frame);
	bbOnDebugLeaveScope();
	return 0;
}
BBINT openb3d_openb3dcore_PostFXFunction(struct openb3d_openb3dcore_TPostFX_obj* bbt_fx,BBINT bbt_pass_no,BBINT(* bbt_PassFunction)()){
	struct BBDebugScope_3 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"PostFXFunction",
		{
			{
				BBDEBUGDECL_LOCAL,
				"fx",
				":TPostFX",
				.var_address=&bbt_fx
			},
			{
				BBDEBUGDECL_LOCAL,
				"pass_no",
				"i",
				.var_address=&bbt_pass_no
			},
			{
				BBDEBUGDECL_LOCAL,
				"PassFunction",
				"()i",
				.var_address=&bbt_PassFunction
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x4af243160143e7fa, 1196, 0};
	bbOnDebugEnterStm(&__stmt_0);
	((struct openb3d_openb3dcore_TPostFX_obj*)bbNullObjectTest((BBObject*)bbt_fx))->clas->m_PostFXFunction_iF_i_((struct openb3d_openb3dcore_TPostFX_obj*)bbt_fx,bbt_pass_no,bbt_PassFunction);
	bbOnDebugLeaveScope();
	return 0;
}
struct openb3d_openb3dcore_TShader_obj* openb3d_openb3dcore_LoadShader(BBSTRING bbt_ShaderName,BBSTRING bbt_VshaderFileName,BBSTRING bbt_FshaderFileName){
	struct BBDebugScope_3 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"LoadShader",
		{
			{
				BBDEBUGDECL_LOCAL,
				"ShaderName",
				"$",
				.var_address=&bbt_ShaderName
			},
			{
				BBDEBUGDECL_LOCAL,
				"VshaderFileName",
				"$",
				.var_address=&bbt_VshaderFileName
			},
			{
				BBDEBUGDECL_LOCAL,
				"FshaderFileName",
				"$",
				.var_address=&bbt_FshaderFileName
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x4af243160143e7fa, 1205, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbOnDebugLeaveScope();
	return (struct openb3d_openb3dcore_TShader_obj*)openb3d_openb3dcore_TShader_LoadShader_TTShader_SSS(bbt_ShaderName,bbt_VshaderFileName,bbt_FshaderFileName);
}
struct openb3d_openb3dcore_TShader_obj* openb3d_openb3dcore_CreateShader(BBSTRING bbt_ShaderName,BBSTRING bbt_VshaderString,BBSTRING bbt_FshaderString){
	struct BBDebugScope_3 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"CreateShader",
		{
			{
				BBDEBUGDECL_LOCAL,
				"ShaderName",
				"$",
				.var_address=&bbt_ShaderName
			},
			{
				BBDEBUGDECL_LOCAL,
				"VshaderString",
				"$",
				.var_address=&bbt_VshaderString
			},
			{
				BBDEBUGDECL_LOCAL,
				"FshaderString",
				"$",
				.var_address=&bbt_FshaderString
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x4af243160143e7fa, 1212, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbOnDebugLeaveScope();
	return (struct openb3d_openb3dcore_TShader_obj*)openb3d_openb3dcore_TShader_CreateShader_TTShader_SSS(bbt_ShaderName,bbt_VshaderString,bbt_FshaderString);
}
struct openb3d_openb3dcore_TShader_obj* openb3d_openb3dcore_LoadShaderVGF(BBSTRING bbt_ShaderName,BBSTRING bbt_VshaderFileName,BBSTRING bbt_GshaderFileName,BBSTRING bbt_FshaderFileName){
	struct BBDebugScope_4 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"LoadShaderVGF",
		{
			{
				BBDEBUGDECL_LOCAL,
				"ShaderName",
				"$",
				.var_address=&bbt_ShaderName
			},
			{
				BBDEBUGDECL_LOCAL,
				"VshaderFileName",
				"$",
				.var_address=&bbt_VshaderFileName
			},
			{
				BBDEBUGDECL_LOCAL,
				"GshaderFileName",
				"$",
				.var_address=&bbt_GshaderFileName
			},
			{
				BBDEBUGDECL_LOCAL,
				"FshaderFileName",
				"$",
				.var_address=&bbt_FshaderFileName
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x4af243160143e7fa, 1219, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbOnDebugLeaveScope();
	return (struct openb3d_openb3dcore_TShader_obj*)openb3d_openb3dcore_TShader_LoadShaderVGF_TTShader_SSSS(bbt_ShaderName,bbt_VshaderFileName,bbt_GshaderFileName,bbt_FshaderFileName);
}
struct openb3d_openb3dcore_TShader_obj* openb3d_openb3dcore_CreateShaderVGF(BBSTRING bbt_ShaderName,BBSTRING bbt_VshaderString,BBSTRING bbt_GshaderString,BBSTRING bbt_FshaderString){
	struct BBDebugScope_4 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"CreateShaderVGF",
		{
			{
				BBDEBUGDECL_LOCAL,
				"ShaderName",
				"$",
				.var_address=&bbt_ShaderName
			},
			{
				BBDEBUGDECL_LOCAL,
				"VshaderString",
				"$",
				.var_address=&bbt_VshaderString
			},
			{
				BBDEBUGDECL_LOCAL,
				"GshaderString",
				"$",
				.var_address=&bbt_GshaderString
			},
			{
				BBDEBUGDECL_LOCAL,
				"FshaderString",
				"$",
				.var_address=&bbt_FshaderString
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x4af243160143e7fa, 1226, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbOnDebugLeaveScope();
	return (struct openb3d_openb3dcore_TShader_obj*)openb3d_openb3dcore_TShader_CreateShaderVGF_TTShader_SSSS(bbt_ShaderName,bbt_VshaderString,bbt_GshaderString,bbt_FshaderString);
}
BBINT openb3d_openb3dcore_ShadeSurface(struct openb3d_openb3dcore_TSurface_obj* bbt_surf,struct openb3d_openb3dcore_TShader_obj* bbt_material){
	struct BBDebugScope_2 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"ShadeSurface",
		{
			{
				BBDEBUGDECL_LOCAL,
				"surf",
				":TSurface",
				.var_address=&bbt_surf
			},
			{
				BBDEBUGDECL_LOCAL,
				"material",
				":TShader",
				.var_address=&bbt_material
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x4af243160143e7fa, 1233, 0};
	bbOnDebugEnterStm(&__stmt_0);
	ShadeSurface_(openb3d_openb3dcore_TSurface_GetInstance_pb_TTSurface((struct openb3d_openb3dcore_TSurface_obj*)bbt_surf),openb3d_openb3dcore_TShader_GetInstance_pb_TTShader((struct openb3d_openb3dcore_TShader_obj*)bbt_material));
	bbOnDebugLeaveScope();
	return 0;
}
BBINT openb3d_openb3dcore_ShadeMesh(struct openb3d_openb3dcore_TMesh_obj* bbt_mesh,struct openb3d_openb3dcore_TShader_obj* bbt_material){
	struct BBDebugScope_2 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"ShadeMesh",
		{
			{
				BBDEBUGDECL_LOCAL,
				"mesh",
				":TMesh",
				.var_address=&bbt_mesh
			},
			{
				BBDEBUGDECL_LOCAL,
				"material",
				":TShader",
				.var_address=&bbt_material
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x4af243160143e7fa, 1240, 0};
	bbOnDebugEnterStm(&__stmt_0);
	ShadeMesh_(openb3d_openb3dcore_TEntity_GetInstance_pb_TTEntity((struct openb3d_openb3dcore_TEntity_obj*)((struct openb3d_openb3dcore_TEntity_obj*)bbObjectDowncast((BBOBJECT)bbt_mesh,(BBClass*)&openb3d_openb3dcore_TEntity))),openb3d_openb3dcore_TShader_GetInstance_pb_TTShader((struct openb3d_openb3dcore_TShader_obj*)bbt_material));
	bbOnDebugLeaveScope();
	return 0;
}
BBINT openb3d_openb3dcore_ShadeEntity(struct openb3d_openb3dcore_TEntity_obj* bbt_ent,struct openb3d_openb3dcore_TShader_obj* bbt_material){
	struct BBDebugScope_2 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"ShadeEntity",
		{
			{
				BBDEBUGDECL_LOCAL,
				"ent",
				":TEntity",
				.var_address=&bbt_ent
			},
			{
				BBDEBUGDECL_LOCAL,
				"material",
				":TShader",
				.var_address=&bbt_material
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x4af243160143e7fa, 1247, 0};
	bbOnDebugEnterStm(&__stmt_0);
	ShadeEntity_(openb3d_openb3dcore_TEntity_GetInstance_pb_TTEntity((struct openb3d_openb3dcore_TEntity_obj*)bbt_ent),openb3d_openb3dcore_TShader_GetInstance_pb_TTShader((struct openb3d_openb3dcore_TShader_obj*)bbt_material));
	bbOnDebugLeaveScope();
	return 0;
}
struct openb3d_openb3dcore_TTexture_obj* openb3d_openb3dcore_ShaderTexture(struct openb3d_openb3dcore_TShader_obj* bbt_material,struct openb3d_openb3dcore_TTexture_obj* bbt_tex,BBSTRING bbt_name,BBINT bbt_index){
	struct BBDebugScope_4 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"ShaderTexture",
		{
			{
				BBDEBUGDECL_LOCAL,
				"material",
				":TShader",
				.var_address=&bbt_material
			},
			{
				BBDEBUGDECL_LOCAL,
				"tex",
				":TTexture",
				.var_address=&bbt_tex
			},
			{
				BBDEBUGDECL_LOCAL,
				"name",
				"$",
				.var_address=&bbt_name
			},
			{
				BBDEBUGDECL_LOCAL,
				"index",
				"i",
				.var_address=&bbt_index
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x4af243160143e7fa, 1254, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbOnDebugLeaveScope();
	return (struct openb3d_openb3dcore_TTexture_obj*)((struct openb3d_openb3dcore_TShader_obj*)bbNullObjectTest((BBObject*)bbt_material))->clas->m_ShaderTexture_TTTextureSi((struct openb3d_openb3dcore_TShader_obj*)bbt_material,(struct openb3d_openb3dcore_TTexture_obj*)bbt_tex,bbt_name,bbt_index);
}
BBINT openb3d_openb3dcore_SetFloat(struct openb3d_openb3dcore_TShader_obj* bbt_material,BBSTRING bbt_name,BBFLOAT bbt_v1){
	struct BBDebugScope_3 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"SetFloat",
		{
			{
				BBDEBUGDECL_LOCAL,
				"material",
				":TShader",
				.var_address=&bbt_material
			},
			{
				BBDEBUGDECL_LOCAL,
				"name",
				"$",
				.var_address=&bbt_name
			},
			{
				BBDEBUGDECL_LOCAL,
				"v1",
				"f",
				.var_address=&bbt_v1
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x4af243160143e7fa, 1261, 0};
	bbOnDebugEnterStm(&__stmt_0);
	((struct openb3d_openb3dcore_TShader_obj*)bbNullObjectTest((BBObject*)bbt_material))->clas->m_SetFloat_Sf((struct openb3d_openb3dcore_TShader_obj*)bbt_material,bbt_name,bbt_v1);
	bbOnDebugLeaveScope();
	return 0;
}
BBINT openb3d_openb3dcore_SetFloat2(struct openb3d_openb3dcore_TShader_obj* bbt_material,BBSTRING bbt_name,BBFLOAT bbt_v1,BBFLOAT bbt_v2){
	struct BBDebugScope_4 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"SetFloat2",
		{
			{
				BBDEBUGDECL_LOCAL,
				"material",
				":TShader",
				.var_address=&bbt_material
			},
			{
				BBDEBUGDECL_LOCAL,
				"name",
				"$",
				.var_address=&bbt_name
			},
			{
				BBDEBUGDECL_LOCAL,
				"v1",
				"f",
				.var_address=&bbt_v1
			},
			{
				BBDEBUGDECL_LOCAL,
				"v2",
				"f",
				.var_address=&bbt_v2
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x4af243160143e7fa, 1268, 0};
	bbOnDebugEnterStm(&__stmt_0);
	((struct openb3d_openb3dcore_TShader_obj*)bbNullObjectTest((BBObject*)bbt_material))->clas->m_SetFloat2_Sff((struct openb3d_openb3dcore_TShader_obj*)bbt_material,bbt_name,bbt_v1,bbt_v2);
	bbOnDebugLeaveScope();
	return 0;
}
BBINT openb3d_openb3dcore_SetFloat3(struct openb3d_openb3dcore_TShader_obj* bbt_material,BBSTRING bbt_name,BBFLOAT bbt_v1,BBFLOAT bbt_v2,BBFLOAT bbt_v3){
	struct BBDebugScope_5 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"SetFloat3",
		{
			{
				BBDEBUGDECL_LOCAL,
				"material",
				":TShader",
				.var_address=&bbt_material
			},
			{
				BBDEBUGDECL_LOCAL,
				"name",
				"$",
				.var_address=&bbt_name
			},
			{
				BBDEBUGDECL_LOCAL,
				"v1",
				"f",
				.var_address=&bbt_v1
			},
			{
				BBDEBUGDECL_LOCAL,
				"v2",
				"f",
				.var_address=&bbt_v2
			},
			{
				BBDEBUGDECL_LOCAL,
				"v3",
				"f",
				.var_address=&bbt_v3
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x4af243160143e7fa, 1275, 0};
	bbOnDebugEnterStm(&__stmt_0);
	((struct openb3d_openb3dcore_TShader_obj*)bbNullObjectTest((BBObject*)bbt_material))->clas->m_SetFloat3_Sfff((struct openb3d_openb3dcore_TShader_obj*)bbt_material,bbt_name,bbt_v1,bbt_v2,bbt_v3);
	bbOnDebugLeaveScope();
	return 0;
}
BBINT openb3d_openb3dcore_SetFloat4(struct openb3d_openb3dcore_TShader_obj* bbt_material,BBSTRING bbt_name,BBFLOAT bbt_v1,BBFLOAT bbt_v2,BBFLOAT bbt_v3,BBFLOAT bbt_v4){
	struct BBDebugScope_6 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"SetFloat4",
		{
			{
				BBDEBUGDECL_LOCAL,
				"material",
				":TShader",
				.var_address=&bbt_material
			},
			{
				BBDEBUGDECL_LOCAL,
				"name",
				"$",
				.var_address=&bbt_name
			},
			{
				BBDEBUGDECL_LOCAL,
				"v1",
				"f",
				.var_address=&bbt_v1
			},
			{
				BBDEBUGDECL_LOCAL,
				"v2",
				"f",
				.var_address=&bbt_v2
			},
			{
				BBDEBUGDECL_LOCAL,
				"v3",
				"f",
				.var_address=&bbt_v3
			},
			{
				BBDEBUGDECL_LOCAL,
				"v4",
				"f",
				.var_address=&bbt_v4
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x4af243160143e7fa, 1282, 0};
	bbOnDebugEnterStm(&__stmt_0);
	((struct openb3d_openb3dcore_TShader_obj*)bbNullObjectTest((BBObject*)bbt_material))->clas->m_SetFloat4_Sffff((struct openb3d_openb3dcore_TShader_obj*)bbt_material,bbt_name,bbt_v1,bbt_v2,bbt_v3,bbt_v4);
	bbOnDebugLeaveScope();
	return 0;
}
BBINT openb3d_openb3dcore_UseFloat(struct openb3d_openb3dcore_TShader_obj* bbt_material,BBSTRING bbt_name,BBFLOAT* bbt_v1){
	struct BBDebugScope_3 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"UseFloat",
		{
			{
				BBDEBUGDECL_LOCAL,
				"material",
				":TShader",
				.var_address=&bbt_material
			},
			{
				BBDEBUGDECL_LOCAL,
				"name",
				"$",
				.var_address=&bbt_name
			},
			{
				BBDEBUGDECL_VARPARAM,
				"v1",
				"f",
				.var_address=&bbt_v1
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x4af243160143e7fa, 1289, 0};
	bbOnDebugEnterStm(&__stmt_0);
	((struct openb3d_openb3dcore_TShader_obj*)bbNullObjectTest((BBObject*)bbt_material))->clas->m_UseFloat_Svf((struct openb3d_openb3dcore_TShader_obj*)bbt_material,bbt_name,bbt_v1);
	bbOnDebugLeaveScope();
	return 0;
}
BBINT openb3d_openb3dcore_UseFloat2(struct openb3d_openb3dcore_TShader_obj* bbt_material,BBSTRING bbt_name,BBFLOAT* bbt_v1,BBFLOAT* bbt_v2){
	struct BBDebugScope_4 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"UseFloat2",
		{
			{
				BBDEBUGDECL_LOCAL,
				"material",
				":TShader",
				.var_address=&bbt_material
			},
			{
				BBDEBUGDECL_LOCAL,
				"name",
				"$",
				.var_address=&bbt_name
			},
			{
				BBDEBUGDECL_VARPARAM,
				"v1",
				"f",
				.var_address=&bbt_v1
			},
			{
				BBDEBUGDECL_VARPARAM,
				"v2",
				"f",
				.var_address=&bbt_v2
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x4af243160143e7fa, 1296, 0};
	bbOnDebugEnterStm(&__stmt_0);
	((struct openb3d_openb3dcore_TShader_obj*)bbNullObjectTest((BBObject*)bbt_material))->clas->m_UseFloat2_Svfvf((struct openb3d_openb3dcore_TShader_obj*)bbt_material,bbt_name,bbt_v1,bbt_v2);
	bbOnDebugLeaveScope();
	return 0;
}
BBINT openb3d_openb3dcore_UseFloat3(struct openb3d_openb3dcore_TShader_obj* bbt_material,BBSTRING bbt_name,BBFLOAT* bbt_v1,BBFLOAT* bbt_v2,BBFLOAT* bbt_v3){
	struct BBDebugScope_5 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"UseFloat3",
		{
			{
				BBDEBUGDECL_LOCAL,
				"material",
				":TShader",
				.var_address=&bbt_material
			},
			{
				BBDEBUGDECL_LOCAL,
				"name",
				"$",
				.var_address=&bbt_name
			},
			{
				BBDEBUGDECL_VARPARAM,
				"v1",
				"f",
				.var_address=&bbt_v1
			},
			{
				BBDEBUGDECL_VARPARAM,
				"v2",
				"f",
				.var_address=&bbt_v2
			},
			{
				BBDEBUGDECL_VARPARAM,
				"v3",
				"f",
				.var_address=&bbt_v3
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x4af243160143e7fa, 1303, 0};
	bbOnDebugEnterStm(&__stmt_0);
	((struct openb3d_openb3dcore_TShader_obj*)bbNullObjectTest((BBObject*)bbt_material))->clas->m_UseFloat3_Svfvfvf((struct openb3d_openb3dcore_TShader_obj*)bbt_material,bbt_name,bbt_v1,bbt_v2,bbt_v3);
	bbOnDebugLeaveScope();
	return 0;
}
BBINT openb3d_openb3dcore_UseFloat4(struct openb3d_openb3dcore_TShader_obj* bbt_material,BBSTRING bbt_name,BBFLOAT* bbt_v1,BBFLOAT* bbt_v2,BBFLOAT* bbt_v3,BBFLOAT* bbt_v4){
	struct BBDebugScope_6 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"UseFloat4",
		{
			{
				BBDEBUGDECL_LOCAL,
				"material",
				":TShader",
				.var_address=&bbt_material
			},
			{
				BBDEBUGDECL_LOCAL,
				"name",
				"$",
				.var_address=&bbt_name
			},
			{
				BBDEBUGDECL_VARPARAM,
				"v1",
				"f",
				.var_address=&bbt_v1
			},
			{
				BBDEBUGDECL_VARPARAM,
				"v2",
				"f",
				.var_address=&bbt_v2
			},
			{
				BBDEBUGDECL_VARPARAM,
				"v3",
				"f",
				.var_address=&bbt_v3
			},
			{
				BBDEBUGDECL_VARPARAM,
				"v4",
				"f",
				.var_address=&bbt_v4
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x4af243160143e7fa, 1310, 0};
	bbOnDebugEnterStm(&__stmt_0);
	((struct openb3d_openb3dcore_TShader_obj*)bbNullObjectTest((BBObject*)bbt_material))->clas->m_UseFloat4_Svfvfvfvf((struct openb3d_openb3dcore_TShader_obj*)bbt_material,bbt_name,bbt_v1,bbt_v2,bbt_v3,bbt_v4);
	bbOnDebugLeaveScope();
	return 0;
}
BBINT openb3d_openb3dcore_SetInteger(struct openb3d_openb3dcore_TShader_obj* bbt_material,BBSTRING bbt_name,BBINT bbt_v1){
	struct BBDebugScope_3 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"SetInteger",
		{
			{
				BBDEBUGDECL_LOCAL,
				"material",
				":TShader",
				.var_address=&bbt_material
			},
			{
				BBDEBUGDECL_LOCAL,
				"name",
				"$",
				.var_address=&bbt_name
			},
			{
				BBDEBUGDECL_LOCAL,
				"v1",
				"i",
				.var_address=&bbt_v1
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x4af243160143e7fa, 1317, 0};
	bbOnDebugEnterStm(&__stmt_0);
	((struct openb3d_openb3dcore_TShader_obj*)bbNullObjectTest((BBObject*)bbt_material))->clas->m_SetInteger_Si((struct openb3d_openb3dcore_TShader_obj*)bbt_material,bbt_name,bbt_v1);
	bbOnDebugLeaveScope();
	return 0;
}
BBINT openb3d_openb3dcore_SetInteger2(struct openb3d_openb3dcore_TShader_obj* bbt_material,BBSTRING bbt_name,BBINT bbt_v1,BBINT bbt_v2){
	struct BBDebugScope_4 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"SetInteger2",
		{
			{
				BBDEBUGDECL_LOCAL,
				"material",
				":TShader",
				.var_address=&bbt_material
			},
			{
				BBDEBUGDECL_LOCAL,
				"name",
				"$",
				.var_address=&bbt_name
			},
			{
				BBDEBUGDECL_LOCAL,
				"v1",
				"i",
				.var_address=&bbt_v1
			},
			{
				BBDEBUGDECL_LOCAL,
				"v2",
				"i",
				.var_address=&bbt_v2
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x4af243160143e7fa, 1324, 0};
	bbOnDebugEnterStm(&__stmt_0);
	((struct openb3d_openb3dcore_TShader_obj*)bbNullObjectTest((BBObject*)bbt_material))->clas->m_SetInteger2_Sii((struct openb3d_openb3dcore_TShader_obj*)bbt_material,bbt_name,bbt_v1,bbt_v2);
	bbOnDebugLeaveScope();
	return 0;
}
BBINT openb3d_openb3dcore_SetInteger3(struct openb3d_openb3dcore_TShader_obj* bbt_material,BBSTRING bbt_name,BBINT bbt_v1,BBINT bbt_v2,BBINT bbt_v3){
	struct BBDebugScope_5 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"SetInteger3",
		{
			{
				BBDEBUGDECL_LOCAL,
				"material",
				":TShader",
				.var_address=&bbt_material
			},
			{
				BBDEBUGDECL_LOCAL,
				"name",
				"$",
				.var_address=&bbt_name
			},
			{
				BBDEBUGDECL_LOCAL,
				"v1",
				"i",
				.var_address=&bbt_v1
			},
			{
				BBDEBUGDECL_LOCAL,
				"v2",
				"i",
				.var_address=&bbt_v2
			},
			{
				BBDEBUGDECL_LOCAL,
				"v3",
				"i",
				.var_address=&bbt_v3
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x4af243160143e7fa, 1331, 0};
	bbOnDebugEnterStm(&__stmt_0);
	((struct openb3d_openb3dcore_TShader_obj*)bbNullObjectTest((BBObject*)bbt_material))->clas->m_SetInteger3_Siii((struct openb3d_openb3dcore_TShader_obj*)bbt_material,bbt_name,bbt_v1,bbt_v2,bbt_v3);
	bbOnDebugLeaveScope();
	return 0;
}
BBINT openb3d_openb3dcore_SetInteger4(struct openb3d_openb3dcore_TShader_obj* bbt_material,BBSTRING bbt_name,BBINT bbt_v1,BBINT bbt_v2,BBINT bbt_v3,BBINT bbt_v4){
	struct BBDebugScope_6 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"SetInteger4",
		{
			{
				BBDEBUGDECL_LOCAL,
				"material",
				":TShader",
				.var_address=&bbt_material
			},
			{
				BBDEBUGDECL_LOCAL,
				"name",
				"$",
				.var_address=&bbt_name
			},
			{
				BBDEBUGDECL_LOCAL,
				"v1",
				"i",
				.var_address=&bbt_v1
			},
			{
				BBDEBUGDECL_LOCAL,
				"v2",
				"i",
				.var_address=&bbt_v2
			},
			{
				BBDEBUGDECL_LOCAL,
				"v3",
				"i",
				.var_address=&bbt_v3
			},
			{
				BBDEBUGDECL_LOCAL,
				"v4",
				"i",
				.var_address=&bbt_v4
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x4af243160143e7fa, 1338, 0};
	bbOnDebugEnterStm(&__stmt_0);
	((struct openb3d_openb3dcore_TShader_obj*)bbNullObjectTest((BBObject*)bbt_material))->clas->m_SetInteger4_Siiii((struct openb3d_openb3dcore_TShader_obj*)bbt_material,bbt_name,bbt_v1,bbt_v2,bbt_v3,bbt_v4);
	bbOnDebugLeaveScope();
	return 0;
}
BBINT openb3d_openb3dcore_UseInteger(struct openb3d_openb3dcore_TShader_obj* bbt_material,BBSTRING bbt_name,BBINT* bbt_v1){
	struct BBDebugScope_3 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"UseInteger",
		{
			{
				BBDEBUGDECL_LOCAL,
				"material",
				":TShader",
				.var_address=&bbt_material
			},
			{
				BBDEBUGDECL_LOCAL,
				"name",
				"$",
				.var_address=&bbt_name
			},
			{
				BBDEBUGDECL_VARPARAM,
				"v1",
				"i",
				.var_address=&bbt_v1
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x4af243160143e7fa, 1345, 0};
	bbOnDebugEnterStm(&__stmt_0);
	((struct openb3d_openb3dcore_TShader_obj*)bbNullObjectTest((BBObject*)bbt_material))->clas->m_UseInteger_Svi((struct openb3d_openb3dcore_TShader_obj*)bbt_material,bbt_name,bbt_v1);
	bbOnDebugLeaveScope();
	return 0;
}
BBINT openb3d_openb3dcore_UseInteger2(struct openb3d_openb3dcore_TShader_obj* bbt_material,BBSTRING bbt_name,BBINT* bbt_v1,BBINT* bbt_v2){
	struct BBDebugScope_4 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"UseInteger2",
		{
			{
				BBDEBUGDECL_LOCAL,
				"material",
				":TShader",
				.var_address=&bbt_material
			},
			{
				BBDEBUGDECL_LOCAL,
				"name",
				"$",
				.var_address=&bbt_name
			},
			{
				BBDEBUGDECL_VARPARAM,
				"v1",
				"i",
				.var_address=&bbt_v1
			},
			{
				BBDEBUGDECL_VARPARAM,
				"v2",
				"i",
				.var_address=&bbt_v2
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x4af243160143e7fa, 1352, 0};
	bbOnDebugEnterStm(&__stmt_0);
	((struct openb3d_openb3dcore_TShader_obj*)bbNullObjectTest((BBObject*)bbt_material))->clas->m_UseInteger2_Svivi((struct openb3d_openb3dcore_TShader_obj*)bbt_material,bbt_name,bbt_v1,bbt_v2);
	bbOnDebugLeaveScope();
	return 0;
}
BBINT openb3d_openb3dcore_UseInteger3(struct openb3d_openb3dcore_TShader_obj* bbt_material,BBSTRING bbt_name,BBINT* bbt_v1,BBINT* bbt_v2,BBINT* bbt_v3){
	struct BBDebugScope_5 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"UseInteger3",
		{
			{
				BBDEBUGDECL_LOCAL,
				"material",
				":TShader",
				.var_address=&bbt_material
			},
			{
				BBDEBUGDECL_LOCAL,
				"name",
				"$",
				.var_address=&bbt_name
			},
			{
				BBDEBUGDECL_VARPARAM,
				"v1",
				"i",
				.var_address=&bbt_v1
			},
			{
				BBDEBUGDECL_VARPARAM,
				"v2",
				"i",
				.var_address=&bbt_v2
			},
			{
				BBDEBUGDECL_VARPARAM,
				"v3",
				"i",
				.var_address=&bbt_v3
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x4af243160143e7fa, 1359, 0};
	bbOnDebugEnterStm(&__stmt_0);
	((struct openb3d_openb3dcore_TShader_obj*)bbNullObjectTest((BBObject*)bbt_material))->clas->m_UseInteger3_Svivivi((struct openb3d_openb3dcore_TShader_obj*)bbt_material,bbt_name,bbt_v1,bbt_v2,bbt_v3);
	bbOnDebugLeaveScope();
	return 0;
}
BBINT openb3d_openb3dcore_UseInteger4(struct openb3d_openb3dcore_TShader_obj* bbt_material,BBSTRING bbt_name,BBINT* bbt_v1,BBINT* bbt_v2,BBINT* bbt_v3,BBINT* bbt_v4){
	struct BBDebugScope_6 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"UseInteger4",
		{
			{
				BBDEBUGDECL_LOCAL,
				"material",
				":TShader",
				.var_address=&bbt_material
			},
			{
				BBDEBUGDECL_LOCAL,
				"name",
				"$",
				.var_address=&bbt_name
			},
			{
				BBDEBUGDECL_VARPARAM,
				"v1",
				"i",
				.var_address=&bbt_v1
			},
			{
				BBDEBUGDECL_VARPARAM,
				"v2",
				"i",
				.var_address=&bbt_v2
			},
			{
				BBDEBUGDECL_VARPARAM,
				"v3",
				"i",
				.var_address=&bbt_v3
			},
			{
				BBDEBUGDECL_VARPARAM,
				"v4",
				"i",
				.var_address=&bbt_v4
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x4af243160143e7fa, 1366, 0};
	bbOnDebugEnterStm(&__stmt_0);
	((struct openb3d_openb3dcore_TShader_obj*)bbNullObjectTest((BBObject*)bbt_material))->clas->m_UseInteger4_Svivivivi((struct openb3d_openb3dcore_TShader_obj*)bbt_material,bbt_name,bbt_v1,bbt_v2,bbt_v3,bbt_v4);
	bbOnDebugLeaveScope();
	return 0;
}
BBINT openb3d_openb3dcore_UseSurface(struct openb3d_openb3dcore_TShader_obj* bbt_material,BBSTRING bbt_name,struct openb3d_openb3dcore_TSurface_obj* bbt_surf,BBINT bbt_vbo){
	struct BBDebugScope_4 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"UseSurface",
		{
			{
				BBDEBUGDECL_LOCAL,
				"material",
				":TShader",
				.var_address=&bbt_material
			},
			{
				BBDEBUGDECL_LOCAL,
				"name",
				"$",
				.var_address=&bbt_name
			},
			{
				BBDEBUGDECL_LOCAL,
				"surf",
				":TSurface",
				.var_address=&bbt_surf
			},
			{
				BBDEBUGDECL_LOCAL,
				"vbo",
				"i",
				.var_address=&bbt_vbo
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x4af243160143e7fa, 1375, 0};
	bbOnDebugEnterStm(&__stmt_0);
	((struct openb3d_openb3dcore_TShader_obj*)bbNullObjectTest((BBObject*)bbt_material))->clas->m_UseSurface_STTSurfacei((struct openb3d_openb3dcore_TShader_obj*)bbt_material,bbt_name,(struct openb3d_openb3dcore_TSurface_obj*)bbt_surf,bbt_vbo);
	bbOnDebugLeaveScope();
	return 0;
}
BBINT openb3d_openb3dcore_UseMatrix(struct openb3d_openb3dcore_TShader_obj* bbt_material,BBSTRING bbt_name,BBINT bbt_Mode){
	struct BBDebugScope_3 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"UseMatrix",
		{
			{
				BBDEBUGDECL_LOCAL,
				"material",
				":TShader",
				.var_address=&bbt_material
			},
			{
				BBDEBUGDECL_LOCAL,
				"name",
				"$",
				.var_address=&bbt_name
			},
			{
				BBDEBUGDECL_LOCAL,
				"Mode",
				"i",
				.var_address=&bbt_Mode
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x4af243160143e7fa, 1382, 0};
	bbOnDebugEnterStm(&__stmt_0);
	((struct openb3d_openb3dcore_TShader_obj*)bbNullObjectTest((BBObject*)bbt_material))->clas->m_UseMatrix_Si((struct openb3d_openb3dcore_TShader_obj*)bbt_material,bbt_name,bbt_Mode);
	bbOnDebugLeaveScope();
	return 0;
}
struct openb3d_openb3dcore_TMaterial_obj* openb3d_openb3dcore_LoadMaterial(BBSTRING bbt_filename,BBINT bbt_flags,BBINT bbt_frame_width,BBINT bbt_frame_height,BBINT bbt_first_frame,BBINT bbt_frame_count){
	struct BBDebugScope_6 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"LoadMaterial",
		{
			{
				BBDEBUGDECL_LOCAL,
				"filename",
				"$",
				.var_address=&bbt_filename
			},
			{
				BBDEBUGDECL_LOCAL,
				"flags",
				"i",
				.var_address=&bbt_flags
			},
			{
				BBDEBUGDECL_LOCAL,
				"frame_width",
				"i",
				.var_address=&bbt_frame_width
			},
			{
				BBDEBUGDECL_LOCAL,
				"frame_height",
				"i",
				.var_address=&bbt_frame_height
			},
			{
				BBDEBUGDECL_LOCAL,
				"first_frame",
				"i",
				.var_address=&bbt_first_frame
			},
			{
				BBDEBUGDECL_LOCAL,
				"frame_count",
				"i",
				.var_address=&bbt_frame_count
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x4af243160143e7fa, 1391, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbOnDebugLeaveScope();
	return (struct openb3d_openb3dcore_TMaterial_obj*)openb3d_openb3dcore_TMaterial_LoadMaterial_TTMaterial_Siiiii(bbt_filename,bbt_flags,bbt_frame_width,bbt_frame_height,bbt_first_frame,bbt_frame_count);
}
BBINT openb3d_openb3dcore_ShaderMaterial(struct openb3d_openb3dcore_TShader_obj* bbt_material,struct openb3d_openb3dcore_TMaterial_obj* bbt_tex,BBSTRING bbt_name,BBINT bbt_index){
	struct BBDebugScope_4 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"ShaderMaterial",
		{
			{
				BBDEBUGDECL_LOCAL,
				"material",
				":TShader",
				.var_address=&bbt_material
			},
			{
				BBDEBUGDECL_LOCAL,
				"tex",
				":TMaterial",
				.var_address=&bbt_tex
			},
			{
				BBDEBUGDECL_LOCAL,
				"name",
				"$",
				.var_address=&bbt_name
			},
			{
				BBDEBUGDECL_LOCAL,
				"index",
				"i",
				.var_address=&bbt_index
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x4af243160143e7fa, 1398, 0};
	bbOnDebugEnterStm(&__stmt_0);
	((struct openb3d_openb3dcore_TShader_obj*)bbNullObjectTest((BBObject*)bbt_material))->clas->m_ShaderMaterial_TTMaterialSi((struct openb3d_openb3dcore_TShader_obj*)bbt_material,(struct openb3d_openb3dcore_TMaterial_obj*)bbt_tex,bbt_name,bbt_index);
	bbOnDebugLeaveScope();
	return 0;
}
BBINT openb3d_openb3dcore_AmbientShader(struct openb3d_openb3dcore_TShader_obj* bbt_material){
	struct BBDebugScope_1 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"AmbientShader",
		{
			{
				BBDEBUGDECL_LOCAL,
				"material",
				":TShader",
				.var_address=&bbt_material
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x4af243160143e7fa, 1405, 0};
	bbOnDebugEnterStm(&__stmt_0);
	openb3d_openb3dcore_TGlobal3D_ambient_shader=(struct openb3d_openb3dcore_TShader_obj*)bbt_material;
	struct BBDebugStm __stmt_1 = {0x4af243160143e7fa, 1406, 0};
	bbOnDebugEnterStm(&__stmt_1);
	((struct openb3d_openb3dcore_TShader_obj*)bbNullObjectTest((BBObject*)bbt_material))->clas->m_AmbientShader((struct openb3d_openb3dcore_TShader_obj*)bbt_material);
	bbOnDebugLeaveScope();
	return 0;
}
BBINT openb3d_openb3dcore_UseEntity(struct openb3d_openb3dcore_TShader_obj* bbt_material,BBSTRING bbt_name,struct openb3d_openb3dcore_TEntity_obj* bbt_ent,BBINT bbt_mode){
	struct BBDebugScope_4 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"UseEntity",
		{
			{
				BBDEBUGDECL_LOCAL,
				"material",
				":TShader",
				.var_address=&bbt_material
			},
			{
				BBDEBUGDECL_LOCAL,
				"name",
				"$",
				.var_address=&bbt_name
			},
			{
				BBDEBUGDECL_LOCAL,
				"ent",
				":TEntity",
				.var_address=&bbt_ent
			},
			{
				BBDEBUGDECL_LOCAL,
				"mode",
				"i",
				.var_address=&bbt_mode
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x4af243160143e7fa, 1413, 0};
	bbOnDebugEnterStm(&__stmt_0);
	((struct openb3d_openb3dcore_TShader_obj*)bbNullObjectTest((BBObject*)bbt_material))->clas->m_UseEntity_STTEntityi((struct openb3d_openb3dcore_TShader_obj*)bbt_material,bbt_name,(struct openb3d_openb3dcore_TEntity_obj*)bbt_ent,bbt_mode);
	bbOnDebugLeaveScope();
	return 0;
}
BBINT openb3d_openb3dcore_ShaderFunction(struct openb3d_openb3dcore_TShader_obj* bbt_material,BBINT(* bbt_EnableFunction)(),BBINT(* bbt_DisableFunction)()){
	struct BBDebugScope_3 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"ShaderFunction",
		{
			{
				BBDEBUGDECL_LOCAL,
				"material",
				":TShader",
				.var_address=&bbt_material
			},
			{
				BBDEBUGDECL_LOCAL,
				"EnableFunction",
				"()i",
				.var_address=&bbt_EnableFunction
			},
			{
				BBDEBUGDECL_LOCAL,
				"DisableFunction",
				"()i",
				.var_address=&bbt_DisableFunction
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x4af243160143e7fa, 1420, 0};
	bbOnDebugEnterStm(&__stmt_0);
	((struct openb3d_openb3dcore_TShader_obj*)bbNullObjectTest((BBObject*)bbt_material))->clas->m_ShaderFunction_F_i_F_i_((struct openb3d_openb3dcore_TShader_obj*)bbt_material,bbt_EnableFunction,bbt_DisableFunction);
	bbOnDebugLeaveScope();
	return 0;
}
BBINT openb3d_openb3dcore_GetShaderProgram(struct openb3d_openb3dcore_TShader_obj* bbt_material){
	struct BBDebugScope_1 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"GetShaderProgram",
		{
			{
				BBDEBUGDECL_LOCAL,
				"material",
				":TShader",
				.var_address=&bbt_material
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x4af243160143e7fa, 1427, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbOnDebugLeaveScope();
	return ((struct openb3d_openb3dcore_TShader_obj*)bbNullObjectTest((BBObject*)bbt_material))->clas->m_GetShaderProgram((struct openb3d_openb3dcore_TShader_obj*)bbt_material);
}
struct openb3d_openb3dcore_TShadowObject_obj* openb3d_openb3dcore_CreateShadow(struct openb3d_openb3dcore_TMesh_obj* bbt_parent,BBINT bbt_Static){
	struct BBDebugScope_2 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"CreateShadow",
		{
			{
				BBDEBUGDECL_LOCAL,
				"parent",
				":TMesh",
				.var_address=&bbt_parent
			},
			{
				BBDEBUGDECL_LOCAL,
				"Static",
				"i",
				.var_address=&bbt_Static
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x4af243160143e7fa, 1436, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbOnDebugLeaveScope();
	return (struct openb3d_openb3dcore_TShadowObject_obj*)openb3d_openb3dcore_TShadowObject_CreateShadow_TTShadowObject_TTMeshi((struct openb3d_openb3dcore_TMesh_obj*)bbt_parent,bbt_Static);
}
BBINT openb3d_openb3dcore_FreeShadow(struct openb3d_openb3dcore_TShadowObject_obj* bbt_shad){
	struct BBDebugScope_1 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"FreeShadow",
		{
			{
				BBDEBUGDECL_LOCAL,
				"shad",
				":TShadowObject",
				.var_address=&bbt_shad
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x4af243160143e7fa, 1443, 0};
	bbOnDebugEnterStm(&__stmt_0);
	((struct openb3d_openb3dcore_TShadowObject_obj*)bbNullObjectTest((BBObject*)bbt_shad))->clas->m_FreeShadow((struct openb3d_openb3dcore_TShadowObject_obj*)bbt_shad);
	bbOnDebugLeaveScope();
	return 0;
}
BBINT openb3d_openb3dcore_ResetShadow(struct openb3d_openb3dcore_TShadowObject_obj* bbt_shad){
	struct BBDebugScope_1 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"ResetShadow",
		{
			{
				BBDEBUGDECL_LOCAL,
				"shad",
				":TShadowObject",
				.var_address=&bbt_shad
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x4af243160143e7fa, 1450, 0};
	bbOnDebugEnterStm(&__stmt_0);
	((struct openb3d_openb3dcore_TShadowObject_obj*)bbNullObjectTest((BBObject*)bbt_shad))->_openb3d_openb3dcore_tshadowobject_vcreated [0]=0;
	bbOnDebugLeaveScope();
	return 0;
}
BBINT openb3d_openb3dcore_SetShadowColor(BBINT bbt_R,BBINT bbt_G,BBINT bbt_B,BBINT bbt_A){
	struct BBDebugScope_4 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"SetShadowColor",
		{
			{
				BBDEBUGDECL_LOCAL,
				"R",
				"i",
				.var_address=&bbt_R
			},
			{
				BBDEBUGDECL_LOCAL,
				"G",
				"i",
				.var_address=&bbt_G
			},
			{
				BBDEBUGDECL_LOCAL,
				"B",
				"i",
				.var_address=&bbt_B
			},
			{
				BBDEBUGDECL_LOCAL,
				"A",
				"i",
				.var_address=&bbt_A
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x4af243160143e7fa, 1457, 0};
	bbOnDebugEnterStm(&__stmt_0);
	SetShadowColor_(bbt_R,bbt_G,bbt_B,bbt_A);
	bbOnDebugLeaveScope();
	return 0;
}
struct openb3d_openb3dcore_TStencil_obj* openb3d_openb3dcore_CreateStencil(){
	struct BBDebugScope __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"CreateStencil",
		{
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x4af243160143e7fa, 1467, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbOnDebugLeaveScope();
	return (struct openb3d_openb3dcore_TStencil_obj*)openb3d_openb3dcore_TStencil_CreateStencil_TTStencil();
}
BBINT openb3d_openb3dcore_StencilAlpha(struct openb3d_openb3dcore_TStencil_obj* bbt_stencil,BBFLOAT bbt_a){
	struct BBDebugScope_2 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"StencilAlpha",
		{
			{
				BBDEBUGDECL_LOCAL,
				"stencil",
				":TStencil",
				.var_address=&bbt_stencil
			},
			{
				BBDEBUGDECL_LOCAL,
				"a",
				"f",
				.var_address=&bbt_a
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x4af243160143e7fa, 1474, 0};
	bbOnDebugEnterStm(&__stmt_0);
	((struct openb3d_openb3dcore_TStencil_obj*)bbNullObjectTest((BBObject*)bbt_stencil))->clas->m_StencilAlpha_f((struct openb3d_openb3dcore_TStencil_obj*)bbt_stencil,bbt_a);
	bbOnDebugLeaveScope();
	return 0;
}
BBINT openb3d_openb3dcore_StencilClsColor(struct openb3d_openb3dcore_TStencil_obj* bbt_stencil,BBFLOAT bbt_r,BBFLOAT bbt_g,BBFLOAT bbt_b){
	struct BBDebugScope_4 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"StencilClsColor",
		{
			{
				BBDEBUGDECL_LOCAL,
				"stencil",
				":TStencil",
				.var_address=&bbt_stencil
			},
			{
				BBDEBUGDECL_LOCAL,
				"r",
				"f",
				.var_address=&bbt_r
			},
			{
				BBDEBUGDECL_LOCAL,
				"g",
				"f",
				.var_address=&bbt_g
			},
			{
				BBDEBUGDECL_LOCAL,
				"b",
				"f",
				.var_address=&bbt_b
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x4af243160143e7fa, 1481, 0};
	bbOnDebugEnterStm(&__stmt_0);
	((struct openb3d_openb3dcore_TStencil_obj*)bbNullObjectTest((BBObject*)bbt_stencil))->clas->m_StencilClsColor_fff((struct openb3d_openb3dcore_TStencil_obj*)bbt_stencil,bbt_r,bbt_g,bbt_b);
	bbOnDebugLeaveScope();
	return 0;
}
BBINT openb3d_openb3dcore_StencilClsMode(struct openb3d_openb3dcore_TStencil_obj* bbt_stencil,BBINT bbt_cls_color,BBINT bbt_cls_zbuffer){
	struct BBDebugScope_3 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"StencilClsMode",
		{
			{
				BBDEBUGDECL_LOCAL,
				"stencil",
				":TStencil",
				.var_address=&bbt_stencil
			},
			{
				BBDEBUGDECL_LOCAL,
				"cls_color",
				"i",
				.var_address=&bbt_cls_color
			},
			{
				BBDEBUGDECL_LOCAL,
				"cls_zbuffer",
				"i",
				.var_address=&bbt_cls_zbuffer
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x4af243160143e7fa, 1489, 0};
	bbOnDebugEnterStm(&__stmt_0);
	((struct openb3d_openb3dcore_TStencil_obj*)bbNullObjectTest((BBObject*)bbt_stencil))->clas->m_StencilClsMode_ii((struct openb3d_openb3dcore_TStencil_obj*)bbt_stencil,bbt_cls_color,bbt_cls_zbuffer);
	bbOnDebugLeaveScope();
	return 0;
}
BBINT openb3d_openb3dcore_StencilMesh(struct openb3d_openb3dcore_TStencil_obj* bbt_stencil,struct openb3d_openb3dcore_TMesh_obj* bbt_mesh,BBINT bbt_Mode){
	struct BBDebugScope_3 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"StencilMesh",
		{
			{
				BBDEBUGDECL_LOCAL,
				"stencil",
				":TStencil",
				.var_address=&bbt_stencil
			},
			{
				BBDEBUGDECL_LOCAL,
				"mesh",
				":TMesh",
				.var_address=&bbt_mesh
			},
			{
				BBDEBUGDECL_LOCAL,
				"Mode",
				"i",
				.var_address=&bbt_Mode
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x4af243160143e7fa, 1498, 0};
	bbOnDebugEnterStm(&__stmt_0);
	((struct openb3d_openb3dcore_TStencil_obj*)bbNullObjectTest((BBObject*)bbt_stencil))->clas->m_StencilMesh_TTMeshi((struct openb3d_openb3dcore_TStencil_obj*)bbt_stencil,(struct openb3d_openb3dcore_TMesh_obj*)bbt_mesh,bbt_Mode);
	bbOnDebugLeaveScope();
	return 0;
}
BBINT openb3d_openb3dcore_StencilMode(struct openb3d_openb3dcore_TStencil_obj* bbt_stencil,BBINT bbt_m,BBINT bbt_o){
	struct BBDebugScope_3 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"StencilMode",
		{
			{
				BBDEBUGDECL_LOCAL,
				"stencil",
				":TStencil",
				.var_address=&bbt_stencil
			},
			{
				BBDEBUGDECL_LOCAL,
				"m",
				"i",
				.var_address=&bbt_m
			},
			{
				BBDEBUGDECL_LOCAL,
				"o",
				"i",
				.var_address=&bbt_o
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x4af243160143e7fa, 1508, 0};
	bbOnDebugEnterStm(&__stmt_0);
	((struct openb3d_openb3dcore_TStencil_obj*)bbNullObjectTest((BBObject*)bbt_stencil))->clas->m_StencilMode_ii((struct openb3d_openb3dcore_TStencil_obj*)bbt_stencil,bbt_m,bbt_o);
	bbOnDebugLeaveScope();
	return 0;
}
BBINT openb3d_openb3dcore_UseStencil(struct openb3d_openb3dcore_TStencil_obj* bbt_stencil){
	struct BBDebugScope_1 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"UseStencil",
		{
			{
				BBDEBUGDECL_LOCAL,
				"stencil",
				":TStencil",
				.var_address=&bbt_stencil
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x4af243160143e7fa, 1515, 0};
	bbOnDebugEnterStm(&__stmt_0);
	UseStencil_(openb3d_openb3dcore_TStencil_GetInstance_pb_TTStencil((struct openb3d_openb3dcore_TStencil_obj*)bbt_stencil));
	bbOnDebugLeaveScope();
	return 0;
}
struct openb3d_openb3dcore_TVoxelSprite_obj* openb3d_openb3dcore_CreateVoxelSprite(BBINT bbt_slices,struct openb3d_openb3dcore_TEntity_obj* bbt_parent){
	struct BBDebugScope_2 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"CreateVoxelSprite",
		{
			{
				BBDEBUGDECL_LOCAL,
				"slices",
				"i",
				.var_address=&bbt_slices
			},
			{
				BBDEBUGDECL_LOCAL,
				"parent",
				":TEntity",
				.var_address=&bbt_parent
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x4af243160143e7fa, 1524, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbOnDebugLeaveScope();
	return (struct openb3d_openb3dcore_TVoxelSprite_obj*)openb3d_openb3dcore_TVoxelSprite_CreateVoxelSprite_TTVoxelSprite_iTTEntity(bbt_slices,(struct openb3d_openb3dcore_TEntity_obj*)bbt_parent);
}
BBINT openb3d_openb3dcore_VoxelSpriteMaterial(struct openb3d_openb3dcore_TVoxelSprite_obj* bbt_voxelspr,struct openb3d_openb3dcore_TMaterial_obj* bbt_mat){
	struct BBDebugScope_2 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"VoxelSpriteMaterial",
		{
			{
				BBDEBUGDECL_LOCAL,
				"voxelspr",
				":TVoxelSprite",
				.var_address=&bbt_voxelspr
			},
			{
				BBDEBUGDECL_LOCAL,
				"mat",
				":TMaterial",
				.var_address=&bbt_mat
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x4af243160143e7fa, 1531, 0};
	bbOnDebugEnterStm(&__stmt_0);
	((struct openb3d_openb3dcore_TVoxelSprite_obj*)bbNullObjectTest((BBObject*)bbt_voxelspr))->clas->m_VoxelSpriteMaterial_TTMaterial((struct openb3d_openb3dcore_TVoxelSprite_obj*)bbt_voxelspr,(struct openb3d_openb3dcore_TMaterial_obj*)bbt_mat);
	bbOnDebugLeaveScope();
	return 0;
}
static int __bb_openb3d_openb3dcore_openb3dcore_inited = 0;
int __bb_openb3d_openb3dcore_openb3dcore(){
	if (!__bb_openb3d_openb3dcore_openb3dcore_inited) {
		__bb_openb3d_openb3dcore_openb3dcore_inited = 1;
		GC_add_roots(&openb3d_openb3dcore_mesh_loaders, &openb3d_openb3dcore_THardwareInfo_MultisampleSupport + 1);
		__bb_brl_blitz_blitz();
		__bb_openb3d_openb3dlib_openb3dlib();
		__bb_openb3d_ddsloader_ddsloader();
		bbObjectRegisterType((BBCLASS)&openb3d_openb3dcore_TMeshLoader);
		bbObjectRegisterType((BBCLASS)&openb3d_openb3dcore_TMeshLoaderOpenB3D);
		bbObjectRegisterType((BBCLASS)&openb3d_openb3dcore_TMeshLoaderMax);
		bbObjectRegisterType((BBCLASS)&openb3d_openb3dcore_TGlobal3D);
		bbObjectRegisterType((BBCLASS)&openb3d_openb3dcore_TUse);
		bbObjectRegisterType((BBCLASS)&openb3d_openb3dcore_TEntity);
		bbObjectRegisterType((BBCLASS)&openb3d_openb3dcore_TCamera);
		bbObjectRegisterType((BBCLASS)&openb3d_openb3dcore_TLight);
		bbObjectRegisterType((BBCLASS)&openb3d_openb3dcore_TPivot);
		bbObjectRegisterType((BBCLASS)&openb3d_openb3dcore_TMesh);
		bbObjectRegisterType((BBCLASS)&openb3d_openb3dcore_TSprite);
		bbObjectRegisterType((BBCLASS)&openb3d_openb3dcore_TBone);
		bbObjectRegisterType((BBCLASS)&openb3d_openb3dcore_TSurface);
		bbObjectRegisterType((BBCLASS)&openb3d_openb3dcore_TTexture);
		bbObjectRegisterType((BBCLASS)&openb3d_openb3dcore_TTextureFilter);
		bbObjectRegisterType((BBCLASS)&openb3d_openb3dcore_TBrush);
		bbObjectRegisterType((BBCLASS)&openb3d_openb3dcore_TAnimation);
		bbObjectRegisterType((BBCLASS)&openb3d_openb3dcore_TAnimationKeys);
		bbObjectRegisterType((BBCLASS)&openb3d_openb3dcore_TB3D);
		bbObjectRegisterType((BBCLASS)&openb3d_openb3dcore_TMD2Vertex);
		bbObjectRegisterType((BBCLASS)&openb3d_openb3dcore_TMD2Triangle);
		bbObjectRegisterType((BBCLASS)&openb3d_openb3dcore_TMD2TexCoords);
		bbObjectRegisterType((BBCLASS)&openb3d_openb3dcore_TMD2Frame);
		bbObjectRegisterType((BBCLASS)&openb3d_openb3dcore_TMD2);
		bbObjectRegisterType((BBCLASS)&openb3d_openb3dcore_T3DS);
		bbObjectRegisterType((BBCLASS)&openb3d_openb3dcore_TChunk);
		bbObjectRegisterType((BBCLASS)&openb3d_openb3dcore_TAnimKey);
		bbObjectRegisterType((BBCLASS)&openb3d_openb3dcore_T3DS2);
		bbObjectRegisterType((BBCLASS)&openb3d_openb3dcore_TOBJ);
		bbObjectRegisterType((BBCLASS)&openb3d_openb3dcore_TFaceData);
		bbObjectRegisterType((BBCLASS)&openb3d_openb3dcore_TObjNormal);
		bbObjectRegisterType((BBCLASS)&openb3d_openb3dcore_TObjTexCoord);
		bbObjectRegisterType((BBCLASS)&openb3d_openb3dcore_TObjVertex);
		bbObjectRegisterType((BBCLASS)&openb3d_openb3dcore_TObjMtl);
		bbObjectRegisterType((BBCLASS)&openb3d_openb3dcore_TVertCache);
		bbObjectRegisterType((BBCLASS)&openb3d_openb3dcore_TPick);
		bbObjectRegisterType((BBCLASS)&openb3d_openb3dcore_TVector);
		bbObjectRegisterType((BBCLASS)&openb3d_openb3dcore_TVecPtr);
		bbObjectRegisterType((BBCLASS)&openb3d_openb3dcore_TMatrix);
		bbObjectRegisterType((BBCLASS)&openb3d_openb3dcore_TMatPtr);
		bbObjectRegisterType((BBCLASS)&openb3d_openb3dcore_TQuaternion);
		bbObjectRegisterType((BBCLASS)&openb3d_openb3dcore_TQuatPtr);
		bbObjectRegisterType((BBCLASS)&openb3d_openb3dcore_TBlitz2D);
		bbObjectRegisterType((BBCLASS)&openb3d_openb3dcore_TUtility);
		bbObjectRegisterType((BBCLASS)&openb3d_openb3dcore_TTerrain);
		bbObjectRegisterType((BBCLASS)&openb3d_openb3dcore_TShaderObject);
		bbObjectRegisterType((BBCLASS)&openb3d_openb3dcore_TMaterial);
		bbObjectRegisterType((BBCLASS)&openb3d_openb3dcore_TShader);
		bbObjectRegisterType((BBCLASS)&openb3d_openb3dcore_TShadowObject);
		bbObjectRegisterType((BBCLASS)&openb3d_openb3dcore_THardwareInfo);
		bbObjectRegisterType((BBCLASS)&openb3d_openb3dcore_TStencil);
		bbObjectRegisterType((BBCLASS)&openb3d_openb3dcore_TFluid);
		bbObjectRegisterType((BBCLASS)&openb3d_openb3dcore_TBlob);
		bbObjectRegisterType((BBCLASS)&openb3d_openb3dcore_TGeosphere);
		bbObjectRegisterType((BBCLASS)&openb3d_openb3dcore_TOcTree);
		bbObjectRegisterType((BBCLASS)&openb3d_openb3dcore_TVoxelSprite);
		bbObjectRegisterType((BBCLASS)&openb3d_openb3dcore_TAction);
		bbObjectRegisterType((BBCLASS)&openb3d_openb3dcore_TConstraint);
		bbObjectRegisterType((BBCLASS)&openb3d_openb3dcore_TRigidBody);
		bbObjectRegisterType((BBCLASS)&openb3d_openb3dcore_TParticleBatch);
		bbObjectRegisterType((BBCLASS)&openb3d_openb3dcore_TParticleEmitter);
		bbObjectRegisterType((BBCLASS)&openb3d_openb3dcore_TPostFX);
		bbRegisterSource(0x220966022118f42, "c:/BlitzmaxNG/mod/openb3d.mod/openb3dcore.mod/inc/TVector.bmx");
		bbRegisterSource(0x270028a708ddc40d, "c:/BlitzmaxNG/mod/openb3d.mod/openb3dcore.mod/inc/TFluid.bmx");
		bbRegisterSource(0x2aba017925a91539, "c:/BlitzmaxNG/mod/openb3d.mod/openb3dcore.mod/inc/TMatrix.bmx");
		bbRegisterSource(0x2b6c276386fc9654, "c:/BlitzmaxNG/mod/openb3d.mod/openb3dcore.mod/inc/THardwareInfo.bmx");
		bbRegisterSource(0x2ca3aa87d9b50d36, "c:/BlitzmaxNG/mod/openb3d.mod/openb3dcore.mod/inc/TBone.bmx");
		bbRegisterSource(0x2ed5544e8f1c7263, "c:/BlitzmaxNG/mod/openb3d.mod/openb3dcore.mod/inc/TPick.bmx");
		bbRegisterSource(0x2fecc01ccff76d98, "c:/BlitzmaxNG/mod/openb3d.mod/openb3dcore.mod/inc/TTerrain.bmx");
		bbRegisterSource(0x3a40a87d4a51b174, "c:/BlitzmaxNG/mod/openb3d.mod/openb3dcore.mod/inc/TBrush.bmx");
		bbRegisterSource(0x44a35bd9cb25cae8, "c:/BlitzmaxNG/mod/openb3d.mod/openb3dcore.mod/inc/TShader.bmx");
		bbRegisterSource(0x47eafdfc4911859b, "c:/BlitzmaxNG/mod/openb3d.mod/openb3dcore.mod/inc/TGlobal3D.bmx");
		bbRegisterSource(0x495c13799fba57b6, "c:/BlitzmaxNG/mod/openb3d.mod/openb3dcore.mod/inc/TMeshLoader.bmx");
		bbRegisterSource(0x4af243160143e7fa, "c:/BlitzmaxNG/mod/openb3d.mod/openb3dcore.mod/inc/functions.bmx");
		bbRegisterSource(0x4d40222d904adaa4, "c:/BlitzmaxNG/mod/openb3d.mod/openb3dcore.mod/inc/TVoxelSprite.bmx");
		bbRegisterSource(0x52d896bd406bc7a6, "c:/BlitzmaxNG/mod/openb3d.mod/openb3dcore.mod/inc/TQuaternion.bmx");
		bbRegisterSource(0x540807cbd0b3aa62, "c:/BlitzmaxNG/mod/openb3d.mod/openb3dcore.mod/inc/TB3D.bmx");
		bbRegisterSource(0x5661fee21fff696c, "c:/BlitzmaxNG/mod/openb3d.mod/openb3dcore.mod/inc/T3DS2.bmx");
		bbRegisterSource(0x6618501f9a9db79b, "c:/BlitzmaxNG/mod/openb3d.mod/openb3dcore.mod/inc/TPivot.bmx");
		bbRegisterSource(0x66be26468d9c2fab, "c:/BlitzmaxNG/mod/openb3d.mod/openb3dcore.mod/inc/TConstraint.bmx");
		bbRegisterSource(0x74c8b03f76ff8894, "c:/BlitzmaxNG/mod/openb3d.mod/openb3dcore.mod/inc/TShadowObject.bmx");
		bbRegisterSource(0x785bac1a99379bcb, "c:/BlitzmaxNG/mod/openb3d.mod/openb3dcore.mod/inc/TUtility.bmx");
		bbRegisterSource(0x7997c65814154ece, "c:/BlitzmaxNG/mod/openb3d.mod/openb3dcore.mod/inc/functions_std.bmx");
		bbRegisterSource(0x800f81c4432c751, "c:/BlitzmaxNG/mod/openb3d.mod/openb3dcore.mod/inc/TSurface.bmx");
		bbRegisterSource(0x809f51191e0b706a, "c:/BlitzmaxNG/mod/openb3d.mod/openb3dcore.mod/inc/TStencil.bmx");
		bbRegisterSource(0x852c1a4e4bd2c08d, "c:/BlitzmaxNG/mod/openb3d.mod/openb3dcore.mod/inc/TMesh.bmx");
		bbRegisterSource(0x900be0a54b5d9948, "c:/BlitzmaxNG/mod/openb3d.mod/openb3dcore.mod/inc/TLight.bmx");
		bbRegisterSource(0x96356c750530f2c5, "c:/BlitzmaxNG/mod/openb3d.mod/openb3dcore.mod/inc/TCamera.bmx");
		bbRegisterSource(0xa6bea28b2db61a66, "c:/BlitzmaxNG/mod/openb3d.mod/openb3dcore.mod/inc/TEntity.bmx");
		bbRegisterSource(0xb38e7c8d97adef99, "c:/BlitzmaxNG/mod/openb3d.mod/openb3dcore.mod/inc/TOBJ.bmx");
		bbRegisterSource(0xb95836f6245d1685, "c:/BlitzmaxNG/mod/openb3d.mod/openb3dcore.mod/inc/TPostFX.bmx");
		bbRegisterSource(0xbc887fbb172a5d2b, "c:/BlitzmaxNG/mod/openb3d.mod/openb3dcore.mod/inc/TAction.bmx");
		bbRegisterSource(0xbf60976b30babfc9, "c:/BlitzmaxNG/mod/openb3d.mod/openb3dcore.mod/inc/TBlitz2D.bmx");
		bbRegisterSource(0xc446e5b6de7b1a5f, "c:/BlitzmaxNG/mod/openb3d.mod/openb3dcore.mod/inc/TOcTree.bmx");
		bbRegisterSource(0xc98026d238c3ecac, "c:/BlitzmaxNG/mod/openb3d.mod/openb3dcore.mod/inc/TTexture.bmx");
		bbRegisterSource(0xd16b7323a39515ed, "c:/BlitzmaxNG/mod/openb3d.mod/openb3dcore.mod/inc/TAnimation.bmx");
		bbRegisterSource(0xd84337d0cb3b0ee4, "c:/BlitzmaxNG/mod/openb3d.mod/openb3dcore.mod/inc/BoxSphere.bmx");
		bbRegisterSource(0xdeae01dd9e19c3e2, "c:/BlitzmaxNG/mod/openb3d.mod/openb3dcore.mod/inc/TGeosphere.bmx");
		bbRegisterSource(0xe183483c4d7176e5, "c:/BlitzmaxNG/mod/openb3d.mod/openb3dcore.mod/inc/TSprite.bmx");
		bbRegisterSource(0xe2f66d59d20c5230, "c:/BlitzmaxNG/mod/openb3d.mod/openb3dcore.mod/inc/TParticleBatch.bmx");
		bbRegisterSource(0xf37902d63da5e078, "c:/BlitzmaxNG/mod/openb3d.mod/openb3dcore.mod/openb3dcore.bmx");
		bbRegisterSource(0xfc793edde7789278, "c:/BlitzmaxNG/mod/openb3d.mod/openb3dcore.mod/inc/TMD2.bmx");
		bbRegisterSource(0xfcf57dd78e8efc53, "c:/BlitzmaxNG/mod/openb3d.mod/openb3dcore.mod/inc/T3DS.bmx");
		openb3d_openb3dcore_TGlobal3D_width=0;
		openb3d_openb3dcore_TGlobal3D_height=0;
		openb3d_openb3dcore_TGlobal3D_alpha_enable=0;
		openb3d_openb3dcore_TGlobal3D_blend_mode=0;
		openb3d_openb3dcore_TCamera_cam_list=((struct brl_linkedlist_TList_obj*)&bbNullObject);
		openb3d_openb3dcore_TGlobal3D_camera_in_use=((struct openb3d_openb3dcore_TCamera_obj*)&bbNullObject);
		openb3d_openb3dcore_TGlobal3D_fog_enabled=0;
		openb3d_openb3dcore_TEntity_entity_list=((struct brl_linkedlist_TList_obj*)&bbNullObject);
		openb3d_openb3dcore_TEntity_entity_list_id=0;
		openb3d_openb3dcore_TEntity_ent_map=((struct brl_map_ptrmap_TPtrMap_obj*)&bbNullObject);
		openb3d_openb3dcore_TEntity_animate_list=((struct brl_linkedlist_TList_obj*)&bbNullObject);
		openb3d_openb3dcore_TEntity_animate_list_id=0;
		openb3d_openb3dcore_TGlobal3D_root_ent=((struct openb3d_openb3dcore_TPivot_obj*)&bbNullObject);
		openb3d_openb3dcore_TCamera_cam_list_id=0;
		openb3d_openb3dcore_TLight_light_list=((struct brl_linkedlist_TList_obj*)&bbNullObject);
		openb3d_openb3dcore_TLight_light_list_id=0;
		openb3d_openb3dcore_TPick_ent_list=((struct brl_linkedlist_TList_obj*)&bbNullObject);
		openb3d_openb3dcore_TPick_ent_list_id=0;
		openb3d_openb3dcore_TShadowObject_shadow_list=((struct brl_linkedlist_TList_obj*)&bbNullObject);
		openb3d_openb3dcore_TShadowObject_shadow_list_id=0;
		openb3d_openb3dcore_TShadowObject_shad_map=((struct brl_map_ptrmap_TPtrMap_obj*)&bbNullObject);
		openb3d_openb3dcore_TTerrain_terrain_list=((struct brl_linkedlist_TList_obj*)&bbNullObject);
		openb3d_openb3dcore_TTerrain_terrain_list_id=0;
		openb3d_openb3dcore_TTexture_tex_list=((struct brl_linkedlist_TList_obj*)&bbNullObject);
		openb3d_openb3dcore_TTexture_tex_list_id=0;
		openb3d_openb3dcore_TTexture_tex_map=((struct brl_map_ptrmap_TPtrMap_obj*)&bbNullObject);
		openb3d_openb3dcore_TTexture_tex_list_all=((struct brl_linkedlist_TList_obj*)&bbNullObject);
		openb3d_openb3dcore_TTexture_tex_list_all_id=0;
		openb3d_openb3dcore_TSurface_surf_map=((struct brl_map_ptrmap_TPtrMap_obj*)&bbNullObject);
		openb3d_openb3dcore_TGlobal3D_Log_New=0;
		openb3d_openb3dcore_TBrush_brush_map=((struct brl_map_ptrmap_TPtrMap_obj*)&bbNullObject);
		openb3d_openb3dcore_TBrush_brush_list=((struct brl_linkedlist_TList_obj*)&bbNullObject);
		openb3d_openb3dcore_TBrush_brush_list_id=0;
		openb3d_openb3dcore_TShader_shader_map=((struct brl_map_ptrmap_TPtrMap_obj*)&bbNullObject);
		openb3d_openb3dcore_TEntity_child_list_queue=((struct brl_linkedlist_TList_obj*)&bbNullObject);
		openb3d_openb3dcore_TMatPtr_matptr_map=((struct brl_map_ptrmap_TPtrMap_obj*)&bbNullObject);
		openb3d_openb3dcore_TAnimationKeys_animkeys_map=((struct brl_map_ptrmap_TPtrMap_obj*)&bbNullObject);
		openb3d_openb3dcore_TGlobal3D_pivots_exist=0;
		openb3d_openb3dcore_TGlobal3D_piv1=((struct openb3d_openb3dcore_TPivot_obj*)&bbNullObject);
		openb3d_openb3dcore_TGlobal3D_piv11=((struct openb3d_openb3dcore_TPivot_obj*)&bbNullObject);
		openb3d_openb3dcore_TGlobal3D_piv111=((struct openb3d_openb3dcore_TPivot_obj*)&bbNullObject);
		openb3d_openb3dcore_TGlobal3D_piv2=((struct openb3d_openb3dcore_TPivot_obj*)&bbNullObject);
		openb3d_openb3dcore_TGlobal3D_piv1o=((struct openb3d_openb3dcore_TPivot_obj*)&bbNullObject);
		openb3d_openb3dcore_TGlobal3D_piv2o=((struct openb3d_openb3dcore_TPivot_obj*)&bbNullObject);
		openb3d_openb3dcore_TGlobal3D_Texture_Loader=0;
		openb3d_openb3dcore_TTexture_is_unique=0;
		openb3d_openb3dcore_TGlobal3D_Cubemap_Frame=(&bbEmptyArray);
		openb3d_openb3dcore_TGlobal3D_Cubemap_Face=(&bbEmptyArray);
		openb3d_openb3dcore_TGlobal3D_Flip_Cubemap=0;
		openb3d_openb3dcore_TPick_picked_ent=((struct openb3d_openb3dcore_TEntity_obj*)&bbNullObject);
		openb3d_openb3dcore_TPick_picked_surface=((struct openb3d_openb3dcore_TSurface_obj*)&bbNullObject);
		openb3d_openb3dcore_TMesh_plane_list=((struct brl_linkedlist_TList_obj*)&bbNullObject);
		openb3d_openb3dcore_TGlobal3D_Log_MD2=0;
		openb3d_openb3dcore_TGlobal3D_Matrix_MD2=((struct openb3d_openb3dcore_TMatPtr_obj*)&bbNullObject);
		openb3d_openb3dcore_TMD2_md2_anorms=(&bbEmptyArray);
		openb3d_openb3dcore_TGlobal3D_Mesh_Loader=0;
		openb3d_openb3dcore_TGlobal3D_Mesh_Flags=0;
		openb3d_openb3dcore_TGlobal3D_Log_3DS=0;
		openb3d_openb3dcore_TGlobal3D_Log_B3D=0;
		openb3d_openb3dcore_TGlobal3D_Log_Assimp=0;
		openb3d_openb3dcore_TGlobal3D_Log_OBJ=0;
		openb3d_openb3dcore_TGlobal3D_Mesh_Transform=0;
		openb3d_openb3dcore_TGlobal3D_Matrix_3DS=((struct openb3d_openb3dcore_TMatPtr_obj*)&bbNullObject);
		openb3d_openb3dcore_TGlobal3D_Texture_Flags=0;
		openb3d_openb3dcore_TTexture_global_aniso=0;
		openb3d_openb3dcore_TQuatPtr_quatptr_map=((struct brl_map_ptrmap_TPtrMap_obj*)&bbNullObject);
		openb3d_openb3dcore_TVecPtr_vecptr_map=((struct brl_map_ptrmap_TPtrMap_obj*)&bbNullObject);
		openb3d_openb3dcore_TShaderObject_shaderobject_map=((struct brl_map_ptrmap_TPtrMap_obj*)&bbNullObject);
		openb3d_openb3dcore_TStencil_stencil_map=((struct brl_map_ptrmap_TPtrMap_obj*)&bbNullObject);
		openb3d_openb3dcore_TGlobal3D_GL_Version=0;
		openb3d_openb3dcore_THardwareInfo_DepthStencil=0;
		openb3d_openb3dcore_TGlobal3D_Shadows_enabled=0;
		openb3d_openb3dcore_TAction_action_map=((struct brl_map_ptrmap_TPtrMap_obj*)&bbNullObject);
		openb3d_openb3dcore_TAction_action_list=((struct brl_linkedlist_TList_obj*)&bbNullObject);
		openb3d_openb3dcore_TAction_action_list_id=0;
		openb3d_openb3dcore_TPostFX_postfx_map=((struct brl_map_ptrmap_TPtrMap_obj*)&bbNullObject);
		openb3d_openb3dcore_TGlobal3D_ambient_shader=((struct openb3d_openb3dcore_TShader_obj*)&bbNullObject);
		openb3d_openb3dcore_TGlobal3D_Mode=0;
		openb3d_openb3dcore_TGlobal3D_depth=0;
		openb3d_openb3dcore_TGlobal3D_rate=0;
		openb3d_openb3dcore_TGlobal3D_ambient_red=0;
		openb3d_openb3dcore_TGlobal3D_ambient_green=0;
		openb3d_openb3dcore_TGlobal3D_ambient_blue=0;
		openb3d_openb3dcore_TGlobal3D_vbo_enabled=0;
		openb3d_openb3dcore_TGlobal3D_vbo_min_tris=0;
		openb3d_openb3dcore_TGlobal3D_anim_speed=0;
		openb3d_openb3dcore_TGlobal3D_fx1=0;
		openb3d_openb3dcore_TGlobal3D_fx2=0;
		openb3d_openb3dcore_TGlobal3D_gfx_obj=((struct brl_graphics_TGraphics_obj*)&bbNullObject);
		openb3d_openb3dcore_TGlobal3D_txt_red=0;
		openb3d_openb3dcore_TGlobal3D_txt_green=0;
		openb3d_openb3dcore_TGlobal3D_txt_blue=0;
		openb3d_openb3dcore_TGlobal3D_Log_Del=0;
		openb3d_openb3dcore_TGlobal3D_Loader_3DS2=0;
		openb3d_openb3dcore_TEntity_tformed_x=0;
		openb3d_openb3dcore_TEntity_tformed_y=0;
		openb3d_openb3dcore_TEntity_tformed_z=0;
		openb3d_openb3dcore_TCamera_projected_x=0;
		openb3d_openb3dcore_TCamera_projected_y=0;
		openb3d_openb3dcore_TCamera_projected_z=0;
		openb3d_openb3dcore_TLight_light_no=0;
		openb3d_openb3dcore_TLight_no_lights=0;
		openb3d_openb3dcore_TLight_max_lights=0;
		openb3d_openb3dcore_TLight_gl_light=0;
		openb3d_openb3dcore_TPick_picked_x=0;
		openb3d_openb3dcore_TPick_picked_y=0;
		openb3d_openb3dcore_TPick_picked_z=0;
		openb3d_openb3dcore_TPick_picked_nx=0;
		openb3d_openb3dcore_TPick_picked_ny=0;
		openb3d_openb3dcore_TPick_picked_nz=0;
		openb3d_openb3dcore_TPick_picked_time=0;
		openb3d_openb3dcore_TPick_picked_triangle=0;
		openb3d_openb3dcore_TShadowObject_top_caps=0;
		openb3d_openb3dcore_TShadowObject_parallel=0;
		openb3d_openb3dcore_TShadowObject_midStencilVal=0;
		openb3d_openb3dcore_TShadowObject_VolumeLength=0;
		openb3d_openb3dcore_TShadowObject_light_x=0;
		openb3d_openb3dcore_TShadowObject_light_y=0;
		openb3d_openb3dcore_TShadowObject_light_z=0;
		openb3d_openb3dcore_TShadowObject_ShadowRed=0;
		openb3d_openb3dcore_TShadowObject_ShadowGreen=0;
		openb3d_openb3dcore_TShadowObject_ShadowBlue=0;
		openb3d_openb3dcore_TShadowObject_ShadowAlpha=0;
		openb3d_openb3dcore_TTerrain_Roam_Detail=0;
		openb3d_openb3dcore_TTexture_AnIsoSupport=0;
		openb3d_openb3dcore_TLight_ambient=(&bbEmptyArray);
		openb3d_openb3dcore_TLight_diffuse=(&bbEmptyArray);
		openb3d_openb3dcore_TLight_specular=(&bbEmptyArray);
		openb3d_openb3dcore_TLight_position=(&bbEmptyArray);
		openb3d_openb3dcore_TLight_spotDirection=(&bbEmptyArray);
		openb3d_openb3dcore_TLight_spotExponent=(&bbEmptyArray);
		openb3d_openb3dcore_TLight_spotCutoff=(&bbEmptyArray);
		openb3d_openb3dcore_TLight_constantAtt=(&bbEmptyArray);
		openb3d_openb3dcore_TLight_linearAtt=(&bbEmptyArray);
		openb3d_openb3dcore_TLight_quadraticAtt=(&bbEmptyArray);
		openb3d_openb3dcore_TTextureFilter_filter_list=((struct brl_linkedlist_TList_obj*)&bbNullObject);
		openb3d_openb3dcore_TB3D_filepath=(&bbEmptyString);
		openb3d_openb3dcore_TOBJ_override_texflags=0;
		openb3d_openb3dcore_TOBJ_MeshPath=(&bbEmptyString);
		openb3d_openb3dcore_TOBJ_TexturePath=(&bbEmptyString);
		openb3d_openb3dcore_TOBJ_MaterialPath=(&bbEmptyString);
		openb3d_openb3dcore_THardwareInfo_ScreenWidth=0;
		openb3d_openb3dcore_THardwareInfo_ScreenHeight=0;
		openb3d_openb3dcore_THardwareInfo_ScreenDepth=0;
		openb3d_openb3dcore_THardwareInfo_ScreenHertz=0;
		openb3d_openb3dcore_THardwareInfo_Vendor=(&bbEmptyString);
		openb3d_openb3dcore_THardwareInfo_Renderer=(&bbEmptyString);
		openb3d_openb3dcore_THardwareInfo_OGLVersion=(&bbEmptyString);
		openb3d_openb3dcore_THardwareInfo_Extensions=(&bbEmptyString);
		openb3d_openb3dcore_THardwareInfo_MaxTextures=0;
		openb3d_openb3dcore_THardwareInfo_MaxTexSize=0;
		openb3d_openb3dcore_THardwareInfo_MaxLights=0;
		openb3d_openb3dcore_THardwareInfo_TexBlendSupport=0;
		openb3d_openb3dcore_THardwareInfo_AnIsoSupport=0;
		openb3d_openb3dcore_THardwareInfo_GLTCSupport=0;
		openb3d_openb3dcore_THardwareInfo_S3TCSupport=0;
		openb3d_openb3dcore_THardwareInfo_MultiTexSupport=0;
		openb3d_openb3dcore_THardwareInfo_CubemapSupport=0;
		openb3d_openb3dcore_THardwareInfo_DepthmapSupport=0;
		openb3d_openb3dcore_THardwareInfo_VPSupport=0;
		openb3d_openb3dcore_THardwareInfo_FPSupport=0;
		openb3d_openb3dcore_THardwareInfo_VBOSupport=0;
		openb3d_openb3dcore_THardwareInfo_ShaderSupport=0;
		openb3d_openb3dcore_THardwareInfo_VSSupport=0;
		openb3d_openb3dcore_THardwareInfo_FSSupport=0;
		openb3d_openb3dcore_THardwareInfo_SLSupport=0;
		openb3d_openb3dcore_THardwareInfo_FBOSupport=0;
		openb3d_openb3dcore_THardwareInfo_MultisampleSupport=0;
		openb3d_openb3dcore_TGlobal3D_width=0;
		openb3d_openb3dcore_TGlobal3D_height=0;
		openb3d_openb3dcore_TGlobal3D_Mode=0;
		openb3d_openb3dcore_TGlobal3D_depth=0;
		openb3d_openb3dcore_TGlobal3D_rate=0;
		openb3d_openb3dcore_TGlobal3D_ambient_red=0;
		openb3d_openb3dcore_TGlobal3D_ambient_green=0;
		openb3d_openb3dcore_TGlobal3D_ambient_blue=0;
		openb3d_openb3dcore_TGlobal3D_vbo_enabled=0;
		openb3d_openb3dcore_TGlobal3D_vbo_min_tris=0;
		openb3d_openb3dcore_TGlobal3D_Shadows_enabled=0;
		openb3d_openb3dcore_TGlobal3D_anim_speed=0;
		openb3d_openb3dcore_TGlobal3D_fog_enabled=0;
		openb3d_openb3dcore_TGlobal3D_root_ent=(struct openb3d_openb3dcore_TPivot_obj*)((struct openb3d_openb3dcore_TPivot_obj*)&bbNullObject);
		openb3d_openb3dcore_TGlobal3D_camera_in_use=(struct openb3d_openb3dcore_TCamera_obj*)((struct openb3d_openb3dcore_TCamera_obj*)&bbNullObject);
		openb3d_openb3dcore_TGlobal3D_ambient_shader=(struct openb3d_openb3dcore_TShader_obj*)((struct openb3d_openb3dcore_TShader_obj*)&bbNullObject);
		openb3d_openb3dcore_TGlobal3D_alpha_enable=0;
		openb3d_openb3dcore_TGlobal3D_blend_mode=0;
		openb3d_openb3dcore_TGlobal3D_fx1=0;
		openb3d_openb3dcore_TGlobal3D_fx2=0;
		openb3d_openb3dcore_TGlobal3D_pivots_exist=0;
		openb3d_openb3dcore_TGlobal3D_piv1o=(struct openb3d_openb3dcore_TPivot_obj*)((struct openb3d_openb3dcore_TPivot_obj*)&bbNullObject);
		openb3d_openb3dcore_TGlobal3D_piv1=(struct openb3d_openb3dcore_TPivot_obj*)((struct openb3d_openb3dcore_TPivot_obj*)&bbNullObject);
		openb3d_openb3dcore_TGlobal3D_piv11=(struct openb3d_openb3dcore_TPivot_obj*)((struct openb3d_openb3dcore_TPivot_obj*)&bbNullObject);
		openb3d_openb3dcore_TGlobal3D_piv111=(struct openb3d_openb3dcore_TPivot_obj*)((struct openb3d_openb3dcore_TPivot_obj*)&bbNullObject);
		openb3d_openb3dcore_TGlobal3D_piv2o=(struct openb3d_openb3dcore_TPivot_obj*)((struct openb3d_openb3dcore_TPivot_obj*)&bbNullObject);
		openb3d_openb3dcore_TGlobal3D_piv2=(struct openb3d_openb3dcore_TPivot_obj*)((struct openb3d_openb3dcore_TPivot_obj*)&bbNullObject);
		openb3d_openb3dcore_TGlobal3D_gfx_obj=(struct brl_graphics_TGraphics_obj*)((struct brl_graphics_TGraphics_obj*)&bbNullObject);
		openb3d_openb3dcore_TGlobal3D_txt_red=255;
		openb3d_openb3dcore_TGlobal3D_txt_green=255;
		openb3d_openb3dcore_TGlobal3D_txt_blue=255;
		openb3d_openb3dcore_TGlobal3D_Log_New=0;
		openb3d_openb3dcore_TGlobal3D_Log_Del=0;
		openb3d_openb3dcore_TGlobal3D_Log_3DS=0;
		openb3d_openb3dcore_TGlobal3D_Log_B3D=0;
		openb3d_openb3dcore_TGlobal3D_Log_MD2=0;
		openb3d_openb3dcore_TGlobal3D_Log_Assimp=0;
		openb3d_openb3dcore_TGlobal3D_Log_OBJ=0;
		openb3d_openb3dcore_TGlobal3D_GL_Version=0.00000000f;
		openb3d_openb3dcore_TGlobal3D_Texture_Loader=1;
		openb3d_openb3dcore_TGlobal3D_Mesh_Loader=1;
		openb3d_openb3dcore_TGlobal3D_Mesh_Flags=-1;
		openb3d_openb3dcore_TGlobal3D_Mesh_Transform=0;
		openb3d_openb3dcore_TGlobal3D_Loader_3DS2=0;
		openb3d_openb3dcore_TGlobal3D_Cubemap_Frame=bbArrayNew1D("i", 12);
		openb3d_openb3dcore_TGlobal3D_Cubemap_Face=bbArrayNew1D("i", 12);
		openb3d_openb3dcore_TGlobal3D_Flip_Cubemap=1;
		openb3d_openb3dcore_TGlobal3D_Texture_Flags=9;
		openb3d_openb3dcore_TGlobal3D_Matrix_3DS=(struct openb3d_openb3dcore_TMatPtr_obj*)((struct openb3d_openb3dcore_TMatPtr_obj*)&bbNullObject);
		openb3d_openb3dcore_TGlobal3D_Matrix_MD2=(struct openb3d_openb3dcore_TMatPtr_obj*)((struct openb3d_openb3dcore_TMatPtr_obj*)&bbNullObject);
		openb3d_openb3dcore_TCamera_cam_list=(struct brl_linkedlist_TList_obj*)brl_linkedlist_CreateList();
		openb3d_openb3dcore_TCamera_projected_x=0;
		openb3d_openb3dcore_TCamera_projected_y=0;
		openb3d_openb3dcore_TCamera_projected_z=0;
		openb3d_openb3dcore_TCamera_cam_list_id=0;
		openb3d_openb3dcore_TEntity_entity_list=(struct brl_linkedlist_TList_obj*)brl_linkedlist_CreateList();
		openb3d_openb3dcore_TEntity_animate_list=(struct brl_linkedlist_TList_obj*)brl_linkedlist_CreateList();
		openb3d_openb3dcore_TEntity_tformed_x=0;
		openb3d_openb3dcore_TEntity_tformed_y=0;
		openb3d_openb3dcore_TEntity_tformed_z=0;
		openb3d_openb3dcore_TEntity_ent_map=(struct brl_map_ptrmap_TPtrMap_obj*)(struct brl_map_ptrmap_TPtrMap_obj*)bbObjectAtomicNew((BBClass *)&brl_map_ptrmap_TPtrMap);
		openb3d_openb3dcore_TEntity_entity_list_id=0;
		openb3d_openb3dcore_TEntity_animate_list_id=0;
		openb3d_openb3dcore_TEntity_child_list_queue=(struct brl_linkedlist_TList_obj*)brl_linkedlist_CreateList();
		openb3d_openb3dcore_TLight_light_no=0;
		openb3d_openb3dcore_TLight_no_lights=0;
		openb3d_openb3dcore_TLight_max_lights=0;
		openb3d_openb3dcore_TLight_gl_light=0;
		openb3d_openb3dcore_TLight_light_list=(struct brl_linkedlist_TList_obj*)brl_linkedlist_CreateList();
		openb3d_openb3dcore_TLight_ambient=bbArrayNew("f", 2, 8, 4);
		openb3d_openb3dcore_TLight_diffuse=bbArrayNew("f", 2, 8, 4);
		openb3d_openb3dcore_TLight_specular=bbArrayNew("f", 2, 8, 4);
		openb3d_openb3dcore_TLight_position=bbArrayNew("f", 2, 8, 4);
		openb3d_openb3dcore_TLight_spotDirection=bbArrayNew("f", 2, 8, 3);
		openb3d_openb3dcore_TLight_spotExponent=bbArrayNew("f", 2, 8, 1);
		openb3d_openb3dcore_TLight_spotCutoff=bbArrayNew("f", 2, 8, 1);
		openb3d_openb3dcore_TLight_constantAtt=bbArrayNew("f", 2, 8, 1);
		openb3d_openb3dcore_TLight_linearAtt=bbArrayNew("f", 2, 8, 1);
		openb3d_openb3dcore_TLight_quadraticAtt=bbArrayNew("f", 2, 8, 1);
		openb3d_openb3dcore_TLight_light_list_id=0;
		openb3d_openb3dcore_TPick_ent_list=(struct brl_linkedlist_TList_obj*)brl_linkedlist_CreateList();
		openb3d_openb3dcore_TPick_picked_x=0;
		openb3d_openb3dcore_TPick_picked_y=0;
		openb3d_openb3dcore_TPick_picked_z=0;
		openb3d_openb3dcore_TPick_picked_nx=0;
		openb3d_openb3dcore_TPick_picked_ny=0;
		openb3d_openb3dcore_TPick_picked_nz=0;
		openb3d_openb3dcore_TPick_picked_time=0;
		openb3d_openb3dcore_TPick_picked_ent=(struct openb3d_openb3dcore_TEntity_obj*)((struct openb3d_openb3dcore_TEntity_obj*)&bbNullObject);
		openb3d_openb3dcore_TPick_picked_surface=(struct openb3d_openb3dcore_TSurface_obj*)((struct openb3d_openb3dcore_TSurface_obj*)&bbNullObject);
		openb3d_openb3dcore_TPick_picked_triangle=0;
		openb3d_openb3dcore_TPick_ent_list_id=0;
		openb3d_openb3dcore_TShadowObject_shadow_list=(struct brl_linkedlist_TList_obj*)brl_linkedlist_CreateList();
		openb3d_openb3dcore_TShadowObject_VolumeLength=0;
		openb3d_openb3dcore_TShadowObject_top_caps=0;
		openb3d_openb3dcore_TShadowObject_parallel=0;
		openb3d_openb3dcore_TShadowObject_light_x=0;
		openb3d_openb3dcore_TShadowObject_light_y=0;
		openb3d_openb3dcore_TShadowObject_light_z=0;
		openb3d_openb3dcore_TShadowObject_midStencilVal=0;
		openb3d_openb3dcore_TShadowObject_ShadowRed=0;
		openb3d_openb3dcore_TShadowObject_ShadowGreen=0;
		openb3d_openb3dcore_TShadowObject_ShadowBlue=0;
		openb3d_openb3dcore_TShadowObject_ShadowAlpha=0;
		openb3d_openb3dcore_TShadowObject_shad_map=(struct brl_map_ptrmap_TPtrMap_obj*)(struct brl_map_ptrmap_TPtrMap_obj*)bbObjectAtomicNew((BBClass *)&brl_map_ptrmap_TPtrMap);
		openb3d_openb3dcore_TShadowObject_shadow_list_id=0;
		openb3d_openb3dcore_TTerrain_terrain_list=(struct brl_linkedlist_TList_obj*)brl_linkedlist_CreateList();
		openb3d_openb3dcore_TTerrain_Roam_Detail=0;
		openb3d_openb3dcore_TTerrain_terrain_list_id=0;
		openb3d_openb3dcore_TTexture_tex_list=(struct brl_linkedlist_TList_obj*)brl_linkedlist_CreateList();
		openb3d_openb3dcore_TTexture_tex_list_all=(struct brl_linkedlist_TList_obj*)brl_linkedlist_CreateList();
		openb3d_openb3dcore_TTexture_is_unique=0;
		openb3d_openb3dcore_TTexture_AnIsoSupport=0;
		openb3d_openb3dcore_TTexture_global_aniso=0;
		openb3d_openb3dcore_TTexture_tex_map=(struct brl_map_ptrmap_TPtrMap_obj*)(struct brl_map_ptrmap_TPtrMap_obj*)bbObjectAtomicNew((BBClass *)&brl_map_ptrmap_TPtrMap);
		openb3d_openb3dcore_TTexture_tex_list_id=0;
		openb3d_openb3dcore_TTexture_tex_list_all_id=0;
		openb3d_openb3dcore_TSurface_surf_map=(struct brl_map_ptrmap_TPtrMap_obj*)(struct brl_map_ptrmap_TPtrMap_obj*)bbObjectAtomicNew((BBClass *)&brl_map_ptrmap_TPtrMap);
		openb3d_openb3dcore_TBrush_brush_list=(struct brl_linkedlist_TList_obj*)brl_linkedlist_CreateList();
		openb3d_openb3dcore_TBrush_brush_map=(struct brl_map_ptrmap_TPtrMap_obj*)(struct brl_map_ptrmap_TPtrMap_obj*)bbObjectAtomicNew((BBClass *)&brl_map_ptrmap_TPtrMap);
		openb3d_openb3dcore_TBrush_brush_list_id=0;
		openb3d_openb3dcore_TShader_shader_map=(struct brl_map_ptrmap_TPtrMap_obj*)(struct brl_map_ptrmap_TPtrMap_obj*)bbObjectAtomicNew((BBClass *)&brl_map_ptrmap_TPtrMap);
		openb3d_openb3dcore_TMatPtr_matptr_map=(struct brl_map_ptrmap_TPtrMap_obj*)(struct brl_map_ptrmap_TPtrMap_obj*)bbObjectAtomicNew((BBClass *)&brl_map_ptrmap_TPtrMap);
		openb3d_openb3dcore_TAnimationKeys_animkeys_map=(struct brl_map_ptrmap_TPtrMap_obj*)(struct brl_map_ptrmap_TPtrMap_obj*)bbObjectAtomicNew((BBClass *)&brl_map_ptrmap_TPtrMap);
		openb3d_openb3dcore_TMesh_plane_list=(struct brl_linkedlist_TList_obj*)brl_linkedlist_CreateList();
		BBFLOAT bbt_[]={-0.525731f,0.000000f,0.850651f,-0.442863f,0.238856f,0.864188f,-0.295242f,0.000000f,0.955423f,-0.309017f,0.500000f,0.809017f,-0.162460f,0.262866f,0.951056f,0.000000f,0.000000f,1.000000f,0.000000f,0.850651f,0.525731f,-0.147621f,0.716567f,0.681718f,0.147621f,0.716567f,0.681718f,0.000000f,0.525731f,0.850651f,0.309017f,0.500000f,0.809017f,0.525731f,0.000000f,0.850651f,0.295242f,0.000000f,0.955423f,0.442863f,0.238856f,0.864188f,0.162460f,0.262866f,0.951056f,-0.681718f,0.147621f,0.716567f,-0.809017f,0.309017f,0.500000f,-0.587785f,0.425325f,0.688191f,-0.850651f,0.525731f,0.000000f,-0.864188f,0.442863f,0.238856f,-0.716567f,0.681718f,0.147621f,-0.688191f,0.587785f,0.425325f,-0.500000f,0.809017f,0.309017f,-0.238856f,0.864188f,0.442863f,-0.425325f,0.688191f,0.587785f,-0.716567f,0.681718f,-0.147621f,-0.500000f,0.809017f,-0.309017f,-0.525731f,0.850651f,0.000000f,0.000000f,0.850651f,-0.525731f,-0.238856f,0.864188f,-0.442863f,0.000000f,0.955423f,-0.295242f,-0.262866f,0.951056f,-0.162460f,0.000000f,1.000000f,0.000000f,0.000000f,0.955423f,0.295242f,-0.262866f,0.951056f,0.162460f,0.238856f,0.864188f,0.442863f,0.262866f,0.951056f,0.162460f,0.500000f,0.809017f,0.309017f,0.238856f,0.864188f,-0.442863f,0.262866f,0.951056f,-0.162460f,0.500000f,0.809017f,-0.309017f,0.850651f,0.525731f,0.000000f,0.716567f,0.681718f,0.147621f,0.716567f,0.681718f,-0.147621f,0.525731f,0.850651f,0.000000f,0.425325f,0.688191f,0.587785f,0.864188f,0.442863f,0.238856f,0.688191f,0.587785f,0.425325f,0.809017f,0.309017f,0.500000f,0.681718f,0.147621f,0.716567f,0.587785f,0.425325f,0.688191f,0.955423f,0.295242f,0.000000f,1.000000f,0.000000f,0.000000f,0.951056f,0.162460f,0.262866f,0.850651f,-0.525731f,0.000000f,0.955423f,-0.295242f,0.000000f,0.864188f,-0.442863f,0.238856f,0.951056f,-0.162460f,0.262866f,0.809017f,-0.309017f,0.500000f,0.681718f,-0.147621f,0.716567f,0.850651f,0.000000f,0.525731f,0.864188f,0.442863f,-0.238856f,0.809017f,0.309017f,-0.500000f,0.951056f,0.162460f,-0.262866f,0.525731f,0.000000f,-0.850651f,0.681718f,0.147621f,-0.716567f,0.681718f,-0.147621f,-0.716567f,0.850651f,0.000000f,-0.525731f,0.809017f,-0.309017f,-0.500000f,0.864188f,-0.442863f,-0.238856f,0.951056f,-0.162460f,-0.262866f,0.147621f,0.716567f,-0.681718f,0.309017f,0.500000f,-0.809017f,0.425325f,0.688191f,-0.587785f,0.442863f,0.238856f,-0.864188f,0.587785f,0.425325f,-0.688191f,0.688191f,0.587785f,-0.425325f,-0.147621f,0.716567f,-0.681718f,-0.309017f,0.500000f,-0.809017f,0.000000f,0.525731f,-0.850651f,-0.525731f,0.000000f,-0.850651f,-0.442863f,0.238856f,-0.864188f,-0.295242f,0.000000f,-0.955423f,-0.162460f,0.262866f,-0.951056f,0.000000f,0.000000f,-1.000000f,0.295242f,0.000000f,-0.955423f,0.162460f,0.262866f,-0.951056f,-0.442863f,-0.238856f,-0.864188f,-0.309017f,-0.500000f,-0.809017f,-0.162460f,-0.262866f,-0.951056f,0.000000f,-0.850651f,-0.525731f,-0.147621f,-0.716567f,-0.681718f,0.147621f,-0.716567f,-0.681718f,0.000000f,-0.525731f,-0.850651f,0.309017f,-0.500000f,-0.809017f,0.442863f,-0.238856f,-0.864188f,0.162460f,-0.262866f,-0.951056f,0.238856f,-0.864188f,-0.442863f,0.500000f,-0.809017f,-0.309017f,0.425325f,-0.688191f,-0.587785f,0.716567f,-0.681718f,-0.147621f,0.688191f,-0.587785f,-0.425325f,0.587785f,-0.425325f,-0.688191f,0.000000f,-0.955423f,-0.295242f,0.000000f,-1.000000f,0.000000f,0.262866f,-0.951056f,-0.162460f,0.000000f,-0.850651f,0.525731f,0.000000f,-0.955423f,0.295242f,0.238856f,-0.864188f,0.442863f,0.262866f,-0.951056f,0.162460f,0.500000f,-0.809017f,0.309017f,0.716567f,-0.681718f,0.147621f,0.525731f,-0.850651f,0.000000f,-0.238856f,-0.864188f,-0.442863f,-0.500000f,-0.809017f,-0.309017f,-0.262866f,-0.951056f,-0.162460f,-0.850651f,-0.525731f,0.000000f,-0.716567f,-0.681718f,-0.147621f,-0.716567f,-0.681718f,0.147621f,-0.525731f,-0.850651f,0.000000f,-0.500000f,-0.809017f,0.309017f,-0.238856f,-0.864188f,0.442863f,-0.262866f,-0.951056f,0.162460f,-0.864188f,-0.442863f,0.238856f,-0.809017f,-0.309017f,0.500000f,-0.688191f,-0.587785f,0.425325f,-0.681718f,-0.147621f,0.716567f,-0.442863f,-0.238856f,0.864188f,-0.587785f,-0.425325f,0.688191f,-0.309017f,-0.500000f,0.809017f,-0.147621f,-0.716567f,0.681718f,-0.425325f,-0.688191f,0.587785f,-0.162460f,-0.262866f,0.951056f,0.442863f,-0.238856f,0.864188f,0.162460f,-0.262866f,0.951056f,0.309017f,-0.500000f,0.809017f,0.147621f,-0.716567f,0.681718f,0.000000f,-0.525731f,0.850651f,0.425325f,-0.688191f,0.587785f,0.587785f,-0.425325f,0.688191f,0.688191f,-0.587785f,0.425325f,-0.955423f,0.295242f,0.000000f,-0.951056f,0.162460f,0.262866f,-1.000000f,0.000000f,0.000000f,-0.850651f,0.000000f,0.525731f,-0.955423f,-0.295242f,0.000000f,-0.951056f,-0.162460f,0.262866f,-0.864188f,0.442863f,-0.238856f,-0.951056f,0.162460f,-0.262866f,-0.809017f,0.309017f,-0.500000f,-0.864188f,-0.442863f,-0.238856f,-0.951056f,-0.162460f,-0.262866f,-0.809017f,-0.309017f,-0.500000f,-0.681718f,0.147621f,-0.716567f,-0.681718f,-0.147621f,-0.716567f,-0.850651f,0.000000f,-0.525731f,-0.688191f,0.587785f,-0.425325f,-0.587785f,0.425325f,-0.688191f,-0.425325f,0.688191f,-0.587785f,-0.425325f,-0.688191f,-0.587785f,-0.587785f,-0.425325f,-0.688191f,-0.688191f,-0.587785f,-0.425325f};
		BBARRAY bbt_2 = bbArrayFromData("f",486,bbt_);
		openb3d_openb3dcore_TMD2_md2_anorms=bbt_2;
		openb3d_openb3dcore_TQuatPtr_quatptr_map=(struct brl_map_ptrmap_TPtrMap_obj*)(struct brl_map_ptrmap_TPtrMap_obj*)bbObjectAtomicNew((BBClass *)&brl_map_ptrmap_TPtrMap);
		openb3d_openb3dcore_TVecPtr_vecptr_map=(struct brl_map_ptrmap_TPtrMap_obj*)(struct brl_map_ptrmap_TPtrMap_obj*)bbObjectAtomicNew((BBClass *)&brl_map_ptrmap_TPtrMap);
		openb3d_openb3dcore_TShaderObject_shaderobject_map=(struct brl_map_ptrmap_TPtrMap_obj*)(struct brl_map_ptrmap_TPtrMap_obj*)bbObjectAtomicNew((BBClass *)&brl_map_ptrmap_TPtrMap);
		openb3d_openb3dcore_TStencil_stencil_map=(struct brl_map_ptrmap_TPtrMap_obj*)(struct brl_map_ptrmap_TPtrMap_obj*)bbObjectAtomicNew((BBClass *)&brl_map_ptrmap_TPtrMap);
		openb3d_openb3dcore_THardwareInfo_ScreenWidth=brl_system_DesktopWidth(0);
		openb3d_openb3dcore_THardwareInfo_ScreenHeight=brl_system_DesktopHeight(0);
		openb3d_openb3dcore_THardwareInfo_ScreenDepth=brl_system_DesktopDepth(0);
		openb3d_openb3dcore_THardwareInfo_ScreenHertz=brl_system_DesktopHertz(0);
		openb3d_openb3dcore_THardwareInfo_Vendor=((BBString*)&bbEmptyString);
		openb3d_openb3dcore_THardwareInfo_Renderer=((BBString*)&bbEmptyString);
		openb3d_openb3dcore_THardwareInfo_OGLVersion=((BBString*)&bbEmptyString);
		openb3d_openb3dcore_THardwareInfo_Extensions=((BBString*)&bbEmptyString);
		openb3d_openb3dcore_THardwareInfo_MaxTextures=0;
		openb3d_openb3dcore_THardwareInfo_MaxTexSize=0;
		openb3d_openb3dcore_THardwareInfo_MaxLights=0;
		openb3d_openb3dcore_THardwareInfo_TexBlendSupport=0;
		openb3d_openb3dcore_THardwareInfo_AnIsoSupport=0;
		openb3d_openb3dcore_THardwareInfo_GLTCSupport=0;
		openb3d_openb3dcore_THardwareInfo_S3TCSupport=0;
		openb3d_openb3dcore_THardwareInfo_MultiTexSupport=0;
		openb3d_openb3dcore_THardwareInfo_CubemapSupport=0;
		openb3d_openb3dcore_THardwareInfo_DepthmapSupport=0;
		openb3d_openb3dcore_THardwareInfo_VPSupport=0;
		openb3d_openb3dcore_THardwareInfo_FPSupport=0;
		openb3d_openb3dcore_THardwareInfo_VBOSupport=0;
		openb3d_openb3dcore_THardwareInfo_ShaderSupport=0;
		openb3d_openb3dcore_THardwareInfo_VSSupport=0;
		openb3d_openb3dcore_THardwareInfo_FSSupport=0;
		openb3d_openb3dcore_THardwareInfo_SLSupport=0;
		openb3d_openb3dcore_THardwareInfo_FBOSupport=0;
		openb3d_openb3dcore_THardwareInfo_DepthStencil=0;
		openb3d_openb3dcore_THardwareInfo_MultisampleSupport=0;
		openb3d_openb3dcore_TAction_action_list=(struct brl_linkedlist_TList_obj*)brl_linkedlist_CreateList();
		openb3d_openb3dcore_TAction_action_map=(struct brl_map_ptrmap_TPtrMap_obj*)(struct brl_map_ptrmap_TPtrMap_obj*)bbObjectAtomicNew((BBClass *)&brl_map_ptrmap_TPtrMap);
		openb3d_openb3dcore_TAction_action_list_id=0;
		openb3d_openb3dcore_TPostFX_postfx_map=(struct brl_map_ptrmap_TPtrMap_obj*)(struct brl_map_ptrmap_TPtrMap_obj*)bbObjectAtomicNew((BBClass *)&brl_map_ptrmap_TPtrMap);
		openb3d_openb3dcore_TTextureFilter_filter_list=(struct brl_linkedlist_TList_obj*)brl_linkedlist_CreateList();
		openb3d_openb3dcore_TB3D_filepath=((BBString*)&bbEmptyString);
		openb3d_openb3dcore_TOBJ_override_texflags=0;
		openb3d_openb3dcore_TOBJ_MeshPath=((BBString*)&bbEmptyString);
		openb3d_openb3dcore_TOBJ_TexturePath=((BBString*)&bbEmptyString);
		openb3d_openb3dcore_TOBJ_MaterialPath=((BBString*)&bbEmptyString);
		struct BBDebugScope_1 __scope = {
			BBDEBUGSCOPE_FUNCTION,
			"openb3dcore",
			{
				{
					BBDEBUGDECL_GLOBAL,
					"mesh_loaders",
					":TMeshLoader",
					.var_address=(void*)&openb3d_openb3dcore_mesh_loaders
				},
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x495c13799fba57b6, 4, 0};
		bbOnDebugEnterStm(&__stmt_0);
		struct BBDebugStm __stmt_1 = {0x495c13799fba57b6, 186, 0};
		bbOnDebugEnterStm(&__stmt_1);
		(struct openb3d_openb3dcore_TMeshLoaderOpenB3D_obj*)bbObjectNew((BBClass *)&openb3d_openb3dcore_TMeshLoaderOpenB3D);
		struct BBDebugStm __stmt_2 = {0x495c13799fba57b6, 188, 0};
		bbOnDebugEnterStm(&__stmt_2);
		(struct openb3d_openb3dcore_TMeshLoaderMax_obj*)bbObjectNew((BBClass *)&openb3d_openb3dcore_TMeshLoaderMax);
		bbOnDebugLeaveScope();
		return 0;
	}
	return 0;
}