#include <database.mod/core.mod/.bmx/core.bmx.debug.win32.x64.h>
struct BBString_2{BBClass_String* clas;BBULONG hash;int length;BBChar buf[2];};
struct BBString_3{BBClass_String* clas;BBULONG hash;int length;BBChar buf[3];};
struct BBString_1{BBClass_String* clas;BBULONG hash;int length;BBChar buf[1];};
struct BBString_30{BBClass_String* clas;BBULONG hash;int length;BBChar buf[30];};
struct BBString_26{BBClass_String* clas;BBULONG hash;int length;BBChar buf[26];};
static struct BBString_2 _s4={
	&bbStringClass,
	0xb3d306f1da4cd9f0,
	2,
	{32,40}
};
static struct BBString_3 _s0={
	&bbStringClass,
	0xbea3f92bcaaf0b1d,
	3,
	{32,58,32}
};
static struct BBString_1 _s6={
	&bbStringClass,
	0x8a44f19b176dda60,
	1,
	{40}
};
static struct BBString_2 _s5={
	&bbStringClass,
	0xf763be77595cfe8d,
	2,
	{41,32}
};
static struct BBString_1 _s7={
	&bbStringClass,
	0x8439ccbd1c202210,
	1,
	{48}
};
static struct BBString_1 _s8={
	&bbStringClass,
	0xfdc4d37c65200cd0,
	1,
	{49}
};
static struct BBString_1 _s9={
	&bbStringClass,
	0x6bd73b99053ed236,
	1,
	{50}
};
static struct BBString_1 _s10={
	&bbStringClass,
	0x8c9b4fbc092099db,
	1,
	{51}
};
static struct BBString_1 _s11={
	&bbStringClass,
	0xfe87825f1bdc84d9,
	1,
	{52}
};
static struct BBString_30 _s3={
	&bbStringClass,
	0xecb6b1a8fc42380f,
	30,
	{67,97,110,110,111,116,32,101,120,101,99,117,116,101,32,101,109
	,112,116,121,32,115,116,97,116,101,109,101,110,116}
};
static struct BBString_30 _s1={
	&bbStringClass,
	0xcad5f072e9cc2281,
	30,
	{67,97,110,110,111,116,32,112,114,101,112,97,114,101,32,101,109
	,112,116,121,32,115,116,97,116,101,109,101,110,116}
};
static struct BBString_26 _s2={
	&bbStringClass,
	0x84467918b4b7e76,
	26,
	{84,104,101,32,99,111,110,110,101,99,116,105,111,110,32,105,115
	,32,110,111,116,32,111,112,101,110}
};
struct BBDebugScope_1{int kind; const char *name; BBDebugDecl decls[2]; };
struct BBDebugScope_12{int kind; const char *name; BBDebugDecl decls[13]; };
struct BBDebugScope_15{int kind; const char *name; BBDebugDecl decls[16]; };
struct BBDebugScope_2{int kind; const char *name; BBDebugDecl decls[3]; };
struct BBDebugScope_22{int kind; const char *name; BBDebugDecl decls[23]; };
struct BBDebugScope_25{int kind; const char *name; BBDebugDecl decls[26]; };
struct BBDebugScope_27{int kind; const char *name; BBDebugDecl decls[28]; };
struct BBDebugScope_28{int kind; const char *name; BBDebugDecl decls[29]; };
struct BBDebugScope_3{int kind; const char *name; BBDebugDecl decls[4]; };
struct BBDebugScope_4{int kind; const char *name; BBDebugDecl decls[5]; };
struct BBDebugScope_5{int kind; const char *name; BBDebugDecl decls[6]; };
struct BBDebugScope_6{int kind; const char *name; BBDebugDecl decls[7]; };
struct BBDebugScope_7{int kind; const char *name; BBDebugDecl decls[8]; };
struct BBDebugScope_8{int kind; const char *name; BBDebugDecl decls[9]; };
struct BBDebugScope_9{int kind; const char *name; BBDebugDecl decls[10]; };
struct database_core_TDatabaseLoader_obj* database_core__loaders=(struct database_core_TDatabaseLoader_obj*)((struct database_core_TDatabaseLoader_obj*)&bbNullObject);
void _database_core_TDatabaseLoader_New(struct database_core_TDatabaseLoader_obj* o) {
	bbObjectCtor((BBOBJECT)o);
	o->clas = &database_core_TDatabaseLoader;
	((struct database_core_TDatabaseLoader_obj*)bbNullObjectTest((BBObject*)o))->_database_core_tdatabaseloader__type = ((BBString*)&bbEmptyString);
	((struct database_core_TDatabaseLoader_obj*)bbNullObjectTest((BBObject*)o))->_database_core_tdatabaseloader__succ = (struct database_core_TDatabaseLoader_obj*)((struct database_core_TDatabaseLoader_obj*)&bbNullObject);
}
struct database_core_TDBConnection_obj* _database_core_TDatabaseLoader_LoadDatabase_SSiSSSS(struct database_core_TDatabaseLoader_obj* o,BBSTRING bbt_dbname,BBSTRING bbt_host,BBINT bbt_port,BBSTRING bbt_user,BBSTRING bbt_password,BBSTRING bbt_server,BBSTRING bbt_options){
	brl_blitz_NullMethodError();
	return (struct database_core_TDBConnection_obj*)((struct database_core_TDBConnection_obj*)&bbNullObject);
}
struct BBDebugScope_3 database_core_TDatabaseLoader_scope ={
	BBDEBUGSCOPE_USERTYPE,
	"TDatabaseLoader",
	{
		{
			BBDEBUGDECL_FIELD,
			"_type",
			"$",
			.field_offset=offsetof(struct database_core_TDatabaseLoader_obj,_database_core_tdatabaseloader__type)
		},
		{
			BBDEBUGDECL_FIELD,
			"_succ",
			":TDatabaseLoader",
			.field_offset=offsetof(struct database_core_TDatabaseLoader_obj,_database_core_tdatabaseloader__succ)
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"New",
			"()",
			.func_ptr=(BBFuncPtr)&_database_core_TDatabaseLoader_New
		},
		{
			BBDEBUGDECL_END
		}
	}
};
struct BBClass_database_core_TDatabaseLoader database_core_TDatabaseLoader={
	&bbObjectClass,
	bbObjectFree,
	(BBDebugScope*)&database_core_TDatabaseLoader_scope,
	sizeof(struct database_core_TDatabaseLoader_obj),
	(void (*)(BBOBJECT))_database_core_TDatabaseLoader_New,
	bbObjectDtor,
	bbObjectToString,
	bbObjectCompare,
	bbObjectSendMessage,
	0,
	0,
	offsetof(struct database_core_TDatabaseLoader_obj,_database_core_tdatabaseloader__succ) - offsetof(struct database_core_TDatabaseLoader_obj,_database_core_tdatabaseloader__type) + sizeof(struct database_core_TDatabaseLoader_obj*)
	,0
	,offsetof(struct database_core_TDatabaseLoader_obj,_database_core_tdatabaseloader__type)
	,_database_core_TDatabaseLoader_LoadDatabase_SSiSSSS
};

void _database_core_TDBConnection_New(struct database_core_TDBConnection_obj* o) {
	bbObjectCtor((BBOBJECT)o);
	o->clas = &database_core_TDBConnection;
	((struct database_core_TDBConnection_obj*)bbNullObjectTest((BBObject*)o))->_database_core_tdbconnection_handle = 0;
	((struct database_core_TDBConnection_obj*)bbNullObjectTest((BBObject*)o))->_database_core_tdbconnection__dbname = ((BBString*)&bbEmptyString);
	((struct database_core_TDBConnection_obj*)bbNullObjectTest((BBObject*)o))->_database_core_tdbconnection__host = ((BBString*)&bbEmptyString);
	((struct database_core_TDBConnection_obj*)bbNullObjectTest((BBObject*)o))->_database_core_tdbconnection__port = 0;
	((struct database_core_TDBConnection_obj*)bbNullObjectTest((BBObject*)o))->_database_core_tdbconnection__user = ((BBString*)&bbEmptyString);
	((struct database_core_TDBConnection_obj*)bbNullObjectTest((BBObject*)o))->_database_core_tdbconnection__password = ((BBString*)&bbEmptyString);
	((struct database_core_TDBConnection_obj*)bbNullObjectTest((BBObject*)o))->_database_core_tdbconnection__options = ((BBString*)&bbEmptyString);
	((struct database_core_TDBConnection_obj*)bbNullObjectTest((BBObject*)o))->_database_core_tdbconnection__server = ((BBString*)&bbEmptyString);
	((struct database_core_TDBConnection_obj*)bbNullObjectTest((BBObject*)o))->_database_core_tdbconnection__isopen = 0;
	((struct database_core_TDBConnection_obj*)bbNullObjectTest((BBObject*)o))->_database_core_tdbconnection__lasterror = (struct database_core_TDatabaseError_obj*)((struct database_core_TDatabaseError_obj*)&bbNullObject);
}
void _database_core_TDBConnection_Delete(struct database_core_TDBConnection_obj* o) {
	struct BBDebugScope_1 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"Delete",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TDBConnection",
				.var_address=&o
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x2ffeec19d53a3c22, 290, 0};
	bbOnDebugEnterStm(&__stmt_0);
	((struct database_core_TDBConnection_obj*)bbNullObjectTest((BBObject*)o));
	((struct database_core_TDBConnection_obj*)o)->clas->m_free((struct database_core_TDBConnection_obj*)o);
	bbOnDebugLeaveScope();
	BBRELEASE(((struct database_core_TDBConnection_obj*)bbNullObjectTest((BBObject*)o))->_database_core_tdbconnection__dbname )
	BBRELEASE(((struct database_core_TDBConnection_obj*)bbNullObjectTest((BBObject*)o))->_database_core_tdbconnection__host )
	BBRELEASE(((struct database_core_TDBConnection_obj*)bbNullObjectTest((BBObject*)o))->_database_core_tdbconnection__user )
	BBRELEASE(((struct database_core_TDBConnection_obj*)bbNullObjectTest((BBObject*)o))->_database_core_tdbconnection__password )
	BBRELEASE(((struct database_core_TDBConnection_obj*)bbNullObjectTest((BBObject*)o))->_database_core_tdbconnection__options )
	BBRELEASE(((struct database_core_TDBConnection_obj*)bbNullObjectTest((BBObject*)o))->_database_core_tdbconnection__server )
	bbObjectDtor((BBOBJECT)o);
}
struct database_core_TDBConnection_obj* database_core_TDBConnection_Create_TTDBConnection_SSiSSSS(BBSTRING bbt_dbname,BBSTRING bbt_host,BBINT bbt_port,BBSTRING bbt_user,BBSTRING bbt_password,BBSTRING bbt_server,BBSTRING bbt_options){
	brl_blitz_NullMethodError();
	return (struct database_core_TDBConnection_obj*)((struct database_core_TDBConnection_obj*)&bbNullObject);
}
void _database_core_TDBConnection_Init_SSiSSSS(struct database_core_TDBConnection_obj* o,BBSTRING bbt_dbname,BBSTRING bbt_host,BBINT bbt_port,BBSTRING bbt_user,BBSTRING bbt_password,BBSTRING bbt_server,BBSTRING bbt_options){
	((struct database_core_TDBConnection_obj*)bbNullObjectTest((BBObject*)o));
	struct BBDebugScope_8 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"Init",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TDBConnection",
				.var_address=&o
			},
			{
				BBDEBUGDECL_LOCAL,
				"dbname",
				"$",
				.var_address=&bbt_dbname
			},
			{
				BBDEBUGDECL_LOCAL,
				"host",
				"$",
				.var_address=&bbt_host
			},
			{
				BBDEBUGDECL_LOCAL,
				"port",
				"i",
				.var_address=&bbt_port
			},
			{
				BBDEBUGDECL_LOCAL,
				"user",
				"$",
				.var_address=&bbt_user
			},
			{
				BBDEBUGDECL_LOCAL,
				"password",
				"$",
				.var_address=&bbt_password
			},
			{
				BBDEBUGDECL_LOCAL,
				"server",
				"$",
				.var_address=&bbt_server
			},
			{
				BBDEBUGDECL_LOCAL,
				"options",
				"$",
				.var_address=&bbt_options
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x2ffeec19d53a3c22, 104, 0};
	bbOnDebugEnterStm(&__stmt_0);
	((struct database_core_TDBConnection_obj*)bbNullObjectTest((BBObject*)o))->_database_core_tdbconnection__dbname =bbt_dbname;
	struct BBDebugStm __stmt_1 = {0x2ffeec19d53a3c22, 105, 0};
	bbOnDebugEnterStm(&__stmt_1);
	((struct database_core_TDBConnection_obj*)bbNullObjectTest((BBObject*)o))->_database_core_tdbconnection__host =bbt_host;
	struct BBDebugStm __stmt_2 = {0x2ffeec19d53a3c22, 106, 0};
	bbOnDebugEnterStm(&__stmt_2);
	((struct database_core_TDBConnection_obj*)bbNullObjectTest((BBObject*)o))->_database_core_tdbconnection__port =bbt_port;
	struct BBDebugStm __stmt_3 = {0x2ffeec19d53a3c22, 107, 0};
	bbOnDebugEnterStm(&__stmt_3);
	((struct database_core_TDBConnection_obj*)bbNullObjectTest((BBObject*)o))->_database_core_tdbconnection__user =bbt_user;
	struct BBDebugStm __stmt_4 = {0x2ffeec19d53a3c22, 108, 0};
	bbOnDebugEnterStm(&__stmt_4);
	((struct database_core_TDBConnection_obj*)bbNullObjectTest((BBObject*)o))->_database_core_tdbconnection__password =bbt_password;
	struct BBDebugStm __stmt_5 = {0x2ffeec19d53a3c22, 109, 0};
	bbOnDebugEnterStm(&__stmt_5);
	((struct database_core_TDBConnection_obj*)bbNullObjectTest((BBObject*)o))->_database_core_tdbconnection__options =bbt_options;
	struct BBDebugStm __stmt_6 = {0x2ffeec19d53a3c22, 110, 0};
	bbOnDebugEnterStm(&__stmt_6);
	((struct database_core_TDBConnection_obj*)bbNullObjectTest((BBObject*)o))->_database_core_tdbconnection__server =bbt_server;
	bbOnDebugLeaveScope();
}
void _database_core_TDBConnection_close(struct database_core_TDBConnection_obj* o){
	brl_blitz_NullMethodError();
}
BBINT _database_core_TDBConnection_commit(struct database_core_TDBConnection_obj* o){
	brl_blitz_NullMethodError();
	return 0;
}
BBARRAY _database_core_TDBConnection_getTables(struct database_core_TDBConnection_obj* o){
	brl_blitz_NullMethodError();
	return (&bbEmptyArray);
}
struct database_core_TDBTable_obj* _database_core_TDBConnection_getTableInfo_Si(struct database_core_TDBConnection_obj* o,BBSTRING bbt_tableName,BBINT bbt_withDDL){
	brl_blitz_NullMethodError();
	return (struct database_core_TDBTable_obj*)((struct database_core_TDBTable_obj*)&bbNullObject);
}
BBINT _database_core_TDBConnection_open_SS(struct database_core_TDBConnection_obj* o,BBSTRING bbt_user,BBSTRING bbt_pass){
	brl_blitz_NullMethodError();
	return 0;
}
BBINT _database_core_TDBConnection_rollback(struct database_core_TDBConnection_obj* o){
	brl_blitz_NullMethodError();
	return 0;
}
BBINT _database_core_TDBConnection_startTransaction(struct database_core_TDBConnection_obj* o){
	brl_blitz_NullMethodError();
	return 0;
}
struct database_core_TDatabaseQuery_obj* _database_core_TDBConnection_executeQuery_S(struct database_core_TDBConnection_obj* o,BBSTRING bbt_sql){
	((struct database_core_TDBConnection_obj*)bbNullObjectTest((BBObject*)o));
	struct database_core_TDatabaseQuery_obj* bbt_query=(struct database_core_TDatabaseQuery_obj*)((struct database_core_TDatabaseQuery_obj*)&bbNullObject);
	struct BBDebugScope_3 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"executeQuery",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TDBConnection",
				.var_address=&o
			},
			{
				BBDEBUGDECL_LOCAL,
				"sql",
				"$",
				.var_address=&bbt_sql
			},
			{
				BBDEBUGDECL_LOCAL,
				"query",
				":TDatabaseQuery",
				.var_address=&bbt_query
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x2ffeec19d53a3c22, 167, 0};
	bbOnDebugEnterStm(&__stmt_0);
	((struct database_core_TDBConnection_obj*)bbNullObjectTest((BBObject*)o));
	((struct database_core_TDBConnection_obj*)o)->clas->m_resetError((struct database_core_TDBConnection_obj*)o);
	struct BBDebugStm __stmt_1 = {0x2ffeec19d53a3c22, 169, 0};
	bbOnDebugEnterStm(&__stmt_1);
	bbt_query=(struct database_core_TDatabaseQuery_obj*)database_core_TDatabaseQuery_Create_TTDatabaseQuery_TTDBConnection((struct database_core_TDBConnection_obj*)o);
	struct BBDebugStm __stmt_2 = {0x2ffeec19d53a3c22, 171, 0};
	bbOnDebugEnterStm(&__stmt_2);
	if((bbt_sql!= &bbEmptyString) && ((bbt_sql->length)>0)){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x2ffeec19d53a3c22, 172, 0};
		bbOnDebugEnterStm(&__stmt_0);
		if(((struct database_core_TDatabaseQuery_obj*)bbNullObjectTest((BBObject*)bbt_query))->clas->m_execute_S((struct database_core_TDatabaseQuery_obj*)bbt_query,bbt_sql)!=0){
			struct BBDebugScope __scope = {
				BBDEBUGSCOPE_LOCALBLOCK,
				0,
				{
					{
						BBDEBUGDECL_END
					}
				}
			};
			bbOnDebugEnterScope((BBDebugScope *)&__scope);
			struct BBDebugStm __stmt_0 = {0x2ffeec19d53a3c22, 174, 0};
			bbOnDebugEnterStm(&__stmt_0);
			((struct database_core_TDBConnection_obj*)bbNullObjectTest((BBObject*)o));
			((struct database_core_TDBConnection_obj*)o)->clas->m_resetError((struct database_core_TDBConnection_obj*)o);
			bbOnDebugLeaveScope();
		}
		bbOnDebugLeaveScope();
	}
	struct BBDebugStm __stmt_3 = {0x2ffeec19d53a3c22, 178, 0};
	bbOnDebugEnterStm(&__stmt_3);
	bbOnDebugLeaveScope();
	return (struct database_core_TDatabaseQuery_obj*)bbt_query;
}
BBINT _database_core_TDBConnection_isOpen(struct database_core_TDBConnection_obj* o){
	((struct database_core_TDBConnection_obj*)bbNullObjectTest((BBObject*)o));
	struct BBDebugScope_1 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"isOpen",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TDBConnection",
				.var_address=&o
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x2ffeec19d53a3c22, 186, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbOnDebugLeaveScope();
	return ((struct database_core_TDBConnection_obj*)bbNullObjectTest((BBObject*)o))->_database_core_tdbconnection__isopen ;
}
BBSTRING _database_core_TDBConnection_getDatabaseName(struct database_core_TDBConnection_obj* o){
	((struct database_core_TDBConnection_obj*)bbNullObjectTest((BBObject*)o));
	struct BBDebugScope_1 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"getDatabaseName",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TDBConnection",
				.var_address=&o
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x2ffeec19d53a3c22, 194, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbOnDebugLeaveScope();
	return ((struct database_core_TDBConnection_obj*)bbNullObjectTest((BBObject*)o))->_database_core_tdbconnection__dbname ;
}
BBSTRING _database_core_TDBConnection_getHost(struct database_core_TDBConnection_obj* o){
	((struct database_core_TDBConnection_obj*)bbNullObjectTest((BBObject*)o));
	struct BBDebugScope_1 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"getHost",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TDBConnection",
				.var_address=&o
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x2ffeec19d53a3c22, 203, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbOnDebugLeaveScope();
	return ((struct database_core_TDBConnection_obj*)bbNullObjectTest((BBObject*)o))->_database_core_tdbconnection__dbname ;
}
BBINT _database_core_TDBConnection_getPortNumber(struct database_core_TDBConnection_obj* o){
	((struct database_core_TDBConnection_obj*)bbNullObjectTest((BBObject*)o));
	struct BBDebugScope_1 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"getPortNumber",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TDBConnection",
				.var_address=&o
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x2ffeec19d53a3c22, 212, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbOnDebugLeaveScope();
	return ((struct database_core_TDBConnection_obj*)bbNullObjectTest((BBObject*)o))->_database_core_tdbconnection__port ;
}
struct database_core_TDatabaseError_obj* _database_core_TDBConnection_error(struct database_core_TDBConnection_obj* o){
	((struct database_core_TDBConnection_obj*)bbNullObjectTest((BBObject*)o));
	struct BBDebugScope_1 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"error",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TDBConnection",
				.var_address=&o
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x2ffeec19d53a3c22, 221, 0};
	bbOnDebugEnterStm(&__stmt_0);
	if(!(((BBObject*)((struct database_core_TDBConnection_obj*)bbNullObjectTest((BBObject*)o))->_database_core_tdbconnection__lasterror )!= &bbNullObject)){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x2ffeec19d53a3c22, 222, 0};
		bbOnDebugEnterStm(&__stmt_0);
		((struct database_core_TDBConnection_obj*)bbNullObjectTest((BBObject*)o))->_database_core_tdbconnection__lasterror =(struct database_core_TDatabaseError_obj*)(struct database_core_TDatabaseError_obj*)bbObjectNew((BBClass *)&database_core_TDatabaseError);
		bbOnDebugLeaveScope();
	}
	struct BBDebugStm __stmt_1 = {0x2ffeec19d53a3c22, 225, 0};
	bbOnDebugEnterStm(&__stmt_1);
	bbOnDebugLeaveScope();
	return (struct database_core_TDatabaseError_obj*)((struct database_core_TDBConnection_obj*)bbNullObjectTest((BBObject*)o))->_database_core_tdbconnection__lasterror ;
}
void _database_core_TDBConnection_resetError(struct database_core_TDBConnection_obj* o){
	((struct database_core_TDBConnection_obj*)bbNullObjectTest((BBObject*)o));
	struct BBDebugScope_1 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"resetError",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TDBConnection",
				.var_address=&o
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x2ffeec19d53a3c22, 232, 0};
	bbOnDebugEnterStm(&__stmt_0);
	if(((BBObject*)((struct database_core_TDBConnection_obj*)bbNullObjectTest((BBObject*)o))->_database_core_tdbconnection__lasterror )!= &bbNullObject){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x2ffeec19d53a3c22, 233, 0};
		bbOnDebugEnterStm(&__stmt_0);
		((struct database_core_TDatabaseError_obj*)bbNullObjectTest((BBObject*)((struct database_core_TDBConnection_obj*)bbNullObjectTest((BBObject*)o))->_database_core_tdbconnection__lasterror ))->clas->m_reset((struct database_core_TDatabaseError_obj*)((struct database_core_TDBConnection_obj*)bbNullObjectTest((BBObject*)o))->_database_core_tdbconnection__lasterror );
		bbOnDebugLeaveScope();
	}
	bbOnDebugLeaveScope();
}
BBINT _database_core_TDBConnection_hasError(struct database_core_TDBConnection_obj* o){
	((struct database_core_TDBConnection_obj*)bbNullObjectTest((BBObject*)o));
	struct BBDebugScope_1 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"hasError",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TDBConnection",
				.var_address=&o
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x2ffeec19d53a3c22, 243, 0};
	bbOnDebugEnterStm(&__stmt_0);
	if(((BBObject*)((struct database_core_TDBConnection_obj*)bbNullObjectTest((BBObject*)o))->_database_core_tdbconnection__lasterror )!= &bbNullObject){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x2ffeec19d53a3c22, 244, 0};
		bbOnDebugEnterStm(&__stmt_0);
		bbOnDebugLeaveScope();
		bbOnDebugLeaveScope();
		return ((struct database_core_TDatabaseError_obj*)bbNullObjectTest((BBObject*)((struct database_core_TDBConnection_obj*)bbNullObjectTest((BBObject*)o))->_database_core_tdbconnection__lasterror ))->clas->m_isSet((struct database_core_TDatabaseError_obj*)((struct database_core_TDBConnection_obj*)bbNullObjectTest((BBObject*)o))->_database_core_tdbconnection__lasterror );
	}
	struct BBDebugStm __stmt_1 = {0x2ffeec19d53a3c22, 247, 0};
	bbOnDebugEnterStm(&__stmt_1);
	bbOnDebugLeaveScope();
	return 0;
}
void _database_core_TDBConnection_setError_SSii(struct database_core_TDBConnection_obj* o,BBSTRING bbt_error,BBSTRING bbt_append,BBINT bbt_eType,BBINT bbt_errorValue){
	((struct database_core_TDBConnection_obj*)bbNullObjectTest((BBObject*)o));
	struct BBDebugScope_5 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"setError",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TDBConnection",
				.var_address=&o
			},
			{
				BBDEBUGDECL_LOCAL,
				"error",
				"$",
				.var_address=&bbt_error
			},
			{
				BBDEBUGDECL_LOCAL,
				"append",
				"$",
				.var_address=&bbt_append
			},
			{
				BBDEBUGDECL_LOCAL,
				"eType",
				"i",
				.var_address=&bbt_eType
			},
			{
				BBDEBUGDECL_LOCAL,
				"errorValue",
				"i",
				.var_address=&bbt_errorValue
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x2ffeec19d53a3c22, 251, 0};
	bbOnDebugEnterStm(&__stmt_0);
	if(!(((BBObject*)((struct database_core_TDBConnection_obj*)bbNullObjectTest((BBObject*)o))->_database_core_tdbconnection__lasterror )!= &bbNullObject)){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x2ffeec19d53a3c22, 252, 0};
		bbOnDebugEnterStm(&__stmt_0);
		((struct database_core_TDBConnection_obj*)bbNullObjectTest((BBObject*)o))->_database_core_tdbconnection__lasterror =(struct database_core_TDatabaseError_obj*)database_core_TDatabaseError_Create_TTDatabaseError_TTDBConnectionSSii((struct database_core_TDBConnection_obj*)o,bbt_error,bbt_append,bbt_eType,bbt_errorValue);
		bbOnDebugLeaveScope();
	}else{
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x2ffeec19d53a3c22, 254, 0};
		bbOnDebugEnterStm(&__stmt_0);
		((struct database_core_TDatabaseError_obj*)bbNullObjectTest((BBObject*)((struct database_core_TDBConnection_obj*)bbNullObjectTest((BBObject*)o))->_database_core_tdbconnection__lasterror ))->_database_core_tdatabaseerror_error =bbt_error;
		struct BBDebugStm __stmt_1 = {0x2ffeec19d53a3c22, 256, 0};
		bbOnDebugEnterStm(&__stmt_1);
		if(bbt_append!= &bbEmptyString){
			struct BBDebugScope __scope = {
				BBDEBUGSCOPE_LOCALBLOCK,
				0,
				{
					{
						BBDEBUGDECL_END
					}
				}
			};
			bbOnDebugEnterScope((BBDebugScope *)&__scope);
			struct BBDebugStm __stmt_0 = {0x2ffeec19d53a3c22, 257, 0};
			bbOnDebugEnterStm(&__stmt_0);
			((struct database_core_TDatabaseError_obj*)bbNullObjectTest((BBObject*)((struct database_core_TDBConnection_obj*)bbNullObjectTest((BBObject*)o))->_database_core_tdbconnection__lasterror ))->_database_core_tdatabaseerror_error =bbStringConcat(((struct database_core_TDatabaseError_obj*)bbNullObjectTest((BBObject*)((struct database_core_TDBConnection_obj*)bbNullObjectTest((BBObject*)o))->_database_core_tdbconnection__lasterror ))->_database_core_tdatabaseerror_error ,(bbStringConcat(((BBString*)&_s0),bbt_append)));
			bbOnDebugLeaveScope();
		}
		struct BBDebugStm __stmt_2 = {0x2ffeec19d53a3c22, 260, 0};
		bbOnDebugEnterStm(&__stmt_2);
		((struct database_core_TDatabaseError_obj*)bbNullObjectTest((BBObject*)((struct database_core_TDBConnection_obj*)bbNullObjectTest((BBObject*)o))->_database_core_tdbconnection__lasterror ))->_database_core_tdatabaseerror_errorvalue =bbt_errorValue;
		struct BBDebugStm __stmt_3 = {0x2ffeec19d53a3c22, 261, 0};
		bbOnDebugEnterStm(&__stmt_3);
		((struct database_core_TDatabaseError_obj*)bbNullObjectTest((BBObject*)((struct database_core_TDBConnection_obj*)bbNullObjectTest((BBObject*)o))->_database_core_tdbconnection__lasterror ))->_database_core_tdatabaseerror_errortype =bbt_eType;
		bbOnDebugLeaveScope();
	}
	bbOnDebugLeaveScope();
}
BBBYTE* _database_core_TDBConnection_databaseHandle(struct database_core_TDBConnection_obj* o){
	brl_blitz_NullMethodError();
	return 0;
}
struct database_core_TQueryResultSet_obj* _database_core_TDBConnection_createResultSet(struct database_core_TDBConnection_obj* o){
	brl_blitz_NullMethodError();
	return (struct database_core_TQueryResultSet_obj*)((struct database_core_TQueryResultSet_obj*)&bbNullObject);
}
BBSTRING _database_core_TDBConnection_nativeErrorMessage_i(struct database_core_TDBConnection_obj* o,BBINT bbt_err){
	brl_blitz_NullMethodError();
	return ((BBString*)&bbEmptyString);
}
BBINT _database_core_TDBConnection_hasPrepareSupport(struct database_core_TDBConnection_obj* o){
	brl_blitz_NullMethodError();
	return 0;
}
BBINT _database_core_TDBConnection_hasTransactionSupport(struct database_core_TDBConnection_obj* o){
	brl_blitz_NullMethodError();
	return 0;
}
void _database_core_TDBConnection_free(struct database_core_TDBConnection_obj* o){
	((struct database_core_TDBConnection_obj*)bbNullObjectTest((BBObject*)o));
	struct BBDebugScope_1 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"free",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TDBConnection",
				.var_address=&o
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x2ffeec19d53a3c22, 284, 0};
	bbOnDebugEnterStm(&__stmt_0);
	if(((BBObject*)((struct database_core_TDBConnection_obj*)bbNullObjectTest((BBObject*)o))->_database_core_tdbconnection__lasterror )!= &bbNullObject){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x2ffeec19d53a3c22, 285, 0};
		bbOnDebugEnterStm(&__stmt_0);
		((struct database_core_TDBConnection_obj*)bbNullObjectTest((BBObject*)o))->_database_core_tdbconnection__lasterror =(struct database_core_TDatabaseError_obj*)&bbNullObject;
		bbOnDebugLeaveScope();
	}
	bbOnDebugLeaveScope();
}
struct BBDebugScope_22 database_core_TDBConnection_scope ={
	BBDEBUGSCOPE_USERTYPE,
	"TDBConnection",
	{
		{
			BBDEBUGDECL_FIELD,
			"handle",
			"*b",
			.field_offset=offsetof(struct database_core_TDBConnection_obj,_database_core_tdbconnection_handle)
		},
		{
			BBDEBUGDECL_FIELD,
			"_dbname",
			"$",
			.field_offset=offsetof(struct database_core_TDBConnection_obj,_database_core_tdbconnection__dbname)
		},
		{
			BBDEBUGDECL_FIELD,
			"_host",
			"$",
			.field_offset=offsetof(struct database_core_TDBConnection_obj,_database_core_tdbconnection__host)
		},
		{
			BBDEBUGDECL_FIELD,
			"_port",
			"i",
			.field_offset=offsetof(struct database_core_TDBConnection_obj,_database_core_tdbconnection__port)
		},
		{
			BBDEBUGDECL_FIELD,
			"_user",
			"$",
			.field_offset=offsetof(struct database_core_TDBConnection_obj,_database_core_tdbconnection__user)
		},
		{
			BBDEBUGDECL_FIELD,
			"_password",
			"$",
			.field_offset=offsetof(struct database_core_TDBConnection_obj,_database_core_tdbconnection__password)
		},
		{
			BBDEBUGDECL_FIELD,
			"_options",
			"$",
			.field_offset=offsetof(struct database_core_TDBConnection_obj,_database_core_tdbconnection__options)
		},
		{
			BBDEBUGDECL_FIELD,
			"_server",
			"$",
			.field_offset=offsetof(struct database_core_TDBConnection_obj,_database_core_tdbconnection__server)
		},
		{
			BBDEBUGDECL_FIELD,
			"_isOpen",
			"i",
			.field_offset=offsetof(struct database_core_TDBConnection_obj,_database_core_tdbconnection__isopen)
		},
		{
			BBDEBUGDECL_FIELD,
			"_lastError",
			":TDatabaseError",
			.field_offset=offsetof(struct database_core_TDBConnection_obj,_database_core_tdbconnection__lasterror)
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"New",
			"()",
			.func_ptr=(BBFuncPtr)&_database_core_TDBConnection_New
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"Init",
			"($,$,i,$,$,$,$)",
			.func_ptr=(BBFuncPtr)&_database_core_TDBConnection_Init_SSiSSSS
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"executeQuery",
			"($):TDatabaseQuery",
			.func_ptr=(BBFuncPtr)&_database_core_TDBConnection_executeQuery_S
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"isOpen",
			"()i",
			.func_ptr=(BBFuncPtr)&_database_core_TDBConnection_isOpen
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"getDatabaseName",
			"()$",
			.func_ptr=(BBFuncPtr)&_database_core_TDBConnection_getDatabaseName
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"getHost",
			"()$",
			.func_ptr=(BBFuncPtr)&_database_core_TDBConnection_getHost
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"getPortNumber",
			"()i",
			.func_ptr=(BBFuncPtr)&_database_core_TDBConnection_getPortNumber
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"error",
			"():TDatabaseError",
			.func_ptr=(BBFuncPtr)&_database_core_TDBConnection_error
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"resetError",
			"()",
			.func_ptr=(BBFuncPtr)&_database_core_TDBConnection_resetError
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"hasError",
			"()i",
			.func_ptr=(BBFuncPtr)&_database_core_TDBConnection_hasError
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"setError",
			"($,$,i,i)",
			.func_ptr=(BBFuncPtr)&_database_core_TDBConnection_setError_SSii
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"free",
			"()",
			.func_ptr=(BBFuncPtr)&_database_core_TDBConnection_free
		},
		{
			BBDEBUGDECL_END
		}
	}
};
struct BBClass_database_core_TDBConnection database_core_TDBConnection={
	&bbObjectClass,
	bbObjectFree,
	(BBDebugScope*)&database_core_TDBConnection_scope,
	sizeof(struct database_core_TDBConnection_obj),
	(void (*)(BBOBJECT))_database_core_TDBConnection_New,
	(void (*)(BBOBJECT))_database_core_TDBConnection_Delete,
	bbObjectToString,
	bbObjectCompare,
	bbObjectSendMessage,
	0,
	0,
	offsetof(struct database_core_TDBConnection_obj,_database_core_tdbconnection__lasterror) - offsetof(struct database_core_TDBConnection_obj,_database_core_tdbconnection_handle) + sizeof(struct database_core_TDatabaseError_obj*)
	,0
	,offsetof(struct database_core_TDBConnection_obj,_database_core_tdbconnection_handle)
	,database_core_TDBConnection_Create_TTDBConnection_SSiSSSS
	,_database_core_TDBConnection_Init_SSiSSSS
	,_database_core_TDBConnection_close
	,_database_core_TDBConnection_commit
	,_database_core_TDBConnection_getTables
	,_database_core_TDBConnection_getTableInfo_Si
	,_database_core_TDBConnection_open_SS
	,_database_core_TDBConnection_rollback
	,_database_core_TDBConnection_startTransaction
	,_database_core_TDBConnection_executeQuery_S
	,_database_core_TDBConnection_isOpen
	,_database_core_TDBConnection_getDatabaseName
	,_database_core_TDBConnection_getHost
	,_database_core_TDBConnection_getPortNumber
	,_database_core_TDBConnection_error
	,_database_core_TDBConnection_resetError
	,_database_core_TDBConnection_hasError
	,_database_core_TDBConnection_setError_SSii
	,_database_core_TDBConnection_databaseHandle
	,_database_core_TDBConnection_createResultSet
	,_database_core_TDBConnection_nativeErrorMessage_i
	,_database_core_TDBConnection_hasPrepareSupport
	,_database_core_TDBConnection_hasTransactionSupport
	,_database_core_TDBConnection_free
};

void _database_core_TDatabaseQuery_New(struct database_core_TDatabaseQuery_obj* o) {
	bbObjectCtor((BBOBJECT)o);
	o->clas = &database_core_TDatabaseQuery;
	((struct database_core_TDatabaseQuery_obj*)bbNullObjectTest((BBObject*)o))->_database_core_tdatabasequery_conn = (struct database_core_TDBConnection_obj*)((struct database_core_TDBConnection_obj*)&bbNullObject);
	((struct database_core_TDatabaseQuery_obj*)bbNullObjectTest((BBObject*)o))->_database_core_tdatabasequery_resultset = (struct database_core_TQueryResultSet_obj*)((struct database_core_TQueryResultSet_obj*)&bbNullObject);
}
void _database_core_TDatabaseQuery_Delete(struct database_core_TDatabaseQuery_obj* o) {
	struct BBDebugScope_1 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"Delete",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TDatabaseQuery",
				.var_address=&o
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x2ffeec19d53a3c22, 654, 0};
	bbOnDebugEnterStm(&__stmt_0);
	((struct database_core_TDatabaseQuery_obj*)bbNullObjectTest((BBObject*)o));
	((struct database_core_TDatabaseQuery_obj*)o)->clas->m_free((struct database_core_TDatabaseQuery_obj*)o);
	bbOnDebugLeaveScope();
	bbObjectDtor((BBOBJECT)o);
}
struct database_core_TDatabaseQuery_obj* database_core_TDatabaseQuery_Create_TTDatabaseQuery_TTDBConnection(struct database_core_TDBConnection_obj* bbt_connection){
	struct database_core_TDatabaseQuery_obj* bbt_this=(struct database_core_TDatabaseQuery_obj*)((struct database_core_TDatabaseQuery_obj*)&bbNullObject);
	struct BBDebugScope_2 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"Create",
		{
			{
				BBDEBUGDECL_LOCAL,
				"connection",
				":TDBConnection",
				.var_address=&bbt_connection
			},
			{
				BBDEBUGDECL_LOCAL,
				"this",
				":TDatabaseQuery",
				.var_address=&bbt_this
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x2ffeec19d53a3c22, 310, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbt_this=(struct database_core_TDatabaseQuery_obj*)(struct database_core_TDatabaseQuery_obj*)bbObjectNew((BBClass *)&database_core_TDatabaseQuery);
	struct BBDebugStm __stmt_1 = {0x2ffeec19d53a3c22, 312, 0};
	bbOnDebugEnterStm(&__stmt_1);
	((struct database_core_TDatabaseQuery_obj*)bbNullObjectTest((BBObject*)bbt_this))->_database_core_tdatabasequery_conn =(struct database_core_TDBConnection_obj*)bbt_connection;
	struct BBDebugStm __stmt_2 = {0x2ffeec19d53a3c22, 314, 0};
	bbOnDebugEnterStm(&__stmt_2);
	bbOnDebugLeaveScope();
	return (struct database_core_TDatabaseQuery_obj*)bbt_this;
}
BBINT _database_core_TDatabaseQuery_prepare_S(struct database_core_TDatabaseQuery_obj* o,BBSTRING bbt_statement){
	((struct database_core_TDatabaseQuery_obj*)bbNullObjectTest((BBObject*)o));
	struct BBDebugScope_2 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"prepare",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TDatabaseQuery",
				.var_address=&o
			},
			{
				BBDEBUGDECL_LOCAL,
				"statement",
				"$",
				.var_address=&bbt_statement
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x2ffeec19d53a3c22, 323, 0};
	bbOnDebugEnterStm(&__stmt_0);
	if(!(((BBObject*)((struct database_core_TDatabaseQuery_obj*)bbNullObjectTest((BBObject*)o))->_database_core_tdatabasequery_resultset )!= &bbNullObject)){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x2ffeec19d53a3c22, 324, 0};
		bbOnDebugEnterStm(&__stmt_0);
		((struct database_core_TDatabaseQuery_obj*)bbNullObjectTest((BBObject*)o))->_database_core_tdatabasequery_resultset =(struct database_core_TQueryResultSet_obj*)((struct database_core_TDBConnection_obj*)bbNullObjectTest((BBObject*)((struct database_core_TDatabaseQuery_obj*)bbNullObjectTest((BBObject*)o))->_database_core_tdatabasequery_conn ))->clas->m_createResultSet((struct database_core_TDBConnection_obj*)((struct database_core_TDatabaseQuery_obj*)bbNullObjectTest((BBObject*)o))->_database_core_tdatabasequery_conn );
		bbOnDebugLeaveScope();
	}else{
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x2ffeec19d53a3c22, 326, 0};
		bbOnDebugEnterStm(&__stmt_0);
		((struct database_core_TQueryResultSet_obj*)bbNullObjectTest((BBObject*)((struct database_core_TDatabaseQuery_obj*)bbNullObjectTest((BBObject*)o))->_database_core_tdatabasequery_resultset ))->clas->m_clear((struct database_core_TQueryResultSet_obj*)((struct database_core_TDatabaseQuery_obj*)bbNullObjectTest((BBObject*)o))->_database_core_tdatabasequery_resultset );
		struct BBDebugStm __stmt_1 = {0x2ffeec19d53a3c22, 327, 0};
		bbOnDebugEnterStm(&__stmt_1);
		((struct database_core_TQueryResultSet_obj*)bbNullObjectTest((BBObject*)((struct database_core_TDatabaseQuery_obj*)bbNullObjectTest((BBObject*)o))->_database_core_tdatabasequery_resultset ))->_database_core_tqueryresultset__isactive =0;
		bbOnDebugLeaveScope();
	}
	struct BBDebugStm __stmt_1 = {0x2ffeec19d53a3c22, 331, 0};
	bbOnDebugEnterStm(&__stmt_1);
	if(bbStringEquals(bbt_statement, (&bbEmptyString))==1 || ((bbt_statement->length)==0)){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x2ffeec19d53a3c22, 333, 0};
		bbOnDebugEnterStm(&__stmt_0);
		((struct database_core_TDBConnection_obj*)bbNullObjectTest((BBObject*)((struct database_core_TDatabaseQuery_obj*)bbNullObjectTest((BBObject*)o))->_database_core_tdatabasequery_conn ))->clas->m_setError_SSii((struct database_core_TDBConnection_obj*)((struct database_core_TDatabaseQuery_obj*)bbNullObjectTest((BBObject*)o))->_database_core_tdatabasequery_conn ,((BBString*)&_s1),(&bbEmptyString),3,0);
		struct BBDebugStm __stmt_1 = {0x2ffeec19d53a3c22, 335, 0};
		bbOnDebugEnterStm(&__stmt_1);
		bbOnDebugLeaveScope();
		bbOnDebugLeaveScope();
		return 0;
	}
	struct BBDebugStm __stmt_2 = {0x2ffeec19d53a3c22, 338, 0};
	bbOnDebugEnterStm(&__stmt_2);
	((struct database_core_TQueryResultSet_obj*)bbNullObjectTest((BBObject*)((struct database_core_TDatabaseQuery_obj*)bbNullObjectTest((BBObject*)o))->_database_core_tdatabasequery_resultset ))->_database_core_tqueryresultset_query =bbStringTrim((BBSTRING)bbt_statement);
	struct BBDebugStm __stmt_3 = {0x2ffeec19d53a3c22, 340, 0};
	bbOnDebugEnterStm(&__stmt_3);
	if(!(((struct database_core_TDBConnection_obj*)bbNullObjectTest((BBObject*)((struct database_core_TDatabaseQuery_obj*)bbNullObjectTest((BBObject*)o))->_database_core_tdatabasequery_conn ))->clas->m_isOpen((struct database_core_TDBConnection_obj*)((struct database_core_TDatabaseQuery_obj*)bbNullObjectTest((BBObject*)o))->_database_core_tdatabasequery_conn )!=0)){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x2ffeec19d53a3c22, 342, 0};
		bbOnDebugEnterStm(&__stmt_0);
		((struct database_core_TDBConnection_obj*)bbNullObjectTest((BBObject*)((struct database_core_TDatabaseQuery_obj*)bbNullObjectTest((BBObject*)o))->_database_core_tdatabasequery_conn ))->clas->m_setError_SSii((struct database_core_TDBConnection_obj*)((struct database_core_TDatabaseQuery_obj*)bbNullObjectTest((BBObject*)o))->_database_core_tdatabasequery_conn ,((BBString*)&_s2),(&bbEmptyString),2,0);
		struct BBDebugStm __stmt_1 = {0x2ffeec19d53a3c22, 344, 0};
		bbOnDebugEnterStm(&__stmt_1);
		bbOnDebugLeaveScope();
		bbOnDebugLeaveScope();
		return 0;
	}
	struct BBDebugStm __stmt_4 = {0x2ffeec19d53a3c22, 347, 0};
	bbOnDebugEnterStm(&__stmt_4);
	if(((struct database_core_TQueryResultSet_obj*)bbNullObjectTest((BBObject*)((struct database_core_TDatabaseQuery_obj*)bbNullObjectTest((BBObject*)o))->_database_core_tdatabasequery_resultset ))->clas->m_prepare_S((struct database_core_TQueryResultSet_obj*)((struct database_core_TDatabaseQuery_obj*)bbNullObjectTest((BBObject*)o))->_database_core_tdatabasequery_resultset ,bbt_statement)!=0){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x2ffeec19d53a3c22, 350, 0};
		bbOnDebugEnterStm(&__stmt_0);
		if(((BBObject*)((struct database_core_TDBConnection_obj*)bbNullObjectTest((BBObject*)((struct database_core_TDatabaseQuery_obj*)bbNullObjectTest((BBObject*)o))->_database_core_tdatabasequery_conn ))->_database_core_tdbconnection__lasterror )!= &bbNullObject){
			struct BBDebugScope __scope = {
				BBDEBUGSCOPE_LOCALBLOCK,
				0,
				{
					{
						BBDEBUGDECL_END
					}
				}
			};
			bbOnDebugEnterScope((BBDebugScope *)&__scope);
			struct BBDebugStm __stmt_0 = {0x2ffeec19d53a3c22, 351, 0};
			bbOnDebugEnterStm(&__stmt_0);
			struct database_core_TDatabaseError_obj* bbt_;
			(((struct database_core_TDatabaseError_obj*)((struct database_core_TDatabaseError_obj*)bbNullObjectTest((BBObject*)(bbt_ = ((struct database_core_TDBConnection_obj*)bbNullObjectTest((BBObject*)((struct database_core_TDatabaseQuery_obj*)bbNullObjectTest((BBObject*)o))->_database_core_tdatabasequery_conn ))->_database_core_tdbconnection__lasterror ))))->clas)->m_reset((struct database_core_TDatabaseError_obj*)bbt_);
			bbOnDebugLeaveScope();
		}
		struct BBDebugStm __stmt_1 = {0x2ffeec19d53a3c22, 354, 0};
		bbOnDebugEnterStm(&__stmt_1);
		bbOnDebugLeaveScope();
		bbOnDebugLeaveScope();
		return 1;
	}else{
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x2ffeec19d53a3c22, 356, 0};
		bbOnDebugEnterStm(&__stmt_0);
		bbOnDebugLeaveScope();
		bbOnDebugLeaveScope();
		return 0;
	}
}
BBINT _database_core_TDatabaseQuery_execute_S(struct database_core_TDatabaseQuery_obj* o,BBSTRING bbt_statement){
	((struct database_core_TDatabaseQuery_obj*)bbNullObjectTest((BBObject*)o));
	struct BBDebugScope_2 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"execute",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TDatabaseQuery",
				.var_address=&o
			},
			{
				BBDEBUGDECL_LOCAL,
				"statement",
				"$",
				.var_address=&bbt_statement
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x2ffeec19d53a3c22, 369, 0};
	bbOnDebugEnterStm(&__stmt_0);
	if(bbt_statement!= &bbEmptyString){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x2ffeec19d53a3c22, 370, 0};
		bbOnDebugEnterStm(&__stmt_0);
		if(!(((BBObject*)((struct database_core_TDatabaseQuery_obj*)bbNullObjectTest((BBObject*)o))->_database_core_tdatabasequery_resultset )!= &bbNullObject)){
			struct BBDebugScope __scope = {
				BBDEBUGSCOPE_LOCALBLOCK,
				0,
				{
					{
						BBDEBUGDECL_END
					}
				}
			};
			bbOnDebugEnterScope((BBDebugScope *)&__scope);
			struct BBDebugStm __stmt_0 = {0x2ffeec19d53a3c22, 371, 0};
			bbOnDebugEnterStm(&__stmt_0);
			((struct database_core_TDatabaseQuery_obj*)bbNullObjectTest((BBObject*)o))->_database_core_tdatabasequery_resultset =(struct database_core_TQueryResultSet_obj*)((struct database_core_TDBConnection_obj*)bbNullObjectTest((BBObject*)((struct database_core_TDatabaseQuery_obj*)bbNullObjectTest((BBObject*)o))->_database_core_tdatabasequery_conn ))->clas->m_createResultSet((struct database_core_TDBConnection_obj*)((struct database_core_TDatabaseQuery_obj*)bbNullObjectTest((BBObject*)o))->_database_core_tdatabasequery_conn );
			bbOnDebugLeaveScope();
		}else{
			struct BBDebugScope __scope = {
				BBDEBUGSCOPE_LOCALBLOCK,
				0,
				{
					{
						BBDEBUGDECL_END
					}
				}
			};
			bbOnDebugEnterScope((BBDebugScope *)&__scope);
			struct BBDebugStm __stmt_0 = {0x2ffeec19d53a3c22, 373, 0};
			bbOnDebugEnterStm(&__stmt_0);
			((struct database_core_TQueryResultSet_obj*)bbNullObjectTest((BBObject*)((struct database_core_TDatabaseQuery_obj*)bbNullObjectTest((BBObject*)o))->_database_core_tdatabasequery_resultset ))->clas->m_clear((struct database_core_TQueryResultSet_obj*)((struct database_core_TDatabaseQuery_obj*)bbNullObjectTest((BBObject*)o))->_database_core_tdatabasequery_resultset );
			struct BBDebugStm __stmt_1 = {0x2ffeec19d53a3c22, 374, 0};
			bbOnDebugEnterStm(&__stmt_1);
			((struct database_core_TQueryResultSet_obj*)bbNullObjectTest((BBObject*)((struct database_core_TDatabaseQuery_obj*)bbNullObjectTest((BBObject*)o))->_database_core_tdatabasequery_resultset ))->_database_core_tqueryresultset__isactive =0;
			bbOnDebugLeaveScope();
		}
		struct BBDebugStm __stmt_1 = {0x2ffeec19d53a3c22, 378, 0};
		bbOnDebugEnterStm(&__stmt_1);
		if((bbStringTrim((BBSTRING)bbt_statement)->length)==0){
			struct BBDebugScope __scope = {
				BBDEBUGSCOPE_LOCALBLOCK,
				0,
				{
					{
						BBDEBUGDECL_END
					}
				}
			};
			bbOnDebugEnterScope((BBDebugScope *)&__scope);
			struct BBDebugStm __stmt_0 = {0x2ffeec19d53a3c22, 380, 0};
			bbOnDebugEnterStm(&__stmt_0);
			((struct database_core_TDBConnection_obj*)bbNullObjectTest((BBObject*)((struct database_core_TDatabaseQuery_obj*)bbNullObjectTest((BBObject*)o))->_database_core_tdatabasequery_conn ))->clas->m_setError_SSii((struct database_core_TDBConnection_obj*)((struct database_core_TDatabaseQuery_obj*)bbNullObjectTest((BBObject*)o))->_database_core_tdatabasequery_conn ,((BBString*)&_s3),(&bbEmptyString),3,0);
			struct BBDebugStm __stmt_1 = {0x2ffeec19d53a3c22, 382, 0};
			bbOnDebugEnterStm(&__stmt_1);
			bbOnDebugLeaveScope();
			bbOnDebugLeaveScope();
			bbOnDebugLeaveScope();
			return 0;
		}
		struct BBDebugStm __stmt_2 = {0x2ffeec19d53a3c22, 385, 0};
		bbOnDebugEnterStm(&__stmt_2);
		((struct database_core_TQueryResultSet_obj*)bbNullObjectTest((BBObject*)((struct database_core_TDatabaseQuery_obj*)bbNullObjectTest((BBObject*)o))->_database_core_tdatabasequery_resultset ))->_database_core_tqueryresultset_query =bbStringTrim((BBSTRING)bbt_statement);
		struct BBDebugStm __stmt_3 = {0x2ffeec19d53a3c22, 387, 0};
		bbOnDebugEnterStm(&__stmt_3);
		if(!(((struct database_core_TDBConnection_obj*)bbNullObjectTest((BBObject*)((struct database_core_TDatabaseQuery_obj*)bbNullObjectTest((BBObject*)o))->_database_core_tdatabasequery_conn ))->clas->m_isOpen((struct database_core_TDBConnection_obj*)((struct database_core_TDatabaseQuery_obj*)bbNullObjectTest((BBObject*)o))->_database_core_tdatabasequery_conn )!=0)){
			struct BBDebugScope __scope = {
				BBDEBUGSCOPE_LOCALBLOCK,
				0,
				{
					{
						BBDEBUGDECL_END
					}
				}
			};
			bbOnDebugEnterScope((BBDebugScope *)&__scope);
			struct BBDebugStm __stmt_0 = {0x2ffeec19d53a3c22, 389, 0};
			bbOnDebugEnterStm(&__stmt_0);
			((struct database_core_TDBConnection_obj*)bbNullObjectTest((BBObject*)((struct database_core_TDatabaseQuery_obj*)bbNullObjectTest((BBObject*)o))->_database_core_tdatabasequery_conn ))->clas->m_setError_SSii((struct database_core_TDBConnection_obj*)((struct database_core_TDatabaseQuery_obj*)bbNullObjectTest((BBObject*)o))->_database_core_tdatabasequery_conn ,((BBString*)&_s2),(&bbEmptyString),2,0);
			struct BBDebugStm __stmt_1 = {0x2ffeec19d53a3c22, 391, 0};
			bbOnDebugEnterStm(&__stmt_1);
			bbOnDebugLeaveScope();
			bbOnDebugLeaveScope();
			bbOnDebugLeaveScope();
			return 0;
		}
		struct BBDebugStm __stmt_4 = {0x2ffeec19d53a3c22, 394, 0};
		bbOnDebugEnterStm(&__stmt_4);
		if(((struct database_core_TQueryResultSet_obj*)bbNullObjectTest((BBObject*)((struct database_core_TDatabaseQuery_obj*)bbNullObjectTest((BBObject*)o))->_database_core_tdatabasequery_resultset ))->clas->m_executeQuery_S((struct database_core_TQueryResultSet_obj*)((struct database_core_TDatabaseQuery_obj*)bbNullObjectTest((BBObject*)o))->_database_core_tdatabasequery_resultset ,bbt_statement)!=0){
			struct BBDebugScope __scope = {
				BBDEBUGSCOPE_LOCALBLOCK,
				0,
				{
					{
						BBDEBUGDECL_END
					}
				}
			};
			bbOnDebugEnterScope((BBDebugScope *)&__scope);
			struct BBDebugStm __stmt_0 = {0x2ffeec19d53a3c22, 397, 0};
			bbOnDebugEnterStm(&__stmt_0);
			if(((BBObject*)((struct database_core_TDBConnection_obj*)bbNullObjectTest((BBObject*)((struct database_core_TDatabaseQuery_obj*)bbNullObjectTest((BBObject*)o))->_database_core_tdatabasequery_conn ))->_database_core_tdbconnection__lasterror )!= &bbNullObject){
				struct BBDebugScope __scope = {
					BBDEBUGSCOPE_LOCALBLOCK,
					0,
					{
						{
							BBDEBUGDECL_END
						}
					}
				};
				bbOnDebugEnterScope((BBDebugScope *)&__scope);
				struct BBDebugStm __stmt_0 = {0x2ffeec19d53a3c22, 398, 0};
				bbOnDebugEnterStm(&__stmt_0);
				struct database_core_TDatabaseError_obj* bbt_;
				(((struct database_core_TDatabaseError_obj*)((struct database_core_TDatabaseError_obj*)bbNullObjectTest((BBObject*)(bbt_ = ((struct database_core_TDBConnection_obj*)bbNullObjectTest((BBObject*)((struct database_core_TDatabaseQuery_obj*)bbNullObjectTest((BBObject*)o))->_database_core_tdatabasequery_conn ))->_database_core_tdbconnection__lasterror ))))->clas)->m_reset((struct database_core_TDatabaseError_obj*)bbt_);
				bbOnDebugLeaveScope();
			}
			struct BBDebugStm __stmt_1 = {0x2ffeec19d53a3c22, 401, 0};
			bbOnDebugEnterStm(&__stmt_1);
			bbOnDebugLeaveScope();
			bbOnDebugLeaveScope();
			bbOnDebugLeaveScope();
			return 1;
		}else{
			struct BBDebugScope __scope = {
				BBDEBUGSCOPE_LOCALBLOCK,
				0,
				{
					{
						BBDEBUGDECL_END
					}
				}
			};
			bbOnDebugEnterScope((BBDebugScope *)&__scope);
			struct BBDebugStm __stmt_0 = {0x2ffeec19d53a3c22, 403, 0};
			bbOnDebugEnterStm(&__stmt_0);
			bbOnDebugLeaveScope();
			bbOnDebugLeaveScope();
			bbOnDebugLeaveScope();
			return 0;
		}
	}else{
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x2ffeec19d53a3c22, 408, 0};
		bbOnDebugEnterStm(&__stmt_0);
		if(!(((struct database_core_TDBConnection_obj*)bbNullObjectTest((BBObject*)((struct database_core_TDatabaseQuery_obj*)bbNullObjectTest((BBObject*)o))->_database_core_tdatabasequery_conn ))->clas->m_isOpen((struct database_core_TDBConnection_obj*)((struct database_core_TDatabaseQuery_obj*)bbNullObjectTest((BBObject*)o))->_database_core_tdatabasequery_conn )!=0)){
			struct BBDebugScope __scope = {
				BBDEBUGSCOPE_LOCALBLOCK,
				0,
				{
					{
						BBDEBUGDECL_END
					}
				}
			};
			bbOnDebugEnterScope((BBDebugScope *)&__scope);
			struct BBDebugStm __stmt_0 = {0x2ffeec19d53a3c22, 410, 0};
			bbOnDebugEnterStm(&__stmt_0);
			((struct database_core_TDBConnection_obj*)bbNullObjectTest((BBObject*)((struct database_core_TDatabaseQuery_obj*)bbNullObjectTest((BBObject*)o))->_database_core_tdatabasequery_conn ))->clas->m_setError_SSii((struct database_core_TDBConnection_obj*)((struct database_core_TDatabaseQuery_obj*)bbNullObjectTest((BBObject*)o))->_database_core_tdatabasequery_conn ,((BBString*)&_s2),(&bbEmptyString),2,0);
			struct BBDebugStm __stmt_1 = {0x2ffeec19d53a3c22, 412, 0};
			bbOnDebugEnterStm(&__stmt_1);
			bbOnDebugLeaveScope();
			bbOnDebugLeaveScope();
			bbOnDebugLeaveScope();
			return 0;
		}
		struct BBDebugStm __stmt_1 = {0x2ffeec19d53a3c22, 415, 0};
		bbOnDebugEnterStm(&__stmt_1);
		if(((struct database_core_TQueryResultSet_obj*)bbNullObjectTest((BBObject*)((struct database_core_TDatabaseQuery_obj*)bbNullObjectTest((BBObject*)o))->_database_core_tdatabasequery_resultset ))->clas->m_execute((struct database_core_TQueryResultSet_obj*)((struct database_core_TDatabaseQuery_obj*)bbNullObjectTest((BBObject*)o))->_database_core_tdatabasequery_resultset )!=0){
			struct BBDebugScope __scope = {
				BBDEBUGSCOPE_LOCALBLOCK,
				0,
				{
					{
						BBDEBUGDECL_END
					}
				}
			};
			bbOnDebugEnterScope((BBDebugScope *)&__scope);
			struct BBDebugStm __stmt_0 = {0x2ffeec19d53a3c22, 418, 0};
			bbOnDebugEnterStm(&__stmt_0);
			if(((BBObject*)((struct database_core_TDBConnection_obj*)bbNullObjectTest((BBObject*)((struct database_core_TDatabaseQuery_obj*)bbNullObjectTest((BBObject*)o))->_database_core_tdatabasequery_conn ))->_database_core_tdbconnection__lasterror )!= &bbNullObject){
				struct BBDebugScope __scope = {
					BBDEBUGSCOPE_LOCALBLOCK,
					0,
					{
						{
							BBDEBUGDECL_END
						}
					}
				};
				bbOnDebugEnterScope((BBDebugScope *)&__scope);
				struct BBDebugStm __stmt_0 = {0x2ffeec19d53a3c22, 419, 0};
				bbOnDebugEnterStm(&__stmt_0);
				struct database_core_TDatabaseError_obj* bbt_2;
				(((struct database_core_TDatabaseError_obj*)((struct database_core_TDatabaseError_obj*)bbNullObjectTest((BBObject*)(bbt_2 = ((struct database_core_TDBConnection_obj*)bbNullObjectTest((BBObject*)((struct database_core_TDatabaseQuery_obj*)bbNullObjectTest((BBObject*)o))->_database_core_tdatabasequery_conn ))->_database_core_tdbconnection__lasterror ))))->clas)->m_reset((struct database_core_TDatabaseError_obj*)bbt_2);
				bbOnDebugLeaveScope();
			}
			struct BBDebugStm __stmt_1 = {0x2ffeec19d53a3c22, 422, 0};
			bbOnDebugEnterStm(&__stmt_1);
			bbOnDebugLeaveScope();
			bbOnDebugLeaveScope();
			bbOnDebugLeaveScope();
			return 1;
		}else{
			struct BBDebugScope __scope = {
				BBDEBUGSCOPE_LOCALBLOCK,
				0,
				{
					{
						BBDEBUGDECL_END
					}
				}
			};
			bbOnDebugEnterScope((BBDebugScope *)&__scope);
			struct BBDebugStm __stmt_0 = {0x2ffeec19d53a3c22, 424, 0};
			bbOnDebugEnterStm(&__stmt_0);
			bbOnDebugLeaveScope();
			bbOnDebugLeaveScope();
			bbOnDebugLeaveScope();
			return 0;
		}
	}
}
struct database_core_dbtypes_TDBType_obj* _database_core_TDatabaseQuery_value_i(struct database_core_TDatabaseQuery_obj* o,BBINT bbt_index){
	((struct database_core_TDatabaseQuery_obj*)bbNullObjectTest((BBObject*)o));
	struct BBDebugScope_2 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"value",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TDatabaseQuery",
				.var_address=&o
			},
			{
				BBDEBUGDECL_LOCAL,
				"index",
				"i",
				.var_address=&bbt_index
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x2ffeec19d53a3c22, 437, 0};
	bbOnDebugEnterStm(&__stmt_0);
	((struct database_core_TDatabaseQuery_obj*)bbNullObjectTest((BBObject*)o));
	if((((struct database_core_TDatabaseQuery_obj*)o)->clas->m_isActive((struct database_core_TDatabaseQuery_obj*)o)!=0) && (bbt_index>-1)){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x2ffeec19d53a3c22, 438, 0};
		bbOnDebugEnterStm(&__stmt_0);
		bbOnDebugLeaveScope();
		bbOnDebugLeaveScope();
		return (struct database_core_dbtypes_TDBType_obj*)((struct database_core_TQueryResultSet_obj*)bbNullObjectTest((BBObject*)((struct database_core_TDatabaseQuery_obj*)bbNullObjectTest((BBObject*)o))->_database_core_tdatabasequery_resultset ))->clas->m_dataValue_i((struct database_core_TQueryResultSet_obj*)((struct database_core_TDatabaseQuery_obj*)bbNullObjectTest((BBObject*)o))->_database_core_tdatabasequery_resultset ,bbt_index);
	}
	struct BBDebugStm __stmt_1 = {0x2ffeec19d53a3c22, 441, 0};
	bbOnDebugEnterStm(&__stmt_1);
	bbOnDebugLeaveScope();
	return (struct database_core_dbtypes_TDBType_obj*)&bbNullObject;
}
BBINT _database_core_TDatabaseQuery_nextRow(struct database_core_TDatabaseQuery_obj* o){
	((struct database_core_TDatabaseQuery_obj*)bbNullObjectTest((BBObject*)o));
	BBINT bbt_result=0;
	struct BBDebugScope_2 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"nextRow",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TDatabaseQuery",
				.var_address=&o
			},
			{
				BBDEBUGDECL_LOCAL,
				"result",
				"i",
				.var_address=&bbt_result
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x2ffeec19d53a3c22, 452, 0};
	bbOnDebugEnterStm(&__stmt_0);
	((struct database_core_TDatabaseQuery_obj*)bbNullObjectTest((BBObject*)o));
	if(!(((struct database_core_TDatabaseQuery_obj*)o)->clas->m_isActive((struct database_core_TDatabaseQuery_obj*)o)!=0)){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x2ffeec19d53a3c22, 453, 0};
		bbOnDebugEnterStm(&__stmt_0);
		bbOnDebugLeaveScope();
		bbOnDebugLeaveScope();
		return 0;
	}
	struct BBDebugStm __stmt_1 = {0x2ffeec19d53a3c22, 456, 0};
	bbOnDebugEnterStm(&__stmt_1);
	bbt_result=0;
	struct BBDebugStm __stmt_2 = {0x2ffeec19d53a3c22, 458, 0};
	bbOnDebugEnterStm(&__stmt_2);
	((struct database_core_TDatabaseQuery_obj*)bbNullObjectTest((BBObject*)o));
	BBINT bbt_=((struct database_core_TDatabaseQuery_obj*)o)->clas->m_rowIndex((struct database_core_TDatabaseQuery_obj*)o);
	struct BBDebugStm __stmt_3 = {0x2ffeec19d53a3c22, 459, 0};
	bbOnDebugEnterStm(&__stmt_3);
	if(bbt_==-1){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x2ffeec19d53a3c22, 460, 0};
		bbOnDebugEnterStm(&__stmt_0);
		bbt_result=((struct database_core_TQueryResultSet_obj*)bbNullObjectTest((BBObject*)((struct database_core_TDatabaseQuery_obj*)bbNullObjectTest((BBObject*)o))->_database_core_tdatabasequery_resultset ))->clas->m_firstRow((struct database_core_TQueryResultSet_obj*)((struct database_core_TDatabaseQuery_obj*)bbNullObjectTest((BBObject*)o))->_database_core_tdatabasequery_resultset );
		struct BBDebugStm __stmt_1 = {0x2ffeec19d53a3c22, 461, 0};
		bbOnDebugEnterStm(&__stmt_1);
		bbOnDebugLeaveScope();
		bbOnDebugLeaveScope();
		return bbt_result;
	}else{
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x2ffeec19d53a3c22, 462, 0};
		bbOnDebugEnterStm(&__stmt_0);
		if(bbt_==-2){
			struct BBDebugScope __scope = {
				BBDEBUGSCOPE_LOCALBLOCK,
				0,
				{
					{
						BBDEBUGDECL_END
					}
				}
			};
			bbOnDebugEnterScope((BBDebugScope *)&__scope);
			struct BBDebugStm __stmt_0 = {0x2ffeec19d53a3c22, 463, 0};
			bbOnDebugEnterStm(&__stmt_0);
			bbOnDebugLeaveScope();
			bbOnDebugLeaveScope();
			bbOnDebugLeaveScope();
			return 0;
		}else{
			struct BBDebugScope __scope = {
				BBDEBUGSCOPE_LOCALBLOCK,
				0,
				{
					{
						BBDEBUGDECL_END
					}
				}
			};
			bbOnDebugEnterScope((BBDebugScope *)&__scope);
			struct BBDebugStm __stmt_0 = {0x2ffeec19d53a3c22, 465, 0};
			bbOnDebugEnterStm(&__stmt_0);
			if(!(((struct database_core_TQueryResultSet_obj*)bbNullObjectTest((BBObject*)((struct database_core_TDatabaseQuery_obj*)bbNullObjectTest((BBObject*)o))->_database_core_tdatabasequery_resultset ))->clas->m_nextRow((struct database_core_TQueryResultSet_obj*)((struct database_core_TDatabaseQuery_obj*)bbNullObjectTest((BBObject*)o))->_database_core_tdatabasequery_resultset )!=0)){
				struct BBDebugScope __scope = {
					BBDEBUGSCOPE_LOCALBLOCK,
					0,
					{
						{
							BBDEBUGDECL_END
						}
					}
				};
				bbOnDebugEnterScope((BBDebugScope *)&__scope);
				struct BBDebugStm __stmt_0 = {0x2ffeec19d53a3c22, 466, 0};
				bbOnDebugEnterStm(&__stmt_0);
				((struct database_core_TQueryResultSet_obj*)bbNullObjectTest((BBObject*)((struct database_core_TDatabaseQuery_obj*)bbNullObjectTest((BBObject*)o))->_database_core_tdatabasequery_resultset ))->clas->m_setRowIndex_i((struct database_core_TQueryResultSet_obj*)((struct database_core_TDatabaseQuery_obj*)bbNullObjectTest((BBObject*)o))->_database_core_tdatabasequery_resultset ,-2);
				struct BBDebugStm __stmt_1 = {0x2ffeec19d53a3c22, 468, 0};
				bbOnDebugEnterStm(&__stmt_1);
				((struct database_core_TQueryResultSet_obj*)bbNullObjectTest((BBObject*)((struct database_core_TDatabaseQuery_obj*)bbNullObjectTest((BBObject*)o))->_database_core_tdatabasequery_resultset ))->clas->m_reset((struct database_core_TQueryResultSet_obj*)((struct database_core_TDatabaseQuery_obj*)bbNullObjectTest((BBObject*)o))->_database_core_tdatabasequery_resultset );
				struct BBDebugStm __stmt_2 = {0x2ffeec19d53a3c22, 469, 0};
				bbOnDebugEnterStm(&__stmt_2);
				bbOnDebugLeaveScope();
				bbOnDebugLeaveScope();
				bbOnDebugLeaveScope();
				bbOnDebugLeaveScope();
				return 0;
			}
			bbOnDebugLeaveScope();
		}
		bbOnDebugLeaveScope();
	}
	struct BBDebugStm __stmt_4 = {0x2ffeec19d53a3c22, 473, 0};
	bbOnDebugEnterStm(&__stmt_4);
	bbOnDebugLeaveScope();
	return 1;
}
BBINT _database_core_TDatabaseQuery_isActive(struct database_core_TDatabaseQuery_obj* o){
	((struct database_core_TDatabaseQuery_obj*)bbNullObjectTest((BBObject*)o));
	struct BBDebugScope_1 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"isActive",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TDatabaseQuery",
				.var_address=&o
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x2ffeec19d53a3c22, 477, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbOnDebugLeaveScope();
	return ((((BBObject*)((struct database_core_TDatabaseQuery_obj*)bbNullObjectTest((BBObject*)o))->_database_core_tdatabasequery_resultset )!= &bbNullObject) && (((struct database_core_TQueryResultSet_obj*)bbNullObjectTest((BBObject*)((struct database_core_TDatabaseQuery_obj*)bbNullObjectTest((BBObject*)o))->_database_core_tdatabasequery_resultset ))->clas->m_isActive((struct database_core_TQueryResultSet_obj*)((struct database_core_TDatabaseQuery_obj*)bbNullObjectTest((BBObject*)o))->_database_core_tdatabasequery_resultset )!=0));
}
BBINT _database_core_TDatabaseQuery_rowIndex(struct database_core_TDatabaseQuery_obj* o){
	((struct database_core_TDatabaseQuery_obj*)bbNullObjectTest((BBObject*)o));
	struct BBDebugScope_1 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"rowIndex",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TDatabaseQuery",
				.var_address=&o
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x2ffeec19d53a3c22, 481, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbOnDebugLeaveScope();
	return ((struct database_core_TQueryResultSet_obj*)bbNullObjectTest((BBObject*)((struct database_core_TDatabaseQuery_obj*)bbNullObjectTest((BBObject*)o))->_database_core_tdatabasequery_resultset ))->clas->m_rowIndex((struct database_core_TQueryResultSet_obj*)((struct database_core_TDatabaseQuery_obj*)bbNullObjectTest((BBObject*)o))->_database_core_tdatabasequery_resultset );
}
struct database_core_TQueryRecord_obj* _database_core_TDatabaseQuery_rowRecord(struct database_core_TDatabaseQuery_obj* o){
	((struct database_core_TDatabaseQuery_obj*)bbNullObjectTest((BBObject*)o));
	struct database_core_TQueryRecord_obj* bbt_r=(struct database_core_TQueryRecord_obj*)((struct database_core_TQueryRecord_obj*)&bbNullObject);
	struct BBDebugScope_2 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"rowRecord",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TDatabaseQuery",
				.var_address=&o
			},
			{
				BBDEBUGDECL_LOCAL,
				"r",
				":TQueryRecord",
				.var_address=&bbt_r
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x2ffeec19d53a3c22, 488, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbt_r=(struct database_core_TQueryRecord_obj*)((struct database_core_TQueryResultSet_obj*)bbNullObjectTest((BBObject*)((struct database_core_TDatabaseQuery_obj*)bbNullObjectTest((BBObject*)o))->_database_core_tdatabasequery_resultset ))->clas->m_rowRecord((struct database_core_TQueryResultSet_obj*)((struct database_core_TDatabaseQuery_obj*)bbNullObjectTest((BBObject*)o))->_database_core_tdatabasequery_resultset );
	struct BBDebugStm __stmt_1 = {0x2ffeec19d53a3c22, 491, 0};
	bbOnDebugEnterStm(&__stmt_1);
	if(((struct database_core_TQueryResultSet_obj*)bbNullObjectTest((BBObject*)((struct database_core_TDatabaseQuery_obj*)bbNullObjectTest((BBObject*)o))->_database_core_tdatabasequery_resultset ))->clas->m_isValid((struct database_core_TQueryResultSet_obj*)((struct database_core_TDatabaseQuery_obj*)bbNullObjectTest((BBObject*)o))->_database_core_tdatabasequery_resultset )!=0){
		BBINT bbt_c=0;
		struct BBDebugScope_1 __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_LOCAL,
					"c",
					"i",
					.var_address=&bbt_c
				},
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x2ffeec19d53a3c22, 492, 0};
		bbOnDebugEnterStm(&__stmt_0);
		bbt_c=((struct database_core_TQueryRecord_obj*)bbNullObjectTest((BBObject*)bbt_r))->clas->m_count((struct database_core_TQueryRecord_obj*)bbt_r);
		struct BBDebugStm __stmt_1 = {0x2ffeec19d53a3c22, 494, 0};
		bbOnDebugEnterStm(&__stmt_1);
		{
			BBINT bbt_i=0;
			BBINT bbt_=bbt_c;
			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 = {0x2ffeec19d53a3c22, 495, 0};
				bbOnDebugEnterStm(&__stmt_0);
				((struct database_core_TDatabaseQuery_obj*)bbNullObjectTest((BBObject*)o));
				((struct database_core_TQueryRecord_obj*)bbNullObjectTest((BBObject*)bbt_r))->clas->m_setValue_iTObject((struct database_core_TQueryRecord_obj*)bbt_r,bbt_i,(BBOBJECT)((struct database_core_TDatabaseQuery_obj*)o)->clas->m_value_i((struct database_core_TDatabaseQuery_obj*)o,bbt_i));
				bbOnDebugLeaveScope();
			}
		}
		bbOnDebugLeaveScope();
	}
	struct BBDebugStm __stmt_2 = {0x2ffeec19d53a3c22, 499, 0};
	bbOnDebugEnterStm(&__stmt_2);
	bbOnDebugLeaveScope();
	return (struct database_core_TQueryRecord_obj*)bbt_r;
}
void _database_core_TDatabaseQuery_bindValue_iTTDBType(struct database_core_TDatabaseQuery_obj* o,BBINT bbt_position,struct database_core_dbtypes_TDBType_obj* bbt_value){
	((struct database_core_TDatabaseQuery_obj*)bbNullObjectTest((BBObject*)o));
	struct BBDebugScope_3 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"bindValue",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TDatabaseQuery",
				.var_address=&o
			},
			{
				BBDEBUGDECL_LOCAL,
				"position",
				"i",
				.var_address=&bbt_position
			},
			{
				BBDEBUGDECL_LOCAL,
				"value",
				":TDBType",
				.var_address=&bbt_value
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x2ffeec19d53a3c22, 507, 0};
	bbOnDebugEnterStm(&__stmt_0);
	if(((BBObject*)((struct database_core_TDatabaseQuery_obj*)bbNullObjectTest((BBObject*)o))->_database_core_tdatabasequery_resultset )!= &bbNullObject){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x2ffeec19d53a3c22, 508, 0};
		bbOnDebugEnterStm(&__stmt_0);
		((struct database_core_TQueryResultSet_obj*)bbNullObjectTest((BBObject*)((struct database_core_TDatabaseQuery_obj*)bbNullObjectTest((BBObject*)o))->_database_core_tdatabasequery_resultset ))->clas->m_bindValue_iTTDBType((struct database_core_TQueryResultSet_obj*)((struct database_core_TDatabaseQuery_obj*)bbNullObjectTest((BBObject*)o))->_database_core_tdatabasequery_resultset ,bbt_position,(struct database_core_dbtypes_TDBType_obj*)bbt_value);
		bbOnDebugLeaveScope();
	}
	bbOnDebugLeaveScope();
}
void _database_core_TDatabaseQuery_addBindValue_TTDBType(struct database_core_TDatabaseQuery_obj* o,struct database_core_dbtypes_TDBType_obj* bbt_value){
	((struct database_core_TDatabaseQuery_obj*)bbNullObjectTest((BBObject*)o));
	struct BBDebugScope_2 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"addBindValue",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TDatabaseQuery",
				.var_address=&o
			},
			{
				BBDEBUGDECL_LOCAL,
				"value",
				":TDBType",
				.var_address=&bbt_value
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x2ffeec19d53a3c22, 517, 0};
	bbOnDebugEnterStm(&__stmt_0);
	if(((BBObject*)((struct database_core_TDatabaseQuery_obj*)bbNullObjectTest((BBObject*)o))->_database_core_tdatabasequery_resultset )!= &bbNullObject){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x2ffeec19d53a3c22, 518, 0};
		bbOnDebugEnterStm(&__stmt_0);
		((struct database_core_TQueryResultSet_obj*)bbNullObjectTest((BBObject*)((struct database_core_TDatabaseQuery_obj*)bbNullObjectTest((BBObject*)o))->_database_core_tdatabasequery_resultset ))->clas->m_addBindValue_TTDBType((struct database_core_TQueryResultSet_obj*)((struct database_core_TDatabaseQuery_obj*)bbNullObjectTest((BBObject*)o))->_database_core_tdatabasequery_resultset ,(struct database_core_dbtypes_TDBType_obj*)bbt_value);
		bbOnDebugLeaveScope();
	}
	bbOnDebugLeaveScope();
}
void _database_core_TDatabaseQuery_setString_iS(struct database_core_TDatabaseQuery_obj* o,BBINT bbt_position,BBSTRING bbt_value){
	((struct database_core_TDatabaseQuery_obj*)bbNullObjectTest((BBObject*)o));
	struct BBDebugScope_3 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"setString",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TDatabaseQuery",
				.var_address=&o
			},
			{
				BBDEBUGDECL_LOCAL,
				"position",
				"i",
				.var_address=&bbt_position
			},
			{
				BBDEBUGDECL_LOCAL,
				"value",
				"$",
				.var_address=&bbt_value
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x2ffeec19d53a3c22, 527, 0};
	bbOnDebugEnterStm(&__stmt_0);
	((struct database_core_TDatabaseQuery_obj*)bbNullObjectTest((BBObject*)o));
	((struct database_core_TDatabaseQuery_obj*)o)->clas->m_bindValue_iTTDBType((struct database_core_TDatabaseQuery_obj*)o,bbt_position,(struct database_core_dbtypes_TDBType_obj*)((struct database_core_dbtypes_TDBType_obj*)bbObjectDowncast((BBOBJECT)database_core_dbtypes_TDBString_Set_TTDBString_S(bbt_value),(BBClass*)&database_core_dbtypes_TDBType)));
	bbOnDebugLeaveScope();
}
void _database_core_TDatabaseQuery_setInt_ii(struct database_core_TDatabaseQuery_obj* o,BBINT bbt_position,BBINT bbt_value){
	((struct database_core_TDatabaseQuery_obj*)bbNullObjectTest((BBObject*)o));
	struct BBDebugScope_3 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"setInt",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TDatabaseQuery",
				.var_address=&o
			},
			{
				BBDEBUGDECL_LOCAL,
				"position",
				"i",
				.var_address=&bbt_position
			},
			{
				BBDEBUGDECL_LOCAL,
				"value",
				"i",
				.var_address=&bbt_value
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x2ffeec19d53a3c22, 535, 0};
	bbOnDebugEnterStm(&__stmt_0);
	((struct database_core_TDatabaseQuery_obj*)bbNullObjectTest((BBObject*)o));
	((struct database_core_TDatabaseQuery_obj*)o)->clas->m_bindValue_iTTDBType((struct database_core_TDatabaseQuery_obj*)o,bbt_position,(struct database_core_dbtypes_TDBType_obj*)((struct database_core_dbtypes_TDBType_obj*)bbObjectDowncast((BBOBJECT)database_core_dbtypes_TDBInt_Set_TTDBInt_i(bbt_value),(BBClass*)&database_core_dbtypes_TDBType)));
	bbOnDebugLeaveScope();
}
void _database_core_TDatabaseQuery_setLong_il(struct database_core_TDatabaseQuery_obj* o,BBINT bbt_position,BBLONG bbt_value){
	((struct database_core_TDatabaseQuery_obj*)bbNullObjectTest((BBObject*)o));
	struct BBDebugScope_3 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"setLong",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TDatabaseQuery",
				.var_address=&o
			},
			{
				BBDEBUGDECL_LOCAL,
				"position",
				"i",
				.var_address=&bbt_position
			},
			{
				BBDEBUGDECL_LOCAL,
				"value",
				"l",
				.var_address=&bbt_value
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x2ffeec19d53a3c22, 543, 0};
	bbOnDebugEnterStm(&__stmt_0);
	((struct database_core_TDatabaseQuery_obj*)bbNullObjectTest((BBObject*)o));
	((struct database_core_TDatabaseQuery_obj*)o)->clas->m_bindValue_iTTDBType((struct database_core_TDatabaseQuery_obj*)o,bbt_position,(struct database_core_dbtypes_TDBType_obj*)((struct database_core_dbtypes_TDBType_obj*)bbObjectDowncast((BBOBJECT)database_core_dbtypes_TDBLong_Set_TTDBLong_l(bbt_value),(BBClass*)&database_core_dbtypes_TDBType)));
	bbOnDebugLeaveScope();
}
void _database_core_TDatabaseQuery_setFloat_if(struct database_core_TDatabaseQuery_obj* o,BBINT bbt_position,BBFLOAT bbt_value){
	((struct database_core_TDatabaseQuery_obj*)bbNullObjectTest((BBObject*)o));
	struct BBDebugScope_3 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"setFloat",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TDatabaseQuery",
				.var_address=&o
			},
			{
				BBDEBUGDECL_LOCAL,
				"position",
				"i",
				.var_address=&bbt_position
			},
			{
				BBDEBUGDECL_LOCAL,
				"value",
				"f",
				.var_address=&bbt_value
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x2ffeec19d53a3c22, 551, 0};
	bbOnDebugEnterStm(&__stmt_0);
	((struct database_core_TDatabaseQuery_obj*)bbNullObjectTest((BBObject*)o));
	((struct database_core_TDatabaseQuery_obj*)o)->clas->m_bindValue_iTTDBType((struct database_core_TDatabaseQuery_obj*)o,bbt_position,(struct database_core_dbtypes_TDBType_obj*)((struct database_core_dbtypes_TDBType_obj*)bbObjectDowncast((BBOBJECT)database_core_dbtypes_TDBFloat_Set_TTDBFloat_f(bbt_value),(BBClass*)&database_core_dbtypes_TDBType)));
	bbOnDebugLeaveScope();
}
void _database_core_TDatabaseQuery_setDouble_id(struct database_core_TDatabaseQuery_obj* o,BBINT bbt_position,BBDOUBLE bbt_value){
	((struct database_core_TDatabaseQuery_obj*)bbNullObjectTest((BBObject*)o));
	struct BBDebugScope_3 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"setDouble",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TDatabaseQuery",
				.var_address=&o
			},
			{
				BBDEBUGDECL_LOCAL,
				"position",
				"i",
				.var_address=&bbt_position
			},
			{
				BBDEBUGDECL_LOCAL,
				"value",
				"d",
				.var_address=&bbt_value
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x2ffeec19d53a3c22, 559, 0};
	bbOnDebugEnterStm(&__stmt_0);
	((struct database_core_TDatabaseQuery_obj*)bbNullObjectTest((BBObject*)o));
	((struct database_core_TDatabaseQuery_obj*)o)->clas->m_bindValue_iTTDBType((struct database_core_TDatabaseQuery_obj*)o,bbt_position,(struct database_core_dbtypes_TDBType_obj*)((struct database_core_dbtypes_TDBType_obj*)bbObjectDowncast((BBOBJECT)database_core_dbtypes_TDBDouble_Set_TTDBDouble_d(bbt_value),(BBClass*)&database_core_dbtypes_TDBType)));
	bbOnDebugLeaveScope();
}
void _database_core_TDatabaseQuery_addString_S(struct database_core_TDatabaseQuery_obj* o,BBSTRING bbt_value){
	((struct database_core_TDatabaseQuery_obj*)bbNullObjectTest((BBObject*)o));
	struct BBDebugScope_2 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"addString",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TDatabaseQuery",
				.var_address=&o
			},
			{
				BBDEBUGDECL_LOCAL,
				"value",
				"$",
				.var_address=&bbt_value
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x2ffeec19d53a3c22, 567, 0};
	bbOnDebugEnterStm(&__stmt_0);
	((struct database_core_TDatabaseQuery_obj*)bbNullObjectTest((BBObject*)o));
	((struct database_core_TDatabaseQuery_obj*)o)->clas->m_addBindValue_TTDBType((struct database_core_TDatabaseQuery_obj*)o,(struct database_core_dbtypes_TDBType_obj*)((struct database_core_dbtypes_TDBType_obj*)bbObjectDowncast((BBOBJECT)database_core_dbtypes_TDBString_Set_TTDBString_S(bbt_value),(BBClass*)&database_core_dbtypes_TDBType)));
	bbOnDebugLeaveScope();
}
void _database_core_TDatabaseQuery_addInt_i(struct database_core_TDatabaseQuery_obj* o,BBINT bbt_value){
	((struct database_core_TDatabaseQuery_obj*)bbNullObjectTest((BBObject*)o));
	struct BBDebugScope_2 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"addInt",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TDatabaseQuery",
				.var_address=&o
			},
			{
				BBDEBUGDECL_LOCAL,
				"value",
				"i",
				.var_address=&bbt_value
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x2ffeec19d53a3c22, 575, 0};
	bbOnDebugEnterStm(&__stmt_0);
	((struct database_core_TDatabaseQuery_obj*)bbNullObjectTest((BBObject*)o));
	((struct database_core_TDatabaseQuery_obj*)o)->clas->m_addBindValue_TTDBType((struct database_core_TDatabaseQuery_obj*)o,(struct database_core_dbtypes_TDBType_obj*)((struct database_core_dbtypes_TDBType_obj*)bbObjectDowncast((BBOBJECT)database_core_dbtypes_TDBInt_Set_TTDBInt_i(bbt_value),(BBClass*)&database_core_dbtypes_TDBType)));
	bbOnDebugLeaveScope();
}
void _database_core_TDatabaseQuery_addLong_l(struct database_core_TDatabaseQuery_obj* o,BBLONG bbt_value){
	((struct database_core_TDatabaseQuery_obj*)bbNullObjectTest((BBObject*)o));
	struct BBDebugScope_2 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"addLong",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TDatabaseQuery",
				.var_address=&o
			},
			{
				BBDEBUGDECL_LOCAL,
				"value",
				"l",
				.var_address=&bbt_value
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x2ffeec19d53a3c22, 583, 0};
	bbOnDebugEnterStm(&__stmt_0);
	((struct database_core_TDatabaseQuery_obj*)bbNullObjectTest((BBObject*)o));
	((struct database_core_TDatabaseQuery_obj*)o)->clas->m_addBindValue_TTDBType((struct database_core_TDatabaseQuery_obj*)o,(struct database_core_dbtypes_TDBType_obj*)((struct database_core_dbtypes_TDBType_obj*)bbObjectDowncast((BBOBJECT)database_core_dbtypes_TDBLong_Set_TTDBLong_l(bbt_value),(BBClass*)&database_core_dbtypes_TDBType)));
	bbOnDebugLeaveScope();
}
void _database_core_TDatabaseQuery_addFloat_f(struct database_core_TDatabaseQuery_obj* o,BBFLOAT bbt_value){
	((struct database_core_TDatabaseQuery_obj*)bbNullObjectTest((BBObject*)o));
	struct BBDebugScope_2 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"addFloat",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TDatabaseQuery",
				.var_address=&o
			},
			{
				BBDEBUGDECL_LOCAL,
				"value",
				"f",
				.var_address=&bbt_value
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x2ffeec19d53a3c22, 591, 0};
	bbOnDebugEnterStm(&__stmt_0);
	((struct database_core_TDatabaseQuery_obj*)bbNullObjectTest((BBObject*)o));
	((struct database_core_TDatabaseQuery_obj*)o)->clas->m_addBindValue_TTDBType((struct database_core_TDatabaseQuery_obj*)o,(struct database_core_dbtypes_TDBType_obj*)((struct database_core_dbtypes_TDBType_obj*)bbObjectDowncast((BBOBJECT)database_core_dbtypes_TDBFloat_Set_TTDBFloat_f(bbt_value),(BBClass*)&database_core_dbtypes_TDBType)));
	bbOnDebugLeaveScope();
}
void _database_core_TDatabaseQuery_addDouble_d(struct database_core_TDatabaseQuery_obj* o,BBDOUBLE bbt_value){
	((struct database_core_TDatabaseQuery_obj*)bbNullObjectTest((BBObject*)o));
	struct BBDebugScope_2 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"addDouble",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TDatabaseQuery",
				.var_address=&o
			},
			{
				BBDEBUGDECL_LOCAL,
				"value",
				"d",
				.var_address=&bbt_value
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x2ffeec19d53a3c22, 599, 0};
	bbOnDebugEnterStm(&__stmt_0);
	((struct database_core_TDatabaseQuery_obj*)bbNullObjectTest((BBObject*)o));
	((struct database_core_TDatabaseQuery_obj*)o)->clas->m_addBindValue_TTDBType((struct database_core_TDatabaseQuery_obj*)o,(struct database_core_dbtypes_TDBType_obj*)((struct database_core_dbtypes_TDBType_obj*)bbObjectDowncast((BBOBJECT)database_core_dbtypes_TDBDouble_Set_TTDBDouble_d(bbt_value),(BBClass*)&database_core_dbtypes_TDBType)));
	bbOnDebugLeaveScope();
}
void _database_core_TDatabaseQuery_clearBindValues(struct database_core_TDatabaseQuery_obj* o){
	((struct database_core_TDatabaseQuery_obj*)bbNullObjectTest((BBObject*)o));
	struct BBDebugScope_1 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"clearBindValues",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TDatabaseQuery",
				.var_address=&o
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x2ffeec19d53a3c22, 606, 0};
	bbOnDebugEnterStm(&__stmt_0);
	if(((BBObject*)((struct database_core_TDatabaseQuery_obj*)bbNullObjectTest((BBObject*)o))->_database_core_tdatabasequery_resultset )!= &bbNullObject){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x2ffeec19d53a3c22, 607, 0};
		bbOnDebugEnterStm(&__stmt_0);
		((struct database_core_TQueryResultSet_obj*)bbNullObjectTest((BBObject*)((struct database_core_TDatabaseQuery_obj*)bbNullObjectTest((BBObject*)o))->_database_core_tdatabasequery_resultset ))->clas->m_clearBindValues((struct database_core_TQueryResultSet_obj*)((struct database_core_TDatabaseQuery_obj*)bbNullObjectTest((BBObject*)o))->_database_core_tdatabasequery_resultset );
		bbOnDebugLeaveScope();
	}
	bbOnDebugLeaveScope();
}
BBLONG _database_core_TDatabaseQuery_lastInsertedId(struct database_core_TDatabaseQuery_obj* o){
	((struct database_core_TDatabaseQuery_obj*)bbNullObjectTest((BBObject*)o));
	struct BBDebugScope_1 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"lastInsertedId",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TDatabaseQuery",
				.var_address=&o
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x2ffeec19d53a3c22, 617, 0};
	bbOnDebugEnterStm(&__stmt_0);
	if(((BBObject*)((struct database_core_TDatabaseQuery_obj*)bbNullObjectTest((BBObject*)o))->_database_core_tdatabasequery_resultset )!= &bbNullObject){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x2ffeec19d53a3c22, 618, 0};
		bbOnDebugEnterStm(&__stmt_0);
		bbOnDebugLeaveScope();
		bbOnDebugLeaveScope();
		return ((struct database_core_TQueryResultSet_obj*)bbNullObjectTest((BBObject*)((struct database_core_TDatabaseQuery_obj*)bbNullObjectTest((BBObject*)o))->_database_core_tdatabasequery_resultset ))->clas->m_lastInsertedId((struct database_core_TQueryResultSet_obj*)((struct database_core_TDatabaseQuery_obj*)bbNullObjectTest((BBObject*)o))->_database_core_tdatabasequery_resultset );
	}
	bbOnDebugLeaveScope();
	return 0LL;
}
BBINT _database_core_TDatabaseQuery_rowsAffected(struct database_core_TDatabaseQuery_obj* o){
	((struct database_core_TDatabaseQuery_obj*)bbNullObjectTest((BBObject*)o));
	struct BBDebugScope_1 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"rowsAffected",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TDatabaseQuery",
				.var_address=&o
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x2ffeec19d53a3c22, 628, 0};
	bbOnDebugEnterStm(&__stmt_0);
	if(((BBObject*)((struct database_core_TDatabaseQuery_obj*)bbNullObjectTest((BBObject*)o))->_database_core_tdatabasequery_resultset )!= &bbNullObject){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x2ffeec19d53a3c22, 629, 0};
		bbOnDebugEnterStm(&__stmt_0);
		bbOnDebugLeaveScope();
		bbOnDebugLeaveScope();
		return ((struct database_core_TQueryResultSet_obj*)bbNullObjectTest((BBObject*)((struct database_core_TDatabaseQuery_obj*)bbNullObjectTest((BBObject*)o))->_database_core_tdatabasequery_resultset ))->clas->m_rowsAffected((struct database_core_TQueryResultSet_obj*)((struct database_core_TDatabaseQuery_obj*)bbNullObjectTest((BBObject*)o))->_database_core_tdatabasequery_resultset );
	}
	struct BBDebugStm __stmt_1 = {0x2ffeec19d53a3c22, 631, 0};
	bbOnDebugEnterStm(&__stmt_1);
	bbOnDebugLeaveScope();
	return -1;
}
struct database_core_TRowEnumerator_obj* _database_core_TDatabaseQuery_ObjectEnumerator(struct database_core_TDatabaseQuery_obj* o){
	((struct database_core_TDatabaseQuery_obj*)bbNullObjectTest((BBObject*)o));
	struct database_core_TRowEnumerator_obj* bbt_enumerator=(struct database_core_TRowEnumerator_obj*)((struct database_core_TRowEnumerator_obj*)&bbNullObject);
	struct BBDebugScope_2 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"ObjectEnumerator",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TDatabaseQuery",
				.var_address=&o
			},
			{
				BBDEBUGDECL_LOCAL,
				"enumerator",
				":TRowEnumerator",
				.var_address=&bbt_enumerator
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x2ffeec19d53a3c22, 636, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbt_enumerator=(struct database_core_TRowEnumerator_obj*)(struct database_core_TRowEnumerator_obj*)bbObjectNew((BBClass *)&database_core_TRowEnumerator);
	struct BBDebugStm __stmt_1 = {0x2ffeec19d53a3c22, 637, 0};
	bbOnDebugEnterStm(&__stmt_1);
	((struct database_core_TRowEnumerator_obj*)bbNullObjectTest((BBObject*)bbt_enumerator))->_database_core_trowenumerator_query =(struct database_core_TDatabaseQuery_obj*)o;
	struct BBDebugStm __stmt_2 = {0x2ffeec19d53a3c22, 639, 0};
	bbOnDebugEnterStm(&__stmt_2);
	bbOnDebugLeaveScope();
	return (struct database_core_TRowEnumerator_obj*)bbt_enumerator;
}
void _database_core_TDatabaseQuery_free(struct database_core_TDatabaseQuery_obj* o){
	((struct database_core_TDatabaseQuery_obj*)bbNullObjectTest((BBObject*)o));
	struct BBDebugScope_1 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"free",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TDatabaseQuery",
				.var_address=&o
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x2ffeec19d53a3c22, 643, 0};
	bbOnDebugEnterStm(&__stmt_0);
	if(((BBObject*)((struct database_core_TDatabaseQuery_obj*)bbNullObjectTest((BBObject*)o))->_database_core_tdatabasequery_resultset )!= &bbNullObject){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x2ffeec19d53a3c22, 644, 0};
		bbOnDebugEnterStm(&__stmt_0);
		((struct database_core_TQueryResultSet_obj*)bbNullObjectTest((BBObject*)((struct database_core_TDatabaseQuery_obj*)bbNullObjectTest((BBObject*)o))->_database_core_tdatabasequery_resultset ))->clas->m_free((struct database_core_TQueryResultSet_obj*)((struct database_core_TDatabaseQuery_obj*)bbNullObjectTest((BBObject*)o))->_database_core_tdatabasequery_resultset );
		struct BBDebugStm __stmt_1 = {0x2ffeec19d53a3c22, 645, 0};
		bbOnDebugEnterStm(&__stmt_1);
		((struct database_core_TDatabaseQuery_obj*)bbNullObjectTest((BBObject*)o))->_database_core_tdatabasequery_resultset =(struct database_core_TQueryResultSet_obj*)&bbNullObject;
		bbOnDebugLeaveScope();
	}
	struct BBDebugStm __stmt_1 = {0x2ffeec19d53a3c22, 648, 0};
	bbOnDebugEnterStm(&__stmt_1);
	if(((BBObject*)((struct database_core_TDatabaseQuery_obj*)bbNullObjectTest((BBObject*)o))->_database_core_tdatabasequery_conn )!= &bbNullObject){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x2ffeec19d53a3c22, 649, 0};
		bbOnDebugEnterStm(&__stmt_0);
		((struct database_core_TDatabaseQuery_obj*)bbNullObjectTest((BBObject*)o))->_database_core_tdatabasequery_conn =(struct database_core_TDBConnection_obj*)&bbNullObject;
		bbOnDebugLeaveScope();
	}
	bbOnDebugLeaveScope();
}
struct BBDebugScope_28 database_core_TDatabaseQuery_scope ={
	BBDEBUGSCOPE_USERTYPE,
	"TDatabaseQuery",
	{
		{
			BBDEBUGDECL_FIELD,
			"conn",
			":TDBConnection",
			.field_offset=offsetof(struct database_core_TDatabaseQuery_obj,_database_core_tdatabasequery_conn)
		},
		{
			BBDEBUGDECL_FIELD,
			"resultSet",
			":TQueryResultSet",
			.field_offset=offsetof(struct database_core_TDatabaseQuery_obj,_database_core_tdatabasequery_resultset)
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"New",
			"()",
			.func_ptr=(BBFuncPtr)&_database_core_TDatabaseQuery_New
		},
		{
			BBDEBUGDECL_TYPEFUNCTION,
			"Create",
			"(:TDBConnection):TDatabaseQuery",
			.func_ptr=(BBFuncPtr)&database_core_TDatabaseQuery_Create_TTDatabaseQuery_TTDBConnection
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"prepare",
			"($)i",
			.func_ptr=(BBFuncPtr)&_database_core_TDatabaseQuery_prepare_S
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"execute",
			"($)i",
			.func_ptr=(BBFuncPtr)&_database_core_TDatabaseQuery_execute_S
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"value",
			"(i):TDBType",
			.func_ptr=(BBFuncPtr)&_database_core_TDatabaseQuery_value_i
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"nextRow",
			"()i",
			.func_ptr=(BBFuncPtr)&_database_core_TDatabaseQuery_nextRow
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"isActive",
			"()i",
			.func_ptr=(BBFuncPtr)&_database_core_TDatabaseQuery_isActive
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"rowIndex",
			"()i",
			.func_ptr=(BBFuncPtr)&_database_core_TDatabaseQuery_rowIndex
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"rowRecord",
			"():TQueryRecord",
			.func_ptr=(BBFuncPtr)&_database_core_TDatabaseQuery_rowRecord
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"bindValue",
			"(i,:TDBType)",
			.func_ptr=(BBFuncPtr)&_database_core_TDatabaseQuery_bindValue_iTTDBType
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"addBindValue",
			"(:TDBType)",
			.func_ptr=(BBFuncPtr)&_database_core_TDatabaseQuery_addBindValue_TTDBType
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"setString",
			"(i,$)",
			.func_ptr=(BBFuncPtr)&_database_core_TDatabaseQuery_setString_iS
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"setInt",
			"(i,i)",
			.func_ptr=(BBFuncPtr)&_database_core_TDatabaseQuery_setInt_ii
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"setLong",
			"(i,l)",
			.func_ptr=(BBFuncPtr)&_database_core_TDatabaseQuery_setLong_il
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"setFloat",
			"(i,f)",
			.func_ptr=(BBFuncPtr)&_database_core_TDatabaseQuery_setFloat_if
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"setDouble",
			"(i,d)",
			.func_ptr=(BBFuncPtr)&_database_core_TDatabaseQuery_setDouble_id
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"addString",
			"($)",
			.func_ptr=(BBFuncPtr)&_database_core_TDatabaseQuery_addString_S
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"addInt",
			"(i)",
			.func_ptr=(BBFuncPtr)&_database_core_TDatabaseQuery_addInt_i
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"addLong",
			"(l)",
			.func_ptr=(BBFuncPtr)&_database_core_TDatabaseQuery_addLong_l
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"addFloat",
			"(f)",
			.func_ptr=(BBFuncPtr)&_database_core_TDatabaseQuery_addFloat_f
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"addDouble",
			"(d)",
			.func_ptr=(BBFuncPtr)&_database_core_TDatabaseQuery_addDouble_d
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"clearBindValues",
			"()",
			.func_ptr=(BBFuncPtr)&_database_core_TDatabaseQuery_clearBindValues
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"lastInsertedId",
			"()l",
			.func_ptr=(BBFuncPtr)&_database_core_TDatabaseQuery_lastInsertedId
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"rowsAffected",
			"()i",
			.func_ptr=(BBFuncPtr)&_database_core_TDatabaseQuery_rowsAffected
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"ObjectEnumerator",
			"():TRowEnumerator",
			.func_ptr=(BBFuncPtr)&_database_core_TDatabaseQuery_ObjectEnumerator
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"free",
			"()",
			.func_ptr=(BBFuncPtr)&_database_core_TDatabaseQuery_free
		},
		{
			BBDEBUGDECL_END
		}
	}
};
struct BBClass_database_core_TDatabaseQuery database_core_TDatabaseQuery={
	&bbObjectClass,
	bbObjectFree,
	(BBDebugScope*)&database_core_TDatabaseQuery_scope,
	sizeof(struct database_core_TDatabaseQuery_obj),
	(void (*)(BBOBJECT))_database_core_TDatabaseQuery_New,
	(void (*)(BBOBJECT))_database_core_TDatabaseQuery_Delete,
	bbObjectToString,
	bbObjectCompare,
	bbObjectSendMessage,
	0,
	0,
	offsetof(struct database_core_TDatabaseQuery_obj,_database_core_tdatabasequery_resultset) - offsetof(struct database_core_TDatabaseQuery_obj,_database_core_tdatabasequery_conn) + sizeof(struct database_core_TQueryResultSet_obj*)
	,0
	,offsetof(struct database_core_TDatabaseQuery_obj,_database_core_tdatabasequery_conn)
	,database_core_TDatabaseQuery_Create_TTDatabaseQuery_TTDBConnection
	,_database_core_TDatabaseQuery_prepare_S
	,_database_core_TDatabaseQuery_execute_S
	,_database_core_TDatabaseQuery_value_i
	,_database_core_TDatabaseQuery_nextRow
	,_database_core_TDatabaseQuery_isActive
	,_database_core_TDatabaseQuery_rowIndex
	,_database_core_TDatabaseQuery_rowRecord
	,_database_core_TDatabaseQuery_bindValue_iTTDBType
	,_database_core_TDatabaseQuery_addBindValue_TTDBType
	,_database_core_TDatabaseQuery_setString_iS
	,_database_core_TDatabaseQuery_setInt_ii
	,_database_core_TDatabaseQuery_setLong_il
	,_database_core_TDatabaseQuery_setFloat_if
	,_database_core_TDatabaseQuery_setDouble_id
	,_database_core_TDatabaseQuery_addString_S
	,_database_core_TDatabaseQuery_addInt_i
	,_database_core_TDatabaseQuery_addLong_l
	,_database_core_TDatabaseQuery_addFloat_f
	,_database_core_TDatabaseQuery_addDouble_d
	,_database_core_TDatabaseQuery_clearBindValues
	,_database_core_TDatabaseQuery_lastInsertedId
	,_database_core_TDatabaseQuery_rowsAffected
	,_database_core_TDatabaseQuery_ObjectEnumerator
	,_database_core_TDatabaseQuery_free
};

void _database_core_TRowEnumerator_New(struct database_core_TRowEnumerator_obj* o) {
	bbObjectCtor((BBOBJECT)o);
	o->clas = &database_core_TRowEnumerator;
	((struct database_core_TRowEnumerator_obj*)bbNullObjectTest((BBObject*)o))->_database_core_trowenumerator_query = (struct database_core_TDatabaseQuery_obj*)((struct database_core_TDatabaseQuery_obj*)&bbNullObject);
	((struct database_core_TRowEnumerator_obj*)bbNullObjectTest((BBObject*)o))->_database_core_trowenumerator_record = (struct database_core_TQueryRecord_obj*)((struct database_core_TQueryRecord_obj*)&bbNullObject);
}
void _database_core_TRowEnumerator_Delete(struct database_core_TRowEnumerator_obj* o) {
	struct BBDebugScope_1 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"Delete",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TRowEnumerator",
				.var_address=&o
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x2ffeec19d53a3c22, 677, 0};
	bbOnDebugEnterStm(&__stmt_0);
	((struct database_core_TRowEnumerator_obj*)bbNullObjectTest((BBObject*)o))->_database_core_trowenumerator_query =(struct database_core_TDatabaseQuery_obj*)&bbNullObject;
	struct BBDebugStm __stmt_1 = {0x2ffeec19d53a3c22, 678, 0};
	bbOnDebugEnterStm(&__stmt_1);
	((struct database_core_TRowEnumerator_obj*)bbNullObjectTest((BBObject*)o))->_database_core_trowenumerator_record =(struct database_core_TQueryRecord_obj*)&bbNullObject;
	bbOnDebugLeaveScope();
	bbObjectDtor((BBOBJECT)o);
}
BBINT _database_core_TRowEnumerator_HasNext(struct database_core_TRowEnumerator_obj* o){
	((struct database_core_TRowEnumerator_obj*)bbNullObjectTest((BBObject*)o));
	BBINT bbt_result=0;
	struct BBDebugScope_2 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"HasNext",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TRowEnumerator",
				.var_address=&o
			},
			{
				BBDEBUGDECL_LOCAL,
				"result",
				"i",
				.var_address=&bbt_result
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x2ffeec19d53a3c22, 662, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbt_result=((struct database_core_TDatabaseQuery_obj*)bbNullObjectTest((BBObject*)((struct database_core_TRowEnumerator_obj*)bbNullObjectTest((BBObject*)o))->_database_core_trowenumerator_query ))->clas->m_nextRow((struct database_core_TDatabaseQuery_obj*)((struct database_core_TRowEnumerator_obj*)bbNullObjectTest((BBObject*)o))->_database_core_trowenumerator_query );
	struct BBDebugStm __stmt_1 = {0x2ffeec19d53a3c22, 663, 0};
	bbOnDebugEnterStm(&__stmt_1);
	if(bbt_result!=0){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x2ffeec19d53a3c22, 664, 0};
		bbOnDebugEnterStm(&__stmt_0);
		((struct database_core_TRowEnumerator_obj*)bbNullObjectTest((BBObject*)o))->_database_core_trowenumerator_record =(struct database_core_TQueryRecord_obj*)((struct database_core_TDatabaseQuery_obj*)bbNullObjectTest((BBObject*)((struct database_core_TRowEnumerator_obj*)bbNullObjectTest((BBObject*)o))->_database_core_trowenumerator_query ))->clas->m_rowRecord((struct database_core_TDatabaseQuery_obj*)((struct database_core_TRowEnumerator_obj*)bbNullObjectTest((BBObject*)o))->_database_core_trowenumerator_query );
		struct BBDebugStm __stmt_1 = {0x2ffeec19d53a3c22, 665, 0};
		bbOnDebugEnterStm(&__stmt_1);
		if(((struct database_core_TQueryRecord_obj*)bbNullObjectTest((BBObject*)((struct database_core_TRowEnumerator_obj*)bbNullObjectTest((BBObject*)o))->_database_core_trowenumerator_record ))->_database_core_tqueryrecord__isemptyset !=0){
			struct BBDebugScope __scope = {
				BBDEBUGSCOPE_LOCALBLOCK,
				0,
				{
					{
						BBDEBUGDECL_END
					}
				}
			};
			bbOnDebugEnterScope((BBDebugScope *)&__scope);
			struct BBDebugStm __stmt_0 = {0x2ffeec19d53a3c22, 666, 0};
			bbOnDebugEnterStm(&__stmt_0);
			bbOnDebugLeaveScope();
			bbOnDebugLeaveScope();
			bbOnDebugLeaveScope();
			return 0;
		}
		bbOnDebugLeaveScope();
	}
	struct BBDebugStm __stmt_2 = {0x2ffeec19d53a3c22, 669, 0};
	bbOnDebugEnterStm(&__stmt_2);
	bbOnDebugLeaveScope();
	return bbt_result;
}
BBOBJECT _database_core_TRowEnumerator_NextObject(struct database_core_TRowEnumerator_obj* o){
	((struct database_core_TRowEnumerator_obj*)bbNullObjectTest((BBObject*)o));
	struct BBDebugScope_1 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"NextObject",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TRowEnumerator",
				.var_address=&o
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x2ffeec19d53a3c22, 673, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbOnDebugLeaveScope();
	return (BBOBJECT)((struct database_core_TRowEnumerator_obj*)bbNullObjectTest((BBObject*)o))->_database_core_trowenumerator_record ;
}
struct BBDebugScope_5 database_core_TRowEnumerator_scope ={
	BBDEBUGSCOPE_USERTYPE,
	"TRowEnumerator",
	{
		{
			BBDEBUGDECL_FIELD,
			"query",
			":TDatabaseQuery",
			.field_offset=offsetof(struct database_core_TRowEnumerator_obj,_database_core_trowenumerator_query)
		},
		{
			BBDEBUGDECL_FIELD,
			"record",
			":TQueryRecord",
			.field_offset=offsetof(struct database_core_TRowEnumerator_obj,_database_core_trowenumerator_record)
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"New",
			"()",
			.func_ptr=(BBFuncPtr)&_database_core_TRowEnumerator_New
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"HasNext",
			"()i",
			.func_ptr=(BBFuncPtr)&_database_core_TRowEnumerator_HasNext
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"NextObject",
			"():Object",
			.func_ptr=(BBFuncPtr)&_database_core_TRowEnumerator_NextObject
		},
		{
			BBDEBUGDECL_END
		}
	}
};
struct BBClass_database_core_TRowEnumerator database_core_TRowEnumerator={
	&bbObjectClass,
	bbObjectFree,
	(BBDebugScope*)&database_core_TRowEnumerator_scope,
	sizeof(struct database_core_TRowEnumerator_obj),
	(void (*)(BBOBJECT))_database_core_TRowEnumerator_New,
	(void (*)(BBOBJECT))_database_core_TRowEnumerator_Delete,
	bbObjectToString,
	bbObjectCompare,
	bbObjectSendMessage,
	0,
	0,
	offsetof(struct database_core_TRowEnumerator_obj,_database_core_trowenumerator_record) - offsetof(struct database_core_TRowEnumerator_obj,_database_core_trowenumerator_query) + sizeof(struct database_core_TQueryRecord_obj*)
	,0
	,offsetof(struct database_core_TRowEnumerator_obj,_database_core_trowenumerator_query)
	,_database_core_TRowEnumerator_HasNext
	,_database_core_TRowEnumerator_NextObject
};

void _database_core_TQueryResultSet_New(struct database_core_TQueryResultSet_obj* o) {
	bbObjectCtor((BBOBJECT)o);
	o->clas = &database_core_TQueryResultSet;
	((struct database_core_TQueryResultSet_obj*)bbNullObjectTest((BBObject*)o))->_database_core_tqueryresultset_conn = (struct database_core_TDBConnection_obj*)((struct database_core_TDBConnection_obj*)&bbNullObject);
	((struct database_core_TQueryResultSet_obj*)bbNullObjectTest((BBObject*)o))->_database_core_tqueryresultset_stmthandle = 0;
	((struct database_core_TQueryResultSet_obj*)bbNullObjectTest((BBObject*)o))->_database_core_tqueryresultset_query = ((BBString*)&bbEmptyString);
	((struct database_core_TQueryResultSet_obj*)bbNullObjectTest((BBObject*)o))->_database_core_tqueryresultset__isactive = 0;
	((struct database_core_TQueryResultSet_obj*)bbNullObjectTest((BBObject*)o))->_database_core_tqueryresultset_index = -1;
	((struct database_core_TQueryResultSet_obj*)bbNullObjectTest((BBObject*)o))->_database_core_tqueryresultset_values = (&bbEmptyArray);
	((struct database_core_TQueryResultSet_obj*)bbNullObjectTest((BBObject*)o))->_database_core_tqueryresultset_bindcount = 0;
	((struct database_core_TQueryResultSet_obj*)bbNullObjectTest((BBObject*)o))->_database_core_tqueryresultset_boundvalues = (&bbEmptyArray);
	((struct database_core_TQueryResultSet_obj*)bbNullObjectTest((BBObject*)o))->_database_core_tqueryresultset_rec = (struct database_core_TQueryRecord_obj*)((struct database_core_TQueryRecord_obj*)&bbNullObject);
}
void _database_core_TQueryResultSet_Delete(struct database_core_TQueryResultSet_obj* o) {
	struct BBDebugScope_1 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"Delete",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TQueryResultSet",
				.var_address=&o
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x2ffeec19d53a3c22, 849, 0};
	bbOnDebugEnterStm(&__stmt_0);
	((struct database_core_TQueryResultSet_obj*)bbNullObjectTest((BBObject*)o));
	((struct database_core_TQueryResultSet_obj*)o)->clas->m_free((struct database_core_TQueryResultSet_obj*)o);
	bbOnDebugLeaveScope();
	BBRELEASE(((struct database_core_TQueryResultSet_obj*)bbNullObjectTest((BBObject*)o))->_database_core_tqueryresultset_query )
	bbObjectDtor((BBOBJECT)o);
}
struct database_core_TQueryResultSet_obj* database_core_TQueryResultSet_Create_TTQueryResultSet_TTDBConnectionS(struct database_core_TDBConnection_obj* bbt_db,BBSTRING bbt_sql){
	brl_blitz_NullMethodError();
	return (struct database_core_TQueryResultSet_obj*)((struct database_core_TQueryResultSet_obj*)&bbNullObject);
}
void _database_core_TQueryResultSet_Init_TTDBConnectionS(struct database_core_TQueryResultSet_obj* o,struct database_core_TDBConnection_obj* bbt_db,BBSTRING bbt_sql){
	((struct database_core_TQueryResultSet_obj*)bbNullObjectTest((BBObject*)o));
	struct BBDebugScope_3 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"Init",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TQueryResultSet",
				.var_address=&o
			},
			{
				BBDEBUGDECL_LOCAL,
				"db",
				":TDBConnection",
				.var_address=&bbt_db
			},
			{
				BBDEBUGDECL_LOCAL,
				"sql",
				"$",
				.var_address=&bbt_sql
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x2ffeec19d53a3c22, 708, 0};
	bbOnDebugEnterStm(&__stmt_0);
	((struct database_core_TQueryResultSet_obj*)bbNullObjectTest((BBObject*)o))->_database_core_tqueryresultset_conn =(struct database_core_TDBConnection_obj*)bbt_db;
	struct BBDebugStm __stmt_1 = {0x2ffeec19d53a3c22, 709, 0};
	bbOnDebugEnterStm(&__stmt_1);
	((struct database_core_TQueryResultSet_obj*)bbNullObjectTest((BBObject*)o))->_database_core_tqueryresultset_query =bbt_sql;
	bbOnDebugLeaveScope();
}
void _database_core_TQueryResultSet_clearBindValues(struct database_core_TQueryResultSet_obj* o){
	((struct database_core_TQueryResultSet_obj*)bbNullObjectTest((BBObject*)o));
	struct BBDebugScope_1 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"clearBindValues",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TQueryResultSet",
				.var_address=&o
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x2ffeec19d53a3c22, 714, 0};
	bbOnDebugEnterStm(&__stmt_0);
	if(((struct database_core_TQueryResultSet_obj*)bbNullObjectTest((BBObject*)o))->_database_core_tqueryresultset_boundvalues != &bbEmptyArray){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x2ffeec19d53a3c22, 715, 0};
		bbOnDebugEnterStm(&__stmt_0);
		{
			BBINT bbt_i=0;
			BBINT bbt_=(((struct database_core_TQueryResultSet_obj*)bbNullObjectTest((BBObject*)o))->_database_core_tqueryresultset_boundvalues ->scales[0]);
			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 = {0x2ffeec19d53a3c22, 716, 0};
				bbOnDebugEnterStm(&__stmt_0);
				if(((BBObject*)((struct database_core_dbtypes_TDBType_obj**)BBARRAYDATAINDEX((((struct database_core_TQueryResultSet_obj*)bbNullObjectTest((BBObject*)o))->_database_core_tqueryresultset_boundvalues ),(((struct database_core_TQueryResultSet_obj*)bbNullObjectTest((BBObject*)o))->_database_core_tqueryresultset_boundvalues )->dims,((BBUINT)bbt_i)))[((BBUINT)bbt_i)])!= &bbNullObject){
					struct BBDebugScope __scope = {
						BBDEBUGSCOPE_LOCALBLOCK,
						0,
						{
							{
								BBDEBUGDECL_END
							}
						}
					};
					bbOnDebugEnterScope((BBDebugScope *)&__scope);
					struct BBDebugStm __stmt_0 = {0x2ffeec19d53a3c22, 717, 0};
					bbOnDebugEnterStm(&__stmt_0);
					struct database_core_dbtypes_TDBType_obj* bbt_2;
					(((struct database_core_dbtypes_TDBType_obj*)bbNullObjectTest((BBObject*)(bbt_2 = ((struct database_core_dbtypes_TDBType_obj**)BBARRAYDATAINDEX((((struct database_core_TQueryResultSet_obj*)bbNullObjectTest((BBObject*)o))->_database_core_tqueryresultset_boundvalues ),(((struct database_core_TQueryResultSet_obj*)bbNullObjectTest((BBObject*)o))->_database_core_tqueryresultset_boundvalues )->dims,((BBUINT)bbt_i)))[((BBUINT)bbt_i)])))->clas)->m_clear((struct database_core_dbtypes_TDBType_obj*)bbt_2);
					bbOnDebugLeaveScope();
				}
				bbOnDebugLeaveScope();
			}
		}
		struct BBDebugStm __stmt_1 = {0x2ffeec19d53a3c22, 722, 0};
		bbOnDebugEnterStm(&__stmt_1);
		((struct database_core_TQueryResultSet_obj*)bbNullObjectTest((BBObject*)o))->_database_core_tqueryresultset_bindcount =0;
		bbOnDebugLeaveScope();
	}
	struct BBDebugStm __stmt_1 = {0x2ffeec19d53a3c22, 725, 0};
	bbOnDebugEnterStm(&__stmt_1);
	if(((struct database_core_TQueryResultSet_obj*)bbNullObjectTest((BBObject*)o))->_database_core_tqueryresultset_values != &bbEmptyArray){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x2ffeec19d53a3c22, 726, 0};
		bbOnDebugEnterStm(&__stmt_0);
		{
			BBINT bbt_i2=0;
			BBINT bbt_3=(((struct database_core_TQueryResultSet_obj*)bbNullObjectTest((BBObject*)o))->_database_core_tqueryresultset_values ->scales[0]);
			for(;(bbt_i2<bbt_3);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 = {0x2ffeec19d53a3c22, 727, 0};
				bbOnDebugEnterStm(&__stmt_0);
				if(((BBObject*)((struct database_core_dbtypes_TDBType_obj**)BBARRAYDATAINDEX((((struct database_core_TQueryResultSet_obj*)bbNullObjectTest((BBObject*)o))->_database_core_tqueryresultset_values ),(((struct database_core_TQueryResultSet_obj*)bbNullObjectTest((BBObject*)o))->_database_core_tqueryresultset_values )->dims,((BBUINT)bbt_i2)))[((BBUINT)bbt_i2)])!= &bbNullObject){
					struct BBDebugScope __scope = {
						BBDEBUGSCOPE_LOCALBLOCK,
						0,
						{
							{
								BBDEBUGDECL_END
							}
						}
					};
					bbOnDebugEnterScope((BBDebugScope *)&__scope);
					struct BBDebugStm __stmt_0 = {0x2ffeec19d53a3c22, 728, 0};
					bbOnDebugEnterStm(&__stmt_0);
					struct database_core_dbtypes_TDBType_obj* bbt_4;
					(((struct database_core_dbtypes_TDBType_obj*)bbNullObjectTest((BBObject*)(bbt_4 = ((struct database_core_dbtypes_TDBType_obj**)BBARRAYDATAINDEX((((struct database_core_TQueryResultSet_obj*)bbNullObjectTest((BBObject*)o))->_database_core_tqueryresultset_values ),(((struct database_core_TQueryResultSet_obj*)bbNullObjectTest((BBObject*)o))->_database_core_tqueryresultset_values )->dims,((BBUINT)bbt_i2)))[((BBUINT)bbt_i2)])))->clas)->m_clear((struct database_core_dbtypes_TDBType_obj*)bbt_4);
					bbOnDebugLeaveScope();
				}
				bbOnDebugLeaveScope();
			}
		}
		bbOnDebugLeaveScope();
	}
	bbOnDebugLeaveScope();
}
void _database_core_TQueryResultSet_clear(struct database_core_TQueryResultSet_obj* o){
	((struct database_core_TQueryResultSet_obj*)bbNullObjectTest((BBObject*)o));
	struct BBDebugScope_1 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"clear",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TQueryResultSet",
				.var_address=&o
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x2ffeec19d53a3c22, 738, 0};
	bbOnDebugEnterStm(&__stmt_0);
	((struct database_core_TQueryResultSet_obj*)bbNullObjectTest((BBObject*)o));
	((struct database_core_TQueryResultSet_obj*)o)->clas->m_clearBindValues((struct database_core_TQueryResultSet_obj*)o);
	bbOnDebugLeaveScope();
}
BBINT _database_core_TQueryResultSet_executeQuery_S(struct database_core_TQueryResultSet_obj* o,BBSTRING bbt_statement){
	brl_blitz_NullMethodError();
	return 0;
}
BBINT _database_core_TQueryResultSet_prepare_S(struct database_core_TQueryResultSet_obj* o,BBSTRING bbt_statement){
	brl_blitz_NullMethodError();
	return 0;
}
BBINT _database_core_TQueryResultSet_execute(struct database_core_TQueryResultSet_obj* o){
	brl_blitz_NullMethodError();
	return 0;
}
BBINT _database_core_TQueryResultSet_firstRow(struct database_core_TQueryResultSet_obj* o){
	brl_blitz_NullMethodError();
	return 0;
}
BBINT _database_core_TQueryResultSet_nextRow(struct database_core_TQueryResultSet_obj* o){
	brl_blitz_NullMethodError();
	return 0;
}
BBLONG _database_core_TQueryResultSet_lastInsertedId(struct database_core_TQueryResultSet_obj* o){
	brl_blitz_NullMethodError();
	return 0LL;
}
BBINT _database_core_TQueryResultSet_rowsAffected(struct database_core_TQueryResultSet_obj* o){
	brl_blitz_NullMethodError();
	return 0;
}
BBINT database_core_TQueryResultSet_dbTypeFromNative_i_Sii(BBSTRING bbt_name,BBINT bbt__type,BBINT bbt__flags){
	brl_blitz_NullMethodError();
	return 0;
}
struct database_core_TQueryRecord_obj* _database_core_TQueryResultSet_rowRecord(struct database_core_TQueryResultSet_obj* o){
	((struct database_core_TQueryResultSet_obj*)bbNullObjectTest((BBObject*)o));
	struct BBDebugScope_1 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"rowRecord",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TQueryResultSet",
				.var_address=&o
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x2ffeec19d53a3c22, 755, 0};
	bbOnDebugEnterStm(&__stmt_0);
	((struct database_core_TQueryResultSet_obj*)bbNullObjectTest((BBObject*)o));
	if(!(((struct database_core_TQueryResultSet_obj*)o)->clas->m_isActive((struct database_core_TQueryResultSet_obj*)o)!=0)){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x2ffeec19d53a3c22, 756, 0};
		bbOnDebugEnterStm(&__stmt_0);
		bbOnDebugLeaveScope();
		bbOnDebugLeaveScope();
		return (struct database_core_TQueryRecord_obj*)database_core_TQueryRecord_Create_TTQueryRecord();
	}
	struct BBDebugStm __stmt_1 = {0x2ffeec19d53a3c22, 759, 0};
	bbOnDebugEnterStm(&__stmt_1);
	bbOnDebugLeaveScope();
	return (struct database_core_TQueryRecord_obj*)((struct database_core_TQueryResultSet_obj*)bbNullObjectTest((BBObject*)o))->_database_core_tqueryresultset_rec ;
}
struct database_core_dbtypes_TDBType_obj* _database_core_TQueryResultSet_dataValue_i(struct database_core_TQueryResultSet_obj* o,BBINT bbt_index){
	((struct database_core_TQueryResultSet_obj*)bbNullObjectTest((BBObject*)o));
	struct BBDebugScope_2 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"dataValue",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TQueryResultSet",
				.var_address=&o
			},
			{
				BBDEBUGDECL_LOCAL,
				"index",
				"i",
				.var_address=&bbt_index
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x2ffeec19d53a3c22, 763, 0};
	bbOnDebugEnterStm(&__stmt_0);
	((struct database_core_TQueryResultSet_obj*)bbNullObjectTest((BBObject*)o));
	if(((((struct database_core_TQueryResultSet_obj*)o)->clas->m_isActive((struct database_core_TQueryResultSet_obj*)o)!=0) && (((BBObject*)((struct database_core_TQueryResultSet_obj*)bbNullObjectTest((BBObject*)o))->_database_core_tqueryresultset_rec )!= &bbNullObject)) && !(((struct database_core_TQueryRecord_obj*)bbNullObjectTest((BBObject*)((struct database_core_TQueryResultSet_obj*)bbNullObjectTest((BBObject*)o))->_database_core_tqueryresultset_rec ))->clas->m_isEmpty((struct database_core_TQueryRecord_obj*)((struct database_core_TQueryResultSet_obj*)bbNullObjectTest((BBObject*)o))->_database_core_tqueryresultset_rec )!=0)){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x2ffeec19d53a3c22, 764, 0};
		bbOnDebugEnterStm(&__stmt_0);
		if((bbt_index>=0) && (bbt_index<((struct database_core_TQueryRecord_obj*)bbNullObjectTest((BBObject*)((struct database_core_TQueryResultSet_obj*)bbNullObjectTest((BBObject*)o))->_database_core_tqueryresultset_rec ))->clas->m_count((struct database_core_TQueryRecord_obj*)((struct database_core_TQueryResultSet_obj*)bbNullObjectTest((BBObject*)o))->_database_core_tqueryresultset_rec ))){
			struct BBDebugScope __scope = {
				BBDEBUGSCOPE_LOCALBLOCK,
				0,
				{
					{
						BBDEBUGDECL_END
					}
				}
			};
			bbOnDebugEnterScope((BBDebugScope *)&__scope);
			struct BBDebugStm __stmt_0 = {0x2ffeec19d53a3c22, 765, 0};
			bbOnDebugEnterStm(&__stmt_0);
			bbOnDebugLeaveScope();
			bbOnDebugLeaveScope();
			bbOnDebugLeaveScope();
			return (struct database_core_dbtypes_TDBType_obj*)((struct database_core_dbtypes_TDBType_obj**)BBARRAYDATAINDEX((((struct database_core_TQueryResultSet_obj*)bbNullObjectTest((BBObject*)o))->_database_core_tqueryresultset_values ),(((struct database_core_TQueryResultSet_obj*)bbNullObjectTest((BBObject*)o))->_database_core_tqueryresultset_values )->dims,((BBUINT)bbt_index)))[((BBUINT)bbt_index)];
		}
		bbOnDebugLeaveScope();
	}
	struct BBDebugStm __stmt_1 = {0x2ffeec19d53a3c22, 769, 0};
	bbOnDebugEnterStm(&__stmt_1);
	bbOnDebugLeaveScope();
	return (struct database_core_dbtypes_TDBType_obj*)&bbNullObject;
}
BBINT _database_core_TQueryResultSet_rowIndex(struct database_core_TQueryResultSet_obj* o){
	((struct database_core_TQueryResultSet_obj*)bbNullObjectTest((BBObject*)o));
	struct BBDebugScope_1 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"rowIndex",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TQueryResultSet",
				.var_address=&o
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x2ffeec19d53a3c22, 773, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbOnDebugLeaveScope();
	return ((struct database_core_TQueryResultSet_obj*)bbNullObjectTest((BBObject*)o))->_database_core_tqueryresultset_index ;
}
void _database_core_TQueryResultSet_setRowIndex_i(struct database_core_TQueryResultSet_obj* o,BBINT bbt_i){
	((struct database_core_TQueryResultSet_obj*)bbNullObjectTest((BBObject*)o));
	struct BBDebugScope_2 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"setRowIndex",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TQueryResultSet",
				.var_address=&o
			},
			{
				BBDEBUGDECL_LOCAL,
				"i",
				"i",
				.var_address=&bbt_i
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x2ffeec19d53a3c22, 777, 0};
	bbOnDebugEnterStm(&__stmt_0);
	((struct database_core_TQueryResultSet_obj*)bbNullObjectTest((BBObject*)o))->_database_core_tqueryresultset_index =bbt_i;
	bbOnDebugLeaveScope();
}
BBINT _database_core_TQueryResultSet_isActive(struct database_core_TQueryResultSet_obj* o){
	((struct database_core_TQueryResultSet_obj*)bbNullObjectTest((BBObject*)o));
	struct BBDebugScope_1 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"isActive",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TQueryResultSet",
				.var_address=&o
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x2ffeec19d53a3c22, 781, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbOnDebugLeaveScope();
	return ((struct database_core_TQueryResultSet_obj*)bbNullObjectTest((BBObject*)o))->_database_core_tqueryresultset__isactive ;
}
BBINT _database_core_TQueryResultSet_isValid(struct database_core_TQueryResultSet_obj* o){
	((struct database_core_TQueryResultSet_obj*)bbNullObjectTest((BBObject*)o));
	struct BBDebugScope_1 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"isValid",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TQueryResultSet",
				.var_address=&o
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x2ffeec19d53a3c22, 785, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbOnDebugLeaveScope();
	return ((((struct database_core_TQueryResultSet_obj*)bbNullObjectTest((BBObject*)o))->_database_core_tqueryresultset_index !=-1) && (((struct database_core_TQueryResultSet_obj*)bbNullObjectTest((BBObject*)o))->_database_core_tqueryresultset_index !=-2));
}
void _database_core_TQueryResultSet_resetValues_i(struct database_core_TQueryResultSet_obj* o,BBINT bbt_size){
	((struct database_core_TQueryResultSet_obj*)bbNullObjectTest((BBObject*)o));
	struct BBDebugScope_2 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"resetValues",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TQueryResultSet",
				.var_address=&o
			},
			{
				BBDEBUGDECL_LOCAL,
				"size",
				"i",
				.var_address=&bbt_size
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x2ffeec19d53a3c22, 789, 0};
	bbOnDebugEnterStm(&__stmt_0);
	if(((struct database_core_TQueryResultSet_obj*)bbNullObjectTest((BBObject*)o))->_database_core_tqueryresultset_values != &bbEmptyArray){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x2ffeec19d53a3c22, 790, 0};
		bbOnDebugEnterStm(&__stmt_0);
		{
			BBINT bbt_i=0;
			BBINT bbt_=(((struct database_core_TQueryResultSet_obj*)bbNullObjectTest((BBObject*)o))->_database_core_tqueryresultset_values ->scales[0]);
			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 = {0x2ffeec19d53a3c22, 791, 0};
				bbOnDebugEnterStm(&__stmt_0);
				if(((BBObject*)((struct database_core_dbtypes_TDBType_obj**)BBARRAYDATAINDEX((((struct database_core_TQueryResultSet_obj*)bbNullObjectTest((BBObject*)o))->_database_core_tqueryresultset_values ),(((struct database_core_TQueryResultSet_obj*)bbNullObjectTest((BBObject*)o))->_database_core_tqueryresultset_values )->dims,((BBUINT)bbt_i)))[((BBUINT)bbt_i)])!= &bbNullObject){
					struct BBDebugScope __scope = {
						BBDEBUGSCOPE_LOCALBLOCK,
						0,
						{
							{
								BBDEBUGDECL_END
							}
						}
					};
					bbOnDebugEnterScope((BBDebugScope *)&__scope);
					struct BBDebugStm __stmt_0 = {0x2ffeec19d53a3c22, 792, 0};
					bbOnDebugEnterStm(&__stmt_0);
					struct database_core_dbtypes_TDBType_obj* bbt_2;
					(((struct database_core_dbtypes_TDBType_obj*)bbNullObjectTest((BBObject*)(bbt_2 = ((struct database_core_dbtypes_TDBType_obj**)BBARRAYDATAINDEX((((struct database_core_TQueryResultSet_obj*)bbNullObjectTest((BBObject*)o))->_database_core_tqueryresultset_values ),(((struct database_core_TQueryResultSet_obj*)bbNullObjectTest((BBObject*)o))->_database_core_tqueryresultset_values )->dims,((BBUINT)bbt_i)))[((BBUINT)bbt_i)])))->clas)->m_clear((struct database_core_dbtypes_TDBType_obj*)bbt_2);
					bbOnDebugLeaveScope();
				}
				bbOnDebugLeaveScope();
			}
		}
		struct BBDebugStm __stmt_1 = {0x2ffeec19d53a3c22, 795, 0};
		bbOnDebugEnterStm(&__stmt_1);
		((struct database_core_TQueryResultSet_obj*)bbNullObjectTest((BBObject*)o))->_database_core_tqueryresultset_values =(&bbEmptyArray);
		bbOnDebugLeaveScope();
	}
	struct BBDebugStm __stmt_1 = {0x2ffeec19d53a3c22, 798, 0};
	bbOnDebugEnterStm(&__stmt_1);
	((struct database_core_TQueryResultSet_obj*)bbNullObjectTest((BBObject*)o))->_database_core_tqueryresultset_values =bbArrayNew1D(":TDBType", bbt_size);
	bbOnDebugLeaveScope();
}
void _database_core_TQueryResultSet_resetBindCount(struct database_core_TQueryResultSet_obj* o){
	((struct database_core_TQueryResultSet_obj*)bbNullObjectTest((BBObject*)o));
	struct BBDebugScope_1 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"resetBindCount",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TQueryResultSet",
				.var_address=&o
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x2ffeec19d53a3c22, 802, 0};
	bbOnDebugEnterStm(&__stmt_0);
	((struct database_core_TQueryResultSet_obj*)bbNullObjectTest((BBObject*)o))->_database_core_tqueryresultset_bindcount =0;
	bbOnDebugLeaveScope();
}
void _database_core_TQueryResultSet_addBindValue_TTDBType(struct database_core_TQueryResultSet_obj* o,struct database_core_dbtypes_TDBType_obj* bbt_value){
	((struct database_core_TQueryResultSet_obj*)bbNullObjectTest((BBObject*)o));
	struct BBDebugScope_2 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"addBindValue",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TQueryResultSet",
				.var_address=&o
			},
			{
				BBDEBUGDECL_LOCAL,
				"value",
				":TDBType",
				.var_address=&bbt_value
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x2ffeec19d53a3c22, 806, 0};
	bbOnDebugEnterStm(&__stmt_0);
	((struct database_core_TQueryResultSet_obj*)bbNullObjectTest((BBObject*)o));
	((struct database_core_TQueryResultSet_obj*)o)->clas->m_bindValue_iTTDBType((struct database_core_TQueryResultSet_obj*)o,((struct database_core_TQueryResultSet_obj*)bbNullObjectTest((BBObject*)o))->_database_core_tqueryresultset_bindcount ,(struct database_core_dbtypes_TDBType_obj*)bbt_value);
	bbOnDebugLeaveScope();
}
void _database_core_TQueryResultSet_bindValue_iTTDBType(struct database_core_TQueryResultSet_obj* o,BBINT bbt_index,struct database_core_dbtypes_TDBType_obj* bbt_value){
	((struct database_core_TQueryResultSet_obj*)bbNullObjectTest((BBObject*)o));
	struct BBDebugScope_3 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"bindValue",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TQueryResultSet",
				.var_address=&o
			},
			{
				BBDEBUGDECL_LOCAL,
				"index",
				"i",
				.var_address=&bbt_index
			},
			{
				BBDEBUGDECL_LOCAL,
				"value",
				":TDBType",
				.var_address=&bbt_value
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x2ffeec19d53a3c22, 810, 0};
	bbOnDebugEnterStm(&__stmt_0);
	if(!(((struct database_core_TQueryResultSet_obj*)bbNullObjectTest((BBObject*)o))->_database_core_tqueryresultset_boundvalues != &bbEmptyArray)){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x2ffeec19d53a3c22, 811, 0};
		bbOnDebugEnterStm(&__stmt_0);
		((struct database_core_TQueryResultSet_obj*)bbNullObjectTest((BBObject*)o))->_database_core_tqueryresultset_boundvalues =bbArrayNew1D(":TDBType", (bbt_index+1));
		bbOnDebugLeaveScope();
	}
	struct BBDebugStm __stmt_1 = {0x2ffeec19d53a3c22, 815, 0};
	bbOnDebugEnterStm(&__stmt_1);
	if((((struct database_core_TQueryResultSet_obj*)bbNullObjectTest((BBObject*)o))->_database_core_tqueryresultset_boundvalues ->scales[0])<=bbt_index){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x2ffeec19d53a3c22, 816, 0};
		bbOnDebugEnterStm(&__stmt_0);
		((struct database_core_TQueryResultSet_obj*)bbNullObjectTest((BBObject*)o))->_database_core_tqueryresultset_boundvalues =bbArraySlice(":TDBType",((struct database_core_TQueryResultSet_obj*)bbNullObjectTest((BBObject*)o))->_database_core_tqueryresultset_boundvalues ,0,(bbt_index+1));
		bbOnDebugLeaveScope();
	}
	struct BBDebugStm __stmt_2 = {0x2ffeec19d53a3c22, 820, 0};
	bbOnDebugEnterStm(&__stmt_2);
	if(bbt_index>((struct database_core_TQueryResultSet_obj*)bbNullObjectTest((BBObject*)o))->_database_core_tqueryresultset_bindcount ){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x2ffeec19d53a3c22, 821, 0};
		bbOnDebugEnterStm(&__stmt_0);
		((struct database_core_TQueryResultSet_obj*)bbNullObjectTest((BBObject*)o))->_database_core_tqueryresultset_bindcount =bbt_index;
		bbOnDebugLeaveScope();
	}
	struct BBDebugStm __stmt_3 = {0x2ffeec19d53a3c22, 825, 0};
	bbOnDebugEnterStm(&__stmt_3);
	if(bbt_index==((struct database_core_TQueryResultSet_obj*)bbNullObjectTest((BBObject*)o))->_database_core_tqueryresultset_bindcount ){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x2ffeec19d53a3c22, 826, 0};
		bbOnDebugEnterStm(&__stmt_0);
		((struct database_core_TQueryResultSet_obj*)bbNullObjectTest((BBObject*)o))->_database_core_tqueryresultset_bindcount +=1;
		bbOnDebugLeaveScope();
	}
	struct BBDebugStm __stmt_4 = {0x2ffeec19d53a3c22, 830, 0};
	bbOnDebugEnterStm(&__stmt_4);
	if(((BBObject*)((struct database_core_dbtypes_TDBType_obj**)BBARRAYDATAINDEX((((struct database_core_TQueryResultSet_obj*)bbNullObjectTest((BBObject*)o))->_database_core_tqueryresultset_boundvalues ),(((struct database_core_TQueryResultSet_obj*)bbNullObjectTest((BBObject*)o))->_database_core_tqueryresultset_boundvalues )->dims,((BBUINT)bbt_index)))[((BBUINT)bbt_index)])!= &bbNullObject){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x2ffeec19d53a3c22, 831, 0};
		bbOnDebugEnterStm(&__stmt_0);
		struct database_core_dbtypes_TDBType_obj* bbt_;
		(((struct database_core_dbtypes_TDBType_obj*)bbNullObjectTest((BBObject*)(bbt_ = ((struct database_core_dbtypes_TDBType_obj**)BBARRAYDATAINDEX((((struct database_core_TQueryResultSet_obj*)bbNullObjectTest((BBObject*)o))->_database_core_tqueryresultset_boundvalues ),(((struct database_core_TQueryResultSet_obj*)bbNullObjectTest((BBObject*)o))->_database_core_tqueryresultset_boundvalues )->dims,((BBUINT)bbt_index)))[((BBUINT)bbt_index)])))->clas)->m_clear((struct database_core_dbtypes_TDBType_obj*)bbt_);
		struct BBDebugStm __stmt_1 = {0x2ffeec19d53a3c22, 832, 0};
		bbOnDebugEnterStm(&__stmt_1);
		((struct database_core_dbtypes_TDBType_obj**)BBARRAYDATAINDEX((((struct database_core_TQueryResultSet_obj*)bbNullObjectTest((BBObject*)o))->_database_core_tqueryresultset_boundvalues ),(((struct database_core_TQueryResultSet_obj*)bbNullObjectTest((BBObject*)o))->_database_core_tqueryresultset_boundvalues )->dims,((BBUINT)bbt_index)))[((BBUINT)bbt_index)]=(struct database_core_dbtypes_TDBType_obj*)&bbNullObject;
		bbOnDebugLeaveScope();
	}
	struct BBDebugStm __stmt_5 = {0x2ffeec19d53a3c22, 835, 0};
	bbOnDebugEnterStm(&__stmt_5);
	((struct database_core_dbtypes_TDBType_obj**)BBARRAYDATAINDEX((((struct database_core_TQueryResultSet_obj*)bbNullObjectTest((BBObject*)o))->_database_core_tqueryresultset_boundvalues ),(((struct database_core_TQueryResultSet_obj*)bbNullObjectTest((BBObject*)o))->_database_core_tqueryresultset_boundvalues )->dims,((BBUINT)bbt_index)))[((BBUINT)bbt_index)]=(struct database_core_dbtypes_TDBType_obj*)bbt_value;
	bbOnDebugLeaveScope();
}
void _database_core_TQueryResultSet_reset(struct database_core_TQueryResultSet_obj* o){
	((struct database_core_TQueryResultSet_obj*)bbNullObjectTest((BBObject*)o));
	struct BBDebugScope_1 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"reset",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TQueryResultSet",
				.var_address=&o
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	bbOnDebugLeaveScope();
}
void _database_core_TQueryResultSet_free(struct database_core_TQueryResultSet_obj* o){
	((struct database_core_TQueryResultSet_obj*)bbNullObjectTest((BBObject*)o));
	struct BBDebugScope_1 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"free",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TQueryResultSet",
				.var_address=&o
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x2ffeec19d53a3c22, 842, 0};
	bbOnDebugEnterStm(&__stmt_0);
	((struct database_core_TQueryResultSet_obj*)bbNullObjectTest((BBObject*)o));
	((struct database_core_TQueryResultSet_obj*)o)->clas->m_clear((struct database_core_TQueryResultSet_obj*)o);
	struct BBDebugStm __stmt_1 = {0x2ffeec19d53a3c22, 843, 0};
	bbOnDebugEnterStm(&__stmt_1);
	((struct database_core_TQueryResultSet_obj*)bbNullObjectTest((BBObject*)o))->_database_core_tqueryresultset_values =(&bbEmptyArray);
	struct BBDebugStm __stmt_2 = {0x2ffeec19d53a3c22, 844, 0};
	bbOnDebugEnterStm(&__stmt_2);
	((struct database_core_TQueryResultSet_obj*)bbNullObjectTest((BBObject*)o))->_database_core_tqueryresultset_boundvalues =(&bbEmptyArray);
	struct BBDebugStm __stmt_3 = {0x2ffeec19d53a3c22, 845, 0};
	bbOnDebugEnterStm(&__stmt_3);
	((struct database_core_TQueryResultSet_obj*)bbNullObjectTest((BBObject*)o))->_database_core_tqueryresultset_rec =(struct database_core_TQueryRecord_obj*)&bbNullObject;
	bbOnDebugLeaveScope();
}
struct BBDebugScope_25 database_core_TQueryResultSet_scope ={
	BBDEBUGSCOPE_USERTYPE,
	"TQueryResultSet",
	{
		{
			BBDEBUGDECL_FIELD,
			"conn",
			":TDBConnection",
			.field_offset=offsetof(struct database_core_TQueryResultSet_obj,_database_core_tqueryresultset_conn)
		},
		{
			BBDEBUGDECL_FIELD,
			"stmtHandle",
			"*b",
			.field_offset=offsetof(struct database_core_TQueryResultSet_obj,_database_core_tqueryresultset_stmthandle)
		},
		{
			BBDEBUGDECL_FIELD,
			"query",
			"$",
			.field_offset=offsetof(struct database_core_TQueryResultSet_obj,_database_core_tqueryresultset_query)
		},
		{
			BBDEBUGDECL_FIELD,
			"_isActive",
			"i",
			.field_offset=offsetof(struct database_core_TQueryResultSet_obj,_database_core_tqueryresultset__isactive)
		},
		{
			BBDEBUGDECL_FIELD,
			"index",
			"i",
			.field_offset=offsetof(struct database_core_TQueryResultSet_obj,_database_core_tqueryresultset_index)
		},
		{
			BBDEBUGDECL_FIELD,
			"values",
			"[]:TDBType",
			.field_offset=offsetof(struct database_core_TQueryResultSet_obj,_database_core_tqueryresultset_values)
		},
		{
			BBDEBUGDECL_FIELD,
			"bindCount",
			"i",
			.field_offset=offsetof(struct database_core_TQueryResultSet_obj,_database_core_tqueryresultset_bindcount)
		},
		{
			BBDEBUGDECL_FIELD,
			"boundValues",
			"[]:TDBType",
			.field_offset=offsetof(struct database_core_TQueryResultSet_obj,_database_core_tqueryresultset_boundvalues)
		},
		{
			BBDEBUGDECL_FIELD,
			"rec",
			":TQueryRecord",
			.field_offset=offsetof(struct database_core_TQueryResultSet_obj,_database_core_tqueryresultset_rec)
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"New",
			"()",
			.func_ptr=(BBFuncPtr)&_database_core_TQueryResultSet_New
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"Init",
			"(:TDBConnection,$)",
			.func_ptr=(BBFuncPtr)&_database_core_TQueryResultSet_Init_TTDBConnectionS
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"clearBindValues",
			"()",
			.func_ptr=(BBFuncPtr)&_database_core_TQueryResultSet_clearBindValues
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"clear",
			"()",
			.func_ptr=(BBFuncPtr)&_database_core_TQueryResultSet_clear
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"rowRecord",
			"():TQueryRecord",
			.func_ptr=(BBFuncPtr)&_database_core_TQueryResultSet_rowRecord
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"dataValue",
			"(i):TDBType",
			.func_ptr=(BBFuncPtr)&_database_core_TQueryResultSet_dataValue_i
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"rowIndex",
			"()i",
			.func_ptr=(BBFuncPtr)&_database_core_TQueryResultSet_rowIndex
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"setRowIndex",
			"(i)",
			.func_ptr=(BBFuncPtr)&_database_core_TQueryResultSet_setRowIndex_i
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"isActive",
			"()i",
			.func_ptr=(BBFuncPtr)&_database_core_TQueryResultSet_isActive
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"isValid",
			"()i",
			.func_ptr=(BBFuncPtr)&_database_core_TQueryResultSet_isValid
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"resetValues",
			"(i)",
			.func_ptr=(BBFuncPtr)&_database_core_TQueryResultSet_resetValues_i
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"resetBindCount",
			"()",
			.func_ptr=(BBFuncPtr)&_database_core_TQueryResultSet_resetBindCount
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"addBindValue",
			"(:TDBType)",
			.func_ptr=(BBFuncPtr)&_database_core_TQueryResultSet_addBindValue_TTDBType
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"bindValue",
			"(i,:TDBType)",
			.func_ptr=(BBFuncPtr)&_database_core_TQueryResultSet_bindValue_iTTDBType
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"reset",
			"()",
			.func_ptr=(BBFuncPtr)&_database_core_TQueryResultSet_reset
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"free",
			"()",
			.func_ptr=(BBFuncPtr)&_database_core_TQueryResultSet_free
		},
		{
			BBDEBUGDECL_END
		}
	}
};
struct BBClass_database_core_TQueryResultSet database_core_TQueryResultSet={
	&bbObjectClass,
	bbObjectFree,
	(BBDebugScope*)&database_core_TQueryResultSet_scope,
	sizeof(struct database_core_TQueryResultSet_obj),
	(void (*)(BBOBJECT))_database_core_TQueryResultSet_New,
	(void (*)(BBOBJECT))_database_core_TQueryResultSet_Delete,
	bbObjectToString,
	bbObjectCompare,
	bbObjectSendMessage,
	0,
	0,
	offsetof(struct database_core_TQueryResultSet_obj,_database_core_tqueryresultset_rec) - offsetof(struct database_core_TQueryResultSet_obj,_database_core_tqueryresultset_conn) + sizeof(struct database_core_TQueryRecord_obj*)
	,0
	,offsetof(struct database_core_TQueryResultSet_obj,_database_core_tqueryresultset_conn)
	,database_core_TQueryResultSet_Create_TTQueryResultSet_TTDBConnectionS
	,_database_core_TQueryResultSet_Init_TTDBConnectionS
	,_database_core_TQueryResultSet_clearBindValues
	,_database_core_TQueryResultSet_clear
	,_database_core_TQueryResultSet_executeQuery_S
	,_database_core_TQueryResultSet_prepare_S
	,_database_core_TQueryResultSet_execute
	,_database_core_TQueryResultSet_firstRow
	,_database_core_TQueryResultSet_nextRow
	,_database_core_TQueryResultSet_lastInsertedId
	,_database_core_TQueryResultSet_rowsAffected
	,database_core_TQueryResultSet_dbTypeFromNative_i_Sii
	,_database_core_TQueryResultSet_rowRecord
	,_database_core_TQueryResultSet_dataValue_i
	,_database_core_TQueryResultSet_rowIndex
	,_database_core_TQueryResultSet_setRowIndex_i
	,_database_core_TQueryResultSet_isActive
	,_database_core_TQueryResultSet_isValid
	,_database_core_TQueryResultSet_resetValues_i
	,_database_core_TQueryResultSet_resetBindCount
	,_database_core_TQueryResultSet_addBindValue_TTDBType
	,_database_core_TQueryResultSet_bindValue_iTTDBType
	,_database_core_TQueryResultSet_reset
	,_database_core_TQueryResultSet_free
};

void _database_core_TQueryRecord_New(struct database_core_TQueryRecord_obj* o) {
	bbObjectCtor((BBOBJECT)o);
	o->clas = &database_core_TQueryRecord;
	((struct database_core_TQueryRecord_obj*)bbNullObjectTest((BBObject*)o))->_database_core_tqueryrecord__empty = 1;
	((struct database_core_TQueryRecord_obj*)bbNullObjectTest((BBObject*)o))->_database_core_tqueryrecord__isemptyset = 0;
	((struct database_core_TQueryRecord_obj*)bbNullObjectTest((BBObject*)o))->_database_core_tqueryrecord_fields = (&bbEmptyArray);
	((struct database_core_TQueryRecord_obj*)bbNullObjectTest((BBObject*)o))->_database_core_tqueryrecord_fieldsmap = (struct brl_map_TMap_obj*)((struct brl_map_TMap_obj*)&bbNullObject);
}
void _database_core_TQueryRecord_Delete(struct database_core_TQueryRecord_obj* o) {
	struct BBDebugScope_1 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"Delete",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TQueryRecord",
				.var_address=&o
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x2ffeec19d53a3c22, 1078, 0};
	bbOnDebugEnterStm(&__stmt_0);
	((struct database_core_TQueryRecord_obj*)bbNullObjectTest((BBObject*)o));
	((struct database_core_TQueryRecord_obj*)o)->clas->m_clear((struct database_core_TQueryRecord_obj*)o);
	bbOnDebugLeaveScope();
	bbObjectDtor((BBOBJECT)o);
}
struct database_core_TQueryRecord_obj* database_core_TQueryRecord_Create_TTQueryRecord(){
	struct database_core_TQueryRecord_obj* bbt_this=(struct database_core_TQueryRecord_obj*)((struct database_core_TQueryRecord_obj*)&bbNullObject);
	struct BBDebugScope_1 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"Create",
		{
			{
				BBDEBUGDECL_LOCAL,
				"this",
				":TQueryRecord",
				.var_address=&bbt_this
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x2ffeec19d53a3c22, 865, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbt_this=(struct database_core_TQueryRecord_obj*)(struct database_core_TQueryRecord_obj*)bbObjectNew((BBClass *)&database_core_TQueryRecord);
	struct BBDebugStm __stmt_1 = {0x2ffeec19d53a3c22, 867, 0};
	bbOnDebugEnterStm(&__stmt_1);
	bbOnDebugLeaveScope();
	return (struct database_core_TQueryRecord_obj*)bbt_this;
}
struct database_core_TQueryField_obj* _database_core_TQueryRecord_getField_i(struct database_core_TQueryRecord_obj* o,BBINT bbt_index){
	((struct database_core_TQueryRecord_obj*)bbNullObjectTest((BBObject*)o));
	struct BBDebugScope_2 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"getField",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TQueryRecord",
				.var_address=&o
			},
			{
				BBDEBUGDECL_LOCAL,
				"index",
				"i",
				.var_address=&bbt_index
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x2ffeec19d53a3c22, 874, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbOnDebugLeaveScope();
	return (struct database_core_TQueryField_obj*)((struct database_core_TQueryField_obj**)BBARRAYDATAINDEX((((struct database_core_TQueryRecord_obj*)bbNullObjectTest((BBObject*)o))->_database_core_tqueryrecord_fields ),(((struct database_core_TQueryRecord_obj*)bbNullObjectTest((BBObject*)o))->_database_core_tqueryrecord_fields )->dims,((BBUINT)bbt_index)))[((BBUINT)bbt_index)];
}
struct database_core_TQueryField_obj* _database_core_TQueryRecord_getFieldByName_S(struct database_core_TQueryRecord_obj* o,BBSTRING bbt_name){
	((struct database_core_TQueryRecord_obj*)bbNullObjectTest((BBObject*)o));
	struct BBDebugScope_2 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"getFieldByName",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TQueryRecord",
				.var_address=&o
			},
			{
				BBDEBUGDECL_LOCAL,
				"name",
				"$",
				.var_address=&bbt_name
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x2ffeec19d53a3c22, 881, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbOnDebugLeaveScope();
	return (struct database_core_TQueryField_obj*)((struct database_core_TQueryField_obj*)bbObjectDowncast((BBOBJECT)((struct brl_map_TMap_obj*)bbNullObjectTest((BBObject*)((struct database_core_TQueryRecord_obj*)bbNullObjectTest((BBObject*)o))->_database_core_tqueryrecord_fieldsmap ))->clas->m_ValueForKey_TObject((struct brl_map_TMap_obj*)((struct database_core_TQueryRecord_obj*)bbNullObjectTest((BBObject*)o))->_database_core_tqueryrecord_fieldsmap ,(BBOBJECT)bbt_name),(BBClass*)&database_core_TQueryField));
}
BBINT _database_core_TQueryRecord_indexOf_S(struct database_core_TQueryRecord_obj* o,BBSTRING bbt_name){
	((struct database_core_TQueryRecord_obj*)bbNullObjectTest((BBObject*)o));
	struct BBDebugScope_2 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"indexOf",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TQueryRecord",
				.var_address=&o
			},
			{
				BBDEBUGDECL_LOCAL,
				"name",
				"$",
				.var_address=&bbt_name
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x2ffeec19d53a3c22, 889, 0};
	bbOnDebugEnterStm(&__stmt_0);
	{
		BBINT bbt_i=0;
		BBINT bbt_=(((struct database_core_TQueryRecord_obj*)bbNullObjectTest((BBObject*)o))->_database_core_tqueryrecord_fields ->scales[0]);
		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 = {0x2ffeec19d53a3c22, 890, 0};
			bbOnDebugEnterStm(&__stmt_0);
			if(bbStringEquals(bbt_name, ((struct database_core_TQueryField_obj*)bbNullObjectTest((BBObject*)((struct database_core_TQueryField_obj**)BBARRAYDATAINDEX((((struct database_core_TQueryRecord_obj*)bbNullObjectTest((BBObject*)o))->_database_core_tqueryrecord_fields ),(((struct database_core_TQueryRecord_obj*)bbNullObjectTest((BBObject*)o))->_database_core_tqueryrecord_fields )->dims,((BBUINT)bbt_i)))[((BBUINT)bbt_i)]))->_database_core_tqueryfield_name )==1){
				struct BBDebugScope __scope = {
					BBDEBUGSCOPE_LOCALBLOCK,
					0,
					{
						{
							BBDEBUGDECL_END
						}
					}
				};
				bbOnDebugEnterScope((BBDebugScope *)&__scope);
				struct BBDebugStm __stmt_0 = {0x2ffeec19d53a3c22, 891, 0};
				bbOnDebugEnterStm(&__stmt_0);
				bbOnDebugLeaveScope();
				bbOnDebugLeaveScope();
				bbOnDebugLeaveScope();
				return bbt_i;
			}
			bbOnDebugLeaveScope();
		}
	}
	struct BBDebugStm __stmt_1 = {0x2ffeec19d53a3c22, 895, 0};
	bbOnDebugEnterStm(&__stmt_1);
	bbOnDebugLeaveScope();
	return -1;
}
BBINT _database_core_TQueryRecord_count(struct database_core_TQueryRecord_obj* o){
	((struct database_core_TQueryRecord_obj*)bbNullObjectTest((BBObject*)o));
	struct BBDebugScope_1 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"count",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TQueryRecord",
				.var_address=&o
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x2ffeec19d53a3c22, 903, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbOnDebugLeaveScope();
	return (((struct database_core_TQueryRecord_obj*)bbNullObjectTest((BBObject*)o))->_database_core_tqueryrecord_fields ->scales[0]);
}
BBINT _database_core_TQueryRecord_isEmpty(struct database_core_TQueryRecord_obj* o){
	((struct database_core_TQueryRecord_obj*)bbNullObjectTest((BBObject*)o));
	struct BBDebugScope_1 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"isEmpty",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TQueryRecord",
				.var_address=&o
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x2ffeec19d53a3c22, 907, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbOnDebugLeaveScope();
	return ((struct database_core_TQueryRecord_obj*)bbNullObjectTest((BBObject*)o))->_database_core_tqueryrecord__empty ;
}
void _database_core_TQueryRecord_setValue_iTObject(struct database_core_TQueryRecord_obj* o,BBINT bbt_index,BBOBJECT bbt_value){
	((struct database_core_TQueryRecord_obj*)bbNullObjectTest((BBObject*)o));
	struct BBDebugScope_3 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"setValue",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TQueryRecord",
				.var_address=&o
			},
			{
				BBDEBUGDECL_LOCAL,
				"index",
				"i",
				.var_address=&bbt_index
			},
			{
				BBDEBUGDECL_LOCAL,
				"value",
				":Object",
				.var_address=&bbt_value
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x2ffeec19d53a3c22, 911, 0};
	bbOnDebugEnterStm(&__stmt_0);
	if((bbt_index>=0) && (bbt_index<(((struct database_core_TQueryRecord_obj*)bbNullObjectTest((BBObject*)o))->_database_core_tqueryrecord_fields ->scales[0]))){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x2ffeec19d53a3c22, 912, 0};
		bbOnDebugEnterStm(&__stmt_0);
		struct database_core_TQueryField_obj* bbt_;
		(((struct database_core_TQueryField_obj*)bbNullObjectTest((BBObject*)(bbt_ = ((struct database_core_TQueryField_obj**)BBARRAYDATAINDEX((((struct database_core_TQueryRecord_obj*)bbNullObjectTest((BBObject*)o))->_database_core_tqueryrecord_fields ),(((struct database_core_TQueryRecord_obj*)bbNullObjectTest((BBObject*)o))->_database_core_tqueryrecord_fields )->dims,((BBUINT)bbt_index)))[((BBUINT)bbt_index)])))->clas)->m_setValue_TObject((struct database_core_TQueryField_obj*)bbt_,(BBOBJECT)bbt_value);
		bbOnDebugLeaveScope();
	}
	bbOnDebugLeaveScope();
}
struct database_core_dbtypes_TDBType_obj* _database_core_TQueryRecord_value_i(struct database_core_TQueryRecord_obj* o,BBINT bbt_index){
	((struct database_core_TQueryRecord_obj*)bbNullObjectTest((BBObject*)o));
	struct BBDebugScope_2 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"value",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TQueryRecord",
				.var_address=&o
			},
			{
				BBDEBUGDECL_LOCAL,
				"index",
				"i",
				.var_address=&bbt_index
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x2ffeec19d53a3c22, 921, 0};
	bbOnDebugEnterStm(&__stmt_0);
	if(((struct database_core_TQueryRecord_obj*)bbNullObjectTest((BBObject*)o))->_database_core_tqueryrecord_fields != &bbEmptyArray){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x2ffeec19d53a3c22, 922, 0};
		bbOnDebugEnterStm(&__stmt_0);
		if((bbt_index>=0) && (bbt_index<(((struct database_core_TQueryRecord_obj*)bbNullObjectTest((BBObject*)o))->_database_core_tqueryrecord_fields ->scales[0]))){
			struct BBDebugScope __scope = {
				BBDEBUGSCOPE_LOCALBLOCK,
				0,
				{
					{
						BBDEBUGDECL_END
					}
				}
			};
			bbOnDebugEnterScope((BBDebugScope *)&__scope);
			struct BBDebugStm __stmt_0 = {0x2ffeec19d53a3c22, 923, 0};
			bbOnDebugEnterStm(&__stmt_0);
			bbOnDebugLeaveScope();
			bbOnDebugLeaveScope();
			bbOnDebugLeaveScope();
			return (struct database_core_dbtypes_TDBType_obj*)((struct database_core_TQueryField_obj*)bbNullObjectTest((BBObject*)((struct database_core_TQueryField_obj**)BBARRAYDATAINDEX((((struct database_core_TQueryRecord_obj*)bbNullObjectTest((BBObject*)o))->_database_core_tqueryrecord_fields ),(((struct database_core_TQueryRecord_obj*)bbNullObjectTest((BBObject*)o))->_database_core_tqueryrecord_fields )->dims,((BBUINT)bbt_index)))[((BBUINT)bbt_index)]))->_database_core_tqueryfield_value ;
		}
		bbOnDebugLeaveScope();
	}
	struct BBDebugStm __stmt_1 = {0x2ffeec19d53a3c22, 926, 0};
	bbOnDebugEnterStm(&__stmt_1);
	bbOnDebugLeaveScope();
	return (struct database_core_dbtypes_TDBType_obj*)&bbNullObject;
}
BBSTRING _database_core_TQueryRecord_getString_i(struct database_core_TQueryRecord_obj* o,BBINT bbt_index){
	((struct database_core_TQueryRecord_obj*)bbNullObjectTest((BBObject*)o));
	struct database_core_dbtypes_TDBType_obj* bbt_v=(struct database_core_dbtypes_TDBType_obj*)((struct database_core_dbtypes_TDBType_obj*)&bbNullObject);
	struct BBDebugScope_3 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"getString",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TQueryRecord",
				.var_address=&o
			},
			{
				BBDEBUGDECL_LOCAL,
				"index",
				"i",
				.var_address=&bbt_index
			},
			{
				BBDEBUGDECL_LOCAL,
				"v",
				":TDBType",
				.var_address=&bbt_v
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x2ffeec19d53a3c22, 934, 0};
	bbOnDebugEnterStm(&__stmt_0);
	((struct database_core_TQueryRecord_obj*)bbNullObjectTest((BBObject*)o));
	bbt_v=(struct database_core_dbtypes_TDBType_obj*)((struct database_core_TQueryRecord_obj*)o)->clas->m_value_i((struct database_core_TQueryRecord_obj*)o,bbt_index);
	struct BBDebugStm __stmt_1 = {0x2ffeec19d53a3c22, 935, 0};
	bbOnDebugEnterStm(&__stmt_1);
	if(((BBObject*)bbt_v)!= &bbNullObject){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x2ffeec19d53a3c22, 936, 0};
		bbOnDebugEnterStm(&__stmt_0);
		bbOnDebugLeaveScope();
		bbOnDebugLeaveScope();
		return ((struct database_core_dbtypes_TDBType_obj*)bbNullObjectTest((BBObject*)bbt_v))->clas->m_getString((struct database_core_dbtypes_TDBType_obj*)bbt_v);
	}
	bbOnDebugLeaveScope();
	return ((BBString*)&bbEmptyString);
}
BBSTRING _database_core_TQueryRecord_getStringByName_S(struct database_core_TQueryRecord_obj* o,BBSTRING bbt_name){
	((struct database_core_TQueryRecord_obj*)bbNullObjectTest((BBObject*)o));
	struct database_core_TQueryField_obj* bbt_f=(struct database_core_TQueryField_obj*)((struct database_core_TQueryField_obj*)&bbNullObject);
	struct BBDebugScope_3 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"getStringByName",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TQueryRecord",
				.var_address=&o
			},
			{
				BBDEBUGDECL_LOCAL,
				"name",
				"$",
				.var_address=&bbt_name
			},
			{
				BBDEBUGDECL_LOCAL,
				"f",
				":TQueryField",
				.var_address=&bbt_f
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x2ffeec19d53a3c22, 945, 0};
	bbOnDebugEnterStm(&__stmt_0);
	((struct database_core_TQueryRecord_obj*)bbNullObjectTest((BBObject*)o));
	bbt_f=(struct database_core_TQueryField_obj*)((struct database_core_TQueryRecord_obj*)o)->clas->m_getFieldByName_S((struct database_core_TQueryRecord_obj*)o,bbt_name);
	struct BBDebugStm __stmt_1 = {0x2ffeec19d53a3c22, 946, 0};
	bbOnDebugEnterStm(&__stmt_1);
	if((((BBObject*)bbt_f)!= &bbNullObject) && (((BBObject*)((struct database_core_TQueryField_obj*)bbNullObjectTest((BBObject*)bbt_f))->_database_core_tqueryfield_value )!= &bbNullObject)){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x2ffeec19d53a3c22, 947, 0};
		bbOnDebugEnterStm(&__stmt_0);
		struct database_core_dbtypes_TDBType_obj* bbt_;
		bbOnDebugLeaveScope();
		bbOnDebugLeaveScope();
		return (((struct database_core_dbtypes_TDBType_obj*)((struct database_core_dbtypes_TDBType_obj*)bbNullObjectTest((BBObject*)(bbt_ = ((struct database_core_TQueryField_obj*)bbNullObjectTest((BBObject*)bbt_f))->_database_core_tqueryfield_value ))))->clas)->m_getString((struct database_core_dbtypes_TDBType_obj*)bbt_);
	}
	bbOnDebugLeaveScope();
	return ((BBString*)&bbEmptyString);
}
BBINT _database_core_TQueryRecord_getInt_i(struct database_core_TQueryRecord_obj* o,BBINT bbt_index){
	((struct database_core_TQueryRecord_obj*)bbNullObjectTest((BBObject*)o));
	struct database_core_dbtypes_TDBType_obj* bbt_v=(struct database_core_dbtypes_TDBType_obj*)((struct database_core_dbtypes_TDBType_obj*)&bbNullObject);
	struct BBDebugScope_3 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"getInt",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TQueryRecord",
				.var_address=&o
			},
			{
				BBDEBUGDECL_LOCAL,
				"index",
				"i",
				.var_address=&bbt_index
			},
			{
				BBDEBUGDECL_LOCAL,
				"v",
				":TDBType",
				.var_address=&bbt_v
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x2ffeec19d53a3c22, 956, 0};
	bbOnDebugEnterStm(&__stmt_0);
	((struct database_core_TQueryRecord_obj*)bbNullObjectTest((BBObject*)o));
	bbt_v=(struct database_core_dbtypes_TDBType_obj*)((struct database_core_TQueryRecord_obj*)o)->clas->m_value_i((struct database_core_TQueryRecord_obj*)o,bbt_index);
	struct BBDebugStm __stmt_1 = {0x2ffeec19d53a3c22, 957, 0};
	bbOnDebugEnterStm(&__stmt_1);
	if(((BBObject*)bbt_v)!= &bbNullObject){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x2ffeec19d53a3c22, 958, 0};
		bbOnDebugEnterStm(&__stmt_0);
		bbOnDebugLeaveScope();
		bbOnDebugLeaveScope();
		return ((struct database_core_dbtypes_TDBType_obj*)bbNullObjectTest((BBObject*)bbt_v))->clas->m_getInt((struct database_core_dbtypes_TDBType_obj*)bbt_v);
	}
	bbOnDebugLeaveScope();
	return 0;
}
BBINT _database_core_TQueryRecord_getIntByName_S(struct database_core_TQueryRecord_obj* o,BBSTRING bbt_name){
	((struct database_core_TQueryRecord_obj*)bbNullObjectTest((BBObject*)o));
	struct database_core_TQueryField_obj* bbt_f=(struct database_core_TQueryField_obj*)((struct database_core_TQueryField_obj*)&bbNullObject);
	struct BBDebugScope_3 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"getIntByName",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TQueryRecord",
				.var_address=&o
			},
			{
				BBDEBUGDECL_LOCAL,
				"name",
				"$",
				.var_address=&bbt_name
			},
			{
				BBDEBUGDECL_LOCAL,
				"f",
				":TQueryField",
				.var_address=&bbt_f
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x2ffeec19d53a3c22, 967, 0};
	bbOnDebugEnterStm(&__stmt_0);
	((struct database_core_TQueryRecord_obj*)bbNullObjectTest((BBObject*)o));
	bbt_f=(struct database_core_TQueryField_obj*)((struct database_core_TQueryRecord_obj*)o)->clas->m_getFieldByName_S((struct database_core_TQueryRecord_obj*)o,bbt_name);
	struct BBDebugStm __stmt_1 = {0x2ffeec19d53a3c22, 968, 0};
	bbOnDebugEnterStm(&__stmt_1);
	if((((BBObject*)bbt_f)!= &bbNullObject) && (((BBObject*)((struct database_core_TQueryField_obj*)bbNullObjectTest((BBObject*)bbt_f))->_database_core_tqueryfield_value )!= &bbNullObject)){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x2ffeec19d53a3c22, 969, 0};
		bbOnDebugEnterStm(&__stmt_0);
		struct database_core_dbtypes_TDBType_obj* bbt_;
		bbOnDebugLeaveScope();
		bbOnDebugLeaveScope();
		return (((struct database_core_dbtypes_TDBType_obj*)((struct database_core_dbtypes_TDBType_obj*)bbNullObjectTest((BBObject*)(bbt_ = ((struct database_core_TQueryField_obj*)bbNullObjectTest((BBObject*)bbt_f))->_database_core_tqueryfield_value ))))->clas)->m_getInt((struct database_core_dbtypes_TDBType_obj*)bbt_);
	}
	bbOnDebugLeaveScope();
	return 0;
}
BBLONG _database_core_TQueryRecord_getLong_i(struct database_core_TQueryRecord_obj* o,BBINT bbt_index){
	((struct database_core_TQueryRecord_obj*)bbNullObjectTest((BBObject*)o));
	struct database_core_dbtypes_TDBType_obj* bbt_v=(struct database_core_dbtypes_TDBType_obj*)((struct database_core_dbtypes_TDBType_obj*)&bbNullObject);
	struct BBDebugScope_3 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"getLong",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TQueryRecord",
				.var_address=&o
			},
			{
				BBDEBUGDECL_LOCAL,
				"index",
				"i",
				.var_address=&bbt_index
			},
			{
				BBDEBUGDECL_LOCAL,
				"v",
				":TDBType",
				.var_address=&bbt_v
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x2ffeec19d53a3c22, 978, 0};
	bbOnDebugEnterStm(&__stmt_0);
	((struct database_core_TQueryRecord_obj*)bbNullObjectTest((BBObject*)o));
	bbt_v=(struct database_core_dbtypes_TDBType_obj*)((struct database_core_TQueryRecord_obj*)o)->clas->m_value_i((struct database_core_TQueryRecord_obj*)o,bbt_index);
	struct BBDebugStm __stmt_1 = {0x2ffeec19d53a3c22, 979, 0};
	bbOnDebugEnterStm(&__stmt_1);
	if(((BBObject*)bbt_v)!= &bbNullObject){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x2ffeec19d53a3c22, 980, 0};
		bbOnDebugEnterStm(&__stmt_0);
		bbOnDebugLeaveScope();
		bbOnDebugLeaveScope();
		return ((struct database_core_dbtypes_TDBType_obj*)bbNullObjectTest((BBObject*)bbt_v))->clas->m_getLong((struct database_core_dbtypes_TDBType_obj*)bbt_v);
	}
	bbOnDebugLeaveScope();
	return 0LL;
}
BBLONG _database_core_TQueryRecord_getLongByName_S(struct database_core_TQueryRecord_obj* o,BBSTRING bbt_name){
	((struct database_core_TQueryRecord_obj*)bbNullObjectTest((BBObject*)o));
	struct database_core_TQueryField_obj* bbt_f=(struct database_core_TQueryField_obj*)((struct database_core_TQueryField_obj*)&bbNullObject);
	struct BBDebugScope_3 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"getLongByName",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TQueryRecord",
				.var_address=&o
			},
			{
				BBDEBUGDECL_LOCAL,
				"name",
				"$",
				.var_address=&bbt_name
			},
			{
				BBDEBUGDECL_LOCAL,
				"f",
				":TQueryField",
				.var_address=&bbt_f
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x2ffeec19d53a3c22, 989, 0};
	bbOnDebugEnterStm(&__stmt_0);
	((struct database_core_TQueryRecord_obj*)bbNullObjectTest((BBObject*)o));
	bbt_f=(struct database_core_TQueryField_obj*)((struct database_core_TQueryRecord_obj*)o)->clas->m_getFieldByName_S((struct database_core_TQueryRecord_obj*)o,bbt_name);
	struct BBDebugStm __stmt_1 = {0x2ffeec19d53a3c22, 990, 0};
	bbOnDebugEnterStm(&__stmt_1);
	if((((BBObject*)bbt_f)!= &bbNullObject) && (((BBObject*)((struct database_core_TQueryField_obj*)bbNullObjectTest((BBObject*)bbt_f))->_database_core_tqueryfield_value )!= &bbNullObject)){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x2ffeec19d53a3c22, 991, 0};
		bbOnDebugEnterStm(&__stmt_0);
		struct database_core_dbtypes_TDBType_obj* bbt_;
		bbOnDebugLeaveScope();
		bbOnDebugLeaveScope();
		return (((struct database_core_dbtypes_TDBType_obj*)((struct database_core_dbtypes_TDBType_obj*)bbNullObjectTest((BBObject*)(bbt_ = ((struct database_core_TQueryField_obj*)bbNullObjectTest((BBObject*)bbt_f))->_database_core_tqueryfield_value ))))->clas)->m_getLong((struct database_core_dbtypes_TDBType_obj*)bbt_);
	}
	bbOnDebugLeaveScope();
	return 0LL;
}
BBFLOAT _database_core_TQueryRecord_getFloat_i(struct database_core_TQueryRecord_obj* o,BBINT bbt_index){
	((struct database_core_TQueryRecord_obj*)bbNullObjectTest((BBObject*)o));
	struct database_core_dbtypes_TDBType_obj* bbt_v=(struct database_core_dbtypes_TDBType_obj*)((struct database_core_dbtypes_TDBType_obj*)&bbNullObject);
	struct BBDebugScope_3 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"getFloat",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TQueryRecord",
				.var_address=&o
			},
			{
				BBDEBUGDECL_LOCAL,
				"index",
				"i",
				.var_address=&bbt_index
			},
			{
				BBDEBUGDECL_LOCAL,
				"v",
				":TDBType",
				.var_address=&bbt_v
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x2ffeec19d53a3c22, 1000, 0};
	bbOnDebugEnterStm(&__stmt_0);
	((struct database_core_TQueryRecord_obj*)bbNullObjectTest((BBObject*)o));
	bbt_v=(struct database_core_dbtypes_TDBType_obj*)((struct database_core_TQueryRecord_obj*)o)->clas->m_value_i((struct database_core_TQueryRecord_obj*)o,bbt_index);
	struct BBDebugStm __stmt_1 = {0x2ffeec19d53a3c22, 1001, 0};
	bbOnDebugEnterStm(&__stmt_1);
	if(((BBObject*)bbt_v)!= &bbNullObject){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x2ffeec19d53a3c22, 1002, 0};
		bbOnDebugEnterStm(&__stmt_0);
		bbOnDebugLeaveScope();
		bbOnDebugLeaveScope();
		return ((struct database_core_dbtypes_TDBType_obj*)bbNullObjectTest((BBObject*)bbt_v))->clas->m_getFloat((struct database_core_dbtypes_TDBType_obj*)bbt_v);
	}
	bbOnDebugLeaveScope();
	return .00000000f;
}
BBFLOAT _database_core_TQueryRecord_getFloatByName_S(struct database_core_TQueryRecord_obj* o,BBSTRING bbt_name){
	((struct database_core_TQueryRecord_obj*)bbNullObjectTest((BBObject*)o));
	struct database_core_TQueryField_obj* bbt_f=(struct database_core_TQueryField_obj*)((struct database_core_TQueryField_obj*)&bbNullObject);
	struct BBDebugScope_3 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"getFloatByName",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TQueryRecord",
				.var_address=&o
			},
			{
				BBDEBUGDECL_LOCAL,
				"name",
				"$",
				.var_address=&bbt_name
			},
			{
				BBDEBUGDECL_LOCAL,
				"f",
				":TQueryField",
				.var_address=&bbt_f
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x2ffeec19d53a3c22, 1011, 0};
	bbOnDebugEnterStm(&__stmt_0);
	((struct database_core_TQueryRecord_obj*)bbNullObjectTest((BBObject*)o));
	bbt_f=(struct database_core_TQueryField_obj*)((struct database_core_TQueryRecord_obj*)o)->clas->m_getFieldByName_S((struct database_core_TQueryRecord_obj*)o,bbt_name);
	struct BBDebugStm __stmt_1 = {0x2ffeec19d53a3c22, 1012, 0};
	bbOnDebugEnterStm(&__stmt_1);
	if((((BBObject*)bbt_f)!= &bbNullObject) && (((BBObject*)((struct database_core_TQueryField_obj*)bbNullObjectTest((BBObject*)bbt_f))->_database_core_tqueryfield_value )!= &bbNullObject)){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x2ffeec19d53a3c22, 1013, 0};
		bbOnDebugEnterStm(&__stmt_0);
		struct database_core_dbtypes_TDBType_obj* bbt_;
		bbOnDebugLeaveScope();
		bbOnDebugLeaveScope();
		return (((struct database_core_dbtypes_TDBType_obj*)((struct database_core_dbtypes_TDBType_obj*)bbNullObjectTest((BBObject*)(bbt_ = ((struct database_core_TQueryField_obj*)bbNullObjectTest((BBObject*)bbt_f))->_database_core_tqueryfield_value ))))->clas)->m_getFloat((struct database_core_dbtypes_TDBType_obj*)bbt_);
	}
	bbOnDebugLeaveScope();
	return .00000000f;
}
BBDOUBLE _database_core_TQueryRecord_getDouble_i(struct database_core_TQueryRecord_obj* o,BBINT bbt_index){
	((struct database_core_TQueryRecord_obj*)bbNullObjectTest((BBObject*)o));
	struct database_core_dbtypes_TDBType_obj* bbt_v=(struct database_core_dbtypes_TDBType_obj*)((struct database_core_dbtypes_TDBType_obj*)&bbNullObject);
	struct BBDebugScope_3 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"getDouble",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TQueryRecord",
				.var_address=&o
			},
			{
				BBDEBUGDECL_LOCAL,
				"index",
				"i",
				.var_address=&bbt_index
			},
			{
				BBDEBUGDECL_LOCAL,
				"v",
				":TDBType",
				.var_address=&bbt_v
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x2ffeec19d53a3c22, 1022, 0};
	bbOnDebugEnterStm(&__stmt_0);
	((struct database_core_TQueryRecord_obj*)bbNullObjectTest((BBObject*)o));
	bbt_v=(struct database_core_dbtypes_TDBType_obj*)((struct database_core_TQueryRecord_obj*)o)->clas->m_value_i((struct database_core_TQueryRecord_obj*)o,bbt_index);
	struct BBDebugStm __stmt_1 = {0x2ffeec19d53a3c22, 1023, 0};
	bbOnDebugEnterStm(&__stmt_1);
	if(((BBObject*)bbt_v)!= &bbNullObject){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x2ffeec19d53a3c22, 1024, 0};
		bbOnDebugEnterStm(&__stmt_0);
		bbOnDebugLeaveScope();
		bbOnDebugLeaveScope();
		return ((struct database_core_dbtypes_TDBType_obj*)bbNullObjectTest((BBObject*)bbt_v))->clas->m_getDouble((struct database_core_dbtypes_TDBType_obj*)bbt_v);
	}
	bbOnDebugLeaveScope();
	return .0000000000000000;
}
BBSTRING _database_core_TQueryRecord_getDoubleByName_S(struct database_core_TQueryRecord_obj* o,BBSTRING bbt_name){
	((struct database_core_TQueryRecord_obj*)bbNullObjectTest((BBObject*)o));
	struct database_core_TQueryField_obj* bbt_f=(struct database_core_TQueryField_obj*)((struct database_core_TQueryField_obj*)&bbNullObject);
	struct BBDebugScope_3 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"getDoubleByName",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TQueryRecord",
				.var_address=&o
			},
			{
				BBDEBUGDECL_LOCAL,
				"name",
				"$",
				.var_address=&bbt_name
			},
			{
				BBDEBUGDECL_LOCAL,
				"f",
				":TQueryField",
				.var_address=&bbt_f
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x2ffeec19d53a3c22, 1033, 0};
	bbOnDebugEnterStm(&__stmt_0);
	((struct database_core_TQueryRecord_obj*)bbNullObjectTest((BBObject*)o));
	bbt_f=(struct database_core_TQueryField_obj*)((struct database_core_TQueryRecord_obj*)o)->clas->m_getFieldByName_S((struct database_core_TQueryRecord_obj*)o,bbt_name);
	struct BBDebugStm __stmt_1 = {0x2ffeec19d53a3c22, 1034, 0};
	bbOnDebugEnterStm(&__stmt_1);
	if((((BBObject*)bbt_f)!= &bbNullObject) && (((BBObject*)((struct database_core_TQueryField_obj*)bbNullObjectTest((BBObject*)bbt_f))->_database_core_tqueryfield_value )!= &bbNullObject)){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x2ffeec19d53a3c22, 1035, 0};
		bbOnDebugEnterStm(&__stmt_0);
		struct database_core_dbtypes_TDBType_obj* bbt_;
		bbOnDebugLeaveScope();
		bbOnDebugLeaveScope();
		return bbStringFromDouble((((struct database_core_dbtypes_TDBType_obj*)((struct database_core_dbtypes_TDBType_obj*)bbNullObjectTest((BBObject*)(bbt_ = ((struct database_core_TQueryField_obj*)bbNullObjectTest((BBObject*)bbt_f))->_database_core_tqueryfield_value ))))->clas)->m_getDouble((struct database_core_dbtypes_TDBType_obj*)bbt_));
	}
	bbOnDebugLeaveScope();
	return ((BBString*)&bbEmptyString);
}
void _database_core_TQueryRecord_clear(struct database_core_TQueryRecord_obj* o){
	((struct database_core_TQueryRecord_obj*)bbNullObjectTest((BBObject*)o));
	struct BBDebugScope_1 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"clear",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TQueryRecord",
				.var_address=&o
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x2ffeec19d53a3c22, 1040, 0};
	bbOnDebugEnterStm(&__stmt_0);
	if(((struct database_core_TQueryRecord_obj*)bbNullObjectTest((BBObject*)o))->_database_core_tqueryrecord_fields != &bbEmptyArray){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x2ffeec19d53a3c22, 1041, 0};
		bbOnDebugEnterStm(&__stmt_0);
		{
			BBINT bbt_i=0;
			BBINT bbt_=(((struct database_core_TQueryRecord_obj*)bbNullObjectTest((BBObject*)o))->_database_core_tqueryrecord_fields ->scales[0]);
			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 = {0x2ffeec19d53a3c22, 1042, 0};
				bbOnDebugEnterStm(&__stmt_0);
				if(((BBObject*)((struct database_core_TQueryField_obj**)BBARRAYDATAINDEX((((struct database_core_TQueryRecord_obj*)bbNullObjectTest((BBObject*)o))->_database_core_tqueryrecord_fields ),(((struct database_core_TQueryRecord_obj*)bbNullObjectTest((BBObject*)o))->_database_core_tqueryrecord_fields )->dims,((BBUINT)bbt_i)))[((BBUINT)bbt_i)])!= &bbNullObject){
					struct BBDebugScope __scope = {
						BBDEBUGSCOPE_LOCALBLOCK,
						0,
						{
							{
								BBDEBUGDECL_END
							}
						}
					};
					bbOnDebugEnterScope((BBDebugScope *)&__scope);
					struct BBDebugStm __stmt_0 = {0x2ffeec19d53a3c22, 1043, 0};
					bbOnDebugEnterStm(&__stmt_0);
					struct database_core_TQueryField_obj* bbt_2;
					(((struct database_core_TQueryField_obj*)bbNullObjectTest((BBObject*)(bbt_2 = ((struct database_core_TQueryField_obj**)BBARRAYDATAINDEX((((struct database_core_TQueryRecord_obj*)bbNullObjectTest((BBObject*)o))->_database_core_tqueryrecord_fields ),(((struct database_core_TQueryRecord_obj*)bbNullObjectTest((BBObject*)o))->_database_core_tqueryrecord_fields )->dims,((BBUINT)bbt_i)))[((BBUINT)bbt_i)])))->clas)->m_clear((struct database_core_TQueryField_obj*)bbt_2);
					bbOnDebugLeaveScope();
				}
				bbOnDebugLeaveScope();
			}
		}
		struct BBDebugStm __stmt_1 = {0x2ffeec19d53a3c22, 1046, 0};
		bbOnDebugEnterStm(&__stmt_1);
		((struct database_core_TQueryRecord_obj*)bbNullObjectTest((BBObject*)o))->_database_core_tqueryrecord_fields =(&bbEmptyArray);
		struct BBDebugStm __stmt_2 = {0x2ffeec19d53a3c22, 1048, 0};
		bbOnDebugEnterStm(&__stmt_2);
		((struct brl_map_TMap_obj*)bbNullObjectTest((BBObject*)((struct database_core_TQueryRecord_obj*)bbNullObjectTest((BBObject*)o))->_database_core_tqueryrecord_fieldsmap ))->clas->m_Clear((struct brl_map_TMap_obj*)((struct database_core_TQueryRecord_obj*)bbNullObjectTest((BBObject*)o))->_database_core_tqueryrecord_fieldsmap );
		struct BBDebugStm __stmt_3 = {0x2ffeec19d53a3c22, 1049, 0};
		bbOnDebugEnterStm(&__stmt_3);
		((struct database_core_TQueryRecord_obj*)bbNullObjectTest((BBObject*)o))->_database_core_tqueryrecord_fieldsmap =(struct brl_map_TMap_obj*)&bbNullObject;
		bbOnDebugLeaveScope();
	}
	struct BBDebugStm __stmt_1 = {0x2ffeec19d53a3c22, 1051, 0};
	bbOnDebugEnterStm(&__stmt_1);
	((struct database_core_TQueryRecord_obj*)bbNullObjectTest((BBObject*)o))->_database_core_tqueryrecord__empty =1;
	struct BBDebugStm __stmt_2 = {0x2ffeec19d53a3c22, 1052, 0};
	bbOnDebugEnterStm(&__stmt_2);
	((struct database_core_TQueryRecord_obj*)bbNullObjectTest((BBObject*)o))->_database_core_tqueryrecord__isemptyset =1;
	bbOnDebugLeaveScope();
}
void _database_core_TQueryRecord_Init_i(struct database_core_TQueryRecord_obj* o,BBINT bbt_size){
	((struct database_core_TQueryRecord_obj*)bbNullObjectTest((BBObject*)o));
	struct BBDebugScope_2 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"Init",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TQueryRecord",
				.var_address=&o
			},
			{
				BBDEBUGDECL_LOCAL,
				"size",
				"i",
				.var_address=&bbt_size
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x2ffeec19d53a3c22, 1056, 0};
	bbOnDebugEnterStm(&__stmt_0);
	if(((struct database_core_TQueryRecord_obj*)bbNullObjectTest((BBObject*)o))->_database_core_tqueryrecord_fields != &bbEmptyArray){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x2ffeec19d53a3c22, 1057, 0};
		bbOnDebugEnterStm(&__stmt_0);
		((struct database_core_TQueryRecord_obj*)bbNullObjectTest((BBObject*)o));
		((struct database_core_TQueryRecord_obj*)o)->clas->m_clear((struct database_core_TQueryRecord_obj*)o);
		bbOnDebugLeaveScope();
	}
	struct BBDebugStm __stmt_1 = {0x2ffeec19d53a3c22, 1060, 0};
	bbOnDebugEnterStm(&__stmt_1);
	((struct database_core_TQueryRecord_obj*)bbNullObjectTest((BBObject*)o))->_database_core_tqueryrecord_fields =bbArrayNew1D(":TQueryField", bbt_size);
	struct BBDebugStm __stmt_2 = {0x2ffeec19d53a3c22, 1061, 0};
	bbOnDebugEnterStm(&__stmt_2);
	((struct database_core_TQueryRecord_obj*)bbNullObjectTest((BBObject*)o))->_database_core_tqueryrecord_fieldsmap =(struct brl_map_TMap_obj*)(struct brl_map_TMap_obj*)bbObjectNew((BBClass *)&brl_map_TMap);
	struct BBDebugStm __stmt_3 = {0x2ffeec19d53a3c22, 1062, 0};
	bbOnDebugEnterStm(&__stmt_3);
	((struct database_core_TQueryRecord_obj*)bbNullObjectTest((BBObject*)o))->_database_core_tqueryrecord__empty =0;
	struct BBDebugStm __stmt_4 = {0x2ffeec19d53a3c22, 1063, 0};
	bbOnDebugEnterStm(&__stmt_4);
	((struct database_core_TQueryRecord_obj*)bbNullObjectTest((BBObject*)o))->_database_core_tqueryrecord__isemptyset =0;
	bbOnDebugLeaveScope();
}
void _database_core_TQueryRecord_setField_iTTQueryField(struct database_core_TQueryRecord_obj* o,BBINT bbt_index,struct database_core_TQueryField_obj* bbt_theField){
	((struct database_core_TQueryRecord_obj*)bbNullObjectTest((BBObject*)o));
	struct BBDebugScope_3 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"setField",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TQueryRecord",
				.var_address=&o
			},
			{
				BBDEBUGDECL_LOCAL,
				"index",
				"i",
				.var_address=&bbt_index
			},
			{
				BBDEBUGDECL_LOCAL,
				"theField",
				":TQueryField",
				.var_address=&bbt_theField
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x2ffeec19d53a3c22, 1067, 0};
	bbOnDebugEnterStm(&__stmt_0);
	if(((struct database_core_TQueryRecord_obj*)bbNullObjectTest((BBObject*)o))->_database_core_tqueryrecord_fields != &bbEmptyArray){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x2ffeec19d53a3c22, 1068, 0};
		bbOnDebugEnterStm(&__stmt_0);
		((struct database_core_TQueryField_obj**)BBARRAYDATAINDEX((((struct database_core_TQueryRecord_obj*)bbNullObjectTest((BBObject*)o))->_database_core_tqueryrecord_fields ),(((struct database_core_TQueryRecord_obj*)bbNullObjectTest((BBObject*)o))->_database_core_tqueryrecord_fields )->dims,((BBUINT)bbt_index)))[((BBUINT)bbt_index)]=(struct database_core_TQueryField_obj*)bbt_theField;
		struct BBDebugStm __stmt_1 = {0x2ffeec19d53a3c22, 1069, 0};
		bbOnDebugEnterStm(&__stmt_1);
		((struct brl_map_TMap_obj*)bbNullObjectTest((BBObject*)((struct database_core_TQueryRecord_obj*)bbNullObjectTest((BBObject*)o))->_database_core_tqueryrecord_fieldsmap ))->clas->m_Insert_TObjectTObject((struct brl_map_TMap_obj*)((struct database_core_TQueryRecord_obj*)bbNullObjectTest((BBObject*)o))->_database_core_tqueryrecord_fieldsmap ,(BBOBJECT)((struct database_core_TQueryField_obj*)bbNullObjectTest((BBObject*)bbt_theField))->_database_core_tqueryfield_name ,(BBOBJECT)bbt_theField);
		bbOnDebugLeaveScope();
	}
	bbOnDebugLeaveScope();
}
void _database_core_TQueryRecord_setIsEmptySet(struct database_core_TQueryRecord_obj* o){
	((struct database_core_TQueryRecord_obj*)bbNullObjectTest((BBObject*)o));
	struct BBDebugScope_1 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"setIsEmptySet",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TQueryRecord",
				.var_address=&o
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x2ffeec19d53a3c22, 1074, 0};
	bbOnDebugEnterStm(&__stmt_0);
	((struct database_core_TQueryRecord_obj*)bbNullObjectTest((BBObject*)o))->_database_core_tqueryrecord__isemptyset =1;
	bbOnDebugLeaveScope();
}
struct BBDebugScope_27 database_core_TQueryRecord_scope ={
	BBDEBUGSCOPE_USERTYPE,
	"TQueryRecord",
	{
		{
			BBDEBUGDECL_FIELD,
			"_empty",
			"i",
			.field_offset=offsetof(struct database_core_TQueryRecord_obj,_database_core_tqueryrecord__empty)
		},
		{
			BBDEBUGDECL_FIELD,
			"_isEmptySet",
			"i",
			.field_offset=offsetof(struct database_core_TQueryRecord_obj,_database_core_tqueryrecord__isemptyset)
		},
		{
			BBDEBUGDECL_FIELD,
			"fields",
			"[]:TQueryField",
			.field_offset=offsetof(struct database_core_TQueryRecord_obj,_database_core_tqueryrecord_fields)
		},
		{
			BBDEBUGDECL_FIELD,
			"fieldsMap",
			":TMap",
			.field_offset=offsetof(struct database_core_TQueryRecord_obj,_database_core_tqueryrecord_fieldsmap)
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"New",
			"()",
			.func_ptr=(BBFuncPtr)&_database_core_TQueryRecord_New
		},
		{
			BBDEBUGDECL_TYPEFUNCTION,
			"Create",
			"():TQueryRecord",
			.func_ptr=(BBFuncPtr)&database_core_TQueryRecord_Create_TTQueryRecord
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"getField",
			"(i):TQueryField",
			.func_ptr=(BBFuncPtr)&_database_core_TQueryRecord_getField_i
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"getFieldByName",
			"($):TQueryField",
			.func_ptr=(BBFuncPtr)&_database_core_TQueryRecord_getFieldByName_S
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"indexOf",
			"($)i",
			.func_ptr=(BBFuncPtr)&_database_core_TQueryRecord_indexOf_S
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"count",
			"()i",
			.func_ptr=(BBFuncPtr)&_database_core_TQueryRecord_count
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"isEmpty",
			"()i",
			.func_ptr=(BBFuncPtr)&_database_core_TQueryRecord_isEmpty
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"setValue",
			"(i,:Object)",
			.func_ptr=(BBFuncPtr)&_database_core_TQueryRecord_setValue_iTObject
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"value",
			"(i):TDBType",
			.func_ptr=(BBFuncPtr)&_database_core_TQueryRecord_value_i
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"getString",
			"(i)$",
			.func_ptr=(BBFuncPtr)&_database_core_TQueryRecord_getString_i
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"getStringByName",
			"($)$",
			.func_ptr=(BBFuncPtr)&_database_core_TQueryRecord_getStringByName_S
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"getInt",
			"(i)i",
			.func_ptr=(BBFuncPtr)&_database_core_TQueryRecord_getInt_i
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"getIntByName",
			"($)i",
			.func_ptr=(BBFuncPtr)&_database_core_TQueryRecord_getIntByName_S
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"getLong",
			"(i)l",
			.func_ptr=(BBFuncPtr)&_database_core_TQueryRecord_getLong_i
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"getLongByName",
			"($)l",
			.func_ptr=(BBFuncPtr)&_database_core_TQueryRecord_getLongByName_S
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"getFloat",
			"(i)f",
			.func_ptr=(BBFuncPtr)&_database_core_TQueryRecord_getFloat_i
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"getFloatByName",
			"($)f",
			.func_ptr=(BBFuncPtr)&_database_core_TQueryRecord_getFloatByName_S
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"getDouble",
			"(i)d",
			.func_ptr=(BBFuncPtr)&_database_core_TQueryRecord_getDouble_i
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"getDoubleByName",
			"($)$",
			.func_ptr=(BBFuncPtr)&_database_core_TQueryRecord_getDoubleByName_S
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"clear",
			"()",
			.func_ptr=(BBFuncPtr)&_database_core_TQueryRecord_clear
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"Init",
			"(i)",
			.func_ptr=(BBFuncPtr)&_database_core_TQueryRecord_Init_i
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"setField",
			"(i,:TQueryField)",
			.func_ptr=(BBFuncPtr)&_database_core_TQueryRecord_setField_iTTQueryField
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"setIsEmptySet",
			"()",
			.func_ptr=(BBFuncPtr)&_database_core_TQueryRecord_setIsEmptySet
		},
		{
			BBDEBUGDECL_END
		}
	}
};
struct BBClass_database_core_TQueryRecord database_core_TQueryRecord={
	&bbObjectClass,
	bbObjectFree,
	(BBDebugScope*)&database_core_TQueryRecord_scope,
	sizeof(struct database_core_TQueryRecord_obj),
	(void (*)(BBOBJECT))_database_core_TQueryRecord_New,
	(void (*)(BBOBJECT))_database_core_TQueryRecord_Delete,
	bbObjectToString,
	bbObjectCompare,
	bbObjectSendMessage,
	0,
	0,
	offsetof(struct database_core_TQueryRecord_obj,_database_core_tqueryrecord_fieldsmap) - offsetof(struct database_core_TQueryRecord_obj,_database_core_tqueryrecord__empty) + sizeof(struct brl_map_TMap_obj*)
	,0
	,offsetof(struct database_core_TQueryRecord_obj,_database_core_tqueryrecord__empty)
	,database_core_TQueryRecord_Create_TTQueryRecord
	,_database_core_TQueryRecord_getField_i
	,_database_core_TQueryRecord_getFieldByName_S
	,_database_core_TQueryRecord_indexOf_S
	,_database_core_TQueryRecord_count
	,_database_core_TQueryRecord_isEmpty
	,_database_core_TQueryRecord_setValue_iTObject
	,_database_core_TQueryRecord_value_i
	,_database_core_TQueryRecord_getString_i
	,_database_core_TQueryRecord_getStringByName_S
	,_database_core_TQueryRecord_getInt_i
	,_database_core_TQueryRecord_getIntByName_S
	,_database_core_TQueryRecord_getLong_i
	,_database_core_TQueryRecord_getLongByName_S
	,_database_core_TQueryRecord_getFloat_i
	,_database_core_TQueryRecord_getFloatByName_S
	,_database_core_TQueryRecord_getDouble_i
	,_database_core_TQueryRecord_getDoubleByName_S
	,_database_core_TQueryRecord_clear
	,_database_core_TQueryRecord_Init_i
	,_database_core_TQueryRecord_setField_iTTQueryField
	,_database_core_TQueryRecord_setIsEmptySet
};

void _database_core_TQueryField_New(struct database_core_TQueryField_obj* o) {
	bbObjectCtor((BBOBJECT)o);
	o->clas = &database_core_TQueryField;
	((struct database_core_TQueryField_obj*)bbNullObjectTest((BBObject*)o))->_database_core_tqueryfield_name = ((BBString*)&bbEmptyString);
	((struct database_core_TQueryField_obj*)bbNullObjectTest((BBObject*)o))->_database_core_tqueryfield_ftype = 0;
	((struct database_core_TQueryField_obj*)bbNullObjectTest((BBObject*)o))->_database_core_tqueryfield_length = -1;
	((struct database_core_TQueryField_obj*)bbNullObjectTest((BBObject*)o))->_database_core_tqueryfield_precision = -1;
	((struct database_core_TQueryField_obj*)bbNullObjectTest((BBObject*)o))->_database_core_tqueryfield_value = (struct database_core_dbtypes_TDBType_obj*)((struct database_core_dbtypes_TDBType_obj*)&bbNullObject);
	((struct database_core_TQueryField_obj*)bbNullObjectTest((BBObject*)o))->_database_core_tqueryfield_nullable = -1;
	((struct database_core_TQueryField_obj*)bbNullObjectTest((BBObject*)o))->_database_core_tqueryfield_dtype = 0;
	((struct database_core_TQueryField_obj*)bbNullObjectTest((BBObject*)o))->_database_core_tqueryfield_dflags = 0;
}
void _database_core_TQueryField_Delete(struct database_core_TQueryField_obj* o) {
	struct BBDebugScope_1 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"Delete",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TQueryField",
				.var_address=&o
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x2ffeec19d53a3c22, 1140, 0};
	bbOnDebugEnterStm(&__stmt_0);
	((struct database_core_TQueryField_obj*)bbNullObjectTest((BBObject*)o));
	((struct database_core_TQueryField_obj*)o)->clas->m_clear((struct database_core_TQueryField_obj*)o);
	bbOnDebugLeaveScope();
	BBRELEASE(((struct database_core_TQueryField_obj*)bbNullObjectTest((BBObject*)o))->_database_core_tqueryfield_name )
	bbObjectDtor((BBOBJECT)o);
}
struct database_core_TQueryField_obj* database_core_TQueryField_Create_TTQueryField_Si(BBSTRING bbt_name,BBINT bbt_fType){
	struct database_core_TQueryField_obj* bbt_this=(struct database_core_TQueryField_obj*)((struct database_core_TQueryField_obj*)&bbNullObject);
	struct BBDebugScope_3 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"Create",
		{
			{
				BBDEBUGDECL_LOCAL,
				"name",
				"$",
				.var_address=&bbt_name
			},
			{
				BBDEBUGDECL_LOCAL,
				"fType",
				"i",
				.var_address=&bbt_fType
			},
			{
				BBDEBUGDECL_LOCAL,
				"this",
				":TQueryField",
				.var_address=&bbt_this
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x2ffeec19d53a3c22, 1121, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbt_this=(struct database_core_TQueryField_obj*)(struct database_core_TQueryField_obj*)bbObjectNew((BBClass *)&database_core_TQueryField);
	struct BBDebugStm __stmt_1 = {0x2ffeec19d53a3c22, 1123, 0};
	bbOnDebugEnterStm(&__stmt_1);
	((struct database_core_TQueryField_obj*)bbNullObjectTest((BBObject*)bbt_this))->_database_core_tqueryfield_name =bbt_name;
	struct BBDebugStm __stmt_2 = {0x2ffeec19d53a3c22, 1124, 0};
	bbOnDebugEnterStm(&__stmt_2);
	((struct database_core_TQueryField_obj*)bbNullObjectTest((BBObject*)bbt_this))->_database_core_tqueryfield_ftype =bbt_fType;
	struct BBDebugStm __stmt_3 = {0x2ffeec19d53a3c22, 1126, 0};
	bbOnDebugEnterStm(&__stmt_3);
	bbOnDebugLeaveScope();
	return (struct database_core_TQueryField_obj*)bbt_this;
}
void _database_core_TQueryField_clear(struct database_core_TQueryField_obj* o){
	((struct database_core_TQueryField_obj*)bbNullObjectTest((BBObject*)o));
	struct BBDebugScope_1 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"clear",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TQueryField",
				.var_address=&o
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x2ffeec19d53a3c22, 1130, 0};
	bbOnDebugEnterStm(&__stmt_0);
	((struct database_core_TQueryField_obj*)bbNullObjectTest((BBObject*)o))->_database_core_tqueryfield_value =(struct database_core_dbtypes_TDBType_obj*)&bbNullObject;
	bbOnDebugLeaveScope();
}
void _database_core_TQueryField_setValue_TObject(struct database_core_TQueryField_obj* o,BBOBJECT bbt_v){
	((struct database_core_TQueryField_obj*)bbNullObjectTest((BBObject*)o));
	struct BBDebugScope_2 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"setValue",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TQueryField",
				.var_address=&o
			},
			{
				BBDEBUGDECL_LOCAL,
				"v",
				":Object",
				.var_address=&bbt_v
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x2ffeec19d53a3c22, 1134, 0};
	bbOnDebugEnterStm(&__stmt_0);
	if(((BBObject*)((struct database_core_dbtypes_TDBType_obj*)bbObjectDowncast((BBOBJECT)bbt_v,(BBClass*)&database_core_dbtypes_TDBType)))!= &bbNullObject){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x2ffeec19d53a3c22, 1135, 0};
		bbOnDebugEnterStm(&__stmt_0);
		((struct database_core_TQueryField_obj*)bbNullObjectTest((BBObject*)o))->_database_core_tqueryfield_value =(struct database_core_dbtypes_TDBType_obj*)((struct database_core_dbtypes_TDBType_obj*)bbObjectDowncast((BBOBJECT)bbt_v,(BBClass*)&database_core_dbtypes_TDBType));
		bbOnDebugLeaveScope();
	}
	bbOnDebugLeaveScope();
}
struct BBDebugScope_12 database_core_TQueryField_scope ={
	BBDEBUGSCOPE_USERTYPE,
	"TQueryField",
	{
		{
			BBDEBUGDECL_FIELD,
			"name",
			"$",
			.field_offset=offsetof(struct database_core_TQueryField_obj,_database_core_tqueryfield_name)
		},
		{
			BBDEBUGDECL_FIELD,
			"fType",
			"i",
			.field_offset=offsetof(struct database_core_TQueryField_obj,_database_core_tqueryfield_ftype)
		},
		{
			BBDEBUGDECL_FIELD,
			"length",
			"i",
			.field_offset=offsetof(struct database_core_TQueryField_obj,_database_core_tqueryfield_length)
		},
		{
			BBDEBUGDECL_FIELD,
			"precision",
			"i",
			.field_offset=offsetof(struct database_core_TQueryField_obj,_database_core_tqueryfield_precision)
		},
		{
			BBDEBUGDECL_FIELD,
			"value",
			":TDBType",
			.field_offset=offsetof(struct database_core_TQueryField_obj,_database_core_tqueryfield_value)
		},
		{
			BBDEBUGDECL_FIELD,
			"nullable",
			"i",
			.field_offset=offsetof(struct database_core_TQueryField_obj,_database_core_tqueryfield_nullable)
		},
		{
			BBDEBUGDECL_FIELD,
			"dtype",
			"i",
			.field_offset=offsetof(struct database_core_TQueryField_obj,_database_core_tqueryfield_dtype)
		},
		{
			BBDEBUGDECL_FIELD,
			"dflags",
			"i",
			.field_offset=offsetof(struct database_core_TQueryField_obj,_database_core_tqueryfield_dflags)
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"New",
			"()",
			.func_ptr=(BBFuncPtr)&_database_core_TQueryField_New
		},
		{
			BBDEBUGDECL_TYPEFUNCTION,
			"Create",
			"($,i):TQueryField",
			.func_ptr=(BBFuncPtr)&database_core_TQueryField_Create_TTQueryField_Si
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"clear",
			"()",
			.func_ptr=(BBFuncPtr)&_database_core_TQueryField_clear
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"setValue",
			"(:Object)",
			.func_ptr=(BBFuncPtr)&_database_core_TQueryField_setValue_TObject
		},
		{
			BBDEBUGDECL_END
		}
	}
};
struct BBClass_database_core_TQueryField database_core_TQueryField={
	&bbObjectClass,
	bbObjectFree,
	(BBDebugScope*)&database_core_TQueryField_scope,
	sizeof(struct database_core_TQueryField_obj),
	(void (*)(BBOBJECT))_database_core_TQueryField_New,
	(void (*)(BBOBJECT))_database_core_TQueryField_Delete,
	bbObjectToString,
	bbObjectCompare,
	bbObjectSendMessage,
	0,
	0,
	offsetof(struct database_core_TQueryField_obj,_database_core_tqueryfield_dflags) - offsetof(struct database_core_TQueryField_obj,_database_core_tqueryfield_name) + sizeof(BBINT)
	,0
	,offsetof(struct database_core_TQueryField_obj,_database_core_tqueryfield_name)
	,database_core_TQueryField_Create_TTQueryField_Si
	,_database_core_TQueryField_clear
	,_database_core_TQueryField_setValue_TObject
};

void _database_core_TDatabaseError_New(struct database_core_TDatabaseError_obj* o) {
	bbObjectCtor((BBOBJECT)o);
	o->clas = &database_core_TDatabaseError;
	((struct database_core_TDatabaseError_obj*)bbNullObjectTest((BBObject*)o))->_database_core_tdatabaseerror_db = (struct database_core_TDBConnection_obj*)((struct database_core_TDBConnection_obj*)&bbNullObject);
	((struct database_core_TDatabaseError_obj*)bbNullObjectTest((BBObject*)o))->_database_core_tdatabaseerror_error = ((BBString*)&bbEmptyString);
	((struct database_core_TDatabaseError_obj*)bbNullObjectTest((BBObject*)o))->_database_core_tdatabaseerror_errortype = 0;
	((struct database_core_TDatabaseError_obj*)bbNullObjectTest((BBObject*)o))->_database_core_tdatabaseerror_errorvalue = 0;
}
void _database_core_TDatabaseError_Delete(struct database_core_TDatabaseError_obj* o) {
	struct BBDebugScope_1 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"Delete",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TDatabaseError",
				.var_address=&o
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x2ffeec19d53a3c22, 1220, 0};
	bbOnDebugEnterStm(&__stmt_0);
	((struct database_core_TDatabaseError_obj*)bbNullObjectTest((BBObject*)o))->_database_core_tdatabaseerror_db =(struct database_core_TDBConnection_obj*)&bbNullObject;
	bbOnDebugLeaveScope();
	BBRELEASE(((struct database_core_TDatabaseError_obj*)bbNullObjectTest((BBObject*)o))->_database_core_tdatabaseerror_error )
	bbObjectDtor((BBOBJECT)o);
}
struct database_core_TDatabaseError_obj* database_core_TDatabaseError_Create_TTDatabaseError_TTDBConnectionSSii(struct database_core_TDBConnection_obj* bbt_db,BBSTRING bbt_error,BBSTRING bbt_append,BBINT bbt_errorType,BBINT bbt_errorValue){
	struct database_core_TDatabaseError_obj* bbt_this=(struct database_core_TDatabaseError_obj*)((struct database_core_TDatabaseError_obj*)&bbNullObject);
	struct BBDebugScope_6 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"Create",
		{
			{
				BBDEBUGDECL_LOCAL,
				"db",
				":TDBConnection",
				.var_address=&bbt_db
			},
			{
				BBDEBUGDECL_LOCAL,
				"error",
				"$",
				.var_address=&bbt_error
			},
			{
				BBDEBUGDECL_LOCAL,
				"append",
				"$",
				.var_address=&bbt_append
			},
			{
				BBDEBUGDECL_LOCAL,
				"errorType",
				"i",
				.var_address=&bbt_errorType
			},
			{
				BBDEBUGDECL_LOCAL,
				"errorValue",
				"i",
				.var_address=&bbt_errorValue
			},
			{
				BBDEBUGDECL_LOCAL,
				"this",
				":TDatabaseError",
				.var_address=&bbt_this
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x2ffeec19d53a3c22, 1173, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbt_this=(struct database_core_TDatabaseError_obj*)(struct database_core_TDatabaseError_obj*)bbObjectNew((BBClass *)&database_core_TDatabaseError);
	struct BBDebugStm __stmt_1 = {0x2ffeec19d53a3c22, 1175, 0};
	bbOnDebugEnterStm(&__stmt_1);
	((struct database_core_TDatabaseError_obj*)bbNullObjectTest((BBObject*)bbt_this))->_database_core_tdatabaseerror_db =(struct database_core_TDBConnection_obj*)bbt_db;
	struct BBDebugStm __stmt_2 = {0x2ffeec19d53a3c22, 1176, 0};
	bbOnDebugEnterStm(&__stmt_2);
	((struct database_core_TDatabaseError_obj*)bbNullObjectTest((BBObject*)bbt_this))->_database_core_tdatabaseerror_error =bbt_error;
	struct BBDebugStm __stmt_3 = {0x2ffeec19d53a3c22, 1178, 0};
	bbOnDebugEnterStm(&__stmt_3);
	if(bbt_append!= &bbEmptyString){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x2ffeec19d53a3c22, 1179, 0};
		bbOnDebugEnterStm(&__stmt_0);
		((struct database_core_TDatabaseError_obj*)bbNullObjectTest((BBObject*)bbt_this))->_database_core_tdatabaseerror_error =bbStringConcat(((struct database_core_TDatabaseError_obj*)bbNullObjectTest((BBObject*)bbt_this))->_database_core_tdatabaseerror_error ,(bbStringConcat(((BBString*)&_s0),bbt_append)));
		bbOnDebugLeaveScope();
	}
	struct BBDebugStm __stmt_4 = {0x2ffeec19d53a3c22, 1182, 0};
	bbOnDebugEnterStm(&__stmt_4);
	if(bbt_errorValue!=0){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x2ffeec19d53a3c22, 1183, 0};
		bbOnDebugEnterStm(&__stmt_0);
		((struct database_core_TDatabaseError_obj*)bbNullObjectTest((BBObject*)bbt_this))->_database_core_tdatabaseerror_error =bbStringConcat(((struct database_core_TDatabaseError_obj*)bbNullObjectTest((BBObject*)bbt_this))->_database_core_tdatabaseerror_error ,(bbStringConcat(bbStringConcat(((BBString*)&_s4),bbStringFromInt(bbt_errorValue)),((BBString*)&_s5))));
		bbOnDebugLeaveScope();
	}
	struct BBDebugStm __stmt_5 = {0x2ffeec19d53a3c22, 1186, 0};
	bbOnDebugEnterStm(&__stmt_5);
	((struct database_core_TDatabaseError_obj*)bbNullObjectTest((BBObject*)bbt_this))->_database_core_tdatabaseerror_errorvalue =bbt_errorValue;
	struct BBDebugStm __stmt_6 = {0x2ffeec19d53a3c22, 1187, 0};
	bbOnDebugEnterStm(&__stmt_6);
	((struct database_core_TDatabaseError_obj*)bbNullObjectTest((BBObject*)bbt_this))->_database_core_tdatabaseerror_errortype =bbt_errorType;
	struct BBDebugStm __stmt_7 = {0x2ffeec19d53a3c22, 1189, 0};
	bbOnDebugEnterStm(&__stmt_7);
	bbOnDebugLeaveScope();
	return (struct database_core_TDatabaseError_obj*)bbt_this;
}
void _database_core_TDatabaseError_reset(struct database_core_TDatabaseError_obj* o){
	((struct database_core_TDatabaseError_obj*)bbNullObjectTest((BBObject*)o));
	struct BBDebugScope_1 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"reset",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TDatabaseError",
				.var_address=&o
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x2ffeec19d53a3c22, 1193, 0};
	bbOnDebugEnterStm(&__stmt_0);
	((struct database_core_TDatabaseError_obj*)bbNullObjectTest((BBObject*)o))->_database_core_tdatabaseerror_error =(&bbEmptyString);
	struct BBDebugStm __stmt_1 = {0x2ffeec19d53a3c22, 1194, 0};
	bbOnDebugEnterStm(&__stmt_1);
	((struct database_core_TDatabaseError_obj*)bbNullObjectTest((BBObject*)o))->_database_core_tdatabaseerror_errorvalue =0;
	struct BBDebugStm __stmt_2 = {0x2ffeec19d53a3c22, 1195, 0};
	bbOnDebugEnterStm(&__stmt_2);
	((struct database_core_TDatabaseError_obj*)bbNullObjectTest((BBObject*)o))->_database_core_tdatabaseerror_errortype =0;
	bbOnDebugLeaveScope();
}
BBINT _database_core_TDatabaseError_isSet(struct database_core_TDatabaseError_obj* o){
	((struct database_core_TDatabaseError_obj*)bbNullObjectTest((BBObject*)o));
	struct BBDebugScope_1 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"isSet",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TDatabaseError",
				.var_address=&o
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x2ffeec19d53a3c22, 1203, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbOnDebugLeaveScope();
	return (bbStringEquals(((struct database_core_TDatabaseError_obj*)bbNullObjectTest((BBObject*)o))->_database_core_tdatabaseerror_error , (&bbEmptyString))!=1 && ((((struct database_core_TDatabaseError_obj*)bbNullObjectTest((BBObject*)o))->_database_core_tdatabaseerror_error ->length)>0));
}
BBSTRING _database_core_TDatabaseError_ToString(struct database_core_TDatabaseError_obj* o){
	((struct database_core_TDatabaseError_obj*)bbNullObjectTest((BBObject*)o));
	struct BBDebugScope_1 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"ToString",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TDatabaseError",
				.var_address=&o
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x2ffeec19d53a3c22, 1210, 0};
	bbOnDebugEnterStm(&__stmt_0);
	((struct database_core_TDatabaseError_obj*)bbNullObjectTest((BBObject*)o));
	bbOnDebugLeaveScope();
	return bbStringConcat(bbStringConcat(bbStringConcat(bbStringConcat(bbStringConcat(((BBString*)&_s6),bbStringFromInt(((struct database_core_TDatabaseError_obj*)bbNullObjectTest((BBObject*)o))->_database_core_tdatabaseerror_errortype )),((BBString*)&_s5)),((struct database_core_TDatabaseError_obj*)bbNullObjectTest((BBObject*)o))->_database_core_tdatabaseerror_error ),((BBString*)&_s0)),((struct database_core_TDatabaseError_obj*)o)->clas->m_nativeError((struct database_core_TDatabaseError_obj*)o));
}
BBSTRING _database_core_TDatabaseError_nativeError(struct database_core_TDatabaseError_obj* o){
	((struct database_core_TDatabaseError_obj*)bbNullObjectTest((BBObject*)o));
	struct BBDebugScope_1 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"nativeError",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TDatabaseError",
				.var_address=&o
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x2ffeec19d53a3c22, 1214, 0};
	bbOnDebugEnterStm(&__stmt_0);
	if(((BBObject*)((struct database_core_TDatabaseError_obj*)bbNullObjectTest((BBObject*)o))->_database_core_tdatabaseerror_db )!= &bbNullObject){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x2ffeec19d53a3c22, 1215, 0};
		bbOnDebugEnterStm(&__stmt_0);
		bbOnDebugLeaveScope();
		bbOnDebugLeaveScope();
		return ((struct database_core_TDBConnection_obj*)bbNullObjectTest((BBObject*)((struct database_core_TDatabaseError_obj*)bbNullObjectTest((BBObject*)o))->_database_core_tdatabaseerror_db ))->clas->m_nativeErrorMessage_i((struct database_core_TDBConnection_obj*)((struct database_core_TDatabaseError_obj*)bbNullObjectTest((BBObject*)o))->_database_core_tdatabaseerror_db ,((struct database_core_TDatabaseError_obj*)bbNullObjectTest((BBObject*)o))->_database_core_tdatabaseerror_errorvalue );
	}
	bbOnDebugLeaveScope();
	return ((BBString*)&bbEmptyString);
}
struct BBDebugScope_15 database_core_TDatabaseError_scope ={
	BBDEBUGSCOPE_USERTYPE,
	"TDatabaseError",
	{
		{
			BBDEBUGDECL_CONST,
			"ERROR_NONE",
			"i",
			.const_value=(BBString*)&_s7
		},
		{
			BBDEBUGDECL_CONST,
			"ERROR_TRANSACTION",
			"i",
			.const_value=(BBString*)&_s8
		},
		{
			BBDEBUGDECL_CONST,
			"ERROR_CONNECTION",
			"i",
			.const_value=(BBString*)&_s9
		},
		{
			BBDEBUGDECL_CONST,
			"ERROR_STATEMENT",
			"i",
			.const_value=(BBString*)&_s10
		},
		{
			BBDEBUGDECL_CONST,
			"ERROR_UNKOWN",
			"i",
			.const_value=(BBString*)&_s11
		},
		{
			BBDEBUGDECL_FIELD,
			"db",
			":TDBConnection",
			.field_offset=offsetof(struct database_core_TDatabaseError_obj,_database_core_tdatabaseerror_db)
		},
		{
			BBDEBUGDECL_FIELD,
			"error",
			"$",
			.field_offset=offsetof(struct database_core_TDatabaseError_obj,_database_core_tdatabaseerror_error)
		},
		{
			BBDEBUGDECL_FIELD,
			"errorType",
			"i",
			.field_offset=offsetof(struct database_core_TDatabaseError_obj,_database_core_tdatabaseerror_errortype)
		},
		{
			BBDEBUGDECL_FIELD,
			"errorValue",
			"i",
			.field_offset=offsetof(struct database_core_TDatabaseError_obj,_database_core_tdatabaseerror_errorvalue)
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"New",
			"()",
			.func_ptr=(BBFuncPtr)&_database_core_TDatabaseError_New
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"ToString",
			"()$",
			.func_ptr=(BBFuncPtr)&_database_core_TDatabaseError_ToString
		},
		{
			BBDEBUGDECL_TYPEFUNCTION,
			"Create",
			"(:TDBConnection,$,$,i,i):TDatabaseError",
			.func_ptr=(BBFuncPtr)&database_core_TDatabaseError_Create_TTDatabaseError_TTDBConnectionSSii
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"reset",
			"()",
			.func_ptr=(BBFuncPtr)&_database_core_TDatabaseError_reset
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"isSet",
			"()i",
			.func_ptr=(BBFuncPtr)&_database_core_TDatabaseError_isSet
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"nativeError",
			"()$",
			.func_ptr=(BBFuncPtr)&_database_core_TDatabaseError_nativeError
		},
		{
			BBDEBUGDECL_END
		}
	}
};
struct BBClass_database_core_TDatabaseError database_core_TDatabaseError={
	&bbObjectClass,
	bbObjectFree,
	(BBDebugScope*)&database_core_TDatabaseError_scope,
	sizeof(struct database_core_TDatabaseError_obj),
	(void (*)(BBOBJECT))_database_core_TDatabaseError_New,
	(void (*)(BBOBJECT))_database_core_TDatabaseError_Delete,
	_database_core_TDatabaseError_ToString,
	bbObjectCompare,
	bbObjectSendMessage,
	0,
	0,
	offsetof(struct database_core_TDatabaseError_obj,_database_core_tdatabaseerror_errorvalue) - offsetof(struct database_core_TDatabaseError_obj,_database_core_tdatabaseerror_db) + sizeof(BBINT)
	,0
	,offsetof(struct database_core_TDatabaseError_obj,_database_core_tdatabaseerror_db)
	,database_core_TDatabaseError_Create_TTDatabaseError_TTDBConnectionSSii
	,_database_core_TDatabaseError_reset
	,_database_core_TDatabaseError_isSet
	,_database_core_TDatabaseError_nativeError
};

void _database_core_TDBTable_New(struct database_core_TDBTable_obj* o) {
	bbObjectCtor((BBOBJECT)o);
	o->clas = &database_core_TDBTable;
	((struct database_core_TDBTable_obj*)bbNullObjectTest((BBObject*)o))->_database_core_tdbtable_name = ((BBString*)&bbEmptyString);
	((struct database_core_TDBTable_obj*)bbNullObjectTest((BBObject*)o))->_database_core_tdbtable_columns = (&bbEmptyArray);
	((struct database_core_TDBTable_obj*)bbNullObjectTest((BBObject*)o))->_database_core_tdbtable_ddl = ((BBString*)&bbEmptyString);
}
void _database_core_TDBTable_SetCountColumns_i(struct database_core_TDBTable_obj* o,BBINT bbt_count){
	((struct database_core_TDBTable_obj*)bbNullObjectTest((BBObject*)o));
	struct BBDebugScope_2 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"SetCountColumns",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TDBTable",
				.var_address=&o
			},
			{
				BBDEBUGDECL_LOCAL,
				"count",
				"i",
				.var_address=&bbt_count
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x2ffeec19d53a3c22, 1245, 0};
	bbOnDebugEnterStm(&__stmt_0);
	((struct database_core_TDBTable_obj*)bbNullObjectTest((BBObject*)o))->_database_core_tdbtable_columns =bbArrayNew1D(":TDBColumn", bbt_count);
	bbOnDebugLeaveScope();
}
void _database_core_TDBTable_SetColumn_iTTDBColumn(struct database_core_TDBTable_obj* o,BBINT bbt_index,struct database_core_TDBColumn_obj* bbt_col){
	((struct database_core_TDBTable_obj*)bbNullObjectTest((BBObject*)o));
	struct BBDebugScope_3 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"SetColumn",
		{
			{
				BBDEBUGDECL_LOCAL,
				"Self",
				":TDBTable",
				.var_address=&o
			},
			{
				BBDEBUGDECL_LOCAL,
				"index",
				"i",
				.var_address=&bbt_index
			},
			{
				BBDEBUGDECL_LOCAL,
				"col",
				":TDBColumn",
				.var_address=&bbt_col
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x2ffeec19d53a3c22, 1249, 0};
	bbOnDebugEnterStm(&__stmt_0);
	((struct database_core_TDBColumn_obj**)BBARRAYDATAINDEX((((struct database_core_TDBTable_obj*)bbNullObjectTest((BBObject*)o))->_database_core_tdbtable_columns ),(((struct database_core_TDBTable_obj*)bbNullObjectTest((BBObject*)o))->_database_core_tdbtable_columns )->dims,((BBUINT)bbt_index)))[((BBUINT)bbt_index)]=(struct database_core_TDBColumn_obj*)bbt_col;
	bbOnDebugLeaveScope();
}
struct BBDebugScope_6 database_core_TDBTable_scope ={
	BBDEBUGSCOPE_USERTYPE,
	"TDBTable",
	{
		{
			BBDEBUGDECL_FIELD,
			"name",
			"$",
			.field_offset=offsetof(struct database_core_TDBTable_obj,_database_core_tdbtable_name)
		},
		{
			BBDEBUGDECL_FIELD,
			"columns",
			"[]:TDBColumn",
			.field_offset=offsetof(struct database_core_TDBTable_obj,_database_core_tdbtable_columns)
		},
		{
			BBDEBUGDECL_FIELD,
			"ddl",
			"$",
			.field_offset=offsetof(struct database_core_TDBTable_obj,_database_core_tdbtable_ddl)
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"New",
			"()",
			.func_ptr=(BBFuncPtr)&_database_core_TDBTable_New
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"SetCountColumns",
			"(i)",
			.func_ptr=(BBFuncPtr)&_database_core_TDBTable_SetCountColumns_i
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"SetColumn",
			"(i,:TDBColumn)",
			.func_ptr=(BBFuncPtr)&_database_core_TDBTable_SetColumn_iTTDBColumn
		},
		{
			BBDEBUGDECL_END
		}
	}
};
struct BBClass_database_core_TDBTable database_core_TDBTable={
	&bbObjectClass,
	bbObjectFree,
	(BBDebugScope*)&database_core_TDBTable_scope,
	sizeof(struct database_core_TDBTable_obj),
	(void (*)(BBOBJECT))_database_core_TDBTable_New,
	bbObjectDtor,
	bbObjectToString,
	bbObjectCompare,
	bbObjectSendMessage,
	0,
	0,
	offsetof(struct database_core_TDBTable_obj,_database_core_tdbtable_ddl) - offsetof(struct database_core_TDBTable_obj,_database_core_tdbtable_name) + sizeof(BBSTRING)
	,0
	,offsetof(struct database_core_TDBTable_obj,_database_core_tdbtable_name)
	,_database_core_TDBTable_SetCountColumns_i
	,_database_core_TDBTable_SetColumn_iTTDBColumn
};

void _database_core_TDBColumn_New(struct database_core_TDBColumn_obj* o) {
	bbObjectCtor((BBOBJECT)o);
	o->clas = &database_core_TDBColumn;
	((struct database_core_TDBColumn_obj*)bbNullObjectTest((BBObject*)o))->_database_core_tdbcolumn_name = ((BBString*)&bbEmptyString);
	((struct database_core_TDBColumn_obj*)bbNullObjectTest((BBObject*)o))->_database_core_tdbcolumn_dbtype = 0;
	((struct database_core_TDBColumn_obj*)bbNullObjectTest((BBObject*)o))->_database_core_tdbcolumn_nullable = 0;
	((struct database_core_TDBColumn_obj*)bbNullObjectTest((BBObject*)o))->_database_core_tdbcolumn_defaultvalue = (struct database_core_dbtypes_TDBType_obj*)((struct database_core_dbtypes_TDBType_obj*)&bbNullObject);
}
struct database_core_TDBColumn_obj* database_core_TDBColumn_Create_TTDBColumn_SiiTTDBType(BBSTRING bbt_name,BBINT bbt_dbType,BBINT bbt_nullable,struct database_core_dbtypes_TDBType_obj* bbt_defaultValue){
	struct database_core_TDBColumn_obj* bbt_this=(struct database_core_TDBColumn_obj*)((struct database_core_TDBColumn_obj*)&bbNullObject);
	struct BBDebugScope_5 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"Create",
		{
			{
				BBDEBUGDECL_LOCAL,
				"name",
				"$",
				.var_address=&bbt_name
			},
			{
				BBDEBUGDECL_LOCAL,
				"dbType",
				"i",
				.var_address=&bbt_dbType
			},
			{
				BBDEBUGDECL_LOCAL,
				"nullable",
				"i",
				.var_address=&bbt_nullable
			},
			{
				BBDEBUGDECL_LOCAL,
				"defaultValue",
				":TDBType",
				.var_address=&bbt_defaultValue
			},
			{
				BBDEBUGDECL_LOCAL,
				"this",
				":TDBColumn",
				.var_address=&bbt_this
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x2ffeec19d53a3c22, 1277, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbt_this=(struct database_core_TDBColumn_obj*)(struct database_core_TDBColumn_obj*)bbObjectNew((BBClass *)&database_core_TDBColumn);
	struct BBDebugStm __stmt_1 = {0x2ffeec19d53a3c22, 1278, 0};
	bbOnDebugEnterStm(&__stmt_1);
	((struct database_core_TDBColumn_obj*)bbNullObjectTest((BBObject*)bbt_this))->_database_core_tdbcolumn_name =bbt_name;
	struct BBDebugStm __stmt_2 = {0x2ffeec19d53a3c22, 1279, 0};
	bbOnDebugEnterStm(&__stmt_2);
	((struct database_core_TDBColumn_obj*)bbNullObjectTest((BBObject*)bbt_this))->_database_core_tdbcolumn_dbtype =bbt_dbType;
	struct BBDebugStm __stmt_3 = {0x2ffeec19d53a3c22, 1280, 0};
	bbOnDebugEnterStm(&__stmt_3);
	((struct database_core_TDBColumn_obj*)bbNullObjectTest((BBObject*)bbt_this))->_database_core_tdbcolumn_nullable =bbt_nullable;
	struct BBDebugStm __stmt_4 = {0x2ffeec19d53a3c22, 1281, 0};
	bbOnDebugEnterStm(&__stmt_4);
	((struct database_core_TDBColumn_obj*)bbNullObjectTest((BBObject*)bbt_this))->_database_core_tdbcolumn_defaultvalue =(struct database_core_dbtypes_TDBType_obj*)bbt_defaultValue;
	struct BBDebugStm __stmt_5 = {0x2ffeec19d53a3c22, 1282, 0};
	bbOnDebugEnterStm(&__stmt_5);
	bbOnDebugLeaveScope();
	return (struct database_core_TDBColumn_obj*)bbt_this;
}
struct BBDebugScope_6 database_core_TDBColumn_scope ={
	BBDEBUGSCOPE_USERTYPE,
	"TDBColumn",
	{
		{
			BBDEBUGDECL_FIELD,
			"name",
			"$",
			.field_offset=offsetof(struct database_core_TDBColumn_obj,_database_core_tdbcolumn_name)
		},
		{
			BBDEBUGDECL_FIELD,
			"dbType",
			"i",
			.field_offset=offsetof(struct database_core_TDBColumn_obj,_database_core_tdbcolumn_dbtype)
		},
		{
			BBDEBUGDECL_FIELD,
			"nullable",
			"i",
			.field_offset=offsetof(struct database_core_TDBColumn_obj,_database_core_tdbcolumn_nullable)
		},
		{
			BBDEBUGDECL_FIELD,
			"defaultValue",
			":TDBType",
			.field_offset=offsetof(struct database_core_TDBColumn_obj,_database_core_tdbcolumn_defaultvalue)
		},
		{
			BBDEBUGDECL_TYPEMETHOD,
			"New",
			"()",
			.func_ptr=(BBFuncPtr)&_database_core_TDBColumn_New
		},
		{
			BBDEBUGDECL_TYPEFUNCTION,
			"Create",
			"($,i,i,:TDBType):TDBColumn",
			.func_ptr=(BBFuncPtr)&database_core_TDBColumn_Create_TTDBColumn_SiiTTDBType
		},
		{
			BBDEBUGDECL_END
		}
	}
};
struct BBClass_database_core_TDBColumn database_core_TDBColumn={
	&bbObjectClass,
	bbObjectFree,
	(BBDebugScope*)&database_core_TDBColumn_scope,
	sizeof(struct database_core_TDBColumn_obj),
	(void (*)(BBOBJECT))_database_core_TDBColumn_New,
	bbObjectDtor,
	bbObjectToString,
	bbObjectCompare,
	bbObjectSendMessage,
	0,
	0,
	offsetof(struct database_core_TDBColumn_obj,_database_core_tdbcolumn_defaultvalue) - offsetof(struct database_core_TDBColumn_obj,_database_core_tdbcolumn_name) + sizeof(struct database_core_dbtypes_TDBType_obj*)
	,0
	,offsetof(struct database_core_TDBColumn_obj,_database_core_tdbcolumn_name)
	,database_core_TDBColumn_Create_TTDBColumn_SiiTTDBType
};

BBSTRING database_core_convertISO8859toUTF8(BBSTRING bbt_text){
	BBINT bbt_l=0;
	BBINT bbt_count=0;
	BBARRAY bbt_s=(&bbEmptyArray);
	struct BBDebugScope_4 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"convertISO8859toUTF8",
		{
			{
				BBDEBUGDECL_LOCAL,
				"text",
				"$",
				.var_address=&bbt_text
			},
			{
				BBDEBUGDECL_LOCAL,
				"l",
				"i",
				.var_address=&bbt_l
			},
			{
				BBDEBUGDECL_LOCAL,
				"count",
				"i",
				.var_address=&bbt_count
			},
			{
				BBDEBUGDECL_LOCAL,
				"s",
				"[]b",
				.var_address=&bbt_s
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x2ffeec19d53a3c22, 1294, 0};
	bbOnDebugEnterStm(&__stmt_0);
	if(!(bbt_text!= &bbEmptyString)){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x2ffeec19d53a3c22, 1295, 0};
		bbOnDebugEnterStm(&__stmt_0);
		bbOnDebugLeaveScope();
		bbOnDebugLeaveScope();
		return ((BBString*)&bbEmptyString);
	}
	struct BBDebugStm __stmt_1 = {0x2ffeec19d53a3c22, 1298, 0};
	bbOnDebugEnterStm(&__stmt_1);
	bbt_l=(bbt_text->length);
	struct BBDebugStm __stmt_2 = {0x2ffeec19d53a3c22, 1299, 0};
	bbOnDebugEnterStm(&__stmt_2);
	if(bbt_l==0){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x2ffeec19d53a3c22, 1300, 0};
		bbOnDebugEnterStm(&__stmt_0);
		bbOnDebugLeaveScope();
		bbOnDebugLeaveScope();
		return ((BBString*)&bbEmptyString);
	}
	struct BBDebugStm __stmt_3 = {0x2ffeec19d53a3c22, 1303, 0};
	bbOnDebugEnterStm(&__stmt_3);
	bbt_count=0;
	struct BBDebugStm __stmt_4 = {0x2ffeec19d53a3c22, 1304, 0};
	bbOnDebugEnterStm(&__stmt_4);
	bbt_s=bbArrayNew1D("b", (bbt_l*3));
	struct BBDebugStm __stmt_5 = {0x2ffeec19d53a3c22, 1306, 0};
	bbOnDebugEnterStm(&__stmt_5);
	{
		BBINT bbt_i=0;
		BBINT bbt_=bbt_l;
		for(;(bbt_i<bbt_);bbt_i=(bbt_i+1)){
			BBINT bbt_char=0;
			struct BBDebugScope_2 __scope = {
				BBDEBUGSCOPE_LOCALBLOCK,
				0,
				{
					{
						BBDEBUGDECL_LOCAL,
						"i",
						"i",
						.var_address=&bbt_i
					},
					{
						BBDEBUGDECL_LOCAL,
						"char",
						"i",
						.var_address=&bbt_char
					},
					{
						BBDEBUGDECL_END
					}
				}
			};
			bbOnDebugEnterScope((BBDebugScope *)&__scope);
			struct BBDebugStm __stmt_0 = {0x2ffeec19d53a3c22, 1307, 0};
			bbOnDebugEnterStm(&__stmt_0);
			bbt_char=(bbt_text)->buf[((BBUINT)bbt_i)];
			struct BBDebugStm __stmt_1 = {0x2ffeec19d53a3c22, 1309, 0};
			bbOnDebugEnterStm(&__stmt_1);
			if(bbt_char<128){
				struct BBDebugScope __scope = {
					BBDEBUGSCOPE_LOCALBLOCK,
					0,
					{
						{
							BBDEBUGDECL_END
						}
					}
				};
				bbOnDebugEnterScope((BBDebugScope *)&__scope);
				struct BBDebugStm __stmt_0 = {0x2ffeec19d53a3c22, 1310, 0};
				bbOnDebugEnterStm(&__stmt_0);
				((BBBYTE*)BBARRAYDATAINDEX((bbt_s),(bbt_s)->dims,((BBUINT)bbt_count)))[((BBUINT)bbt_count)]=((BBBYTE)bbt_char);
				struct BBDebugStm __stmt_1 = {0x2ffeec19d53a3c22, 1311, 0};
				bbOnDebugEnterStm(&__stmt_1);
				bbt_count+=1;
				struct BBDebugStm __stmt_2 = {0x2ffeec19d53a3c22, 1312, 0};
				bbOnDebugEnterStm(&__stmt_2);
				bbOnDebugLeaveScope();
				bbOnDebugLeaveScope();
				continue;
			}else{
				struct BBDebugScope __scope = {
					BBDEBUGSCOPE_LOCALBLOCK,
					0,
					{
						{
							BBDEBUGDECL_END
						}
					}
				};
				bbOnDebugEnterScope((BBDebugScope *)&__scope);
				struct BBDebugStm __stmt_0 = {0x2ffeec19d53a3c22, 1313, 0};
				bbOnDebugEnterStm(&__stmt_0);
				if(bbt_char<2048){
					struct BBDebugScope __scope = {
						BBDEBUGSCOPE_LOCALBLOCK,
						0,
						{
							{
								BBDEBUGDECL_END
							}
						}
					};
					bbOnDebugEnterScope((BBDebugScope *)&__scope);
					struct BBDebugStm __stmt_0 = {0x2ffeec19d53a3c22, 1314, 0};
					bbOnDebugEnterStm(&__stmt_0);
					((BBBYTE*)BBARRAYDATAINDEX((bbt_s),(bbt_s)->dims,((BBUINT)bbt_count)))[((BBUINT)bbt_count)]=((BBBYTE)((unsigned int)((bbt_char/64))|(unsigned int)(192)));
					struct BBDebugStm __stmt_1 = {0x2ffeec19d53a3c22, 1315, 0};
					bbOnDebugEnterStm(&__stmt_1);
					bbt_count+=1;
					struct BBDebugStm __stmt_2 = {0x2ffeec19d53a3c22, 1316, 0};
					bbOnDebugEnterStm(&__stmt_2);
					((BBBYTE*)BBARRAYDATAINDEX((bbt_s),(bbt_s)->dims,((BBUINT)bbt_count)))[((BBUINT)bbt_count)]=((BBBYTE)((unsigned int)((bbt_char % 64))|(unsigned int)(128)));
					struct BBDebugStm __stmt_3 = {0x2ffeec19d53a3c22, 1317, 0};
					bbOnDebugEnterStm(&__stmt_3);
					bbt_count+=1;
					struct BBDebugStm __stmt_4 = {0x2ffeec19d53a3c22, 1318, 0};
					bbOnDebugEnterStm(&__stmt_4);
					bbOnDebugLeaveScope();
					bbOnDebugLeaveScope();
					bbOnDebugLeaveScope();
					continue;
				}else{
					struct BBDebugScope __scope = {
						BBDEBUGSCOPE_LOCALBLOCK,
						0,
						{
							{
								BBDEBUGDECL_END
							}
						}
					};
					bbOnDebugEnterScope((BBDebugScope *)&__scope);
					struct BBDebugStm __stmt_0 = {0x2ffeec19d53a3c22, 1320, 0};
					bbOnDebugEnterStm(&__stmt_0);
					((BBBYTE*)BBARRAYDATAINDEX((bbt_s),(bbt_s)->dims,((BBUINT)bbt_count)))[((BBUINT)bbt_count)]=((BBBYTE)((unsigned int)((bbt_char/4096))|(unsigned int)(224)));
					struct BBDebugStm __stmt_1 = {0x2ffeec19d53a3c22, 1321, 0};
					bbOnDebugEnterStm(&__stmt_1);
					bbt_count+=1;
					struct BBDebugStm __stmt_2 = {0x2ffeec19d53a3c22, 1322, 0};
					bbOnDebugEnterStm(&__stmt_2);
					((BBBYTE*)BBARRAYDATAINDEX((bbt_s),(bbt_s)->dims,((BBUINT)bbt_count)))[((BBUINT)bbt_count)]=((BBBYTE)((unsigned int)(((bbt_char/64) % 64))|(unsigned int)(128)));
					struct BBDebugStm __stmt_3 = {0x2ffeec19d53a3c22, 1323, 0};
					bbOnDebugEnterStm(&__stmt_3);
					bbt_count+=1;
					struct BBDebugStm __stmt_4 = {0x2ffeec19d53a3c22, 1324, 0};
					bbOnDebugEnterStm(&__stmt_4);
					((BBBYTE*)BBARRAYDATAINDEX((bbt_s),(bbt_s)->dims,((BBUINT)bbt_count)))[((BBUINT)bbt_count)]=((BBBYTE)((unsigned int)((bbt_char % 64))|(unsigned int)(128)));
					struct BBDebugStm __stmt_5 = {0x2ffeec19d53a3c22, 1325, 0};
					bbOnDebugEnterStm(&__stmt_5);
					bbt_count+=1;
					struct BBDebugStm __stmt_6 = {0x2ffeec19d53a3c22, 1326, 0};
					bbOnDebugEnterStm(&__stmt_6);
					bbOnDebugLeaveScope();
					bbOnDebugLeaveScope();
					bbOnDebugLeaveScope();
					continue;
				}
			}
		}
	}
	struct BBDebugStm __stmt_6 = {0x2ffeec19d53a3c22, 1331, 0};
	bbOnDebugEnterStm(&__stmt_6);
	bbOnDebugLeaveScope();
	return bbStringFromBytes(((BBBYTE*)BBARRAYDATA(bbt_s,1)),bbt_count);
}
BBSTRING database_core_convertUTF8toISO8859(BBBYTE* bbt_s){
	BBINT bbt_l=0;
	BBARRAY bbt_b=(&bbEmptyArray);
	BBINT bbt_bc=0;
	BBINT bbt_c=0;
	BBINT bbt_d=0;
	BBINT bbt_e=0;
	struct BBDebugScope_7 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"convertUTF8toISO8859",
		{
			{
				BBDEBUGDECL_LOCAL,
				"s",
				"*b",
				.var_address=&bbt_s
			},
			{
				BBDEBUGDECL_LOCAL,
				"l",
				"i",
				.var_address=&bbt_l
			},
			{
				BBDEBUGDECL_LOCAL,
				"b",
				"[]s",
				.var_address=&bbt_b
			},
			{
				BBDEBUGDECL_LOCAL,
				"bc",
				"i",
				.var_address=&bbt_bc
			},
			{
				BBDEBUGDECL_LOCAL,
				"c",
				"i",
				.var_address=&bbt_c
			},
			{
				BBDEBUGDECL_LOCAL,
				"d",
				"i",
				.var_address=&bbt_d
			},
			{
				BBDEBUGDECL_LOCAL,
				"e",
				"i",
				.var_address=&bbt_e
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x2ffeec19d53a3c22, 1337, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbt_l=strlen(bbt_s);
	struct BBDebugStm __stmt_1 = {0x2ffeec19d53a3c22, 1339, 0};
	bbOnDebugEnterStm(&__stmt_1);
	bbt_b=bbArrayNew1D("s", bbt_l);
	struct BBDebugStm __stmt_2 = {0x2ffeec19d53a3c22, 1340, 0};
	bbOnDebugEnterStm(&__stmt_2);
	bbt_bc=-1;
	struct BBDebugStm __stmt_3 = {0x2ffeec19d53a3c22, 1341, 0};
	bbOnDebugEnterStm(&__stmt_3);
	bbt_c=0;
	struct BBDebugStm __stmt_4 = {0x2ffeec19d53a3c22, 1342, 0};
	bbOnDebugEnterStm(&__stmt_4);
	bbt_d=0;
	struct BBDebugStm __stmt_5 = {0x2ffeec19d53a3c22, 1343, 0};
	bbOnDebugEnterStm(&__stmt_5);
	bbt_e=0;
	struct BBDebugStm __stmt_6 = {0x2ffeec19d53a3c22, 1344, 0};
	bbOnDebugEnterStm(&__stmt_6);
	{
		BBINT bbt_i=0;
		BBINT bbt_=bbt_l;
		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 = {0x2ffeec19d53a3c22, 1346, 0};
			bbOnDebugEnterStm(&__stmt_0);
			bbt_bc+=1;
			struct BBDebugStm __stmt_1 = {0x2ffeec19d53a3c22, 1347, 0};
			bbOnDebugEnterStm(&__stmt_1);
			bbt_c=((BBINT)bbt_s[bbt_i]);
			struct BBDebugStm __stmt_2 = {0x2ffeec19d53a3c22, 1348, 0};
			bbOnDebugEnterStm(&__stmt_2);
			if(bbt_c<128){
				struct BBDebugScope __scope = {
					BBDEBUGSCOPE_LOCALBLOCK,
					0,
					{
						{
							BBDEBUGDECL_END
						}
					}
				};
				bbOnDebugEnterScope((BBDebugScope *)&__scope);
				struct BBDebugStm __stmt_0 = {0x2ffeec19d53a3c22, 1349, 0};
				bbOnDebugEnterStm(&__stmt_0);
				((BBSHORT*)BBARRAYDATAINDEX((bbt_b),(bbt_b)->dims,((BBUINT)bbt_bc)))[((BBUINT)bbt_bc)]=((BBSHORT)bbt_c);
				struct BBDebugStm __stmt_1 = {0x2ffeec19d53a3c22, 1350, 0};
				bbOnDebugEnterStm(&__stmt_1);
				bbOnDebugLeaveScope();
				bbOnDebugLeaveScope();
				continue;
			}
			struct BBDebugStm __stmt_3 = {0x2ffeec19d53a3c22, 1352, 0};
			bbOnDebugEnterStm(&__stmt_3);
			bbt_i+=1;
			struct BBDebugStm __stmt_4 = {0x2ffeec19d53a3c22, 1353, 0};
			bbOnDebugEnterStm(&__stmt_4);
			bbt_d=((BBINT)bbt_s[bbt_i]);
			struct BBDebugStm __stmt_5 = {0x2ffeec19d53a3c22, 1354, 0};
			bbOnDebugEnterStm(&__stmt_5);
			if(bbt_c<224){
				struct BBDebugScope __scope = {
					BBDEBUGSCOPE_LOCALBLOCK,
					0,
					{
						{
							BBDEBUGDECL_END
						}
					}
				};
				bbOnDebugEnterScope((BBDebugScope *)&__scope);
				struct BBDebugStm __stmt_0 = {0x2ffeec19d53a3c22, 1355, 0};
				bbOnDebugEnterStm(&__stmt_0);
				((BBSHORT*)BBARRAYDATAINDEX((bbt_b),(bbt_b)->dims,((BBUINT)bbt_bc)))[((BBUINT)bbt_bc)]=((BBSHORT)(((bbt_c-192)*64)+(bbt_d-128)));
				struct BBDebugStm __stmt_1 = {0x2ffeec19d53a3c22, 1356, 0};
				bbOnDebugEnterStm(&__stmt_1);
				bbOnDebugLeaveScope();
				bbOnDebugLeaveScope();
				continue;
			}
			struct BBDebugStm __stmt_6 = {0x2ffeec19d53a3c22, 1358, 0};
			bbOnDebugEnterStm(&__stmt_6);
			bbt_i+=1;
			struct BBDebugStm __stmt_7 = {0x2ffeec19d53a3c22, 1359, 0};
			bbOnDebugEnterStm(&__stmt_7);
			bbt_e=((BBINT)bbt_s[bbt_i]);
			struct BBDebugStm __stmt_8 = {0x2ffeec19d53a3c22, 1360, 0};
			bbOnDebugEnterStm(&__stmt_8);
			if(bbt_c<240){
				struct BBDebugScope __scope = {
					BBDEBUGSCOPE_LOCALBLOCK,
					0,
					{
						{
							BBDEBUGDECL_END
						}
					}
				};
				bbOnDebugEnterScope((BBDebugScope *)&__scope);
				struct BBDebugStm __stmt_0 = {0x2ffeec19d53a3c22, 1361, 0};
				bbOnDebugEnterStm(&__stmt_0);
				((BBSHORT*)BBARRAYDATAINDEX((bbt_b),(bbt_b)->dims,((BBUINT)bbt_bc)))[((BBUINT)bbt_bc)]=((BBSHORT)((((bbt_c-224)*4096)+((bbt_d-128)*64))+(bbt_e-128)));
				struct BBDebugStm __stmt_1 = {0x2ffeec19d53a3c22, 1362, 0};
				bbOnDebugEnterStm(&__stmt_1);
				if(((BBINT)((BBSHORT*)BBARRAYDATAINDEX((bbt_b),(bbt_b)->dims,((BBUINT)bbt_bc)))[((BBUINT)bbt_bc)])==8233){
					struct BBDebugScope __scope = {
						BBDEBUGSCOPE_LOCALBLOCK,
						0,
						{
							{
								BBDEBUGDECL_END
							}
						}
					};
					bbOnDebugEnterScope((BBDebugScope *)&__scope);
					struct BBDebugStm __stmt_0 = {0x2ffeec19d53a3c22, 1363, 0};
					bbOnDebugEnterStm(&__stmt_0);
					((BBSHORT*)BBARRAYDATAINDEX((bbt_b),(bbt_b)->dims,((BBUINT)bbt_bc)))[((BBUINT)bbt_bc)]=10;
					bbOnDebugLeaveScope();
				}
				struct BBDebugStm __stmt_2 = {0x2ffeec19d53a3c22, 1365, 0};
				bbOnDebugEnterStm(&__stmt_2);
				bbOnDebugLeaveScope();
				bbOnDebugLeaveScope();
				continue;
			}
			bbOnDebugLeaveScope();
		}
	}
	struct BBDebugStm __stmt_7 = {0x2ffeec19d53a3c22, 1369, 0};
	bbOnDebugEnterStm(&__stmt_7);
	bbOnDebugLeaveScope();
	return bbStringFromShorts(((BBSHORT*)BBARRAYDATA(bbt_b,1)),(bbt_bc+1));
}
BBSTRING database_core_sizedUTF8toISO8859(BBBYTE* bbt_s,BBINT bbt_size){
	BBINT bbt_l=0;
	BBARRAY bbt_b=(&bbEmptyArray);
	BBINT bbt_bc=0;
	BBINT bbt_c=0;
	BBINT bbt_d=0;
	BBINT bbt_e=0;
	struct BBDebugScope_8 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"sizedUTF8toISO8859",
		{
			{
				BBDEBUGDECL_LOCAL,
				"s",
				"*b",
				.var_address=&bbt_s
			},
			{
				BBDEBUGDECL_LOCAL,
				"size",
				"i",
				.var_address=&bbt_size
			},
			{
				BBDEBUGDECL_LOCAL,
				"l",
				"i",
				.var_address=&bbt_l
			},
			{
				BBDEBUGDECL_LOCAL,
				"b",
				"[]s",
				.var_address=&bbt_b
			},
			{
				BBDEBUGDECL_LOCAL,
				"bc",
				"i",
				.var_address=&bbt_bc
			},
			{
				BBDEBUGDECL_LOCAL,
				"c",
				"i",
				.var_address=&bbt_c
			},
			{
				BBDEBUGDECL_LOCAL,
				"d",
				"i",
				.var_address=&bbt_d
			},
			{
				BBDEBUGDECL_LOCAL,
				"e",
				"i",
				.var_address=&bbt_e
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x2ffeec19d53a3c22, 1374, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbt_l=bbt_size;
	struct BBDebugStm __stmt_1 = {0x2ffeec19d53a3c22, 1375, 0};
	bbOnDebugEnterStm(&__stmt_1);
	bbt_b=bbArrayNew1D("s", bbt_l);
	struct BBDebugStm __stmt_2 = {0x2ffeec19d53a3c22, 1376, 0};
	bbOnDebugEnterStm(&__stmt_2);
	bbt_bc=-1;
	struct BBDebugStm __stmt_3 = {0x2ffeec19d53a3c22, 1377, 0};
	bbOnDebugEnterStm(&__stmt_3);
	bbt_c=0;
	struct BBDebugStm __stmt_4 = {0x2ffeec19d53a3c22, 1378, 0};
	bbOnDebugEnterStm(&__stmt_4);
	bbt_d=0;
	struct BBDebugStm __stmt_5 = {0x2ffeec19d53a3c22, 1379, 0};
	bbOnDebugEnterStm(&__stmt_5);
	bbt_e=0;
	struct BBDebugStm __stmt_6 = {0x2ffeec19d53a3c22, 1380, 0};
	bbOnDebugEnterStm(&__stmt_6);
	{
		BBINT bbt_i=0;
		BBINT bbt_=bbt_l;
		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 = {0x2ffeec19d53a3c22, 1382, 0};
			bbOnDebugEnterStm(&__stmt_0);
			bbt_c=((BBINT)bbt_s[bbt_i]);
			struct BBDebugStm __stmt_1 = {0x2ffeec19d53a3c22, 1383, 0};
			bbOnDebugEnterStm(&__stmt_1);
			if(bbt_c==0){
				struct BBDebugScope __scope = {
					BBDEBUGSCOPE_LOCALBLOCK,
					0,
					{
						{
							BBDEBUGDECL_END
						}
					}
				};
				bbOnDebugEnterScope((BBDebugScope *)&__scope);
				struct BBDebugStm __stmt_0 = {0x2ffeec19d53a3c22, 1383, 0};
				bbOnDebugEnterStm(&__stmt_0);
				bbOnDebugLeaveScope();
				bbOnDebugLeaveScope();
				continue;
			}
			struct BBDebugStm __stmt_2 = {0x2ffeec19d53a3c22, 1385, 0};
			bbOnDebugEnterStm(&__stmt_2);
			bbt_bc+=1;
			struct BBDebugStm __stmt_3 = {0x2ffeec19d53a3c22, 1386, 0};
			bbOnDebugEnterStm(&__stmt_3);
			if(bbt_c<128){
				struct BBDebugScope __scope = {
					BBDEBUGSCOPE_LOCALBLOCK,
					0,
					{
						{
							BBDEBUGDECL_END
						}
					}
				};
				bbOnDebugEnterScope((BBDebugScope *)&__scope);
				struct BBDebugStm __stmt_0 = {0x2ffeec19d53a3c22, 1387, 0};
				bbOnDebugEnterStm(&__stmt_0);
				((BBSHORT*)BBARRAYDATAINDEX((bbt_b),(bbt_b)->dims,((BBUINT)bbt_bc)))[((BBUINT)bbt_bc)]=((BBSHORT)bbt_c);
				struct BBDebugStm __stmt_1 = {0x2ffeec19d53a3c22, 1388, 0};
				bbOnDebugEnterStm(&__stmt_1);
				bbOnDebugLeaveScope();
				bbOnDebugLeaveScope();
				continue;
			}
			struct BBDebugStm __stmt_4 = {0x2ffeec19d53a3c22, 1390, 0};
			bbOnDebugEnterStm(&__stmt_4);
			bbt_i+=1;
			struct BBDebugStm __stmt_5 = {0x2ffeec19d53a3c22, 1391, 0};
			bbOnDebugEnterStm(&__stmt_5);
			bbt_d=((BBINT)bbt_s[bbt_i]);
			struct BBDebugStm __stmt_6 = {0x2ffeec19d53a3c22, 1392, 0};
			bbOnDebugEnterStm(&__stmt_6);
			if(bbt_c<224){
				struct BBDebugScope __scope = {
					BBDEBUGSCOPE_LOCALBLOCK,
					0,
					{
						{
							BBDEBUGDECL_END
						}
					}
				};
				bbOnDebugEnterScope((BBDebugScope *)&__scope);
				struct BBDebugStm __stmt_0 = {0x2ffeec19d53a3c22, 1393, 0};
				bbOnDebugEnterStm(&__stmt_0);
				((BBSHORT*)BBARRAYDATAINDEX((bbt_b),(bbt_b)->dims,((BBUINT)bbt_bc)))[((BBUINT)bbt_bc)]=((BBSHORT)(((bbt_c-192)*64)+(bbt_d-128)));
				struct BBDebugStm __stmt_1 = {0x2ffeec19d53a3c22, 1394, 0};
				bbOnDebugEnterStm(&__stmt_1);
				bbOnDebugLeaveScope();
				bbOnDebugLeaveScope();
				continue;
			}
			struct BBDebugStm __stmt_7 = {0x2ffeec19d53a3c22, 1396, 0};
			bbOnDebugEnterStm(&__stmt_7);
			bbt_i+=1;
			struct BBDebugStm __stmt_8 = {0x2ffeec19d53a3c22, 1397, 0};
			bbOnDebugEnterStm(&__stmt_8);
			bbt_e=((BBINT)bbt_s[bbt_i]);
			struct BBDebugStm __stmt_9 = {0x2ffeec19d53a3c22, 1398, 0};
			bbOnDebugEnterStm(&__stmt_9);
			if(bbt_c<240){
				struct BBDebugScope __scope = {
					BBDEBUGSCOPE_LOCALBLOCK,
					0,
					{
						{
							BBDEBUGDECL_END
						}
					}
				};
				bbOnDebugEnterScope((BBDebugScope *)&__scope);
				struct BBDebugStm __stmt_0 = {0x2ffeec19d53a3c22, 1399, 0};
				bbOnDebugEnterStm(&__stmt_0);
				((BBSHORT*)BBARRAYDATAINDEX((bbt_b),(bbt_b)->dims,((BBUINT)bbt_bc)))[((BBUINT)bbt_bc)]=((BBSHORT)((((bbt_c-224)*4096)+((bbt_d-128)*64))+(bbt_e-128)));
				struct BBDebugStm __stmt_1 = {0x2ffeec19d53a3c22, 1400, 0};
				bbOnDebugEnterStm(&__stmt_1);
				if(((BBINT)((BBSHORT*)BBARRAYDATAINDEX((bbt_b),(bbt_b)->dims,((BBUINT)bbt_bc)))[((BBUINT)bbt_bc)])==8233){
					struct BBDebugScope __scope = {
						BBDEBUGSCOPE_LOCALBLOCK,
						0,
						{
							{
								BBDEBUGDECL_END
							}
						}
					};
					bbOnDebugEnterScope((BBDebugScope *)&__scope);
					struct BBDebugStm __stmt_0 = {0x2ffeec19d53a3c22, 1401, 0};
					bbOnDebugEnterStm(&__stmt_0);
					((BBSHORT*)BBARRAYDATAINDEX((bbt_b),(bbt_b)->dims,((BBUINT)bbt_bc)))[((BBUINT)bbt_bc)]=10;
					bbOnDebugLeaveScope();
				}
				struct BBDebugStm __stmt_2 = {0x2ffeec19d53a3c22, 1403, 0};
				bbOnDebugEnterStm(&__stmt_2);
				bbOnDebugLeaveScope();
				bbOnDebugLeaveScope();
				continue;
			}
			bbOnDebugLeaveScope();
		}
	}
	struct BBDebugStm __stmt_7 = {0x2ffeec19d53a3c22, 1407, 0};
	bbOnDebugEnterStm(&__stmt_7);
	bbOnDebugLeaveScope();
	return bbStringFromShorts(((BBSHORT*)BBARRAYDATA(bbt_b,1)),(bbt_bc+1));
}
void database_core_AddDatabaseLoader(struct database_core_TDatabaseLoader_obj* bbt_loader){
	struct BBDebugScope_1 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"AddDatabaseLoader",
		{
			{
				BBDEBUGDECL_LOCAL,
				"loader",
				":TDatabaseLoader",
				.var_address=&bbt_loader
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x2ffeec19d53a3c22, 1430, 0};
	bbOnDebugEnterStm(&__stmt_0);
	if(((BBObject*)((struct database_core_TDatabaseLoader_obj*)bbNullObjectTest((BBObject*)bbt_loader))->_database_core_tdatabaseloader__succ )!= &bbNullObject){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x2ffeec19d53a3c22, 1430, 0};
		bbOnDebugEnterStm(&__stmt_0);
		bbOnDebugLeaveScope();
		bbOnDebugLeaveScope();
		return;
	}
	struct BBDebugStm __stmt_1 = {0x2ffeec19d53a3c22, 1431, 0};
	bbOnDebugEnterStm(&__stmt_1);
	((struct database_core_TDatabaseLoader_obj*)bbNullObjectTest((BBObject*)bbt_loader))->_database_core_tdatabaseloader__succ =(struct database_core_TDatabaseLoader_obj*)database_core__loaders;
	struct BBDebugStm __stmt_2 = {0x2ffeec19d53a3c22, 1432, 0};
	bbOnDebugEnterStm(&__stmt_2);
	database_core__loaders=(struct database_core_TDatabaseLoader_obj*)bbt_loader;
	bbOnDebugLeaveScope();
}
struct database_core_TDBConnection_obj* database_core_LoadDatabase(BBSTRING bbt_dbType,BBSTRING bbt_dbname,BBSTRING bbt_host,BBINT bbt_port,BBSTRING bbt_user,BBSTRING bbt_password,BBSTRING bbt_server,BBSTRING bbt_options){
	struct database_core_TDatabaseLoader_obj* bbt_loader=(struct database_core_TDatabaseLoader_obj*)((struct database_core_TDatabaseLoader_obj*)&bbNullObject);
	struct BBDebugScope_9 __scope = {
		BBDEBUGSCOPE_FUNCTION,
		"LoadDatabase",
		{
			{
				BBDEBUGDECL_LOCAL,
				"dbType",
				"$",
				.var_address=&bbt_dbType
			},
			{
				BBDEBUGDECL_LOCAL,
				"dbname",
				"$",
				.var_address=&bbt_dbname
			},
			{
				BBDEBUGDECL_LOCAL,
				"host",
				"$",
				.var_address=&bbt_host
			},
			{
				BBDEBUGDECL_LOCAL,
				"port",
				"i",
				.var_address=&bbt_port
			},
			{
				BBDEBUGDECL_LOCAL,
				"user",
				"$",
				.var_address=&bbt_user
			},
			{
				BBDEBUGDECL_LOCAL,
				"password",
				"$",
				.var_address=&bbt_password
			},
			{
				BBDEBUGDECL_LOCAL,
				"server",
				"$",
				.var_address=&bbt_server
			},
			{
				BBDEBUGDECL_LOCAL,
				"options",
				"$",
				.var_address=&bbt_options
			},
			{
				BBDEBUGDECL_LOCAL,
				"loader",
				":TDatabaseLoader",
				.var_address=&bbt_loader
			},
			{
				BBDEBUGDECL_END
			}
		}
	};
	bbOnDebugEnterScope((BBDebugScope *)&__scope);
	struct BBDebugStm __stmt_0 = {0x2ffeec19d53a3c22, 1445, 0};
	bbOnDebugEnterStm(&__stmt_0);
	bbt_loader=(struct database_core_TDatabaseLoader_obj*)database_core__loaders;
	struct BBDebugStm __stmt_1 = {0x2ffeec19d53a3c22, 1447, 0};
	bbOnDebugEnterStm(&__stmt_1);
	while(((BBObject*)bbt_loader)!= &bbNullObject){
		struct BBDebugScope __scope = {
			BBDEBUGSCOPE_LOCALBLOCK,
			0,
			{
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x2ffeec19d53a3c22, 1448, 0};
		bbOnDebugEnterStm(&__stmt_0);
		if(bbStringEquals(((struct database_core_TDatabaseLoader_obj*)bbNullObjectTest((BBObject*)bbt_loader))->_database_core_tdatabaseloader__type , bbt_dbType)==1){
			struct database_core_TDBConnection_obj* bbt_db=(struct database_core_TDBConnection_obj*)((struct database_core_TDBConnection_obj*)&bbNullObject);
			struct BBDebugScope_1 __scope = {
				BBDEBUGSCOPE_LOCALBLOCK,
				0,
				{
					{
						BBDEBUGDECL_LOCAL,
						"db",
						":TDBConnection",
						.var_address=&bbt_db
					},
					{
						BBDEBUGDECL_END
					}
				}
			};
			bbOnDebugEnterScope((BBDebugScope *)&__scope);
			struct BBDebugStm __stmt_0 = {0x2ffeec19d53a3c22, 1449, 0};
			bbOnDebugEnterStm(&__stmt_0);
			bbt_db=(struct database_core_TDBConnection_obj*)((struct database_core_TDatabaseLoader_obj*)bbNullObjectTest((BBObject*)bbt_loader))->clas->m_LoadDatabase_SSiSSSS((struct database_core_TDatabaseLoader_obj*)bbt_loader,bbt_dbname,bbt_host,bbt_port,bbt_user,bbt_password,bbt_server,bbt_options);
			struct BBDebugStm __stmt_1 = {0x2ffeec19d53a3c22, 1450, 0};
			bbOnDebugEnterStm(&__stmt_1);
			if(((BBObject*)bbt_db)!= &bbNullObject){
				struct BBDebugScope __scope = {
					BBDEBUGSCOPE_LOCALBLOCK,
					0,
					{
						{
							BBDEBUGDECL_END
						}
					}
				};
				bbOnDebugEnterScope((BBDebugScope *)&__scope);
				struct BBDebugStm __stmt_0 = {0x2ffeec19d53a3c22, 1450, 0};
				bbOnDebugEnterStm(&__stmt_0);
				bbOnDebugLeaveScope();
				bbOnDebugLeaveScope();
				bbOnDebugLeaveScope();
				bbOnDebugLeaveScope();
				return (struct database_core_TDBConnection_obj*)bbt_db;
			}
			bbOnDebugLeaveScope();
		}
		struct BBDebugStm __stmt_1 = {0x2ffeec19d53a3c22, 1452, 0};
		bbOnDebugEnterStm(&__stmt_1);
		bbt_loader=(struct database_core_TDatabaseLoader_obj*)((struct database_core_TDatabaseLoader_obj*)bbNullObjectTest((BBObject*)bbt_loader))->_database_core_tdatabaseloader__succ ;
		bbOnDebugLeaveScope();
	}
	bbOnDebugLeaveScope();
	return (struct database_core_TDBConnection_obj*)((struct database_core_TDBConnection_obj*)&bbNullObject);
}
static int __bb_database_core_core_inited = 0;
int __bb_database_core_core(){
	if (!__bb_database_core_core_inited) {
		__bb_database_core_core_inited = 1;
		GC_add_roots(&database_core__loaders, &database_core__loaders + 1);
		__bb_brl_blitz_blitz();
		__bb_brl_linkedlist_linkedlist();
		__bb_brl_map_map();
		_bb_database_core_dbtypes();
		bbObjectRegisterType((BBCLASS)&database_core_TDatabaseLoader);
		bbObjectRegisterType((BBCLASS)&database_core_TDBConnection);
		bbObjectRegisterType((BBCLASS)&database_core_TDatabaseQuery);
		bbObjectRegisterType((BBCLASS)&database_core_TRowEnumerator);
		bbObjectRegisterType((BBCLASS)&database_core_TQueryResultSet);
		bbObjectRegisterType((BBCLASS)&database_core_TQueryRecord);
		bbObjectRegisterType((BBCLASS)&database_core_TQueryField);
		bbObjectRegisterType((BBCLASS)&database_core_TDatabaseError);
		bbObjectRegisterType((BBCLASS)&database_core_TDBTable);
		bbObjectRegisterType((BBCLASS)&database_core_TDBColumn);
		bbRegisterSource(0x2ffeec19d53a3c22, "c:/BMX/mod/database.mod/core.mod/core.bmx");
		struct BBDebugScope_1 __scope = {
			BBDEBUGSCOPE_FUNCTION,
			"core",
			{
				{
					BBDEBUGDECL_GLOBAL,
					"_loaders",
					":TDatabaseLoader",
					.var_address=(void*)&database_core__loaders
				},
				{
					BBDEBUGDECL_END
				}
			}
		};
		bbOnDebugEnterScope((BBDebugScope *)&__scope);
		struct BBDebugStm __stmt_0 = {0x2ffeec19d53a3c22, 1425, 0};
		bbOnDebugEnterStm(&__stmt_0);
		bbOnDebugLeaveScope();
		return 0;
	}
	return 0;
}